@owp/core 2.2.1 → 2.2.3

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.
Files changed (73) hide show
  1. package/dist/_virtual/index10.js +2 -2
  2. package/dist/_virtual/index12.js +2 -2
  3. package/dist/_virtual/index13.js +2 -2
  4. package/dist/_virtual/index14.js +2 -2
  5. package/dist/components/OwpMrtTable/OwpMrtTable.js +223 -196
  6. package/dist/components/OwpMrtTable/OwpMrtTable.js.map +1 -1
  7. package/dist/components/OwpMrtTable/OwpMrtTableNoDataOverlay.js +53 -0
  8. package/dist/components/OwpMrtTable/OwpMrtTableNoDataOverlay.js.map +1 -0
  9. package/dist/components/OwpSection/OwpSection.js +35 -35
  10. package/dist/components/OwpSection/OwpSection.js.map +1 -1
  11. package/dist/components/OwpTreeGrid/OwpTreeGrid.js +291 -192
  12. package/dist/components/OwpTreeGrid/OwpTreeGrid.js.map +1 -1
  13. package/dist/components/OwpTreeGrid/hooks/useOwpTreeGridOverlayFrame.js +48 -46
  14. package/dist/components/OwpTreeGrid/hooks/useOwpTreeGridOverlayFrame.js.map +1 -1
  15. package/dist/components/OwpTreeGrid/perf.js +31 -0
  16. package/dist/components/OwpTreeGrid/perf.js.map +1 -0
  17. package/dist/components/OwpTreeGridResetChangesButton/OwpTreeGridResetChangesButton.js +34 -0
  18. package/dist/components/OwpTreeGridResetChangesButton/OwpTreeGridResetChangesButton.js.map +1 -0
  19. package/dist/index.js +25 -23
  20. package/dist/index.js.map +1 -1
  21. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE128/index.js +1 -1
  22. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE39/index.js +1 -1
  23. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE93/index.js +1 -1
  24. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/EAN_UPC/constants.js +1 -1
  25. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/EAN_UPC/index.js +1 -1
  26. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/GenericBarcode/index.js +1 -1
  27. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/ITF/constants.js +1 -1
  28. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/ITF/index.js +1 -1
  29. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/MSI/index.js +1 -1
  30. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/codabar/index.js +1 -1
  31. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/pharmacode/index.js +1 -1
  32. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/renderers/index.js +1 -1
  33. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.js +1 -1
  34. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.js +1 -1
  35. package/dist/types/components/OwpMrtTable/OwpMrtTable.d.ts +2 -0
  36. package/dist/types/components/OwpMrtTable/OwpMrtTableNoDataOverlay.d.ts +14 -0
  37. package/dist/types/components/OwpTreeGrid/hooks/useOwpTreeGridOverlayFrame.d.ts +2 -1
  38. package/dist/types/components/OwpTreeGrid/perf.d.ts +30 -0
  39. package/dist/types/components/OwpTreeGridResetChangesButton/OwpTreeGridResetChangesButton.d.ts +13 -0
  40. package/dist/types/components/OwpTreeGridResetChangesButton/index.d.ts +1 -0
  41. package/dist/types/index.d.ts +1 -0
  42. package/dist/types/utils/index.d.ts +1 -0
  43. package/dist/types/utils/preloadOnIdle.d.ts +7 -0
  44. package/dist/types/utils/treeGridBodyRowsEvent.d.ts +9 -0
  45. package/dist/utils/exceljsBrowser.js +6 -6
  46. package/dist/utils/exceljsBrowser.js.map +1 -1
  47. package/dist/utils/jszipBrowser.js +6 -6
  48. package/dist/utils/jszipBrowser.js.map +1 -1
  49. package/dist/utils/preloadOnIdle.js +27 -0
  50. package/dist/utils/preloadOnIdle.js.map +1 -0
  51. package/dist/utils/treeGridBodyRowsEvent.js +14 -0
  52. package/dist/utils/treeGridBodyRowsEvent.js.map +1 -0
  53. package/dist/utils/treeGridExportExcelUtil.js +306 -268
  54. package/dist/utils/treeGridExportExcelUtil.js.map +1 -1
  55. package/dist/utils/treeGridUtil.js +79 -72
  56. package/dist/utils/treeGridUtil.js.map +1 -1
  57. package/dist/utils.js +64 -62
  58. package/dist/utils.js.map +1 -1
  59. package/package.json +1 -1
  60. package/dist/_virtual/_commonjs-dynamic-modules.js +0 -10
  61. package/dist/_virtual/_commonjs-dynamic-modules.js.map +0 -1
  62. package/dist/_virtual/exceljs.min.js +0 -31
  63. package/dist/_virtual/exceljs.min.js.map +0 -1
  64. package/dist/_virtual/exceljs.min2.js +0 -5
  65. package/dist/_virtual/exceljs.min2.js.map +0 -1
  66. package/dist/_virtual/jszip.min.js +0 -31
  67. package/dist/_virtual/jszip.min.js.map +0 -1
  68. package/dist/_virtual/jszip.min2.js +0 -5
  69. package/dist/_virtual/jszip.min2.js.map +0 -1
  70. package/dist/node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/dist/exceljs.min.js +0 -23540
  71. package/dist/node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/dist/exceljs.min.js.map +0 -1
  72. package/dist/node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/dist/jszip.min.js +0 -2385
  73. package/dist/node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/dist/jszip.min.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  var b = Object.defineProperty;
2
2
  var r = (a, f) => b(a, "name", { value: f, configurable: !0 });
3
- import { __exports as u } from "../../../../../../../../_virtual/index13.js";
3
+ import { __exports as u } from "../../../../../../../../_virtual/index14.js";
4
4
  import { __require as p } from "../Barcode.js";
5
5
  var c;
6
6
  function w() {
@@ -1,6 +1,6 @@
1
1
  var o = Object.defineProperty;
2
2
  var r = (n, s) => o(n, "name", { value: s, configurable: !0 });
3
- import { __exports as e } from "../../../../../../../../_virtual/constants2.js";
3
+ import { __exports as e } from "../../../../../../../../_virtual/constants3.js";
4
4
  var t;
5
5
  function _() {
6
6
  return t ? e : (t = 1, Object.defineProperty(e, "__esModule", {
@@ -1,6 +1,6 @@
1
1
  var T = Object.defineProperty;
2
2
  var i = (u, t) => T(u, "name", { value: t, configurable: !0 });
3
- import { __exports as e } from "../../../../../../../../_virtual/index8.js";
3
+ import { __exports as e } from "../../../../../../../../_virtual/index9.js";
4
4
  import { __require as f } from "./ITF.js";
5
5
  import { __require as n } from "./ITF14.js";
6
6
  var a;
@@ -1,6 +1,6 @@
1
1
  var v = Object.defineProperty;
2
2
  var I = (M, _) => v(M, "name", { value: _, configurable: !0 });
3
- import { __exports as r } from "../../../../../../../../_virtual/index9.js";
3
+ import { __exports as r } from "../../../../../../../../_virtual/index10.js";
4
4
  import { __require as n } from "./MSI.js";
5
5
  import { __require as s } from "./MSI10.js";
6
6
  import { __require as l } from "./MSI11.js";
@@ -1,6 +1,6 @@
1
1
  var p = Object.defineProperty;
2
2
  var a = (f, c) => p(f, "name", { value: c, configurable: !0 });
3
- import { __exports as i } from "../../../../../../../../_virtual/index11.js";
3
+ import { __exports as i } from "../../../../../../../../_virtual/index12.js";
4
4
  import { __require as g } from "../Barcode.js";
5
5
  var h;
6
6
  function w() {
@@ -1,6 +1,6 @@
1
1
  var v = Object.defineProperty;
2
2
  var i = (u, f) => v(u, "name", { value: f, configurable: !0 });
3
- import { __exports as a } from "../../../../../../../../_virtual/index10.js";
3
+ import { __exports as a } from "../../../../../../../../_virtual/index11.js";
4
4
  import { __require as y } from "../Barcode.js";
5
5
  var c;
6
6
  function q() {
@@ -1,6 +1,6 @@
1
1
  var v = Object.defineProperty;
2
2
  var _ = (a, t) => v(a, "name", { value: t, configurable: !0 });
3
- import { __exports as r } from "../../../../../../../_virtual/index14.js";
3
+ import { __exports as r } from "../../../../../../../_virtual/index5.js";
4
4
  import { __require as f } from "./canvas.js";
5
5
  import { __require as q } from "./svg.js";
6
6
  import { __require as c } from "./object.js";
@@ -1,6 +1,6 @@
1
1
  var S = Object.defineProperty;
2
2
  var e = (r, i) => S(r, "name", { value: i, configurable: !0 });
3
- import { __exports as n } from "../../../../../../../_virtual/utils.js";
3
+ import { __exports as n } from "../../../../../../../_virtual/utils2.js";
4
4
  var u;
5
5
  function c() {
6
6
  if (u) return n;
@@ -1,6 +1,6 @@
1
1
  var M = Object.defineProperty;
2
2
  var a = (l, h) => M(l, "name", { value: h, configurable: !0 });
3
- import { __exports as s } from "../../../../../../../_virtual/utils2.js";
3
+ import { __exports as s } from "../../../../../../../_virtual/utils.js";
4
4
  var w;
5
5
  function _() {
6
6
  return w ? s : (w = 1, (function(l) {
@@ -1,5 +1,7 @@
1
1
  import { type MaterialReactTableProps, type MRT_RowData } from 'material-react-table';
2
2
  type DataTableProps<TData extends MRT_RowData> = MaterialReactTableProps<TData> & {
3
+ canHideTotalCountFooterBorder?: boolean;
4
+ canUseNoDataOverlay?: boolean;
3
5
  canTotalCountRow?: boolean;
4
6
  canUseTreeGridStyle?: boolean;
5
7
  totalCount?: number;
@@ -0,0 +1,14 @@
1
+ import type { MRT_RowData, MRT_TableInstance } from 'material-react-table';
2
+ type OwpMrtTableNoDataOverlayProps<TData extends MRT_RowData> = {
3
+ visible: boolean;
4
+ message: string;
5
+ table: MRT_TableInstance<TData>;
6
+ };
7
+ /**
8
+ * MRT no-data overlay
9
+ * @param visible overlay visibility
10
+ * @param message no-data message
11
+ * @param table MRT table instance
12
+ */
13
+ declare const OwpMrtTableNoDataOverlay: <TData extends MRT_RowData>({ visible, message, table, }: OwpMrtTableNoDataOverlayProps<TData>) => import("react").ReactPortal;
14
+ export { OwpMrtTableNoDataOverlay };
@@ -9,6 +9,7 @@ type UseOwpTreeGridOverlayFrameInput = {
9
9
  visible: boolean;
10
10
  containerRef: RefObject<HTMLDivElement | null>;
11
11
  treeGridInstanceRef: RefObject<TGrid>;
12
+ debugId?: string;
12
13
  };
13
14
  export declare const TREE_GRID_NO_DATA_OVERLAY_Z_INDEX = 2147483646;
14
15
  export declare const TREE_GRID_LOADING_OVERLAY_Z_INDEX = 2147483647;
@@ -18,5 +19,5 @@ export declare const TREE_GRID_LOADING_OVERLAY_Z_INDEX = 2147483647;
18
19
  * @param containerRef TreeGrid container ref
19
20
  * @param treeGridInstanceRef TreeGrid instance ref
20
21
  */
21
- declare const useOwpTreeGridOverlayFrame: ({ visible, containerRef, treeGridInstanceRef, }: UseOwpTreeGridOverlayFrameInput) => OwpTreeGridOverlayFrame;
22
+ declare const useOwpTreeGridOverlayFrame: ({ visible, containerRef, treeGridInstanceRef, debugId, }: UseOwpTreeGridOverlayFrameInput) => OwpTreeGridOverlayFrame;
22
23
  export { useOwpTreeGridOverlayFrame };
@@ -0,0 +1,30 @@
1
+ export declare const TREE_GRID_PERF_FLAG = "__OWP_TREE_GRID_PERF__";
2
+ /**
3
+ * TreeGrid 성능 계측 활성 여부
4
+ */
5
+ export declare const isTreeGridPerfEnabled: () => boolean;
6
+ /**
7
+ * TreeGrid 성능 계측 타임스탬프 반환
8
+ */
9
+ export declare const getTreeGridPerfTimestamp: () => number;
10
+ /**
11
+ * TreeGrid 성능 계측 카운트 로그
12
+ * @param gridId TreeGrid 인스턴스 ID
13
+ * @param label 계측 라벨
14
+ */
15
+ export declare const countTreeGridPerf: (gridId: string, label: string) => void;
16
+ /**
17
+ * TreeGrid 성능 계측 디버그 로그
18
+ * @param gridId TreeGrid 인스턴스 ID
19
+ * @param label 계측 라벨
20
+ * @param payload 부가 정보
21
+ */
22
+ export declare const logTreeGridPerf: (gridId: string, label: string, payload?: Record<string, unknown>) => void;
23
+ /**
24
+ * TreeGrid 성능 계측 측정 로그
25
+ * @param gridId TreeGrid 인스턴스 ID
26
+ * @param label 계측 라벨
27
+ * @param startedAt 시작 시각
28
+ * @param payload 부가 정보
29
+ */
30
+ export declare const measureTreeGridPerf: (gridId: string, label: string, startedAt: number | null, payload?: Record<string, unknown>) => void;
@@ -0,0 +1,13 @@
1
+ import { type ButtonProps } from '@mui/material';
2
+ import { type ReactNode } from 'react';
3
+ export interface OwpTreeGridResetChangesButtonProps extends ButtonProps {
4
+ gridId: string;
5
+ confirmTitle?: ReactNode | string;
6
+ }
7
+ /**
8
+ * TreeGrid 변경 사항 초기화 버튼
9
+ * @param gridId TreeGrid 인스턴스 ID
10
+ * @param confirmTitle 확인 대화상자 제목
11
+ */
12
+ declare const OwpTreeGridResetChangesButton: ({ gridId, confirmTitle, children, onClick, ...buttonProps }: OwpTreeGridResetChangesButtonProps) => import("react/jsx-runtime").JSX.Element;
13
+ export { OwpTreeGridResetChangesButton };
@@ -0,0 +1 @@
1
+ export * from './OwpTreeGridResetChangesButton';
@@ -42,6 +42,7 @@ export * from './components/OwpTable/OwpVerticalTable';
42
42
  export * from './components/OwpTextField/OwpTextMaskField';
43
43
  export * from './components/OwpTabs';
44
44
  export * from './components/OwpTreeGridExcelButton';
45
+ export * from './components/OwpTreeGridResetChangesButton';
45
46
  export * from './components/OwpTreeGrid';
46
47
  export * from './components/OwpTreeGrid/OwpTreeGridToolbar';
47
48
  export * from './components/OwpZoomImageSlider/OwpZoomImageSlider';
@@ -15,6 +15,7 @@ export * from './getStartPagePath';
15
15
  export * from './getTrimmedValue';
16
16
  export * from './isEnterKeyEvent';
17
17
  export * from './language';
18
+ export * from './preloadOnIdle';
18
19
  export * from './qrCodeUtil';
19
20
  export * from './rebuildValue';
20
21
  export * from './sanitizeAuthInputValue';
@@ -0,0 +1,7 @@
1
+ type PreloadLoader = () => Promise<unknown>;
2
+ /**
3
+ * 브라우저 유휴 시간 preload 실행 예약
4
+ * @param loaders preload 실행 함수 목록
5
+ */
6
+ export declare const preloadOnIdle: (...loaders: PreloadLoader[]) => () => void;
7
+ export {};
@@ -0,0 +1,9 @@
1
+ export declare const TREE_GRID_BODY_ROWS_CHANGED_EVENT = "owp-treegrid:body-rows-changed";
2
+ export type TreeGridBodyRowsChangedEventDetail = {
3
+ gridId: string;
4
+ };
5
+ /**
6
+ * TreeGrid 본문 행 변경 이벤트 전파
7
+ * @param gridId TreeGrid 인스턴스 ID
8
+ */
9
+ export declare const emitTreeGridBodyRowsChanged: (gridId: string) => void;
@@ -1,10 +1,10 @@
1
1
  var l = Object.defineProperty;
2
- var o = (e, r) => l(e, "name", { value: r, configurable: !0 });
3
- let t;
4
- const n = /* @__PURE__ */ o((e) => "default" in e ? e.default : e, "resolveExcelJSImport"), c = /* @__PURE__ */ o(() => (t || (t = import("../_virtual/exceljs.min.js").then((e) => e.e).then((e) => n(e)).catch((e) => {
5
- throw t = void 0, e;
6
- })), t), "loadExcelJSBrowser");
2
+ var r = (e, t) => l(e, "name", { value: t, configurable: !0 });
3
+ let o;
4
+ const s = /* @__PURE__ */ r((e) => "default" in e ? e.default : e, "resolveExcelJSImport"), i = /* @__PURE__ */ r(() => (o || (o = import("exceljs").then((e) => s(e)).catch((e) => {
5
+ throw o = void 0, e;
6
+ })), o), "loadExcelJSBrowser");
7
7
  export {
8
- c as loadExcelJSBrowser
8
+ i as loadExcelJSBrowser
9
9
  };
10
10
  //# sourceMappingURL=exceljsBrowser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"exceljsBrowser.js","sources":["../../src/utils/exceljsBrowser.ts"],"sourcesContent":["import type * as ExcelJSModule from 'exceljs';\n\ntype ExcelJSImportModule = typeof import('virtual:owp-exceljs-browser');\nlet excelJSBrowserPromise: Promise<typeof ExcelJSModule> | undefined;\n\n/**\n * 브라우저 배포용 exceljs 모듈 정규화\n */\nconst resolveExcelJSImport = (excelJSImport: ExcelJSImportModule) =>\n (('default' in excelJSImport ? excelJSImport.default : excelJSImport) as typeof ExcelJSModule);\n\n/**\n * 브라우저 배포용 exceljs 모듈 지연 로드\n */\nexport const loadExcelJSBrowser = () => {\n if (!excelJSBrowserPromise) {\n excelJSBrowserPromise = import('virtual:owp-exceljs-browser')\n .then((excelJSImport) => resolveExcelJSImport(excelJSImport))\n .catch((error) => {\n excelJSBrowserPromise = undefined;\n throw error;\n });\n }\n\n return excelJSBrowserPromise;\n};\n"],"names":["excelJSBrowserPromise","resolveExcelJSImport","__name","excelJSImport","loadExcelJSBrowser","error"],"mappings":";;AAGA,IAAIA;AAKJ,MAAMC,IAAuB,gBAAAC,EAAA,CAACC,MAC1B,aAAaA,IAAgBA,EAAc,UAAUA,GAD5B,yBAMhBC,IAAqB,gBAAAF,EAAA,OAC3BF,MACHA,IAAwB,OAAO,4BAA6B,mBACzD,KAAK,CAACG,MAAkBF,EAAqBE,CAAa,CAAC,EAC3D,MAAM,CAACE,MAAU;AAChB,QAAAL,IAAwB,QAClBK;AACR,CAAC,IAGEL,IAVyB;"}
1
+ {"version":3,"file":"exceljsBrowser.js","sources":["../../src/utils/exceljsBrowser.ts"],"sourcesContent":["import type * as ExcelJSModule from 'exceljs';\n\ntype ExcelJSImportModule = typeof import('exceljs');\nlet excelJSBrowserPromise: Promise<typeof ExcelJSModule> | undefined;\n\n/**\n * 브라우저 배포용 exceljs 모듈 정규화\n */\nconst resolveExcelJSImport = (excelJSImport: ExcelJSImportModule) =>\n (('default' in excelJSImport ? excelJSImport.default : excelJSImport) as typeof ExcelJSModule);\n\n/**\n * 브라우저 배포용 exceljs 모듈 지연 로드\n */\nexport const loadExcelJSBrowser = () => {\n if (!excelJSBrowserPromise) {\n excelJSBrowserPromise = import('exceljs')\n .then((excelJSImport) => resolveExcelJSImport(excelJSImport))\n .catch((error) => {\n excelJSBrowserPromise = undefined;\n throw error;\n });\n }\n\n return excelJSBrowserPromise;\n};\n"],"names":["excelJSBrowserPromise","resolveExcelJSImport","__name","excelJSImport","loadExcelJSBrowser","error"],"mappings":";;AAGA,IAAIA;AAKJ,MAAMC,IAAuB,gBAAAC,EAAA,CAACC,MAC1B,aAAaA,IAAgBA,EAAc,UAAUA,GAD5B,yBAMhBC,IAAqB,gBAAAF,EAAA,OAC3BF,MACHA,IAAwB,OAAO,SAAS,EACrC,KAAK,CAACG,MAAkBF,EAAqBE,CAAa,CAAC,EAC3D,MAAM,CAACE,MAAU;AAChB,QAAAL,IAAwB,QAClBK;AACR,CAAC,IAGEL,IAVyB;"}
@@ -1,10 +1,10 @@
1
1
  var r = Object.defineProperty;
2
- var o = (t, i) => r(t, "name", { value: i, configurable: !0 });
3
- let e;
4
- const n = /* @__PURE__ */ o(() => (e || (e = import("../_virtual/jszip.min.js").then((t) => t.j).then((t) => t.default).catch((t) => {
5
- throw e = void 0, t;
6
- })), e), "loadJSZip");
2
+ var e = (t, i) => r(t, "name", { value: i, configurable: !0 });
3
+ let o;
4
+ const a = /* @__PURE__ */ e(() => (o || (o = import("jszip").then((t) => t.default).catch((t) => {
5
+ throw o = void 0, t;
6
+ })), o), "loadJSZip");
7
7
  export {
8
- n as loadJSZip
8
+ a as loadJSZip
9
9
  };
10
10
  //# sourceMappingURL=jszipBrowser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"jszipBrowser.js","sources":["../../src/utils/jszipBrowser.ts"],"sourcesContent":["import type JSZipModule from 'jszip';\n\nlet jsZipPromise: Promise<typeof JSZipModule> | undefined;\n\n/**\n * 브라우저 배포용 JSZip 모듈 지연 로드\n */\nexport const loadJSZip = () => {\n if (!jsZipPromise) {\n jsZipPromise = import('jszip')\n .then((jszipModule) => jszipModule.default)\n .catch((error) => {\n jsZipPromise = undefined;\n throw error;\n });\n }\n\n return jsZipPromise;\n};\n"],"names":["jsZipPromise","loadJSZip","__name","jszipModule","error"],"mappings":";;AAEA,IAAIA;AAKG,MAAMC,IAAY,gBAAAC,EAAA,OAClBF,MACHA,IAAe,OAAO,0BAAO,mBAC1B,KAAK,CAACG,MAAgBA,EAAY,OAAO,EACzC,MAAM,CAACC,MAAU;AAChB,QAAAJ,IAAe,QACTI;AACR,CAAC,IAGEJ,IAVgB;"}
1
+ {"version":3,"file":"jszipBrowser.js","sources":["../../src/utils/jszipBrowser.ts"],"sourcesContent":["import type JSZipModule from 'jszip';\n\nlet jsZipPromise: Promise<typeof JSZipModule> | undefined;\n\n/**\n * 브라우저 배포용 JSZip 모듈 지연 로드\n */\nexport const loadJSZip = () => {\n if (!jsZipPromise) {\n jsZipPromise = import('jszip')\n .then((jszipModule) => jszipModule.default)\n .catch((error) => {\n jsZipPromise = undefined;\n throw error;\n });\n }\n\n return jsZipPromise;\n};\n"],"names":["jsZipPromise","loadJSZip","__name","jszipModule","error"],"mappings":";;AAEA,IAAIA;AAKG,MAAMC,IAAY,gBAAAC,EAAA,OAClBF,MACHA,IAAe,OAAO,OAAO,EAC1B,KAAK,CAACG,MAAgBA,EAAY,OAAO,EACzC,MAAM,CAACC,MAAU;AAChB,QAAAJ,IAAe,QACTI;AACR,CAAC,IAGEJ,IAVgB;"}
@@ -0,0 +1,27 @@
1
+ var a = Object.defineProperty;
2
+ var n = (l, e) => a(l, "name", { value: e, configurable: !0 });
3
+ const r = /* @__PURE__ */ n((...l) => {
4
+ if (typeof window > "u")
5
+ return () => {
6
+ };
7
+ const e = /* @__PURE__ */ n(() => {
8
+ l.forEach((o) => {
9
+ o();
10
+ });
11
+ }, "runPreload");
12
+ if (typeof window.requestIdleCallback == "function") {
13
+ const o = window.requestIdleCallback(e);
14
+ return () => {
15
+ var t;
16
+ (t = window.cancelIdleCallback) == null || t.call(window, o);
17
+ };
18
+ }
19
+ const d = globalThis.setTimeout(e, 0);
20
+ return () => {
21
+ globalThis.clearTimeout(d);
22
+ };
23
+ }, "preloadOnIdle");
24
+ export {
25
+ r as preloadOnIdle
26
+ };
27
+ //# sourceMappingURL=preloadOnIdle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preloadOnIdle.js","sources":["../../src/utils/preloadOnIdle.ts"],"sourcesContent":["type PreloadLoader = () => Promise<unknown>;\n\n/**\n * 브라우저 유휴 시간 preload 실행 예약\n * @param loaders preload 실행 함수 목록\n */\nexport const preloadOnIdle = (...loaders: PreloadLoader[]) => {\n if (typeof window === 'undefined') {\n return () => {};\n }\n\n const runPreload = () => {\n loaders.forEach((loader) => {\n void loader();\n });\n };\n\n if (typeof window.requestIdleCallback === 'function') {\n const idleCallbackId = window.requestIdleCallback(runPreload);\n\n return () => {\n window.cancelIdleCallback?.(idleCallbackId);\n };\n }\n\n const timeoutId = globalThis.setTimeout(runPreload, 0);\n\n return () => {\n globalThis.clearTimeout(timeoutId);\n };\n};\n"],"names":["preloadOnIdle","__name","loaders","runPreload","loader","idleCallbackId","_a","timeoutId"],"mappings":";;AAMO,MAAMA,IAAgB,gBAAAC,EAAA,IAAIC,MAA6B;AAC5D,MAAI,OAAO,SAAW;AACpB,WAAO,MAAM;AAAA,IAAC;AAGhB,QAAMC,IAAa,gBAAAF,EAAA,MAAM;AACvB,IAAAC,EAAQ,QAAQ,CAACE,MAAW;AAC1B,MAAKA,EAAA;AAAA,IACP,CAAC;AAAA,EACH,GAJmB;AAMnB,MAAI,OAAO,OAAO,uBAAwB,YAAY;AACpD,UAAMC,IAAiB,OAAO,oBAAoBF,CAAU;AAE5D,WAAO,MAAM;AAdV,UAAAG;AAeD,OAAAA,IAAA,OAAO,uBAAP,QAAAA,EAAA,aAA4BD;AAAA,IAC9B;AAAA,EACF;AAEA,QAAME,IAAY,WAAW,WAAWJ,GAAY,CAAC;AAErD,SAAO,MAAM;AACX,eAAW,aAAaI,CAAS;AAAA,EACnC;AACF,GAxB6B;"}
@@ -0,0 +1,14 @@
1
+ var d = Object.defineProperty;
2
+ var o = (e, t) => d(e, "name", { value: t, configurable: !0 });
3
+ const n = "owp-treegrid:body-rows-changed", i = /* @__PURE__ */ o((e) => {
4
+ window.dispatchEvent(
5
+ new CustomEvent(n, {
6
+ detail: { gridId: e }
7
+ })
8
+ );
9
+ }, "emitTreeGridBodyRowsChanged");
10
+ export {
11
+ n as TREE_GRID_BODY_ROWS_CHANGED_EVENT,
12
+ i as emitTreeGridBodyRowsChanged
13
+ };
14
+ //# sourceMappingURL=treeGridBodyRowsEvent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"treeGridBodyRowsEvent.js","sources":["../../src/utils/treeGridBodyRowsEvent.ts"],"sourcesContent":["export const TREE_GRID_BODY_ROWS_CHANGED_EVENT = 'owp-treegrid:body-rows-changed';\n\nexport type TreeGridBodyRowsChangedEventDetail = {\n gridId: string;\n};\n\n/**\n * TreeGrid 본문 행 변경 이벤트 전파\n * @param gridId TreeGrid 인스턴스 ID\n */\nexport const emitTreeGridBodyRowsChanged = (gridId: string) => {\n window.dispatchEvent(\n new CustomEvent<TreeGridBodyRowsChangedEventDetail>(TREE_GRID_BODY_ROWS_CHANGED_EVENT, {\n detail: { gridId },\n }),\n );\n};\n"],"names":["TREE_GRID_BODY_ROWS_CHANGED_EVENT","emitTreeGridBodyRowsChanged","__name","gridId"],"mappings":";;AAAO,MAAMA,IAAoC,kCAUpCC,IAA8B,gBAAAC,EAAA,CAACC,MAAmB;AAC7D,SAAO;AAAA,IACL,IAAI,YAAgDH,GAAmC;AAAA,MACrF,QAAQ,EAAE,QAAAG,EAAA;AAAA,IAAO,CAClB;AAAA,EAAA;AAEL,GAN2C;"}