@univerjs/sheets-numfmt 0.10.4 → 0.10.5

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/index.js CHANGED
@@ -1,10 +1,10 @@
1
1
  var oe = Object.defineProperty;
2
2
  var ae = (e, t, n) => t in e ? oe(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
3
3
  var L = (e, t, n) => ae(e, typeof t != "symbol" ? t + "" : t, n);
4
- import { LocaleType as m, numfmt as x, CommandType as U, ICommandService as E, IUniverInstanceService as A, IUndoRedoService as ce, isTextFormat as X, CellValueType as R, ObjectMatrix as M, sequenceExecute as ie, Range as N, LocaleService as J, Inject as I, ThemeService as le, IConfigService as Q, Disposable as ue, InterceptorEffectEnum as Z, UniverInstanceType as ee, DependentOn as me, Injector as fe, Plugin as de, merge as ge, registerDependencies as he, touchDependencies as pe } from "@univerjs/core";
5
- import { getSheetCommandTarget as W, transformCellsToRange as ve, checkCellValueType as H, rangeMerge as z, SetNumfmtMutation as te, factorySetNumfmtUndoMutation as _e, RemoveNumfmtMutation as Se, SetRangeValuesMutation as B, factoryRemoveNumfmtUndoMutation as Ce, SheetsSelectionsService as j, INumfmtService as K, SheetInterceptorService as ye, INTERCEPTOR_POINT as be, InterceptCellContentPriority as Me, UniverSheetsPlugin as Re } from "@univerjs/sheets";
4
+ import { LocaleType as m, numfmt as N, CommandType as w, ICommandService as I, IUniverInstanceService as A, IUndoRedoService as ce, isTextFormat as X, CellValueType as R, ObjectMatrix as b, sequenceExecute as ie, Range as E, LocaleService as J, Inject as T, ThemeService as le, IConfigService as Q, Disposable as ue, InterceptorEffectEnum as Z, UniverInstanceType as ee, DependentOn as me, Injector as fe, Plugin as de, merge as ge, registerDependencies as he, touchDependencies as pe } from "@univerjs/core";
5
+ import { getSheetCommandTarget as W, transformCellsToRange as _e, checkCellValueType as H, rangeMerge as z, SetNumfmtMutation as te, factorySetNumfmtUndoMutation as Se, RemoveNumfmtMutation as ve, SetRangeValuesMutation as B, factoryRemoveNumfmtUndoMutation as Ce, SheetsSelectionsService as j, INumfmtService as K, SheetInterceptorService as Me, INTERCEPTOR_POINT as ye, InterceptCellContentPriority as be, UniverSheetsPlugin as Re } from "@univerjs/sheets";
6
6
  import { BehaviorSubject as $e, merge as Ne, switchMap as Ee, of as Ie, skip as Te } from "rxjs";
7
- import { stripErrorMargin as Ue } from "@univerjs/engine-formula";
7
+ import { stripErrorMargin as Pe } from "@univerjs/engine-formula";
8
8
  const ne = [
9
9
  "$",
10
10
  "£",
@@ -34,7 +34,7 @@ const ne = [
34
34
  "₾",
35
35
  "₿",
36
36
  "﷼"
37
- ], w = /* @__PURE__ */ new Map([
37
+ ], V = /* @__PURE__ */ new Map([
38
38
  [m.EN_US, "$"],
39
39
  [m.RU_RU, "₽"],
40
40
  [m.VI_VN, "₫"],
@@ -46,26 +46,26 @@ const ne = [
46
46
  [m.ES_ES, "€"],
47
47
  [m.CA_ES, "€"]
48
48
  ]);
49
- function Ve(e) {
49
+ function we(e) {
50
50
  switch (e) {
51
51
  case m.CA_ES:
52
52
  case m.ES_ES:
53
53
  case m.FR_FR:
54
54
  return {
55
55
  icon: "EuroIcon",
56
- symbol: w.get(e) || "€",
56
+ symbol: V.get(e) || "€",
57
57
  locale: e
58
58
  };
59
59
  case m.RU_RU:
60
60
  return {
61
61
  icon: "RoubleIcon",
62
- symbol: w.get(e) || "₽",
62
+ symbol: V.get(e) || "₽",
63
63
  locale: e
64
64
  };
65
65
  case m.ZH_CN:
66
66
  return {
67
67
  icon: "RmbIcon",
68
- symbol: w.get(e) || "¥",
68
+ symbol: V.get(e) || "¥",
69
69
  locale: e
70
70
  };
71
71
  case m.EN_US:
@@ -78,15 +78,15 @@ function Ve(e) {
78
78
  }
79
79
  }
80
80
  function k(e) {
81
- return w.get(e) || "$";
81
+ return V.get(e) || "$";
82
82
  }
83
- function we(e, t = 2) {
83
+ function Ue(e, t = 2) {
84
84
  let n = t;
85
85
  t > 127 && (n = 127);
86
86
  let r = "";
87
87
  return n > 0 && (r = `.${"0".repeat(n)}`), `"${k(e)}"#,##0${r}_);[Red]("${k(e)}"#,##0${r})`;
88
88
  }
89
- const xe = [
89
+ const Ve = [
90
90
  {
91
91
  label: "1930-08-05",
92
92
  suffix: "yyyy-MM-dd"
@@ -131,7 +131,7 @@ const xe = [
131
131
  label: "08-05 下午 01:30",
132
132
  suffix: "MM-dd A/P hh:mm"
133
133
  }
134
- ], Oe = [
134
+ ], xe = [
135
135
  {
136
136
  label: "(1,235)",
137
137
  suffix: "#,##0_);(#,##0)"
@@ -159,7 +159,7 @@ const xe = [
159
159
  suffix: "#,##0.00_);[Red]-#,##0.00",
160
160
  color: "red"
161
161
  }
162
- ], Pe = [
162
+ ], Oe = [
163
163
  {
164
164
  label: (e) => `${e}1,235`,
165
165
  suffix: (e) => `"${e}"#,##0.00_);"${e}"#,##0.00`
@@ -187,25 +187,25 @@ const xe = [
187
187
  suffix: (e) => `"${e}"#,##0.00_);[Red]-"${e}"#,##0.00`,
188
188
  color: "red"
189
189
  }
190
- ], O = (e, t = 0) => {
190
+ ], x = (e, t = 0) => {
191
191
  var r;
192
- return e && (r = x.getFormatInfo(e).maxDecimals) != null ? r : t;
193
- }, Y = (e) => new Array(Math.min(Math.max(0, Number(e)), 30)).fill(0).join(""), P = (e, t) => e.split(";").map((r) => /\.0?/.test(r) ? r.replace(
192
+ return e && (r = N.getFormatInfo(e).maxDecimals) != null ? r : t;
193
+ }, Y = (e) => new Array(Math.min(Math.max(0, Number(e)), 30)).fill(0).join(""), O = (e, t) => e.split(";").map((r) => /\.0?/.test(r) ? r.replace(
194
194
  /\.0*/g,
195
195
  `${t > 0 ? "." : ""}${Y(Number(t || 0))}`
196
196
  ) : /0([^0]?)|0$/.test(r) ? r.replace(
197
197
  /0([^0]+)|0$/,
198
198
  `0${t > 0 ? "." : ""}${Y(Number(t || 0))}$1`
199
- ) : r).join(";"), tt = (e) => /\.0?/.test(e) || /0([^0]?)|0$/.test(e), V = {
199
+ ) : r).join(";"), rt = (e) => /\.0?/.test(e) || /0([^0]?)|0$/.test(e), U = {
200
200
  id: "sheet.command.numfmt.set.numfmt",
201
- type: U.COMMAND,
201
+ type: w.COMMAND,
202
202
  // eslint-disable-next-line max-lines-per-function
203
203
  handler: (e, t) => {
204
204
  if (!t)
205
205
  return !1;
206
- const n = e.get(E), r = e.get(A), s = e.get(ce), o = W(r, t);
206
+ const n = e.get(I), r = e.get(A), s = e.get(ce), o = W(r, t);
207
207
  if (!o) return !1;
208
- const { unitId: c, subUnitId: i, worksheet: d } = o, u = t.values.filter((l) => !!l.pattern), C = t.values.filter((l) => !l.pattern), y = ve(c, i, u), p = {
208
+ const { unitId: c, subUnitId: i, worksheet: d } = o, u = t.values.filter((l) => !!l.pattern), C = t.values.filter((l) => !l.pattern), M = _e(c, i, u), p = {
209
209
  unitId: c,
210
210
  subUnitId: i,
211
211
  ranges: C.map((l) => ({
@@ -214,45 +214,45 @@ const xe = [
214
214
  endColumn: l.col,
215
215
  endRow: l.row
216
216
  }))
217
- }, b = [], v = [];
217
+ }, y = [], _ = [];
218
218
  if (u.length) {
219
219
  const l = u.reduce((g, a) => {
220
220
  X(a.pattern) && g.setValue(a.row, a.col, { t: R.STRING });
221
- const S = d.getCellRaw(a.row, a.col);
222
- if (S) {
223
- const T = H(S.v);
224
- T !== S.t && g.setValue(a.row, a.col, { t: T });
221
+ const v = d.getCellRaw(a.row, a.col);
222
+ if (v) {
223
+ const P = H(v.v);
224
+ P !== v.t && g.setValue(a.row, a.col, { t: P });
225
225
  }
226
226
  return g;
227
- }, new M()).getMatrix(), h = new M();
228
- new M(l).forValue((g, a) => {
229
- const S = d.getCellRaw(g, a);
230
- S ? h.setValue(g, a, { t: S.t }) : h.setValue(g, a, { t: void 0 });
231
- }), Object.keys(y.values).forEach((g) => {
232
- const a = y.values[g];
227
+ }, new b()).getMatrix(), h = new b();
228
+ new b(l).forValue((g, a) => {
229
+ const v = d.getCellRaw(g, a);
230
+ v ? h.setValue(g, a, { t: v.t }) : h.setValue(g, a, { t: void 0 });
231
+ }), Object.keys(M.values).forEach((g) => {
232
+ const a = M.values[g];
233
233
  a.ranges = z(a.ranges);
234
- }), b.push({
234
+ }), y.push({
235
235
  id: te.id,
236
- params: y
236
+ params: M
237
237
  });
238
- const _ = _e(e, y);
239
- v.push(..._);
238
+ const S = Se(e, M);
239
+ _.push(...S);
240
240
  }
241
241
  if (C.length) {
242
242
  p.ranges = z(p.ranges);
243
243
  const l = C.reduce((g, a) => {
244
- const S = d.getCellRaw(a.row, a.col);
245
- if (S) {
246
- const T = H(S.v);
247
- T !== S.t && g.setValue(a.row, a.col, { t: T });
244
+ const v = d.getCellRaw(a.row, a.col);
245
+ if (v) {
246
+ const P = H(v.v);
247
+ P !== v.t && g.setValue(a.row, a.col, { t: P });
248
248
  }
249
249
  return g;
250
- }, new M()).getMatrix(), h = new M();
251
- new M(l).forValue((g, a) => {
252
- const S = d.getCellRaw(g, a);
253
- S ? h.setValue(g, a, { t: S.t }) : h.setValue(g, a, { t: void 0 });
254
- }), b.push({
255
- id: Se.id,
250
+ }, new b()).getMatrix(), h = new b();
251
+ new b(l).forValue((g, a) => {
252
+ const v = d.getCellRaw(g, a);
253
+ v ? h.setValue(g, a, { t: v.t }) : h.setValue(g, a, { t: void 0 });
254
+ }), y.push({
255
+ id: ve.id,
256
256
  params: p
257
257
  }, {
258
258
  id: B.id,
@@ -262,41 +262,41 @@ const xe = [
262
262
  cellValue: l
263
263
  }
264
264
  });
265
- const _ = Ce(e, p);
266
- v.push({
265
+ const S = Ce(e, p);
266
+ _.push({
267
267
  id: B.id,
268
268
  params: {
269
269
  unitId: c,
270
270
  subUnitId: i,
271
271
  cellValue: h.getMatrix()
272
272
  }
273
- }, ..._);
273
+ }, ...S);
274
274
  }
275
- const f = ie(b, n).result;
275
+ const f = ie(y, n).result;
276
276
  return f && s.pushUndoRedo({
277
277
  unitID: c,
278
- undoMutations: v,
279
- redoMutations: b
278
+ undoMutations: _,
279
+ redoMutations: y
280
280
  }), f;
281
281
  }
282
282
  }, De = {
283
283
  id: "sheet.command.numfmt.add.decimal.command",
284
- type: U.COMMAND,
284
+ type: w.COMMAND,
285
285
  handler: async (e) => {
286
- const t = e.get(E), n = e.get(j), r = e.get(K), s = e.get(A), o = n.getCurrentSelections();
286
+ const t = e.get(I), n = e.get(j), r = e.get(K), s = e.get(A), o = n.getCurrentSelections();
287
287
  if (!o || !o.length)
288
288
  return !1;
289
289
  const c = W(s);
290
290
  if (!c) return !1;
291
291
  const { unitId: i, subUnitId: d } = c;
292
292
  let u = 0;
293
- o.forEach((b) => {
294
- N.foreach(b.range, (v, f) => {
295
- const l = r.getValue(i, d, v, f);
293
+ o.forEach((y) => {
294
+ E.foreach(y.range, (_, f) => {
295
+ const l = r.getValue(i, d, _, f);
296
296
  if (!l) {
297
- const _ = c.worksheet.getCellRaw(v, f);
298
- if (!u && _ && _.t === R.NUMBER && _.v) {
299
- const g = /\.(\d*)$/.exec(String(_.v));
297
+ const S = c.worksheet.getCellRaw(_, f);
298
+ if (!u && S && S.t === R.NUMBER && S.v) {
299
+ const g = /\.(\d*)$/.exec(String(S.v));
300
300
  if (g) {
301
301
  const a = g[1].length;
302
302
  if (!a)
@@ -306,113 +306,113 @@ const xe = [
306
306
  }
307
307
  return;
308
308
  }
309
- const h = O(l.pattern);
309
+ const h = x(l.pattern);
310
310
  u = h > u ? h : u;
311
311
  });
312
312
  });
313
- const C = u + 1, y = P(`0${C > 0 ? ".0" : ""}`, C), p = [];
314
- return o.forEach((b) => {
315
- N.foreach(b.range, (v, f) => {
316
- const l = r.getValue(i, d, v, f);
313
+ const C = u + 1, M = O(`0${C > 0 ? ".0" : ""}`, C), p = [];
314
+ return o.forEach((y) => {
315
+ E.foreach(y.range, (_, f) => {
316
+ const l = r.getValue(i, d, _, f);
317
317
  if (!l)
318
318
  p.push({
319
- row: v,
319
+ row: _,
320
320
  col: f,
321
- pattern: y
321
+ pattern: M
322
322
  });
323
323
  else {
324
- const h = O(l.pattern), _ = P(l.pattern, h + 1);
325
- _ !== l.pattern && p.push({
326
- row: v,
324
+ const h = x(l.pattern), S = O(l.pattern, h + 1);
325
+ S !== l.pattern && p.push({
326
+ row: _,
327
327
  col: f,
328
- pattern: _
328
+ pattern: S
329
329
  });
330
330
  }
331
331
  });
332
- }), p.length ? await t.executeCommand(V.id, { values: p }) : !1;
332
+ }), p.length ? await t.executeCommand(U.id, { values: p }) : !1;
333
333
  }
334
334
  }, Fe = {
335
335
  id: "sheet.command.numfmt.set.currency",
336
- type: U.COMMAND,
336
+ type: w.COMMAND,
337
337
  handler: async (e) => {
338
- const t = e.get(E), n = e.get(j), r = e.get(J), s = n.getCurrentSelections();
338
+ const t = e.get(I), n = e.get(j), r = e.get(J), s = n.getCurrentSelections();
339
339
  if (!s || !s.length)
340
340
  return !1;
341
- const o = [], c = Ve(r.getCurrentLocale()), i = we(c.locale);
341
+ const o = [], c = we(r.getCurrentLocale()), i = Ue(c.locale);
342
342
  return s.forEach((u) => {
343
- N.foreach(u.range, (C, y) => {
344
- o.push({ row: C, col: y, pattern: i, type: "currency" });
343
+ E.foreach(u.range, (C, M) => {
344
+ o.push({ row: C, col: M, pattern: i, type: "currency" });
345
345
  });
346
- }), await t.executeCommand(V.id, { values: o });
346
+ }), await t.executeCommand(U.id, { values: o });
347
347
  }
348
348
  }, Ae = {
349
349
  id: "sheet.command.numfmt.set.percent",
350
- type: U.COMMAND,
350
+ type: w.COMMAND,
351
351
  handler: async (e) => {
352
- const t = e.get(E), r = e.get(j).getCurrentSelections();
352
+ const t = e.get(I), r = e.get(j).getCurrentSelections();
353
353
  if (!r || !r.length)
354
354
  return !1;
355
355
  const s = [], o = "0%";
356
356
  return r.forEach((i) => {
357
- N.foreach(i.range, (d, u) => {
357
+ E.foreach(i.range, (d, u) => {
358
358
  s.push({ row: d, col: u, pattern: o, type: "percent" });
359
359
  });
360
- }), await t.executeCommand(V.id, { values: s });
360
+ }), await t.executeCommand(U.id, { values: s });
361
361
  }
362
362
  }, je = {
363
363
  id: "sheet.command.numfmt.subtract.decimal.command",
364
- type: U.COMMAND,
364
+ type: w.COMMAND,
365
365
  handler: async (e) => {
366
- const t = e.get(E), n = e.get(j), r = e.get(K), s = e.get(A), o = n.getCurrentSelections();
366
+ const t = e.get(I), n = e.get(j), r = e.get(K), s = e.get(A), o = n.getCurrentSelections();
367
367
  if (!o || !o.length)
368
368
  return !1;
369
369
  const c = W(s);
370
370
  if (!c) return !1;
371
371
  const { unitId: i, subUnitId: d } = c;
372
372
  let u = 0;
373
- o.forEach((v) => {
374
- N.foreach(v.range, (f, l) => {
373
+ o.forEach((_) => {
374
+ E.foreach(_.range, (f, l) => {
375
375
  const h = r.getValue(i, d, f, l);
376
376
  if (!h) {
377
377
  const g = c.worksheet.getCellRaw(f, l);
378
378
  if (!u && g && g.t === R.NUMBER && g.v) {
379
379
  const a = /\.(\d*)$/.exec(String(g.v));
380
380
  if (a) {
381
- const S = a[1].length;
382
- if (!S)
381
+ const v = a[1].length;
382
+ if (!v)
383
383
  return;
384
- u = Math.max(u, S);
384
+ u = Math.max(u, v);
385
385
  }
386
386
  }
387
387
  return;
388
388
  }
389
- const _ = O(h.pattern);
390
- u = _ > u ? _ : u;
389
+ const S = x(h.pattern);
390
+ u = S > u ? S : u;
391
391
  });
392
392
  });
393
- const C = u - 1, y = P(`0${C > 0 ? ".0" : "."}`, C), p = [];
394
- return o.forEach((v) => {
395
- N.foreach(v.range, (f, l) => {
393
+ const C = u - 1, M = O(`0${C > 0 ? ".0" : "."}`, C), p = [];
394
+ return o.forEach((_) => {
395
+ E.foreach(_.range, (f, l) => {
396
396
  const h = r.getValue(i, d, f, l);
397
397
  if (!h)
398
398
  p.push({
399
399
  row: f,
400
400
  col: l,
401
- pattern: y
401
+ pattern: M
402
402
  });
403
403
  else {
404
- const _ = O(h.pattern);
404
+ const S = x(h.pattern);
405
405
  p.push({
406
406
  row: f,
407
407
  col: l,
408
- pattern: P(h.pattern, _ - 1)
408
+ pattern: O(h.pattern, S - 1)
409
409
  });
410
410
  }
411
411
  });
412
- }), await t.executeCommand(V.id, { values: p });
412
+ }), await t.executeCommand(U.id, { values: p });
413
413
  }
414
- }, re = "sheets-numfmt.config", q = {}, nt = (e) => x.getFormatInfo(e).type || "unknown", Le = (e, t, n = "en") => {
415
- const r = x.formatColor(e, t), s = r ? String(r) : void 0, o = x.format(e, t, { locale: n, throws: !1 });
414
+ }, re = "sheets-numfmt.config", q = {}, st = (e) => N.getFormatInfo(e).type || "unknown", Le = (e, t, n = "en") => {
415
+ const r = N.formatColor(e, t), s = r ? String(r) : void 0, o = N.format(e, t, { locale: n, throws: !1 });
416
416
  return t < 0 ? {
417
417
  result: o,
418
418
  color: s
@@ -420,15 +420,21 @@ const xe = [
420
420
  result: o
421
421
  };
422
422
  }, Ge = (e, t, n) => e === "General" ? {
423
- result: String(Ue(t))
423
+ result: String(Pe(t))
424
424
  // In Excel, the default General format also needs to handle numeric precision.
425
- } : Le(e, t, n);
426
- var He = Object.getOwnPropertyDescriptor, Be = (e, t, n, r) => {
427
- for (var s = r > 1 ? void 0 : r ? He(t, n) : t, o = e.length - 1, c; o >= 0; o--)
425
+ } : Le(e, t, n), He = /* @__PURE__ */ new Set(["m d"]), Be = /* @__PURE__ */ new Set(["h:mm AM/PM", "hh:mm AM/PM"]), ot = (e) => {
426
+ var r, s;
427
+ const t = (s = (r = N.parseDate(e)) != null ? r : N.parseTime(e)) != null ? s : N.parseNumber(e);
428
+ if (!t) return null;
429
+ const { z: n } = t;
430
+ return n && (He.has(n) || Be.has(n) && !/\s(A|AM|P|PM)$/i.test(e)) ? null : t;
431
+ };
432
+ var We = Object.getOwnPropertyDescriptor, Ke = (e, t, n, r) => {
433
+ for (var s = r > 1 ? void 0 : r ? We(t, n) : t, o = e.length - 1, c; o >= 0; o--)
428
434
  (c = e[o]) && (s = c(s) || s);
429
435
  return s;
430
436
  }, $ = (e, t) => (n, r) => t(n, r, e);
431
- const We = {
437
+ const Ze = {
432
438
  tl: {
433
439
  size: 6,
434
440
  color: "#409f11"
@@ -469,14 +475,14 @@ let D = class extends ue {
469
475
  }
470
476
  // eslint-disable-next-line max-lines-per-function
471
477
  _initInterceptorCellContent() {
472
- const t = new M();
478
+ const t = new b();
473
479
  this.disposeWithMe(Ne(this._locale$, this._localeService.currentLocale$).subscribe(() => {
474
480
  t.reset();
475
- })), this.disposeWithMe(this._sheetInterceptorService.intercept(be.CELL_CONTENT, {
481
+ })), this.disposeWithMe(this._sheetInterceptorService.intercept(ye.CELL_CONTENT, {
476
482
  effect: Z.Value | Z.Style,
477
483
  // eslint-disable-next-line complexity
478
484
  handler: (n, r, s) => {
479
- var b, v;
485
+ var y, _;
480
486
  const o = r.unitId, c = r.subUnitId;
481
487
  let i;
482
488
  const d = n;
@@ -489,17 +495,17 @@ let D = class extends ue {
489
495
  if (i || (i = this._numfmtService.getValue(o, c, r.row, r.col)), !i || i.pattern === "General" || d.t !== R.NUMBER && H(d.v) !== R.NUMBER)
490
496
  return s(n);
491
497
  if ((!n || n === r.rawData) && (n = { ...r.rawData }), X(i.pattern))
492
- return (b = this._configService.getConfig(re)) != null && b.disableTextFormatMark ? (n.t = R.STRING, s(n)) : (n.t = R.STRING, n.markers = { ...n == null ? void 0 : n.markers, ...We }, s(n));
498
+ return (y = this._configService.getConfig(re)) != null && y.disableTextFormatMark ? (n.t = R.STRING, s(n)) : (n.t = R.STRING, n.markers = { ...n == null ? void 0 : n.markers, ...Ze }, s(n));
493
499
  let u = "";
494
500
  const C = t.getValue(r.row, r.col);
495
501
  if (C && C.parameters === `${d.v}_${i.pattern}`)
496
502
  return s({ ...n, ...C.result });
497
- const y = Ge(i.pattern, Number(d.v), this.locale);
498
- if (u = y.result, !u)
503
+ const M = Ge(i.pattern, Number(d.v), this.locale);
504
+ if (u = M.result, !u)
499
505
  return s(n);
500
506
  const p = { v: u, t: R.NUMBER };
501
- if (y.color) {
502
- const f = (v = this._themeService.getColorFromTheme(`${y.color}.500`)) != null ? v : y.color;
507
+ if (M.color) {
508
+ const f = (_ = this._themeService.getColorFromTheme(`${M.color}.500`)) != null ? _ : M.color;
503
509
  f && (p.interceptorStyle = { cl: { rgb: f } });
504
510
  }
505
511
  return t.setValue(r.row, r.col, {
@@ -507,20 +513,20 @@ let D = class extends ue {
507
513
  parameters: `${d.v}_${i.pattern}`
508
514
  }), Object.assign(n, p), s(n);
509
515
  },
510
- priority: Me.NUMFMT
516
+ priority: be.NUMFMT
511
517
  })), this.disposeWithMe(this._commandService.onCommandExecuted((n) => {
512
518
  if (n.id === te.id) {
513
519
  const r = n.params;
514
520
  Object.keys(r.values).forEach((s) => {
515
521
  r.values[s].ranges.forEach((c) => {
516
- N.foreach(c, (i, d) => {
522
+ E.foreach(c, (i, d) => {
517
523
  t.realDeleteValue(i, d);
518
524
  });
519
525
  });
520
526
  });
521
527
  } else if (n.id === B.id) {
522
528
  const r = n.params;
523
- new M(r.cellValue).forValue((s, o) => {
529
+ new b(r.cellValue).forValue((s, o) => {
524
530
  t.realDeleteValue(s, o);
525
531
  });
526
532
  }
@@ -538,21 +544,21 @@ let D = class extends ue {
538
544
  this._locale$.next(t);
539
545
  }
540
546
  };
541
- D = Be([
547
+ D = Ke([
542
548
  $(0, A),
543
- $(1, I(ye)),
544
- $(2, I(le)),
545
- $(3, I(E)),
546
- $(4, I(K)),
547
- $(5, I(J)),
549
+ $(1, T(Me)),
550
+ $(2, T(le)),
551
+ $(3, T(I)),
552
+ $(4, T(K)),
553
+ $(5, T(J)),
548
554
  $(6, Q)
549
555
  ], D);
550
- const Ke = "SHEET_NUMFMT_PLUGIN";
551
- var Ze = Object.defineProperty, ze = Object.getOwnPropertyDescriptor, ke = (e, t, n) => t in e ? Ze(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n, Ye = (e, t, n, r) => {
552
- for (var s = r > 1 ? void 0 : r ? ze(t, n) : t, o = e.length - 1, c; o >= 0; o--)
556
+ const ze = "SHEET_NUMFMT_PLUGIN";
557
+ var ke = Object.defineProperty, Ye = Object.getOwnPropertyDescriptor, qe = (e, t, n) => t in e ? ke(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n, Xe = (e, t, n, r) => {
558
+ for (var s = r > 1 ? void 0 : r ? Ye(t, n) : t, o = e.length - 1, c; o >= 0; o--)
553
559
  (c = e[o]) && (s = c(s) || s);
554
560
  return s;
555
- }, G = (e, t) => (n, r) => t(n, r, e), se = (e, t, n) => ke(e, typeof t != "symbol" ? t + "" : t, n);
561
+ }, G = (e, t) => (n, r) => t(n, r, e), se = (e, t, n) => qe(e, typeof t != "symbol" ? t + "" : t, n);
556
562
  let F = class extends de {
557
563
  constructor(e = q, t, n, r) {
558
564
  super(), this._config = e, this._injector = t, this._configService = n, this._commandService = r;
@@ -576,52 +582,53 @@ let F = class extends de {
576
582
  je,
577
583
  Fe,
578
584
  Ae,
579
- V
585
+ U
580
586
  ].forEach((e) => {
581
587
  this.disposeWithMe(this._commandService.registerCommand(e));
582
588
  });
583
589
  }
584
590
  };
585
- se(F, "pluginName", Ke);
591
+ se(F, "pluginName", ze);
586
592
  se(F, "type", ee.UNIVER_SHEET);
587
- F = Ye([
593
+ F = Xe([
588
594
  me(Re),
589
- G(1, I(fe)),
595
+ G(1, T(fe)),
590
596
  G(2, Q),
591
- G(3, E)
597
+ G(3, I)
592
598
  ], F);
593
- const rt = (e) => ne.find((n) => e.includes(n)), st = () => ne.map((e) => ({ label: e, value: e })), ot = (e) => Pe.map((t) => ({
599
+ const at = (e) => ne.find((n) => e.includes(n)), ct = () => ne.map((e) => ({ label: e, value: e })), it = (e) => Oe.map((t) => ({
594
600
  label: t.label(e),
595
601
  value: t.suffix(e),
596
602
  color: t.color
597
- })), at = () => xe.map((e) => ({ label: e.label, value: e.suffix })), ct = () => Oe.map((e) => ({ label: e.label, value: e.suffix, color: e.color }));
603
+ })), lt = () => Ve.map((e) => ({ label: e.label, value: e.suffix })), ut = () => xe.map((e) => ({ label: e.label, value: e.suffix, color: e.color }));
598
604
  export {
599
605
  De as AddDecimalCommand,
600
- Pe as CURRENCYFORMAT,
601
- xe as DATEFMTLISG,
602
- Oe as NUMBERFORMAT,
606
+ Oe as CURRENCYFORMAT,
607
+ Ve as DATEFMTLISG,
608
+ xe as NUMBERFORMAT,
603
609
  re as SHEETS_NUMFMT_PLUGIN_CONFIG_KEY,
604
610
  Fe as SetCurrencyCommand,
605
- V as SetNumfmtCommand,
611
+ U as SetNumfmtCommand,
606
612
  Ae as SetPercentCommand,
607
613
  D as SheetsNumfmtCellContentController,
608
614
  je as SubtractDecimalCommand,
609
615
  F as UniverSheetsNumfmtPlugin,
610
616
  ne as currencySymbols,
611
- we as getCurrencyFormat,
612
- ot as getCurrencyFormatOptions,
613
- st as getCurrencyOptions,
617
+ Ue as getCurrencyFormat,
618
+ it as getCurrencyFormatOptions,
619
+ ct as getCurrencyOptions,
614
620
  k as getCurrencySymbolByLocale,
615
- Ve as getCurrencySymbolIconByLocale,
616
- rt as getCurrencyType,
617
- at as getDateFormatOptions,
618
- O as getDecimalFromPattern,
621
+ we as getCurrencySymbolIconByLocale,
622
+ at as getCurrencyType,
623
+ lt as getDateFormatOptions,
624
+ x as getDecimalFromPattern,
619
625
  Y as getDecimalString,
620
- ct as getNumberFormatOptions,
626
+ ut as getNumberFormatOptions,
627
+ ot as getNumfmtParseValueFilter,
621
628
  Le as getPatternPreview,
622
629
  Ge as getPatternPreviewIgnoreGeneral,
623
- nt as getPatternType,
624
- tt as isPatternHasDecimal,
625
- w as localeCurrencySymbolMap,
626
- P as setPatternDecimal
630
+ st as getPatternType,
631
+ rt as isPatternHasDecimal,
632
+ V as localeCurrencySymbolMap,
633
+ O as setPatternDecimal
627
634
  };
@@ -27,4 +27,4 @@ export { UniverSheetsNumfmtPlugin } from './plugin';
27
27
  export { getCurrencyType } from './utils/currency';
28
28
  export { getDecimalFromPattern, getDecimalString, isPatternHasDecimal, setPatternDecimal } from './utils/decimal';
29
29
  export { getCurrencyFormatOptions, getCurrencyOptions, getDateFormatOptions, getNumberFormatOptions } from './utils/options';
30
- export { getPatternPreview, getPatternPreviewIgnoreGeneral, getPatternType } from './utils/pattern';
30
+ export { getNumfmtParseValueFilter, getPatternPreview, getPatternPreviewIgnoreGeneral, getPatternType } from './utils/pattern';
@@ -1,4 +1,4 @@
1
- import { INumfmtLocaleTag } from '@univerjs/core';
1
+ import { INumfmtLocaleTag, numfmt } from '@univerjs/core';
2
2
  import { FormatType } from '@univerjs/sheets';
3
3
  export declare const getPatternType: (pattern: string) => FormatType;
4
4
  interface IPatternPreview {
@@ -7,4 +7,8 @@ interface IPatternPreview {
7
7
  }
8
8
  export declare const getPatternPreview: (pattern: string, value: number, locale?: INumfmtLocaleTag) => IPatternPreview;
9
9
  export declare const getPatternPreviewIgnoreGeneral: (pattern: string, value: number, locale?: INumfmtLocaleTag) => IPatternPreview;
10
+ /**
11
+ * Get the numfmt parse value, and filter out the parse error.
12
+ */
13
+ export declare const getNumfmtParseValueFilter: (value: string) => numfmt.ParseData | null;
10
14
  export {};
package/lib/umd/facade.js CHANGED
@@ -1 +1 @@
1
- (function(s,o){typeof exports=="object"&&typeof module<"u"?o(require("@univerjs/sheets-numfmt"),require("@univerjs/sheets/facade")):typeof define=="function"&&define.amd?define(["@univerjs/sheets-numfmt","@univerjs/sheets/facade"],o):(s=typeof globalThis<"u"?globalThis:s||self,o(s.UniverSheetsNumfmt,s.UniverSheetsFacade))})(this,function(s,o){"use strict";class u extends o.FRange{setNumberFormat(n){const e=[];return this.forEach((t,r)=>e.push({row:t,col:r,pattern:n})),this._commandService.syncExecuteCommand(s.SetNumfmtCommand.id,{unitId:this._workbook.getUnitId(),subUnitId:this._worksheet.getSheetId(),values:e}),this}setNumberFormats(n){const e=[];return this.forEach((t,r)=>{var m;const i=(m=n[t])==null?void 0:m[r];e.push({row:t,col:r,pattern:i})}),this._commandService.syncExecuteCommand(s.SetNumfmtCommand.id,{unitId:this._workbook.getUnitId(),subUnitId:this._worksheet.getSheetId(),values:e}),this}getNumberFormat(){var e,t;const n=this.getCellStyle();return(t=(e=n==null?void 0:n.numberFormat)==null?void 0:e.pattern)!=null?t:""}getNumberFormats(){return this.getCellStyles().map(e=>e.map(t=>{var r,i;return(i=(r=t==null?void 0:t.numberFormat)==null?void 0:r.pattern)!=null?i:""}))}}o.FRange.extend(u);class h extends o.FWorkbook{setNumfmtLocal(n){return this._injector.get(s.SheetsNumfmtCellContentController).setNumfmtLocal(n),this}}o.FWorkbook.extend(h)});
1
+ (function(s,o){typeof exports=="object"&&typeof module<"u"?o(require("@univerjs/sheets-numfmt"),require("@univerjs/sheets/facade")):typeof define=="function"&&define.amd?define(["@univerjs/sheets-numfmt","@univerjs/sheets/facade"],o):(s=typeof globalThis<"u"?globalThis:s||self,o(s.UniverSheetsNumfmt,s.UniverSheetsFacade))})(this,(function(s,o){"use strict";class u extends o.FRange{setNumberFormat(n){const e=[];return this.forEach((t,r)=>e.push({row:t,col:r,pattern:n})),this._commandService.syncExecuteCommand(s.SetNumfmtCommand.id,{unitId:this._workbook.getUnitId(),subUnitId:this._worksheet.getSheetId(),values:e}),this}setNumberFormats(n){const e=[];return this.forEach((t,r)=>{var m;const i=(m=n[t])==null?void 0:m[r];e.push({row:t,col:r,pattern:i})}),this._commandService.syncExecuteCommand(s.SetNumfmtCommand.id,{unitId:this._workbook.getUnitId(),subUnitId:this._worksheet.getSheetId(),values:e}),this}getNumberFormat(){var e,t;const n=this.getCellStyle();return(t=(e=n==null?void 0:n.numberFormat)==null?void 0:e.pattern)!=null?t:""}getNumberFormats(){return this.getCellStyles().map(e=>e.map(t=>{var r,i;return(i=(r=t==null?void 0:t.numberFormat)==null?void 0:r.pattern)!=null?i:""}))}}o.FRange.extend(u);class h extends o.FWorkbook{setNumfmtLocal(n){return this._injector.get(s.SheetsNumfmtCellContentController).setNumfmtLocal(n),this}}o.FWorkbook.extend(h)}));