@univerjs/sheets-numfmt-ui 1.0.0-alpha.3 → 1.0.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/cjs/index.js CHANGED
@@ -83,7 +83,7 @@ function __decorate(decorators, target, key, desc) {
83
83
  //#region src/controllers/ui.controller.ts
84
84
  const SHEET_NUMFMT_PANEL$1 = "SHEET_NUMFMT_PANEL";
85
85
  let SheetNumfmtUIController = class SheetNumfmtUIController extends _univerjs_core.Disposable {
86
- constructor(_sheetInterceptorService, _themeService, _univerInstanceService, _commandService, _selectionManagerService, _renderManagerService, _numfmtService, _componentManager, _sidebarService, _localeService, _sheetsNumfmtCellContentController) {
86
+ constructor(_sheetInterceptorService, _themeService, _univerInstanceService, _commandService, _selectionManagerService, _renderManagerService, _numfmtService, _sidebarService, _localeService, _sheetsNumfmtCellContentController) {
87
87
  super();
88
88
  this._sheetInterceptorService = _sheetInterceptorService;
89
89
  this._themeService = _themeService;
@@ -92,7 +92,6 @@ let SheetNumfmtUIController = class SheetNumfmtUIController extends _univerjs_co
92
92
  this._selectionManagerService = _selectionManagerService;
93
93
  this._renderManagerService = _renderManagerService;
94
94
  this._numfmtService = _numfmtService;
95
- this._componentManager = _componentManager;
96
95
  this._sidebarService = _sidebarService;
97
96
  this._localeService = _localeService;
98
97
  this._sheetsNumfmtCellContentController = _sheetsNumfmtCellContentController;
@@ -273,10 +272,9 @@ SheetNumfmtUIController = __decorate([
273
272
  __decorateParam(4, (0, _univerjs_core.Inject)(_univerjs_sheets.SheetsSelectionsService)),
274
273
  __decorateParam(5, _univerjs_engine_render.IRenderManagerService),
275
274
  __decorateParam(6, _univerjs_sheets.INumfmtService),
276
- __decorateParam(7, (0, _univerjs_core.Inject)(_univerjs_ui.ComponentManager)),
277
- __decorateParam(8, _univerjs_ui.ISidebarService),
278
- __decorateParam(9, (0, _univerjs_core.Inject)(_univerjs_core.LocaleService)),
279
- __decorateParam(10, (0, _univerjs_core.Inject)(_univerjs_sheets_numfmt.SheetsNumfmtCellContentController))
275
+ __decorateParam(7, _univerjs_ui.ISidebarService),
276
+ __decorateParam(8, (0, _univerjs_core.Inject)(_univerjs_core.LocaleService)),
277
+ __decorateParam(9, (0, _univerjs_core.Inject)(_univerjs_sheets_numfmt.SheetsNumfmtCellContentController))
280
278
  ], SheetNumfmtUIController);
281
279
 
282
280
  //#endregion
@@ -570,7 +568,7 @@ const menuSchema = { [_univerjs_ui.RibbonStartGroup.LAYOUT]: {
570
568
  //#endregion
571
569
  //#region package.json
572
570
  var name = "@univerjs/sheets-numfmt-ui";
573
- var version = "1.0.0-alpha.3";
571
+ var version = "1.0.0-alpha.4";
574
572
 
575
573
  //#endregion
576
574
  //#region src/config/config.ts
@@ -835,20 +833,22 @@ function CustomFormat(props) {
835
833
  ]);
836
834
  const [options, setOptions] = (0, react.useState)([]);
837
835
  (0, react.useEffect)(() => {
836
+ let cancelled = false;
838
837
  localStorageService.getItem(historyPatternKey).then((historyList) => {
839
838
  const list = [
840
839
  ..._univerjs_sheets_numfmt.CURRENCYFORMAT.map((item) => item.suffix("$")),
841
840
  ..._univerjs_sheets_numfmt.DATEFMTLISG.map((item) => item.suffix),
842
- ..._univerjs_sheets_numfmt.NUMBERFORMAT.map((item) => item.suffix)
841
+ ..._univerjs_sheets_numfmt.NUMBERFORMAT.map((item) => item.suffix),
842
+ ...historyList !== null && historyList !== void 0 ? historyList : []
843
843
  ];
844
- list.push(...historyList || []);
845
- userHabitController.addHabit(key$1, []).finally(() => {
846
- userHabitController.getHabit(key$1, list).then((list) => {
847
- setOptions([...new Set(list)]);
848
- });
849
- });
844
+ return userHabitController.addHabit(key$1, []).then(() => userHabitController.getHabit(key$1, list));
845
+ }).then((list) => {
846
+ if (!cancelled) setOptions([...new Set(list)]);
850
847
  });
851
- }, []);
848
+ return () => {
849
+ cancelled = true;
850
+ };
851
+ }, [localStorageService, userHabitController]);
852
852
  const handleClick = (p) => {
853
853
  setPattern(p);
854
854
  onChange(p);
@@ -963,7 +963,7 @@ function ThousandthPercentilePanel(props) {
963
963
  return (item === null || item === void 0 ? void 0 : item.value) || options[0].value;
964
964
  });
965
965
  const pattern = (0, react.useMemo)(() => (0, _univerjs_sheets_numfmt.setPatternDecimal)(suffix, Number(decimal || 0)), [suffix, decimal]);
966
- const isInputDisable = (0, react.useMemo)(() => !(0, _univerjs_sheets_numfmt.isPatternHasDecimal)(suffix), [suffix]);
966
+ const isInputDisable = !(0, _univerjs_sheets_numfmt.isPatternHasDecimal)(suffix);
967
967
  const handleDecimalChange = (decimal) => {
968
968
  setDecimal(decimal || 0);
969
969
  onChange((0, _univerjs_sheets_numfmt.setPatternDecimal)(suffix, Number(decimal || 0)));
@@ -1085,6 +1085,7 @@ const useNextTick = () => {
1085
1085
  //#endregion
1086
1086
  //#region src/views/SheetNumfmtPanel.tsx
1087
1087
  function SheetNumfmtPanel(props) {
1088
+ var _typeOptions$find;
1088
1089
  const { defaultValue, defaultPattern, row, col } = props.value;
1089
1090
  const localeService = (0, _univerjs_ui.useDependency)(_univerjs_core.LocaleService);
1090
1091
  const currentPatternRef = (0, react.useRef)(() => "");
@@ -1123,10 +1124,7 @@ function SheetNumfmtPanel(props) {
1123
1124
  const [type, setType] = (0, react.useState)(findDefaultType);
1124
1125
  const [key, setKey] = (0, react.useState)(() => `${row}_${col}_${defaultPattern}`);
1125
1126
  const { mark, userHabitCurrency } = useCurrencyOptions(() => setKey(`${row}_${col}_${defaultPattern}_userCurrency`));
1126
- const BusinessComponent = (0, react.useMemo)(() => {
1127
- var _typeOptions$find;
1128
- return (_typeOptions$find = typeOptions.find((item) => item.label === type)) === null || _typeOptions$find === void 0 ? void 0 : _typeOptions$find.component;
1129
- }, [type]);
1127
+ const BusinessComponent = (_typeOptions$find = typeOptions.find((item) => item.label === type)) === null || _typeOptions$find === void 0 ? void 0 : _typeOptions$find.component;
1130
1128
  function findDefaultType() {
1131
1129
  return [
1132
1130
  isGeneralPanel,
@@ -1610,9 +1608,8 @@ function canConvertRichTextToNumfmt(body) {
1610
1608
  * limitations under the License.
1611
1609
  */
1612
1610
  let NumfmtMenuController = class NumfmtMenuController extends _univerjs_core.Disposable {
1613
- constructor(_componentManager, _menuManagerService) {
1611
+ constructor(_menuManagerService) {
1614
1612
  super();
1615
- this._componentManager = _componentManager;
1616
1613
  this._menuManagerService = _menuManagerService;
1617
1614
  this._initMenu();
1618
1615
  }
@@ -1620,7 +1617,7 @@ let NumfmtMenuController = class NumfmtMenuController extends _univerjs_core.Dis
1620
1617
  this._menuManagerService.mergeMenu(menuSchema);
1621
1618
  }
1622
1619
  };
1623
- NumfmtMenuController = __decorate([__decorateParam(0, (0, _univerjs_core.Inject)(_univerjs_ui.ComponentManager)), __decorateParam(1, _univerjs_ui.IMenuManagerService)], NumfmtMenuController);
1620
+ NumfmtMenuController = __decorate([__decorateParam(0, _univerjs_ui.IMenuManagerService)], NumfmtMenuController);
1624
1621
 
1625
1622
  //#endregion
1626
1623
  //#region src/plugin.ts
package/lib/es/index.js CHANGED
@@ -82,7 +82,7 @@ function __decorate(decorators, target, key, desc) {
82
82
  //#region src/controllers/ui.controller.ts
83
83
  const SHEET_NUMFMT_PANEL$1 = "SHEET_NUMFMT_PANEL";
84
84
  let SheetNumfmtUIController = class SheetNumfmtUIController extends Disposable {
85
- constructor(_sheetInterceptorService, _themeService, _univerInstanceService, _commandService, _selectionManagerService, _renderManagerService, _numfmtService, _componentManager, _sidebarService, _localeService, _sheetsNumfmtCellContentController) {
85
+ constructor(_sheetInterceptorService, _themeService, _univerInstanceService, _commandService, _selectionManagerService, _renderManagerService, _numfmtService, _sidebarService, _localeService, _sheetsNumfmtCellContentController) {
86
86
  super();
87
87
  this._sheetInterceptorService = _sheetInterceptorService;
88
88
  this._themeService = _themeService;
@@ -91,7 +91,6 @@ let SheetNumfmtUIController = class SheetNumfmtUIController extends Disposable {
91
91
  this._selectionManagerService = _selectionManagerService;
92
92
  this._renderManagerService = _renderManagerService;
93
93
  this._numfmtService = _numfmtService;
94
- this._componentManager = _componentManager;
95
94
  this._sidebarService = _sidebarService;
96
95
  this._localeService = _localeService;
97
96
  this._sheetsNumfmtCellContentController = _sheetsNumfmtCellContentController;
@@ -272,10 +271,9 @@ SheetNumfmtUIController = __decorate([
272
271
  __decorateParam(4, Inject(SheetsSelectionsService)),
273
272
  __decorateParam(5, IRenderManagerService),
274
273
  __decorateParam(6, INumfmtService),
275
- __decorateParam(7, Inject(ComponentManager)),
276
- __decorateParam(8, ISidebarService),
277
- __decorateParam(9, Inject(LocaleService)),
278
- __decorateParam(10, Inject(SheetsNumfmtCellContentController))
274
+ __decorateParam(7, ISidebarService),
275
+ __decorateParam(8, Inject(LocaleService)),
276
+ __decorateParam(9, Inject(SheetsNumfmtCellContentController))
279
277
  ], SheetNumfmtUIController);
280
278
 
281
279
  //#endregion
@@ -569,7 +567,7 @@ const menuSchema = { [RibbonStartGroup.LAYOUT]: {
569
567
  //#endregion
570
568
  //#region package.json
571
569
  var name = "@univerjs/sheets-numfmt-ui";
572
- var version = "1.0.0-alpha.3";
570
+ var version = "1.0.0-alpha.4";
573
571
 
574
572
  //#endregion
575
573
  //#region src/config/config.ts
@@ -834,20 +832,22 @@ function CustomFormat(props) {
834
832
  ]);
835
833
  const [options, setOptions] = useState([]);
836
834
  useEffect(() => {
835
+ let cancelled = false;
837
836
  localStorageService.getItem(historyPatternKey).then((historyList) => {
838
837
  const list = [
839
838
  ...CURRENCYFORMAT.map((item) => item.suffix("$")),
840
839
  ...DATEFMTLISG.map((item) => item.suffix),
841
- ...NUMBERFORMAT.map((item) => item.suffix)
840
+ ...NUMBERFORMAT.map((item) => item.suffix),
841
+ ...historyList !== null && historyList !== void 0 ? historyList : []
842
842
  ];
843
- list.push(...historyList || []);
844
- userHabitController.addHabit(key$1, []).finally(() => {
845
- userHabitController.getHabit(key$1, list).then((list) => {
846
- setOptions([...new Set(list)]);
847
- });
848
- });
843
+ return userHabitController.addHabit(key$1, []).then(() => userHabitController.getHabit(key$1, list));
844
+ }).then((list) => {
845
+ if (!cancelled) setOptions([...new Set(list)]);
849
846
  });
850
- }, []);
847
+ return () => {
848
+ cancelled = true;
849
+ };
850
+ }, [localStorageService, userHabitController]);
851
851
  const handleClick = (p) => {
852
852
  setPattern(p);
853
853
  onChange(p);
@@ -962,7 +962,7 @@ function ThousandthPercentilePanel(props) {
962
962
  return (item === null || item === void 0 ? void 0 : item.value) || options[0].value;
963
963
  });
964
964
  const pattern = useMemo(() => setPatternDecimal(suffix, Number(decimal || 0)), [suffix, decimal]);
965
- const isInputDisable = useMemo(() => !isPatternHasDecimal(suffix), [suffix]);
965
+ const isInputDisable = !isPatternHasDecimal(suffix);
966
966
  const handleDecimalChange = (decimal) => {
967
967
  setDecimal(decimal || 0);
968
968
  onChange(setPatternDecimal(suffix, Number(decimal || 0)));
@@ -1084,6 +1084,7 @@ const useNextTick = () => {
1084
1084
  //#endregion
1085
1085
  //#region src/views/SheetNumfmtPanel.tsx
1086
1086
  function SheetNumfmtPanel(props) {
1087
+ var _typeOptions$find;
1087
1088
  const { defaultValue, defaultPattern, row, col } = props.value;
1088
1089
  const localeService = useDependency(LocaleService);
1089
1090
  const currentPatternRef = useRef(() => "");
@@ -1122,10 +1123,7 @@ function SheetNumfmtPanel(props) {
1122
1123
  const [type, setType] = useState(findDefaultType);
1123
1124
  const [key, setKey] = useState(() => `${row}_${col}_${defaultPattern}`);
1124
1125
  const { mark, userHabitCurrency } = useCurrencyOptions(() => setKey(`${row}_${col}_${defaultPattern}_userCurrency`));
1125
- const BusinessComponent = useMemo(() => {
1126
- var _typeOptions$find;
1127
- return (_typeOptions$find = typeOptions.find((item) => item.label === type)) === null || _typeOptions$find === void 0 ? void 0 : _typeOptions$find.component;
1128
- }, [type]);
1126
+ const BusinessComponent = (_typeOptions$find = typeOptions.find((item) => item.label === type)) === null || _typeOptions$find === void 0 ? void 0 : _typeOptions$find.component;
1129
1127
  function findDefaultType() {
1130
1128
  return [
1131
1129
  isGeneralPanel,
@@ -1609,9 +1607,8 @@ function canConvertRichTextToNumfmt(body) {
1609
1607
  * limitations under the License.
1610
1608
  */
1611
1609
  let NumfmtMenuController = class NumfmtMenuController extends Disposable {
1612
- constructor(_componentManager, _menuManagerService) {
1610
+ constructor(_menuManagerService) {
1613
1611
  super();
1614
- this._componentManager = _componentManager;
1615
1612
  this._menuManagerService = _menuManagerService;
1616
1613
  this._initMenu();
1617
1614
  }
@@ -1619,7 +1616,7 @@ let NumfmtMenuController = class NumfmtMenuController extends Disposable {
1619
1616
  this._menuManagerService.mergeMenu(menuSchema);
1620
1617
  }
1621
1618
  };
1622
- NumfmtMenuController = __decorate([__decorateParam(0, Inject(ComponentManager)), __decorateParam(1, IMenuManagerService)], NumfmtMenuController);
1619
+ NumfmtMenuController = __decorate([__decorateParam(0, IMenuManagerService)], NumfmtMenuController);
1623
1620
 
1624
1621
  //#endregion
1625
1622
  //#region src/plugin.ts
package/lib/index.js CHANGED
@@ -82,7 +82,7 @@ function __decorate(decorators, target, key, desc) {
82
82
  //#region src/controllers/ui.controller.ts
83
83
  const SHEET_NUMFMT_PANEL$1 = "SHEET_NUMFMT_PANEL";
84
84
  let SheetNumfmtUIController = class SheetNumfmtUIController extends Disposable {
85
- constructor(_sheetInterceptorService, _themeService, _univerInstanceService, _commandService, _selectionManagerService, _renderManagerService, _numfmtService, _componentManager, _sidebarService, _localeService, _sheetsNumfmtCellContentController) {
85
+ constructor(_sheetInterceptorService, _themeService, _univerInstanceService, _commandService, _selectionManagerService, _renderManagerService, _numfmtService, _sidebarService, _localeService, _sheetsNumfmtCellContentController) {
86
86
  super();
87
87
  this._sheetInterceptorService = _sheetInterceptorService;
88
88
  this._themeService = _themeService;
@@ -91,7 +91,6 @@ let SheetNumfmtUIController = class SheetNumfmtUIController extends Disposable {
91
91
  this._selectionManagerService = _selectionManagerService;
92
92
  this._renderManagerService = _renderManagerService;
93
93
  this._numfmtService = _numfmtService;
94
- this._componentManager = _componentManager;
95
94
  this._sidebarService = _sidebarService;
96
95
  this._localeService = _localeService;
97
96
  this._sheetsNumfmtCellContentController = _sheetsNumfmtCellContentController;
@@ -272,10 +271,9 @@ SheetNumfmtUIController = __decorate([
272
271
  __decorateParam(4, Inject(SheetsSelectionsService)),
273
272
  __decorateParam(5, IRenderManagerService),
274
273
  __decorateParam(6, INumfmtService),
275
- __decorateParam(7, Inject(ComponentManager)),
276
- __decorateParam(8, ISidebarService),
277
- __decorateParam(9, Inject(LocaleService)),
278
- __decorateParam(10, Inject(SheetsNumfmtCellContentController))
274
+ __decorateParam(7, ISidebarService),
275
+ __decorateParam(8, Inject(LocaleService)),
276
+ __decorateParam(9, Inject(SheetsNumfmtCellContentController))
279
277
  ], SheetNumfmtUIController);
280
278
 
281
279
  //#endregion
@@ -569,7 +567,7 @@ const menuSchema = { [RibbonStartGroup.LAYOUT]: {
569
567
  //#endregion
570
568
  //#region package.json
571
569
  var name = "@univerjs/sheets-numfmt-ui";
572
- var version = "1.0.0-alpha.3";
570
+ var version = "1.0.0-alpha.4";
573
571
 
574
572
  //#endregion
575
573
  //#region src/config/config.ts
@@ -834,20 +832,22 @@ function CustomFormat(props) {
834
832
  ]);
835
833
  const [options, setOptions] = useState([]);
836
834
  useEffect(() => {
835
+ let cancelled = false;
837
836
  localStorageService.getItem(historyPatternKey).then((historyList) => {
838
837
  const list = [
839
838
  ...CURRENCYFORMAT.map((item) => item.suffix("$")),
840
839
  ...DATEFMTLISG.map((item) => item.suffix),
841
- ...NUMBERFORMAT.map((item) => item.suffix)
840
+ ...NUMBERFORMAT.map((item) => item.suffix),
841
+ ...historyList !== null && historyList !== void 0 ? historyList : []
842
842
  ];
843
- list.push(...historyList || []);
844
- userHabitController.addHabit(key$1, []).finally(() => {
845
- userHabitController.getHabit(key$1, list).then((list) => {
846
- setOptions([...new Set(list)]);
847
- });
848
- });
843
+ return userHabitController.addHabit(key$1, []).then(() => userHabitController.getHabit(key$1, list));
844
+ }).then((list) => {
845
+ if (!cancelled) setOptions([...new Set(list)]);
849
846
  });
850
- }, []);
847
+ return () => {
848
+ cancelled = true;
849
+ };
850
+ }, [localStorageService, userHabitController]);
851
851
  const handleClick = (p) => {
852
852
  setPattern(p);
853
853
  onChange(p);
@@ -962,7 +962,7 @@ function ThousandthPercentilePanel(props) {
962
962
  return (item === null || item === void 0 ? void 0 : item.value) || options[0].value;
963
963
  });
964
964
  const pattern = useMemo(() => setPatternDecimal(suffix, Number(decimal || 0)), [suffix, decimal]);
965
- const isInputDisable = useMemo(() => !isPatternHasDecimal(suffix), [suffix]);
965
+ const isInputDisable = !isPatternHasDecimal(suffix);
966
966
  const handleDecimalChange = (decimal) => {
967
967
  setDecimal(decimal || 0);
968
968
  onChange(setPatternDecimal(suffix, Number(decimal || 0)));
@@ -1084,6 +1084,7 @@ const useNextTick = () => {
1084
1084
  //#endregion
1085
1085
  //#region src/views/SheetNumfmtPanel.tsx
1086
1086
  function SheetNumfmtPanel(props) {
1087
+ var _typeOptions$find;
1087
1088
  const { defaultValue, defaultPattern, row, col } = props.value;
1088
1089
  const localeService = useDependency(LocaleService);
1089
1090
  const currentPatternRef = useRef(() => "");
@@ -1122,10 +1123,7 @@ function SheetNumfmtPanel(props) {
1122
1123
  const [type, setType] = useState(findDefaultType);
1123
1124
  const [key, setKey] = useState(() => `${row}_${col}_${defaultPattern}`);
1124
1125
  const { mark, userHabitCurrency } = useCurrencyOptions(() => setKey(`${row}_${col}_${defaultPattern}_userCurrency`));
1125
- const BusinessComponent = useMemo(() => {
1126
- var _typeOptions$find;
1127
- return (_typeOptions$find = typeOptions.find((item) => item.label === type)) === null || _typeOptions$find === void 0 ? void 0 : _typeOptions$find.component;
1128
- }, [type]);
1126
+ const BusinessComponent = (_typeOptions$find = typeOptions.find((item) => item.label === type)) === null || _typeOptions$find === void 0 ? void 0 : _typeOptions$find.component;
1129
1127
  function findDefaultType() {
1130
1128
  return [
1131
1129
  isGeneralPanel,
@@ -1609,9 +1607,8 @@ function canConvertRichTextToNumfmt(body) {
1609
1607
  * limitations under the License.
1610
1608
  */
1611
1609
  let NumfmtMenuController = class NumfmtMenuController extends Disposable {
1612
- constructor(_componentManager, _menuManagerService) {
1610
+ constructor(_menuManagerService) {
1613
1611
  super();
1614
- this._componentManager = _componentManager;
1615
1612
  this._menuManagerService = _menuManagerService;
1616
1613
  this._initMenu();
1617
1614
  }
@@ -1619,7 +1616,7 @@ let NumfmtMenuController = class NumfmtMenuController extends Disposable {
1619
1616
  this._menuManagerService.mergeMenu(menuSchema);
1620
1617
  }
1621
1618
  };
1622
- NumfmtMenuController = __decorate([__decorateParam(0, Inject(ComponentManager)), __decorateParam(1, IMenuManagerService)], NumfmtMenuController);
1619
+ NumfmtMenuController = __decorate([__decorateParam(0, IMenuManagerService)], NumfmtMenuController);
1623
1620
 
1624
1621
  //#endregion
1625
1622
  //#region src/plugin.ts
@@ -17,7 +17,7 @@ import { Disposable, ICommandService, IUniverInstanceService, LocaleService, The
17
17
  import { IRenderManagerService } from '@univerjs/engine-render';
18
18
  import { INumfmtService, SheetInterceptorService, SheetsSelectionsService } from '@univerjs/sheets';
19
19
  import { SheetsNumfmtCellContentController } from '@univerjs/sheets-numfmt';
20
- import { ComponentManager, ISidebarService } from '@univerjs/ui';
20
+ import { ISidebarService } from '@univerjs/ui';
21
21
  export declare class SheetNumfmtUIController extends Disposable {
22
22
  private _sheetInterceptorService;
23
23
  private _themeService;
@@ -26,7 +26,6 @@ export declare class SheetNumfmtUIController extends Disposable {
26
26
  private _selectionManagerService;
27
27
  private _renderManagerService;
28
28
  private _numfmtService;
29
- private _componentManager;
30
29
  private _sidebarService;
31
30
  private _localeService;
32
31
  private _sheetsNumfmtCellContentController;
@@ -37,7 +36,7 @@ export declare class SheetNumfmtUIController extends Disposable {
37
36
  * @memberof NumfmtController
38
37
  */
39
38
  private _previewPattern;
40
- constructor(_sheetInterceptorService: SheetInterceptorService, _themeService: ThemeService, _univerInstanceService: IUniverInstanceService, _commandService: ICommandService, _selectionManagerService: SheetsSelectionsService, _renderManagerService: IRenderManagerService, _numfmtService: INumfmtService, _componentManager: ComponentManager, _sidebarService: ISidebarService, _localeService: LocaleService, _sheetsNumfmtCellContentController: SheetsNumfmtCellContentController);
39
+ constructor(_sheetInterceptorService: SheetInterceptorService, _themeService: ThemeService, _univerInstanceService: IUniverInstanceService, _commandService: ICommandService, _selectionManagerService: SheetsSelectionsService, _renderManagerService: IRenderManagerService, _numfmtService: INumfmtService, _sidebarService: ISidebarService, _localeService: LocaleService, _sheetsNumfmtCellContentController: SheetsNumfmtCellContentController);
41
40
  private _initNumfmtLocalChange;
42
41
  openPanel(): boolean;
43
42
  private _forceUpdate;
@@ -14,10 +14,9 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  import { Disposable } from '@univerjs/core';
17
- import { ComponentManager, IMenuManagerService } from '@univerjs/ui';
17
+ import { IMenuManagerService } from '@univerjs/ui';
18
18
  export declare class NumfmtMenuController extends Disposable {
19
- private _componentManager;
20
19
  private readonly _menuManagerService;
21
- constructor(_componentManager: ComponentManager, _menuManagerService: IMenuManagerService);
20
+ constructor(_menuManagerService: IMenuManagerService);
22
21
  private _initMenu;
23
22
  }
package/lib/umd/index.js CHANGED
@@ -1 +1 @@
1
- (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("@univerjs/sheets-numfmt"),require("@univerjs/ui"),require("@univerjs/core"),require("@univerjs/engine-render"),require("@univerjs/sheets"),require("@univerjs/sheets-ui"),require("rxjs"),require("rxjs/operators"),require("@univerjs/design"),require("react"),require("react/jsx-runtime"),require("@univerjs/engine-formula")):typeof define==`function`&&define.amd?define([`exports`,`@univerjs/sheets-numfmt`,`@univerjs/ui`,`@univerjs/core`,`@univerjs/engine-render`,`@univerjs/sheets`,`@univerjs/sheets-ui`,`rxjs`,`rxjs/operators`,`@univerjs/design`,`react`,`react/jsx-runtime`,`@univerjs/engine-formula`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UniverSheetsNumfmtUi={},e.UniverSheetsNumfmt,e.UniverUi,e.UniverCore,e.UniverEngineRender,e.UniverSheets,e.UniverSheetsUi,e.rxjs,e.rxjs.operators,e.UniverDesign,e.React,e.React,e.UniverEngineFormula))})(this,function(e,t,n,r,i,a,o,s,c,l,u,d,f){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});let p={id:`sheet.operation.close.numfmt.panel`,type:r.CommandType.OPERATION,handler:()=>!0};function m(e){"@babel/helpers - typeof";return m=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},m(e)}function h(e,t){if(m(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(m(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function g(e){var t=h(e,`string`);return m(t)==`symbol`?t:t+``}function _(e,t,n){return(t=g(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function v(e,t){return function(n,r){t(n,r,e)}}function y(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}let b=class extends r.Disposable{constructor(e,t,n,r,i,a,o,s,c,l,u){super(),this._sheetInterceptorService=e,this._themeService=t,this._univerInstanceService=n,this._commandService=r,this._selectionManagerService=i,this._renderManagerService=a,this._numfmtService=o,this._componentManager=s,this._sidebarService=c,this._localeService=l,this._sheetsNumfmtCellContentController=u,_(this,`_previewPattern`,``),_(this,`_sidebarDisposable`,null),this._initRealTimeRenderingInterceptor(),this._initCommands(),this._initCloseListener(),this._commandExecutedListener(),this._initNumfmtLocalChange()}_initNumfmtLocalChange(){this.disposeWithMe((0,s.merge)(this._sheetsNumfmtCellContentController.locale$,this._localeService.currentLocale$).subscribe(()=>{this._forceUpdate()}))}openPanel(){var e;let n=this._sidebarService,i=this._selectionManagerService,a=this._commandService,o=this._univerInstanceService,s=this._numfmtService,c=this._localeService,l=(((e=i.getCurrentSelections())==null?void 0:e.map(e=>e.range))||[])[0];if(!l)return!1;let u=o.getCurrentUnitOfType(r.UniverInstanceType.UNIVER_SHEET),d=u.getActiveSheet();if(!d)return!1;let f=d.getCellRaw(l.startRow,l.startColumn),m=s.getValue(u.getUnitId(),d.getSheetId(),l.startRow,l.startColumn),h=``;m&&(h=m.pattern);let g=(f==null?void 0:f.t)===r.CellValueType.NUMBER?f.v:12345678,_={onChange:e=>{if(e.type===`change`)this._previewPattern=e.value,this._forceUpdate();else if(e.type===`confirm`){var o;let s=((o=i.getCurrentSelections())==null?void 0:o.map(e=>e.range))||[],c={values:[]},l=(0,t.getPatternType)(e.value);s.forEach(t=>{r.Range.foreach(t,(t,n)=>{c.values.push({row:t,col:n,pattern:e.value,type:l})})}),a.executeCommand(t.SetNumfmtCommand.id,c),n.close()}else e.type===`cancel`&&n.close()},value:{defaultPattern:h,defaultValue:g,row:l.startRow,col:l.startColumn}};return this._sidebarDisposable=n.open({header:{title:c.t(`sheets-numfmt-ui.title`)},children:{label:`SHEET_NUMFMT_PANEL`,..._},onClose:()=>{this._forceUpdate(),a.executeCommand(p.id)}}),!0}_forceUpdate(e){var t,n;let i=e==null?(t=this._univerInstanceService.getCurrentUnitOfType(r.UniverInstanceType.UNIVER_SHEET))==null?void 0:t.getUnitId():e;if(!i)return;let a=this._renderManagerService.getRenderById(i);a==null||a.with(o.SheetSkeletonManagerService).reCalculate(),a==null||(n=a.mainComponent)==null||n.makeDirty()}_initCommands(){[x,p].forEach(e=>{this.disposeWithMe(this._commandService.registerCommand(e))})}_initRealTimeRenderingInterceptor(){let e=(0,s.combineLatest)([new s.Observable(e=>{this._commandService.onCommandExecuted(t=>{t.id===x.id&&e.next(!0),t.id===p.id&&e.next(!1)})}),this._selectionManagerService.selectionMoveEnd$.pipe((0,c.map)(e=>e?e.map(e=>e.range):[]))]);this.disposeWithMe((0,r.toDisposable)(e.pipe((0,c.switchMap)(([e,t])=>new s.Observable(n=>{let i=new r.DisposableCollection;return e&&t.length&&n.next({selectionRanges:t,disposableCollection:i}),()=>{i.dispose()}})),(0,c.tap)(()=>{this._previewPattern=null})).subscribe(({disposableCollection:e,selectionRanges:n})=>{var i;let o=this._univerInstanceService.getCurrentUnitOfType(r.UniverInstanceType.UNIVER_SHEET);this.openPanel(),e.add(this._sheetInterceptorService.intercept(a.INTERCEPTOR_POINT.CELL_CONTENT,{priority:99,effect:r.InterceptorEffectEnum.Value|r.InterceptorEffectEnum.Style,handler:(e,i,a)=>{let{row:o,col:s}=i,c=a(e)||{};if(n.find(e=>e.startColumn<=s&&e.endColumn>=s&&e.startRow<=o&&e.endRow>=o)){let e=i.worksheet.getCellRaw(o,s),n=e==null?void 0:e.v,a=e==null?void 0:e.t;if(n==null||a!==r.CellValueType.NUMBER||this._previewPattern===null)return c;let u=(0,t.getPatternPreviewIgnoreGeneral)(this._previewPattern,n,this._sheetsNumfmtCellContentController.locale);if(u.color){var l;let e=(l=this._themeService.getColorFromTheme(`${u.color}.500`))==null?u.color:l;return{...c,v:u.result,t:r.CellValueType.STRING,s:{cl:{rgb:e}}}}return{...c,v:u.result,t:r.CellValueType.STRING}}return c}})),(i=this._renderManagerService.getRenderById(o.getUnitId()))==null||(i=i.mainComponent)==null||i.makeDirty()})))}_commandExecutedListener(){let e=[a.RemoveNumfmtMutation.id,a.SetNumfmtMutation.id];this.disposeWithMe(new s.Observable(t=>{let n=this._commandService.onCommandExecuted(n=>{if(e.includes(n.id)){let e=n.params;t.next(e.unitId)}});return()=>n.dispose()}).pipe((0,c.debounceTime)(16)).subscribe(e=>this._forceUpdate(e)))}_initCloseListener(){this._univerInstanceService.getCurrentTypeOfUnit$(r.UniverInstanceType.UNIVER_SHEET).subscribe(e=>{if(!e){var t;(t=this._sidebarDisposable)==null||t.dispose(),this._sidebarDisposable=null}})}};b=y([v(0,(0,r.Inject)(a.SheetInterceptorService)),v(1,(0,r.Inject)(r.ThemeService)),v(2,r.IUniverInstanceService),v(3,r.ICommandService),v(4,(0,r.Inject)(a.SheetsSelectionsService)),v(5,i.IRenderManagerService),v(6,a.INumfmtService),v(7,(0,r.Inject)(n.ComponentManager)),v(8,n.ISidebarService),v(9,(0,r.Inject)(r.LocaleService)),v(10,(0,r.Inject)(t.SheetsNumfmtCellContentController))],b);let x={id:`sheet.operation.open.numfmt.panel`,type:r.CommandType.OPERATION,handler:e=>(e.get(b).openPanel(),!0)},S=`sheets-numfmt-ui.moreNumfmtType`,C=`sheets-numfmt-ui.moreNumfmtType.options`;function w(e){let{value:t}=e,i=(0,n.useDependency)(r.LocaleService);return(0,d.jsx)(`span`,{className:`univer-text-sm`,children:t==null?i.t(`sheets-numfmt-ui.general`):t})}function T(){let e=(0,n.useDependency)(r.ICommandService),i=(0,n.useDependency)(r.LocaleService),o=(0,n.useDependency)(n.ILayoutService),s=(0,n.useDependency)(t.SheetsNumfmtCellContentController),c=(0,n.useObservable)(i.direction$,i.getDirection()),f=(0,n.useDependency)(a.SheetsSelectionsService),p=n=>{let i=f.getCurrentLastSelection();if(!i)return;let a=i.range,s=[];r.Range.foreach(a,(e,r)=>{n?s.push({row:e,col:r,pattern:n,type:(0,t.getPatternType)(n)}):s.push({row:e,col:r})}),e.executeCommand(t.SetNumfmtCommand.id,{values:s}),o.focus()},m=(0,u.useMemo)(()=>E(t.localeCurrencySymbolMap.get(i.getCurrentLocale())),[i]),h=t=>{if(t===0)p(null);else if(t===m.length-1)e.executeCommand(x.id),o.focus();else{let e=m[t];e.pattern&&p(e.pattern)}};return(0,d.jsx)(`div`,{dir:c,className:`univer-grid univer-gap-1 univer-p-1.5`,children:m.map((e,n)=>e===`|`?(0,d.jsx)(l.Separator,{},n):(0,d.jsxs)(`div`,{className:`univer-flex univer-h-7 univer-cursor-default univer-items-center univer-justify-between univer-gap-6 univer-rounded univer-px-2 univer-text-sm hover:univer-bg-gray-100 dark:hover:!univer-bg-gray-700`,onClick:()=>h(n),children:[(0,d.jsx)(`span`,{children:i.t(e.label)}),(0,d.jsx)(`span`,{className:`univer-text-xs univer-text-gray-500 dark:!univer-text-gray-400`,children:e.pattern?(0,t.getPatternPreview)(e.pattern||``,1220,s.locale).result.trim():``})]},n))})}let E=e=>[{label:`sheets-numfmt-ui.general`,pattern:null},{label:`sheets-numfmt-ui.text`,pattern:r.DEFAULT_TEXT_FORMAT_EXCEL},`|`,{label:`sheets-numfmt-ui.number`,pattern:`0`},{label:`sheets-numfmt-ui.percent`,pattern:`0.00%`},{label:`sheets-numfmt-ui.scientific`,pattern:`0.00E+00`},`|`,{label:`sheets-numfmt-ui.accounting`,pattern:`"${e}" #,##0.00_);[Red]("${e}"#,##0.00)`},{label:`sheets-numfmt-ui.financialValue`,pattern:`#,##0.00;[Red]#,##0.00`},{label:`sheets-numfmt-ui.currency`,pattern:`"${e}"#,##0.00_);[Red]("${e}"#,##0.00)`},{label:`sheets-numfmt-ui.roundingCurrency`,pattern:`"${e}"#,##0;[Red]"${e}"#,##0`},`|`,{label:`sheets-numfmt-ui.date`,pattern:`yyyy-mm-dd;@`},{label:`sheets-numfmt-ui.time`,pattern:`am/pm h":"mm":"ss`},{label:`sheets-numfmt-ui.dateTime`,pattern:`yyyy-m-d am/pm h:mm`},{label:`sheets-numfmt-ui.timeDuration`,pattern:`h:mm:ss`},`|`,{label:`sheets-numfmt-ui.moreFmt`,pattern:``}];function D(e){return{icon:new s.Observable(n=>{let i=e.get(r.LocaleService);return n.next((0,t.getCurrencySymbolIconByLocale)(i.getCurrentLocale()).icon),i.localeChanged$.subscribe(()=>{n.next((0,t.getCurrencySymbolIconByLocale)(i.getCurrentLocale()).icon)})}),id:t.SetCurrencyCommand.id,title:`sheets-numfmt-ui.currency`,tooltip:`sheets-numfmt-ui.currency`,type:n.MenuItemType.BUTTON,hidden$:(0,n.getMenuHiddenObservable)(e,r.UniverInstanceType.UNIVER_SHEET),disabled$:(0,o.getCurrentRangeDisable$)(e,{workbookTypes:[a.WorkbookEditablePermission],worksheetTypes:[a.WorksheetEditPermission,a.WorksheetSetCellStylePermission],rangeTypes:[a.RangeProtectionPermissionEditPoint]})}}function O(e){return{icon:`AddDigitsIcon`,id:t.AddDecimalCommand.id,title:`sheets-numfmt-ui.addDecimal`,tooltip:`sheets-numfmt-ui.addDecimal`,type:n.MenuItemType.BUTTON,hidden$:(0,n.getMenuHiddenObservable)(e,r.UniverInstanceType.UNIVER_SHEET),disabled$:(0,o.getCurrentRangeDisable$)(e,{workbookTypes:[a.WorkbookEditablePermission],worksheetTypes:[a.WorksheetEditPermission,a.WorksheetSetCellStylePermission],rangeTypes:[a.RangeProtectionPermissionEditPoint]})}}function k(e){return{icon:`ReduceDigitsIcon`,id:t.SubtractDecimalCommand.id,title:`sheets-numfmt-ui.subtractDecimal`,tooltip:`sheets-numfmt-ui.subtractDecimal`,type:n.MenuItemType.BUTTON,hidden$:(0,n.getMenuHiddenObservable)(e,r.UniverInstanceType.UNIVER_SHEET),disabled$:(0,o.getCurrentRangeDisable$)(e,{workbookTypes:[a.WorkbookEditablePermission],worksheetTypes:[a.WorksheetEditPermission,a.WorksheetSetCellStylePermission],rangeTypes:[a.RangeProtectionPermissionEditPoint]})}}function ee(e){return{icon:`PercentIcon`,id:t.SetPercentCommand.id,title:`sheets-numfmt-ui.percent`,tooltip:`sheets-numfmt-ui.percent`,type:n.MenuItemType.BUTTON,hidden$:(0,n.getMenuHiddenObservable)(e,r.UniverInstanceType.UNIVER_SHEET),disabled$:(0,o.getCurrentRangeDisable$)(e,{workbookTypes:[a.WorkbookEditablePermission],worksheetTypes:[a.WorksheetEditPermission,a.WorksheetSetCellStylePermission],rangeTypes:[a.RangeProtectionPermissionEditPoint]})}}function te(e){let i=e.get(r.IUniverInstanceService),c=e.get(r.ICommandService),l=e.get(r.LocaleService),u=e.get(a.SheetsSelectionsService),d=[a.RemoveNumfmtMutation.id,a.SetNumfmtMutation.id],f=(0,o.deriveStateFromActiveSheet$)(i,``,({workbook:e,worksheet:n})=>new s.Observable(i=>(0,s.merge)(u.selectionMoveEnd$,(0,r.fromCallback)(c.onCommandExecuted.bind(c)).pipe((0,s.filter)(([e])=>d.includes(e.id)))).subscribe(()=>{let a=u.getCurrentSelections();if(a&&a[0]){var o,s;let c=a[0].range,u=c.startRow,d=c.startColumn,f=(o=e.getStyles().get((s=n.getCell(u,d))==null?void 0:s.s))==null?void 0:o.n,p=f==null?void 0:f.pattern,m=(0,t.getCurrencySymbolByLocale)(l.getCurrentLocale()),h=l.t(`sheets-numfmt-ui.general`);if((0,r.isDefaultFormat)(p)){i.next(h);return}if(p){let e=E(m).filter(e=>typeof e==`object`&&e.pattern).find(e=>(0,r.isPatternEqualWithoutDecimal)(p,e.pattern));h=e&&typeof e==`object`&&e.pattern?l.t(e.label):l.t(`sheets-numfmt-ui.moreFmt`)}i.next(h)}})));return{label:S,id:x.id,tooltip:`sheets-numfmt-ui.title`,type:n.MenuItemType.SELECTOR,slot:!0,selections:[{label:{name:C,hoverable:!1,selectable:!1}}],value$:f,hidden$:(0,n.getMenuHiddenObservable)(e,r.UniverInstanceType.UNIVER_SHEET),disabled$:(0,o.getCurrentRangeDisable$)(e,{workbookTypes:[a.WorkbookEditablePermission],worksheetTypes:[a.WorksheetSetCellStylePermission,a.WorksheetEditPermission],rangeTypes:[a.RangeProtectionPermissionEditPoint]})}}let A={[n.RibbonStartGroup.LAYOUT]:{[x.id]:{order:9,menuItemFactory:te},[t.SetPercentCommand.id]:{order:9.1,menuItemFactory:ee},[t.SetCurrencyCommand.id]:{order:9.2,menuItemFactory:D},[t.AddDecimalCommand.id]:{order:9.3,menuItemFactory:O},[t.SubtractDecimalCommand.id]:{order:9.4,menuItemFactory:k}}};var ne=`@univerjs/sheets-numfmt-ui`,re=`1.0.0-alpha.3`;let j={};function M({ref:e,...t}){let{icon:n,id:r,className:i,extend:a,...o}=t,s=`univerjs-icon univerjs-icon-${r} ${i||``}`.trim(),c=(0,u.useRef)(`_${oe()}`);return N(n,`${r}`,{defIds:n.defIds,idSuffix:c.current},{ref:e,className:s,...o},a)}function N(e,t,n,r,i){return(0,u.createElement)(e.tag,{key:t,...ie(e,n,i),...r},(ae(e,n).children||[]).map((r,a)=>N(r,`${t}-${e.tag}-${a}`,n,void 0,i)))}function ie(e,t,n){let r={...e.attrs};n!=null&&n.colorChannel1&&r.fill===`colorChannel1`&&(r.fill=n.colorChannel1),n!=null&&n.colorChannel1&&r.stroke===`colorChannel1`&&(r.stroke=n.colorChannel1),e.tag===`mask`&&r.id&&(r.id+=t.idSuffix),Object.entries(r).forEach(([e,n])=>{e===`mask`&&typeof n==`string`&&(r[e]=n.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))});let{defIds:i}=t;return!i||i.length===0?r:(e.tag===`use`&&r[`xlink:href`]&&(r[`xlink:href`]+=t.idSuffix),Object.entries(r).forEach(([e,n])=>{typeof n==`string`&&(r[e]=n.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))}),r)}function ae(e,t){var n;let{defIds:r}=t;return!r||r.length===0?e:e.tag===`defs`&&(n=e.children)!=null&&n.length?{...e,children:e.children.map(e=>typeof e.attrs.id==`string`&&r&&r.includes(e.attrs.id)?{...e,attrs:{...e.attrs,id:e.attrs.id+t.idSuffix}}:e)}:e}function oe(){return Math.random().toString(36).substring(2,8)}M.displayName=`UniverIcon`;let se={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M4.06641 3.49366C4.06641 2.27555 5.14145 1.3916 6.33307 1.3916C7.52469 1.3916 8.59974 2.27555 8.59974 3.49366V6.49777C8.59974 7.71586 7.52469 8.59982 6.33307 8.59982C5.14145 8.59982 4.06641 7.71586 4.06641 6.49777V3.49366ZM6.33307 2.5916C5.68376 2.5916 5.26641 3.05264 5.26641 3.49366V6.49777C5.26641 6.93878 5.68376 7.39982 6.33307 7.39982C6.98239 7.39982 7.39974 6.93878 7.39974 6.49777V3.49366C7.39974 3.05264 6.98239 2.5916 6.33307 2.5916Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M10.0664 3.49366C10.0664 2.27555 11.1415 1.3916 12.3331 1.3916C13.5247 1.3916 14.5997 2.27555 14.5997 3.49366V6.49777C14.5997 7.71586 13.5247 8.59982 12.3331 8.59982C11.1415 8.59982 10.0664 7.71586 10.0664 6.49777V3.49366ZM12.3331 2.5916C11.6838 2.5916 11.2664 3.05264 11.2664 3.49366V6.49777C11.2664 6.93878 11.6838 7.39982 12.3331 7.39982C12.9824 7.39982 13.3997 6.93878 13.3997 6.49777V3.49366C13.3997 3.05264 12.9824 2.5916 12.3331 2.5916Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M12.4242 9.5417C12.1899 9.30739 11.81 9.30739 11.5756 9.5417C11.3413 9.77602 11.3413 10.1559 11.5756 10.3902L12.5514 11.366H6.3334C6.00203 11.366 5.7334 11.6346 5.7334 11.966C5.7334 12.2973 6.00203 12.566 6.3334 12.566H12.5514L11.5756 13.5417C11.3413 13.776 11.3413 14.1559 11.5756 14.3902C11.81 14.6245 12.1899 14.6245 12.4242 14.3902L14.4159 12.3985C14.5294 12.2893 14.6001 12.1359 14.6001 11.966C14.6001 11.796 14.5294 11.6426 14.4159 11.5334L12.4242 9.5417Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.3999 8.3002C1.3999 7.96882 1.66853 7.7002 1.9999 7.7002H2.33324C2.66461 7.7002 2.93324 7.96882 2.93324 8.3002C2.93324 8.63157 2.66461 8.9002 2.33324 8.9002H1.9999C1.66853 8.9002 1.3999 8.63157 1.3999 8.3002Z`}}]},P=(0,u.forwardRef)(function(e,t){return(0,u.createElement)(M,Object.assign({},e,{id:`add-digits-icon`,ref:t,icon:se}))});P.displayName=`AddDigitsIcon`;let ce={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`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`}}]},F=(0,u.forwardRef)(function(e,t){return(0,u.createElement)(M,Object.assign({},e,{id:`check-mark-icon`,ref:t,icon:ce}))});F.displayName=`CheckMarkIcon`;let le={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M7.3999 2.8999V1.6C7.3999 1.26863 7.66853 1 7.9999 1C8.33127 1 8.5999 1.26863 8.5999 1.6V2.8999H10.2044C11.6655 2.8999 12.8499 4.08431 12.8499 5.54536C12.8499 5.87673 12.5813 6.14536 12.2499 6.14536C11.9185 6.14536 11.6499 5.87673 11.6499 5.54536C11.6499 4.74705 11.0028 4.0999 10.2044 4.0999H5.7384C4.97155 4.0999 4.3499 4.72155 4.3499 5.4884C4.3499 6.14439 4.80899 6.71087 5.45074 6.84677L10.7977 7.97906C11.994 8.23242 12.8499 9.28849 12.8499 10.5114C12.8499 11.941 11.691 13.0999 10.2614 13.0999H8.5999V14.4C8.5999 14.7314 8.33127 15 7.9999 15C7.66853 15 7.3999 14.7314 7.3999 14.4V13.0999H5.79536C4.33431 13.0999 3.1499 11.9155 3.1499 10.4544C3.1499 10.1231 3.41853 9.85445 3.7499 9.85445C4.08127 9.85445 4.3499 10.1231 4.3499 10.4544C4.3499 11.2527 4.99705 11.8999 5.79536 11.8999H10.2614C11.0283 11.8999 11.6499 11.2782 11.6499 10.5114C11.6499 9.85542 11.1908 9.28893 10.5491 9.15303L5.20214 8.02074C4.00575 7.76739 3.1499 6.71132 3.1499 5.4884C3.1499 4.05881 4.30881 2.8999 5.7384 2.8999H7.3999Z`}}]},I=(0,u.forwardRef)(function(e,t){return(0,u.createElement)(M,Object.assign({},e,{id:`dollar-icon`,ref:t,icon:le}))});I.displayName=`DollarIcon`;let ue={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M5.84964 5.80918C6.71946 3.63548 8.84516 2.2 11.3295 2.2C11.8324 2.2 12.3198 2.26279 12.7846 2.38065C13.1058 2.46209 13.4322 2.26773 13.5137 1.94652C13.5951 1.62532 13.4008 1.2989 13.0795 1.21746C12.5191 1.07535 11.9327 1 11.3295 1C8.17278 1 5.49724 2.96009 4.57394 5.80918H3.06582C2.73445 5.80918 2.46582 6.07781 2.46582 6.40918C2.46582 6.74055 2.73445 7.00918 3.06582 7.00918H4.29808C4.25287 7.33297 4.22949 7.66376 4.22949 8C4.22949 8.33608 4.25284 8.6667 4.29801 8.99033H3.06582C2.73445 8.99033 2.46582 9.25896 2.46582 9.59033C2.46582 9.9217 2.73445 10.1903 3.06582 10.1903H4.57378C5.49693 13.0397 8.1726 15 11.3295 15C11.9336 15 12.5209 14.9244 13.0821 14.7819C13.4033 14.7003 13.5975 14.3738 13.5159 14.0527C13.4344 13.7315 13.1079 13.5373 12.7867 13.6188C12.3213 13.737 11.8332 13.8 11.3295 13.8C8.84497 13.8 6.71914 12.3643 5.84944 10.1903H11.4291C11.7605 10.1903 12.0291 9.9217 12.0291 9.59033C12.0291 9.25896 11.7605 8.99033 11.4291 8.99033H5.51225C5.45783 8.66834 5.42949 8.33748 5.42949 8C5.42949 7.66235 5.45786 7.33133 5.51233 7.00918H11.4291C11.7605 7.00918 12.0291 6.74055 12.0291 6.40918C12.0291 6.07781 11.7605 5.80918 11.4291 5.80918H5.84964Z`}}]},L=(0,u.forwardRef)(function(e,t){return(0,u.createElement)(M,Object.assign({},e,{id:`euro-icon`,ref:t,icon:ue}))});L.displayName=`EuroIcon`;let de={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M1.85059 4.06725C1.85059 2.84302 2.84302 1.85059 4.06725 1.85059C5.29148 1.85059 6.28392 2.84302 6.28392 4.06725C6.28392 5.29148 5.29148 6.28392 4.06725 6.28392C2.84302 6.28392 1.85059 5.29148 1.85059 4.06725ZM4.06725 2.95059C3.45053 2.95059 2.95059 3.45053 2.95059 4.06725C2.95059 4.68397 3.45053 5.18392 4.06725 5.18392C4.68397 5.18392 5.18392 4.68397 5.18392 4.06725C5.18392 3.45053 4.68397 2.95059 4.06725 2.95059Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M9.7168 11.933C9.7168 10.7087 10.7092 9.71631 11.9335 9.71631C13.1577 9.71631 14.1501 10.7087 14.1501 11.933C14.1501 13.1572 13.1577 14.1496 11.9335 14.1496C10.7092 14.1496 9.7168 13.1572 9.7168 11.933ZM11.9335 10.8163C11.3167 10.8163 10.8168 11.3163 10.8168 11.933C10.8168 12.5497 11.3167 13.0496 11.9335 13.0496C12.5502 13.0496 13.0501 12.5497 13.0501 11.933C13.0501 11.3163 12.5502 10.8163 11.9335 10.8163Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M13.5241 3.32407C13.7584 3.08975 13.7584 2.70986 13.5241 2.47554C13.2898 2.24123 12.9099 2.24123 12.6755 2.47554L2.47554 12.6755C2.24123 12.9099 2.24123 13.2898 2.47554 13.5241C2.70986 13.7584 3.08975 13.7584 3.32407 13.5241L13.5241 3.32407Z`}}]},R=(0,u.forwardRef)(function(e,t){return(0,u.createElement)(M,Object.assign({},e,{id:`percent-icon`,ref:t,icon:de}))});R.displayName=`PercentIcon`;let fe={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M6.33307 1.3916C5.14145 1.3916 4.06641 2.27555 4.06641 3.49366V6.49777C4.06641 7.71586 5.14145 8.59982 6.33307 8.59982C7.52469 8.59982 8.59974 7.71586 8.59974 6.49777V3.49366C8.59974 2.27555 7.52469 1.3916 6.33307 1.3916ZM5.26641 3.49366C5.26641 3.05264 5.68376 2.5916 6.33307 2.5916C6.98239 2.5916 7.39974 3.05264 7.39974 3.49366V6.49777C7.39974 6.93878 6.98239 7.39982 6.33307 7.39982C5.68376 7.39982 5.26641 6.93878 5.26641 6.49777V3.49366Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M7.90913 9.5417C8.14345 9.30739 8.52335 9.30739 8.75766 9.5417C8.99198 9.77602 8.99198 10.1559 8.75766 10.3902L7.78193 11.366H13.9999C14.3313 11.366 14.5999 11.6346 14.5999 11.966C14.5999 12.2973 14.3313 12.566 13.9999 12.566H7.78193L8.75766 13.5417C8.99198 13.776 8.99198 14.1559 8.75766 14.3902C8.52335 14.6245 8.14345 14.6245 7.90913 14.3902L5.91739 12.3985C5.80388 12.2893 5.73324 12.1359 5.73324 11.966C5.73324 11.796 5.80388 11.6426 5.91739 11.5334L7.90913 9.5417Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.3999 8.3002C1.3999 7.96882 1.66853 7.7002 1.9999 7.7002H2.33324C2.66461 7.7002 2.93324 7.96882 2.93324 8.3002C2.93324 8.63157 2.66461 8.9002 2.33324 8.9002H1.9999C1.66853 8.9002 1.3999 8.63157 1.3999 8.3002Z`}}]},z=(0,u.forwardRef)(function(e,t){return(0,u.createElement)(M,Object.assign({},e,{id:`reduce-digits-icon`,ref:t,icon:fe}))});z.displayName=`ReduceDigitsIcon`;let pe={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M11.9445 1.55649C12.2184 1.744 12.2895 2.11755 12.1033 2.39085L9.24342 6.58659H12.8001C13.1315 6.58659 13.4001 6.85522 13.4001 7.18659C13.4001 7.51796 13.1315 7.78659 12.8001 7.78659H8.5999V9.91276H13.2221C13.5534 9.91276 13.8221 10.1814 13.8221 10.5128C13.8221 10.8441 13.5534 11.1128 13.2221 11.1128H8.5999V14.0877C8.5999 14.4191 8.33127 14.6877 7.9999 14.6877C7.66853 14.6877 7.3999 14.4191 7.3999 14.0877V11.1128H2.77773C2.44636 11.1128 2.17773 10.8441 2.17773 10.5128C2.17773 10.1814 2.44636 9.91276 2.77773 9.91276H7.3999V7.78659H3.2001C2.86873 7.78659 2.6001 7.51796 2.6001 7.18659C2.6001 6.85522 2.86873 6.58659 3.2001 6.58659H6.75736L3.89753 2.39085C3.71125 2.11755 3.78234 1.744 4.05631 1.55649C4.33029 1.36899 4.7034 1.43854 4.88968 1.71184L7.94595 6.19577C7.96752 6.22741 7.98564 6.2604 8.00039 6.29429C8.01514 6.2604 8.03326 6.22741 8.05483 6.19577L11.1111 1.71184C11.2974 1.43854 11.6705 1.36899 11.9445 1.55649Z`}}]},B=(0,u.forwardRef)(function(e,t){return(0,u.createElement)(M,Object.assign({},e,{id:`rmb-icon`,ref:t,icon:pe}))});B.displayName=`RmbIcon`;let me={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M9.72502 1.02051H6.07803C4.97346 1.02051 4.07803 1.91594 4.07803 3.02051V7.57046H3.00039C2.66902 7.57046 2.40039 7.83909 2.40039 8.17046C2.40039 8.50183 2.66902 8.77046 3.00039 8.77046H4.07803V10.4854H3.00039C2.66902 10.4854 2.40039 10.754 2.40039 11.0854C2.40039 11.4167 2.66902 11.6854 3.00039 11.6854H4.07803V14.3795C4.07803 14.7108 4.34666 14.9795 4.67803 14.9795C5.0094 14.9795 5.27803 14.7108 5.27803 14.3795V11.6854H10.3637C10.695 11.6854 10.9637 11.4167 10.9637 11.0854C10.9637 10.754 10.695 10.4854 10.3637 10.4854H5.27803V8.77046H9.72503C11.8651 8.77046 13.6 7.03557 13.6 4.89548C13.6 2.75539 11.8651 1.02051 9.72502 1.02051ZM9.72503 7.57046H5.27803V3.12051C5.27803 2.62345 5.68097 2.22051 6.17803 2.22051H9.72502C11.2024 2.22051 12.4 3.41814 12.4 4.89548C12.4 6.37283 11.2024 7.57046 9.72503 7.57046Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},V=(0,u.forwardRef)(function(e,t){return(0,u.createElement)(M,Object.assign({},e,{id:`rouble-icon`,ref:t,icon:me}))});V.displayName=`RoubleIcon`;let H=(0,u.createContext)([]),U=class{constructor(e){this._localStorageService=e}_getKey(e){return`userHabitController_${e}`}async addHabit(e,t){let n=this._getKey(e);return this._localStorageService.getItem(n).then(e=>{e||this._localStorageService.setItem(n,t)})}markHabit(e,t){let n=this._getKey(e);this._localStorageService.getItem(n).then(e=>{if(e){let r=e.findIndex(e=>e===t);r>-1&&e.splice(r,1),e.unshift(t),this._localStorageService.setItem(n,e)}})}async getHabit(e,t){let n=this._getKey(e),r=await this._localStorageService.getItem(n);if(t&&r){let e=r.map((e,t,n)=>({value:e,priority:n.length-t}));return t.sort((t,n)=>{var r,i;let a=((r=e.find(e=>e.value===t))==null?void 0:r.priority)||-1;return(((i=e.find(e=>e.value===n))==null?void 0:i.priority)||-1)-a})}return r||[]}deleteHabit(e){this._localStorageService.removeItem(e)}};U=y([v(0,(0,r.Inject)(r.ILocalStorageService))],U);let he=e=>!!(0,t.getCurrencyType)(e)&&e.startsWith(`_(`);function ge(e){let{defaultPattern:i,onActionChange:a,onChange:o}=e,[s,c]=(0,u.useState)(()=>(0,t.getDecimalFromPattern)(i||``,2)),f=(0,u.useContext)(H),[p,m]=(0,u.useState)(()=>(0,t.getCurrencyType)(i)||f[0]),h=(0,u.useMemo)(()=>f.map(e=>({label:e,value:e})),[]),g=(0,n.useDependency)(r.LocaleService);return(0,u.useLayoutEffect)(()=>{a(()=>(0,t.setPatternDecimal)(`_("${p}"* #,##0${s>0?`.0`:``}_)`,s))},[s,a,p]),(0,d.jsxs)(`div`,{children:[(0,d.jsxs)(`div`,{className:`univer-mt-4 univer-flex univer-justify-between`,children:[(0,d.jsxs)(`div`,{className:`option`,children:[(0,d.jsx)(`div`,{className:`univer-text-sm univer-text-gray-400`,children:g.t(`sheets-numfmt-ui.decimalLength`)}),(0,d.jsx)(`div`,{className:`univer-mt-2 univer-w-32`,children:(0,d.jsx)(l.InputNumber,{value:s,step:1,precision:0,max:20,min:0,onChange:e=>{let n=e||0;c(n),o((0,t.setPatternDecimal)(`_("${p}"* #,##0${n>0?`.0`:``}_)`,n))}})})]}),(0,d.jsxs)(`div`,{className:`option`,children:[(0,d.jsx)(`div`,{className:`univer-text-sm univer-text-gray-400`,children:g.t(`sheets-numfmt-ui.currencyType`)}),(0,d.jsx)(`div`,{className:`univer-mt-2 univer-w-36`,children:(0,d.jsx)(l.Select,{options:h,value:p,onChange:e=>{m(e),o((0,t.setPatternDecimal)(`_("${e}"* #,##0${s>0?`.0`:``}_)`,s))}})})]})]}),(0,d.jsx)(`div`,{className:`univer-mt-4 univer-text-sm univer-text-gray-400`,children:g.t(`sheets-numfmt-ui.accountingDes`)})]})}let _e=e=>!!(0,t.getCurrencyType)(e)&&!e.startsWith(`_(`);function ve(e){let{onActionChange:i,onChange:a}=e,o=(0,n.useDependency)(r.LocaleService),s=(0,u.useContext)(H),[c,f]=(0,u.useState)(()=>(0,t.getCurrencyType)(e.defaultPattern)||s[0]),[p,m]=(0,u.useState)(()=>(0,t.getDecimalFromPattern)(e.defaultPattern||``,2)),[h,g]=(0,u.useState)(()=>{var n;let i=(0,t.getCurrencyFormatOptions)(c);return((n=i.find(t=>(0,r.isPatternEqualWithoutDecimal)(t.value,e.defaultPattern)))==null?void 0:n.value)||i[0].value}),_=(0,u.useMemo)(()=>(0,t.getCurrencyFormatOptions)(c),[c]),v=(0,u.useMemo)(()=>s.map(e=>({label:e,value:e})),[s]);return(0,u.useLayoutEffect)(()=>{i(()=>(0,t.setPatternDecimal)(h,p))},[p,i,h]),(0,d.jsxs)(`div`,{children:[(0,d.jsxs)(`div`,{className:`univer-mt-4 univer-flex univer-justify-between`,children:[(0,d.jsxs)(`div`,{className:`option`,children:[(0,d.jsx)(`div`,{className:`univer-text-sm univer-text-gray-400`,children:o.t(`sheets-numfmt-ui.decimalLength`)}),(0,d.jsx)(`div`,{className:`univer-mt-2 univer-w-32`,children:(0,d.jsx)(l.InputNumber,{value:p,max:20,min:0,onChange:e=>{m(e||0),a((0,t.setPatternDecimal)(h,e||0))}})})]}),(0,d.jsxs)(`div`,{className:`option`,children:[(0,d.jsx)(`div`,{className:`univer-text-sm univer-text-gray-400`,children:o.t(`sheets-numfmt-ui.currencyType`)}),(0,d.jsx)(`div`,{className:`univer-mt-2 univer-w-36`,children:(0,d.jsx)(l.Select,{value:c,options:v,onChange:e=>{if(e===void 0)return;f(e);let n=(0,t.getCurrencyFormatOptions)(e)[0].value;g(n),a((0,t.setPatternDecimal)(n,p))}})})]})]}),(0,d.jsx)(`div`,{className:`label univer-mt-4`,children:o.t(`sheets-numfmt-ui.negType`)}),(0,d.jsx)(`div`,{className:`univer-mt-2`,children:(0,d.jsx)(l.SelectList,{value:h,options:_,onChange:e=>{e!==void 0&&(g(e),a((0,t.setPatternDecimal)(e,p)))}})}),(0,d.jsx)(`div`,{className:`univer-mt-4 univer-text-sm univer-text-gray-400`,children:o.t(`sheets-numfmt-ui.currencyDes`)})]})}let W=`customFormat`,G=`numfmt_custom_pattern`;function ye(e){let{defaultPattern:i,onActionChange:a,onChange:o}=e,s=(0,n.useDependency)(U),c=(0,n.useDependency)(r.ILocalStorageService),f=(0,n.useDependency)(r.LocaleService),[p,m]=(0,u.useState)(i);(0,u.useLayoutEffect)(()=>{a(()=>(s.markHabit(W,p),c.getItem(G).then((e=[])=>{let t=[...new Set([p,...e||[]])].splice(0,10).filter(e=>!!e);c.setItem(G,t)}),p))},[c,a,p,s]);let[h,g]=(0,u.useState)([]);(0,u.useEffect)(()=>{c.getItem(G).then(e=>{let n=[...t.CURRENCYFORMAT.map(e=>e.suffix(`$`)),...t.DATEFMTLISG.map(e=>e.suffix),...t.NUMBERFORMAT.map(e=>e.suffix)];n.push(...e||[]),s.addHabit(W,[]).finally(()=>{s.getHabit(W,n).then(e=>{g([...new Set(e)])})})})},[]);let _=e=>{m(e),o(e)};return(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`div`,{className:`univer-mt-4 univer-text-sm univer-text-gray-400`,children:f.t(`sheets-numfmt-ui.customFormat`)}),(0,d.jsx)(l.Input,{placeholder:f.t(`sheets-numfmt-ui.customFormat`),onBlur:()=>{o(p)},value:p,onChange:m,className:`univer-mt-2 univer-w-full`}),(0,d.jsx)(`div`,{className:(0,l.clsx)(`univer-mt-2 univer-max-h-[400px] univer-overflow-auto univer-rounded-lg univer-p-2`,l.borderClassName),children:h.map(e=>(0,d.jsxs)(`div`,{onClick:()=>_(e),className:`univer-flex univer-cursor-pointer univer-items-center univer-gap-1.5 univer-py-1.5 univer-text-sm`,children:[(0,d.jsx)(`div`,{className:`univer-flex univer-w-4 univer-items-center univer-text-primary-600`,children:p===e&&(0,d.jsx)(F,{})}),(0,d.jsx)(`div`,{children:e})]},e))}),(0,d.jsx)(`div`,{className:`univer-mt-3 univer-text-sm univer-text-gray-600 dark:!univer-text-gray-200`,children:f.t(`sheets-numfmt-ui.customFormatDes`)})]})}let be=e=>{let n=r.numfmt.getFormatInfo(e);return(0,t.getDateFormatOptions)().map(e=>e.value).includes(e)||[`date`,`datetime`,`time`].includes(n.type)};function xe(e){let{onActionChange:i,onChange:a,defaultPattern:o}=e,s=(0,u.useMemo)(t.getDateFormatOptions,[]),c=(0,n.useDependency)(r.LocaleService),[f,p]=(0,u.useState)(()=>{if(o){let e=s.find(e=>e.value===o);if(e)return e.value}return s[0].value});return(0,u.useLayoutEffect)(()=>{i(()=>f)},[i,f]),(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`div`,{className:`univer-mt-4 univer-text-sm univer-text-gray-400`,children:c.t(`sheets-numfmt-ui.dateType`)}),(0,d.jsx)(`div`,{className:`univer-mt-2`,children:(0,d.jsx)(l.SelectList,{value:f,options:s,onChange:e=>{e!==void 0&&(p(e),a(e))}})}),(0,d.jsx)(`div`,{className:`univer-mt-3.5 univer-text-sm/5 univer-text-gray-600 dark:!univer-text-gray-200`,children:c.t(`sheets-numfmt-ui.dateDes`)})]})}let Se=e=>!e;function Ce(e){let t=(0,n.useDependency)(r.LocaleService),{onActionChange:i}=e;return(0,u.useLayoutEffect)(()=>{i(()=>``)},[i]),(0,d.jsx)(`div`,{children:(0,d.jsx)(`div`,{className:`univer-mt-3.5 univer-text-sm/5 univer-text-gray-600 dark:!univer-text-gray-200`,children:t.t(`sheets-numfmt-ui.generalDes`)})})}let we=e=>(0,t.getNumberFormatOptions)().some(t=>(0,r.isPatternEqualWithoutDecimal)(t.value,e));function Te(e){let{onActionChange:i,onChange:a}=e,o=(0,n.useDependency)(r.LocaleService),s=(0,u.useMemo)(t.getNumberFormatOptions,[]),[c,f]=(0,u.useState)(()=>(0,t.getDecimalFromPattern)(e.defaultPattern||``,0)),[p,m]=(0,u.useState)(()=>{let t=s.find(t=>(0,r.isPatternEqualWithoutDecimal)(t.value,e.defaultPattern||``));return(t==null?void 0:t.value)||s[0].value}),h=(0,u.useMemo)(()=>(0,t.setPatternDecimal)(p,Number(c||0)),[p,c]),g=(0,u.useMemo)(()=>!(0,t.isPatternHasDecimal)(p),[p]);return(0,u.useLayoutEffect)(()=>{i(()=>h)},[i,h]),(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`div`,{className:`univer-mt-4 univer-text-sm univer-text-gray-400`,children:o.t(`sheets-numfmt-ui.decimalLength`)}),(0,d.jsx)(`div`,{className:`univer-mt-2`,children:(0,d.jsx)(l.InputNumber,{disabled:g,value:c,max:20,min:0,onChange:e=>{f(e||0),a((0,t.setPatternDecimal)(p,Number(e||0)))}})}),(0,d.jsxs)(`div`,{className:`univer-mt-4 univer-text-sm univer-text-gray-400`,children:[` `,o.t(`sheets-numfmt-ui.negType`)]}),(0,d.jsx)(`div`,{className:`univer-mt-2`,children:(0,d.jsx)(l.SelectList,{onChange:e=>{e!==void 0&&(f((0,t.getDecimalFromPattern)(e,0)),m(e),a(e))},options:s,value:p})}),(0,d.jsx)(`div`,{className:`univer-mt-3.5 univer-text-sm/5 univer-text-gray-600 dark:!univer-text-gray-200`,children:o.t(`sheets-numfmt-ui.thousandthPercentileDes`)})]})}let K=`numfmtCurrency`,Ee=e=>{let t=(0,n.useDependency)(U),[i,a]=(0,u.useState)(r.currencySymbols);return(0,u.useEffect)(()=>{t.addHabit(`numfmtCurrency`,[]).then(()=>{t.getHabit(K,[...r.currencySymbols]).then(t=>{a(t),e&&e(t)})})},[]),{userHabitCurrency:i,mark:e=>{t.markHabit(K,e)}}},De=()=>{let e=(0,u.useRef)([]),[t,n]=(0,u.useState)({});return(0,u.useEffect)(()=>{e.current.forEach(e=>{e()}),e.current=[]},[t]),t=>{e.current.push(t),n({})}};function Oe(e){let{defaultValue:i,defaultPattern:a,row:o,col:s}=e.value,c=(0,n.useDependency)(r.LocaleService),f=(0,u.useRef)(()=>``),p=De(),m=(0,u.useMemo)(()=>[{label:`sheets-numfmt-ui.general`,component:Ce},{label:`sheets-numfmt-ui.accounting`,component:ge},{label:`sheets-numfmt-ui.currency`,component:ve},{label:`sheets-numfmt-ui.date`,component:xe},{label:`sheets-numfmt-ui.thousandthPercentile`,component:Te},{label:`sheets-numfmt-ui.customFormat`,component:ye}].map(e=>({...e,label:c.t(e.label)})),[c]),[h,g]=(0,u.useState)(S),[_,v]=(0,u.useState)(()=>`${o}_${s}_${a}`),{mark:y,userHabitCurrency:b}=Ee(()=>v(`${o}_${s}_${a}_userCurrency`)),x=(0,u.useMemo)(()=>{var e;return(e=m.find(e=>e.label===h))==null?void 0:e.component},[h]);function S(){return[Se,he,_e,be,we].reduce((e,t,n)=>e||(t(a)?m[n].label:``),``)||m[0].label}let C=m.map(e=>({label:e.label,value:e.label})),w=t=>{g(t),p(()=>e.onChange({type:`change`,value:f.current()||``}))},T=(0,u.useCallback)(t=>{e.onChange({type:`change`,value:t})},[]),E=(0,u.useCallback)(e=>{f.current=e},[]),D=()=>{let n=f.current()||``,r=(0,t.getCurrencyType)(n);r&&y(r),e.onChange({type:`confirm`,value:n})},O=()=>{e.onChange({type:`cancel`,value:``})},k={onChange:T,onActionChange:E,defaultValue:i,defaultPattern:a};return(0,u.useEffect)(()=>{g(S()),v(`${o}_${s}_${a}`)},[o,s,a]),(0,d.jsxs)(`div`,{className:(0,l.clsx)(`univer-flex univer-h-full univer-flex-col univer-justify-between univer-overflow-y-auto univer-pb-5`,l.scrollbarClassName),children:[(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`div`,{className:`univer-mt-3.5 univer-text-sm univer-text-gray-400`,children:c.t(`sheets-numfmt-ui.numfmtType`)}),(0,d.jsx)(`div`,{className:`univer-mt-2`,children:(0,d.jsx)(l.Select,{className:`univer-w-full`,value:h,options:C,onChange:w})}),(0,d.jsx)(`div`,{children:x&&(0,d.jsx)(H.Provider,{value:b,children:(0,u.createElement)(x,{...k,key:_})})})]}),(0,d.jsxs)(`div`,{className:`univer-mb-5 univer-mt-3.5 univer-flex univer-justify-end univer-gap-2 rtl:univer-flex-row-reverse`,children:[(0,d.jsx)(l.Button,{onClick:O,children:c.t(`sheets-numfmt-ui.cancel`)}),(0,d.jsx)(l.Button,{variant:`primary`,onClick:D,children:c.t(`sheets-numfmt-ui.confirm`)})]})]})}let q=class extends r.Disposable{constructor(e,t){super(),this._componentManager=e,this._iconManager=t,this._registerComponents(),this._registerIcons()}_registerIcons(){this.disposeWithMe(this._iconManager.register({AddDigitsIcon:P,DollarIcon:I,EuroIcon:L,PercentIcon:R,ReduceDigitsIcon:z,RmbIcon:B,RoubleIcon:V}))}_registerComponents(){this.disposeWithMe(this._componentManager.register(`SHEET_NUMFMT_PANEL`,Oe)),[[S,w],[C,T]].forEach(([e,t])=>{this.disposeWithMe(this._componentManager.register(e,t))})}};q=y([v(0,(0,r.Inject)(n.ComponentManager)),v(1,(0,r.Inject)(n.IconManager))],q);let J=`SHEET_NUMFMT_ALERT`,Y=class extends r.Disposable{constructor(e,t,n,r,i,a){super(),this._context=e,this._hoverManagerService=t,this._cellAlertManagerService=n,this._localeService=r,this._numfmtService=i,this._configService=a,this._init()}_init(){this._initCellAlertPopup()}_initCellAlertPopup(){this.disposeWithMe(this._hoverManagerService.currentCell$.pipe((0,s.debounceTime)(100)).subscribe(e=>{if(e){let a=e.location,s=this._context.unit,c=s.getActiveSheet();if(!c)return this._hideAlert();let l=a.unitId,u=a.subUnitId,d,f=c.getCell(a.row,a.col);if(f!=null&&f.s){let e=s.getStyles().get(f.s);e!=null&&e.n&&(d=e.n)}if(d||(d=this._numfmtService.getValue(l,u,a.row,a.col)),!d){this._hideAlert();return}if((0,r.isTextFormat)(d.pattern)&&r.Tools.isDefine(f==null?void 0:f.v)&&(0,r.isRealNum)(f.v)){var n,i;if((n=this._configService.getConfig(t.SHEETS_NUMFMT_PLUGIN_CONFIG_KEY))!=null&&n.disableTextFormatAlert)return;let e=this._cellAlertManagerService.currentAlert.get(J),r=e==null||(i=e.alert)==null?void 0:i.location;if(r&&r.row===a.row&&r.col===a.col&&r.subUnitId===a.subUnitId&&r.unitId===a.unitId){this._hideAlert();return}this._cellAlertManagerService.showAlert({type:o.CellAlertType.ERROR,title:this._localeService.t(`sheets-numfmt-ui.info.error`),message:this._localeService.t(`sheets-numfmt-ui.info.forceStringInfo`),location:a,width:200,height:74,key:J});return}}this._hideAlert()}))}_hideAlert(){this._cellAlertManagerService.removeAlert(J)}};Y=y([v(1,(0,r.Inject)(o.HoverManagerService)),v(2,(0,r.Inject)(o.CellAlertManagerService)),v(3,(0,r.Inject)(r.LocaleService)),v(4,(0,r.Inject)(a.INumfmtService)),v(5,r.IConfigService)],Y);let X=class extends r.Disposable{constructor(e){super(),this._repeatLastActionService=e,this._initCommandRecording()}_initCommandRecording(){this._repeatLastActionService&&this.disposeWithMe(this._repeatLastActionService.registerRepeatableCommand(t.SetNumfmtCommand.id,(e,t)=>{if(!t)return;let{values:n}=t,r=n.find(e=>e.pattern);if(!r)return;let{pattern:i,type:a}=r,o=[],s=new Set;for(let t of e){let{startRow:e,startColumn:n,endRow:r,endColumn:c}=t;for(let t=e;t<=r;t++)for(let e=n;e<=c;e++){let n=`${t}-${e}`;s.has(n)||(s.add(n),o.push({row:t,col:e,pattern:i,type:a}))}}return{...t,values:o}},o.RepeatLastActionPermission.CellStyle))}};X=y([v(0,(0,r.Optional)(o.IRepeatLastActionService))],X);let ke=()=>{let e=[];return{add:(t,n,r,i,a)=>e.push({unitId:t,subUnitId:n,row:r,col:i,value:a}),getEffects:()=>e,clean:()=>{e=[]}}},Z=class extends r.Disposable{constructor(e,t,n,r,i){super(),this._sheetInterceptorService=e,this._numfmtService=t,this._univerInstanceService=n,this._injector=r,this._editorBridgeService=i,_(this,`_collectEffectMutation`,ke()),this._initInterceptorEditorStart(),this._initInterceptorEditorEnd(),this._initInterceptorCommands()}_initInterceptorEditorStart(){this._editorBridgeService&&this.disposeWithMe((0,r.toDisposable)(this._sheetInterceptorService.writeCellInterceptor.intercept(a.BEFORE_CELL_EDIT,{handler:(e,n,i)=>{let a=n.row,o=n.col,s=this._numfmtService.getValue(n.unitId,n.subUnitId,a,o);if(s)switch((0,t.getPatternType)(s.pattern)){case`scientific`:case`currency`:case`grouped`:case`number`:{let e={...n.worksheet.getCellRaw(a,o)};return(e==null?void 0:e.t)===r.CellValueType.NUMBER&&(0,r.isRealNum)(e.v)&&(e.v=(0,f.stripErrorMargin)(Number(e.v))),i&&i(e)}case`percent`:{let e={...n.worksheet.getCellRaw(a,o)};return(e==null?void 0:e.t)===r.CellValueType.NUMBER&&(0,r.isRealNum)(e.v)&&(e.v=`${(0,f.stripErrorMargin)(Number(e.v)*100)}%`),i&&i(e)}default:return i&&i(e)}return i(e)}})))}_initInterceptorEditorEnd(){this.disposeWithMe((0,r.toDisposable)(this._sheetInterceptorService.writeCellInterceptor.intercept(a.AFTER_CELL_EDIT,{handler:(e,n,i)=>{var a,o;if(!(e!=null&&e.v)&&!(e!=null&&e.p))return i(e);this._collectEffectMutation.clean();let s=this._numfmtService.getValue(n.unitId,n.subUnitId,n.row,n.col),c=n.worksheet.getCellRaw(n.row,n.col);if((0,r.isTextFormat)(s==null?void 0:s.pattern)||e.t===r.CellValueType.FORCE_STRING)return i(e);let l=(a=e.p)==null?void 0:a.body,u=!(e==null||(o=e.p)==null||(o=o.body)==null)&&o.dataStream?e.p.body.dataStream.replace(/\r\n$/,``):String(e.v),d=(0,r.getNumfmtParseValueFilter)(u);if(l)if(Ae(l)){let{dataStream:t}=l,n=t.replace(/\r\n$/,``),r=Number(n);if(Number.isNaN(r)&&!d)return i(e)}else return i(e);if(d){if(!d.z&&!(s!=null&&s.pattern)&&(c==null?void 0:c.t)!==r.CellValueType.STRING&&(c==null?void 0:c.t)!==r.CellValueType.FORCE_STRING&&(0,r.willLoseNumericPrecision)(u))return i({...e,p:void 0,v:u,t:r.CellValueType.FORCE_STRING});d.z&&(!(s!=null&&s.pattern)||(0,t.getPatternType)(d.z)!==(0,t.getPatternType)(s.pattern))&&this._collectEffectMutation.add(n.unitId,n.subUnitId,n.row,n.col,{pattern:d.z});let a=(0,f.stripErrorMargin)(Number(d.v),16);return i({...e,p:void 0,v:a,t:r.CellValueType.NUMBER})}return i(e)}})))}_initInterceptorCommands(){let e=this;this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations(t){switch(t.id){case a.SetRangeValuesCommand.id:{var n;let t=e._univerInstanceService.getCurrentUnitOfType(r.UniverInstanceType.UNIVER_SHEET),i=t.getUnitId(),o=(n=t.getActiveSheet())==null?void 0:n.getSheetId();if(!o)return{redos:[],undos:[]};let s=e._collectEffectMutation.getEffects();if(e._collectEffectMutation.clean(),!s.length)return{redos:[],undos:[]};let c=s.filter(e=>{var t;return!!((t=e.value)!=null&&t.pattern)}).map(e=>({row:e.row,col:e.col,pattern:e.value.pattern})),l=s.filter(e=>{var t;return!((t=e.value)!=null&&t.pattern)}).map(e=>({startRow:e.row,endColumn:e.col,startColumn:e.col,endRow:e.row})),u=[],d=[];if(c.length){let t={id:a.SetNumfmtMutation.id,params:(0,a.transformCellsToRange)(i,o,c)};u.push(t),d.push(...(0,a.factorySetNumfmtUndoMutation)(e._injector,t.params))}if(l.length){let t={id:a.RemoveNumfmtMutation.id,params:{unitId:i,subUnitId:o,ranges:l}};u.push(t),d.push(...(0,a.factoryRemoveNumfmtUndoMutation)(e._injector,t.params))}return{redos:u,undos:d.reverse()}}}return{redos:[],undos:[]}}}))}dispose(){super.dispose(),this._collectEffectMutation.clean()}};Z=y([v(0,(0,r.Inject)(a.SheetInterceptorService)),v(1,(0,r.Inject)(a.INumfmtService)),v(2,(0,r.Inject)(r.IUniverInstanceService)),v(3,(0,r.Inject)(r.Injector)),v(4,(0,r.Optional)(o.IEditorBridgeService))],Z);function Ae(e){let{textRuns:t=[],paragraphs:n=[],customRanges:r,customBlocks:i=[]}=e,a=[`va`];return!(t.some(e=>!!(e.ts&&Object.keys(e.ts).some(e=>a.includes(e))))||n.some(e=>e.bullet)||n.length>=2||r!=null&&r.length||i.length>0)}let Q=class extends r.Disposable{constructor(e,t){super(),this._componentManager=e,this._menuManagerService=t,this._initMenu()}_initMenu(){this._menuManagerService.mergeMenu(A)}};Q=y([v(0,(0,r.Inject)(n.ComponentManager)),v(1,n.IMenuManagerService)],Q);let $=class extends r.Plugin{constructor(e=j,t,n,i){super(),this._config=e,this._injector=t,this._configService=n,this._renderManagerService=i;let{menu:a,...o}=(0,r.merge)({},j,this._config);a&&this._configService.setConfig(`menu`,a,{merge:!0}),this._configService.setConfig(`sheets-numfmt-ui.config`,o)}onStarting(){this._injector.add([q]),this._injector.get(q),(0,r.registerDependencies)(this._injector,[[b],[Z],[U],[Q],[X]])}onRendered(){this._registerRenderModules(),(0,r.touchDependencies)(this._injector,[[b],[Z],[Q],[X]])}_registerRenderModules(){[[Y]].forEach(e=>{this.disposeWithMe(this._renderManagerService.registerRenderModule(r.UniverInstanceType.UNIVER_SHEET,e))})}};_($,`pluginName`,`SHEET_NUMFMT_UI_PLUGIN`),_($,`packageName`,ne),_($,`version`,re),_($,`type`,r.UniverInstanceType.UNIVER_SHEET),$=y([(0,r.DependentOn)(o.UniverSheetsUIPlugin,t.UniverSheetsNumfmtPlugin),v(1,(0,r.Inject)(r.Injector)),v(2,r.IConfigService),v(3,i.IRenderManagerService)],$),e.SheetsNumfmtUIMenuSchema=A,Object.defineProperty(e,"UniverSheetsNumfmtUIPlugin",{enumerable:!0,get:function(){return $}})});
1
+ (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("@univerjs/sheets-numfmt"),require("@univerjs/ui"),require("@univerjs/core"),require("@univerjs/engine-render"),require("@univerjs/sheets"),require("@univerjs/sheets-ui"),require("rxjs"),require("rxjs/operators"),require("@univerjs/design"),require("react"),require("react/jsx-runtime"),require("@univerjs/engine-formula")):typeof define==`function`&&define.amd?define([`exports`,`@univerjs/sheets-numfmt`,`@univerjs/ui`,`@univerjs/core`,`@univerjs/engine-render`,`@univerjs/sheets`,`@univerjs/sheets-ui`,`rxjs`,`rxjs/operators`,`@univerjs/design`,`react`,`react/jsx-runtime`,`@univerjs/engine-formula`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UniverSheetsNumfmtUi={},e.UniverSheetsNumfmt,e.UniverUi,e.UniverCore,e.UniverEngineRender,e.UniverSheets,e.UniverSheetsUi,e.rxjs,e.rxjs.operators,e.UniverDesign,e.React,e.React,e.UniverEngineFormula))})(this,function(e,t,n,r,i,a,o,s,c,l,u,d,f){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});let p={id:`sheet.operation.close.numfmt.panel`,type:r.CommandType.OPERATION,handler:()=>!0};function m(e){"@babel/helpers - typeof";return m=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},m(e)}function h(e,t){if(m(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(m(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function g(e){var t=h(e,`string`);return m(t)==`symbol`?t:t+``}function _(e,t,n){return(t=g(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function v(e,t){return function(n,r){t(n,r,e)}}function y(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}let b=class extends r.Disposable{constructor(e,t,n,r,i,a,o,s,c,l){super(),this._sheetInterceptorService=e,this._themeService=t,this._univerInstanceService=n,this._commandService=r,this._selectionManagerService=i,this._renderManagerService=a,this._numfmtService=o,this._sidebarService=s,this._localeService=c,this._sheetsNumfmtCellContentController=l,_(this,`_previewPattern`,``),_(this,`_sidebarDisposable`,null),this._initRealTimeRenderingInterceptor(),this._initCommands(),this._initCloseListener(),this._commandExecutedListener(),this._initNumfmtLocalChange()}_initNumfmtLocalChange(){this.disposeWithMe((0,s.merge)(this._sheetsNumfmtCellContentController.locale$,this._localeService.currentLocale$).subscribe(()=>{this._forceUpdate()}))}openPanel(){var e;let n=this._sidebarService,i=this._selectionManagerService,a=this._commandService,o=this._univerInstanceService,s=this._numfmtService,c=this._localeService,l=(((e=i.getCurrentSelections())==null?void 0:e.map(e=>e.range))||[])[0];if(!l)return!1;let u=o.getCurrentUnitOfType(r.UniverInstanceType.UNIVER_SHEET),d=u.getActiveSheet();if(!d)return!1;let f=d.getCellRaw(l.startRow,l.startColumn),m=s.getValue(u.getUnitId(),d.getSheetId(),l.startRow,l.startColumn),h=``;m&&(h=m.pattern);let g=(f==null?void 0:f.t)===r.CellValueType.NUMBER?f.v:12345678,_={onChange:e=>{if(e.type===`change`)this._previewPattern=e.value,this._forceUpdate();else if(e.type===`confirm`){var o;let s=((o=i.getCurrentSelections())==null?void 0:o.map(e=>e.range))||[],c={values:[]},l=(0,t.getPatternType)(e.value);s.forEach(t=>{r.Range.foreach(t,(t,n)=>{c.values.push({row:t,col:n,pattern:e.value,type:l})})}),a.executeCommand(t.SetNumfmtCommand.id,c),n.close()}else e.type===`cancel`&&n.close()},value:{defaultPattern:h,defaultValue:g,row:l.startRow,col:l.startColumn}};return this._sidebarDisposable=n.open({header:{title:c.t(`sheets-numfmt-ui.title`)},children:{label:`SHEET_NUMFMT_PANEL`,..._},onClose:()=>{this._forceUpdate(),a.executeCommand(p.id)}}),!0}_forceUpdate(e){var t,n;let i=e==null?(t=this._univerInstanceService.getCurrentUnitOfType(r.UniverInstanceType.UNIVER_SHEET))==null?void 0:t.getUnitId():e;if(!i)return;let a=this._renderManagerService.getRenderById(i);a==null||a.with(o.SheetSkeletonManagerService).reCalculate(),a==null||(n=a.mainComponent)==null||n.makeDirty()}_initCommands(){[x,p].forEach(e=>{this.disposeWithMe(this._commandService.registerCommand(e))})}_initRealTimeRenderingInterceptor(){let e=(0,s.combineLatest)([new s.Observable(e=>{this._commandService.onCommandExecuted(t=>{t.id===x.id&&e.next(!0),t.id===p.id&&e.next(!1)})}),this._selectionManagerService.selectionMoveEnd$.pipe((0,c.map)(e=>e?e.map(e=>e.range):[]))]);this.disposeWithMe((0,r.toDisposable)(e.pipe((0,c.switchMap)(([e,t])=>new s.Observable(n=>{let i=new r.DisposableCollection;return e&&t.length&&n.next({selectionRanges:t,disposableCollection:i}),()=>{i.dispose()}})),(0,c.tap)(()=>{this._previewPattern=null})).subscribe(({disposableCollection:e,selectionRanges:n})=>{var i;let o=this._univerInstanceService.getCurrentUnitOfType(r.UniverInstanceType.UNIVER_SHEET);this.openPanel(),e.add(this._sheetInterceptorService.intercept(a.INTERCEPTOR_POINT.CELL_CONTENT,{priority:99,effect:r.InterceptorEffectEnum.Value|r.InterceptorEffectEnum.Style,handler:(e,i,a)=>{let{row:o,col:s}=i,c=a(e)||{};if(n.find(e=>e.startColumn<=s&&e.endColumn>=s&&e.startRow<=o&&e.endRow>=o)){let e=i.worksheet.getCellRaw(o,s),n=e==null?void 0:e.v,a=e==null?void 0:e.t;if(n==null||a!==r.CellValueType.NUMBER||this._previewPattern===null)return c;let u=(0,t.getPatternPreviewIgnoreGeneral)(this._previewPattern,n,this._sheetsNumfmtCellContentController.locale);if(u.color){var l;let e=(l=this._themeService.getColorFromTheme(`${u.color}.500`))==null?u.color:l;return{...c,v:u.result,t:r.CellValueType.STRING,s:{cl:{rgb:e}}}}return{...c,v:u.result,t:r.CellValueType.STRING}}return c}})),(i=this._renderManagerService.getRenderById(o.getUnitId()))==null||(i=i.mainComponent)==null||i.makeDirty()})))}_commandExecutedListener(){let e=[a.RemoveNumfmtMutation.id,a.SetNumfmtMutation.id];this.disposeWithMe(new s.Observable(t=>{let n=this._commandService.onCommandExecuted(n=>{if(e.includes(n.id)){let e=n.params;t.next(e.unitId)}});return()=>n.dispose()}).pipe((0,c.debounceTime)(16)).subscribe(e=>this._forceUpdate(e)))}_initCloseListener(){this._univerInstanceService.getCurrentTypeOfUnit$(r.UniverInstanceType.UNIVER_SHEET).subscribe(e=>{if(!e){var t;(t=this._sidebarDisposable)==null||t.dispose(),this._sidebarDisposable=null}})}};b=y([v(0,(0,r.Inject)(a.SheetInterceptorService)),v(1,(0,r.Inject)(r.ThemeService)),v(2,r.IUniverInstanceService),v(3,r.ICommandService),v(4,(0,r.Inject)(a.SheetsSelectionsService)),v(5,i.IRenderManagerService),v(6,a.INumfmtService),v(7,n.ISidebarService),v(8,(0,r.Inject)(r.LocaleService)),v(9,(0,r.Inject)(t.SheetsNumfmtCellContentController))],b);let x={id:`sheet.operation.open.numfmt.panel`,type:r.CommandType.OPERATION,handler:e=>(e.get(b).openPanel(),!0)},S=`sheets-numfmt-ui.moreNumfmtType`,C=`sheets-numfmt-ui.moreNumfmtType.options`;function w(e){let{value:t}=e,i=(0,n.useDependency)(r.LocaleService);return(0,d.jsx)(`span`,{className:`univer-text-sm`,children:t==null?i.t(`sheets-numfmt-ui.general`):t})}function T(){let e=(0,n.useDependency)(r.ICommandService),i=(0,n.useDependency)(r.LocaleService),o=(0,n.useDependency)(n.ILayoutService),s=(0,n.useDependency)(t.SheetsNumfmtCellContentController),c=(0,n.useObservable)(i.direction$,i.getDirection()),f=(0,n.useDependency)(a.SheetsSelectionsService),p=n=>{let i=f.getCurrentLastSelection();if(!i)return;let a=i.range,s=[];r.Range.foreach(a,(e,r)=>{n?s.push({row:e,col:r,pattern:n,type:(0,t.getPatternType)(n)}):s.push({row:e,col:r})}),e.executeCommand(t.SetNumfmtCommand.id,{values:s}),o.focus()},m=(0,u.useMemo)(()=>E(t.localeCurrencySymbolMap.get(i.getCurrentLocale())),[i]),h=t=>{if(t===0)p(null);else if(t===m.length-1)e.executeCommand(x.id),o.focus();else{let e=m[t];e.pattern&&p(e.pattern)}};return(0,d.jsx)(`div`,{dir:c,className:`univer-grid univer-gap-1 univer-p-1.5`,children:m.map((e,n)=>e===`|`?(0,d.jsx)(l.Separator,{},n):(0,d.jsxs)(`div`,{className:`univer-flex univer-h-7 univer-cursor-default univer-items-center univer-justify-between univer-gap-6 univer-rounded univer-px-2 univer-text-sm hover:univer-bg-gray-100 dark:hover:!univer-bg-gray-700`,onClick:()=>h(n),children:[(0,d.jsx)(`span`,{children:i.t(e.label)}),(0,d.jsx)(`span`,{className:`univer-text-xs univer-text-gray-500 dark:!univer-text-gray-400`,children:e.pattern?(0,t.getPatternPreview)(e.pattern||``,1220,s.locale).result.trim():``})]},n))})}let E=e=>[{label:`sheets-numfmt-ui.general`,pattern:null},{label:`sheets-numfmt-ui.text`,pattern:r.DEFAULT_TEXT_FORMAT_EXCEL},`|`,{label:`sheets-numfmt-ui.number`,pattern:`0`},{label:`sheets-numfmt-ui.percent`,pattern:`0.00%`},{label:`sheets-numfmt-ui.scientific`,pattern:`0.00E+00`},`|`,{label:`sheets-numfmt-ui.accounting`,pattern:`"${e}" #,##0.00_);[Red]("${e}"#,##0.00)`},{label:`sheets-numfmt-ui.financialValue`,pattern:`#,##0.00;[Red]#,##0.00`},{label:`sheets-numfmt-ui.currency`,pattern:`"${e}"#,##0.00_);[Red]("${e}"#,##0.00)`},{label:`sheets-numfmt-ui.roundingCurrency`,pattern:`"${e}"#,##0;[Red]"${e}"#,##0`},`|`,{label:`sheets-numfmt-ui.date`,pattern:`yyyy-mm-dd;@`},{label:`sheets-numfmt-ui.time`,pattern:`am/pm h":"mm":"ss`},{label:`sheets-numfmt-ui.dateTime`,pattern:`yyyy-m-d am/pm h:mm`},{label:`sheets-numfmt-ui.timeDuration`,pattern:`h:mm:ss`},`|`,{label:`sheets-numfmt-ui.moreFmt`,pattern:``}];function D(e){return{icon:new s.Observable(n=>{let i=e.get(r.LocaleService);return n.next((0,t.getCurrencySymbolIconByLocale)(i.getCurrentLocale()).icon),i.localeChanged$.subscribe(()=>{n.next((0,t.getCurrencySymbolIconByLocale)(i.getCurrentLocale()).icon)})}),id:t.SetCurrencyCommand.id,title:`sheets-numfmt-ui.currency`,tooltip:`sheets-numfmt-ui.currency`,type:n.MenuItemType.BUTTON,hidden$:(0,n.getMenuHiddenObservable)(e,r.UniverInstanceType.UNIVER_SHEET),disabled$:(0,o.getCurrentRangeDisable$)(e,{workbookTypes:[a.WorkbookEditablePermission],worksheetTypes:[a.WorksheetEditPermission,a.WorksheetSetCellStylePermission],rangeTypes:[a.RangeProtectionPermissionEditPoint]})}}function O(e){return{icon:`AddDigitsIcon`,id:t.AddDecimalCommand.id,title:`sheets-numfmt-ui.addDecimal`,tooltip:`sheets-numfmt-ui.addDecimal`,type:n.MenuItemType.BUTTON,hidden$:(0,n.getMenuHiddenObservable)(e,r.UniverInstanceType.UNIVER_SHEET),disabled$:(0,o.getCurrentRangeDisable$)(e,{workbookTypes:[a.WorkbookEditablePermission],worksheetTypes:[a.WorksheetEditPermission,a.WorksheetSetCellStylePermission],rangeTypes:[a.RangeProtectionPermissionEditPoint]})}}function k(e){return{icon:`ReduceDigitsIcon`,id:t.SubtractDecimalCommand.id,title:`sheets-numfmt-ui.subtractDecimal`,tooltip:`sheets-numfmt-ui.subtractDecimal`,type:n.MenuItemType.BUTTON,hidden$:(0,n.getMenuHiddenObservable)(e,r.UniverInstanceType.UNIVER_SHEET),disabled$:(0,o.getCurrentRangeDisable$)(e,{workbookTypes:[a.WorkbookEditablePermission],worksheetTypes:[a.WorksheetEditPermission,a.WorksheetSetCellStylePermission],rangeTypes:[a.RangeProtectionPermissionEditPoint]})}}function A(e){return{icon:`PercentIcon`,id:t.SetPercentCommand.id,title:`sheets-numfmt-ui.percent`,tooltip:`sheets-numfmt-ui.percent`,type:n.MenuItemType.BUTTON,hidden$:(0,n.getMenuHiddenObservable)(e,r.UniverInstanceType.UNIVER_SHEET),disabled$:(0,o.getCurrentRangeDisable$)(e,{workbookTypes:[a.WorkbookEditablePermission],worksheetTypes:[a.WorksheetEditPermission,a.WorksheetSetCellStylePermission],rangeTypes:[a.RangeProtectionPermissionEditPoint]})}}function ee(e){let i=e.get(r.IUniverInstanceService),c=e.get(r.ICommandService),l=e.get(r.LocaleService),u=e.get(a.SheetsSelectionsService),d=[a.RemoveNumfmtMutation.id,a.SetNumfmtMutation.id],f=(0,o.deriveStateFromActiveSheet$)(i,``,({workbook:e,worksheet:n})=>new s.Observable(i=>(0,s.merge)(u.selectionMoveEnd$,(0,r.fromCallback)(c.onCommandExecuted.bind(c)).pipe((0,s.filter)(([e])=>d.includes(e.id)))).subscribe(()=>{let a=u.getCurrentSelections();if(a&&a[0]){var o,s;let c=a[0].range,u=c.startRow,d=c.startColumn,f=(o=e.getStyles().get((s=n.getCell(u,d))==null?void 0:s.s))==null?void 0:o.n,p=f==null?void 0:f.pattern,m=(0,t.getCurrencySymbolByLocale)(l.getCurrentLocale()),h=l.t(`sheets-numfmt-ui.general`);if((0,r.isDefaultFormat)(p)){i.next(h);return}if(p){let e=E(m).filter(e=>typeof e==`object`&&e.pattern).find(e=>(0,r.isPatternEqualWithoutDecimal)(p,e.pattern));h=e&&typeof e==`object`&&e.pattern?l.t(e.label):l.t(`sheets-numfmt-ui.moreFmt`)}i.next(h)}})));return{label:S,id:x.id,tooltip:`sheets-numfmt-ui.title`,type:n.MenuItemType.SELECTOR,slot:!0,selections:[{label:{name:C,hoverable:!1,selectable:!1}}],value$:f,hidden$:(0,n.getMenuHiddenObservable)(e,r.UniverInstanceType.UNIVER_SHEET),disabled$:(0,o.getCurrentRangeDisable$)(e,{workbookTypes:[a.WorkbookEditablePermission],worksheetTypes:[a.WorksheetSetCellStylePermission,a.WorksheetEditPermission],rangeTypes:[a.RangeProtectionPermissionEditPoint]})}}let j={[n.RibbonStartGroup.LAYOUT]:{[x.id]:{order:9,menuItemFactory:ee},[t.SetPercentCommand.id]:{order:9.1,menuItemFactory:A},[t.SetCurrencyCommand.id]:{order:9.2,menuItemFactory:D},[t.AddDecimalCommand.id]:{order:9.3,menuItemFactory:O},[t.SubtractDecimalCommand.id]:{order:9.4,menuItemFactory:k}}};var te=`@univerjs/sheets-numfmt-ui`,ne=`1.0.0-alpha.4`;let re={};function M({ref:e,...t}){let{icon:n,id:r,className:i,extend:a,...o}=t,s=`univerjs-icon univerjs-icon-${r} ${i||``}`.trim(),c=(0,u.useRef)(`_${oe()}`);return N(n,`${r}`,{defIds:n.defIds,idSuffix:c.current},{ref:e,className:s,...o},a)}function N(e,t,n,r,i){return(0,u.createElement)(e.tag,{key:t,...ie(e,n,i),...r},(ae(e,n).children||[]).map((r,a)=>N(r,`${t}-${e.tag}-${a}`,n,void 0,i)))}function ie(e,t,n){let r={...e.attrs};n!=null&&n.colorChannel1&&r.fill===`colorChannel1`&&(r.fill=n.colorChannel1),n!=null&&n.colorChannel1&&r.stroke===`colorChannel1`&&(r.stroke=n.colorChannel1),e.tag===`mask`&&r.id&&(r.id+=t.idSuffix),Object.entries(r).forEach(([e,n])=>{e===`mask`&&typeof n==`string`&&(r[e]=n.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))});let{defIds:i}=t;return!i||i.length===0?r:(e.tag===`use`&&r[`xlink:href`]&&(r[`xlink:href`]+=t.idSuffix),Object.entries(r).forEach(([e,n])=>{typeof n==`string`&&(r[e]=n.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))}),r)}function ae(e,t){var n;let{defIds:r}=t;return!r||r.length===0?e:e.tag===`defs`&&(n=e.children)!=null&&n.length?{...e,children:e.children.map(e=>typeof e.attrs.id==`string`&&r&&r.includes(e.attrs.id)?{...e,attrs:{...e.attrs,id:e.attrs.id+t.idSuffix}}:e)}:e}function oe(){return Math.random().toString(36).substring(2,8)}M.displayName=`UniverIcon`;let se={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M4.06641 3.49366C4.06641 2.27555 5.14145 1.3916 6.33307 1.3916C7.52469 1.3916 8.59974 2.27555 8.59974 3.49366V6.49777C8.59974 7.71586 7.52469 8.59982 6.33307 8.59982C5.14145 8.59982 4.06641 7.71586 4.06641 6.49777V3.49366ZM6.33307 2.5916C5.68376 2.5916 5.26641 3.05264 5.26641 3.49366V6.49777C5.26641 6.93878 5.68376 7.39982 6.33307 7.39982C6.98239 7.39982 7.39974 6.93878 7.39974 6.49777V3.49366C7.39974 3.05264 6.98239 2.5916 6.33307 2.5916Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M10.0664 3.49366C10.0664 2.27555 11.1415 1.3916 12.3331 1.3916C13.5247 1.3916 14.5997 2.27555 14.5997 3.49366V6.49777C14.5997 7.71586 13.5247 8.59982 12.3331 8.59982C11.1415 8.59982 10.0664 7.71586 10.0664 6.49777V3.49366ZM12.3331 2.5916C11.6838 2.5916 11.2664 3.05264 11.2664 3.49366V6.49777C11.2664 6.93878 11.6838 7.39982 12.3331 7.39982C12.9824 7.39982 13.3997 6.93878 13.3997 6.49777V3.49366C13.3997 3.05264 12.9824 2.5916 12.3331 2.5916Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M12.4242 9.5417C12.1899 9.30739 11.81 9.30739 11.5756 9.5417C11.3413 9.77602 11.3413 10.1559 11.5756 10.3902L12.5514 11.366H6.3334C6.00203 11.366 5.7334 11.6346 5.7334 11.966C5.7334 12.2973 6.00203 12.566 6.3334 12.566H12.5514L11.5756 13.5417C11.3413 13.776 11.3413 14.1559 11.5756 14.3902C11.81 14.6245 12.1899 14.6245 12.4242 14.3902L14.4159 12.3985C14.5294 12.2893 14.6001 12.1359 14.6001 11.966C14.6001 11.796 14.5294 11.6426 14.4159 11.5334L12.4242 9.5417Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.3999 8.3002C1.3999 7.96882 1.66853 7.7002 1.9999 7.7002H2.33324C2.66461 7.7002 2.93324 7.96882 2.93324 8.3002C2.93324 8.63157 2.66461 8.9002 2.33324 8.9002H1.9999C1.66853 8.9002 1.3999 8.63157 1.3999 8.3002Z`}}]},P=(0,u.forwardRef)(function(e,t){return(0,u.createElement)(M,Object.assign({},e,{id:`add-digits-icon`,ref:t,icon:se}))});P.displayName=`AddDigitsIcon`;let ce={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`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`}}]},F=(0,u.forwardRef)(function(e,t){return(0,u.createElement)(M,Object.assign({},e,{id:`check-mark-icon`,ref:t,icon:ce}))});F.displayName=`CheckMarkIcon`;let le={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M7.3999 2.8999V1.6C7.3999 1.26863 7.66853 1 7.9999 1C8.33127 1 8.5999 1.26863 8.5999 1.6V2.8999H10.2044C11.6655 2.8999 12.8499 4.08431 12.8499 5.54536C12.8499 5.87673 12.5813 6.14536 12.2499 6.14536C11.9185 6.14536 11.6499 5.87673 11.6499 5.54536C11.6499 4.74705 11.0028 4.0999 10.2044 4.0999H5.7384C4.97155 4.0999 4.3499 4.72155 4.3499 5.4884C4.3499 6.14439 4.80899 6.71087 5.45074 6.84677L10.7977 7.97906C11.994 8.23242 12.8499 9.28849 12.8499 10.5114C12.8499 11.941 11.691 13.0999 10.2614 13.0999H8.5999V14.4C8.5999 14.7314 8.33127 15 7.9999 15C7.66853 15 7.3999 14.7314 7.3999 14.4V13.0999H5.79536C4.33431 13.0999 3.1499 11.9155 3.1499 10.4544C3.1499 10.1231 3.41853 9.85445 3.7499 9.85445C4.08127 9.85445 4.3499 10.1231 4.3499 10.4544C4.3499 11.2527 4.99705 11.8999 5.79536 11.8999H10.2614C11.0283 11.8999 11.6499 11.2782 11.6499 10.5114C11.6499 9.85542 11.1908 9.28893 10.5491 9.15303L5.20214 8.02074C4.00575 7.76739 3.1499 6.71132 3.1499 5.4884C3.1499 4.05881 4.30881 2.8999 5.7384 2.8999H7.3999Z`}}]},I=(0,u.forwardRef)(function(e,t){return(0,u.createElement)(M,Object.assign({},e,{id:`dollar-icon`,ref:t,icon:le}))});I.displayName=`DollarIcon`;let ue={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M5.84964 5.80918C6.71946 3.63548 8.84516 2.2 11.3295 2.2C11.8324 2.2 12.3198 2.26279 12.7846 2.38065C13.1058 2.46209 13.4322 2.26773 13.5137 1.94652C13.5951 1.62532 13.4008 1.2989 13.0795 1.21746C12.5191 1.07535 11.9327 1 11.3295 1C8.17278 1 5.49724 2.96009 4.57394 5.80918H3.06582C2.73445 5.80918 2.46582 6.07781 2.46582 6.40918C2.46582 6.74055 2.73445 7.00918 3.06582 7.00918H4.29808C4.25287 7.33297 4.22949 7.66376 4.22949 8C4.22949 8.33608 4.25284 8.6667 4.29801 8.99033H3.06582C2.73445 8.99033 2.46582 9.25896 2.46582 9.59033C2.46582 9.9217 2.73445 10.1903 3.06582 10.1903H4.57378C5.49693 13.0397 8.1726 15 11.3295 15C11.9336 15 12.5209 14.9244 13.0821 14.7819C13.4033 14.7003 13.5975 14.3738 13.5159 14.0527C13.4344 13.7315 13.1079 13.5373 12.7867 13.6188C12.3213 13.737 11.8332 13.8 11.3295 13.8C8.84497 13.8 6.71914 12.3643 5.84944 10.1903H11.4291C11.7605 10.1903 12.0291 9.9217 12.0291 9.59033C12.0291 9.25896 11.7605 8.99033 11.4291 8.99033H5.51225C5.45783 8.66834 5.42949 8.33748 5.42949 8C5.42949 7.66235 5.45786 7.33133 5.51233 7.00918H11.4291C11.7605 7.00918 12.0291 6.74055 12.0291 6.40918C12.0291 6.07781 11.7605 5.80918 11.4291 5.80918H5.84964Z`}}]},L=(0,u.forwardRef)(function(e,t){return(0,u.createElement)(M,Object.assign({},e,{id:`euro-icon`,ref:t,icon:ue}))});L.displayName=`EuroIcon`;let de={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M1.85059 4.06725C1.85059 2.84302 2.84302 1.85059 4.06725 1.85059C5.29148 1.85059 6.28392 2.84302 6.28392 4.06725C6.28392 5.29148 5.29148 6.28392 4.06725 6.28392C2.84302 6.28392 1.85059 5.29148 1.85059 4.06725ZM4.06725 2.95059C3.45053 2.95059 2.95059 3.45053 2.95059 4.06725C2.95059 4.68397 3.45053 5.18392 4.06725 5.18392C4.68397 5.18392 5.18392 4.68397 5.18392 4.06725C5.18392 3.45053 4.68397 2.95059 4.06725 2.95059Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M9.7168 11.933C9.7168 10.7087 10.7092 9.71631 11.9335 9.71631C13.1577 9.71631 14.1501 10.7087 14.1501 11.933C14.1501 13.1572 13.1577 14.1496 11.9335 14.1496C10.7092 14.1496 9.7168 13.1572 9.7168 11.933ZM11.9335 10.8163C11.3167 10.8163 10.8168 11.3163 10.8168 11.933C10.8168 12.5497 11.3167 13.0496 11.9335 13.0496C12.5502 13.0496 13.0501 12.5497 13.0501 11.933C13.0501 11.3163 12.5502 10.8163 11.9335 10.8163Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M13.5241 3.32407C13.7584 3.08975 13.7584 2.70986 13.5241 2.47554C13.2898 2.24123 12.9099 2.24123 12.6755 2.47554L2.47554 12.6755C2.24123 12.9099 2.24123 13.2898 2.47554 13.5241C2.70986 13.7584 3.08975 13.7584 3.32407 13.5241L13.5241 3.32407Z`}}]},R=(0,u.forwardRef)(function(e,t){return(0,u.createElement)(M,Object.assign({},e,{id:`percent-icon`,ref:t,icon:de}))});R.displayName=`PercentIcon`;let fe={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M6.33307 1.3916C5.14145 1.3916 4.06641 2.27555 4.06641 3.49366V6.49777C4.06641 7.71586 5.14145 8.59982 6.33307 8.59982C7.52469 8.59982 8.59974 7.71586 8.59974 6.49777V3.49366C8.59974 2.27555 7.52469 1.3916 6.33307 1.3916ZM5.26641 3.49366C5.26641 3.05264 5.68376 2.5916 6.33307 2.5916C6.98239 2.5916 7.39974 3.05264 7.39974 3.49366V6.49777C7.39974 6.93878 6.98239 7.39982 6.33307 7.39982C5.68376 7.39982 5.26641 6.93878 5.26641 6.49777V3.49366Z`,fillRule:`evenodd`,clipRule:`evenodd`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M7.90913 9.5417C8.14345 9.30739 8.52335 9.30739 8.75766 9.5417C8.99198 9.77602 8.99198 10.1559 8.75766 10.3902L7.78193 11.366H13.9999C14.3313 11.366 14.5999 11.6346 14.5999 11.966C14.5999 12.2973 14.3313 12.566 13.9999 12.566H7.78193L8.75766 13.5417C8.99198 13.776 8.99198 14.1559 8.75766 14.3902C8.52335 14.6245 8.14345 14.6245 7.90913 14.3902L5.91739 12.3985C5.80388 12.2893 5.73324 12.1359 5.73324 11.966C5.73324 11.796 5.80388 11.6426 5.91739 11.5334L7.90913 9.5417Z`}},{tag:`path`,attrs:{fill:`currentColor`,d:`M1.3999 8.3002C1.3999 7.96882 1.66853 7.7002 1.9999 7.7002H2.33324C2.66461 7.7002 2.93324 7.96882 2.93324 8.3002C2.93324 8.63157 2.66461 8.9002 2.33324 8.9002H1.9999C1.66853 8.9002 1.3999 8.63157 1.3999 8.3002Z`}}]},z=(0,u.forwardRef)(function(e,t){return(0,u.createElement)(M,Object.assign({},e,{id:`reduce-digits-icon`,ref:t,icon:fe}))});z.displayName=`ReduceDigitsIcon`;let pe={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M11.9445 1.55649C12.2184 1.744 12.2895 2.11755 12.1033 2.39085L9.24342 6.58659H12.8001C13.1315 6.58659 13.4001 6.85522 13.4001 7.18659C13.4001 7.51796 13.1315 7.78659 12.8001 7.78659H8.5999V9.91276H13.2221C13.5534 9.91276 13.8221 10.1814 13.8221 10.5128C13.8221 10.8441 13.5534 11.1128 13.2221 11.1128H8.5999V14.0877C8.5999 14.4191 8.33127 14.6877 7.9999 14.6877C7.66853 14.6877 7.3999 14.4191 7.3999 14.0877V11.1128H2.77773C2.44636 11.1128 2.17773 10.8441 2.17773 10.5128C2.17773 10.1814 2.44636 9.91276 2.77773 9.91276H7.3999V7.78659H3.2001C2.86873 7.78659 2.6001 7.51796 2.6001 7.18659C2.6001 6.85522 2.86873 6.58659 3.2001 6.58659H6.75736L3.89753 2.39085C3.71125 2.11755 3.78234 1.744 4.05631 1.55649C4.33029 1.36899 4.7034 1.43854 4.88968 1.71184L7.94595 6.19577C7.96752 6.22741 7.98564 6.2604 8.00039 6.29429C8.01514 6.2604 8.03326 6.22741 8.05483 6.19577L11.1111 1.71184C11.2974 1.43854 11.6705 1.36899 11.9445 1.55649Z`}}]},B=(0,u.forwardRef)(function(e,t){return(0,u.createElement)(M,Object.assign({},e,{id:`rmb-icon`,ref:t,icon:pe}))});B.displayName=`RmbIcon`;let me={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,width:`1em`,height:`1em`},children:[{tag:`path`,attrs:{fill:`currentColor`,d:`M9.72502 1.02051H6.07803C4.97346 1.02051 4.07803 1.91594 4.07803 3.02051V7.57046H3.00039C2.66902 7.57046 2.40039 7.83909 2.40039 8.17046C2.40039 8.50183 2.66902 8.77046 3.00039 8.77046H4.07803V10.4854H3.00039C2.66902 10.4854 2.40039 10.754 2.40039 11.0854C2.40039 11.4167 2.66902 11.6854 3.00039 11.6854H4.07803V14.3795C4.07803 14.7108 4.34666 14.9795 4.67803 14.9795C5.0094 14.9795 5.27803 14.7108 5.27803 14.3795V11.6854H10.3637C10.695 11.6854 10.9637 11.4167 10.9637 11.0854C10.9637 10.754 10.695 10.4854 10.3637 10.4854H5.27803V8.77046H9.72503C11.8651 8.77046 13.6 7.03557 13.6 4.89548C13.6 2.75539 11.8651 1.02051 9.72502 1.02051ZM9.72503 7.57046H5.27803V3.12051C5.27803 2.62345 5.68097 2.22051 6.17803 2.22051H9.72502C11.2024 2.22051 12.4 3.41814 12.4 4.89548C12.4 6.37283 11.2024 7.57046 9.72503 7.57046Z`,fillRule:`evenodd`,clipRule:`evenodd`}}]},V=(0,u.forwardRef)(function(e,t){return(0,u.createElement)(M,Object.assign({},e,{id:`rouble-icon`,ref:t,icon:me}))});V.displayName=`RoubleIcon`;let H=(0,u.createContext)([]),U=class{constructor(e){this._localStorageService=e}_getKey(e){return`userHabitController_${e}`}async addHabit(e,t){let n=this._getKey(e);return this._localStorageService.getItem(n).then(e=>{e||this._localStorageService.setItem(n,t)})}markHabit(e,t){let n=this._getKey(e);this._localStorageService.getItem(n).then(e=>{if(e){let r=e.findIndex(e=>e===t);r>-1&&e.splice(r,1),e.unshift(t),this._localStorageService.setItem(n,e)}})}async getHabit(e,t){let n=this._getKey(e),r=await this._localStorageService.getItem(n);if(t&&r){let e=r.map((e,t,n)=>({value:e,priority:n.length-t}));return t.sort((t,n)=>{var r,i;let a=((r=e.find(e=>e.value===t))==null?void 0:r.priority)||-1;return(((i=e.find(e=>e.value===n))==null?void 0:i.priority)||-1)-a})}return r||[]}deleteHabit(e){this._localStorageService.removeItem(e)}};U=y([v(0,(0,r.Inject)(r.ILocalStorageService))],U);let he=e=>!!(0,t.getCurrencyType)(e)&&e.startsWith(`_(`);function ge(e){let{defaultPattern:i,onActionChange:a,onChange:o}=e,[s,c]=(0,u.useState)(()=>(0,t.getDecimalFromPattern)(i||``,2)),f=(0,u.useContext)(H),[p,m]=(0,u.useState)(()=>(0,t.getCurrencyType)(i)||f[0]),h=(0,u.useMemo)(()=>f.map(e=>({label:e,value:e})),[]),g=(0,n.useDependency)(r.LocaleService);return(0,u.useLayoutEffect)(()=>{a(()=>(0,t.setPatternDecimal)(`_("${p}"* #,##0${s>0?`.0`:``}_)`,s))},[s,a,p]),(0,d.jsxs)(`div`,{children:[(0,d.jsxs)(`div`,{className:`univer-mt-4 univer-flex univer-justify-between`,children:[(0,d.jsxs)(`div`,{className:`option`,children:[(0,d.jsx)(`div`,{className:`univer-text-sm univer-text-gray-400`,children:g.t(`sheets-numfmt-ui.decimalLength`)}),(0,d.jsx)(`div`,{className:`univer-mt-2 univer-w-32`,children:(0,d.jsx)(l.InputNumber,{value:s,step:1,precision:0,max:20,min:0,onChange:e=>{let n=e||0;c(n),o((0,t.setPatternDecimal)(`_("${p}"* #,##0${n>0?`.0`:``}_)`,n))}})})]}),(0,d.jsxs)(`div`,{className:`option`,children:[(0,d.jsx)(`div`,{className:`univer-text-sm univer-text-gray-400`,children:g.t(`sheets-numfmt-ui.currencyType`)}),(0,d.jsx)(`div`,{className:`univer-mt-2 univer-w-36`,children:(0,d.jsx)(l.Select,{options:h,value:p,onChange:e=>{m(e),o((0,t.setPatternDecimal)(`_("${e}"* #,##0${s>0?`.0`:``}_)`,s))}})})]})]}),(0,d.jsx)(`div`,{className:`univer-mt-4 univer-text-sm univer-text-gray-400`,children:g.t(`sheets-numfmt-ui.accountingDes`)})]})}let _e=e=>!!(0,t.getCurrencyType)(e)&&!e.startsWith(`_(`);function ve(e){let{onActionChange:i,onChange:a}=e,o=(0,n.useDependency)(r.LocaleService),s=(0,u.useContext)(H),[c,f]=(0,u.useState)(()=>(0,t.getCurrencyType)(e.defaultPattern)||s[0]),[p,m]=(0,u.useState)(()=>(0,t.getDecimalFromPattern)(e.defaultPattern||``,2)),[h,g]=(0,u.useState)(()=>{var n;let i=(0,t.getCurrencyFormatOptions)(c);return((n=i.find(t=>(0,r.isPatternEqualWithoutDecimal)(t.value,e.defaultPattern)))==null?void 0:n.value)||i[0].value}),_=(0,u.useMemo)(()=>(0,t.getCurrencyFormatOptions)(c),[c]),v=(0,u.useMemo)(()=>s.map(e=>({label:e,value:e})),[s]);return(0,u.useLayoutEffect)(()=>{i(()=>(0,t.setPatternDecimal)(h,p))},[p,i,h]),(0,d.jsxs)(`div`,{children:[(0,d.jsxs)(`div`,{className:`univer-mt-4 univer-flex univer-justify-between`,children:[(0,d.jsxs)(`div`,{className:`option`,children:[(0,d.jsx)(`div`,{className:`univer-text-sm univer-text-gray-400`,children:o.t(`sheets-numfmt-ui.decimalLength`)}),(0,d.jsx)(`div`,{className:`univer-mt-2 univer-w-32`,children:(0,d.jsx)(l.InputNumber,{value:p,max:20,min:0,onChange:e=>{m(e||0),a((0,t.setPatternDecimal)(h,e||0))}})})]}),(0,d.jsxs)(`div`,{className:`option`,children:[(0,d.jsx)(`div`,{className:`univer-text-sm univer-text-gray-400`,children:o.t(`sheets-numfmt-ui.currencyType`)}),(0,d.jsx)(`div`,{className:`univer-mt-2 univer-w-36`,children:(0,d.jsx)(l.Select,{value:c,options:v,onChange:e=>{if(e===void 0)return;f(e);let n=(0,t.getCurrencyFormatOptions)(e)[0].value;g(n),a((0,t.setPatternDecimal)(n,p))}})})]})]}),(0,d.jsx)(`div`,{className:`label univer-mt-4`,children:o.t(`sheets-numfmt-ui.negType`)}),(0,d.jsx)(`div`,{className:`univer-mt-2`,children:(0,d.jsx)(l.SelectList,{value:h,options:_,onChange:e=>{e!==void 0&&(g(e),a((0,t.setPatternDecimal)(e,p)))}})}),(0,d.jsx)(`div`,{className:`univer-mt-4 univer-text-sm univer-text-gray-400`,children:o.t(`sheets-numfmt-ui.currencyDes`)})]})}let W=`customFormat`,G=`numfmt_custom_pattern`;function ye(e){let{defaultPattern:i,onActionChange:a,onChange:o}=e,s=(0,n.useDependency)(U),c=(0,n.useDependency)(r.ILocalStorageService),f=(0,n.useDependency)(r.LocaleService),[p,m]=(0,u.useState)(i);(0,u.useLayoutEffect)(()=>{a(()=>(s.markHabit(W,p),c.getItem(G).then((e=[])=>{let t=[...new Set([p,...e||[]])].splice(0,10).filter(e=>!!e);c.setItem(G,t)}),p))},[c,a,p,s]);let[h,g]=(0,u.useState)([]);(0,u.useEffect)(()=>{let e=!1;return c.getItem(G).then(e=>{let n=[...t.CURRENCYFORMAT.map(e=>e.suffix(`$`)),...t.DATEFMTLISG.map(e=>e.suffix),...t.NUMBERFORMAT.map(e=>e.suffix),...e==null?[]:e];return s.addHabit(W,[]).then(()=>s.getHabit(W,n))}).then(t=>{e||g([...new Set(t)])}),()=>{e=!0}},[c,s]);let _=e=>{m(e),o(e)};return(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`div`,{className:`univer-mt-4 univer-text-sm univer-text-gray-400`,children:f.t(`sheets-numfmt-ui.customFormat`)}),(0,d.jsx)(l.Input,{placeholder:f.t(`sheets-numfmt-ui.customFormat`),onBlur:()=>{o(p)},value:p,onChange:m,className:`univer-mt-2 univer-w-full`}),(0,d.jsx)(`div`,{className:(0,l.clsx)(`univer-mt-2 univer-max-h-[400px] univer-overflow-auto univer-rounded-lg univer-p-2`,l.borderClassName),children:h.map(e=>(0,d.jsxs)(`div`,{onClick:()=>_(e),className:`univer-flex univer-cursor-pointer univer-items-center univer-gap-1.5 univer-py-1.5 univer-text-sm`,children:[(0,d.jsx)(`div`,{className:`univer-flex univer-w-4 univer-items-center univer-text-primary-600`,children:p===e&&(0,d.jsx)(F,{})}),(0,d.jsx)(`div`,{children:e})]},e))}),(0,d.jsx)(`div`,{className:`univer-mt-3 univer-text-sm univer-text-gray-600 dark:!univer-text-gray-200`,children:f.t(`sheets-numfmt-ui.customFormatDes`)})]})}let be=e=>{let n=r.numfmt.getFormatInfo(e);return(0,t.getDateFormatOptions)().map(e=>e.value).includes(e)||[`date`,`datetime`,`time`].includes(n.type)};function xe(e){let{onActionChange:i,onChange:a,defaultPattern:o}=e,s=(0,u.useMemo)(t.getDateFormatOptions,[]),c=(0,n.useDependency)(r.LocaleService),[f,p]=(0,u.useState)(()=>{if(o){let e=s.find(e=>e.value===o);if(e)return e.value}return s[0].value});return(0,u.useLayoutEffect)(()=>{i(()=>f)},[i,f]),(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`div`,{className:`univer-mt-4 univer-text-sm univer-text-gray-400`,children:c.t(`sheets-numfmt-ui.dateType`)}),(0,d.jsx)(`div`,{className:`univer-mt-2`,children:(0,d.jsx)(l.SelectList,{value:f,options:s,onChange:e=>{e!==void 0&&(p(e),a(e))}})}),(0,d.jsx)(`div`,{className:`univer-mt-3.5 univer-text-sm/5 univer-text-gray-600 dark:!univer-text-gray-200`,children:c.t(`sheets-numfmt-ui.dateDes`)})]})}let Se=e=>!e;function Ce(e){let t=(0,n.useDependency)(r.LocaleService),{onActionChange:i}=e;return(0,u.useLayoutEffect)(()=>{i(()=>``)},[i]),(0,d.jsx)(`div`,{children:(0,d.jsx)(`div`,{className:`univer-mt-3.5 univer-text-sm/5 univer-text-gray-600 dark:!univer-text-gray-200`,children:t.t(`sheets-numfmt-ui.generalDes`)})})}let we=e=>(0,t.getNumberFormatOptions)().some(t=>(0,r.isPatternEqualWithoutDecimal)(t.value,e));function Te(e){let{onActionChange:i,onChange:a}=e,o=(0,n.useDependency)(r.LocaleService),s=(0,u.useMemo)(t.getNumberFormatOptions,[]),[c,f]=(0,u.useState)(()=>(0,t.getDecimalFromPattern)(e.defaultPattern||``,0)),[p,m]=(0,u.useState)(()=>{let t=s.find(t=>(0,r.isPatternEqualWithoutDecimal)(t.value,e.defaultPattern||``));return(t==null?void 0:t.value)||s[0].value}),h=(0,u.useMemo)(()=>(0,t.setPatternDecimal)(p,Number(c||0)),[p,c]),g=!(0,t.isPatternHasDecimal)(p);return(0,u.useLayoutEffect)(()=>{i(()=>h)},[i,h]),(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`div`,{className:`univer-mt-4 univer-text-sm univer-text-gray-400`,children:o.t(`sheets-numfmt-ui.decimalLength`)}),(0,d.jsx)(`div`,{className:`univer-mt-2`,children:(0,d.jsx)(l.InputNumber,{disabled:g,value:c,max:20,min:0,onChange:e=>{f(e||0),a((0,t.setPatternDecimal)(p,Number(e||0)))}})}),(0,d.jsxs)(`div`,{className:`univer-mt-4 univer-text-sm univer-text-gray-400`,children:[` `,o.t(`sheets-numfmt-ui.negType`)]}),(0,d.jsx)(`div`,{className:`univer-mt-2`,children:(0,d.jsx)(l.SelectList,{onChange:e=>{e!==void 0&&(f((0,t.getDecimalFromPattern)(e,0)),m(e),a(e))},options:s,value:p})}),(0,d.jsx)(`div`,{className:`univer-mt-3.5 univer-text-sm/5 univer-text-gray-600 dark:!univer-text-gray-200`,children:o.t(`sheets-numfmt-ui.thousandthPercentileDes`)})]})}let K=`numfmtCurrency`,Ee=e=>{let t=(0,n.useDependency)(U),[i,a]=(0,u.useState)(r.currencySymbols);return(0,u.useEffect)(()=>{t.addHabit(`numfmtCurrency`,[]).then(()=>{t.getHabit(K,[...r.currencySymbols]).then(t=>{a(t),e&&e(t)})})},[]),{userHabitCurrency:i,mark:e=>{t.markHabit(K,e)}}},De=()=>{let e=(0,u.useRef)([]),[t,n]=(0,u.useState)({});return(0,u.useEffect)(()=>{e.current.forEach(e=>{e()}),e.current=[]},[t]),t=>{e.current.push(t),n({})}};function Oe(e){var i;let{defaultValue:a,defaultPattern:o,row:s,col:c}=e.value,f=(0,n.useDependency)(r.LocaleService),p=(0,u.useRef)(()=>``),m=De(),h=(0,u.useMemo)(()=>[{label:`sheets-numfmt-ui.general`,component:Ce},{label:`sheets-numfmt-ui.accounting`,component:ge},{label:`sheets-numfmt-ui.currency`,component:ve},{label:`sheets-numfmt-ui.date`,component:xe},{label:`sheets-numfmt-ui.thousandthPercentile`,component:Te},{label:`sheets-numfmt-ui.customFormat`,component:ye}].map(e=>({...e,label:f.t(e.label)})),[f]),[g,_]=(0,u.useState)(C),[v,y]=(0,u.useState)(()=>`${s}_${c}_${o}`),{mark:b,userHabitCurrency:x}=Ee(()=>y(`${s}_${c}_${o}_userCurrency`)),S=(i=h.find(e=>e.label===g))==null?void 0:i.component;function C(){return[Se,he,_e,be,we].reduce((e,t,n)=>e||(t(o)?h[n].label:``),``)||h[0].label}let w=h.map(e=>({label:e.label,value:e.label})),T=t=>{_(t),m(()=>e.onChange({type:`change`,value:p.current()||``}))},E=(0,u.useCallback)(t=>{e.onChange({type:`change`,value:t})},[]),D=(0,u.useCallback)(e=>{p.current=e},[]),O=()=>{let n=p.current()||``,r=(0,t.getCurrencyType)(n);r&&b(r),e.onChange({type:`confirm`,value:n})},k=()=>{e.onChange({type:`cancel`,value:``})},A={onChange:E,onActionChange:D,defaultValue:a,defaultPattern:o};return(0,u.useEffect)(()=>{_(C()),y(`${s}_${c}_${o}`)},[s,c,o]),(0,d.jsxs)(`div`,{className:(0,l.clsx)(`univer-flex univer-h-full univer-flex-col univer-justify-between univer-overflow-y-auto univer-pb-5`,l.scrollbarClassName),children:[(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`div`,{className:`univer-mt-3.5 univer-text-sm univer-text-gray-400`,children:f.t(`sheets-numfmt-ui.numfmtType`)}),(0,d.jsx)(`div`,{className:`univer-mt-2`,children:(0,d.jsx)(l.Select,{className:`univer-w-full`,value:g,options:w,onChange:T})}),(0,d.jsx)(`div`,{children:S&&(0,d.jsx)(H.Provider,{value:x,children:(0,u.createElement)(S,{...A,key:v})})})]}),(0,d.jsxs)(`div`,{className:`univer-mb-5 univer-mt-3.5 univer-flex univer-justify-end univer-gap-2 rtl:univer-flex-row-reverse`,children:[(0,d.jsx)(l.Button,{onClick:k,children:f.t(`sheets-numfmt-ui.cancel`)}),(0,d.jsx)(l.Button,{variant:`primary`,onClick:O,children:f.t(`sheets-numfmt-ui.confirm`)})]})]})}let q=class extends r.Disposable{constructor(e,t){super(),this._componentManager=e,this._iconManager=t,this._registerComponents(),this._registerIcons()}_registerIcons(){this.disposeWithMe(this._iconManager.register({AddDigitsIcon:P,DollarIcon:I,EuroIcon:L,PercentIcon:R,ReduceDigitsIcon:z,RmbIcon:B,RoubleIcon:V}))}_registerComponents(){this.disposeWithMe(this._componentManager.register(`SHEET_NUMFMT_PANEL`,Oe)),[[S,w],[C,T]].forEach(([e,t])=>{this.disposeWithMe(this._componentManager.register(e,t))})}};q=y([v(0,(0,r.Inject)(n.ComponentManager)),v(1,(0,r.Inject)(n.IconManager))],q);let J=`SHEET_NUMFMT_ALERT`,Y=class extends r.Disposable{constructor(e,t,n,r,i,a){super(),this._context=e,this._hoverManagerService=t,this._cellAlertManagerService=n,this._localeService=r,this._numfmtService=i,this._configService=a,this._init()}_init(){this._initCellAlertPopup()}_initCellAlertPopup(){this.disposeWithMe(this._hoverManagerService.currentCell$.pipe((0,s.debounceTime)(100)).subscribe(e=>{if(e){let a=e.location,s=this._context.unit,c=s.getActiveSheet();if(!c)return this._hideAlert();let l=a.unitId,u=a.subUnitId,d,f=c.getCell(a.row,a.col);if(f!=null&&f.s){let e=s.getStyles().get(f.s);e!=null&&e.n&&(d=e.n)}if(d||(d=this._numfmtService.getValue(l,u,a.row,a.col)),!d){this._hideAlert();return}if((0,r.isTextFormat)(d.pattern)&&r.Tools.isDefine(f==null?void 0:f.v)&&(0,r.isRealNum)(f.v)){var n,i;if((n=this._configService.getConfig(t.SHEETS_NUMFMT_PLUGIN_CONFIG_KEY))!=null&&n.disableTextFormatAlert)return;let e=this._cellAlertManagerService.currentAlert.get(J),r=e==null||(i=e.alert)==null?void 0:i.location;if(r&&r.row===a.row&&r.col===a.col&&r.subUnitId===a.subUnitId&&r.unitId===a.unitId){this._hideAlert();return}this._cellAlertManagerService.showAlert({type:o.CellAlertType.ERROR,title:this._localeService.t(`sheets-numfmt-ui.info.error`),message:this._localeService.t(`sheets-numfmt-ui.info.forceStringInfo`),location:a,width:200,height:74,key:J});return}}this._hideAlert()}))}_hideAlert(){this._cellAlertManagerService.removeAlert(J)}};Y=y([v(1,(0,r.Inject)(o.HoverManagerService)),v(2,(0,r.Inject)(o.CellAlertManagerService)),v(3,(0,r.Inject)(r.LocaleService)),v(4,(0,r.Inject)(a.INumfmtService)),v(5,r.IConfigService)],Y);let X=class extends r.Disposable{constructor(e){super(),this._repeatLastActionService=e,this._initCommandRecording()}_initCommandRecording(){this._repeatLastActionService&&this.disposeWithMe(this._repeatLastActionService.registerRepeatableCommand(t.SetNumfmtCommand.id,(e,t)=>{if(!t)return;let{values:n}=t,r=n.find(e=>e.pattern);if(!r)return;let{pattern:i,type:a}=r,o=[],s=new Set;for(let t of e){let{startRow:e,startColumn:n,endRow:r,endColumn:c}=t;for(let t=e;t<=r;t++)for(let e=n;e<=c;e++){let n=`${t}-${e}`;s.has(n)||(s.add(n),o.push({row:t,col:e,pattern:i,type:a}))}}return{...t,values:o}},o.RepeatLastActionPermission.CellStyle))}};X=y([v(0,(0,r.Optional)(o.IRepeatLastActionService))],X);let ke=()=>{let e=[];return{add:(t,n,r,i,a)=>e.push({unitId:t,subUnitId:n,row:r,col:i,value:a}),getEffects:()=>e,clean:()=>{e=[]}}},Z=class extends r.Disposable{constructor(e,t,n,r,i){super(),this._sheetInterceptorService=e,this._numfmtService=t,this._univerInstanceService=n,this._injector=r,this._editorBridgeService=i,_(this,`_collectEffectMutation`,ke()),this._initInterceptorEditorStart(),this._initInterceptorEditorEnd(),this._initInterceptorCommands()}_initInterceptorEditorStart(){this._editorBridgeService&&this.disposeWithMe((0,r.toDisposable)(this._sheetInterceptorService.writeCellInterceptor.intercept(a.BEFORE_CELL_EDIT,{handler:(e,n,i)=>{let a=n.row,o=n.col,s=this._numfmtService.getValue(n.unitId,n.subUnitId,a,o);if(s)switch((0,t.getPatternType)(s.pattern)){case`scientific`:case`currency`:case`grouped`:case`number`:{let e={...n.worksheet.getCellRaw(a,o)};return(e==null?void 0:e.t)===r.CellValueType.NUMBER&&(0,r.isRealNum)(e.v)&&(e.v=(0,f.stripErrorMargin)(Number(e.v))),i&&i(e)}case`percent`:{let e={...n.worksheet.getCellRaw(a,o)};return(e==null?void 0:e.t)===r.CellValueType.NUMBER&&(0,r.isRealNum)(e.v)&&(e.v=`${(0,f.stripErrorMargin)(Number(e.v)*100)}%`),i&&i(e)}default:return i&&i(e)}return i(e)}})))}_initInterceptorEditorEnd(){this.disposeWithMe((0,r.toDisposable)(this._sheetInterceptorService.writeCellInterceptor.intercept(a.AFTER_CELL_EDIT,{handler:(e,n,i)=>{var a,o;if(!(e!=null&&e.v)&&!(e!=null&&e.p))return i(e);this._collectEffectMutation.clean();let s=this._numfmtService.getValue(n.unitId,n.subUnitId,n.row,n.col),c=n.worksheet.getCellRaw(n.row,n.col);if((0,r.isTextFormat)(s==null?void 0:s.pattern)||e.t===r.CellValueType.FORCE_STRING)return i(e);let l=(a=e.p)==null?void 0:a.body,u=!(e==null||(o=e.p)==null||(o=o.body)==null)&&o.dataStream?e.p.body.dataStream.replace(/\r\n$/,``):String(e.v),d=(0,r.getNumfmtParseValueFilter)(u);if(l)if(Ae(l)){let{dataStream:t}=l,n=t.replace(/\r\n$/,``),r=Number(n);if(Number.isNaN(r)&&!d)return i(e)}else return i(e);if(d){if(!d.z&&!(s!=null&&s.pattern)&&(c==null?void 0:c.t)!==r.CellValueType.STRING&&(c==null?void 0:c.t)!==r.CellValueType.FORCE_STRING&&(0,r.willLoseNumericPrecision)(u))return i({...e,p:void 0,v:u,t:r.CellValueType.FORCE_STRING});d.z&&(!(s!=null&&s.pattern)||(0,t.getPatternType)(d.z)!==(0,t.getPatternType)(s.pattern))&&this._collectEffectMutation.add(n.unitId,n.subUnitId,n.row,n.col,{pattern:d.z});let a=(0,f.stripErrorMargin)(Number(d.v),16);return i({...e,p:void 0,v:a,t:r.CellValueType.NUMBER})}return i(e)}})))}_initInterceptorCommands(){let e=this;this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations(t){switch(t.id){case a.SetRangeValuesCommand.id:{var n;let t=e._univerInstanceService.getCurrentUnitOfType(r.UniverInstanceType.UNIVER_SHEET),i=t.getUnitId(),o=(n=t.getActiveSheet())==null?void 0:n.getSheetId();if(!o)return{redos:[],undos:[]};let s=e._collectEffectMutation.getEffects();if(e._collectEffectMutation.clean(),!s.length)return{redos:[],undos:[]};let c=s.filter(e=>{var t;return!!((t=e.value)!=null&&t.pattern)}).map(e=>({row:e.row,col:e.col,pattern:e.value.pattern})),l=s.filter(e=>{var t;return!((t=e.value)!=null&&t.pattern)}).map(e=>({startRow:e.row,endColumn:e.col,startColumn:e.col,endRow:e.row})),u=[],d=[];if(c.length){let t={id:a.SetNumfmtMutation.id,params:(0,a.transformCellsToRange)(i,o,c)};u.push(t),d.push(...(0,a.factorySetNumfmtUndoMutation)(e._injector,t.params))}if(l.length){let t={id:a.RemoveNumfmtMutation.id,params:{unitId:i,subUnitId:o,ranges:l}};u.push(t),d.push(...(0,a.factoryRemoveNumfmtUndoMutation)(e._injector,t.params))}return{redos:u,undos:d.reverse()}}}return{redos:[],undos:[]}}}))}dispose(){super.dispose(),this._collectEffectMutation.clean()}};Z=y([v(0,(0,r.Inject)(a.SheetInterceptorService)),v(1,(0,r.Inject)(a.INumfmtService)),v(2,(0,r.Inject)(r.IUniverInstanceService)),v(3,(0,r.Inject)(r.Injector)),v(4,(0,r.Optional)(o.IEditorBridgeService))],Z);function Ae(e){let{textRuns:t=[],paragraphs:n=[],customRanges:r,customBlocks:i=[]}=e,a=[`va`];return!(t.some(e=>!!(e.ts&&Object.keys(e.ts).some(e=>a.includes(e))))||n.some(e=>e.bullet)||n.length>=2||r!=null&&r.length||i.length>0)}let Q=class extends r.Disposable{constructor(e){super(),this._menuManagerService=e,this._initMenu()}_initMenu(){this._menuManagerService.mergeMenu(j)}};Q=y([v(0,n.IMenuManagerService)],Q);let $=class extends r.Plugin{constructor(e=re,t,n,i){super(),this._config=e,this._injector=t,this._configService=n,this._renderManagerService=i;let{menu:a,...o}=(0,r.merge)({},re,this._config);a&&this._configService.setConfig(`menu`,a,{merge:!0}),this._configService.setConfig(`sheets-numfmt-ui.config`,o)}onStarting(){this._injector.add([q]),this._injector.get(q),(0,r.registerDependencies)(this._injector,[[b],[Z],[U],[Q],[X]])}onRendered(){this._registerRenderModules(),(0,r.touchDependencies)(this._injector,[[b],[Z],[Q],[X]])}_registerRenderModules(){[[Y]].forEach(e=>{this.disposeWithMe(this._renderManagerService.registerRenderModule(r.UniverInstanceType.UNIVER_SHEET,e))})}};_($,`pluginName`,`SHEET_NUMFMT_UI_PLUGIN`),_($,`packageName`,te),_($,`version`,ne),_($,`type`,r.UniverInstanceType.UNIVER_SHEET),$=y([(0,r.DependentOn)(o.UniverSheetsUIPlugin,t.UniverSheetsNumfmtPlugin),v(1,(0,r.Inject)(r.Injector)),v(2,r.IConfigService),v(3,i.IRenderManagerService)],$),e.SheetsNumfmtUIMenuSchema=j,Object.defineProperty(e,"UniverSheetsNumfmtUIPlugin",{enumerable:!0,get:function(){return $}})});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@univerjs/sheets-numfmt-ui",
3
- "version": "1.0.0-alpha.3",
3
+ "version": "1.0.0-alpha.4",
4
4
  "private": false,
5
5
  "description": "Number format menus, editors, and previews for Univer Sheets.",
6
6
  "author": "DreamNum Co., Ltd. <developer@univer.ai>",
@@ -58,24 +58,24 @@
58
58
  "rxjs": ">=7.0.0"
59
59
  },
60
60
  "dependencies": {
61
- "@univerjs/icons": "1.20.0",
62
- "@univerjs/core": "1.0.0-alpha.3",
63
- "@univerjs/design": "1.0.0-alpha.3",
64
- "@univerjs/engine-formula": "1.0.0-alpha.3",
65
- "@univerjs/engine-render": "1.0.0-alpha.3",
66
- "@univerjs/sheets": "1.0.0-alpha.3",
67
- "@univerjs/sheets-numfmt": "1.0.0-alpha.3",
68
- "@univerjs/sheets-ui": "1.0.0-alpha.3",
69
- "@univerjs/ui": "1.0.0-alpha.3"
61
+ "@univerjs/icons": "1.29.0",
62
+ "@univerjs/core": "1.0.0-alpha.4",
63
+ "@univerjs/design": "1.0.0-alpha.4",
64
+ "@univerjs/engine-formula": "1.0.0-alpha.4",
65
+ "@univerjs/sheets-numfmt": "1.0.0-alpha.4",
66
+ "@univerjs/engine-render": "1.0.0-alpha.4",
67
+ "@univerjs/sheets-ui": "1.0.0-alpha.4",
68
+ "@univerjs/ui": "1.0.0-alpha.4",
69
+ "@univerjs/sheets": "1.0.0-alpha.4"
70
70
  },
71
71
  "devDependencies": {
72
- "postcss": "^8.5.16",
72
+ "postcss": "^8.5.19",
73
73
  "react": "18.3.1",
74
74
  "rxjs": "^7.8.2",
75
75
  "tailwindcss": "3.4.18",
76
76
  "typescript": "^6.0.3",
77
77
  "vitest": "^4.1.10",
78
- "@univerjs-infra/shared": "1.0.0-alpha.3"
78
+ "@univerjs-infra/shared": "1.0.0-alpha.4"
79
79
  },
80
80
  "scripts": {
81
81
  "test": "vitest run",