chunk-KVSOW4CT.js 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694
  1. import {
  2. F,
  3. Gr,
  4. N,
  5. Q,
  6. T,
  7. V,
  8. Vo,
  9. Wn,
  10. ea,
  11. et,
  12. lh,
  13. lo,
  14. uh,
  15. wt,
  16. zr
  17. } from "./chunk-BW43Z7N3.js";
  18. import {
  19. _f
  20. } from "./chunk-QRYBFJ3R.js";
  21. import {
  22. BehaviorSubject,
  23. DC,
  24. Fe,
  25. K0,
  26. Mf,
  27. OR,
  28. Op,
  29. Ot,
  30. Pt,
  31. Ra,
  32. Vn,
  33. Vr,
  34. _n,
  35. ar,
  36. cn,
  37. dn,
  38. kt,
  39. merge,
  40. ml,
  41. mu,
  42. nt,
  43. of,
  44. ot,
  45. skip,
  46. switchMap,
  47. tr,
  48. ur
  49. } from "./chunk-23V3HWTR.js";
  50. // node_modules/.pnpm/@univerjs+sheets-numfmt@0.5.5_@grpc+grpc-js@1.13.4_react@18.3.1_rxjs@7.8.1/node_modules/@univerjs/sheets-numfmt/lib/es/index.js
  51. var ne = Object.defineProperty;
  52. var re = (e, t, r) => t in e ? ne(e, t, { enumerable: true, configurable: true, writable: true, value: r }) : e[t] = r;
  53. var y = (e, t, r) => re(e, typeof t != "symbol" ? t + "" : t, r);
  54. var J = [
  55. "$",
  56. "£",
  57. "¥",
  58. "¤",
  59. "֏",
  60. "؋",
  61. "৳",
  62. "฿",
  63. // '៛',
  64. "₡",
  65. "₦",
  66. "₩",
  67. "₪",
  68. "₫",
  69. "€",
  70. "₭",
  71. "₮",
  72. "₱",
  73. "₲",
  74. "₴",
  75. "₸",
  76. "₹",
  77. "₺",
  78. "₼",
  79. "₽",
  80. "₾",
  81. "₿"
  82. ];
  83. var Ie = {
  84. US: "$",
  85. // United States Dollar
  86. CA: "C$",
  87. // Canadian Dollar
  88. GB: "£",
  89. // British Pound Sterling
  90. JP: "¥",
  91. // Japanese Yen
  92. IN: "₹",
  93. // Indian Rupee
  94. AU: "A$",
  95. // Australian Dollar
  96. CN: "¥",
  97. // Chinese Yuan
  98. KR: "₩",
  99. // South Korean Won
  100. RU: "₽",
  101. // Russian Ruble
  102. // Euro countries
  103. AT: "€",
  104. BE: "€",
  105. CY: "€",
  106. EE: "€",
  107. FI: "€",
  108. FR: "€",
  109. DE: "€",
  110. GR: "€",
  111. IE: "€",
  112. IT: "€",
  113. LV: "€",
  114. LT: "€",
  115. LU: "€",
  116. MT: "€",
  117. NL: "€",
  118. PT: "€",
  119. SK: "€",
  120. SI: "€",
  121. ES: "€"
  122. // Add more mappings as needed
  123. };
  124. var Te = [
  125. {
  126. label: "1930-08-05",
  127. suffix: "yyyy-MM-dd"
  128. },
  129. {
  130. label: "1930/08/05",
  131. suffix: "yyyy/MM/dd"
  132. },
  133. {
  134. label: "1930年08月05日",
  135. suffix: 'yyyy"年"MM"月"dd"日"'
  136. },
  137. {
  138. label: "08-05",
  139. suffix: "MM-dd"
  140. },
  141. {
  142. label: "8月5日",
  143. suffix: 'M"月"d"日"'
  144. },
  145. {
  146. label: "13:30:30",
  147. suffix: "h:mm:ss"
  148. },
  149. {
  150. label: "13:30",
  151. suffix: "h:mm"
  152. },
  153. {
  154. label: "下午01:30",
  155. suffix: "A/P hh:mm"
  156. },
  157. {
  158. label: "下午1:30",
  159. suffix: "A/P h:mm"
  160. },
  161. {
  162. label: "下午1:30:30",
  163. suffix: "A/P h:mm:ss"
  164. },
  165. {
  166. label: "08-05 下午 01:30",
  167. suffix: "MM-dd A/P hh:mm"
  168. }
  169. ];
  170. var xe = [
  171. {
  172. label: "(1,235)",
  173. suffix: "#,##0_);(#,##0)"
  174. },
  175. {
  176. label: "(1,235) ",
  177. suffix: "#,##0_);[Red](#,##0)",
  178. color: "red"
  179. },
  180. {
  181. label: "1,234.56",
  182. suffix: "#,##0.00_);#,##0.00"
  183. },
  184. {
  185. label: "1,234.56",
  186. suffix: "#,##0.00_);[Red]#,##0.00",
  187. color: "red"
  188. },
  189. {
  190. label: "-1,234.56",
  191. suffix: "#,##0.00_);-#,##0.00"
  192. },
  193. {
  194. label: "-1,234.56",
  195. suffix: "#,##0.00_);[Red]-#,##0.00",
  196. color: "red"
  197. }
  198. ];
  199. var Q2 = [
  200. {
  201. label: (e) => `${e}1,235`,
  202. suffix: (e) => `"${e}"#,##0.00_);"${e}"#,##0.00`
  203. },
  204. {
  205. label: (e) => `${e}1,235`,
  206. suffix: (e) => `"${e}"#,##0.00_);[Red]"${e}"#,##0.00`,
  207. color: "red"
  208. },
  209. {
  210. label: (e) => `(${e}1,235)`,
  211. suffix: (e) => `"${e}"#,##0.00_);("${e}"#,##0.00)`
  212. },
  213. {
  214. label: (e) => `(${e}1,235)`,
  215. suffix: (e) => `"${e}"#,##0.00_);[Red]("${e}"#,##0.00)`,
  216. color: "red"
  217. },
  218. {
  219. label: (e) => `-${e}1,235`,
  220. suffix: (e) => `"${e}"#,##0.00_);-"${e}"#,##0.00`
  221. },
  222. {
  223. label: (e) => `-${e}1,235`,
  224. suffix: (e) => `"${e}"#,##0.00_);[Red]-"${e}"#,##0.00`,
  225. color: "red"
  226. }
  227. ];
  228. var Pe = "SHEET_NUMFMT_PLUGIN";
  229. var x = (e, t = 0) => {
  230. var n;
  231. return e && (n = Op.getInfo(e).maxDecimals) != null ? n : t;
  232. };
  233. var Ze = (e, t) => {
  234. if (e && !t || !e && t)
  235. return false;
  236. const r = (c) => c.reduce(
  237. (l, h) => {
  238. if (l.isEnd)
  239. return l;
  240. const f = h.value || h.num;
  241. return h.type === "point" ? (l.isEnd = true, l) : { ...l, result: l.result + f };
  242. },
  243. { isEnd: false, result: "" }
  244. ).result, n = Op.getInfo(e)._partitions, s = Op.getInfo(t)._partitions, o = r(n[0].tokens), a = r(s[0].tokens), d = r(n[1].tokens), u = r(s[1].tokens);
  245. return o === a && d === u && n[1].color === s[1].color;
  246. };
  247. var z = (e) => new Array(Math.min(Math.max(0, Number(e)), 30)).fill(0).join("");
  248. var P = (e, t) => e.split(";").map((n) => /\.0?/.test(n) ? n.replace(
  249. /\.0*/g,
  250. `${t > 0 ? "." : ""}${z(Number(t || 0))}`
  251. ) : /0([^0]?)|0$/.test(n) ? n.replace(
  252. /0([^0]+)|0$/,
  253. `0${t > 0 ? "." : ""}${z(Number(t || 0))}$1`
  254. ) : n).join(";");
  255. var Je = (e) => /\.0?/.test(e) || /0([^0]?)|0$/.test(e);
  256. var T2 = {
  257. id: "sheet.command.numfmt.set.numfmt",
  258. type: ar.COMMAND,
  259. handler: (e, t) => {
  260. if (!t)
  261. return false;
  262. const r = e.get(Pt), n = e.get(_n), s = e.get(cn), o = N(n, t);
  263. if (!o)
  264. return false;
  265. const { unitId: a, subUnitId: d } = o, u = t.values.filter((i) => !!i.pattern), c = t.values.filter((i) => !i.pattern), l = lo(a, d, u), h = {
  266. unitId: a,
  267. subUnitId: d,
  268. ranges: c.map((i) => ({
  269. startColumn: i.col,
  270. startRow: i.row,
  271. endColumn: i.col,
  272. endRow: i.row
  273. }))
  274. }, f = [], v = [];
  275. if (u.length) {
  276. Object.keys(l.values).forEach((g) => {
  277. const p = l.values[g];
  278. p.ranges = Gr(p.ranges);
  279. }), f.push({
  280. id: Vo.id,
  281. params: l
  282. });
  283. const i = uh(e, l);
  284. v.push(...i);
  285. }
  286. if (c.length) {
  287. h.ranges = Gr(h.ranges), f.push({
  288. id: zr.id,
  289. params: h
  290. });
  291. const i = lh(e, h);
  292. v.push(...i);
  293. }
  294. const m = mu(f, r).result;
  295. return m && s.pushUndoRedo({
  296. unitID: a,
  297. undoMutations: v,
  298. redoMutations: f
  299. }), m;
  300. }
  301. };
  302. var Ue = {
  303. id: "sheet.command.numfmt.add.decimal.command",
  304. type: ar.COMMAND,
  305. handler: async (e) => {
  306. const t = e.get(Pt), r = e.get(F), n = e.get(wt), s = e.get(_n), o = r.getCurrentSelections();
  307. if (!o || !o.length)
  308. return false;
  309. const a = N(s);
  310. if (!a)
  311. return false;
  312. const { unitId: d, subUnitId: u } = a;
  313. let c = 0;
  314. o.forEach((v) => {
  315. tr.foreach(v.range, (m, i) => {
  316. const g = n.getValue(d, u, m, i);
  317. if (!g) {
  318. const S = a.worksheet.getCellRaw(m, i);
  319. if (!c && S && S.t === dn.NUMBER && S.v) {
  320. const _ = /\.(\d*)$/.exec(String(S.v));
  321. if (_) {
  322. const R = _[1].length;
  323. if (!R)
  324. return;
  325. c = Math.max(c, R);
  326. }
  327. }
  328. return;
  329. }
  330. const p = x(g.pattern);
  331. c = p > c ? p : c;
  332. });
  333. });
  334. const l = c + 1, h = P(`0${l > 0 ? ".0" : ""}`, l), f = [];
  335. return o.forEach((v) => {
  336. tr.foreach(v.range, (m, i) => {
  337. const g = n.getValue(d, u, m, i);
  338. if (!g)
  339. f.push({
  340. row: m,
  341. col: i,
  342. pattern: h
  343. });
  344. else {
  345. const p = x(g.pattern), S = P(g.pattern, p + 1);
  346. S !== g.pattern && f.push({
  347. row: m,
  348. col: i,
  349. pattern: S
  350. });
  351. }
  352. });
  353. }), f.length ? await t.executeCommand(T2.id, { values: f }) : false;
  354. }
  355. };
  356. var k = class {
  357. constructor() {
  358. y(this, "_currencySymbol$", new BehaviorSubject("US"));
  359. y(this, "currencySymbol$", this._currencySymbol$.asObservable());
  360. }
  361. /**
  362. * Set the currency symbol by setting the country code.
  363. */
  364. setCurrencySymbolByCountryCode(t) {
  365. this._currencySymbol$.next(t);
  366. }
  367. getCurrencySymbol() {
  368. return this._currencySymbol$.getValue();
  369. }
  370. };
  371. var Oe = {
  372. id: "sheet.command.numfmt.set.currency",
  373. type: ar.COMMAND,
  374. handler: async (e) => {
  375. const t = e.get(Pt), r = e.get(F), n = e.get(k), s = Ie[n.getCurrencySymbol()] || "$", o = r.getCurrentSelections();
  376. if (!o || !o.length)
  377. return false;
  378. const a = [], d = Q2[4].suffix(s);
  379. return o.forEach((c) => {
  380. tr.foreach(c.range, (l, h) => {
  381. a.push({ row: l, col: h, pattern: d, type: "currency" });
  382. });
  383. }), await t.executeCommand(T2.id, { values: a });
  384. }
  385. };
  386. var De = {
  387. id: "sheet.command.numfmt.set.percent",
  388. type: ar.COMMAND,
  389. handler: async (e) => {
  390. const t = e.get(Pt), n = e.get(F).getCurrentSelections();
  391. if (!n || !n.length)
  392. return false;
  393. const s = [], o = "0%";
  394. return n.forEach((d) => {
  395. tr.foreach(d.range, (u, c) => {
  396. s.push({ row: u, col: c, pattern: o, type: "percent" });
  397. });
  398. }), await t.executeCommand(T2.id, { values: s });
  399. }
  400. };
  401. var Ve = {
  402. id: "sheet.command.numfmt.subtract.decimal.command",
  403. type: ar.COMMAND,
  404. handler: async (e) => {
  405. const t = e.get(Pt), r = e.get(F), n = e.get(wt), s = e.get(_n), o = r.getCurrentSelections();
  406. if (!o || !o.length)
  407. return false;
  408. const a = N(s);
  409. if (!a)
  410. return false;
  411. const { unitId: d, subUnitId: u } = a;
  412. let c = 0;
  413. o.forEach((m) => {
  414. tr.foreach(m.range, (i, g) => {
  415. const p = n.getValue(d, u, i, g);
  416. if (!p) {
  417. const _ = a.worksheet.getCellRaw(i, g);
  418. if (!c && _ && _.t === dn.NUMBER && _.v) {
  419. const R = /\.(\d*)$/.exec(String(_.v));
  420. if (R) {
  421. const L = R[1].length;
  422. if (!L)
  423. return;
  424. c = Math.max(c, L);
  425. }
  426. }
  427. return;
  428. }
  429. const S = x(p.pattern);
  430. c = S > c ? S : c;
  431. });
  432. });
  433. const l = c - 1, h = P(`0${l > 0 ? ".0" : "."}`, l), f = [];
  434. return o.forEach((m) => {
  435. tr.foreach(m.range, (i, g) => {
  436. const p = n.getValue(d, u, i, g);
  437. if (!p)
  438. f.push({
  439. row: i,
  440. col: g,
  441. pattern: h
  442. });
  443. else {
  444. const S = x(p.pattern);
  445. f.push({
  446. row: i,
  447. col: g,
  448. pattern: P(p.pattern, S - 1)
  449. });
  450. }
  451. });
  452. }), await t.executeCommand(T2.id, { values: f });
  453. }
  454. };
  455. var Qe = (e) => Op.getInfo(e).type || "unknown";
  456. var Ae = (e, t, r = "en") => {
  457. const s = Op.getInfo(e)._partitions[1], o = Op.format(e, t, { locale: r, throws: false });
  458. return t < 0 ? {
  459. result: o,
  460. color: s.color
  461. } : {
  462. result: o
  463. };
  464. };
  465. var we = (e, t, r) => e === "General" ? {
  466. result: String(_f(t))
  467. // In Excel, the default General format also needs to handle numeric precision.
  468. } : Ae(e, t, r);
  469. var Fe2 = Object.defineProperty;
  470. var je = Object.getOwnPropertyDescriptor;
  471. var Le = (e, t, r, n) => {
  472. for (var s = n > 1 ? void 0 : n ? je(t, r) : t, o = e.length - 1, a; o >= 0; o--)
  473. (a = e[o]) && (s = (n ? a(t, r, s) : a(s)) || s);
  474. return n && s && Fe2(t, r, s), s;
  475. };
  476. var $ = (e, t) => (r, n) => t(r, n, e);
  477. var U = class extends nt {
  478. constructor(t, r, n, s, o, a) {
  479. super();
  480. y(this, "_local$", new BehaviorSubject("en"));
  481. y(this, "local$", this._local$.asObservable());
  482. this._instanceService = t, this._sheetInterceptorService = r, this._themeService = n, this._commandService = s, this._numfmtService = o, this._localeService = a, this._initInterceptorCellContent();
  483. }
  484. get local() {
  485. const t = this._local$.getValue();
  486. if (t)
  487. return t;
  488. switch (this._localeService.getCurrentLocale()) {
  489. case ur.FR_FR:
  490. return "fr";
  491. case ur.RU_RU:
  492. return "ru";
  493. case ur.VI_VN:
  494. return "vi";
  495. case ur.ZH_CN:
  496. return "zh-CN";
  497. case ur.ZH_TW:
  498. return "zh-TW";
  499. case ur.EN_US:
  500. case ur.FA_IR:
  501. default:
  502. return "en";
  503. }
  504. }
  505. // eslint-disable-next-line max-lines-per-function
  506. _initInterceptorCellContent() {
  507. const t = {
  508. tl: {
  509. size: 6,
  510. color: "#409f11"
  511. }
  512. }, r = new kt();
  513. this.disposeWithMe(merge(this._local$, this._localeService.currentLocale$).subscribe(() => {
  514. r.reset();
  515. })), this.disposeWithMe(this._sheetInterceptorService.intercept(et.CELL_CONTENT, {
  516. effect: Vn.Value | Vn.Style,
  517. handler: (n, s, o) => {
  518. const a = s.unitId, d = s.subUnitId;
  519. let u;
  520. const c = n;
  521. if (!c)
  522. return o(n);
  523. if (n != null && n.s) {
  524. const m = s.workbook.getStyles().get(n.s);
  525. m != null && m.n && (u = m.n);
  526. }
  527. if (u || (u = this._numfmtService.getValue(a, d, s.row, s.col)), !u)
  528. return o(n);
  529. if (u.pattern === T && c.v && DC(c.v))
  530. return o({
  531. ...n,
  532. markers: {
  533. ...n == null ? void 0 : n.markers,
  534. ...t
  535. }
  536. });
  537. if (c.t !== dn.NUMBER || c.v == null || Number.isNaN(c.v))
  538. return o(n);
  539. let l = "";
  540. const h = r.getValue(s.row, s.col);
  541. if (h && h.parameters === `${c.v}_${u.pattern}`)
  542. return o({ ...n, ...h.result });
  543. const f = we(u.pattern, Number(c.v), this.local);
  544. if (l = f.result, !l)
  545. return o(n);
  546. const v = { v: l };
  547. if (f.color) {
  548. const m = this._themeService.getCurrentTheme()[`${f.color}500`];
  549. m && (v.interceptorStyle = { cl: { rgb: m } });
  550. }
  551. return r.setValue(s.row, s.col, {
  552. result: v,
  553. parameters: `${c.v}_${u.pattern}`
  554. }), o({ ...n, ...v });
  555. },
  556. priority: ea.NUMFMT
  557. })), this.disposeWithMe(this._commandService.onCommandExecuted((n) => {
  558. if (n.id === Vo.id) {
  559. const s = n.params;
  560. Object.keys(s.values).forEach((o) => {
  561. s.values[o].ranges.forEach((d) => {
  562. tr.foreach(d, (u, c) => {
  563. r.realDeleteValue(u, c);
  564. });
  565. });
  566. });
  567. } else if (n.id === Q.id) {
  568. const s = n.params;
  569. new kt(s.cellValue).forValue((o, a) => {
  570. r.realDeleteValue(o, a);
  571. });
  572. }
  573. })), this.disposeWithMe(
  574. this._instanceService.getCurrentTypeOfUnit$(Fe.UNIVER_SHEET).pipe(
  575. switchMap((n) => {
  576. var s;
  577. return (s = n == null ? void 0 : n.activeSheet$) != null ? s : of(null);
  578. }),
  579. skip(1)
  580. ).subscribe(() => r.reset())
  581. );
  582. }
  583. setNumfmtLocal(t) {
  584. this._local$.next(t);
  585. }
  586. };
  587. U = Le([
  588. $(0, _n),
  589. $(1, ot(V)),
  590. $(2, ot(ml)),
  591. $(3, ot(Pt)),
  592. $(4, ot(wt)),
  593. $(5, ot(Vr))
  594. ], U);
  595. var K = class extends nt {
  596. constructor() {
  597. super(...arguments);
  598. y(this, "_currencySymbol$", new BehaviorSubject("US"));
  599. y(this, "currencySymbol$", this._currencySymbol$.asObservable());
  600. }
  601. /**
  602. * Set the currency symbol by setting the country code.
  603. */
  604. setCurrencySymbolByCountryCode(r) {
  605. this._currencySymbol$.next(r);
  606. }
  607. getCurrencySymbol() {
  608. return this._currencySymbol$.getValue();
  609. }
  610. };
  611. var ee = Object.defineProperty;
  612. var Be = Object.getOwnPropertyDescriptor;
  613. var We = (e, t, r) => t in e ? ee(e, t, { enumerable: true, configurable: true, writable: true, value: r }) : e[t] = r;
  614. var Ge = (e, t, r, n) => {
  615. for (var s = n > 1 ? void 0 : n ? Be(t, r) : t, o = e.length - 1, a; o >= 0; o--)
  616. (a = e[o]) && (s = (n ? a(t, r, s) : a(s)) || s);
  617. return n && s && ee(t, r, s), s;
  618. };
  619. var q = (e, t) => (r, n) => t(r, n, e);
  620. var te = (e, t, r) => We(e, typeof t != "symbol" ? t + "" : t, r);
  621. var O = class extends Ra {
  622. constructor(e = void 0, t, r) {
  623. super(), this._config = e, this._injector = t, this._commandService = r;
  624. }
  625. onStarting() {
  626. K0(this._injector, [
  627. [U],
  628. [k],
  629. [K]
  630. ]), Mf(this._injector, [
  631. [U]
  632. ]);
  633. }
  634. onRendered() {
  635. Mf(this._injector, [
  636. [K]
  637. ]), [
  638. Ue,
  639. Ve,
  640. Oe,
  641. De,
  642. T2
  643. ].forEach((e) => {
  644. this.disposeWithMe(this._commandService.registerCommand(e));
  645. });
  646. }
  647. };
  648. te(O, "pluginName", Pe);
  649. te(O, "type", Fe.UNIVER_SHEET);
  650. O = Ge([
  651. OR(Wn),
  652. q(1, ot(Ot)),
  653. q(2, Pt)
  654. ], O);
  655. var ke = (e) => J.find((r) => e.includes(r));
  656. var et2 = () => J.map((e) => ({ label: e, value: e }));
  657. var tt = (e) => Q2.map((t) => ({
  658. label: t.label(e),
  659. value: t.suffix(e),
  660. color: t.color
  661. }));
  662. var nt2 = () => Te.map((e) => ({ label: e.label, value: e.suffix }));
  663. var rt = () => xe.map((e) => ({ label: e.label, value: e.suffix, color: e.color }));
  664. export {
  665. J,
  666. Ie,
  667. Te,
  668. xe,
  669. Q2 as Q,
  670. x,
  671. Ze,
  672. z,
  673. P,
  674. Je,
  675. T2 as T,
  676. Ue,
  677. k,
  678. Oe,
  679. De,
  680. Ve,
  681. Qe,
  682. Ae,
  683. we,
  684. U,
  685. O,
  686. ke,
  687. et2 as et,
  688. tt,
  689. nt2 as nt,
  690. rt
  691. };
  692. //# sourceMappingURL=chunk-KVSOW4CT.js.map