@bwg-ui/core 1.2.35 → 1.3.0

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 (78) hide show
  1. package/dist/chunks/{CMSearchIntfGwP01-CMSQULsU.cjs → CMSearchIntfGwP01-D7XtXMLy.cjs} +1 -1
  2. package/dist/chunks/{CMSearchIntfGwP01-Duabg_5A.js → CMSearchIntfGwP01-_h2B12Ig.js} +28 -28
  3. package/dist/chunks/{MenuReport-B4EU1A6l.js → MenuReport-Bw3AvR6b.js} +10 -10
  4. package/dist/chunks/MenuReport-DuWbbKBC.cjs +1 -0
  5. package/dist/chunks/common-components-BOJo6FH_.cjs +1109 -0
  6. package/dist/chunks/{common-components-DIpOkbb5.js → common-components-BjfrRYiU.js} +13530 -12812
  7. package/dist/chunks/{layout-components-D2Fla5uu.js → layout-components-DNhUIx4u.js} +603 -559
  8. package/dist/chunks/layout-components-Ddn-4n36.cjs +35 -0
  9. package/dist/chunks/provider-DrboIg2C.cjs +1 -0
  10. package/dist/chunks/provider-VCa8UGvF.js +446 -0
  11. package/dist/components/common/BwgGrid.d.ts +17 -16
  12. package/dist/components/common/BwgGrid.d.ts.map +1 -1
  13. package/dist/components/common/BwgPagination.d.ts.map +1 -1
  14. package/dist/components/common/BwgView.d.ts +3 -3
  15. package/dist/components/common/BwgView.d.ts.map +1 -1
  16. package/dist/components/common/index.cjs +1 -1
  17. package/dist/components/common/index.d.ts +4 -3
  18. package/dist/components/common/index.d.ts.map +1 -1
  19. package/dist/components/common/index.js +5 -5
  20. package/dist/components/common/type.d.ts +7 -0
  21. package/dist/components/common/type.d.ts.map +1 -1
  22. package/dist/components/core/BwgMaskedDate.d.ts +13 -0
  23. package/dist/components/core/BwgMaskedDate.d.ts.map +1 -0
  24. package/dist/components/core/{BwgMaskedPicker.d.ts → BwgMaskedRange.d.ts} +6 -4
  25. package/dist/components/core/BwgMaskedRange.d.ts.map +1 -0
  26. package/dist/components/core/index.cjs +1 -1
  27. package/dist/components/core/index.d.ts +4 -2
  28. package/dist/components/core/index.d.ts.map +1 -1
  29. package/dist/components/core/index.js +1219 -781
  30. package/dist/components/guide/index.cjs +1 -1
  31. package/dist/components/guide/index.js +2 -2
  32. package/dist/components/layout/BwgPortal01.d.ts.map +1 -1
  33. package/dist/components/layout/custom/ConfigurableHeader.d.ts.map +1 -1
  34. package/dist/components/layout/extension/ContentWrapper.d.ts.map +1 -1
  35. package/dist/components/layout/index.cjs +1 -1
  36. package/dist/components/layout/index.js +1 -1
  37. package/dist/components/pages/syst/CMHldyCfg.d.ts.map +1 -1
  38. package/dist/components/popup/MenuReport.d.ts.map +1 -1
  39. package/dist/components/popup/SearchAddressP01.d.ts +30 -0
  40. package/dist/components/popup/SearchAddressP01.d.ts.map +1 -0
  41. package/dist/components/popup/SearchHolidayP01.d.ts +2 -2
  42. package/dist/components/popup/SearchHolidayP01.d.ts.map +1 -1
  43. package/dist/components/popup/config/localPopupRegistry.d.ts.map +1 -1
  44. package/dist/components/popup/index.cjs +1 -1
  45. package/dist/components/popup/index.d.ts +2 -0
  46. package/dist/components/popup/index.d.ts.map +1 -1
  47. package/dist/components/popup/index.js +6 -5
  48. package/dist/index.cjs +1 -1
  49. package/dist/index.js +270 -259
  50. package/dist/provider/contexts/BwgViewContext.d.ts +19 -0
  51. package/dist/provider/contexts/BwgViewContext.d.ts.map +1 -0
  52. package/dist/provider/contexts/index.d.ts +1 -0
  53. package/dist/provider/contexts/index.d.ts.map +1 -1
  54. package/dist/provider/hooks/index.d.ts +1 -0
  55. package/dist/provider/hooks/index.d.ts.map +1 -1
  56. package/dist/provider/hooks/useSizeConfig.d.ts +19 -0
  57. package/dist/provider/hooks/useSizeConfig.d.ts.map +1 -0
  58. package/dist/provider/index.cjs +1 -1
  59. package/dist/provider/index.js +22 -381
  60. package/dist/stores/index.cjs +2 -2
  61. package/dist/stores/index.js +18 -11
  62. package/dist/stores/userStore.d.ts +4 -0
  63. package/dist/stores/userStore.d.ts.map +1 -1
  64. package/dist/styles/components.css +90 -60
  65. package/dist/utils/{FileUtils.d.ts → fileUtils.d.ts} +1 -1
  66. package/dist/utils/fileUtils.d.ts.map +1 -0
  67. package/dist/utils/gridUtils.d.ts +45 -0
  68. package/dist/utils/gridUtils.d.ts.map +1 -0
  69. package/dist/utils/index.cjs +1 -1
  70. package/dist/utils/index.d.ts +12 -2
  71. package/dist/utils/index.d.ts.map +1 -1
  72. package/dist/utils/index.js +1112 -1005
  73. package/package.json +1 -1
  74. package/dist/chunks/MenuReport-5e2dMr_C.cjs +0 -1
  75. package/dist/chunks/common-components-D3-r7D-8.cjs +0 -1109
  76. package/dist/chunks/layout-components-pfHVy2at.cjs +0 -35
  77. package/dist/components/core/BwgMaskedPicker.d.ts.map +0 -1
  78. package/dist/utils/FileUtils.d.ts.map +0 -1
@@ -1,34 +1,38 @@
1
- import { jsxs as y, jsx as e, Fragment as V } from "react/jsx-runtime";
2
- import { ServiceCodeProvider as Ne, CommonCodeProvider as Ie, SearchBoxProvider as ie, ScreenProtectProvider as Pe, useLock as Se } from "../provider/index.js";
3
- import { Routes as ge, Route as Y, Navigate as Me, useNavigate as le, useLocation as Le } from "react-router-dom";
4
- import { G as Te, B as Be, Q as Ee } from "./common-components-DIpOkbb5.js";
5
- import { Spin as q, Layout as j, ColorPicker as Oe, Button as L, Divider as Re, Slider as te, Popover as ze, Avatar as De, Tabs as $e, Tooltip as K, AutoComplete as Ae, Input as oe, Segmented as Fe, ConfigProvider as We, Menu as se, Result as fe, Space as Ge, Typography as _e, Empty as ne, Breadcrumb as He, Form as H, Flex as Ve, Checkbox as je } from "antd";
6
- import { lazy as W, useEffect as E, useState as R, useRef as U, useMemo as F, useCallback as z, createElement as be, memo as ce, cloneElement as Ke, Component as Ue, Suspense as X } from "react";
7
- import { useLogout as Ze, useUserStore as Ye, useMenuViewStore as A, useMenuModelStore as J, useFavoriteStore as qe, usePopupStore as de, useLogin as Qe, useSystemStore as Xe } from "../stores/index.js";
1
+ import { jsxs as C, jsx as e, Fragment as V } from "react/jsx-runtime";
2
+ import { o as Pe, C as Se, S as ie, n as Le, m as Me } from "./provider-VCa8UGvF.js";
3
+ import { Routes as fe, Route as Y, Navigate as Te, useNavigate as le, useLocation as Ee } from "react-router-dom";
4
+ import { G as Be, B as Oe, Q as Re } from "./common-components-BjfrRYiU.js";
5
+ import { Spin as q, Layout as j, ColorPicker as De, Button as M, Divider as ue, Slider as te, Switch as ze, Popover as Ae, Avatar as $e, Tabs as Fe, Tooltip as K, AutoComplete as We, Input as oe, Segmented as _e, ConfigProvider as Ge, Menu as se, Result as be, Space as He, Typography as Ve, Empty as ne, Breadcrumb as je, Form as H, Flex as Ke, Checkbox as Ue } from "antd";
6
+ import { lazy as z, useEffect as B, useState as R, useRef as U, useMemo as _, useCallback as D, createElement as ye, memo as ce, cloneElement as Ze, Component as Ye, Suspense as X } from "react";
7
+ import { useLogout as qe, useUserStore as Ce, useMenuViewStore as F, useMenuModelStore as J, useFavoriteStore as Qe, usePopupStore as de, useLogin as Xe, useSystemStore as Je } from "../stores/index.js";
8
8
  import * as Q from "@ant-design/icons";
9
- import { UserOutlined as Je, StepBackwardOutlined as et, LeftOutlined as tt, RightOutlined as nt, StepForwardOutlined as rt, CloseOutlined as ye, MenuUnfoldOutlined as ot, MenuFoldOutlined as st, ExclamationCircleOutlined as at, WarningOutlined as it, StarOutlined as lt, FolderOpenOutlined as ct, ReloadOutlined as Ce, ExclamationCircleTwoTone as dt } from "@ant-design/icons";
10
- import { getCookie as ut, getTodateString as ue, setCookie as mt, THEME_COOKIE_NAME as me, getUserId as he } from "../utils/index.js";
11
- import { useSensors as ht, useSensor as pt, PointerSensor as gt, DndContext as ft, closestCenter as bt } from "@dnd-kit/core";
12
- import { restrictToHorizontalAxis as yt } from "@dnd-kit/modifiers";
13
- import { arrayMove as Ct, SortableContext as vt, horizontalListSortingStrategy as wt, useSortable as xt } from "@dnd-kit/sortable";
14
- const kt = W(
15
- () => import("./MenuReport-B4EU1A6l.js")
16
- ), Nt = W(
17
- () => import("./common-components-DIpOkbb5.js").then((n) => n.$)
18
- ), It = W(
19
- () => import("./common-components-DIpOkbb5.js").then((n) => n.a0)
20
- ), Pt = W(
21
- () => import("./common-components-DIpOkbb5.js").then((n) => n.a1)
22
- ), St = W(
23
- () => import("./common-components-DIpOkbb5.js").then((n) => n.a2)
24
- ), Mt = W(
25
- () => import("./common-components-DIpOkbb5.js").then((n) => n.a3)
26
- ), Lt = W(
27
- () => import("./CMSearchIntfGwP01-Duabg_5A.js")
28
- ), Tt = {
9
+ import { UserOutlined as et, StepBackwardOutlined as tt, LeftOutlined as nt, RightOutlined as rt, StepForwardOutlined as ot, CloseOutlined as ve, MenuUnfoldOutlined as st, MenuFoldOutlined as at, ExclamationCircleOutlined as it, WarningOutlined as lt, StarOutlined as ct, FolderOpenOutlined as dt, ReloadOutlined as we, ExclamationCircleTwoTone as ut } from "@ant-design/icons";
10
+ import { getCookie as mt, getTodateString as me, setCookie as ht, THEME_COOKIE_NAME as he, getUserId as pe } from "../utils/index.js";
11
+ import { useSensors as pt, useSensor as gt, PointerSensor as ft, DndContext as bt, closestCenter as yt } from "@dnd-kit/core";
12
+ import { restrictToHorizontalAxis as Ct } from "@dnd-kit/modifiers";
13
+ import { arrayMove as vt, SortableContext as wt, horizontalListSortingStrategy as xt, useSortable as kt } from "@dnd-kit/sortable";
14
+ const It = z(
15
+ () => import("./MenuReport-Bw3AvR6b.js")
16
+ ), Nt = z(
17
+ () => import("./common-components-BjfrRYiU.js").then((n) => n.$)
18
+ ), Pt = z(
19
+ () => import("./common-components-BjfrRYiU.js").then((n) => n.a0)
20
+ ), St = z(
21
+ () => import("./common-components-BjfrRYiU.js").then((n) => n.a1)
22
+ ), Lt = z(
23
+ () => import("./common-components-BjfrRYiU.js").then((n) => n.a2)
24
+ ), Mt = z(
25
+ () => import("./common-components-BjfrRYiU.js").then((n) => n.a4)
26
+ ), Tt = z(
27
+ () => import("./CMSearchIntfGwP01-_h2B12Ig.js")
28
+ ), Et = z(
29
+ () => import("./common-components-BjfrRYiU.js").then((n) => n.a5)
30
+ ), Bt = z(
31
+ () => import("./common-components-BjfrRYiU.js").then((n) => n.a3)
32
+ ), Ot = {
29
33
  // 게시판/문의
30
34
  CORE_REPORT: {
31
- component: kt,
35
+ component: It,
32
36
  defaultConfig: {
33
37
  title: "게시판/문의",
34
38
  width: 1200,
@@ -45,7 +49,7 @@ const kt = W(
45
49
  }
46
50
  },
47
51
  CORE_DEPARTMENT_02: {
48
- component: It,
52
+ component: Pt,
49
53
  defaultConfig: {
50
54
  title: "부서 검색",
51
55
  width: 620,
@@ -53,7 +57,7 @@ const kt = W(
53
57
  }
54
58
  },
55
59
  CORE_ORGANIZATION_01: {
56
- component: Pt,
60
+ component: St,
57
61
  defaultConfig: {
58
62
  title: "조직 검색",
59
63
  width: 620,
@@ -61,7 +65,7 @@ const kt = W(
61
65
  }
62
66
  },
63
67
  CORE_ORGANIZATION_02: {
64
- component: St,
68
+ component: Lt,
65
69
  defaultConfig: {
66
70
  title: "조직 검색",
67
71
  width: 1e3,
@@ -77,18 +81,34 @@ const kt = W(
77
81
  }
78
82
  },
79
83
  CORE_GW_DRAFTS: {
80
- component: Lt,
84
+ component: Tt,
81
85
  defaultConfig: {
82
86
  title: "기안 목록",
83
87
  width: 1e3,
84
88
  height: 700
85
89
  }
90
+ },
91
+ CORE_ADDRESS_01: {
92
+ component: Et,
93
+ defaultConfig: {
94
+ title: "주소 검색",
95
+ width: 750,
96
+ height: 800
97
+ }
98
+ },
99
+ CORE_HOLIDAY_01: {
100
+ component: Bt,
101
+ defaultConfig: {
102
+ title: "휴일 검색",
103
+ width: 750,
104
+ height: 800
105
+ }
86
106
  }
87
- }, pe = "bwg-dot-line-wave-v4";
88
- function Bt() {
89
- if (typeof document > "u" || document.getElementById(pe)) return;
107
+ }, ge = "bwg-dot-line-wave-v4";
108
+ function Rt() {
109
+ if (typeof document > "u" || document.getElementById(ge)) return;
90
110
  const n = document.createElement("style");
91
- n.id = pe, n.textContent = `
111
+ n.id = ge, n.textContent = `
92
112
  .bwg-dotline {
93
113
  display: inline-flex;
94
114
  align-items: center;
@@ -124,53 +144,53 @@ function Bt() {
124
144
  }
125
145
  `, document.head.appendChild(n);
126
146
  }
127
- const Et = ({
147
+ const Dt = ({
128
148
  colors: n = ["#DAD3FF", "#B3A6FF", "#9380FF", "#816BFA"],
129
149
  count: t,
130
150
  size: r = 12,
131
151
  gap: o = 10,
132
152
  amp: s = 16,
133
- speedMs: i = 900,
153
+ speedMs: a = 900,
134
154
  direction: b = "ltr",
135
155
  phase: l = 0.7
136
156
  }) => {
137
- E(() => {
138
- Bt();
157
+ B(() => {
158
+ Rt();
139
159
  }, []);
140
- const d = t ?? n.length, c = Array.from({ length: d }), u = {
160
+ const c = t ?? n.length, y = Array.from({ length: c }), i = {
141
161
  "--bwg-size": `${r}px`,
142
162
  "--bwg-gap": `${o}px`,
143
163
  "--bwg-amp": `${s}px`,
144
- "--bwg-speed": `${i}ms`
145
- }, C = i / d * l;
164
+ "--bwg-speed": `${a}ms`
165
+ }, v = a / c * l;
146
166
  return /* @__PURE__ */ e(
147
167
  "span",
148
168
  {
149
169
  className: "bwg-dotline",
150
170
  role: "img",
151
171
  "aria-label": "loading",
152
- style: u,
153
- children: c.map((m, h) => /* @__PURE__ */ e(
172
+ style: i,
173
+ children: y.map((h, u) => /* @__PURE__ */ e(
154
174
  "span",
155
175
  {
156
176
  className: "dot",
157
177
  style: {
158
- backgroundColor: n[h % n.length],
159
- animationDelay: b === "ltr" ? `${h * C}ms` : `${(d - 1 - h) * C}ms`
178
+ backgroundColor: n[u % n.length],
179
+ animationDelay: b === "ltr" ? `${u * v}ms` : `${(c - 1 - u) * v}ms`
160
180
  }
161
181
  },
162
- h
182
+ u
163
183
  ))
164
184
  }
165
185
  );
166
- }, pn = ({
186
+ }, bn = ({
167
187
  spin: n = null,
168
188
  text: t = "인증중...",
169
189
  dimStyle: r = "dark"
170
190
  }) => {
171
191
  if (!(n ?? !0)) return null;
172
- const i = r === "dark";
173
- return /* @__PURE__ */ y(
192
+ const a = r === "dark";
193
+ return /* @__PURE__ */ C(
174
194
  "div",
175
195
  {
176
196
  className: "loading-overlay",
@@ -186,8 +206,8 @@ const Et = ({
186
206
  alignItems: "center",
187
207
  gap: 8,
188
208
  padding: "8px 12px",
189
- background: i ? "rgba(0, 0, 0, 0.6)" : "rgba(255, 255, 255, 0.85)",
190
- color: i ? "#fff" : "#333",
209
+ background: a ? "rgba(0, 0, 0, 0.6)" : "rgba(255, 255, 255, 0.85)",
210
+ color: a ? "#fff" : "#333",
191
211
  backdropFilter: "blur(4px)",
192
212
  zIndex: 1e4
193
213
  },
@@ -199,7 +219,7 @@ const Et = ({
199
219
  q,
200
220
  {
201
221
  indicator: /* @__PURE__ */ e(
202
- Et,
222
+ Dt,
203
223
  {
204
224
  colors: ["#DAD3FF", "#B3A6FF", "#9380FF", "#816BFA"],
205
225
  size: 12,
@@ -216,18 +236,18 @@ const Et = ({
216
236
  ]
217
237
  }
218
238
  );
219
- }, gn = ({
239
+ }, yn = ({
220
240
  routes: n,
221
241
  useCommonProvider: t = !0,
222
242
  useServiceProvider: r = !0
223
243
  }) => {
224
- let s = /* @__PURE__ */ y(ge, { children: [
225
- /* @__PURE__ */ e(Y, { path: "/", element: /* @__PURE__ */ e(Me, { to: "/login" }) }),
244
+ let s = /* @__PURE__ */ C(fe, { children: [
245
+ /* @__PURE__ */ e(Y, { path: "/", element: /* @__PURE__ */ e(Te, { to: "/login" }) }),
226
246
  /* @__PURE__ */ e(Y, { path: "/login", element: n.login }),
227
247
  /* @__PURE__ */ e(Y, { path: "/main/*", element: n.main })
228
248
  ] });
229
- return r && (s = /* @__PURE__ */ e(Ne, { children: s })), t && (s = /* @__PURE__ */ e(Ie, { children: s })), /* @__PURE__ */ e(Te, { children: s });
230
- }, { Content: Ot } = j, ve = ({
249
+ return r && (s = /* @__PURE__ */ e(Pe, { children: s })), t && (s = /* @__PURE__ */ e(Se, { children: s })), /* @__PURE__ */ e(Be, { children: s });
250
+ }, { Content: zt } = j, xe = ({
231
251
  config: n = {},
232
252
  children: t
233
253
  }) => {
@@ -243,11 +263,11 @@ const Et = ({
243
263
  ...n
244
264
  };
245
265
  return /* @__PURE__ */ e(
246
- Ot,
266
+ zt,
247
267
  {
248
268
  className: r.wrapper.className,
249
269
  style: r.wrapper.style,
250
- children: /* @__PURE__ */ e(Be, { children: /* @__PURE__ */ e(
270
+ children: /* @__PURE__ */ e(Oe, { children: /* @__PURE__ */ e(
251
271
  "div",
252
272
  {
253
273
  className: r.body.className,
@@ -257,7 +277,7 @@ const Et = ({
257
277
  ) })
258
278
  }
259
279
  );
260
- }, Rt = "data:image/svg+xml,%3csvg%20width='30'%20height='30'%20viewBox='0%200%2030%2030'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M11.9998%2019.9993V20.9993C11.9998%2021.3932%2012.0774%2021.7833%2012.2282%2022.1473C12.3789%2022.5112%2012.5999%2022.8419%2012.8785%2023.1205C13.157%2023.399%2013.4877%2023.62%2013.8517%2023.7708C14.2156%2023.9215%2014.6057%2023.9991%2014.9997%2023.9991C15.3936%2023.9991%2015.7837%2023.9215%2016.1477%2023.7708C16.5116%2023.62%2016.8423%2023.399%2017.1209%2023.1205C17.3994%2022.8419%2017.6204%2022.5112%2017.7712%2022.1473C17.9219%2021.7833%2017.9995%2021.3932%2017.9995%2020.9993V19.9993M20.9994%2011.9997C20.9994%2014.9996%2022.9993%2019.9993%2022.9993%2019.9993H7.00006C7.00006%2019.9993%208.99996%2015.9995%208.99996%2011.9997C8.99996%208.73187%2011.7318%206%2014.9997%206C18.2675%206%2020.9994%208.73187%2020.9994%2011.9997Z'%20stroke='%23485299'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e", zt = "data:image/svg+xml,%3csvg%20width='30'%20height='30'%20viewBox='0%200%2030%2030'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_93_4488)'%3e%3cpath%20d='M18%207H21C22.1046%207%2023%207.89543%2023%209V21C23%2022.1046%2022.1046%2023%2021%2023H18M11%2011L7%2015M7%2015L11%2019M7%2015L19%2015'%20stroke='%23485299'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_93_4488'%3e%3crect%20width='30'%20height='30'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e", Dt = "data:image/svg+xml,%3csvg%20width='30'%20height='30'%20viewBox='0%200%2030%2030'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M14%206H16C16.5523%206%2017%206.44772%2017%207V7.56879C17%207.99659%2017.2871%208.36825%2017.6822%208.53228C18.0775%208.69638%2018.5377%208.63384%2018.8403%208.33123L19.2426%207.92891C19.6331%207.53838%2020.2663%207.53838%2020.6568%207.92891L22.071%209.34312C22.4616%209.73365%2022.4615%2010.3668%2022.071%2010.7573L21.6688%2011.1596C21.3661%2011.4622%2021.3036%2011.9225%2021.4677%2012.3177C21.6317%2012.7129%2022.0034%2013%2022.4313%2013L23%2013C23.5523%2013%2024%2013.4477%2024%2014V16C24%2016.5523%2023.5523%2017%2023%2017H22.4312C22.0034%2017%2021.6318%2017.2871%2021.4677%2017.6822C21.3036%2018.0775%2021.3661%2018.5377%2021.6688%2018.8403L22.071%2019.2426C22.4616%2019.6331%2022.4616%2020.2663%2022.071%2020.6568L20.6568%2022.071C20.2663%2022.4616%2019.6331%2022.4616%2019.2426%2022.071L18.8403%2021.6688C18.5377%2021.3661%2018.0775%2021.3036%2017.6822%2021.4677C17.2871%2021.6318%2017%2022.0034%2017%2022.4312V23C17%2023.5523%2016.5523%2024%2016%2024H14C13.4477%2024%2013%2023.5523%2013%2023V22.4313C13%2022.0034%2012.7129%2021.6317%2012.3177%2021.4677C11.9225%2021.3036%2011.4622%2021.3661%2011.1596%2021.6688L10.7573%2022.071C10.3668%2022.4616%209.73363%2022.4616%209.34311%2022.071L7.92889%2020.6568C7.53837%2020.2663%207.53837%2019.6331%207.92889%2019.2426L8.33123%2018.8403C8.63384%2018.5377%208.69638%2018.0775%208.53228%2017.6822C8.36825%2017.2871%207.99659%2017%207.56879%2017H7C6.44772%2017%206%2016.5523%206%2016V14C6%2013.4477%206.44772%2013%207%2013L7.56877%2013C7.99658%2013%208.36825%2012.7129%208.53229%2012.3178C8.6964%2011.9225%208.63386%2011.4623%208.33123%2011.1597L7.92891%2010.7573C7.53838%2010.3668%207.53838%209.73365%207.92891%209.34313L9.34312%207.92891C9.73365%207.53839%2010.3668%207.53839%2010.7573%207.92891L11.1597%208.33123C11.4623%208.63386%2011.9225%208.6964%2012.3178%208.53229C12.7129%208.36825%2013%207.99658%2013%207.56876V7C13%206.44772%2013.4477%206%2014%206Z'%20stroke='%23485299'%20stroke-width='1.5'/%3e%3cpath%20d='M17%2015C17%2016.1046%2016.1046%2017%2015%2017C13.8954%2017%2013%2016.1046%2013%2015C13%2013.8954%2013.8954%2013%2015%2013C16.1046%2013%2017%2013.8954%2017%2015Z'%20stroke='%23485299'%20stroke-width='1.5'/%3e%3c/svg%3e", { Header: $t } = j, G = {
280
+ }, At = "data:image/svg+xml,%3csvg%20width='30'%20height='30'%20viewBox='0%200%2030%2030'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M11.9998%2019.9993V20.9993C11.9998%2021.3932%2012.0774%2021.7833%2012.2282%2022.1473C12.3789%2022.5112%2012.5999%2022.8419%2012.8785%2023.1205C13.157%2023.399%2013.4877%2023.62%2013.8517%2023.7708C14.2156%2023.9215%2014.6057%2023.9991%2014.9997%2023.9991C15.3936%2023.9991%2015.7837%2023.9215%2016.1477%2023.7708C16.5116%2023.62%2016.8423%2023.399%2017.1209%2023.1205C17.3994%2022.8419%2017.6204%2022.5112%2017.7712%2022.1473C17.9219%2021.7833%2017.9995%2021.3932%2017.9995%2020.9993V19.9993M20.9994%2011.9997C20.9994%2014.9996%2022.9993%2019.9993%2022.9993%2019.9993H7.00006C7.00006%2019.9993%208.99996%2015.9995%208.99996%2011.9997C8.99996%208.73187%2011.7318%206%2014.9997%206C18.2675%206%2020.9994%208.73187%2020.9994%2011.9997Z'%20stroke='%23485299'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e", $t = "data:image/svg+xml,%3csvg%20width='30'%20height='30'%20viewBox='0%200%2030%2030'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_93_4488)'%3e%3cpath%20d='M18%207H21C22.1046%207%2023%207.89543%2023%209V21C23%2022.1046%2022.1046%2023%2021%2023H18M11%2011L7%2015M7%2015L11%2019M7%2015L19%2015'%20stroke='%23485299'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_93_4488'%3e%3crect%20width='30'%20height='30'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e", Ft = "data:image/svg+xml,%3csvg%20width='30'%20height='30'%20viewBox='0%200%2030%2030'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M14%206H16C16.5523%206%2017%206.44772%2017%207V7.56879C17%207.99659%2017.2871%208.36825%2017.6822%208.53228C18.0775%208.69638%2018.5377%208.63384%2018.8403%208.33123L19.2426%207.92891C19.6331%207.53838%2020.2663%207.53838%2020.6568%207.92891L22.071%209.34312C22.4616%209.73365%2022.4615%2010.3668%2022.071%2010.7573L21.6688%2011.1596C21.3661%2011.4622%2021.3036%2011.9225%2021.4677%2012.3177C21.6317%2012.7129%2022.0034%2013%2022.4313%2013L23%2013C23.5523%2013%2024%2013.4477%2024%2014V16C24%2016.5523%2023.5523%2017%2023%2017H22.4312C22.0034%2017%2021.6318%2017.2871%2021.4677%2017.6822C21.3036%2018.0775%2021.3661%2018.5377%2021.6688%2018.8403L22.071%2019.2426C22.4616%2019.6331%2022.4616%2020.2663%2022.071%2020.6568L20.6568%2022.071C20.2663%2022.4616%2019.6331%2022.4616%2019.2426%2022.071L18.8403%2021.6688C18.5377%2021.3661%2018.0775%2021.3036%2017.6822%2021.4677C17.2871%2021.6318%2017%2022.0034%2017%2022.4312V23C17%2023.5523%2016.5523%2024%2016%2024H14C13.4477%2024%2013%2023.5523%2013%2023V22.4313C13%2022.0034%2012.7129%2021.6317%2012.3177%2021.4677C11.9225%2021.3036%2011.4622%2021.3661%2011.1596%2021.6688L10.7573%2022.071C10.3668%2022.4616%209.73363%2022.4616%209.34311%2022.071L7.92889%2020.6568C7.53837%2020.2663%207.53837%2019.6331%207.92889%2019.2426L8.33123%2018.8403C8.63384%2018.5377%208.69638%2018.0775%208.53228%2017.6822C8.36825%2017.2871%207.99659%2017%207.56879%2017H7C6.44772%2017%206%2016.5523%206%2016V14C6%2013.4477%206.44772%2013%207%2013L7.56877%2013C7.99658%2013%208.36825%2012.7129%208.53229%2012.3178C8.6964%2011.9225%208.63386%2011.4623%208.33123%2011.1597L7.92891%2010.7573C7.53838%2010.3668%207.53838%209.73365%207.92891%209.34313L9.34312%207.92891C9.73365%207.53839%2010.3668%207.53839%2010.7573%207.92891L11.1597%208.33123C11.4623%208.63386%2011.9225%208.6964%2012.3178%208.53229C12.7129%208.36825%2013%207.99658%2013%207.56876V7C13%206.44772%2013.4477%206%2014%206Z'%20stroke='%23485299'%20stroke-width='1.5'/%3e%3cpath%20d='M17%2015C17%2016.1046%2016.1046%2017%2015%2017C13.8954%2017%2013%2016.1046%2013%2015C13%2013.8954%2013.8954%2013%2015%2013C16.1046%2013%2017%2013.8954%2017%2015Z'%20stroke='%23485299'%20stroke-width='1.5'/%3e%3c/svg%3e", { Header: Wt } = j, G = {
261
281
  light: {
262
282
  headerBg: "#ffffff",
263
283
  headerText: "#000000",
@@ -314,7 +334,7 @@ const Et = ({
314
334
  0: "작게",
315
335
  1: "보통",
316
336
  2: "크게"
317
- }, we = ({ config: n = {}, children: t }) => {
337
+ }, ke = ({ config: n = {}, children: t }) => {
318
338
  const r = {
319
339
  gap: 14,
320
340
  minWidth: 200,
@@ -347,86 +367,88 @@ const Et = ({
347
367
  ...n.logo
348
368
  },
349
369
  right: r
350
- }, s = le(), [i, b] = R("modern"), l = U(null), d = Ze(), {
351
- componentSize: c,
352
- setComponentSize: u,
353
- gridSize: C,
354
- setGridSize: m,
355
- spacingSize: h,
356
- setSpacingSize: N
357
- } = Ye(), v = (g, a) => {
370
+ }, s = le(), [a, b] = R("modern"), l = U(null), c = qe(), {
371
+ componentSize: y,
372
+ setComponentSize: i,
373
+ gridSize: v,
374
+ setGridSize: h,
375
+ spacingSize: u,
376
+ setSpacingSize: x,
377
+ enableProtectWrapper: N,
378
+ setEnableProtectWrapper: p
379
+ } = Ce(), g = (d, w) => {
358
380
  try {
359
- if (!/^[a-zA-Z0-9-]+$/.test(g) || !/^[#a-zA-Z0-9()\s,.-]+$/.test(a)) return;
360
- document.documentElement.style.setProperty(g, a);
361
- } catch (M) {
362
- console.error("CSS variable setting failed:", M);
381
+ if (!/^[a-zA-Z0-9-]+$/.test(d) || !/^[#a-zA-Z0-9()\s,.-]+$/.test(w)) return;
382
+ document.documentElement.style.setProperty(d, w);
383
+ } catch (W) {
384
+ console.error("CSS variable setting failed:", W);
363
385
  }
364
- }, p = (g) => {
365
- if (!G[g]) return;
366
- b(g);
367
- const a = { ...G[g] };
368
- v("--header-bg", a.headerBg), v("--header-text", a.headerText), v("--sidebar-bg", a.sidebarBg), v("--sidebar-text", a.sidebarText), v("--button-primary", a.buttonPrimary), v("--button-primary-hover", a.buttonPrimaryHover), v("--button-primary-active", a.buttonPrimaryActive), v("--button-default", a.buttonDefault), v("--button-default-hover", a.buttonDefaultHover), v("--button-default-border", a.buttonDefaultBorder), v(
386
+ }, P = (d) => {
387
+ if (!G[d]) return;
388
+ b(d);
389
+ const w = { ...G[d] };
390
+ g("--header-bg", w.headerBg), g("--header-text", w.headerText), g("--sidebar-bg", w.sidebarBg), g("--sidebar-text", w.sidebarText), g("--button-primary", w.buttonPrimary), g("--button-primary-hover", w.buttonPrimaryHover), g("--button-primary-active", w.buttonPrimaryActive), g("--button-default", w.buttonDefault), g("--button-default-hover", w.buttonDefaultHover), g("--button-default-border", w.buttonDefaultBorder), g(
369
391
  "--button-permission-border",
370
- a.buttonPermissionBorder
371
- ), l.current && l.current.setAttribute("data-theme", g), document.documentElement.setAttribute("data-theme", g), mt(me, g, 30);
392
+ w.buttonPermissionBorder
393
+ ), l.current && l.current.setAttribute("data-theme", d), document.documentElement.setAttribute("data-theme", d), ht(he, d, 30);
372
394
  };
373
- E(() => {
374
- const g = ut(me);
375
- g && G[g] ? p(g) : p("modern");
395
+ B(() => {
396
+ const d = mt(he);
397
+ d && G[d] ? P(d) : P("modern");
376
398
  }, []);
377
- const w = () => ({ ...G[i] }).headerBg, I = () => {
378
- d(), s("/login");
399
+ const A = () => ({ ...G[a] }).headerBg, E = () => {
400
+ c(), s("/login");
379
401
  };
380
- ue ? ue("HH:mm:ss") : (/* @__PURE__ */ new Date()).toLocaleTimeString("ko-KR");
381
- const D = /* @__PURE__ */ y("div", { style: { padding: "8px 0" }, children: [
382
- /* @__PURE__ */ y("div", { style: { marginBottom: "12px" }, children: [
383
- /* @__PURE__ */ e(Oe, { value: w(), disabled: !0, size: "small" }),
402
+ me ? me("HH:mm:ss") : (/* @__PURE__ */ new Date()).toLocaleTimeString("ko-KR");
403
+ const m = /* @__PURE__ */ C("div", { style: { padding: "8px 0" }, children: [
404
+ /* @__PURE__ */ C("div", { style: { marginBottom: "12px" }, children: [
405
+ /* @__PURE__ */ e(De, { value: A(), disabled: !0, size: "small" }),
384
406
  /* @__PURE__ */ e("span", { style: { marginLeft: "8px", fontSize: "12px" }, children: "현재 테마 색상" })
385
407
  ] }),
386
- /* @__PURE__ */ y("div", { style: { display: "flex", flexDirection: "column", gap: "4px" }, children: [
408
+ /* @__PURE__ */ C("div", { style: { display: "flex", flexDirection: "column", gap: "4px" }, children: [
387
409
  /* @__PURE__ */ e(
388
- L,
410
+ M,
389
411
  {
390
- type: i === "modern" ? "primary" : "default",
412
+ type: a === "modern" ? "primary" : "default",
391
413
  size: "small",
392
- onClick: () => p("modern"),
414
+ onClick: () => P("modern"),
393
415
  style: {
394
416
  textAlign: "left",
395
- backgroundColor: i === "modern" ? G.modern.headerBg : void 0,
396
- color: i === "modern" ? G.modern.headerText : void 0
417
+ backgroundColor: a === "modern" ? G.modern.headerBg : void 0,
418
+ color: a === "modern" ? G.modern.headerText : void 0
397
419
  },
398
420
  children: "모던"
399
421
  },
400
422
  "modern"
401
423
  ),
402
- Object.entries(G).filter(([g]) => g !== "modern").map(([g, a]) => /* @__PURE__ */ e(
403
- L,
424
+ Object.entries(G).filter(([d]) => d !== "modern").map(([d, w]) => /* @__PURE__ */ e(
425
+ M,
404
426
  {
405
- type: i === g ? "primary" : "default",
427
+ type: a === d ? "primary" : "default",
406
428
  size: "small",
407
- onClick: () => p(g),
429
+ onClick: () => P(d),
408
430
  style: {
409
431
  textAlign: "left",
410
- backgroundColor: i === g ? a.headerBg : void 0,
411
- color: i === g ? a.headerText : void 0
432
+ backgroundColor: a === d ? w.headerBg : void 0,
433
+ color: a === d ? w.headerText : void 0
412
434
  },
413
- children: g
435
+ children: d
414
436
  },
415
- g
437
+ d
416
438
  ))
417
439
  ] }),
418
- /* @__PURE__ */ e(Re, {}),
419
- /* @__PURE__ */ y("div", { style: { marginTop: "8px" }, children: [
440
+ /* @__PURE__ */ e(ue, {}),
441
+ /* @__PURE__ */ C("div", { style: { marginTop: "8px" }, children: [
420
442
  /* @__PURE__ */ e("div", { style: { marginBottom: "8px", fontSize: "12px" }, children: "컴포넌트 크기" }),
421
443
  /* @__PURE__ */ e(
422
444
  te,
423
445
  {
424
446
  marks: re,
425
- value: c,
447
+ value: y,
426
448
  min: 0,
427
449
  max: 2,
428
450
  step: 1,
429
- onChange: (g) => u(g)
451
+ onChange: (d) => i(d)
430
452
  }
431
453
  ),
432
454
  /* @__PURE__ */ e(
@@ -440,11 +462,11 @@ const Et = ({
440
462
  te,
441
463
  {
442
464
  marks: re,
443
- value: C,
465
+ value: v,
444
466
  min: 0,
445
467
  max: 2,
446
468
  step: 1,
447
- onChange: (g) => m(g)
469
+ onChange: (d) => h(d)
448
470
  }
449
471
  ),
450
472
  /* @__PURE__ */ e(
@@ -458,17 +480,39 @@ const Et = ({
458
480
  te,
459
481
  {
460
482
  marks: re,
461
- value: h,
483
+ value: u,
462
484
  min: 0,
463
485
  max: 2,
464
486
  step: 1,
465
- onChange: (g) => N(g)
487
+ onChange: (d) => x(d)
488
+ }
489
+ ),
490
+ /* @__PURE__ */ e(ue, {}),
491
+ /* @__PURE__ */ C(
492
+ "div",
493
+ {
494
+ style: {
495
+ marginTop: "16px",
496
+ display: "flex",
497
+ justifyContent: "space-between",
498
+ alignItems: "center"
499
+ },
500
+ children: [
501
+ /* @__PURE__ */ e("span", { children: "화면 보호 활성화" }),
502
+ /* @__PURE__ */ e(
503
+ ze,
504
+ {
505
+ checked: N,
506
+ onChange: p
507
+ }
508
+ )
509
+ ]
466
510
  }
467
511
  )
468
512
  ] })
469
513
  ] });
470
- return /* @__PURE__ */ y(
471
- $t,
514
+ return /* @__PURE__ */ C(
515
+ Wt,
472
516
  {
473
517
  className: o.wrapper.className,
474
518
  style: { ...o.wrapper.style },
@@ -494,7 +538,7 @@ const Et = ({
494
538
  children: t
495
539
  }
496
540
  ),
497
- /* @__PURE__ */ y(
541
+ /* @__PURE__ */ C(
498
542
  "div",
499
543
  {
500
544
  className: "header-right",
@@ -503,29 +547,29 @@ const Et = ({
503
547
  minWidth: o.right?.minWidth
504
548
  },
505
549
  children: [
506
- o.right?.items?.map((g, a) => /* @__PURE__ */ e("div", { children: g }, a)),
550
+ o.right?.items?.map((d, w) => /* @__PURE__ */ e("div", { children: d }, w)),
507
551
  o.right?.alarm?.visible && /* @__PURE__ */ e(
508
- L,
552
+ M,
509
553
  {
510
554
  type: "text",
511
- icon: /* @__PURE__ */ e("img", { src: Rt, alt: "알림" }),
555
+ icon: /* @__PURE__ */ e("img", { src: At, alt: "알림" }),
512
556
  className: "alarm-btn",
513
557
  onClick: o.right?.alarm?.onClick
514
558
  }
515
559
  ),
516
560
  o.right?.theme?.visible && /* @__PURE__ */ e(
517
- ze,
561
+ Ae,
518
562
  {
519
- content: D,
563
+ content: m,
520
564
  title: "테마 설정",
521
565
  trigger: "click",
522
566
  placement: "bottomRight",
523
- onOpenChange: (g) => o.right?.theme?.onOpenChange?.(g),
567
+ onOpenChange: (d) => o.right?.theme?.onOpenChange?.(d),
524
568
  children: /* @__PURE__ */ e(
525
- L,
569
+ M,
526
570
  {
527
571
  type: "text",
528
- icon: /* @__PURE__ */ e("img", { src: Dt, alt: "개인설정" }),
572
+ icon: /* @__PURE__ */ e("img", { src: Ft, alt: "개인설정" }),
529
573
  className: "theme-btn",
530
574
  onClick: o.right?.theme?.onClick
531
575
  }
@@ -533,18 +577,18 @@ const Et = ({
533
577
  }
534
578
  ),
535
579
  o.right?.logout?.visible && /* @__PURE__ */ e(
536
- L,
580
+ M,
537
581
  {
538
582
  type: "text",
539
- icon: /* @__PURE__ */ e("img", { src: zt, alt: "로그아웃" }),
540
- onClick: o.right?.logout?.onClick || I,
583
+ icon: /* @__PURE__ */ e("img", { src: $t, alt: "로그아웃" }),
584
+ onClick: o.right?.logout?.onClick || E,
541
585
  className: "logout-btn"
542
586
  }
543
587
  ),
544
588
  o.right?.avatar?.visible && /* @__PURE__ */ e(
545
- De,
589
+ $e,
546
590
  {
547
- icon: /* @__PURE__ */ e(Je, {}),
591
+ icon: /* @__PURE__ */ e(et, {}),
548
592
  className: "avatar",
549
593
  style: {
550
594
  width: o.right?.avatar?.width,
@@ -598,59 +642,59 @@ const Et = ({
598
642
  return t + " " + r + "ms " + o;
599
643
  }
600
644
  }
601
- }), At = ce(
645
+ }), _t = ce(
602
646
  ({ className: n, ...t }) => {
603
647
  const r = U(null), {
604
648
  attributes: o,
605
649
  listeners: s,
606
- transform: i,
650
+ transform: a,
607
651
  transition: b,
608
652
  isDragging: l,
609
- setNodeRef: d
610
- } = xt({ id: t["data-node-key"] }), [c, u] = R();
611
- E(() => {
612
- const m = r.current;
613
- if (m)
653
+ setNodeRef: c
654
+ } = kt({ id: t["data-node-key"] }), [y, i] = R();
655
+ B(() => {
656
+ const h = r.current;
657
+ if (h)
614
658
  if (l) {
615
- const h = Math.round(m.getBoundingClientRect().width);
616
- u(h);
659
+ const u = Math.round(h.getBoundingClientRect().width);
660
+ i(u);
617
661
  } else
618
- u(void 0);
662
+ i(void 0);
619
663
  }, [l]);
620
- const C = {
664
+ const v = {
621
665
  ...t.style,
622
- transform: i ? ae.Transform.toString(i) : void 0,
666
+ transform: a ? ae.Transform.toString(a) : void 0,
623
667
  transition: b ?? "transform 0.16s ease",
624
668
  cursor: "grab",
625
669
  userSelect: "none",
626
670
  willChange: "transform",
627
671
  // ✅ 드래그 중 픽셀 폭 고정 (flex 재계산 억제)
628
- width: c ?? void 0,
629
- minWidth: c ?? void 0,
630
- maxWidth: c ?? void 0,
631
- flex: c !== void 0 ? "0 0 auto" : void 0
672
+ width: y ?? void 0,
673
+ minWidth: y ?? void 0,
674
+ maxWidth: y ?? void 0,
675
+ flex: y !== void 0 ? "0 0 auto" : void 0
632
676
  };
633
- return Ke(t.children, {
634
- ref: (m) => {
635
- r.current !== m && (r.current = m), d(m);
677
+ return Ze(t.children, {
678
+ ref: (h) => {
679
+ r.current !== h && (r.current = h), c(h);
636
680
  },
637
- style: C,
681
+ style: v,
638
682
  ...o,
639
683
  ...s
640
684
  });
641
685
  }
642
- ), Ft = ce(function({
686
+ ), Gt = ce(function({
643
687
  config: t,
644
688
  isFirst: r,
645
689
  isLast: o,
646
690
  canCloseAll: s,
647
- onFirst: i,
691
+ onFirst: a,
648
692
  onPrev: b,
649
693
  onNext: l,
650
- onLast: d,
651
- onCloseAll: c
694
+ onLast: c,
695
+ onCloseAll: y
652
696
  }) {
653
- return /* @__PURE__ */ y("div", { className: t.wrapper?.className, style: t.wrapper?.style, children: [
697
+ return /* @__PURE__ */ C("div", { className: t.wrapper?.className, style: t.wrapper?.style, children: [
654
698
  /* @__PURE__ */ e(
655
699
  K,
656
700
  {
@@ -658,13 +702,13 @@ const Et = ({
658
702
  className: t.tooltip?.className,
659
703
  style: t.tooltip?.style,
660
704
  children: /* @__PURE__ */ e(
661
- L,
705
+ M,
662
706
  {
663
707
  className: t.buttons?.className,
664
708
  style: t.buttons?.style,
665
709
  size: "small",
666
- icon: /* @__PURE__ */ e(et, {}),
667
- onClick: i,
710
+ icon: /* @__PURE__ */ e(tt, {}),
711
+ onClick: a,
668
712
  disabled: r
669
713
  }
670
714
  )
@@ -677,12 +721,12 @@ const Et = ({
677
721
  className: t.tooltip?.className,
678
722
  style: t.tooltip?.style,
679
723
  children: /* @__PURE__ */ e(
680
- L,
724
+ M,
681
725
  {
682
726
  className: t.buttons?.className,
683
727
  style: t.buttons?.style,
684
728
  size: "small",
685
- icon: /* @__PURE__ */ e(tt, {}),
729
+ icon: /* @__PURE__ */ e(nt, {}),
686
730
  onClick: b,
687
731
  disabled: r
688
732
  }
@@ -696,12 +740,12 @@ const Et = ({
696
740
  className: t.tooltip?.className,
697
741
  style: t.tooltip?.style,
698
742
  children: /* @__PURE__ */ e(
699
- L,
743
+ M,
700
744
  {
701
745
  className: t.buttons?.className,
702
746
  style: t.buttons?.style,
703
747
  size: "small",
704
- icon: /* @__PURE__ */ e(nt, {}),
748
+ icon: /* @__PURE__ */ e(rt, {}),
705
749
  onClick: l,
706
750
  disabled: o
707
751
  }
@@ -715,13 +759,13 @@ const Et = ({
715
759
  className: t.tooltip?.className,
716
760
  style: t.tooltip?.style,
717
761
  children: /* @__PURE__ */ e(
718
- L,
762
+ M,
719
763
  {
720
764
  className: t.buttons?.className,
721
765
  style: t.buttons?.style,
722
766
  size: "small",
723
- icon: /* @__PURE__ */ e(rt, {}),
724
- onClick: d,
767
+ icon: /* @__PURE__ */ e(ot, {}),
768
+ onClick: c,
725
769
  disabled: o
726
770
  }
727
771
  )
@@ -734,20 +778,20 @@ const Et = ({
734
778
  className: t.tooltip?.className,
735
779
  style: t.tooltip?.style,
736
780
  children: /* @__PURE__ */ e(
737
- L,
781
+ M,
738
782
  {
739
783
  className: t.buttons?.className,
740
784
  style: t.buttons?.style,
741
785
  size: "small",
742
- icon: /* @__PURE__ */ e(ye, {}),
743
- onClick: c,
786
+ icon: /* @__PURE__ */ e(ve, {}),
787
+ onClick: y,
744
788
  disabled: !s
745
789
  }
746
790
  )
747
791
  }
748
792
  )
749
793
  ] });
750
- }), Wt = ({
794
+ }), Ht = ({
751
795
  config: n = {}
752
796
  }) => {
753
797
  const t = {
@@ -775,72 +819,72 @@ const Et = ({
775
819
  ...n?.nav
776
820
  },
777
821
  ...n
778
- }, r = A((a) => a.tabs), o = A((a) => a.activeMenuId), s = A((a) => a.focusTab), i = A((a) => a.closeTab), b = A((a) => a.reorderTabs), l = ht(
779
- pt(gt, { activationConstraint: { distance: 6 } })
780
- ), d = (a) => {
781
- s(a);
782
- }, c = (a, M) => {
783
- M === "remove" && typeof a == "string" && i(a);
784
- }, u = () => {
822
+ }, r = F((m) => m.tabs), o = F((m) => m.activeMenuId), s = F((m) => m.focusTab), a = F((m) => m.closeTab), b = F((m) => m.reorderTabs), l = pt(
823
+ gt(ft, { activationConstraint: { distance: 6 } })
824
+ ), c = (m) => {
825
+ s(m);
826
+ }, y = (m, d) => {
827
+ d === "remove" && typeof m == "string" && a(m);
828
+ }, i = () => {
785
829
  r.length > 0 && s(r[0].key);
786
- }, C = () => {
830
+ }, v = () => {
787
831
  if (!o || r.length <= 1) return;
788
- const a = r.findIndex((M) => M.key === o);
789
- a > 0 && s(r[a - 1].key);
790
- }, m = () => {
791
- if (!o || r.length <= 1) return;
792
- const a = r.findIndex((M) => M.key === o);
793
- a < r.length - 1 && s(r[a + 1].key);
832
+ const m = r.findIndex((d) => d.key === o);
833
+ m > 0 && s(r[m - 1].key);
794
834
  }, h = () => {
835
+ if (!o || r.length <= 1) return;
836
+ const m = r.findIndex((d) => d.key === o);
837
+ m < r.length - 1 && s(r[m + 1].key);
838
+ }, u = () => {
795
839
  r.length > 0 && s(r[r.length - 1].key);
796
- }, N = () => {
797
- r.forEach((a) => {
798
- i(a.key);
840
+ }, x = () => {
841
+ r.forEach((m) => {
842
+ a(m.key);
799
843
  });
800
- }, v = o ? r.findIndex((a) => a.key === o) : -1, p = v === 0, w = v === r.length - 1, I = F(
801
- () => r.map((a) => ({
802
- key: a.key,
803
- label: a.label,
844
+ }, N = o ? r.findIndex((m) => m.key === o) : -1, p = N === 0, g = N === r.length - 1, P = _(
845
+ () => r.map((m) => ({
846
+ key: m.key,
847
+ label: m.label,
804
848
  closable: !0,
805
849
  children: null
806
850
  // 컨텐츠는 Main 쪽에서 렌더 → 여기선 헤더만 필요
807
851
  })),
808
852
  [r]
809
- ), D = z(
810
- ({ active: a, over: M }) => {
811
- if (!M || a.id === M.id) return;
812
- const T = r.findIndex(($) => $.key === a.id), _ = r.findIndex(($) => $.key === M.id);
813
- if (T < 0 || _ < 0 || T === _) return;
814
- const ee = r.map(($) => $.key), Z = Ct(ee, T, _);
853
+ ), A = D(
854
+ ({ active: m, over: d }) => {
855
+ if (!d || m.id === d.id) return;
856
+ const w = r.findIndex(($) => $.key === m.id), W = r.findIndex(($) => $.key === d.id);
857
+ if (w < 0 || W < 0 || w === W) return;
858
+ const ee = r.map(($) => $.key), Z = vt(ee, w, W);
815
859
  b?.(Z);
816
860
  },
817
861
  [r, b]
818
- ), g = z(
819
- (a, M) => /* @__PURE__ */ e(
820
- ft,
862
+ ), E = D(
863
+ (m, d) => /* @__PURE__ */ e(
864
+ bt,
821
865
  {
822
866
  sensors: l,
823
- onDragEnd: D,
824
- collisionDetection: bt,
825
- modifiers: [yt],
867
+ onDragEnd: A,
868
+ collisionDetection: yt,
869
+ modifiers: [Ct],
826
870
  children: /* @__PURE__ */ e(
827
- vt,
871
+ wt,
828
872
  {
829
- items: r.map((T) => T.key),
830
- strategy: wt,
831
- children: /* @__PURE__ */ e(M, { ...a, children: (T) => /* @__PURE__ */ be(
832
- At,
873
+ items: r.map((w) => w.key),
874
+ strategy: xt,
875
+ children: /* @__PURE__ */ e(d, { ...m, children: (w) => /* @__PURE__ */ ye(
876
+ _t,
833
877
  {
834
- ...T.props,
835
- key: T.key
878
+ ...w.props,
879
+ key: w.key
836
880
  },
837
- T
881
+ w
838
882
  ) })
839
883
  }
840
884
  )
841
885
  }
842
886
  ),
843
- [l, D, r]
887
+ [l, A, r]
844
888
  );
845
889
  return /* @__PURE__ */ e(
846
890
  "div",
@@ -851,36 +895,36 @@ const Et = ({
851
895
  display: r.length === 0 ? "none" : "block"
852
896
  },
853
897
  children: /* @__PURE__ */ e(
854
- $e,
898
+ Fe,
855
899
  {
856
900
  type: "editable-card",
857
901
  activeKey: o || void 0,
858
- onChange: d,
859
- onEdit: c,
902
+ onChange: c,
903
+ onEdit: y,
860
904
  className: t.tabs.className,
861
905
  style: t.tabs.style,
862
906
  hideAdd: !0,
863
- items: I,
907
+ items: P,
864
908
  tabBarExtraContent: /* @__PURE__ */ e(
865
- Ft,
909
+ Gt,
866
910
  {
867
911
  config: t?.nav,
868
912
  isFirst: !!p,
869
- isLast: !!w,
913
+ isLast: !!g,
870
914
  canCloseAll: r.length > 0,
871
- onFirst: u,
872
- onPrev: C,
873
- onNext: m,
874
- onLast: h,
875
- onCloseAll: N
915
+ onFirst: i,
916
+ onPrev: v,
917
+ onNext: h,
918
+ onLast: u,
919
+ onCloseAll: x
876
920
  }
877
921
  ),
878
- renderTabBar: g
922
+ renderTabBar: E
879
923
  }
880
924
  )
881
925
  }
882
926
  );
883
- }, { Sider: Gt } = j, _t = ({
927
+ }, { Sider: Vt } = j, jt = ({
884
928
  config: n = {}
885
929
  }) => {
886
930
  const t = {
@@ -922,15 +966,15 @@ const Et = ({
922
966
  ...n?.style
923
967
  },
924
968
  ...n
925
- }, [r, o] = R(""), [s, i] = R(
969
+ }, [r, o] = R(""), [s, a] = R(
926
970
  "category"
927
- ), [b, l] = R([]), { activeMenuId: d, sidebarCollapsed: c, openTabFromMenu: u, toggleSidebar: C } = A(), { menuList: m, isLoading: h, error: N, findMenuById: v, flatMenuList: p } = J(), { nodes: w, treeNodes: I, loadFavoritesIfNeeded: D } = qe(), g = F(() => {
928
- const k = [], x = (f, P = 0) => {
971
+ ), [b, l] = R([]), { activeMenuId: c, sidebarCollapsed: y, openTabFromMenu: i, toggleSidebar: v } = F(), { menuList: h, isLoading: u, error: x, findMenuById: N, flatMenuList: p } = J(), { nodes: g, treeNodes: P, loadFavoritesIfNeeded: A } = Qe(), E = _(() => {
972
+ const I = [], k = (f, S = 0) => {
929
973
  if (f.menuGbCd === t.menuGubunCode.program && f.scrnPath) {
930
- const S = " ".repeat(P), O = f.menuNo || "";
931
- k.push({
974
+ const L = " ".repeat(S), O = f.menuNo || "";
975
+ I.push({
932
976
  value: f.menuId,
933
- label: /* @__PURE__ */ y(
977
+ label: /* @__PURE__ */ C(
934
978
  "div",
935
979
  {
936
980
  style: {
@@ -939,8 +983,8 @@ const Et = ({
939
983
  alignItems: "center"
940
984
  },
941
985
  children: [
942
- /* @__PURE__ */ y("span", { children: [
943
- S,
986
+ /* @__PURE__ */ C("span", { children: [
987
+ L,
944
988
  f.menuNm
945
989
  ] }),
946
990
  /* @__PURE__ */ e(
@@ -963,26 +1007,26 @@ const Et = ({
963
1007
  menuItem: f
964
1008
  });
965
1009
  }
966
- f.children && f.children.length > 0 && f.children.forEach((S) => x(S, P + 1));
1010
+ f.children && f.children.length > 0 && f.children.forEach((L) => k(L, S + 1));
967
1011
  };
968
- return m.forEach((f) => x(f)), k;
969
- }, [m]), a = F(() => r.trim() ? g.filter((k) => {
970
- const x = k.menuItem.menuNm.toLowerCase(), f = String(k.menuItem.menuNo || "미지정").toLowerCase(), P = r.toLowerCase();
971
- return x.includes(P) || f.includes(P);
972
- }) : [], [g, r]), M = (k) => {
973
- if (!k || typeof k != "string") {
974
- console.warn("Invalid menu selection value:", k);
1012
+ return h.forEach((f) => k(f)), I;
1013
+ }, [h]), m = _(() => r.trim() ? E.filter((I) => {
1014
+ const k = I.menuItem.menuNm.toLowerCase(), f = String(I.menuItem.menuNo || "미지정").toLowerCase(), S = r.toLowerCase();
1015
+ return k.includes(S) || f.includes(S);
1016
+ }) : [], [E, r]), d = (I) => {
1017
+ if (!I || typeof I != "string") {
1018
+ console.warn("Invalid menu selection value:", I);
975
1019
  return;
976
1020
  }
977
- if (!/^[a-zA-Z0-9_-]+$/.test(k)) {
978
- console.warn("Invalid menu ID format:", k);
1021
+ if (!/^[a-zA-Z0-9_-]+$/.test(I)) {
1022
+ console.warn("Invalid menu ID format:", I);
979
1023
  return;
980
1024
  }
981
- const x = g.find(
982
- (f) => f.value === k
1025
+ const k = E.find(
1026
+ (f) => f.value === I
983
1027
  );
984
- if (x) {
985
- const { menuItem: f } = x;
1028
+ if (k) {
1029
+ const { menuItem: f } = k;
986
1030
  if (!f || !f.menuId || !f.menuNm) {
987
1031
  console.warn("Invalid menu item:", f);
988
1032
  return;
@@ -996,23 +1040,23 @@ const Et = ({
996
1040
  f.scrnPath,
997
1041
  "scrnId:",
998
1042
  f.scrnId
999
- ), u(f)) : (f.menuGbCd === t.menuGubunCode.mainMenu || f.menuGbCd === t.menuGubunCode.subMenu) && (console.log("❌ 검색으로 메인/서브 메뉴 선택 - 이벤트 무시"), console.log("메뉴명:", f.menuNm, "menuGbCd:", f.menuGbCd)), o("");
1043
+ ), i(f)) : (f.menuGbCd === t.menuGubunCode.mainMenu || f.menuGbCd === t.menuGubunCode.subMenu) && (console.log("❌ 검색으로 메인/서브 메뉴 선택 - 이벤트 무시"), console.log("메뉴명:", f.menuNm, "menuGbCd:", f.menuGbCd)), o("");
1000
1044
  }
1001
- }, T = z(
1002
- (k) => {
1003
- const x = v(k);
1004
- x?.menuGbCd === t.menuGubunCode.program && (console.log(
1045
+ }, w = D(
1046
+ (I) => {
1047
+ const k = N(I);
1048
+ k?.menuGbCd === t.menuGubunCode.program && (console.log(
1005
1049
  "메뉴명:",
1006
- x.menuNm,
1050
+ k.menuNm,
1007
1051
  "경로:",
1008
- x.scrnPath,
1052
+ k.scrnPath,
1009
1053
  "scrnId:",
1010
- x.scrnId
1011
- ), u(x));
1054
+ k.scrnId
1055
+ ), i(k));
1012
1056
  },
1013
- [v, u]
1014
- ), _ = z((k) => k.map((x) => ({
1015
- key: x.menuId,
1057
+ [N, i]
1058
+ ), W = D((I) => I.map((k) => ({
1059
+ key: k.menuId,
1016
1060
  label: /* @__PURE__ */ e(
1017
1061
  "div",
1018
1062
  {
@@ -1021,19 +1065,19 @@ const Et = ({
1021
1065
  justifyContent: "space-between",
1022
1066
  alignItems: "center"
1023
1067
  },
1024
- children: /* @__PURE__ */ e("span", { children: x.menuNm })
1068
+ children: /* @__PURE__ */ e("span", { children: k.menuNm })
1025
1069
  }
1026
1070
  ),
1027
- icon: ee(x.iconCd, x.menuGbCd),
1028
- children: x.children && x.children.length > 0 ? _(x.children) : void 0
1029
- })), []), ee = (k, x) => {
1030
- if (k) {
1031
- const f = Q[k];
1071
+ icon: ee(k.iconCd, k.menuGbCd),
1072
+ children: k.children && k.children.length > 0 ? W(k.children) : void 0
1073
+ })), []), ee = (I, k) => {
1074
+ if (I) {
1075
+ const f = Q[I];
1032
1076
  if (f)
1033
1077
  return /* @__PURE__ */ e(f, {});
1034
1078
  }
1035
- if (x)
1036
- switch (x) {
1079
+ if (k)
1080
+ switch (k) {
1037
1081
  case t.menuGubunCode.mainMenu:
1038
1082
  return /* @__PURE__ */ e(Q.HomeOutlined, {});
1039
1083
  case t.menuGubunCode.subMenu:
@@ -1044,66 +1088,66 @@ const Et = ({
1044
1088
  return null;
1045
1089
  }
1046
1090
  return null;
1047
- }, Z = z(
1048
- (k) => {
1049
- if (m.length === 0) return [];
1050
- const x = (P) => {
1051
- if (P)
1052
- return typeof P == "string" ? w[P] : P;
1053
- }, f = (P) => {
1054
- if (P.type === "M") {
1055
- const S = P, O = v(S.menuId) || void 0, B = !!O, ke = B ? `${O?.menuNm ?? S.menuNm ?? S.menuId}` : `${S.menuNm ?? S.menuId} (삭제됨)`;
1091
+ }, Z = D(
1092
+ (I) => {
1093
+ if (h.length === 0) return [];
1094
+ const k = (S) => {
1095
+ if (S)
1096
+ return typeof S == "string" ? g[S] : S;
1097
+ }, f = (S) => {
1098
+ if (S.type === "M") {
1099
+ const L = S, O = N(L.menuId) || void 0, T = !!O, Ne = T ? `${O?.menuNm ?? L.menuNm ?? L.menuId}` : `${L.menuNm ?? L.menuId} (삭제됨)`;
1056
1100
  return {
1057
- key: S.menuId,
1058
- label: ke,
1059
- icon: B ? void 0 : /* @__PURE__ */ e(it, { style: { color: "#faad14" } })
1101
+ key: L.menuId,
1102
+ label: Ne,
1103
+ icon: T ? void 0 : /* @__PURE__ */ e(lt, { style: { color: "#faad14" } })
1060
1104
  };
1061
1105
  } else {
1062
- const S = P, O = (S.children ?? []).map(x).filter(Boolean).map(f);
1106
+ const L = S, O = (L.children ?? []).map(k).filter(Boolean).map(f);
1063
1107
  return {
1064
- key: S.bkmkId,
1065
- label: S.bkmkNm ?? S.bkmkId,
1066
- icon: S.prntBkmkId === "-" ? /* @__PURE__ */ e(lt, {}) : /* @__PURE__ */ e(ct, {}),
1108
+ key: L.bkmkId,
1109
+ label: L.bkmkNm ?? L.bkmkId,
1110
+ icon: L.prntBkmkId === "-" ? /* @__PURE__ */ e(ct, {}) : /* @__PURE__ */ e(dt, {}),
1067
1111
  children: O
1068
1112
  // 빈 배열이면 자동으로 말아줌
1069
1113
  };
1070
1114
  }
1071
1115
  };
1072
- return k.map(f);
1116
+ return I.map(f);
1073
1117
  },
1074
- [v, w, m]
1075
- ), $ = F(
1076
- () => Z(I),
1077
- [Z, I, w]
1118
+ [N, g, h]
1119
+ ), $ = _(
1120
+ () => Z(P),
1121
+ [Z, P, g]
1078
1122
  );
1079
- return E(() => {
1080
- he() && D(he());
1081
- }, [D]), E(() => {
1123
+ return B(() => {
1124
+ pe() && A(pe());
1125
+ }, [A]), B(() => {
1082
1126
  s === "category" && o("");
1083
- }, [s]), E(() => {
1084
- if (!d || s !== "category") return;
1085
- const x = ((f) => {
1086
- const P = [], S = new Map(p.map((B) => [B.menuId, B]));
1127
+ }, [s]), B(() => {
1128
+ if (!c || s !== "category") return;
1129
+ const k = ((f) => {
1130
+ const S = [], L = new Map(p.map((T) => [T.menuId, T]));
1087
1131
  let O = f;
1088
1132
  for (; O; ) {
1089
- const B = S.get(O);
1090
- if (!B) break;
1091
- if (B.menuPrntId && B.menuPrntId !== "-" && B.menuPrntId !== "")
1092
- P.push(B.menuPrntId), O = B.menuPrntId;
1133
+ const T = L.get(O);
1134
+ if (!T) break;
1135
+ if (T.menuPrntId && T.menuPrntId !== "-" && T.menuPrntId !== "")
1136
+ S.push(T.menuPrntId), O = T.menuPrntId;
1093
1137
  else
1094
1138
  break;
1095
1139
  }
1096
- return P;
1097
- })(d);
1098
- x.length > 0 && l((f) => {
1099
- const P = /* @__PURE__ */ new Set([...f, ...x]);
1100
- return Array.from(P);
1140
+ return S;
1141
+ })(c);
1142
+ k.length > 0 && l((f) => {
1143
+ const S = /* @__PURE__ */ new Set([...f, ...k]);
1144
+ return Array.from(S);
1101
1145
  });
1102
- }, [d, s, p]), /* @__PURE__ */ y(
1103
- Gt,
1146
+ }, [c, s, p]), /* @__PURE__ */ C(
1147
+ Vt,
1104
1148
  {
1105
1149
  className: t.className.wrapper,
1106
- collapsed: t.collapsed || c,
1150
+ collapsed: t.collapsed || y,
1107
1151
  trigger: null,
1108
1152
  width: t.width || 230,
1109
1153
  children: [
@@ -1128,10 +1172,10 @@ const Et = ({
1128
1172
  transition: "all 0.3s ease"
1129
1173
  },
1130
1174
  children: /* @__PURE__ */ e(
1131
- L,
1175
+ M,
1132
1176
  {
1133
1177
  type: "text",
1134
- icon: t.collapsed || c ? /* @__PURE__ */ e(ot, {}) : /* @__PURE__ */ e(st, {}),
1178
+ icon: t.collapsed || y ? /* @__PURE__ */ e(st, {}) : /* @__PURE__ */ e(at, {}),
1135
1179
  style: {
1136
1180
  fontSize: "12px",
1137
1181
  color: "#787878",
@@ -1143,23 +1187,23 @@ const Et = ({
1143
1187
  justifyContent: "center",
1144
1188
  borderRadius: "0 10px 10px 0"
1145
1189
  },
1146
- onClick: C
1190
+ onClick: v
1147
1191
  }
1148
1192
  )
1149
1193
  }
1150
1194
  ),
1151
- !(t.collapsed || c) && /* @__PURE__ */ e(
1195
+ !(t.collapsed || y) && /* @__PURE__ */ e(
1152
1196
  "div",
1153
1197
  {
1154
1198
  style: {
1155
1199
  padding: 10
1156
1200
  },
1157
1201
  children: /* @__PURE__ */ e(
1158
- Ae,
1202
+ We,
1159
1203
  {
1160
1204
  value: r,
1161
- options: a,
1162
- onSelect: M,
1205
+ options: m,
1206
+ onSelect: d,
1163
1207
  onSearch: o,
1164
1208
  style: { width: "100%" },
1165
1209
  allowClear: !0,
@@ -1198,7 +1242,7 @@ const Et = ({
1198
1242
  )
1199
1243
  }
1200
1244
  ),
1201
- !(t.collapsed || c) && /* @__PURE__ */ e(
1245
+ !(t.collapsed || y) && /* @__PURE__ */ e(
1202
1246
  "div",
1203
1247
  {
1204
1248
  style: {
@@ -1207,18 +1251,18 @@ const Et = ({
1207
1251
  marginBottom: "10px"
1208
1252
  },
1209
1253
  children: /* @__PURE__ */ e(
1210
- Fe,
1254
+ _e,
1211
1255
  {
1212
1256
  className: t.className.segmented.wrapper,
1213
1257
  options: [
1214
1258
  {
1215
- label: /* @__PURE__ */ y(V, { children: [
1259
+ label: /* @__PURE__ */ C(V, { children: [
1216
1260
  /* @__PURE__ */ e(
1217
1261
  "span",
1218
1262
  {
1219
1263
  className: t.className.segmented.item,
1220
1264
  style: { display: "flex", alignItems: "center" },
1221
- children: /* @__PURE__ */ y(
1265
+ children: /* @__PURE__ */ C(
1222
1266
  "svg",
1223
1267
  {
1224
1268
  xmlns: "http://www.w3.org/2000/svg",
@@ -1267,7 +1311,7 @@ const Et = ({
1267
1311
  value: "category"
1268
1312
  },
1269
1313
  {
1270
- label: /* @__PURE__ */ y(V, { children: [
1314
+ label: /* @__PURE__ */ C(V, { children: [
1271
1315
  /* @__PURE__ */ e(
1272
1316
  "span",
1273
1317
  {
@@ -1300,8 +1344,8 @@ const Et = ({
1300
1344
  }
1301
1345
  ],
1302
1346
  value: s,
1303
- onChange: (k) => {
1304
- i(k);
1347
+ onChange: (I) => {
1348
+ a(I);
1305
1349
  },
1306
1350
  style: {
1307
1351
  width: "100%"
@@ -1311,8 +1355,8 @@ const Et = ({
1311
1355
  )
1312
1356
  }
1313
1357
  ),
1314
- /* @__PURE__ */ y("div", { className: t.className.sider.content, children: [
1315
- h && /* @__PURE__ */ y(
1358
+ /* @__PURE__ */ C("div", { className: t.className.sider.content, children: [
1359
+ u && /* @__PURE__ */ C(
1316
1360
  "div",
1317
1361
  {
1318
1362
  className: t.className.sider.loading,
@@ -1324,7 +1368,7 @@ const Et = ({
1324
1368
  },
1325
1369
  children: [
1326
1370
  /* @__PURE__ */ e(
1327
- We,
1371
+ Ge,
1328
1372
  {
1329
1373
  theme: {
1330
1374
  components: {
@@ -1347,16 +1391,16 @@ const Et = ({
1347
1391
  ]
1348
1392
  }
1349
1393
  ),
1350
- N && /* @__PURE__ */ y("div", { className: t.className.sider.error, children: [
1394
+ x && /* @__PURE__ */ C("div", { className: t.className.sider.error, children: [
1351
1395
  /* @__PURE__ */ e(
1352
- at,
1396
+ it,
1353
1397
  {
1354
1398
  className: t.className.sider.errorIcon
1355
1399
  }
1356
1400
  ),
1357
1401
  /* @__PURE__ */ e("div", { className: t.className.sider.errorText, children: "메뉴 로드 실패" })
1358
1402
  ] }),
1359
- !h && !N && s === "category" && m.length === 0 && /* @__PURE__ */ e(
1403
+ !u && !x && s === "category" && h.length === 0 && /* @__PURE__ */ e(
1360
1404
  "div",
1361
1405
  {
1362
1406
  style: {
@@ -1368,7 +1412,7 @@ const Et = ({
1368
1412
  children: "메뉴가 없습니다"
1369
1413
  }
1370
1414
  ),
1371
- !h && !N && s === "favorite" && $.length === 0 && /* @__PURE__ */ e(
1415
+ !u && !x && s === "favorite" && $.length === 0 && /* @__PURE__ */ e(
1372
1416
  "div",
1373
1417
  {
1374
1418
  style: {
@@ -1380,28 +1424,28 @@ const Et = ({
1380
1424
  children: "즐겨찾기된 메뉴가 없습니다"
1381
1425
  }
1382
1426
  ),
1383
- !h && !N && s === "category" && m.length > 0 && /* @__PURE__ */ e("div", { className: t.className.sider.menuContainer, children: /* @__PURE__ */ e(
1427
+ !u && !x && s === "category" && h.length > 0 && /* @__PURE__ */ e("div", { className: t.className.sider.menuContainer, children: /* @__PURE__ */ e(
1384
1428
  se,
1385
1429
  {
1386
1430
  theme: "light",
1387
1431
  mode: "inline",
1388
- items: _(m),
1432
+ items: W(h),
1389
1433
  className: t.className.sider.menu,
1390
- selectedKeys: [d || ""],
1434
+ selectedKeys: [c || ""],
1391
1435
  openKeys: b,
1392
1436
  onOpenChange: l,
1393
- onClick: (k) => T(k.key)
1437
+ onClick: (I) => w(I.key)
1394
1438
  }
1395
1439
  ) }),
1396
- !h && !N && s === "favorite" && $.length > 0 && /* @__PURE__ */ e("div", { className: t.className.sider.menuContainer, children: /* @__PURE__ */ e(
1440
+ !u && !x && s === "favorite" && $.length > 0 && /* @__PURE__ */ e("div", { className: t.className.sider.menuContainer, children: /* @__PURE__ */ e(
1397
1441
  se,
1398
1442
  {
1399
1443
  theme: "light",
1400
1444
  mode: "inline",
1401
1445
  items: $,
1402
1446
  className: t.className.sider.menu,
1403
- selectedKeys: [d || ""],
1404
- onClick: (k) => T(k.key)
1447
+ selectedKeys: [c || ""],
1448
+ onClick: (I) => w(I.key)
1405
1449
  }
1406
1450
  ) })
1407
1451
  ] })
@@ -1409,7 +1453,7 @@ const Et = ({
1409
1453
  }
1410
1454
  );
1411
1455
  };
1412
- class Ht extends Ue {
1456
+ class Kt extends Ye {
1413
1457
  constructor(t) {
1414
1458
  super(t), this.resetError = () => {
1415
1459
  this.setState({ hasError: !1, error: void 0, errorInfo: void 0 });
@@ -1425,7 +1469,7 @@ class Ht extends Ue {
1425
1469
  });
1426
1470
  }
1427
1471
  render() {
1428
- return this.state.hasError ? this.props.fallback ? this.props.fallback : /* @__PURE__ */ y(
1472
+ return this.state.hasError ? this.props.fallback ? this.props.fallback : /* @__PURE__ */ C(
1429
1473
  "div",
1430
1474
  {
1431
1475
  style: {
@@ -1439,17 +1483,17 @@ class Ht extends Ue {
1439
1483
  },
1440
1484
  children: [
1441
1485
  /* @__PURE__ */ e(
1442
- fe,
1486
+ be,
1443
1487
  {
1444
1488
  status: "error",
1445
1489
  title: "컴포넌트 로딩 중 오류가 발생했습니다",
1446
1490
  subTitle: this.state.error ? `오류 내용: ${this.state.error.message}` : "알 수 없는 오류가 발생했습니다",
1447
1491
  extra: [
1448
1492
  /* @__PURE__ */ e(
1449
- L,
1493
+ M,
1450
1494
  {
1451
1495
  type: "primary",
1452
- icon: /* @__PURE__ */ e(Ce, {}),
1496
+ icon: /* @__PURE__ */ e(we, {}),
1453
1497
  onClick: this.resetError,
1454
1498
  style: { marginRight: 8 },
1455
1499
  children: "다시 시도"
@@ -1459,7 +1503,7 @@ class Ht extends Ue {
1459
1503
  ]
1460
1504
  }
1461
1505
  ),
1462
- this.state.error && /* @__PURE__ */ y(
1506
+ this.state.error && /* @__PURE__ */ C(
1463
1507
  "details",
1464
1508
  {
1465
1509
  style: {
@@ -1494,12 +1538,12 @@ class Ht extends Ue {
1494
1538
  ) : this.props.children;
1495
1539
  }
1496
1540
  }
1497
- const Vt = ({
1541
+ const Ut = ({
1498
1542
  isActive: n,
1499
1543
  instance: t,
1500
1544
  params: r
1501
1545
  }) => {
1502
- const { activeMenuId: o, closeTab: s } = A(), i = () => {
1546
+ const { activeMenuId: o, closeTab: s } = F(), a = () => {
1503
1547
  o && s(o);
1504
1548
  };
1505
1549
  return t ? /* @__PURE__ */ e(
@@ -1516,7 +1560,7 @@ const Vt = ({
1516
1560
  transition: "opacity 0.2s ease-in-out",
1517
1561
  pointerEvents: n ? "auto" : "none"
1518
1562
  },
1519
- children: /* @__PURE__ */ e(Ht, { children: /* @__PURE__ */ e(X, { fallback: null, children: t && be(t, { params: r }) }) })
1563
+ children: /* @__PURE__ */ e(Kt, { children: /* @__PURE__ */ e(X, { fallback: null, children: t && ye(t, { params: r }) }) })
1520
1564
  }
1521
1565
  ) : /* @__PURE__ */ e(
1522
1566
  "div",
@@ -1547,20 +1591,20 @@ const Vt = ({
1547
1591
  padding: 24
1548
1592
  },
1549
1593
  children: /* @__PURE__ */ e(
1550
- fe,
1594
+ be,
1551
1595
  {
1552
- icon: /* @__PURE__ */ e(dt, { twoToneColor: "#69b1ff" }),
1596
+ icon: /* @__PURE__ */ e(ut, { twoToneColor: "#69b1ff" }),
1553
1597
  status: "warning",
1554
1598
  title: "등록된 메뉴 정보가 없거나 유효한 메뉴가 아닙니다.",
1555
- subTitle: /* @__PURE__ */ e(_e.Text, { type: "secondary", children: "자세한 내용은 관리자에게 문의바랍니다." }),
1556
- extra: /* @__PURE__ */ e(Ge, { children: /* @__PURE__ */ e(L, { icon: /* @__PURE__ */ e(ye, {}), onClick: i, children: "탭 닫기" }) })
1599
+ subTitle: /* @__PURE__ */ e(Ve.Text, { type: "secondary", children: "자세한 내용은 관리자에게 문의바랍니다." }),
1600
+ extra: /* @__PURE__ */ e(He, { children: /* @__PURE__ */ e(M, { icon: /* @__PURE__ */ e(ve, {}), onClick: a, children: "탭 닫기" }) })
1557
1601
  }
1558
1602
  )
1559
1603
  }
1560
1604
  )
1561
1605
  }
1562
1606
  );
1563
- }, jt = ce(Vt), Kt = ({
1607
+ }, Zt = ce(Ut), Yt = ({
1564
1608
  menuGubunCode: n = {
1565
1609
  mainMenu: "MAIN",
1566
1610
  subMenu: "SUB",
@@ -1570,12 +1614,12 @@ const Vt = ({
1570
1614
  style: r,
1571
1615
  routeMap: o
1572
1616
  }) => {
1573
- const { menuList: s, findMenuById: i, flatMenuList: b } = J(), { activeMenuId: l } = A(), d = le(), [c, u] = R([]), C = z(
1574
- (v, p) => {
1575
- if (v) {
1576
- const w = Q[v];
1577
- if (w)
1578
- return /* @__PURE__ */ e(w, {});
1617
+ const { menuList: s, findMenuById: a, flatMenuList: b } = J(), { activeMenuId: l } = F(), c = le(), [y, i] = R([]), v = D(
1618
+ (N, p) => {
1619
+ if (N) {
1620
+ const g = Q[N];
1621
+ if (g)
1622
+ return /* @__PURE__ */ e(g, {});
1579
1623
  }
1580
1624
  if (p)
1581
1625
  switch (p) {
@@ -1587,70 +1631,70 @@ const Vt = ({
1587
1631
  return null;
1588
1632
  },
1589
1633
  [n]
1590
- ), m = z(
1591
- (v) => v.map((p) => {
1592
- const w = p.children && p.children.length === 1 && p.children[0].menuGbCd === n.program;
1634
+ ), h = D(
1635
+ (N) => N.map((p) => {
1636
+ const g = p.children && p.children.length === 1 && p.children[0].menuGbCd === n.program;
1593
1637
  return {
1594
1638
  key: p.menuId,
1595
1639
  label: p.menuNm,
1596
- icon: C(p.iconCd, p.menuGbCd),
1640
+ icon: v(p.iconCd, p.menuGbCd),
1597
1641
  // children이 1개이고 program이면 드롭다운 없음, 2개 이상이면 드롭다운 표시
1598
- children: p.children && p.children.length > 0 && !w ? m(p.children) : void 0
1642
+ children: p.children && p.children.length > 0 && !g ? h(p.children) : void 0
1599
1643
  };
1600
1644
  }),
1601
- [C, n]
1602
- ), h = F(() => m(s), [s, m]), N = z(
1603
- (v) => {
1604
- const p = i(v.key);
1645
+ [v, n]
1646
+ ), u = _(() => h(s), [s, h]), x = D(
1647
+ (N) => {
1648
+ const p = a(N.key);
1605
1649
  if (p) {
1606
1650
  if (p.children && p.children.length === 1 && p.children[0].menuGbCd === n.program) {
1607
- const w = p.children[0];
1608
- let I = o?.[w.menuId] || w.scrnPath || "/";
1609
- I === "/" ? I = "/main" : I.startsWith("/main") || (I = I.startsWith("/") ? `/main${I}` : `/main/${I}`), d(I);
1651
+ const g = p.children[0];
1652
+ let P = o?.[g.menuId] || g.scrnPath || "/";
1653
+ P === "/" ? P = "/main" : P.startsWith("/main") || (P = P.startsWith("/") ? `/main${P}` : `/main/${P}`), c(P);
1610
1654
  return;
1611
1655
  }
1612
1656
  if (p.menuGbCd === n.program && p.scrnPath) {
1613
- let w = o?.[p.menuId] || p.scrnPath || "/";
1614
- w === "/" ? w = "/main" : w.startsWith("/main") || (w = w.startsWith("/") ? `/main${w}` : `/main/${w}`), d(w);
1657
+ let g = o?.[p.menuId] || p.scrnPath || "/";
1658
+ g === "/" ? g = "/main" : g.startsWith("/main") || (g = g.startsWith("/") ? `/main${g}` : `/main/${g}`), c(g);
1615
1659
  return;
1616
1660
  }
1617
1661
  }
1618
1662
  },
1619
- [i, n, d, o]
1663
+ [a, n, c, o]
1620
1664
  );
1621
- return E(() => {
1665
+ return B(() => {
1622
1666
  if (!l || t !== "vertical") return;
1623
- const p = ((w) => {
1624
- const I = [], D = new Map(b.map((a) => [a.menuId, a]));
1625
- let g = w;
1626
- for (; g; ) {
1627
- const a = D.get(g);
1628
- if (!a) break;
1629
- if (a.menuPrntId && a.menuPrntId !== "-" && a.menuPrntId !== "")
1630
- I.push(a.menuPrntId), g = a.menuPrntId;
1667
+ const p = ((g) => {
1668
+ const P = [], A = new Map(b.map((m) => [m.menuId, m]));
1669
+ let E = g;
1670
+ for (; E; ) {
1671
+ const m = A.get(E);
1672
+ if (!m) break;
1673
+ if (m.menuPrntId && m.menuPrntId !== "-" && m.menuPrntId !== "")
1674
+ P.push(m.menuPrntId), E = m.menuPrntId;
1631
1675
  else
1632
1676
  break;
1633
1677
  }
1634
- return I;
1678
+ return P;
1635
1679
  })(l);
1636
- p.length > 0 && u((w) => {
1637
- const I = /* @__PURE__ */ new Set([...w, ...p]);
1638
- return Array.from(I);
1680
+ p.length > 0 && i((g) => {
1681
+ const P = /* @__PURE__ */ new Set([...g, ...p]);
1682
+ return Array.from(P);
1639
1683
  });
1640
1684
  }, [l, t, b]), /* @__PURE__ */ e(
1641
1685
  se,
1642
1686
  {
1643
1687
  mode: t,
1644
1688
  theme: "light",
1645
- items: h,
1689
+ items: u,
1646
1690
  selectedKeys: [l || ""],
1647
- openKeys: t === "vertical" ? c : void 0,
1648
- onOpenChange: t === "vertical" ? u : void 0,
1649
- onClick: N,
1691
+ openKeys: t === "vertical" ? y : void 0,
1692
+ onOpenChange: t === "vertical" ? i : void 0,
1693
+ onClick: x,
1650
1694
  style: r
1651
1695
  }
1652
1696
  );
1653
- }, Ut = () => /* @__PURE__ */ y(V, { children: [
1697
+ }, qt = () => /* @__PURE__ */ C(V, { children: [
1654
1698
  /* @__PURE__ */ e(
1655
1699
  "link",
1656
1700
  {
@@ -1660,7 +1704,7 @@ const Vt = ({
1660
1704
  }
1661
1705
  ),
1662
1706
  /* @__PURE__ */ e("div", { className: "LandingContainer-wrap", children: /* @__PURE__ */ e("div", { className: "inner", children: /* @__PURE__ */ e("div", { className: "content" }) }) })
1663
- ] }), Zt = (n, t) => {
1707
+ ] }), Qt = (n, t) => {
1664
1708
  console.log("createPopupViewLoader 호출 - popupUrl:", n);
1665
1709
  const o = ((s) => {
1666
1710
  if (s.startsWith("/src/pages/views/popup/")) {
@@ -1671,42 +1715,42 @@ const Vt = ({
1671
1715
  return console.log(`팝업 URL 변환: ${s} -> ${b}`), b;
1672
1716
  })(n);
1673
1717
  return !o || !t?.glob || !t.glob[o] ? (console.warn(`팝업 뷰를 찾을 수 없습니다: ${n} (${o})`), console.warn("사용 가능한 팝업 뷰들:", Object.keys(t?.glob || {})), null) : t.glob[o];
1674
- }, Yt = ({ popup: n, modules: t }) => {
1675
- const [r, o] = R(null), [s, i] = R(!1), [b, l] = R(null), d = () => {
1718
+ }, Xt = ({ popup: n, modules: t }) => {
1719
+ const [r, o] = R(null), [s, a] = R(!1), [b, l] = R(null), c = () => {
1676
1720
  console.log("PopupArea - handleClose:", n.popupId), de.getState().closePopup(n.popupId);
1677
1721
  };
1678
- return E(() => {
1722
+ return B(() => {
1679
1723
  (async () => {
1680
- console.log("팝업 뷰 로드 시작:", n.popupUrl), i(!0), l(null);
1724
+ console.log("팝업 뷰 로드 시작:", n.popupUrl), a(!0), l(null);
1681
1725
  try {
1682
- const u = Zt(n.popupUrl, t);
1683
- if (!u) {
1684
- const h = `팝업 뷰를 찾을 수 없습니다: ${n.popupUrl}`;
1685
- console.error(h), l(h), i(!1);
1726
+ const i = Qt(n.popupUrl, t);
1727
+ if (!i) {
1728
+ const u = `팝업 뷰를 찾을 수 없습니다: ${n.popupUrl}`;
1729
+ console.error(u), l(u), a(!1);
1686
1730
  return;
1687
1731
  }
1688
1732
  console.log("팝업 뷰 모듈 로드 중...");
1689
- const C = await u();
1690
- console.log("팝업 뷰 모듈 로드 완료:", C);
1691
- const m = C.default;
1692
- if (console.log("팝업 뷰 컴포넌트:", m), !m)
1733
+ const v = await i();
1734
+ console.log("팝업 뷰 모듈 로드 완료:", v);
1735
+ const h = v.default;
1736
+ if (console.log("팝업 뷰 컴포넌트:", h), !h)
1693
1737
  throw new Error("팝업 뷰 컴포넌트를 찾을 수 없습니다");
1694
- o(() => m), console.log("팝업 뷰 설정 완료");
1695
- } catch (u) {
1696
- console.error("팝업 뷰 로드 실패:", u), l(u instanceof Error ? u.message : "팝업 뷰 로드 실패");
1738
+ o(() => h), console.log("팝업 뷰 설정 완료");
1739
+ } catch (i) {
1740
+ console.error("팝업 뷰 로드 실패:", i), l(i instanceof Error ? i.message : "팝업 뷰 로드 실패");
1697
1741
  } finally {
1698
- i(!1);
1742
+ a(!1);
1699
1743
  }
1700
1744
  })();
1701
- }, [n.popupUrl]), s ? /* @__PURE__ */ y("div", { className: "popup-loading", children: [
1745
+ }, [n.popupUrl]), s ? /* @__PURE__ */ C("div", { className: "popup-loading", children: [
1702
1746
  /* @__PURE__ */ e(q, { size: "large" }),
1703
1747
  /* @__PURE__ */ e("p", { children: "팝업을 로드하는 중..." })
1704
- ] }) : b ? /* @__PURE__ */ y("div", { className: "popup-error", children: [
1748
+ ] }) : b ? /* @__PURE__ */ C("div", { className: "popup-error", children: [
1705
1749
  /* @__PURE__ */ e(ne, { description: b, image: ne.PRESENTED_IMAGE_SIMPLE }),
1706
1750
  /* @__PURE__ */ e(
1707
- L,
1751
+ M,
1708
1752
  {
1709
- icon: /* @__PURE__ */ e(Ce, {}),
1753
+ icon: /* @__PURE__ */ e(we, {}),
1710
1754
  onClick: () => window.location.reload(),
1711
1755
  children: "다시 시도"
1712
1756
  }
@@ -1714,7 +1758,7 @@ const Vt = ({
1714
1758
  ] }) : r ? /* @__PURE__ */ e(
1715
1759
  X,
1716
1760
  {
1717
- fallback: /* @__PURE__ */ y("div", { className: "popup-loading", children: [
1761
+ fallback: /* @__PURE__ */ C("div", { className: "popup-loading", children: [
1718
1762
  /* @__PURE__ */ e(q, { size: "large" }),
1719
1763
  /* @__PURE__ */ e("p", { children: "컴포넌트를 로드하는 중..." })
1720
1764
  ] }),
@@ -1723,24 +1767,24 @@ const Vt = ({
1723
1767
  {
1724
1768
  popup: {
1725
1769
  ...n,
1726
- close: d
1770
+ close: c
1727
1771
  // popup 객체에 close 이벤트 추가
1728
1772
  },
1729
- onClose: d
1773
+ onClose: c
1730
1774
  }
1731
1775
  )
1732
1776
  }
1733
1777
  ) : /* @__PURE__ */ e("div", { className: "popup-empty", children: /* @__PURE__ */ e(ne, { description: "팝업 내용을 불러올 수 없습니다." }) });
1734
- }, qt = ({ modules: n }) => {
1778
+ }, Jt = ({ modules: n }) => {
1735
1779
  const { popups: t } = de();
1736
1780
  return t.length === 0 ? null : /* @__PURE__ */ e(V, { children: t.map((r) => {
1737
1781
  if (r.isLocal || r.popupCode.startsWith("CORE_"))
1738
1782
  return null;
1739
- const o = r.config || {}, s = o.width || r.width || 800, i = o.height || r.height || 600, b = o.title || r.popupTitle, l = r.buttonList?.map((d, c) => ({
1740
- key: d.btnId || `btn_${c}`,
1741
- text: d.btnNm,
1742
- type: d.btnId === "CLOSE" ? "default" : "primary",
1743
- disabled: d.enblYn !== "Y",
1783
+ const o = r.config || {}, s = o.width || r.width || 800, a = o.height || r.height || 600, b = o.title || r.popupTitle, l = r.buttonList?.map((c, y) => ({
1784
+ key: c.btnId || `btn_${y}`,
1785
+ text: c.btnNm,
1786
+ type: c.btnId === "CLOSE" ? "default" : "primary",
1787
+ disabled: c.enblYn !== "Y",
1744
1788
  danger: !1
1745
1789
  })) || [];
1746
1790
  return console.log("팝업 렌더링:", {
@@ -1748,52 +1792,52 @@ const Vt = ({
1748
1792
  popupCode: r.popupCode,
1749
1793
  title: b,
1750
1794
  width: s,
1751
- height: i,
1795
+ height: a,
1752
1796
  buttons: l
1753
- }), /* @__PURE__ */ e(ie, { children: /* @__PURE__ */ e("div", { children: /* @__PURE__ */ e(Yt, { popup: r, modules: n }) }, r.popupId) }, `sbp-${r.popupId}`);
1797
+ }), /* @__PURE__ */ e(ie, { children: /* @__PURE__ */ e("div", { children: /* @__PURE__ */ e(Xt, { popup: r, modules: n }) }, r.popupId) }, `sbp-${r.popupId}`);
1754
1798
  }) });
1755
- }, xe = () => {
1799
+ }, Ie = () => {
1756
1800
  const { popups: n, closePopup: t } = de();
1757
1801
  return /* @__PURE__ */ e(V, { children: n.map((r) => {
1758
1802
  if (!(r.isLocal || r.popupCode.startsWith("CORE_"))) return null;
1759
- const o = Tt[r.popupCode];
1803
+ const o = Ot[r.popupCode];
1760
1804
  if (!o) return null;
1761
1805
  const s = o.component;
1762
1806
  return /* @__PURE__ */ e(ie, { children: /* @__PURE__ */ e(X, { fallback: null, children: /* @__PURE__ */ e(s, { popup: r, onClose: () => t(r.popupId) }) }, r.popupId) }, `sbp-${r.popupId}`);
1763
1807
  }) });
1764
- }, Qt = (n) => ({
1808
+ }, en = (n) => ({
1765
1809
  position: "absolute",
1766
1810
  inset: 0,
1767
1811
  visibility: n ? "visible" : "hidden",
1768
1812
  opacity: n ? 1 : 0,
1769
1813
  transition: "opacity 0.2s ease-in-out",
1770
1814
  pointerEvents: n ? "auto" : "none"
1771
- }), Xt = ({ once: n = !0 }) => {
1772
- const { lock: t } = Se(), r = U(!1);
1773
- return E(() => {
1815
+ }), tn = ({ once: n = !0 }) => {
1816
+ const { lock: t } = Me(), r = U(!1);
1817
+ return B(() => {
1774
1818
  n && r.current || (r.current = !0, t());
1775
1819
  }, [n, t]), null;
1776
- }, Jt = ({ isActive: n, flagged: t, tabKey: r, onUnlock: o, children: s }) => {
1777
- const i = U(null), [b, l] = R(!1), d = z((u) => {
1778
- i.current = u, l(!!u);
1779
- }, []), c = Qt(n);
1780
- return /* @__PURE__ */ e("div", { ref: d, style: c, children: b ? /* @__PURE__ */ y(
1781
- Pe,
1820
+ }, nn = ({ isActive: n, flagged: t, tabKey: r, onUnlock: o, children: s }) => {
1821
+ const a = U(null), [b, l] = R(!1), c = D((i) => {
1822
+ a.current = i, l(!!i);
1823
+ }, []), y = en(n);
1824
+ return /* @__PURE__ */ e("div", { ref: c, style: y, children: b ? /* @__PURE__ */ C(
1825
+ Le,
1782
1826
  {
1783
1827
  idleMs: Number.POSITIVE_INFINITY,
1784
1828
  persistLocked: !1,
1785
1829
  overlayScope: "scoped",
1786
1830
  overlayPosition: "absolute",
1787
- eventTarget: i.current,
1831
+ eventTarget: a.current,
1788
1832
  overlayId: `tab-overlay-${r}`,
1789
1833
  onUnlock: async () => (o(), !0),
1790
1834
  children: [
1791
- n && t ? /* @__PURE__ */ e(Xt, { once: !0 }) : null,
1835
+ n && t ? /* @__PURE__ */ e(tn, { once: !0 }) : null,
1792
1836
  s
1793
1837
  ]
1794
1838
  }
1795
1839
  ) : s });
1796
- }, fn = ({
1840
+ }, Cn = ({
1797
1841
  config: n = {},
1798
1842
  modules: t = {
1799
1843
  view: {
@@ -1809,33 +1853,33 @@ const Vt = ({
1809
1853
  ), {
1810
1854
  tabs: o,
1811
1855
  tabParams: s,
1812
- activeMenuId: i,
1856
+ activeMenuId: a,
1813
1857
  tabProtectFlag: b,
1814
1858
  clearProtectFlagForKey: l
1815
- } = A(), d = z(
1816
- (c) => {
1817
- const u = r.current.get(c.key);
1818
- if (u) return u;
1819
- const C = c.gubun === "M" ? `${t.view.path}${c.menuItem?.scrnPath}.tsx` : `${t.view.path}${c.componentItem?.scrnPath}.tsx`;
1820
- let m = t.view?.glob?.[C];
1821
- if (!m && typeof import.meta < "u" && typeof import.meta.glob == "function" && (m = (/* @__PURE__ */ Object.assign({}))[C]), m) {
1822
- const h = W(
1823
- m
1859
+ } = F(), { enableProtectWrapper: c } = Ce(), y = D(
1860
+ (i) => {
1861
+ const v = r.current.get(i.key);
1862
+ if (v) return v;
1863
+ const h = i.gubun === "M" ? `${t.view.path}${i.menuItem?.scrnPath}.tsx` : `${t.view.path}${i.componentItem?.scrnPath}.tsx`;
1864
+ let u = t.view?.glob?.[h];
1865
+ if (!u && typeof import.meta < "u" && typeof import.meta.glob == "function" && (u = (/* @__PURE__ */ Object.assign({}))[h]), u) {
1866
+ const x = z(
1867
+ u
1824
1868
  );
1825
- return r.current.set(c.key, h), h;
1869
+ return r.current.set(i.key, x), x;
1826
1870
  }
1827
1871
  return null;
1828
1872
  },
1829
1873
  [t.view?.glob]
1830
1874
  );
1831
- return /* @__PURE__ */ y(j, { className: "main-layout", children: [
1832
- /* @__PURE__ */ e(we, { config: n?.header }),
1833
- /* @__PURE__ */ y(j, { children: [
1834
- /* @__PURE__ */ e(_t, { config: n?.sidebar }),
1835
- /* @__PURE__ */ y("div", { className: "content-container", children: [
1836
- /* @__PURE__ */ e(Wt, { config: n?.menuTab }),
1837
- /* @__PURE__ */ y(ve, { config: n?.content, children: [
1838
- /* @__PURE__ */ e("div", { className: "view-container", children: /* @__PURE__ */ y(
1875
+ return /* @__PURE__ */ C(j, { className: "main-layout", children: [
1876
+ /* @__PURE__ */ e(ke, { config: n?.header }),
1877
+ /* @__PURE__ */ C(j, { children: [
1878
+ /* @__PURE__ */ e(jt, { config: n?.sidebar }),
1879
+ /* @__PURE__ */ C("div", { className: "content-container", children: [
1880
+ /* @__PURE__ */ e(Ht, { config: n?.menuTab }),
1881
+ /* @__PURE__ */ C(xe, { config: n?.content, children: [
1882
+ /* @__PURE__ */ e("div", { className: "view-container", children: /* @__PURE__ */ C(
1839
1883
  "div",
1840
1884
  {
1841
1885
  style: {
@@ -1844,40 +1888,40 @@ const Vt = ({
1844
1888
  height: "100%"
1845
1889
  },
1846
1890
  children: [
1847
- o.map((c) => {
1848
- const u = d(c), C = i === c.key, m = !!b?.[c.key], h = s[c.key] || {};
1849
- return /* @__PURE__ */ e(ie, { children: /* @__PURE__ */ e(
1850
- Jt,
1891
+ o.map((i) => {
1892
+ const v = y(i), h = a === i.key, u = !!b?.[i.key], x = s[i.key] || {}, N = /* @__PURE__ */ e(
1893
+ Zt,
1851
1894
  {
1852
- isActive: C,
1853
- flagged: m,
1854
- tabKey: c.key,
1855
- onUnlock: () => l(c.key),
1856
- children: /* @__PURE__ */ e(
1857
- jt,
1858
- {
1859
- isActive: C,
1860
- instance: u || void 0,
1861
- params: h
1862
- },
1863
- c.key
1864
- )
1895
+ isActive: h,
1896
+ instance: v || void 0,
1897
+ params: x
1898
+ },
1899
+ i.key
1900
+ );
1901
+ return /* @__PURE__ */ e(ie, { children: c ? /* @__PURE__ */ e(
1902
+ nn,
1903
+ {
1904
+ isActive: h,
1905
+ flagged: u,
1906
+ tabKey: i.key,
1907
+ onUnlock: () => l(i.key),
1908
+ children: N
1865
1909
  },
1866
- c.key
1867
- ) }, `sbp-${c.key}`);
1910
+ i.key
1911
+ ) : N }, `sbp-${i.key}`);
1868
1912
  }),
1869
- (!i || o.length === 0) && /* @__PURE__ */ e(Ut, {})
1913
+ (!a || o.length === 0) && /* @__PURE__ */ e(qt, {})
1870
1914
  ]
1871
1915
  }
1872
1916
  ) }),
1873
- /* @__PURE__ */ e(xe, {}),
1874
- /* @__PURE__ */ e(qt, { modules: t?.popup })
1917
+ /* @__PURE__ */ e(Ie, {}),
1918
+ /* @__PURE__ */ e(Jt, { modules: t?.popup })
1875
1919
  ] })
1876
1920
  ] })
1877
1921
  ] }),
1878
- (n?.quickService?.visible ?? !0) && /* @__PURE__ */ e(Ee, {})
1922
+ (n?.quickService?.visible ?? !0) && /* @__PURE__ */ e(Re, {})
1879
1923
  ] });
1880
- }, en = ({
1924
+ }, rn = ({
1881
1925
  children: n,
1882
1926
  menuGubunCode: t = {
1883
1927
  mainMenu: "CMPRGRM",
@@ -1887,20 +1931,20 @@ const Vt = ({
1887
1931
  routeMap: r,
1888
1932
  routes: o
1889
1933
  }) => {
1890
- const s = Le(), i = le(), { flatMenuList: b, findMenuById: l } = J(), d = F(() => {
1891
- const u = s.pathname, C = u.replace(/^\/main/, "") || "/";
1934
+ const s = Ee(), a = le(), { flatMenuList: b, findMenuById: l } = J(), c = _(() => {
1935
+ const i = s.pathname, v = i.replace(/^\/main/, "") || "/";
1892
1936
  if (r) {
1893
- const m = Object.keys(r).find(
1894
- (N) => r[N] === u
1937
+ const h = Object.keys(r).find(
1938
+ (x) => r[x] === i
1895
1939
  );
1896
- if (m)
1897
- return l(m);
1898
- const h = Object.keys(r).find((N) => (r[N].replace(/^\/main/, "") || "/") === C);
1899
1940
  if (h)
1900
1941
  return l(h);
1942
+ const u = Object.keys(r).find((x) => (r[x].replace(/^\/main/, "") || "/") === v);
1943
+ if (u)
1944
+ return l(u);
1901
1945
  }
1902
1946
  return b.find(
1903
- (m) => m.menuGbCd === t.program && m.scrnPath && (m.scrnPath === C || m.scrnPath === u || u.endsWith(m.scrnPath) || C === m.scrnPath)
1947
+ (h) => h.menuGbCd === t.program && h.scrnPath && (h.scrnPath === v || h.scrnPath === i || i.endsWith(h.scrnPath) || v === h.scrnPath)
1904
1948
  );
1905
1949
  }, [
1906
1950
  s.pathname,
@@ -1908,34 +1952,34 @@ const Vt = ({
1908
1952
  t.program,
1909
1953
  r,
1910
1954
  l
1911
- ]), c = F(() => {
1912
- if (!d)
1955
+ ]), y = _(() => {
1956
+ if (!c)
1913
1957
  return [];
1914
- const u = [], C = (h) => {
1915
- if (!h || !h.menuPrntId || h.menuPrntId === "-")
1958
+ const i = [], v = (u) => {
1959
+ if (!u || !u.menuPrntId || u.menuPrntId === "-")
1916
1960
  return [];
1917
- const N = l(h.menuPrntId);
1918
- return N ? [...C(N), N] : [];
1961
+ const x = l(u.menuPrntId);
1962
+ return x ? [...v(x), x] : [];
1919
1963
  };
1920
- return C(d).forEach((h) => {
1921
- if (h.menuGbCd === t.mainMenu || h.menuGbCd === t.subMenu) {
1922
- let N;
1923
- if (r && h.menuId && (N = r[h.menuId]), !N && o && h.scrnPath) {
1924
- const v = h.scrnPath.startsWith("/") ? h.scrnPath : `/${h.scrnPath}`, p = Object.keys(o).find(
1925
- (w) => w === v || w === `/main${v}`
1964
+ return v(c).forEach((u) => {
1965
+ if (u.menuGbCd === t.mainMenu || u.menuGbCd === t.subMenu) {
1966
+ let x;
1967
+ if (r && u.menuId && (x = r[u.menuId]), !x && o && u.scrnPath) {
1968
+ const N = u.scrnPath.startsWith("/") ? u.scrnPath : `/${u.scrnPath}`, p = Object.keys(o).find(
1969
+ (g) => g === N || g === `/main${N}`
1926
1970
  );
1927
- p && (N = p.startsWith("/main") ? p : `/main${p.startsWith("/") ? p : `/${p}`}`);
1971
+ p && (x = p.startsWith("/main") ? p : `/main${p.startsWith("/") ? p : `/${p}`}`);
1928
1972
  }
1929
- u.push({
1930
- title: h.menuNm,
1931
- onClick: N ? () => i(N) : void 0
1973
+ i.push({
1974
+ title: u.menuNm,
1975
+ onClick: x ? () => a(x) : void 0
1932
1976
  });
1933
1977
  }
1934
- }), u.push({
1935
- title: d.menuNm
1936
- }), u;
1937
- }, [d, t, i, l]);
1938
- return /* @__PURE__ */ y(
1978
+ }), i.push({
1979
+ title: c.menuNm
1980
+ }), i;
1981
+ }, [c, t, a, l]);
1982
+ return /* @__PURE__ */ C(
1939
1983
  "div",
1940
1984
  {
1941
1985
  style: {
@@ -1944,10 +1988,10 @@ const Vt = ({
1944
1988
  },
1945
1989
  children: [
1946
1990
  /* @__PURE__ */ e(
1947
- He,
1991
+ je,
1948
1992
  {
1949
1993
  separator: ">",
1950
- items: c,
1994
+ items: y,
1951
1995
  style: { marginBottom: "16px" }
1952
1996
  }
1953
1997
  ),
@@ -1955,26 +1999,26 @@ const Vt = ({
1955
1999
  ]
1956
2000
  }
1957
2001
  );
1958
- }, bn = ({ config: n = {} }) => {
1959
- const t = n?.header?.menu, r = t?.visible !== !1, o = t?.routes, s = F(() => {
2002
+ }, vn = ({ config: n = {} }) => {
2003
+ const t = n?.header?.menu, r = t?.visible !== !1, o = t?.routes, s = _(() => {
1960
2004
  if (!o) return;
1961
- const i = {}, { flatMenuList: b } = J.getState();
2005
+ const a = {}, { flatMenuList: b } = J.getState();
1962
2006
  return b.forEach((l) => {
1963
2007
  if (l.menuGbCd === t?.menuGubunCode?.program && l.scrnPath) {
1964
- const d = l.scrnPath.startsWith("/") ? l.scrnPath : `/${l.scrnPath}`, c = Object.keys(o).find((u) => {
1965
- const C = u === "/" ? "/" : u.startsWith("/") ? u : `/${u}`;
1966
- return C === d || C === `/main${d}` || d === C.replace(/^\/main/, "");
2008
+ const c = l.scrnPath.startsWith("/") ? l.scrnPath : `/${l.scrnPath}`, y = Object.keys(o).find((i) => {
2009
+ const v = i === "/" ? "/" : i.startsWith("/") ? i : `/${i}`;
2010
+ return v === c || v === `/main${c}` || c === v.replace(/^\/main/, "");
1967
2011
  });
1968
- if (c) {
1969
- const u = c === "/" ? "/main" : c.startsWith("/main") ? c : `/main${c.startsWith("/") ? c : `/${c}`}`;
1970
- i[l.menuId] = u;
2012
+ if (y) {
2013
+ const i = y === "/" ? "/main" : y.startsWith("/main") ? y : `/main${y.startsWith("/") ? y : `/${y}`}`;
2014
+ a[l.menuId] = i;
1971
2015
  }
1972
2016
  }
1973
- }), i;
2017
+ }), a;
1974
2018
  }, [o, t?.menuGubunCode?.program]);
1975
- return /* @__PURE__ */ y(j, { className: "main-layout", children: [
1976
- /* @__PURE__ */ e(we, { config: n?.header, children: r && /* @__PURE__ */ e(
1977
- Kt,
2019
+ return /* @__PURE__ */ C(j, { className: "main-layout", children: [
2020
+ /* @__PURE__ */ e(ke, { config: n?.header, children: r && /* @__PURE__ */ e(
2021
+ Yt,
1978
2022
  {
1979
2023
  menuGubunCode: t?.menuGubunCode,
1980
2024
  mode: t?.style?.mode || "horizontal",
@@ -1988,7 +2032,7 @@ const Vt = ({
1988
2032
  }
1989
2033
  }
1990
2034
  ) }),
1991
- /* @__PURE__ */ e("div", { className: "content-container", children: /* @__PURE__ */ y(ve, { config: n?.content, children: [
2035
+ /* @__PURE__ */ e("div", { className: "content-container", children: /* @__PURE__ */ C(xe, { config: n?.content, children: [
1992
2036
  /* @__PURE__ */ e("div", { className: "view-container", children: /* @__PURE__ */ e(
1993
2037
  "div",
1994
2038
  {
@@ -1997,14 +2041,14 @@ const Vt = ({
1997
2041
  width: "100%",
1998
2042
  height: "100%"
1999
2043
  },
2000
- children: /* @__PURE__ */ e(X, { fallback: /* @__PURE__ */ e("div", { children: "Loading..." }), children: /* @__PURE__ */ e(ge, { children: Object.entries(o || {}).map(([i, b]) => {
2001
- const l = i === "/" ? "" : i.replace(/^\/main/, "").replace(/^\//, "") || "";
2044
+ children: /* @__PURE__ */ e(X, { fallback: /* @__PURE__ */ e("div", { children: "Loading..." }), children: /* @__PURE__ */ e(fe, { children: Object.entries(o || {}).map(([a, b]) => {
2045
+ const l = a === "/" ? "" : a.replace(/^\/main/, "").replace(/^\//, "") || "";
2002
2046
  return /* @__PURE__ */ e(
2003
2047
  Y,
2004
2048
  {
2005
2049
  path: l,
2006
2050
  element: /* @__PURE__ */ e(
2007
- en,
2051
+ rn,
2008
2052
  {
2009
2053
  menuGubunCode: t?.menuGubunCode,
2010
2054
  routeMap: s,
@@ -2013,32 +2057,32 @@ const Vt = ({
2013
2057
  }
2014
2058
  )
2015
2059
  },
2016
- i
2060
+ a
2017
2061
  );
2018
2062
  }) }) })
2019
2063
  }
2020
2064
  ) }),
2021
- /* @__PURE__ */ e(xe, {})
2065
+ /* @__PURE__ */ e(Ie, {})
2022
2066
  ] }) })
2023
2067
  ] });
2024
2068
  };
2025
- function yn({
2069
+ function wn({
2026
2070
  config: n,
2027
2071
  ui: t,
2028
2072
  navigate: r
2029
2073
  }) {
2030
- const { loading: o, capsOn: s, prefills: i, onKeyDown: b, doLogin: l } = Qe(n), d = (c) => l(c, r);
2031
- return E(() => {
2032
- Xe.getState().fetchSystemMap();
2033
- }, []), /* @__PURE__ */ e(V, { children: t({ onSubmit: d, loading: o, capsOn: s, onKeyDown: b, prefills: i }) });
2074
+ const { loading: o, capsOn: s, prefills: a, onKeyDown: b, doLogin: l } = Xe(n), c = (y) => l(y, r);
2075
+ return B(() => {
2076
+ Je.getState().fetchSystemMap();
2077
+ }, []), /* @__PURE__ */ e(V, { children: t({ onSubmit: c, loading: o, capsOn: s, onKeyDown: b, prefills: a }) });
2034
2078
  }
2035
- function Cn({
2079
+ function xn({
2036
2080
  onSubmit: n,
2037
2081
  loading: t,
2038
2082
  capsOn: r,
2039
2083
  onKeyDown: o,
2040
2084
  prefills: s,
2041
- labels: i = {
2085
+ labels: a = {
2042
2086
  id: "ID 혹은 사번",
2043
2087
  pw: "비밀번호",
2044
2088
  remember: "Remember me",
@@ -2047,13 +2091,13 @@ function Cn({
2047
2091
  header: b,
2048
2092
  footer: l
2049
2093
  }) {
2050
- const [d] = H.useForm();
2051
- return E(() => {
2052
- s && (s.id || s.pswr) && d.setFieldsValue({ id: s.id, pswr: s.pswr });
2053
- }, [s, d]), /* @__PURE__ */ e("div", { className: "login-main", children: /* @__PURE__ */ y("div", { className: "login_wrap", children: [
2094
+ const [c] = H.useForm();
2095
+ return B(() => {
2096
+ s && (s.id || s.pswr) && c.setFieldsValue({ id: s.id, pswr: s.pswr });
2097
+ }, [s, c]), /* @__PURE__ */ e("div", { className: "login-main", children: /* @__PURE__ */ C("div", { className: "login_wrap", children: [
2054
2098
  b || /* @__PURE__ */ e("div", { className: "logo_box" }),
2055
2099
  /* @__PURE__ */ e("div", { className: "login_title" }),
2056
- /* @__PURE__ */ e(H, { form: d, onFinish: n, className: "login-form", children: /* @__PURE__ */ y(Ve, { vertical: !0, children: [
2100
+ /* @__PURE__ */ e(H, { form: c, onFinish: n, className: "login-form", children: /* @__PURE__ */ C(Ke, { vertical: !0, children: [
2057
2101
  /* @__PURE__ */ e(
2058
2102
  H.Item,
2059
2103
  {
@@ -2065,7 +2109,7 @@ function Cn({
2065
2109
  message: "아이디는 공백이 들어갈 수 없습니다."
2066
2110
  }
2067
2111
  ],
2068
- children: /* @__PURE__ */ e(oe, { allowClear: !0, placeholder: i.id, onKeyDown: o })
2112
+ children: /* @__PURE__ */ e(oe, { allowClear: !0, placeholder: a.id, onKeyDown: o })
2069
2113
  }
2070
2114
  ),
2071
2115
  /* @__PURE__ */ e(
@@ -2077,35 +2121,35 @@ function Cn({
2077
2121
  oe.Password,
2078
2122
  {
2079
2123
  allowClear: !0,
2080
- placeholder: i.pw,
2124
+ placeholder: a.pw,
2081
2125
  onKeyDown: o
2082
2126
  }
2083
2127
  )
2084
2128
  }
2085
2129
  ),
2086
- /* @__PURE__ */ e(H.Item, { name: "remember", valuePropName: "checked", children: /* @__PURE__ */ e(je, { children: i.remember }) }),
2130
+ /* @__PURE__ */ e(H.Item, { name: "remember", valuePropName: "checked", children: /* @__PURE__ */ e(Ue, { children: a.remember }) }),
2087
2131
  /* @__PURE__ */ e("div", { className: r ? "caps-lock caps-lock-on" : "caps-lock", children: r ? "Caps Lock On" : "Caps Lock Off" }),
2088
- /* @__PURE__ */ e(H.Item, { children: /* @__PURE__ */ e(L, { type: "primary", htmlType: "submit", loading: t, block: !0, children: i.login }) })
2132
+ /* @__PURE__ */ e(H.Item, { children: /* @__PURE__ */ e(M, { type: "primary", htmlType: "submit", loading: t, block: !0, children: a.login }) })
2089
2133
  ] }) }),
2090
2134
  l
2091
2135
  ] }) });
2092
2136
  }
2093
2137
  export {
2094
- gn as A,
2095
- fn as B,
2096
- jt as C,
2097
- Cn as D,
2098
- Kt as H,
2099
- pn as L,
2100
- qt as P,
2101
- bn as a,
2102
- yn as b,
2103
- Ut as c,
2104
- ve as d,
2105
- we as e,
2106
- Wt as f,
2107
- _t as g,
2108
- en as h,
2109
- Jt as i,
2110
- Tt as l
2138
+ yn as A,
2139
+ Cn as B,
2140
+ Zt as C,
2141
+ xn as D,
2142
+ Yt as H,
2143
+ bn as L,
2144
+ Jt as P,
2145
+ vn as a,
2146
+ wn as b,
2147
+ qt as c,
2148
+ xe as d,
2149
+ ke as e,
2150
+ Ht as f,
2151
+ jt as g,
2152
+ rn as h,
2153
+ nn as i,
2154
+ Ot as l
2111
2155
  };