@bwg-ui/core 1.2.32 → 1.2.35

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 (49) hide show
  1. package/dist/chunks/{CMSearchIntfGwP01-uJxdFXUb.cjs → CMSearchIntfGwP01-CMSQULsU.cjs} +1 -1
  2. package/dist/chunks/{CMSearchIntfGwP01-C_y_G3xh.js → CMSearchIntfGwP01-Duabg_5A.js} +1 -1
  3. package/dist/chunks/{MenuReport-DkWB3Yyc.cjs → MenuReport-5e2dMr_C.cjs} +1 -1
  4. package/dist/chunks/{MenuReport-XwdiwiFn.js → MenuReport-B4EU1A6l.js} +1 -1
  5. package/dist/chunks/{common-components-DcTm1Tn1.cjs → common-components-D3-r7D-8.cjs} +30 -30
  6. package/dist/chunks/{common-components-Cxh8PLBH.js → common-components-DIpOkbb5.js} +452 -401
  7. package/dist/chunks/{layout-components-Bp6b-T1V.js → layout-components-D2Fla5uu.js} +952 -699
  8. package/dist/chunks/layout-components-pfHVy2at.cjs +35 -0
  9. package/dist/components/common/index.cjs +1 -1
  10. package/dist/components/common/index.js +1 -1
  11. package/dist/components/core/BwgDatePicker.d.ts.map +1 -1
  12. package/dist/components/core/BwgDownload.d.ts +3 -3
  13. package/dist/components/core/BwgDownload.d.ts.map +1 -1
  14. package/dist/components/core/index.cjs +1 -1
  15. package/dist/components/core/index.js +546 -526
  16. package/dist/components/guide/index.cjs +1 -1
  17. package/dist/components/guide/index.js +2 -2
  18. package/dist/components/layout/AppWrapper.d.ts +1 -1
  19. package/dist/components/layout/AppWrapper.d.ts.map +1 -1
  20. package/dist/components/layout/BwgPortal02.d.ts.map +1 -1
  21. package/dist/components/layout/custom/ConfigurableHeader.d.ts.map +1 -1
  22. package/dist/components/layout/default/HeaderContainer.d.ts +15 -0
  23. package/dist/components/layout/default/HeaderContainer.d.ts.map +1 -0
  24. package/dist/components/layout/default/index.d.ts +1 -0
  25. package/dist/components/layout/default/index.d.ts.map +1 -1
  26. package/dist/components/layout/extension/ContentWrapper.d.ts +17 -0
  27. package/dist/components/layout/extension/ContentWrapper.d.ts.map +1 -0
  28. package/dist/components/layout/extension/index.d.ts +1 -0
  29. package/dist/components/layout/extension/index.d.ts.map +1 -1
  30. package/dist/components/layout/index.cjs +1 -1
  31. package/dist/components/layout/index.js +15 -13
  32. package/dist/components/layout/types.d.ts +28 -2
  33. package/dist/components/layout/types.d.ts.map +1 -1
  34. package/dist/components/pages/rsrc/CMFileMstrM01.d.ts.map +1 -1
  35. package/dist/components/pages/rsrc/CMPrgrMstrM01.d.ts.map +1 -1
  36. package/dist/components/popup/index.cjs +1 -1
  37. package/dist/components/popup/index.js +1 -1
  38. package/dist/index.cjs +1 -1
  39. package/dist/index.js +41 -39
  40. package/dist/stores/index.cjs +1 -1
  41. package/dist/stores/index.js +1 -1
  42. package/dist/utils/apiUtils.d.ts +1 -1
  43. package/dist/utils/apiUtils.d.ts.map +1 -1
  44. package/dist/utils/index.cjs +1 -1
  45. package/dist/utils/index.d.ts +1 -1
  46. package/dist/utils/index.d.ts.map +1 -1
  47. package/dist/utils/index.js +321 -312
  48. package/package.json +1 -1
  49. package/dist/chunks/layout-components-B4ptqDmC.cjs +0 -35
@@ -1,34 +1,34 @@
1
- import { jsxs as m, jsx as e, Fragment as V } from "react/jsx-runtime";
2
- import { ServiceCodeProvider as ye, CommonCodeProvider as Ce, SearchBoxProvider as re, ScreenProtectProvider as ve, useLock as we } from "../provider/index.js";
3
- import { Routes as xe, Route as Q, Navigate as ke, useNavigate as Ne } from "react-router-dom";
4
- import { G as Ie, B as Se, Q as Te } from "./common-components-Cxh8PLBH.js";
5
- import { Spin as Y, Layout as j, ColorPicker as Le, Button as I, Divider as Pe, Slider as X, Popover as Me, Avatar as Be, Tabs as Ee, Tooltip as W, AutoComplete as De, Input as te, Segmented as Oe, ConfigProvider as Re, Menu as ie, Result as pe, Space as ze, Typography as Fe, Empty as J, Form as H, Flex as Ae, Checkbox as _e } from "antd";
6
- import { lazy as R, useEffect as B, useState as D, useRef as K, useMemo as Z, useCallback as A, createElement as he, memo as oe, cloneElement as $e, Component as Ge, Suspense as se } from "react";
7
- import { useLogout as He, useUserStore as Ve, useMenuViewStore as O, useMenuModelStore as We, useFavoriteStore as je, usePopupStore as ae, useLogin as Ke, useSystemStore as Ue } from "../stores/index.js";
8
- import * as le from "@ant-design/icons";
9
- import { UserOutlined as Ze, StepBackwardOutlined as Ye, LeftOutlined as qe, RightOutlined as Qe, StepForwardOutlined as Xe, CloseOutlined as ge, MenuUnfoldOutlined as Je, MenuFoldOutlined as et, ExclamationCircleOutlined as tt, WarningOutlined as nt, StarOutlined as rt, FolderOpenOutlined as ot, ReloadOutlined as fe, ExclamationCircleTwoTone as st } from "@ant-design/icons";
10
- import { getCookie as at, getTodateString as ce, setCookie as it, THEME_COOKIE_NAME as de, getUserId as ue } from "../utils/index.js";
11
- import { useSensors as lt, useSensor as ct, PointerSensor as dt, DndContext as ut, closestCenter as mt } from "@dnd-kit/core";
12
- import { restrictToHorizontalAxis as pt } from "@dnd-kit/modifiers";
13
- import { arrayMove as ht, SortableContext as gt, horizontalListSortingStrategy as ft, useSortable as bt } from "@dnd-kit/sortable";
14
- const yt = R(
15
- () => import("./MenuReport-XwdiwiFn.js")
16
- ), Ct = R(
17
- () => import("./common-components-Cxh8PLBH.js").then((r) => r.$)
18
- ), vt = R(
19
- () => import("./common-components-Cxh8PLBH.js").then((r) => r.a0)
20
- ), wt = R(
21
- () => import("./common-components-Cxh8PLBH.js").then((r) => r.a1)
22
- ), xt = R(
23
- () => import("./common-components-Cxh8PLBH.js").then((r) => r.a2)
24
- ), kt = R(
25
- () => import("./common-components-Cxh8PLBH.js").then((r) => r.a3)
26
- ), Nt = R(
27
- () => import("./CMSearchIntfGwP01-C_y_G3xh.js")
28
- ), It = {
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";
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 = {
29
29
  // 게시판/문의
30
30
  CORE_REPORT: {
31
- component: yt,
31
+ component: kt,
32
32
  defaultConfig: {
33
33
  title: "게시판/문의",
34
34
  width: 1200,
@@ -37,7 +37,7 @@ const yt = R(
37
37
  },
38
38
  // 조직/부서 검색류
39
39
  CORE_DEPARTMENT_01: {
40
- component: Ct,
40
+ component: Nt,
41
41
  defaultConfig: {
42
42
  title: "부서 검색",
43
43
  width: 620,
@@ -45,7 +45,7 @@ const yt = R(
45
45
  }
46
46
  },
47
47
  CORE_DEPARTMENT_02: {
48
- component: vt,
48
+ component: It,
49
49
  defaultConfig: {
50
50
  title: "부서 검색",
51
51
  width: 620,
@@ -53,7 +53,7 @@ const yt = R(
53
53
  }
54
54
  },
55
55
  CORE_ORGANIZATION_01: {
56
- component: wt,
56
+ component: Pt,
57
57
  defaultConfig: {
58
58
  title: "조직 검색",
59
59
  width: 620,
@@ -61,7 +61,7 @@ const yt = R(
61
61
  }
62
62
  },
63
63
  CORE_ORGANIZATION_02: {
64
- component: xt,
64
+ component: St,
65
65
  defaultConfig: {
66
66
  title: "조직 검색",
67
67
  width: 1e3,
@@ -69,7 +69,7 @@ const yt = R(
69
69
  }
70
70
  },
71
71
  CORE_PRGR_02: {
72
- component: kt,
72
+ component: Mt,
73
73
  defaultConfig: {
74
74
  title: "프로그램 검색",
75
75
  width: 700,
@@ -77,18 +77,18 @@ const yt = R(
77
77
  }
78
78
  },
79
79
  CORE_GW_DRAFTS: {
80
- component: Nt,
80
+ component: Lt,
81
81
  defaultConfig: {
82
82
  title: "기안 목록",
83
83
  width: 1e3,
84
84
  height: 700
85
85
  }
86
86
  }
87
- }, me = "bwg-dot-line-wave-v4";
88
- function St() {
89
- if (typeof document > "u" || document.getElementById(me)) return;
90
- const r = document.createElement("style");
91
- r.id = me, r.textContent = `
87
+ }, pe = "bwg-dot-line-wave-v4";
88
+ function Bt() {
89
+ if (typeof document > "u" || document.getElementById(pe)) return;
90
+ const n = document.createElement("style");
91
+ n.id = pe, n.textContent = `
92
92
  .bwg-dotline {
93
93
  display: inline-flex;
94
94
  align-items: center;
@@ -122,55 +122,55 @@ function St() {
122
122
  @media (prefers-reduced-motion: reduce) {
123
123
  .bwg-dotline .dot { animation: none; }
124
124
  }
125
- `, document.head.appendChild(r);
125
+ `, document.head.appendChild(n);
126
126
  }
127
- const Tt = ({
128
- colors: r = ["#DAD3FF", "#B3A6FF", "#9380FF", "#816BFA"],
127
+ const Et = ({
128
+ colors: n = ["#DAD3FF", "#B3A6FF", "#9380FF", "#816BFA"],
129
129
  count: t,
130
- size: n = 12,
131
- gap: s = 10,
132
- amp: o = 16,
133
- speedMs: l = 900,
134
- direction: h = "ltr",
135
- phase: p = 0.7
130
+ size: r = 12,
131
+ gap: o = 10,
132
+ amp: s = 16,
133
+ speedMs: i = 900,
134
+ direction: b = "ltr",
135
+ phase: l = 0.7
136
136
  }) => {
137
- B(() => {
138
- St();
137
+ E(() => {
138
+ Bt();
139
139
  }, []);
140
- const u = t ?? r.length, i = Array.from({ length: u }), y = {
141
- "--bwg-size": `${n}px`,
142
- "--bwg-gap": `${s}px`,
143
- "--bwg-amp": `${o}px`,
144
- "--bwg-speed": `${l}ms`
145
- }, w = l / u * p;
140
+ const d = t ?? n.length, c = Array.from({ length: d }), u = {
141
+ "--bwg-size": `${r}px`,
142
+ "--bwg-gap": `${o}px`,
143
+ "--bwg-amp": `${s}px`,
144
+ "--bwg-speed": `${i}ms`
145
+ }, C = i / d * l;
146
146
  return /* @__PURE__ */ e(
147
147
  "span",
148
148
  {
149
149
  className: "bwg-dotline",
150
150
  role: "img",
151
151
  "aria-label": "loading",
152
- style: y,
153
- children: i.map((g, C) => /* @__PURE__ */ e(
152
+ style: u,
153
+ children: c.map((m, h) => /* @__PURE__ */ e(
154
154
  "span",
155
155
  {
156
156
  className: "dot",
157
157
  style: {
158
- backgroundColor: r[C % r.length],
159
- animationDelay: h === "ltr" ? `${C * w}ms` : `${(u - 1 - C) * w}ms`
158
+ backgroundColor: n[h % n.length],
159
+ animationDelay: b === "ltr" ? `${h * C}ms` : `${(d - 1 - h) * C}ms`
160
160
  }
161
161
  },
162
- C
162
+ h
163
163
  ))
164
164
  }
165
165
  );
166
- }, dn = ({
167
- spin: r = null,
166
+ }, pn = ({
167
+ spin: n = null,
168
168
  text: t = "인증중...",
169
- dimStyle: n = "dark"
169
+ dimStyle: r = "dark"
170
170
  }) => {
171
- if (!(r ?? !0)) return null;
172
- const l = n === "dark";
173
- return /* @__PURE__ */ m(
171
+ if (!(n ?? !0)) return null;
172
+ const i = r === "dark";
173
+ return /* @__PURE__ */ y(
174
174
  "div",
175
175
  {
176
176
  className: "loading-overlay",
@@ -186,8 +186,8 @@ const Tt = ({
186
186
  alignItems: "center",
187
187
  gap: 8,
188
188
  padding: "8px 12px",
189
- background: l ? "rgba(0, 0, 0, 0.6)" : "rgba(255, 255, 255, 0.85)",
190
- color: l ? "#fff" : "#333",
189
+ background: i ? "rgba(0, 0, 0, 0.6)" : "rgba(255, 255, 255, 0.85)",
190
+ color: i ? "#fff" : "#333",
191
191
  backdropFilter: "blur(4px)",
192
192
  zIndex: 1e4
193
193
  },
@@ -196,10 +196,10 @@ const Tt = ({
196
196
  role: "status",
197
197
  children: [
198
198
  /* @__PURE__ */ e(
199
- Y,
199
+ q,
200
200
  {
201
201
  indicator: /* @__PURE__ */ e(
202
- Tt,
202
+ Et,
203
203
  {
204
204
  colors: ["#DAD3FF", "#B3A6FF", "#9380FF", "#816BFA"],
205
205
  size: 12,
@@ -216,44 +216,48 @@ const Tt = ({
216
216
  ]
217
217
  }
218
218
  );
219
- }, un = ({ routes: r, useCommonProvider: t = !0, useServiceProvider: n = !0 }) => {
220
- let o = /* @__PURE__ */ m(xe, { children: [
221
- /* @__PURE__ */ e(Q, { path: "/", element: /* @__PURE__ */ e(ke, { to: "/login" }) }),
222
- /* @__PURE__ */ e(Q, { path: "/login", element: r.login }),
223
- /* @__PURE__ */ e(Q, { path: "/main", element: r.main })
219
+ }, gn = ({
220
+ routes: n,
221
+ useCommonProvider: t = !0,
222
+ useServiceProvider: r = !0
223
+ }) => {
224
+ let s = /* @__PURE__ */ y(ge, { children: [
225
+ /* @__PURE__ */ e(Y, { path: "/", element: /* @__PURE__ */ e(Me, { to: "/login" }) }),
226
+ /* @__PURE__ */ e(Y, { path: "/login", element: n.login }),
227
+ /* @__PURE__ */ e(Y, { path: "/main/*", element: n.main })
224
228
  ] });
225
- return n && (o = /* @__PURE__ */ e(ye, { children: o })), t && (o = /* @__PURE__ */ e(Ce, { children: o })), /* @__PURE__ */ e(Ie, { children: o });
226
- }, { Content: Lt } = j, Pt = ({
227
- config: r = {},
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 = ({
231
+ config: n = {},
228
232
  children: t
229
233
  }) => {
230
- const n = {
234
+ const r = {
231
235
  wrapper: {
232
236
  className: "content-wrapper",
233
- ...r.wrapper
237
+ ...n.wrapper
234
238
  },
235
239
  body: {
236
240
  className: "content-body",
237
- ...r.body
241
+ ...n.body
238
242
  },
239
- ...r
243
+ ...n
240
244
  };
241
245
  return /* @__PURE__ */ e(
242
- Lt,
246
+ Ot,
243
247
  {
244
- className: n.wrapper.className,
245
- style: n.wrapper.style,
246
- children: /* @__PURE__ */ e(Se, { children: /* @__PURE__ */ e(
248
+ className: r.wrapper.className,
249
+ style: r.wrapper.style,
250
+ children: /* @__PURE__ */ e(Be, { children: /* @__PURE__ */ e(
247
251
  "div",
248
252
  {
249
- className: n.body.className,
250
- style: n.body.style,
253
+ className: r.body.className,
254
+ style: r.body.style,
251
255
  children: t
252
256
  }
253
257
  ) })
254
258
  }
255
259
  );
256
- }, Mt = "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", Bt = "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", Et = "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: Dt } = j, F = {
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 = {
257
261
  light: {
258
262
  headerBg: "#ffffff",
259
263
  headerText: "#000000",
@@ -306,123 +310,123 @@ const Tt = ({
306
310
  buttonDefaultBorder: "#dddddd",
307
311
  buttonPermissionBorder: "#bdb1ff"
308
312
  }
309
- }, ee = {
313
+ }, re = {
310
314
  0: "작게",
311
315
  1: "보통",
312
316
  2: "크게"
313
- }, Ot = ({ config: r = {} }) => {
314
- const t = {
317
+ }, we = ({ config: n = {}, children: t }) => {
318
+ const r = {
315
319
  gap: 14,
316
320
  minWidth: 200,
317
- items: r.right?.items,
321
+ items: n.right?.items,
318
322
  alarm: {
319
323
  visible: !0,
320
- ...r.right?.alarm || {}
324
+ ...n.right?.alarm || {}
321
325
  },
322
326
  theme: {
323
327
  visible: !0,
324
- ...r.right?.theme || {}
328
+ ...n.right?.theme || {}
325
329
  },
326
330
  logout: {
327
331
  visible: !0,
328
- ...r.right?.logout || {}
332
+ ...n.right?.logout || {}
329
333
  },
330
334
  avatar: {
331
335
  visible: !0,
332
336
  width: 30,
333
337
  height: 30,
334
- ...r.right?.avatar || {}
338
+ ...n.right?.avatar || {}
335
339
  }
336
- }, n = {
340
+ }, o = {
337
341
  wrapper: {
338
342
  className: "header-wrapper",
339
- ...r.wrapper
343
+ ...n.wrapper
340
344
  },
341
345
  logo: {
342
346
  gap: 10,
343
- ...r.logo
347
+ ...n.logo
344
348
  },
345
- right: t
346
- }, s = Ne(), [o, l] = D("modern"), h = K(null), p = He(), {
347
- componentSize: u,
348
- setComponentSize: i,
349
- gridSize: y,
350
- setGridSize: w,
351
- spacingSize: g,
352
- setSpacingSize: C
353
- } = Ve(), x = (c, v) => {
349
+ 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) => {
354
358
  try {
355
- if (!/^[a-zA-Z0-9-]+$/.test(c) || !/^[#a-zA-Z0-9()\s,.-]+$/.test(v)) return;
356
- document.documentElement.style.setProperty(c, v);
357
- } catch (d) {
358
- console.error("CSS variable setting failed:", d);
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);
359
363
  }
360
- }, T = (c) => {
361
- if (!F[c]) return;
362
- l(c);
363
- const v = { ...F[c] };
364
- x("--header-bg", v.headerBg), x("--header-text", v.headerText), x("--sidebar-bg", v.sidebarBg), x("--sidebar-text", v.sidebarText), x("--button-primary", v.buttonPrimary), x("--button-primary-hover", v.buttonPrimaryHover), x("--button-primary-active", v.buttonPrimaryActive), x("--button-default", v.buttonDefault), x("--button-default-hover", v.buttonDefaultHover), x("--button-default-border", v.buttonDefaultBorder), x(
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(
365
369
  "--button-permission-border",
366
- v.buttonPermissionBorder
367
- ), h.current && h.current.setAttribute("data-theme", c), document.documentElement.setAttribute("data-theme", c), it(de, c, 30);
370
+ a.buttonPermissionBorder
371
+ ), l.current && l.current.setAttribute("data-theme", g), document.documentElement.setAttribute("data-theme", g), mt(me, g, 30);
368
372
  };
369
- B(() => {
370
- const c = at(de);
371
- c && F[c] ? T(c) : T("modern");
373
+ E(() => {
374
+ const g = ut(me);
375
+ g && G[g] ? p(g) : p("modern");
372
376
  }, []);
373
- const _ = () => ({ ...F[o] }).headerBg, z = () => {
374
- p(), s("/login");
377
+ const w = () => ({ ...G[i] }).headerBg, I = () => {
378
+ d(), s("/login");
375
379
  };
376
- ce ? ce("HH:mm:ss") : (/* @__PURE__ */ new Date()).toLocaleTimeString("ko-KR");
377
- const $ = /* @__PURE__ */ m("div", { style: { padding: "8px 0" }, children: [
378
- /* @__PURE__ */ m("div", { style: { marginBottom: "12px" }, children: [
379
- /* @__PURE__ */ e(Le, { value: _(), disabled: !0, size: "small" }),
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" }),
380
384
  /* @__PURE__ */ e("span", { style: { marginLeft: "8px", fontSize: "12px" }, children: "현재 테마 색상" })
381
385
  ] }),
382
- /* @__PURE__ */ m("div", { style: { display: "flex", flexDirection: "column", gap: "4px" }, children: [
386
+ /* @__PURE__ */ y("div", { style: { display: "flex", flexDirection: "column", gap: "4px" }, children: [
383
387
  /* @__PURE__ */ e(
384
- I,
388
+ L,
385
389
  {
386
- type: o === "modern" ? "primary" : "default",
390
+ type: i === "modern" ? "primary" : "default",
387
391
  size: "small",
388
- onClick: () => T("modern"),
392
+ onClick: () => p("modern"),
389
393
  style: {
390
394
  textAlign: "left",
391
- backgroundColor: o === "modern" ? F.modern.headerBg : void 0,
392
- color: o === "modern" ? F.modern.headerText : void 0
395
+ backgroundColor: i === "modern" ? G.modern.headerBg : void 0,
396
+ color: i === "modern" ? G.modern.headerText : void 0
393
397
  },
394
398
  children: "모던"
395
399
  },
396
400
  "modern"
397
401
  ),
398
- Object.entries(F).filter(([c]) => c !== "modern").map(([c, v]) => /* @__PURE__ */ e(
399
- I,
402
+ Object.entries(G).filter(([g]) => g !== "modern").map(([g, a]) => /* @__PURE__ */ e(
403
+ L,
400
404
  {
401
- type: o === c ? "primary" : "default",
405
+ type: i === g ? "primary" : "default",
402
406
  size: "small",
403
- onClick: () => T(c),
407
+ onClick: () => p(g),
404
408
  style: {
405
409
  textAlign: "left",
406
- backgroundColor: o === c ? v.headerBg : void 0,
407
- color: o === c ? v.headerText : void 0
410
+ backgroundColor: i === g ? a.headerBg : void 0,
411
+ color: i === g ? a.headerText : void 0
408
412
  },
409
- children: c
413
+ children: g
410
414
  },
411
- c
415
+ g
412
416
  ))
413
417
  ] }),
414
- /* @__PURE__ */ e(Pe, {}),
415
- /* @__PURE__ */ m("div", { style: { marginTop: "8px" }, children: [
418
+ /* @__PURE__ */ e(Re, {}),
419
+ /* @__PURE__ */ y("div", { style: { marginTop: "8px" }, children: [
416
420
  /* @__PURE__ */ e("div", { style: { marginBottom: "8px", fontSize: "12px" }, children: "컴포넌트 크기" }),
417
421
  /* @__PURE__ */ e(
418
- X,
422
+ te,
419
423
  {
420
- marks: ee,
421
- value: u,
424
+ marks: re,
425
+ value: c,
422
426
  min: 0,
423
427
  max: 2,
424
428
  step: 1,
425
- onChange: (c) => i(c)
429
+ onChange: (g) => u(g)
426
430
  }
427
431
  ),
428
432
  /* @__PURE__ */ e(
@@ -433,14 +437,14 @@ const Tt = ({
433
437
  }
434
438
  ),
435
439
  /* @__PURE__ */ e(
436
- X,
440
+ te,
437
441
  {
438
- marks: ee,
439
- value: y,
442
+ marks: re,
443
+ value: C,
440
444
  min: 0,
441
445
  max: 2,
442
446
  step: 1,
443
- onChange: (c) => w(c)
447
+ onChange: (g) => m(g)
444
448
  }
445
449
  ),
446
450
  /* @__PURE__ */ e(
@@ -451,89 +455,102 @@ const Tt = ({
451
455
  }
452
456
  ),
453
457
  /* @__PURE__ */ e(
454
- X,
458
+ te,
455
459
  {
456
- marks: ee,
457
- value: g,
460
+ marks: re,
461
+ value: h,
458
462
  min: 0,
459
463
  max: 2,
460
464
  step: 1,
461
- onChange: (c) => C(c)
465
+ onChange: (g) => N(g)
462
466
  }
463
467
  )
464
468
  ] })
465
469
  ] });
466
- return /* @__PURE__ */ m(
467
- Dt,
470
+ return /* @__PURE__ */ y(
471
+ $t,
468
472
  {
469
- className: n.wrapper.className,
470
- style: { ...n.wrapper.style },
473
+ className: o.wrapper.className,
474
+ style: { ...o.wrapper.style },
471
475
  children: [
472
- n.logo && /* @__PURE__ */ e("div", { className: "header-left", children: /* @__PURE__ */ e(
476
+ o.logo && /* @__PURE__ */ e("div", { className: "header-left", children: /* @__PURE__ */ e(
473
477
  "div",
474
478
  {
475
479
  className: "logo-container",
476
- style: { gap: n.logo?.gap },
477
- children: n.logo?.items
480
+ style: { gap: o.logo?.gap },
481
+ children: o.logo?.items
478
482
  }
479
483
  ) }),
480
- /* @__PURE__ */ m(
484
+ t && /* @__PURE__ */ e(
485
+ "div",
486
+ {
487
+ className: "header-center",
488
+ style: {
489
+ flex: 1,
490
+ display: "flex",
491
+ justifyContent: "center",
492
+ alignItems: "center"
493
+ },
494
+ children: t
495
+ }
496
+ ),
497
+ /* @__PURE__ */ y(
481
498
  "div",
482
499
  {
483
500
  className: "header-right",
484
501
  style: {
485
- gap: n.right?.gap,
486
- minWidth: n.right?.minWidth
502
+ gap: o.right?.gap,
503
+ minWidth: o.right?.minWidth
487
504
  },
488
505
  children: [
489
- n.right?.items?.map((c, v) => /* @__PURE__ */ e("div", { children: c }, v)),
490
- n.right?.alarm?.visible && /* @__PURE__ */ e(
491
- I,
506
+ o.right?.items?.map((g, a) => /* @__PURE__ */ e("div", { children: g }, a)),
507
+ o.right?.alarm?.visible && /* @__PURE__ */ e(
508
+ L,
492
509
  {
493
510
  type: "text",
494
- icon: /* @__PURE__ */ e("img", { src: Mt, alt: "알림" }),
511
+ icon: /* @__PURE__ */ e("img", { src: Rt, alt: "알림" }),
495
512
  className: "alarm-btn",
496
- onClick: n.right?.alarm?.onClick
513
+ onClick: o.right?.alarm?.onClick
497
514
  }
498
515
  ),
499
- n.right?.theme?.visible && /* @__PURE__ */ e(
500
- Me,
516
+ o.right?.theme?.visible && /* @__PURE__ */ e(
517
+ ze,
501
518
  {
502
- content: $,
519
+ content: D,
503
520
  title: "테마 설정",
504
521
  trigger: "click",
505
522
  placement: "bottomRight",
506
- onOpenChange: (c) => n.right?.theme?.onOpenChange?.(c),
523
+ onOpenChange: (g) => o.right?.theme?.onOpenChange?.(g),
507
524
  children: /* @__PURE__ */ e(
508
- I,
525
+ L,
509
526
  {
510
527
  type: "text",
511
- icon: /* @__PURE__ */ e("img", { src: Et, alt: "개인설정" }),
528
+ icon: /* @__PURE__ */ e("img", { src: Dt, alt: "개인설정" }),
512
529
  className: "theme-btn",
513
- onClick: n.right?.theme?.onClick
530
+ onClick: o.right?.theme?.onClick
514
531
  }
515
532
  )
516
533
  }
517
534
  ),
518
- n.right?.logout?.visible && /* @__PURE__ */ e(
519
- I,
535
+ o.right?.logout?.visible && /* @__PURE__ */ e(
536
+ L,
520
537
  {
521
538
  type: "text",
522
- icon: /* @__PURE__ */ e("img", { src: Bt, alt: "로그아웃" }),
523
- onClick: n.right?.logout?.onClick || z,
539
+ icon: /* @__PURE__ */ e("img", { src: zt, alt: "로그아웃" }),
540
+ onClick: o.right?.logout?.onClick || I,
524
541
  className: "logout-btn"
525
542
  }
526
543
  ),
527
- n.right?.avatar?.visible && /* @__PURE__ */ e(
528
- Be,
544
+ o.right?.avatar?.visible && /* @__PURE__ */ e(
545
+ De,
529
546
  {
530
- icon: /* @__PURE__ */ e(Ze, {}),
547
+ icon: /* @__PURE__ */ e(Je, {}),
531
548
  className: "avatar",
532
549
  style: {
533
- width: n.right?.avatar?.width,
534
- height: n.right?.avatar?.height
550
+ width: o.right?.avatar?.width,
551
+ height: o.right?.avatar?.height
535
552
  },
536
- onClick: n.right?.avatar?.onClick
553
+ onClick: o.right?.avatar?.onClick
537
554
  }
538
555
  )
539
556
  ]
@@ -542,288 +559,288 @@ const Tt = ({
542
559
  ]
543
560
  }
544
561
  );
545
- }, ne = /* @__PURE__ */ Object.freeze({
562
+ }, ae = /* @__PURE__ */ Object.freeze({
546
563
  Translate: {
547
- toString(r) {
548
- if (!r)
564
+ toString(n) {
565
+ if (!n)
549
566
  return;
550
567
  const {
551
568
  x: t,
552
- y: n
553
- } = r;
554
- return "translate3d(" + (t ? Math.round(t) : 0) + "px, " + (n ? Math.round(n) : 0) + "px, 0)";
569
+ y: r
570
+ } = n;
571
+ return "translate3d(" + (t ? Math.round(t) : 0) + "px, " + (r ? Math.round(r) : 0) + "px, 0)";
555
572
  }
556
573
  },
557
574
  Scale: {
558
- toString(r) {
559
- if (!r)
575
+ toString(n) {
576
+ if (!n)
560
577
  return;
561
578
  const {
562
579
  scaleX: t,
563
- scaleY: n
564
- } = r;
565
- return "scaleX(" + t + ") scaleY(" + n + ")";
580
+ scaleY: r
581
+ } = n;
582
+ return "scaleX(" + t + ") scaleY(" + r + ")";
566
583
  }
567
584
  },
568
585
  Transform: {
569
- toString(r) {
570
- if (r)
571
- return [ne.Translate.toString(r), ne.Scale.toString(r)].join(" ");
586
+ toString(n) {
587
+ if (n)
588
+ return [ae.Translate.toString(n), ae.Scale.toString(n)].join(" ");
572
589
  }
573
590
  },
574
591
  Transition: {
575
- toString(r) {
592
+ toString(n) {
576
593
  let {
577
594
  property: t,
578
- duration: n,
579
- easing: s
580
- } = r;
581
- return t + " " + n + "ms " + s;
595
+ duration: r,
596
+ easing: o
597
+ } = n;
598
+ return t + " " + r + "ms " + o;
582
599
  }
583
600
  }
584
- }), Rt = oe(
585
- ({ className: r, ...t }) => {
586
- const n = K(null), {
587
- attributes: s,
588
- listeners: o,
589
- transform: l,
590
- transition: h,
591
- isDragging: p,
592
- setNodeRef: u
593
- } = bt({ id: t["data-node-key"] }), [i, y] = D();
594
- B(() => {
595
- const g = n.current;
596
- if (g)
597
- if (p) {
598
- const C = Math.round(g.getBoundingClientRect().width);
599
- y(C);
601
+ }), At = ce(
602
+ ({ className: n, ...t }) => {
603
+ const r = U(null), {
604
+ attributes: o,
605
+ listeners: s,
606
+ transform: i,
607
+ transition: b,
608
+ 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)
614
+ if (l) {
615
+ const h = Math.round(m.getBoundingClientRect().width);
616
+ u(h);
600
617
  } else
601
- y(void 0);
602
- }, [p]);
603
- const w = {
618
+ u(void 0);
619
+ }, [l]);
620
+ const C = {
604
621
  ...t.style,
605
- transform: l ? ne.Transform.toString(l) : void 0,
606
- transition: h ?? "transform 0.16s ease",
622
+ transform: i ? ae.Transform.toString(i) : void 0,
623
+ transition: b ?? "transform 0.16s ease",
607
624
  cursor: "grab",
608
625
  userSelect: "none",
609
626
  willChange: "transform",
610
627
  // ✅ 드래그 중 픽셀 폭 고정 (flex 재계산 억제)
611
- width: i ?? void 0,
612
- minWidth: i ?? void 0,
613
- maxWidth: i ?? void 0,
614
- flex: i !== void 0 ? "0 0 auto" : void 0
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
615
632
  };
616
- return $e(t.children, {
617
- ref: (g) => {
618
- n.current !== g && (n.current = g), u(g);
633
+ return Ke(t.children, {
634
+ ref: (m) => {
635
+ r.current !== m && (r.current = m), d(m);
619
636
  },
620
- style: w,
621
- ...s,
622
- ...o
637
+ style: C,
638
+ ...o,
639
+ ...s
623
640
  });
624
641
  }
625
- ), zt = oe(function({
642
+ ), Ft = ce(function({
626
643
  config: t,
627
- isFirst: n,
628
- isLast: s,
629
- canCloseAll: o,
630
- onFirst: l,
631
- onPrev: h,
632
- onNext: p,
633
- onLast: u,
634
- onCloseAll: i
644
+ isFirst: r,
645
+ isLast: o,
646
+ canCloseAll: s,
647
+ onFirst: i,
648
+ onPrev: b,
649
+ onNext: l,
650
+ onLast: d,
651
+ onCloseAll: c
635
652
  }) {
636
- return /* @__PURE__ */ m("div", { className: t.wrapper?.className, style: t.wrapper?.style, children: [
653
+ return /* @__PURE__ */ y("div", { className: t.wrapper?.className, style: t.wrapper?.style, children: [
637
654
  /* @__PURE__ */ e(
638
- W,
655
+ K,
639
656
  {
640
657
  title: "첫 번째 탭",
641
658
  className: t.tooltip?.className,
642
659
  style: t.tooltip?.style,
643
660
  children: /* @__PURE__ */ e(
644
- I,
661
+ L,
645
662
  {
646
663
  className: t.buttons?.className,
647
664
  style: t.buttons?.style,
648
665
  size: "small",
649
- icon: /* @__PURE__ */ e(Ye, {}),
650
- onClick: l,
651
- disabled: n
666
+ icon: /* @__PURE__ */ e(et, {}),
667
+ onClick: i,
668
+ disabled: r
652
669
  }
653
670
  )
654
671
  }
655
672
  ),
656
673
  /* @__PURE__ */ e(
657
- W,
674
+ K,
658
675
  {
659
676
  title: "이전 탭",
660
677
  className: t.tooltip?.className,
661
678
  style: t.tooltip?.style,
662
679
  children: /* @__PURE__ */ e(
663
- I,
680
+ L,
664
681
  {
665
682
  className: t.buttons?.className,
666
683
  style: t.buttons?.style,
667
684
  size: "small",
668
- icon: /* @__PURE__ */ e(qe, {}),
669
- onClick: h,
670
- disabled: n
685
+ icon: /* @__PURE__ */ e(tt, {}),
686
+ onClick: b,
687
+ disabled: r
671
688
  }
672
689
  )
673
690
  }
674
691
  ),
675
692
  /* @__PURE__ */ e(
676
- W,
693
+ K,
677
694
  {
678
695
  title: "다음 탭",
679
696
  className: t.tooltip?.className,
680
697
  style: t.tooltip?.style,
681
698
  children: /* @__PURE__ */ e(
682
- I,
699
+ L,
683
700
  {
684
701
  className: t.buttons?.className,
685
702
  style: t.buttons?.style,
686
703
  size: "small",
687
- icon: /* @__PURE__ */ e(Qe, {}),
688
- onClick: p,
689
- disabled: s
704
+ icon: /* @__PURE__ */ e(nt, {}),
705
+ onClick: l,
706
+ disabled: o
690
707
  }
691
708
  )
692
709
  }
693
710
  ),
694
711
  /* @__PURE__ */ e(
695
- W,
712
+ K,
696
713
  {
697
714
  title: "마지막 탭",
698
715
  className: t.tooltip?.className,
699
716
  style: t.tooltip?.style,
700
717
  children: /* @__PURE__ */ e(
701
- I,
718
+ L,
702
719
  {
703
720
  className: t.buttons?.className,
704
721
  style: t.buttons?.style,
705
722
  size: "small",
706
- icon: /* @__PURE__ */ e(Xe, {}),
707
- onClick: u,
708
- disabled: s
723
+ icon: /* @__PURE__ */ e(rt, {}),
724
+ onClick: d,
725
+ disabled: o
709
726
  }
710
727
  )
711
728
  }
712
729
  ),
713
730
  /* @__PURE__ */ e(
714
- W,
731
+ K,
715
732
  {
716
733
  title: "모든 탭 닫기",
717
734
  className: t.tooltip?.className,
718
735
  style: t.tooltip?.style,
719
736
  children: /* @__PURE__ */ e(
720
- I,
737
+ L,
721
738
  {
722
739
  className: t.buttons?.className,
723
740
  style: t.buttons?.style,
724
741
  size: "small",
725
- icon: /* @__PURE__ */ e(ge, {}),
726
- onClick: i,
727
- disabled: !o
742
+ icon: /* @__PURE__ */ e(ye, {}),
743
+ onClick: c,
744
+ disabled: !s
728
745
  }
729
746
  )
730
747
  }
731
748
  )
732
749
  ] });
733
- }), Ft = ({
734
- config: r = {}
750
+ }), Wt = ({
751
+ config: n = {}
735
752
  }) => {
736
753
  const t = {
737
754
  wrapper: {
738
755
  className: "menu-tab-wrapper",
739
- ...r?.wrapper
756
+ ...n?.wrapper
740
757
  },
741
758
  tabs: {
742
759
  className: "menu-tabs",
743
- ...r?.tabs
760
+ ...n?.tabs
744
761
  },
745
762
  nav: {
746
763
  wrapper: {
747
764
  className: "menu-nav-wrapper",
748
- ...r?.nav?.wrapper
765
+ ...n?.nav?.wrapper
749
766
  },
750
767
  buttons: {
751
768
  className: "menu-nav-buttons",
752
- ...r?.nav?.buttons
769
+ ...n?.nav?.buttons
753
770
  },
754
771
  tooltip: {
755
772
  className: "menu-nav-tooltip",
756
- ...r?.nav?.tooltip
773
+ ...n?.nav?.tooltip
757
774
  },
758
- ...r?.nav
775
+ ...n?.nav
759
776
  },
760
- ...r
761
- }, n = O((d) => d.tabs), s = O((d) => d.activeMenuId), o = O((d) => d.focusTab), l = O((d) => d.closeTab), h = O((d) => d.reorderTabs), p = lt(
762
- ct(dt, { activationConstraint: { distance: 6 } })
763
- ), u = (d) => {
764
- o(d);
765
- }, i = (d, S) => {
766
- S === "remove" && typeof d == "string" && l(d);
767
- }, y = () => {
768
- n.length > 0 && o(n[0].key);
769
- }, w = () => {
770
- if (!s || n.length <= 1) return;
771
- const d = n.findIndex((S) => S.key === s);
772
- d > 0 && o(n[d - 1].key);
773
- }, g = () => {
774
- if (!s || n.length <= 1) return;
775
- const d = n.findIndex((S) => S.key === s);
776
- d < n.length - 1 && o(n[d + 1].key);
777
+ ...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 = () => {
785
+ r.length > 0 && s(r[0].key);
777
786
  }, C = () => {
778
- n.length > 0 && o(n[n.length - 1].key);
779
- }, x = () => {
780
- n.forEach((d) => {
781
- l(d.key);
787
+ 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);
794
+ }, h = () => {
795
+ r.length > 0 && s(r[r.length - 1].key);
796
+ }, N = () => {
797
+ r.forEach((a) => {
798
+ i(a.key);
782
799
  });
783
- }, T = s ? n.findIndex((d) => d.key === s) : -1, _ = T === 0, z = T === n.length - 1, $ = Z(
784
- () => n.map((d) => ({
785
- key: d.key,
786
- label: d.label,
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,
787
804
  closable: !0,
788
805
  children: null
789
806
  // 컨텐츠는 Main 쪽에서 렌더 → 여기선 헤더만 필요
790
807
  })),
791
- [n]
792
- ), c = A(
793
- ({ active: d, over: S }) => {
794
- if (!S || d.id === S.id) return;
795
- const L = n.findIndex((E) => E.key === d.id), G = n.findIndex((E) => E.key === S.id);
796
- if (L < 0 || G < 0 || L === G) return;
797
- const q = n.map((E) => E.key), U = ht(q, L, G);
798
- h?.(U);
808
+ [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, _);
815
+ b?.(Z);
799
816
  },
800
- [n, h]
801
- ), v = A(
802
- (d, S) => /* @__PURE__ */ e(
803
- ut,
817
+ [r, b]
818
+ ), g = z(
819
+ (a, M) => /* @__PURE__ */ e(
820
+ ft,
804
821
  {
805
- sensors: p,
806
- onDragEnd: c,
807
- collisionDetection: mt,
808
- modifiers: [pt],
822
+ sensors: l,
823
+ onDragEnd: D,
824
+ collisionDetection: bt,
825
+ modifiers: [yt],
809
826
  children: /* @__PURE__ */ e(
810
- gt,
827
+ vt,
811
828
  {
812
- items: n.map((L) => L.key),
813
- strategy: ft,
814
- children: /* @__PURE__ */ e(S, { ...d, children: (L) => /* @__PURE__ */ he(
815
- Rt,
829
+ items: r.map((T) => T.key),
830
+ strategy: wt,
831
+ children: /* @__PURE__ */ e(M, { ...a, children: (T) => /* @__PURE__ */ be(
832
+ At,
816
833
  {
817
- ...L.props,
818
- key: L.key
834
+ ...T.props,
835
+ key: T.key
819
836
  },
820
- L
837
+ T
821
838
  ) })
822
839
  }
823
840
  )
824
841
  }
825
842
  ),
826
- [p, c, n]
843
+ [l, D, r]
827
844
  );
828
845
  return /* @__PURE__ */ e(
829
846
  "div",
@@ -831,40 +848,40 @@ const Tt = ({
831
848
  className: t.wrapper.className,
832
849
  style: {
833
850
  ...t.wrapper.style,
834
- display: n.length === 0 ? "none" : "block"
851
+ display: r.length === 0 ? "none" : "block"
835
852
  },
836
853
  children: /* @__PURE__ */ e(
837
- Ee,
854
+ $e,
838
855
  {
839
856
  type: "editable-card",
840
- activeKey: s || void 0,
841
- onChange: u,
842
- onEdit: i,
857
+ activeKey: o || void 0,
858
+ onChange: d,
859
+ onEdit: c,
843
860
  className: t.tabs.className,
844
861
  style: t.tabs.style,
845
862
  hideAdd: !0,
846
- items: $,
863
+ items: I,
847
864
  tabBarExtraContent: /* @__PURE__ */ e(
848
- zt,
865
+ Ft,
849
866
  {
850
867
  config: t?.nav,
851
- isFirst: !!_,
852
- isLast: !!z,
853
- canCloseAll: n.length > 0,
854
- onFirst: y,
855
- onPrev: w,
856
- onNext: g,
857
- onLast: C,
858
- onCloseAll: x
868
+ isFirst: !!p,
869
+ isLast: !!w,
870
+ canCloseAll: r.length > 0,
871
+ onFirst: u,
872
+ onPrev: C,
873
+ onNext: m,
874
+ onLast: h,
875
+ onCloseAll: N
859
876
  }
860
877
  ),
861
- renderTabBar: v
878
+ renderTabBar: g
862
879
  }
863
880
  )
864
881
  }
865
882
  );
866
- }, { Sider: At } = j, _t = ({
867
- config: r = {}
883
+ }, { Sider: Gt } = j, _t = ({
884
+ config: n = {}
868
885
  }) => {
869
886
  const t = {
870
887
  collapsed: !1,
@@ -873,7 +890,7 @@ const Tt = ({
873
890
  mainMenu: "MAIN",
874
891
  subMenu: "SUB",
875
892
  program: "PRGM",
876
- ...r?.menuGubunCode
893
+ ...n?.menuGubunCode
877
894
  },
878
895
  className: {
879
896
  wrapper: "side-wrapper",
@@ -881,7 +898,7 @@ const Tt = ({
881
898
  segmented: {
882
899
  wrapper: "sider-segmented",
883
900
  item: "sider-segment-item",
884
- ...r?.className?.segmented
901
+ ...n?.className?.segmented
885
902
  },
886
903
  sider: {
887
904
  content: "sider-content",
@@ -892,28 +909,28 @@ const Tt = ({
892
909
  errorText: "sider-error-text",
893
910
  menu: "sider-menu",
894
911
  menuContainer: "sider-menu-container",
895
- ...r?.className?.sider
912
+ ...n?.className?.sider
896
913
  },
897
- ...r?.className
914
+ ...n?.className
898
915
  },
899
916
  style: {
900
917
  search: {
901
918
  placeholder: "메뉴명, 메뉴번호 검색...",
902
919
  height: 30,
903
- ...r?.style?.search
920
+ ...n?.style?.search
904
921
  },
905
- ...r?.style
922
+ ...n?.style
906
923
  },
907
- ...r
908
- }, [n, s] = D(""), [o, l] = D(
924
+ ...n
925
+ }, [r, o] = R(""), [s, i] = R(
909
926
  "category"
910
- ), [h, p] = D([]), { activeMenuId: u, sidebarCollapsed: i, openTabFromMenu: y, toggleSidebar: w } = O(), { menuList: g, isLoading: C, error: x, findMenuById: T, flatMenuList: _ } = We(), { nodes: z, treeNodes: $, loadFavoritesIfNeeded: c } = je(), v = Z(() => {
911
- const b = [], f = (a, k = 0) => {
912
- if (a.menuGbCd === t.menuGubunCode.program && a.scrnPath) {
913
- const N = " ".repeat(k), M = a.menuNo || "";
914
- b.push({
915
- value: a.menuId,
916
- label: /* @__PURE__ */ m(
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) => {
929
+ if (f.menuGbCd === t.menuGubunCode.program && f.scrnPath) {
930
+ const S = " ".repeat(P), O = f.menuNo || "";
931
+ k.push({
932
+ value: f.menuId,
933
+ label: /* @__PURE__ */ y(
917
934
  "div",
918
935
  {
919
936
  style: {
@@ -922,9 +939,9 @@ const Tt = ({
922
939
  alignItems: "center"
923
940
  },
924
941
  children: [
925
- /* @__PURE__ */ m("span", { children: [
926
- N,
927
- a.menuNm
942
+ /* @__PURE__ */ y("span", { children: [
943
+ S,
944
+ f.menuNm
928
945
  ] }),
929
946
  /* @__PURE__ */ e(
930
947
  "span",
@@ -937,65 +954,65 @@ const Tt = ({
937
954
  borderRadius: "3px",
938
955
  marginLeft: "8px"
939
956
  },
940
- children: M
957
+ children: O
941
958
  }
942
959
  )
943
960
  ]
944
961
  }
945
962
  ),
946
- menuItem: a
963
+ menuItem: f
947
964
  });
948
965
  }
949
- a.children && a.children.length > 0 && a.children.forEach((N) => f(N, k + 1));
966
+ f.children && f.children.length > 0 && f.children.forEach((S) => x(S, P + 1));
950
967
  };
951
- return g.forEach((a) => f(a)), b;
952
- }, [g]), d = Z(() => n.trim() ? v.filter((b) => {
953
- const f = b.menuItem.menuNm.toLowerCase(), a = String(b.menuItem.menuNo || "미지정").toLowerCase(), k = n.toLowerCase();
954
- return f.includes(k) || a.includes(k);
955
- }) : [], [v, n]), S = (b) => {
956
- if (!b || typeof b != "string") {
957
- console.warn("Invalid menu selection value:", b);
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);
958
975
  return;
959
976
  }
960
- if (!/^[a-zA-Z0-9_-]+$/.test(b)) {
961
- console.warn("Invalid menu ID format:", b);
977
+ if (!/^[a-zA-Z0-9_-]+$/.test(k)) {
978
+ console.warn("Invalid menu ID format:", k);
962
979
  return;
963
980
  }
964
- const f = v.find(
965
- (a) => a.value === b
981
+ const x = g.find(
982
+ (f) => f.value === k
966
983
  );
967
- if (f) {
968
- const { menuItem: a } = f;
969
- if (!a || !a.menuId || !a.menuNm) {
970
- console.warn("Invalid menu item:", a);
984
+ if (x) {
985
+ const { menuItem: f } = x;
986
+ if (!f || !f.menuId || !f.menuNm) {
987
+ console.warn("Invalid menu item:", f);
971
988
  return;
972
989
  }
973
- a.menuGbCd === t.menuGubunCode.program && a.scrnPath ? (console.log(
990
+ f.menuGbCd === t.menuGubunCode.program && f.scrnPath ? (console.log(
974
991
  "✅ 검색으로 프로그램 메뉴 선택 - 탭 추가 및 setCurrentProgram 호출"
975
992
  ), console.log(
976
993
  "메뉴명:",
977
- a.menuNm,
994
+ f.menuNm,
978
995
  "경로:",
979
- a.scrnPath,
996
+ f.scrnPath,
980
997
  "scrnId:",
981
- a.scrnId
982
- ), y(a)) : (a.menuGbCd === t.menuGubunCode.mainMenu || a.menuGbCd === t.menuGubunCode.subMenu) && (console.log("❌ 검색으로 메인/서브 메뉴 선택 - 이벤트 무시"), console.log("메뉴명:", a.menuNm, "menuGbCd:", a.menuGbCd)), s("");
998
+ 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("");
983
1000
  }
984
- }, L = A(
985
- (b) => {
986
- const f = T(b);
987
- f?.menuGbCd === t.menuGubunCode.program && (console.log(
1001
+ }, T = z(
1002
+ (k) => {
1003
+ const x = v(k);
1004
+ x?.menuGbCd === t.menuGubunCode.program && (console.log(
988
1005
  "메뉴명:",
989
- f.menuNm,
1006
+ x.menuNm,
990
1007
  "경로:",
991
- f.scrnPath,
1008
+ x.scrnPath,
992
1009
  "scrnId:",
993
- f.scrnId
994
- ), y(f));
1010
+ x.scrnId
1011
+ ), u(x));
995
1012
  },
996
- [T, y]
997
- ), G = A((b) => b.map((f) => ({
998
- key: f.menuId,
1013
+ [v, u]
1014
+ ), _ = z((k) => k.map((x) => ({
1015
+ key: x.menuId,
999
1016
  label: /* @__PURE__ */ e(
1000
1017
  "div",
1001
1018
  {
@@ -1004,21 +1021,21 @@ const Tt = ({
1004
1021
  justifyContent: "space-between",
1005
1022
  alignItems: "center"
1006
1023
  },
1007
- children: /* @__PURE__ */ e("span", { children: f.menuNm })
1024
+ children: /* @__PURE__ */ e("span", { children: x.menuNm })
1008
1025
  }
1009
1026
  ),
1010
- icon: q(f.iconCd, f.menuGbCd),
1011
- children: f.children && f.children.length > 0 ? G(f.children) : void 0
1012
- })), []), q = (b, f) => {
1013
- if (b) {
1014
- const a = le[b];
1015
- if (a)
1016
- return /* @__PURE__ */ e(a, {});
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];
1032
+ if (f)
1033
+ return /* @__PURE__ */ e(f, {});
1017
1034
  }
1018
- if (f)
1019
- switch (f) {
1035
+ if (x)
1036
+ switch (x) {
1020
1037
  case t.menuGubunCode.mainMenu:
1021
- return /* @__PURE__ */ e(le.HomeOutlined, {});
1038
+ return /* @__PURE__ */ e(Q.HomeOutlined, {});
1022
1039
  case t.menuGubunCode.subMenu:
1023
1040
  return null;
1024
1041
  case t.menuGubunCode.program:
@@ -1027,66 +1044,66 @@ const Tt = ({
1027
1044
  return null;
1028
1045
  }
1029
1046
  return null;
1030
- }, U = A(
1031
- (b) => {
1032
- if (g.length === 0) return [];
1033
- const f = (k) => {
1034
- if (k)
1035
- return typeof k == "string" ? z[k] : k;
1036
- }, a = (k) => {
1037
- if (k.type === "M") {
1038
- const N = k, M = T(N.menuId) || void 0, P = !!M, be = P ? `${M?.menuNm ?? N.menuNm ?? N.menuId}` : `${N.menuNm ?? N.menuId} (삭제됨)`;
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} (삭제됨)`;
1039
1056
  return {
1040
- key: N.menuId,
1041
- label: be,
1042
- icon: P ? void 0 : /* @__PURE__ */ e(nt, { style: { color: "#faad14" } })
1057
+ key: S.menuId,
1058
+ label: ke,
1059
+ icon: B ? void 0 : /* @__PURE__ */ e(it, { style: { color: "#faad14" } })
1043
1060
  };
1044
1061
  } else {
1045
- const N = k, M = (N.children ?? []).map(f).filter(Boolean).map(a);
1062
+ const S = P, O = (S.children ?? []).map(x).filter(Boolean).map(f);
1046
1063
  return {
1047
- key: N.bkmkId,
1048
- label: N.bkmkNm ?? N.bkmkId,
1049
- icon: N.prntBkmkId === "-" ? /* @__PURE__ */ e(rt, {}) : /* @__PURE__ */ e(ot, {}),
1050
- children: M
1064
+ key: S.bkmkId,
1065
+ label: S.bkmkNm ?? S.bkmkId,
1066
+ icon: S.prntBkmkId === "-" ? /* @__PURE__ */ e(lt, {}) : /* @__PURE__ */ e(ct, {}),
1067
+ children: O
1051
1068
  // 빈 배열이면 자동으로 말아줌
1052
1069
  };
1053
1070
  }
1054
1071
  };
1055
- return b.map(a);
1072
+ return k.map(f);
1056
1073
  },
1057
- [T, z, g]
1058
- ), E = Z(
1059
- () => U($),
1060
- [U, $, z]
1074
+ [v, w, m]
1075
+ ), $ = F(
1076
+ () => Z(I),
1077
+ [Z, I, w]
1061
1078
  );
1062
- return B(() => {
1063
- ue() && c(ue());
1064
- }, [c]), B(() => {
1065
- o === "category" && s("");
1066
- }, [o]), B(() => {
1067
- if (!u || o !== "category") return;
1068
- const f = ((a) => {
1069
- const k = [], N = new Map(_.map((P) => [P.menuId, P]));
1070
- let M = a;
1071
- for (; M; ) {
1072
- const P = N.get(M);
1073
- if (!P) break;
1074
- if (P.menuPrntId && P.menuPrntId !== "-" && P.menuPrntId !== "")
1075
- k.push(P.menuPrntId), M = P.menuPrntId;
1079
+ return E(() => {
1080
+ he() && D(he());
1081
+ }, [D]), E(() => {
1082
+ 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]));
1087
+ let O = f;
1088
+ 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;
1076
1093
  else
1077
1094
  break;
1078
1095
  }
1079
- return k;
1080
- })(u);
1081
- f.length > 0 && p((a) => {
1082
- const k = /* @__PURE__ */ new Set([...a, ...f]);
1083
- return Array.from(k);
1096
+ return P;
1097
+ })(d);
1098
+ x.length > 0 && l((f) => {
1099
+ const P = /* @__PURE__ */ new Set([...f, ...x]);
1100
+ return Array.from(P);
1084
1101
  });
1085
- }, [u, o, _]), /* @__PURE__ */ m(
1086
- At,
1102
+ }, [d, s, p]), /* @__PURE__ */ y(
1103
+ Gt,
1087
1104
  {
1088
1105
  className: t.className.wrapper,
1089
- collapsed: t.collapsed || i,
1106
+ collapsed: t.collapsed || c,
1090
1107
  trigger: null,
1091
1108
  width: t.width || 230,
1092
1109
  children: [
@@ -1111,10 +1128,10 @@ const Tt = ({
1111
1128
  transition: "all 0.3s ease"
1112
1129
  },
1113
1130
  children: /* @__PURE__ */ e(
1114
- I,
1131
+ L,
1115
1132
  {
1116
1133
  type: "text",
1117
- icon: t.collapsed || i ? /* @__PURE__ */ e(Je, {}) : /* @__PURE__ */ e(et, {}),
1134
+ icon: t.collapsed || c ? /* @__PURE__ */ e(ot, {}) : /* @__PURE__ */ e(st, {}),
1118
1135
  style: {
1119
1136
  fontSize: "12px",
1120
1137
  color: "#787878",
@@ -1126,28 +1143,28 @@ const Tt = ({
1126
1143
  justifyContent: "center",
1127
1144
  borderRadius: "0 10px 10px 0"
1128
1145
  },
1129
- onClick: w
1146
+ onClick: C
1130
1147
  }
1131
1148
  )
1132
1149
  }
1133
1150
  ),
1134
- !(t.collapsed || i) && /* @__PURE__ */ e(
1151
+ !(t.collapsed || c) && /* @__PURE__ */ e(
1135
1152
  "div",
1136
1153
  {
1137
1154
  style: {
1138
1155
  padding: 10
1139
1156
  },
1140
1157
  children: /* @__PURE__ */ e(
1141
- De,
1158
+ Ae,
1142
1159
  {
1143
- value: n,
1144
- options: d,
1145
- onSelect: S,
1146
- onSearch: s,
1160
+ value: r,
1161
+ options: a,
1162
+ onSelect: M,
1163
+ onSearch: o,
1147
1164
  style: { width: "100%" },
1148
1165
  allowClear: !0,
1149
1166
  children: /* @__PURE__ */ e(
1150
- te,
1167
+ oe,
1151
1168
  {
1152
1169
  className: t.className.search,
1153
1170
  placeholder: t.style.search.placeholder,
@@ -1181,7 +1198,7 @@ const Tt = ({
1181
1198
  )
1182
1199
  }
1183
1200
  ),
1184
- !(t.collapsed || i) && /* @__PURE__ */ e(
1201
+ !(t.collapsed || c) && /* @__PURE__ */ e(
1185
1202
  "div",
1186
1203
  {
1187
1204
  style: {
@@ -1190,18 +1207,18 @@ const Tt = ({
1190
1207
  marginBottom: "10px"
1191
1208
  },
1192
1209
  children: /* @__PURE__ */ e(
1193
- Oe,
1210
+ Fe,
1194
1211
  {
1195
1212
  className: t.className.segmented.wrapper,
1196
1213
  options: [
1197
1214
  {
1198
- label: /* @__PURE__ */ m(V, { children: [
1215
+ label: /* @__PURE__ */ y(V, { children: [
1199
1216
  /* @__PURE__ */ e(
1200
1217
  "span",
1201
1218
  {
1202
1219
  className: t.className.segmented.item,
1203
1220
  style: { display: "flex", alignItems: "center" },
1204
- children: /* @__PURE__ */ m(
1221
+ children: /* @__PURE__ */ y(
1205
1222
  "svg",
1206
1223
  {
1207
1224
  xmlns: "http://www.w3.org/2000/svg",
@@ -1250,7 +1267,7 @@ const Tt = ({
1250
1267
  value: "category"
1251
1268
  },
1252
1269
  {
1253
- label: /* @__PURE__ */ m(V, { children: [
1270
+ label: /* @__PURE__ */ y(V, { children: [
1254
1271
  /* @__PURE__ */ e(
1255
1272
  "span",
1256
1273
  {
@@ -1282,9 +1299,9 @@ const Tt = ({
1282
1299
  value: "favorite"
1283
1300
  }
1284
1301
  ],
1285
- value: o,
1286
- onChange: (b) => {
1287
- l(b);
1302
+ value: s,
1303
+ onChange: (k) => {
1304
+ i(k);
1288
1305
  },
1289
1306
  style: {
1290
1307
  width: "100%"
@@ -1294,8 +1311,8 @@ const Tt = ({
1294
1311
  )
1295
1312
  }
1296
1313
  ),
1297
- /* @__PURE__ */ m("div", { className: t.className.sider.content, children: [
1298
- C && /* @__PURE__ */ m(
1314
+ /* @__PURE__ */ y("div", { className: t.className.sider.content, children: [
1315
+ h && /* @__PURE__ */ y(
1299
1316
  "div",
1300
1317
  {
1301
1318
  className: t.className.sider.loading,
@@ -1307,7 +1324,7 @@ const Tt = ({
1307
1324
  },
1308
1325
  children: [
1309
1326
  /* @__PURE__ */ e(
1310
- Re,
1327
+ We,
1311
1328
  {
1312
1329
  theme: {
1313
1330
  components: {
@@ -1316,7 +1333,7 @@ const Tt = ({
1316
1333
  }
1317
1334
  }
1318
1335
  },
1319
- children: /* @__PURE__ */ e(Y, { size: "default" })
1336
+ children: /* @__PURE__ */ e(q, { size: "default" })
1320
1337
  }
1321
1338
  ),
1322
1339
  /* @__PURE__ */ e(
@@ -1330,16 +1347,16 @@ const Tt = ({
1330
1347
  ]
1331
1348
  }
1332
1349
  ),
1333
- x && /* @__PURE__ */ m("div", { className: t.className.sider.error, children: [
1350
+ N && /* @__PURE__ */ y("div", { className: t.className.sider.error, children: [
1334
1351
  /* @__PURE__ */ e(
1335
- tt,
1352
+ at,
1336
1353
  {
1337
1354
  className: t.className.sider.errorIcon
1338
1355
  }
1339
1356
  ),
1340
1357
  /* @__PURE__ */ e("div", { className: t.className.sider.errorText, children: "메뉴 로드 실패" })
1341
1358
  ] }),
1342
- !C && !x && o === "category" && g.length === 0 && /* @__PURE__ */ e(
1359
+ !h && !N && s === "category" && m.length === 0 && /* @__PURE__ */ e(
1343
1360
  "div",
1344
1361
  {
1345
1362
  style: {
@@ -1351,7 +1368,7 @@ const Tt = ({
1351
1368
  children: "메뉴가 없습니다"
1352
1369
  }
1353
1370
  ),
1354
- !C && !x && o === "favorite" && E.length === 0 && /* @__PURE__ */ e(
1371
+ !h && !N && s === "favorite" && $.length === 0 && /* @__PURE__ */ e(
1355
1372
  "div",
1356
1373
  {
1357
1374
  style: {
@@ -1363,28 +1380,28 @@ const Tt = ({
1363
1380
  children: "즐겨찾기된 메뉴가 없습니다"
1364
1381
  }
1365
1382
  ),
1366
- !C && !x && o === "category" && g.length > 0 && /* @__PURE__ */ e("div", { className: t.className.sider.menuContainer, children: /* @__PURE__ */ e(
1367
- ie,
1383
+ !h && !N && s === "category" && m.length > 0 && /* @__PURE__ */ e("div", { className: t.className.sider.menuContainer, children: /* @__PURE__ */ e(
1384
+ se,
1368
1385
  {
1369
1386
  theme: "light",
1370
1387
  mode: "inline",
1371
- items: G(g),
1388
+ items: _(m),
1372
1389
  className: t.className.sider.menu,
1373
- selectedKeys: [u || ""],
1374
- openKeys: h,
1375
- onOpenChange: p,
1376
- onClick: (b) => L(b.key)
1390
+ selectedKeys: [d || ""],
1391
+ openKeys: b,
1392
+ onOpenChange: l,
1393
+ onClick: (k) => T(k.key)
1377
1394
  }
1378
1395
  ) }),
1379
- !C && !x && o === "favorite" && E.length > 0 && /* @__PURE__ */ e("div", { className: t.className.sider.menuContainer, children: /* @__PURE__ */ e(
1380
- ie,
1396
+ !h && !N && s === "favorite" && $.length > 0 && /* @__PURE__ */ e("div", { className: t.className.sider.menuContainer, children: /* @__PURE__ */ e(
1397
+ se,
1381
1398
  {
1382
1399
  theme: "light",
1383
1400
  mode: "inline",
1384
- items: E,
1401
+ items: $,
1385
1402
  className: t.className.sider.menu,
1386
- selectedKeys: [u || ""],
1387
- onClick: (b) => L(b.key)
1403
+ selectedKeys: [d || ""],
1404
+ onClick: (k) => T(k.key)
1388
1405
  }
1389
1406
  ) })
1390
1407
  ] })
@@ -1392,7 +1409,7 @@ const Tt = ({
1392
1409
  }
1393
1410
  );
1394
1411
  };
1395
- class $t extends Ge {
1412
+ class Ht extends Ue {
1396
1413
  constructor(t) {
1397
1414
  super(t), this.resetError = () => {
1398
1415
  this.setState({ hasError: !1, error: void 0, errorInfo: void 0 });
@@ -1401,14 +1418,14 @@ class $t extends Ge {
1401
1418
  static getDerivedStateFromError(t) {
1402
1419
  return { hasError: !0, error: t };
1403
1420
  }
1404
- componentDidCatch(t, n) {
1405
- console.error("ErrorBound caught an error:", t, n), this.setState({
1421
+ componentDidCatch(t, r) {
1422
+ console.error("ErrorBound caught an error:", t, r), this.setState({
1406
1423
  error: t,
1407
- errorInfo: n
1424
+ errorInfo: r
1408
1425
  });
1409
1426
  }
1410
1427
  render() {
1411
- return this.state.hasError ? this.props.fallback ? this.props.fallback : /* @__PURE__ */ m(
1428
+ return this.state.hasError ? this.props.fallback ? this.props.fallback : /* @__PURE__ */ y(
1412
1429
  "div",
1413
1430
  {
1414
1431
  style: {
@@ -1422,17 +1439,17 @@ class $t extends Ge {
1422
1439
  },
1423
1440
  children: [
1424
1441
  /* @__PURE__ */ e(
1425
- pe,
1442
+ fe,
1426
1443
  {
1427
1444
  status: "error",
1428
1445
  title: "컴포넌트 로딩 중 오류가 발생했습니다",
1429
1446
  subTitle: this.state.error ? `오류 내용: ${this.state.error.message}` : "알 수 없는 오류가 발생했습니다",
1430
1447
  extra: [
1431
1448
  /* @__PURE__ */ e(
1432
- I,
1449
+ L,
1433
1450
  {
1434
1451
  type: "primary",
1435
- icon: /* @__PURE__ */ e(fe, {}),
1452
+ icon: /* @__PURE__ */ e(Ce, {}),
1436
1453
  onClick: this.resetError,
1437
1454
  style: { marginRight: 8 },
1438
1455
  children: "다시 시도"
@@ -1442,7 +1459,7 @@ class $t extends Ge {
1442
1459
  ]
1443
1460
  }
1444
1461
  ),
1445
- this.state.error && /* @__PURE__ */ m(
1462
+ this.state.error && /* @__PURE__ */ y(
1446
1463
  "details",
1447
1464
  {
1448
1465
  style: {
@@ -1477,13 +1494,13 @@ class $t extends Ge {
1477
1494
  ) : this.props.children;
1478
1495
  }
1479
1496
  }
1480
- const Gt = ({
1481
- isActive: r,
1497
+ const Vt = ({
1498
+ isActive: n,
1482
1499
  instance: t,
1483
- params: n
1500
+ params: r
1484
1501
  }) => {
1485
- const { activeMenuId: s, closeTab: o } = O(), l = () => {
1486
- s && o(s);
1502
+ const { activeMenuId: o, closeTab: s } = A(), i = () => {
1503
+ o && s(o);
1487
1504
  };
1488
1505
  return t ? /* @__PURE__ */ e(
1489
1506
  "div",
@@ -1494,12 +1511,12 @@ const Gt = ({
1494
1511
  left: 0,
1495
1512
  width: "100%",
1496
1513
  height: "100%",
1497
- visibility: r ? "visible" : "hidden",
1498
- opacity: r ? 1 : 0,
1514
+ visibility: n ? "visible" : "hidden",
1515
+ opacity: n ? 1 : 0,
1499
1516
  transition: "opacity 0.2s ease-in-out",
1500
- pointerEvents: r ? "auto" : "none"
1517
+ pointerEvents: n ? "auto" : "none"
1501
1518
  },
1502
- children: /* @__PURE__ */ e($t, { children: /* @__PURE__ */ e(se, { fallback: null, children: t && he(t, { params: n }) }) })
1519
+ children: /* @__PURE__ */ e(Ht, { children: /* @__PURE__ */ e(X, { fallback: null, children: t && be(t, { params: r }) }) })
1503
1520
  }
1504
1521
  ) : /* @__PURE__ */ e(
1505
1522
  "div",
@@ -1513,10 +1530,10 @@ const Gt = ({
1513
1530
  display: "flex",
1514
1531
  justifyContent: "center",
1515
1532
  alignItems: "center",
1516
- visibility: r ? "visible" : "hidden",
1517
- opacity: r ? 1 : 0,
1533
+ visibility: n ? "visible" : "hidden",
1534
+ opacity: n ? 1 : 0,
1518
1535
  transition: "opacity 0.2s ease-in-out",
1519
- pointerEvents: r ? "auto" : "none"
1536
+ pointerEvents: n ? "auto" : "none"
1520
1537
  },
1521
1538
  children: /* @__PURE__ */ e(
1522
1539
  "div",
@@ -1530,20 +1547,110 @@ const Gt = ({
1530
1547
  padding: 24
1531
1548
  },
1532
1549
  children: /* @__PURE__ */ e(
1533
- pe,
1550
+ fe,
1534
1551
  {
1535
- icon: /* @__PURE__ */ e(st, { twoToneColor: "#69b1ff" }),
1552
+ icon: /* @__PURE__ */ e(dt, { twoToneColor: "#69b1ff" }),
1536
1553
  status: "warning",
1537
1554
  title: "등록된 메뉴 정보가 없거나 유효한 메뉴가 아닙니다.",
1538
- subTitle: /* @__PURE__ */ e(Fe.Text, { type: "secondary", children: "자세한 내용은 관리자에게 문의바랍니다." }),
1539
- extra: /* @__PURE__ */ e(ze, { children: /* @__PURE__ */ e(I, { icon: /* @__PURE__ */ e(ge, {}), onClick: l, children: "탭 닫기" }) })
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: "탭 닫기" }) })
1540
1557
  }
1541
1558
  )
1542
1559
  }
1543
1560
  )
1544
1561
  }
1545
1562
  );
1546
- }, Ht = oe(Gt), Vt = () => /* @__PURE__ */ m(V, { children: [
1563
+ }, jt = ce(Vt), Kt = ({
1564
+ menuGubunCode: n = {
1565
+ mainMenu: "MAIN",
1566
+ subMenu: "SUB",
1567
+ program: "PRGM"
1568
+ },
1569
+ mode: t = "horizontal",
1570
+ style: r,
1571
+ routeMap: o
1572
+ }) => {
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, {});
1579
+ }
1580
+ if (p)
1581
+ switch (p) {
1582
+ case n.mainMenu:
1583
+ return /* @__PURE__ */ e(Q.HomeOutlined, {});
1584
+ default:
1585
+ return null;
1586
+ }
1587
+ return null;
1588
+ },
1589
+ [n]
1590
+ ), m = z(
1591
+ (v) => v.map((p) => {
1592
+ const w = p.children && p.children.length === 1 && p.children[0].menuGbCd === n.program;
1593
+ return {
1594
+ key: p.menuId,
1595
+ label: p.menuNm,
1596
+ icon: C(p.iconCd, p.menuGbCd),
1597
+ // children이 1개이고 program이면 드롭다운 없음, 2개 이상이면 드롭다운 표시
1598
+ children: p.children && p.children.length > 0 && !w ? m(p.children) : void 0
1599
+ };
1600
+ }),
1601
+ [C, n]
1602
+ ), h = F(() => m(s), [s, m]), N = z(
1603
+ (v) => {
1604
+ const p = i(v.key);
1605
+ if (p) {
1606
+ 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);
1610
+ return;
1611
+ }
1612
+ 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);
1615
+ return;
1616
+ }
1617
+ }
1618
+ },
1619
+ [i, n, d, o]
1620
+ );
1621
+ return E(() => {
1622
+ 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;
1631
+ else
1632
+ break;
1633
+ }
1634
+ return I;
1635
+ })(l);
1636
+ p.length > 0 && u((w) => {
1637
+ const I = /* @__PURE__ */ new Set([...w, ...p]);
1638
+ return Array.from(I);
1639
+ });
1640
+ }, [l, t, b]), /* @__PURE__ */ e(
1641
+ se,
1642
+ {
1643
+ mode: t,
1644
+ theme: "light",
1645
+ items: h,
1646
+ selectedKeys: [l || ""],
1647
+ openKeys: t === "vertical" ? c : void 0,
1648
+ onOpenChange: t === "vertical" ? u : void 0,
1649
+ onClick: N,
1650
+ style: r
1651
+ }
1652
+ );
1653
+ }, Ut = () => /* @__PURE__ */ y(V, { children: [
1547
1654
  /* @__PURE__ */ e(
1548
1655
  "link",
1549
1656
  {
@@ -1553,141 +1660,141 @@ const Gt = ({
1553
1660
  }
1554
1661
  ),
1555
1662
  /* @__PURE__ */ e("div", { className: "LandingContainer-wrap", children: /* @__PURE__ */ e("div", { className: "inner", children: /* @__PURE__ */ e("div", { className: "content" }) }) })
1556
- ] }), Wt = (r, t) => {
1557
- console.log("createPopupViewLoader 호출 - popupUrl:", r);
1558
- const s = ((o) => {
1559
- if (o.startsWith("/src/pages/views/popup/")) {
1560
- const p = o + ".tsx";
1561
- return console.log(`팝업 URL 변환: ${o} -> ${p}`), p;
1663
+ ] }), Zt = (n, t) => {
1664
+ console.log("createPopupViewLoader 호출 - popupUrl:", n);
1665
+ const o = ((s) => {
1666
+ if (s.startsWith("/src/pages/views/popup/")) {
1667
+ const l = s + ".tsx";
1668
+ return console.log(`팝업 URL 변환: ${s} -> ${l}`), l;
1562
1669
  }
1563
- const h = `/src/pages/views/popup/${o.startsWith("/") ? o.substring(1) : o}.tsx`;
1564
- return console.log(`팝업 URL 변환: ${o} -> ${h}`), h;
1565
- })(r);
1566
- return !s || !t?.glob || !t.glob[s] ? (console.warn(`팝업 뷰를 찾을 수 없습니다: ${r} (${s})`), console.warn("사용 가능한 팝업 뷰들:", Object.keys(t?.glob || {})), null) : t.glob[s];
1567
- }, jt = ({ popup: r, modules: t }) => {
1568
- const [n, s] = D(null), [o, l] = D(!1), [h, p] = D(null), u = () => {
1569
- console.log("PopupArea - handleClose:", r.popupId), ae.getState().closePopup(r.popupId);
1670
+ const b = `/src/pages/views/popup/${s.startsWith("/") ? s.substring(1) : s}.tsx`;
1671
+ return console.log(`팝업 URL 변환: ${s} -> ${b}`), b;
1672
+ })(n);
1673
+ 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 = () => {
1676
+ console.log("PopupArea - handleClose:", n.popupId), de.getState().closePopup(n.popupId);
1570
1677
  };
1571
- return B(() => {
1678
+ return E(() => {
1572
1679
  (async () => {
1573
- console.log("팝업 뷰 로드 시작:", r.popupUrl), l(!0), p(null);
1680
+ console.log("팝업 뷰 로드 시작:", n.popupUrl), i(!0), l(null);
1574
1681
  try {
1575
- const y = Wt(r.popupUrl, t);
1576
- if (!y) {
1577
- const C = `팝업 뷰를 찾을 수 없습니다: ${r.popupUrl}`;
1578
- console.error(C), p(C), l(!1);
1682
+ const u = Zt(n.popupUrl, t);
1683
+ if (!u) {
1684
+ const h = `팝업 뷰를 찾을 수 없습니다: ${n.popupUrl}`;
1685
+ console.error(h), l(h), i(!1);
1579
1686
  return;
1580
1687
  }
1581
1688
  console.log("팝업 뷰 모듈 로드 중...");
1582
- const w = await y();
1583
- console.log("팝업 뷰 모듈 로드 완료:", w);
1584
- const g = w.default;
1585
- if (console.log("팝업 뷰 컴포넌트:", g), !g)
1689
+ const C = await u();
1690
+ console.log("팝업 뷰 모듈 로드 완료:", C);
1691
+ const m = C.default;
1692
+ if (console.log("팝업 뷰 컴포넌트:", m), !m)
1586
1693
  throw new Error("팝업 뷰 컴포넌트를 찾을 수 없습니다");
1587
- s(() => g), console.log("팝업 뷰 설정 완료");
1588
- } catch (y) {
1589
- console.error("팝업 뷰 로드 실패:", y), p(y instanceof Error ? y.message : "팝업 뷰 로드 실패");
1694
+ o(() => m), console.log("팝업 뷰 설정 완료");
1695
+ } catch (u) {
1696
+ console.error("팝업 뷰 로드 실패:", u), l(u instanceof Error ? u.message : "팝업 뷰 로드 실패");
1590
1697
  } finally {
1591
- l(!1);
1698
+ i(!1);
1592
1699
  }
1593
1700
  })();
1594
- }, [r.popupUrl]), o ? /* @__PURE__ */ m("div", { className: "popup-loading", children: [
1595
- /* @__PURE__ */ e(Y, { size: "large" }),
1701
+ }, [n.popupUrl]), s ? /* @__PURE__ */ y("div", { className: "popup-loading", children: [
1702
+ /* @__PURE__ */ e(q, { size: "large" }),
1596
1703
  /* @__PURE__ */ e("p", { children: "팝업을 로드하는 중..." })
1597
- ] }) : h ? /* @__PURE__ */ m("div", { className: "popup-error", children: [
1598
- /* @__PURE__ */ e(J, { description: h, image: J.PRESENTED_IMAGE_SIMPLE }),
1704
+ ] }) : b ? /* @__PURE__ */ y("div", { className: "popup-error", children: [
1705
+ /* @__PURE__ */ e(ne, { description: b, image: ne.PRESENTED_IMAGE_SIMPLE }),
1599
1706
  /* @__PURE__ */ e(
1600
- I,
1707
+ L,
1601
1708
  {
1602
- icon: /* @__PURE__ */ e(fe, {}),
1709
+ icon: /* @__PURE__ */ e(Ce, {}),
1603
1710
  onClick: () => window.location.reload(),
1604
1711
  children: "다시 시도"
1605
1712
  }
1606
1713
  )
1607
- ] }) : n ? /* @__PURE__ */ e(
1608
- se,
1714
+ ] }) : r ? /* @__PURE__ */ e(
1715
+ X,
1609
1716
  {
1610
- fallback: /* @__PURE__ */ m("div", { className: "popup-loading", children: [
1611
- /* @__PURE__ */ e(Y, { size: "large" }),
1717
+ fallback: /* @__PURE__ */ y("div", { className: "popup-loading", children: [
1718
+ /* @__PURE__ */ e(q, { size: "large" }),
1612
1719
  /* @__PURE__ */ e("p", { children: "컴포넌트를 로드하는 중..." })
1613
1720
  ] }),
1614
1721
  children: /* @__PURE__ */ e(
1615
- n,
1722
+ r,
1616
1723
  {
1617
1724
  popup: {
1618
- ...r,
1619
- close: u
1725
+ ...n,
1726
+ close: d
1620
1727
  // popup 객체에 close 이벤트 추가
1621
1728
  },
1622
- onClose: u
1729
+ onClose: d
1623
1730
  }
1624
1731
  )
1625
1732
  }
1626
- ) : /* @__PURE__ */ e("div", { className: "popup-empty", children: /* @__PURE__ */ e(J, { description: "팝업 내용을 불러올 수 없습니다." }) });
1627
- }, Kt = ({ modules: r }) => {
1628
- const { popups: t } = ae();
1629
- return t.length === 0 ? null : /* @__PURE__ */ e(V, { children: t.map((n) => {
1630
- if (n.isLocal || n.popupCode.startsWith("CORE_"))
1733
+ ) : /* @__PURE__ */ e("div", { className: "popup-empty", children: /* @__PURE__ */ e(ne, { description: "팝업 내용을 불러올 수 없습니다." }) });
1734
+ }, qt = ({ modules: n }) => {
1735
+ const { popups: t } = de();
1736
+ return t.length === 0 ? null : /* @__PURE__ */ e(V, { children: t.map((r) => {
1737
+ if (r.isLocal || r.popupCode.startsWith("CORE_"))
1631
1738
  return null;
1632
- const s = n.config || {}, o = s.width || n.width || 800, l = s.height || n.height || 600, h = s.title || n.popupTitle, p = n.buttonList?.map((u, i) => ({
1633
- key: u.btnId || `btn_${i}`,
1634
- text: u.btnNm,
1635
- type: u.btnId === "CLOSE" ? "default" : "primary",
1636
- disabled: u.enblYn !== "Y",
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",
1637
1744
  danger: !1
1638
1745
  })) || [];
1639
1746
  return console.log("팝업 렌더링:", {
1640
- popupId: n.popupId,
1641
- popupCode: n.popupCode,
1642
- title: h,
1643
- width: o,
1644
- height: l,
1645
- buttons: p
1646
- }), /* @__PURE__ */ e(re, { children: /* @__PURE__ */ e("div", { children: /* @__PURE__ */ e(jt, { popup: n, modules: r }) }, n.popupId) }, `sbp-${n.popupId}`);
1747
+ popupId: r.popupId,
1748
+ popupCode: r.popupCode,
1749
+ title: b,
1750
+ width: s,
1751
+ height: i,
1752
+ buttons: l
1753
+ }), /* @__PURE__ */ e(ie, { children: /* @__PURE__ */ e("div", { children: /* @__PURE__ */ e(Yt, { popup: r, modules: n }) }, r.popupId) }, `sbp-${r.popupId}`);
1647
1754
  }) });
1648
- }, Ut = () => {
1649
- const { popups: r, closePopup: t } = ae();
1650
- return /* @__PURE__ */ e(V, { children: r.map((n) => {
1651
- if (!(n.isLocal || n.popupCode.startsWith("CORE_"))) return null;
1652
- const s = It[n.popupCode];
1653
- if (!s) return null;
1654
- const o = s.component;
1655
- return /* @__PURE__ */ e(re, { children: /* @__PURE__ */ e(se, { fallback: null, children: /* @__PURE__ */ e(o, { popup: n, onClose: () => t(n.popupId) }) }, n.popupId) }, `sbp-${n.popupId}`);
1755
+ }, xe = () => {
1756
+ const { popups: n, closePopup: t } = de();
1757
+ return /* @__PURE__ */ e(V, { children: n.map((r) => {
1758
+ if (!(r.isLocal || r.popupCode.startsWith("CORE_"))) return null;
1759
+ const o = Tt[r.popupCode];
1760
+ if (!o) return null;
1761
+ const s = o.component;
1762
+ 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}`);
1656
1763
  }) });
1657
- }, Zt = (r) => ({
1764
+ }, Qt = (n) => ({
1658
1765
  position: "absolute",
1659
1766
  inset: 0,
1660
- visibility: r ? "visible" : "hidden",
1661
- opacity: r ? 1 : 0,
1767
+ visibility: n ? "visible" : "hidden",
1768
+ opacity: n ? 1 : 0,
1662
1769
  transition: "opacity 0.2s ease-in-out",
1663
- pointerEvents: r ? "auto" : "none"
1664
- }), Yt = ({ once: r = !0 }) => {
1665
- const { lock: t } = we(), n = K(!1);
1666
- return B(() => {
1667
- r && n.current || (n.current = !0, t());
1668
- }, [r, t]), null;
1669
- }, qt = ({ isActive: r, flagged: t, tabKey: n, onUnlock: s, children: o }) => {
1670
- const l = K(null), [h, p] = D(!1), u = A((y) => {
1671
- l.current = y, p(!!y);
1672
- }, []), i = Zt(r);
1673
- return /* @__PURE__ */ e("div", { ref: u, style: i, children: h ? /* @__PURE__ */ m(
1674
- ve,
1770
+ pointerEvents: n ? "auto" : "none"
1771
+ }), Xt = ({ once: n = !0 }) => {
1772
+ const { lock: t } = Se(), r = U(!1);
1773
+ return E(() => {
1774
+ n && r.current || (r.current = !0, t());
1775
+ }, [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,
1675
1782
  {
1676
1783
  idleMs: Number.POSITIVE_INFINITY,
1677
1784
  persistLocked: !1,
1678
1785
  overlayScope: "scoped",
1679
1786
  overlayPosition: "absolute",
1680
- eventTarget: l.current,
1681
- overlayId: `tab-overlay-${n}`,
1682
- onUnlock: async () => (s(), !0),
1787
+ eventTarget: i.current,
1788
+ overlayId: `tab-overlay-${r}`,
1789
+ onUnlock: async () => (o(), !0),
1683
1790
  children: [
1684
- r && t ? /* @__PURE__ */ e(Yt, { once: !0 }) : null,
1685
- o
1791
+ n && t ? /* @__PURE__ */ e(Xt, { once: !0 }) : null,
1792
+ s
1686
1793
  ]
1687
1794
  }
1688
- ) : o });
1689
- }, mn = ({
1690
- config: r = {},
1795
+ ) : s });
1796
+ }, fn = ({
1797
+ config: n = {},
1691
1798
  modules: t = {
1692
1799
  view: {
1693
1800
  path: "/src/pages/views/content"
@@ -1697,38 +1804,38 @@ const Gt = ({
1697
1804
  }
1698
1805
  }
1699
1806
  }) => {
1700
- const n = K(
1807
+ const r = U(
1701
1808
  /* @__PURE__ */ new Map()
1702
1809
  ), {
1703
- tabs: s,
1704
- tabParams: o,
1705
- activeMenuId: l,
1706
- tabProtectFlag: h,
1707
- clearProtectFlagForKey: p
1708
- } = O(), u = A(
1709
- (i) => {
1710
- const y = n.current.get(i.key);
1711
- if (y) return y;
1712
- const w = i.gubun === "M" ? `${t.view.path}${i.menuItem?.scrnPath}.tsx` : `${t.view.path}${i.componentItem?.scrnPath}.tsx`;
1713
- let g = t.view?.glob?.[w];
1714
- if (!g && typeof import.meta < "u" && typeof import.meta.glob == "function" && (g = (/* @__PURE__ */ Object.assign({}))[w]), g) {
1715
- const C = R(
1716
- g
1810
+ tabs: o,
1811
+ tabParams: s,
1812
+ activeMenuId: i,
1813
+ tabProtectFlag: b,
1814
+ 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
1717
1824
  );
1718
- return n.current.set(i.key, C), C;
1825
+ return r.current.set(c.key, h), h;
1719
1826
  }
1720
1827
  return null;
1721
1828
  },
1722
1829
  [t.view?.glob]
1723
1830
  );
1724
- return /* @__PURE__ */ m(j, { className: "main-layout", children: [
1725
- /* @__PURE__ */ e(Ot, { config: r?.header }),
1726
- /* @__PURE__ */ m(j, { children: [
1727
- /* @__PURE__ */ e(_t, { config: r?.sidebar }),
1728
- /* @__PURE__ */ m("div", { className: "content-container", children: [
1729
- /* @__PURE__ */ e(Ft, { config: r?.menuTab }),
1730
- /* @__PURE__ */ m(Pt, { config: r?.content, children: [
1731
- /* @__PURE__ */ e("div", { className: "view-container", children: /* @__PURE__ */ m(
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(
1732
1839
  "div",
1733
1840
  {
1734
1841
  style: {
@@ -1737,72 +1844,216 @@ const Gt = ({
1737
1844
  height: "100%"
1738
1845
  },
1739
1846
  children: [
1740
- s.map((i) => {
1741
- const y = u(i), w = l === i.key, g = !!h?.[i.key], C = o[i.key] || {};
1742
- return /* @__PURE__ */ e(re, { children: /* @__PURE__ */ e(
1743
- qt,
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,
1744
1851
  {
1745
- isActive: w,
1746
- flagged: g,
1747
- tabKey: i.key,
1748
- onUnlock: () => p(i.key),
1852
+ isActive: C,
1853
+ flagged: m,
1854
+ tabKey: c.key,
1855
+ onUnlock: () => l(c.key),
1749
1856
  children: /* @__PURE__ */ e(
1750
- Ht,
1857
+ jt,
1751
1858
  {
1752
- isActive: w,
1753
- instance: y || void 0,
1754
- params: C
1859
+ isActive: C,
1860
+ instance: u || void 0,
1861
+ params: h
1755
1862
  },
1756
- i.key
1863
+ c.key
1757
1864
  )
1758
1865
  },
1759
- i.key
1760
- ) }, `sbp-${i.key}`);
1866
+ c.key
1867
+ ) }, `sbp-${c.key}`);
1761
1868
  }),
1762
- (!l || s.length === 0) && /* @__PURE__ */ e(Vt, {})
1869
+ (!i || o.length === 0) && /* @__PURE__ */ e(Ut, {})
1763
1870
  ]
1764
1871
  }
1765
1872
  ) }),
1766
- /* @__PURE__ */ e(Ut, {}),
1767
- /* @__PURE__ */ e(Kt, { modules: t?.popup })
1873
+ /* @__PURE__ */ e(xe, {}),
1874
+ /* @__PURE__ */ e(qt, { modules: t?.popup })
1768
1875
  ] })
1769
1876
  ] })
1770
1877
  ] }),
1771
- (r?.quickService?.visible ?? !0) && /* @__PURE__ */ e(Te, {})
1878
+ (n?.quickService?.visible ?? !0) && /* @__PURE__ */ e(Ee, {})
1879
+ ] });
1880
+ }, en = ({
1881
+ children: n,
1882
+ menuGubunCode: t = {
1883
+ mainMenu: "CMPRGRM",
1884
+ subMenu: "CMPRGRS",
1885
+ program: "CMPRGRP"
1886
+ },
1887
+ routeMap: r,
1888
+ routes: o
1889
+ }) => {
1890
+ const s = Le(), i = le(), { flatMenuList: b, findMenuById: l } = J(), d = F(() => {
1891
+ const u = s.pathname, C = u.replace(/^\/main/, "") || "/";
1892
+ if (r) {
1893
+ const m = Object.keys(r).find(
1894
+ (N) => r[N] === u
1895
+ );
1896
+ if (m)
1897
+ return l(m);
1898
+ const h = Object.keys(r).find((N) => (r[N].replace(/^\/main/, "") || "/") === C);
1899
+ if (h)
1900
+ return l(h);
1901
+ }
1902
+ return b.find(
1903
+ (m) => m.menuGbCd === t.program && m.scrnPath && (m.scrnPath === C || m.scrnPath === u || u.endsWith(m.scrnPath) || C === m.scrnPath)
1904
+ );
1905
+ }, [
1906
+ s.pathname,
1907
+ b,
1908
+ t.program,
1909
+ r,
1910
+ l
1911
+ ]), c = F(() => {
1912
+ if (!d)
1913
+ return [];
1914
+ const u = [], C = (h) => {
1915
+ if (!h || !h.menuPrntId || h.menuPrntId === "-")
1916
+ return [];
1917
+ const N = l(h.menuPrntId);
1918
+ return N ? [...C(N), N] : [];
1919
+ };
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}`
1926
+ );
1927
+ p && (N = p.startsWith("/main") ? p : `/main${p.startsWith("/") ? p : `/${p}`}`);
1928
+ }
1929
+ u.push({
1930
+ title: h.menuNm,
1931
+ onClick: N ? () => i(N) : void 0
1932
+ });
1933
+ }
1934
+ }), u.push({
1935
+ title: d.menuNm
1936
+ }), u;
1937
+ }, [d, t, i, l]);
1938
+ return /* @__PURE__ */ y(
1939
+ "div",
1940
+ {
1941
+ style: {
1942
+ height: "100%",
1943
+ padding: "15px 20px"
1944
+ },
1945
+ children: [
1946
+ /* @__PURE__ */ e(
1947
+ He,
1948
+ {
1949
+ separator: ">",
1950
+ items: c,
1951
+ style: { marginBottom: "16px" }
1952
+ }
1953
+ ),
1954
+ /* @__PURE__ */ e("div", { children: n })
1955
+ ]
1956
+ }
1957
+ );
1958
+ }, bn = ({ config: n = {} }) => {
1959
+ const t = n?.header?.menu, r = t?.visible !== !1, o = t?.routes, s = F(() => {
1960
+ if (!o) return;
1961
+ const i = {}, { flatMenuList: b } = J.getState();
1962
+ return b.forEach((l) => {
1963
+ 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/, "");
1967
+ });
1968
+ if (c) {
1969
+ const u = c === "/" ? "/main" : c.startsWith("/main") ? c : `/main${c.startsWith("/") ? c : `/${c}`}`;
1970
+ i[l.menuId] = u;
1971
+ }
1972
+ }
1973
+ }), i;
1974
+ }, [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,
1978
+ {
1979
+ menuGubunCode: t?.menuGubunCode,
1980
+ mode: t?.style?.mode || "horizontal",
1981
+ routeMap: s,
1982
+ style: {
1983
+ border: "none",
1984
+ backgroundColor: "transparent",
1985
+ minWidth: 0,
1986
+ flex: 1,
1987
+ ...t?.style
1988
+ }
1989
+ }
1990
+ ) }),
1991
+ /* @__PURE__ */ e("div", { className: "content-container", children: /* @__PURE__ */ y(ve, { config: n?.content, children: [
1992
+ /* @__PURE__ */ e("div", { className: "view-container", children: /* @__PURE__ */ e(
1993
+ "div",
1994
+ {
1995
+ style: {
1996
+ position: "relative",
1997
+ width: "100%",
1998
+ height: "100%"
1999
+ },
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(/^\//, "") || "";
2002
+ return /* @__PURE__ */ e(
2003
+ Y,
2004
+ {
2005
+ path: l,
2006
+ element: /* @__PURE__ */ e(
2007
+ en,
2008
+ {
2009
+ menuGubunCode: t?.menuGubunCode,
2010
+ routeMap: s,
2011
+ routes: o,
2012
+ children: /* @__PURE__ */ e(b, {})
2013
+ }
2014
+ )
2015
+ },
2016
+ i
2017
+ );
2018
+ }) }) })
2019
+ }
2020
+ ) }),
2021
+ /* @__PURE__ */ e(xe, {})
2022
+ ] }) })
1772
2023
  ] });
1773
- }, pn = ({ config: r, children: t }) => /* @__PURE__ */ e("div", { children: "BwgPortal02" });
1774
- function hn({
1775
- config: r,
2024
+ };
2025
+ function yn({
2026
+ config: n,
1776
2027
  ui: t,
1777
- navigate: n
2028
+ navigate: r
1778
2029
  }) {
1779
- const { loading: s, capsOn: o, prefills: l, onKeyDown: h, doLogin: p } = Ke(r), u = (i) => p(i, n);
1780
- return B(() => {
1781
- Ue.getState().fetchSystemMap();
1782
- }, []), /* @__PURE__ */ e(V, { children: t({ onSubmit: u, loading: s, capsOn: o, onKeyDown: h, prefills: l }) });
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 }) });
1783
2034
  }
1784
- function gn({
1785
- onSubmit: r,
2035
+ function Cn({
2036
+ onSubmit: n,
1786
2037
  loading: t,
1787
- capsOn: n,
1788
- onKeyDown: s,
1789
- prefills: o,
1790
- labels: l = {
2038
+ capsOn: r,
2039
+ onKeyDown: o,
2040
+ prefills: s,
2041
+ labels: i = {
1791
2042
  id: "ID 혹은 사번",
1792
2043
  pw: "비밀번호",
1793
2044
  remember: "Remember me",
1794
2045
  login: "로그인"
1795
2046
  },
1796
- header: h,
1797
- footer: p
2047
+ header: b,
2048
+ footer: l
1798
2049
  }) {
1799
- const [u] = H.useForm();
1800
- return B(() => {
1801
- o && (o.id || o.pswr) && u.setFieldsValue({ id: o.id, pswr: o.pswr });
1802
- }, [o, u]), /* @__PURE__ */ e("div", { className: "login-main", children: /* @__PURE__ */ m("div", { className: "login_wrap", children: [
1803
- h || /* @__PURE__ */ e("div", { className: "logo_box" }),
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: [
2054
+ b || /* @__PURE__ */ e("div", { className: "logo_box" }),
1804
2055
  /* @__PURE__ */ e("div", { className: "login_title" }),
1805
- /* @__PURE__ */ e(H, { form: u, onFinish: r, className: "login-form", children: /* @__PURE__ */ m(Ae, { vertical: !0, children: [
2056
+ /* @__PURE__ */ e(H, { form: d, onFinish: n, className: "login-form", children: /* @__PURE__ */ y(Ve, { vertical: !0, children: [
1806
2057
  /* @__PURE__ */ e(
1807
2058
  H.Item,
1808
2059
  {
@@ -1814,7 +2065,7 @@ function gn({
1814
2065
  message: "아이디는 공백이 들어갈 수 없습니다."
1815
2066
  }
1816
2067
  ],
1817
- children: /* @__PURE__ */ e(te, { allowClear: !0, placeholder: l.id, onKeyDown: s })
2068
+ children: /* @__PURE__ */ e(oe, { allowClear: !0, placeholder: i.id, onKeyDown: o })
1818
2069
  }
1819
2070
  ),
1820
2071
  /* @__PURE__ */ e(
@@ -1823,36 +2074,38 @@ function gn({
1823
2074
  name: "pswr",
1824
2075
  rules: [{ required: !0, message: "비밀번호를 입력하세요." }],
1825
2076
  children: /* @__PURE__ */ e(
1826
- te.Password,
2077
+ oe.Password,
1827
2078
  {
1828
2079
  allowClear: !0,
1829
- placeholder: l.pw,
1830
- onKeyDown: s
2080
+ placeholder: i.pw,
2081
+ onKeyDown: o
1831
2082
  }
1832
2083
  )
1833
2084
  }
1834
2085
  ),
1835
- /* @__PURE__ */ e(H.Item, { name: "remember", valuePropName: "checked", children: /* @__PURE__ */ e(_e, { children: l.remember }) }),
1836
- /* @__PURE__ */ e("div", { className: n ? "caps-lock caps-lock-on" : "caps-lock", children: n ? "Caps Lock On" : "Caps Lock Off" }),
1837
- /* @__PURE__ */ e(H.Item, { children: /* @__PURE__ */ e(I, { type: "primary", htmlType: "submit", loading: t, block: !0, children: l.login }) })
2086
+ /* @__PURE__ */ e(H.Item, { name: "remember", valuePropName: "checked", children: /* @__PURE__ */ e(je, { children: i.remember }) }),
2087
+ /* @__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 }) })
1838
2089
  ] }) }),
1839
- p
2090
+ l
1840
2091
  ] }) });
1841
2092
  }
1842
2093
  export {
1843
- un as A,
1844
- mn as B,
1845
- Ht as C,
1846
- gn as D,
1847
- dn as L,
1848
- Kt as P,
1849
- pn as a,
1850
- hn as b,
1851
- Vt as c,
1852
- Pt as d,
1853
- Ot as e,
1854
- Ft as f,
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,
1855
2107
  _t as g,
1856
- qt as h,
1857
- It as l
2108
+ en as h,
2109
+ Jt as i,
2110
+ Tt as l
1858
2111
  };