@bwg-ui/core 1.2.15 → 1.2.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunks/{MenuReport-CozV1tpR.js → MenuReport-ByLduwwZ.js} +27 -26
- package/dist/chunks/MenuReport-D5nIx5g9.cjs +1 -0
- package/dist/chunks/{common-components-B-zgrX-L.cjs → common-components-BXjzima0.cjs} +76 -76
- package/dist/chunks/{common-components-XA2KG7Pl.js → common-components-CyxuMobg.js} +7990 -7606
- package/dist/chunks/layout-components-CfFi4fiJ.cjs +35 -0
- package/dist/chunks/{layout-components-MrnKV5g7.js → layout-components-CyKRhOdT.js} +646 -614
- package/dist/components/common/BookmarkMngModal.d.ts.map +1 -1
- package/dist/components/common/BookmarkPopver.d.ts.map +1 -1
- package/dist/components/common/BwgConfigProvider.d.ts.map +1 -1
- package/dist/components/common/BwgEditor.d.ts.map +1 -1
- package/dist/components/common/BwgPagination.d.ts.map +1 -1
- package/dist/components/common/index.cjs +1 -1
- package/dist/components/common/index.js +1 -1
- package/dist/components/guide/BwgPracticeGuideS00.d.ts.map +1 -1
- package/dist/components/guide/BwgPracticeGuideS01.d.ts.map +1 -1
- package/dist/components/guide/index.cjs +1 -1
- package/dist/components/guide/index.d.ts +0 -1
- package/dist/components/guide/index.d.ts.map +1 -1
- package/dist/components/guide/index.js +97 -291
- package/dist/components/layout/custom/ConfigurableHeader.d.ts.map +1 -1
- package/dist/components/layout/custom/ConfigurableSidebar.d.ts.map +1 -1
- package/dist/components/layout/default/LoadingContainer.d.ts +1 -0
- package/dist/components/layout/default/LoadingContainer.d.ts.map +1 -1
- package/dist/components/layout/index.cjs +1 -1
- package/dist/components/layout/index.js +1 -1
- package/dist/components/layout/types.d.ts +28 -0
- package/dist/components/layout/types.d.ts.map +1 -1
- package/dist/components/pages/index.d.ts +1 -0
- package/dist/components/pages/index.d.ts.map +1 -1
- package/dist/components/pages/syst/CMHldyCfg.d.ts.map +1 -0
- package/dist/components/popup/MenuReport.d.ts.map +1 -1
- package/dist/components/popup/index.cjs +1 -1
- package/dist/components/popup/index.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +161 -159
- package/dist/public/realgrid/css/realgrid-style-custom.css +30 -4
- package/dist/stores/index.cjs +1 -1
- package/dist/stores/index.js +1 -1
- package/dist/styles/assets/images/contents/icon/ico-add-bookmark.svg +26 -0
- package/dist/styles/assets/images/contents/icon/ico-edit-folder.svg +18 -0
- package/dist/styles/assets/images/contents/icon/ico-new-folder.svg +20 -0
- package/dist/styles/assets/images/contents/icon/ico-save-bookmark.svg +25 -0
- package/dist/styles/components.css +207 -132
- package/dist/styles/layout-test.css +8 -300
- package/dist/styles/layout.css +77 -113
- package/dist/styles/variables.css +111 -78
- package/dist/utils/gwUtils.d.ts +38 -0
- package/dist/utils/gwUtils.d.ts.map +1 -1
- package/dist/utils/index.cjs +1 -1
- package/dist/utils/index.js +731 -700
- package/package.json +2 -1
- package/dist/chunks/MenuReport-Bqeps5fC.cjs +0 -1
- package/dist/chunks/layout-components-bb0cWC3I.cjs +0 -35
- package/dist/components/guide/CMHldyCfg.d.ts.map +0 -1
- /package/dist/components/{guide → pages/syst}/CMHldyCfg.d.ts +0 -0
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import { jsxs as g, jsx as e, Fragment as
|
|
1
|
+
import { jsxs as g, jsx as e, Fragment as R } from "react/jsx-runtime";
|
|
2
2
|
import { ServiceCodeProvider as me, CommonCodeProvider as pe, ScreenProtectProvider as he, useLock as ge, SearchBoxProvider as fe } from "../provider/index.js";
|
|
3
3
|
import { Routes as be, Route as K, Navigate as ye, useNavigate as Ce } from "react-router-dom";
|
|
4
|
-
import { G as ve, B as we, Q as xe } from "./common-components-
|
|
5
|
-
import { Spin as j, Layout as
|
|
6
|
-
import { lazy as F, useEffect as
|
|
7
|
-
import { useLogout as Fe, useMenuViewStore as
|
|
4
|
+
import { G as ve, B as we, Q as xe } from "./common-components-CyxuMobg.js";
|
|
5
|
+
import { Spin as j, Layout as H, ColorPicker as ke, Button as x, Popover as Ne, Avatar as Ie, Tabs as Se, Tooltip as z, AutoComplete as Te, Input as Y, Segmented as Le, ConfigProvider as Pe, Menu as te, Result as ie, Space as Me, Typography as Be, Empty as Z, Form as O, Flex as Ee, Checkbox as De } from "antd";
|
|
6
|
+
import { lazy as F, useEffect as S, useState as L, useRef as V, useMemo as W, useCallback as E, createElement as le, memo as q, cloneElement as Oe, Component as Re, Suspense as Q } from "react";
|
|
7
|
+
import { useLogout as Fe, useMenuViewStore as T, useMenuModelStore as Ae, useFavoriteStore as ze, usePopupStore as J, useLogin as He, useSystemStore as Ve } from "../stores/index.js";
|
|
8
8
|
import * as ne from "@ant-design/icons";
|
|
9
|
-
import { UserOutlined as
|
|
10
|
-
import { getCookie as
|
|
11
|
-
import { useSensors as
|
|
12
|
-
import { restrictToHorizontalAxis as
|
|
13
|
-
import { arrayMove as
|
|
14
|
-
const
|
|
9
|
+
import { UserOutlined as _e, StepBackwardOutlined as $e, LeftOutlined as Ge, RightOutlined as We, StepForwardOutlined as je, CloseOutlined as ce, MenuUnfoldOutlined as Ue, MenuFoldOutlined as Ke, ExclamationCircleOutlined as Ze, WarningOutlined as Ye, StarOutlined as Xe, FolderOpenOutlined as qe, ReloadOutlined as de, ExclamationCircleTwoTone as Qe } from "@ant-design/icons";
|
|
10
|
+
import { getCookie as Je, getCurrentDateString as re, setCookie as et, THEME_COOKIE_NAME as oe, getUserId as se } from "../utils/index.js";
|
|
11
|
+
import { useSensors as tt, useSensor as nt, PointerSensor as rt, DndContext as ot, closestCenter as st } from "@dnd-kit/core";
|
|
12
|
+
import { restrictToHorizontalAxis as at } from "@dnd-kit/modifiers";
|
|
13
|
+
import { arrayMove as it, SortableContext as lt, horizontalListSortingStrategy as ct, useSortable as dt } from "@dnd-kit/sortable";
|
|
14
|
+
const ut = F(() => import("./MenuReport-ByLduwwZ.js")), mt = F(() => import("./common-components-CyxuMobg.js").then((r) => r.W)), pt = F(() => import("./common-components-CyxuMobg.js").then((r) => r.X)), ht = F(() => import("./common-components-CyxuMobg.js").then((r) => r.Y)), gt = F(() => import("./common-components-CyxuMobg.js").then((r) => r.Z)), ft = {
|
|
15
15
|
// 게시판/문의
|
|
16
16
|
CORE_REPORT: {
|
|
17
|
-
component:
|
|
17
|
+
component: ut,
|
|
18
18
|
defaultConfig: {
|
|
19
19
|
title: "게시판/문의",
|
|
20
20
|
width: 1200,
|
|
@@ -23,7 +23,7 @@ const dt = F(() => import("./MenuReport-CozV1tpR.js")), ut = F(() => import("./c
|
|
|
23
23
|
},
|
|
24
24
|
// 조직/부서 검색류
|
|
25
25
|
CORE_DEPARTMENT_01: {
|
|
26
|
-
component:
|
|
26
|
+
component: mt,
|
|
27
27
|
defaultConfig: {
|
|
28
28
|
title: "부서 검색",
|
|
29
29
|
width: 620,
|
|
@@ -31,7 +31,7 @@ const dt = F(() => import("./MenuReport-CozV1tpR.js")), ut = F(() => import("./c
|
|
|
31
31
|
}
|
|
32
32
|
},
|
|
33
33
|
CORE_DEPARTMENT_02: {
|
|
34
|
-
component:
|
|
34
|
+
component: pt,
|
|
35
35
|
defaultConfig: {
|
|
36
36
|
title: "부서 검색",
|
|
37
37
|
width: 620,
|
|
@@ -39,7 +39,7 @@ const dt = F(() => import("./MenuReport-CozV1tpR.js")), ut = F(() => import("./c
|
|
|
39
39
|
}
|
|
40
40
|
},
|
|
41
41
|
CORE_ORGANIZATION_01: {
|
|
42
|
-
component:
|
|
42
|
+
component: ht,
|
|
43
43
|
defaultConfig: {
|
|
44
44
|
title: "조직 검색",
|
|
45
45
|
width: 620,
|
|
@@ -47,7 +47,7 @@ const dt = F(() => import("./MenuReport-CozV1tpR.js")), ut = F(() => import("./c
|
|
|
47
47
|
}
|
|
48
48
|
},
|
|
49
49
|
CORE_ORGANIZATION_02: {
|
|
50
|
-
component:
|
|
50
|
+
component: gt,
|
|
51
51
|
defaultConfig: {
|
|
52
52
|
title: "조직 검색",
|
|
53
53
|
width: 1e3,
|
|
@@ -55,10 +55,10 @@ const dt = F(() => import("./MenuReport-CozV1tpR.js")), ut = F(() => import("./c
|
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
}, ae = "bwg-dot-line-wave-v4";
|
|
58
|
-
function
|
|
58
|
+
function bt() {
|
|
59
59
|
if (typeof document > "u" || document.getElementById(ae)) return;
|
|
60
|
-
const
|
|
61
|
-
|
|
60
|
+
const r = document.createElement("style");
|
|
61
|
+
r.id = ae, r.textContent = `
|
|
62
62
|
.bwg-dotline {
|
|
63
63
|
display: inline-flex;
|
|
64
64
|
align-items: center;
|
|
@@ -92,27 +92,27 @@ function ft() {
|
|
|
92
92
|
@media (prefers-reduced-motion: reduce) {
|
|
93
93
|
.bwg-dotline .dot { animation: none; }
|
|
94
94
|
}
|
|
95
|
-
`, document.head.appendChild(
|
|
95
|
+
`, document.head.appendChild(r);
|
|
96
96
|
}
|
|
97
|
-
const
|
|
98
|
-
colors:
|
|
97
|
+
const yt = ({
|
|
98
|
+
colors: r = ["#DAD3FF", "#B3A6FF", "#9380FF", "#816BFA"],
|
|
99
99
|
count: t,
|
|
100
|
-
size:
|
|
101
|
-
gap:
|
|
102
|
-
amp:
|
|
100
|
+
size: n = 12,
|
|
101
|
+
gap: s = 10,
|
|
102
|
+
amp: o = 16,
|
|
103
103
|
speedMs: d = 900,
|
|
104
|
-
direction:
|
|
105
|
-
phase:
|
|
104
|
+
direction: p = "ltr",
|
|
105
|
+
phase: m = 0.7
|
|
106
106
|
}) => {
|
|
107
|
-
|
|
108
|
-
|
|
107
|
+
S(() => {
|
|
108
|
+
bt();
|
|
109
109
|
}, []);
|
|
110
|
-
const
|
|
111
|
-
"--bwg-size": `${
|
|
112
|
-
"--bwg-gap": `${
|
|
113
|
-
"--bwg-amp": `${
|
|
110
|
+
const i = t ?? r.length, c = Array.from({ length: i }), h = {
|
|
111
|
+
"--bwg-size": `${n}px`,
|
|
112
|
+
"--bwg-gap": `${s}px`,
|
|
113
|
+
"--bwg-amp": `${o}px`,
|
|
114
114
|
"--bwg-speed": `${d}ms`
|
|
115
|
-
},
|
|
115
|
+
}, v = d / i * m;
|
|
116
116
|
return /* @__PURE__ */ e(
|
|
117
117
|
"span",
|
|
118
118
|
{
|
|
@@ -120,103 +120,110 @@ const bt = ({
|
|
|
120
120
|
role: "img",
|
|
121
121
|
"aria-label": "loading",
|
|
122
122
|
style: h,
|
|
123
|
-
children:
|
|
123
|
+
children: c.map((b, a) => /* @__PURE__ */ e(
|
|
124
124
|
"span",
|
|
125
125
|
{
|
|
126
126
|
className: "dot",
|
|
127
127
|
style: {
|
|
128
|
-
backgroundColor:
|
|
129
|
-
animationDelay:
|
|
128
|
+
backgroundColor: r[a % r.length],
|
|
129
|
+
animationDelay: p === "ltr" ? `${a * v}ms` : `${(i - 1 - a) * v}ms`
|
|
130
130
|
}
|
|
131
131
|
},
|
|
132
|
-
|
|
132
|
+
a
|
|
133
133
|
))
|
|
134
134
|
}
|
|
135
135
|
);
|
|
136
|
-
},
|
|
137
|
-
spin:
|
|
138
|
-
text: t = "인증중..."
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
)
|
|
183
|
-
|
|
136
|
+
}, en = ({
|
|
137
|
+
spin: r = null,
|
|
138
|
+
text: t = "인증중...",
|
|
139
|
+
dimStyle: n = "dark"
|
|
140
|
+
}) => {
|
|
141
|
+
if (!(r ?? !0)) return null;
|
|
142
|
+
const d = n === "dark";
|
|
143
|
+
return /* @__PURE__ */ g(
|
|
144
|
+
"div",
|
|
145
|
+
{
|
|
146
|
+
className: "loading-overlay",
|
|
147
|
+
style: {
|
|
148
|
+
position: "fixed",
|
|
149
|
+
height: "100vh",
|
|
150
|
+
left: 0,
|
|
151
|
+
right: 0,
|
|
152
|
+
top: 0,
|
|
153
|
+
display: "flex",
|
|
154
|
+
flexDirection: "column",
|
|
155
|
+
justifyContent: "center",
|
|
156
|
+
alignItems: "center",
|
|
157
|
+
gap: 8,
|
|
158
|
+
padding: "8px 12px",
|
|
159
|
+
background: d ? "rgba(0, 0, 0, 0.6)" : "rgba(255, 255, 255, 0.85)",
|
|
160
|
+
color: d ? "#fff" : "#333",
|
|
161
|
+
backdropFilter: "blur(4px)",
|
|
162
|
+
zIndex: 1e4
|
|
163
|
+
},
|
|
164
|
+
"aria-live": "polite",
|
|
165
|
+
"aria-busy": "true",
|
|
166
|
+
role: "status",
|
|
167
|
+
children: [
|
|
168
|
+
/* @__PURE__ */ e(
|
|
169
|
+
j,
|
|
170
|
+
{
|
|
171
|
+
indicator: /* @__PURE__ */ e(
|
|
172
|
+
yt,
|
|
173
|
+
{
|
|
174
|
+
colors: ["#DAD3FF", "#B3A6FF", "#9380FF", "#816BFA"],
|
|
175
|
+
size: 12,
|
|
176
|
+
gap: 10,
|
|
177
|
+
amp: 16,
|
|
178
|
+
speedMs: 900,
|
|
179
|
+
phase: 0.75,
|
|
180
|
+
direction: "ltr"
|
|
181
|
+
}
|
|
182
|
+
)
|
|
183
|
+
}
|
|
184
|
+
),
|
|
185
|
+
/* @__PURE__ */ e("span", { className: "bwg-spin-txt", style: { marginTop: "15px" }, children: t })
|
|
186
|
+
]
|
|
187
|
+
}
|
|
188
|
+
);
|
|
189
|
+
}, tn = ({ routes: r, useCommonProvider: t = !0, useServiceProvider: n = !0 }) => {
|
|
190
|
+
let o = /* @__PURE__ */ g(be, { children: [
|
|
184
191
|
/* @__PURE__ */ e(K, { path: "/", element: /* @__PURE__ */ e(ye, { to: "/login" }) }),
|
|
185
|
-
/* @__PURE__ */ e(K, { path: "/login", element:
|
|
186
|
-
/* @__PURE__ */ e(K, { path: "/main", element:
|
|
192
|
+
/* @__PURE__ */ e(K, { path: "/login", element: r.login }),
|
|
193
|
+
/* @__PURE__ */ e(K, { path: "/main", element: r.main })
|
|
187
194
|
] });
|
|
188
|
-
return
|
|
189
|
-
}, { Content:
|
|
190
|
-
config:
|
|
195
|
+
return n && (o = /* @__PURE__ */ e(me, { children: o })), t && (o = /* @__PURE__ */ e(pe, { children: o })), /* @__PURE__ */ e(ve, { children: o });
|
|
196
|
+
}, { Content: Ct } = H, vt = ({
|
|
197
|
+
config: r = {},
|
|
191
198
|
children: t
|
|
192
199
|
}) => {
|
|
193
|
-
const
|
|
200
|
+
const n = {
|
|
194
201
|
wrapper: {
|
|
195
202
|
className: "content-wrapper",
|
|
196
|
-
...
|
|
203
|
+
...r.wrapper
|
|
197
204
|
},
|
|
198
205
|
body: {
|
|
199
206
|
className: "content-body",
|
|
200
|
-
...
|
|
207
|
+
...r.body
|
|
201
208
|
},
|
|
202
|
-
...
|
|
209
|
+
...r
|
|
203
210
|
};
|
|
204
211
|
return /* @__PURE__ */ e(
|
|
205
|
-
|
|
212
|
+
Ct,
|
|
206
213
|
{
|
|
207
|
-
className:
|
|
208
|
-
style:
|
|
214
|
+
className: n.wrapper.className,
|
|
215
|
+
style: n.wrapper.style,
|
|
209
216
|
children: /* @__PURE__ */ e(we, { children: /* @__PURE__ */ e(
|
|
210
217
|
"div",
|
|
211
218
|
{
|
|
212
|
-
className:
|
|
213
|
-
style:
|
|
219
|
+
className: n.body.className,
|
|
220
|
+
style: n.body.style,
|
|
214
221
|
children: t
|
|
215
222
|
}
|
|
216
223
|
) })
|
|
217
224
|
}
|
|
218
225
|
);
|
|
219
|
-
},
|
|
226
|
+
}, wt = "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", xt = "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", kt = "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: Nt } = H, B = {
|
|
220
227
|
light: {
|
|
221
228
|
headerBg: "#ffffff",
|
|
222
229
|
headerText: "#000000",
|
|
@@ -269,111 +276,113 @@ const bt = ({
|
|
|
269
276
|
buttonDefaultBorder: "#dddddd",
|
|
270
277
|
buttonPermissionBorder: "#bdb1ff"
|
|
271
278
|
}
|
|
272
|
-
},
|
|
279
|
+
}, It = ({ config: r = {} }) => {
|
|
273
280
|
const t = {
|
|
281
|
+
gap: 14,
|
|
282
|
+
minWidth: 200,
|
|
283
|
+
items: r.right?.items,
|
|
284
|
+
alarm: {
|
|
285
|
+
visible: !0,
|
|
286
|
+
...r.right?.alarm || {}
|
|
287
|
+
},
|
|
288
|
+
theme: {
|
|
289
|
+
visible: !0,
|
|
290
|
+
...r.right?.theme || {}
|
|
291
|
+
},
|
|
292
|
+
logout: {
|
|
293
|
+
visible: !0,
|
|
294
|
+
...r.right?.logout || {}
|
|
295
|
+
},
|
|
296
|
+
avatar: {
|
|
297
|
+
visible: !0,
|
|
298
|
+
width: 30,
|
|
299
|
+
height: 30,
|
|
300
|
+
...r.right?.avatar || {}
|
|
301
|
+
}
|
|
302
|
+
}, n = {
|
|
274
303
|
wrapper: {
|
|
275
304
|
className: "header-wrapper",
|
|
276
|
-
...
|
|
305
|
+
...r.wrapper
|
|
277
306
|
},
|
|
278
307
|
logo: {
|
|
279
308
|
gap: 10,
|
|
280
|
-
...
|
|
309
|
+
...r.logo
|
|
281
310
|
},
|
|
282
|
-
right:
|
|
283
|
-
|
|
284
|
-
minWidth: 200,
|
|
285
|
-
avatar: {
|
|
286
|
-
width: 30,
|
|
287
|
-
height: 30,
|
|
288
|
-
...n.right?.avatar
|
|
289
|
-
},
|
|
290
|
-
...n.right
|
|
291
|
-
},
|
|
292
|
-
...n
|
|
293
|
-
}, r = Ce(), [o, s] = L("modern"), d = V(null), f = Fe(), i = (a, l) => {
|
|
311
|
+
right: t
|
|
312
|
+
}, s = Ce(), [o, d] = L("modern"), p = V(null), m = Fe(), i = (a, C) => {
|
|
294
313
|
try {
|
|
295
|
-
if (!/^[a-zA-Z0-9-]+$/.test(a))
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
if (!/^[#a-zA-Z0-9()\s,.-]+$/.test(l)) {
|
|
300
|
-
console.warn(`Invalid CSS variable value: ${l}`);
|
|
301
|
-
return;
|
|
302
|
-
}
|
|
303
|
-
document.documentElement.style.setProperty(a, l);
|
|
304
|
-
} catch (T) {
|
|
305
|
-
console.error("CSS variable setting failed:", T);
|
|
314
|
+
if (!/^[a-zA-Z0-9-]+$/.test(a) || !/^[#a-zA-Z0-9()\s,.-]+$/.test(C)) return;
|
|
315
|
+
document.documentElement.style.setProperty(a, C);
|
|
316
|
+
} catch (P) {
|
|
317
|
+
console.error("CSS variable setting failed:", P);
|
|
306
318
|
}
|
|
307
|
-
},
|
|
308
|
-
if (!
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
s(a);
|
|
313
|
-
const l = { ...M[a] };
|
|
314
|
-
i("--header-bg", l.headerBg), i("--header-text", l.headerText), i("--sidebar-bg", l.sidebarBg), i("--sidebar-text", l.sidebarText), i("--button-primary", l.buttonPrimary), i("--button-primary-hover", l.buttonPrimaryHover), i("--button-primary-active", l.buttonPrimaryActive), i("--button-default", l.buttonDefault), i("--button-default-hover", l.buttonDefaultHover), i("--button-default-border", l.buttonDefaultBorder), i(
|
|
319
|
+
}, c = (a) => {
|
|
320
|
+
if (!B[a]) return;
|
|
321
|
+
d(a);
|
|
322
|
+
const C = { ...B[a] };
|
|
323
|
+
i("--header-bg", C.headerBg), i("--header-text", C.headerText), i("--sidebar-bg", C.sidebarBg), i("--sidebar-text", C.sidebarText), i("--button-primary", C.buttonPrimary), i("--button-primary-hover", C.buttonPrimaryHover), i("--button-primary-active", C.buttonPrimaryActive), i("--button-default", C.buttonDefault), i("--button-default-hover", C.buttonDefaultHover), i("--button-default-border", C.buttonDefaultBorder), i(
|
|
315
324
|
"--button-permission-border",
|
|
316
|
-
|
|
317
|
-
),
|
|
325
|
+
C.buttonPermissionBorder
|
|
326
|
+
), p.current && p.current.setAttribute("data-theme", a), document.documentElement.setAttribute("data-theme", a), et(oe, a, 30);
|
|
318
327
|
};
|
|
319
|
-
|
|
320
|
-
const a =
|
|
321
|
-
a &&
|
|
328
|
+
S(() => {
|
|
329
|
+
const a = Je(oe);
|
|
330
|
+
a && B[a] ? c(a) : c("modern");
|
|
322
331
|
}, []);
|
|
323
|
-
const
|
|
324
|
-
|
|
332
|
+
const h = () => ({ ...B[o] }).headerBg, v = () => {
|
|
333
|
+
m(), s("/login");
|
|
325
334
|
};
|
|
326
335
|
re ? re("HH:mm:ss") : (/* @__PURE__ */ new Date()).toLocaleTimeString("ko-KR");
|
|
327
|
-
const
|
|
336
|
+
const b = /* @__PURE__ */ g("div", { style: { padding: "8px 0" }, children: [
|
|
328
337
|
/* @__PURE__ */ g("div", { style: { marginBottom: "12px" }, children: [
|
|
329
|
-
/* @__PURE__ */ e(ke, { value:
|
|
338
|
+
/* @__PURE__ */ e(ke, { value: h(), disabled: !0, size: "small" }),
|
|
330
339
|
/* @__PURE__ */ e("span", { style: { marginLeft: "8px", fontSize: "12px" }, children: "현재 테마 색상" })
|
|
331
340
|
] }),
|
|
332
341
|
/* @__PURE__ */ g("div", { style: { display: "flex", flexDirection: "column", gap: "4px" }, children: [
|
|
333
342
|
/* @__PURE__ */ e(
|
|
334
|
-
|
|
343
|
+
x,
|
|
335
344
|
{
|
|
336
345
|
type: o === "modern" ? "primary" : "default",
|
|
337
346
|
size: "small",
|
|
338
|
-
onClick: () =>
|
|
347
|
+
onClick: () => c("modern"),
|
|
339
348
|
style: {
|
|
340
349
|
textAlign: "left",
|
|
341
|
-
backgroundColor: o === "modern" ?
|
|
342
|
-
color: o === "modern" ?
|
|
350
|
+
backgroundColor: o === "modern" ? B.modern.headerBg : void 0,
|
|
351
|
+
color: o === "modern" ? B.modern.headerText : void 0
|
|
343
352
|
},
|
|
344
353
|
children: "모던"
|
|
345
354
|
},
|
|
346
355
|
"modern"
|
|
347
356
|
),
|
|
348
|
-
Object.entries(
|
|
349
|
-
|
|
357
|
+
Object.entries(B).filter(([a]) => a !== "modern").map(([a, C]) => /* @__PURE__ */ e(
|
|
358
|
+
x,
|
|
350
359
|
{
|
|
351
360
|
type: o === a ? "primary" : "default",
|
|
352
361
|
size: "small",
|
|
353
|
-
onClick: () =>
|
|
362
|
+
onClick: () => c(a),
|
|
354
363
|
style: {
|
|
355
364
|
textAlign: "left",
|
|
356
|
-
backgroundColor: o === a ?
|
|
357
|
-
color: o === a ?
|
|
365
|
+
backgroundColor: o === a ? C.headerBg : void 0,
|
|
366
|
+
color: o === a ? C.headerText : void 0
|
|
358
367
|
},
|
|
359
|
-
children: a
|
|
368
|
+
children: a
|
|
360
369
|
},
|
|
361
370
|
a
|
|
362
371
|
))
|
|
363
372
|
] })
|
|
364
373
|
] });
|
|
365
374
|
return /* @__PURE__ */ g(
|
|
366
|
-
|
|
375
|
+
Nt,
|
|
367
376
|
{
|
|
368
|
-
className:
|
|
369
|
-
style: { ...
|
|
377
|
+
className: n.wrapper.className,
|
|
378
|
+
style: { ...n.wrapper.style },
|
|
370
379
|
children: [
|
|
371
|
-
|
|
380
|
+
n.logo && /* @__PURE__ */ e("div", { className: "header-left", children: /* @__PURE__ */ e(
|
|
372
381
|
"div",
|
|
373
382
|
{
|
|
374
383
|
className: "logo-container",
|
|
375
|
-
style: { gap:
|
|
376
|
-
children:
|
|
384
|
+
style: { gap: n.logo?.gap },
|
|
385
|
+
children: n.logo?.items
|
|
377
386
|
}
|
|
378
387
|
) }),
|
|
379
388
|
/* @__PURE__ */ g(
|
|
@@ -381,54 +390,58 @@ const bt = ({
|
|
|
381
390
|
{
|
|
382
391
|
className: "header-right",
|
|
383
392
|
style: {
|
|
384
|
-
gap:
|
|
385
|
-
minWidth:
|
|
393
|
+
gap: n.right?.gap,
|
|
394
|
+
minWidth: n.right?.minWidth
|
|
386
395
|
},
|
|
387
396
|
children: [
|
|
388
|
-
|
|
389
|
-
/* @__PURE__ */ e(
|
|
390
|
-
|
|
397
|
+
n.right?.items?.map((a, C) => /* @__PURE__ */ e("div", { children: a }, C)),
|
|
398
|
+
n.right?.alarm?.visible && /* @__PURE__ */ e(
|
|
399
|
+
x,
|
|
391
400
|
{
|
|
392
401
|
type: "text",
|
|
393
|
-
icon: /* @__PURE__ */ e("img", { src:
|
|
394
|
-
className: "alarm-btn"
|
|
402
|
+
icon: /* @__PURE__ */ e("img", { src: wt, alt: "알림" }),
|
|
403
|
+
className: "alarm-btn",
|
|
404
|
+
onClick: n.right?.alarm?.onClick
|
|
395
405
|
}
|
|
396
406
|
),
|
|
397
|
-
/* @__PURE__ */ e(
|
|
407
|
+
n.right?.theme?.visible && /* @__PURE__ */ e(
|
|
398
408
|
Ne,
|
|
399
409
|
{
|
|
400
|
-
content:
|
|
410
|
+
content: b,
|
|
401
411
|
title: "테마 설정",
|
|
402
412
|
trigger: "click",
|
|
403
413
|
placement: "bottomRight",
|
|
414
|
+
onOpenChange: (a) => n.right?.theme?.onOpenChange?.(a),
|
|
404
415
|
children: /* @__PURE__ */ e(
|
|
405
|
-
|
|
416
|
+
x,
|
|
406
417
|
{
|
|
407
418
|
type: "text",
|
|
408
|
-
icon: /* @__PURE__ */ e("img", { src:
|
|
409
|
-
className: "theme-btn"
|
|
419
|
+
icon: /* @__PURE__ */ e("img", { src: kt, alt: "개인설정" }),
|
|
420
|
+
className: "theme-btn",
|
|
421
|
+
onClick: n.right?.theme?.onClick
|
|
410
422
|
}
|
|
411
423
|
)
|
|
412
424
|
}
|
|
413
425
|
),
|
|
414
|
-
/* @__PURE__ */ e(
|
|
415
|
-
|
|
426
|
+
n.right?.logout?.visible && /* @__PURE__ */ e(
|
|
427
|
+
x,
|
|
416
428
|
{
|
|
417
429
|
type: "text",
|
|
418
|
-
icon: /* @__PURE__ */ e("img", { src:
|
|
419
|
-
onClick:
|
|
430
|
+
icon: /* @__PURE__ */ e("img", { src: xt, alt: "로그아웃" }),
|
|
431
|
+
onClick: n.right?.logout?.onClick || v,
|
|
420
432
|
className: "logout-btn"
|
|
421
433
|
}
|
|
422
434
|
),
|
|
423
|
-
/* @__PURE__ */ e(
|
|
435
|
+
n.right?.avatar?.visible && /* @__PURE__ */ e(
|
|
424
436
|
Ie,
|
|
425
437
|
{
|
|
426
|
-
icon: /* @__PURE__ */ e(
|
|
438
|
+
icon: /* @__PURE__ */ e(_e, {}),
|
|
427
439
|
className: "avatar",
|
|
428
440
|
style: {
|
|
429
|
-
width:
|
|
430
|
-
height:
|
|
431
|
-
}
|
|
441
|
+
width: n.right?.avatar?.width,
|
|
442
|
+
height: n.right?.avatar?.height
|
|
443
|
+
},
|
|
444
|
+
onClick: n.right?.avatar?.onClick
|
|
432
445
|
}
|
|
433
446
|
)
|
|
434
447
|
]
|
|
@@ -439,94 +452,94 @@ const bt = ({
|
|
|
439
452
|
);
|
|
440
453
|
}, X = /* @__PURE__ */ Object.freeze({
|
|
441
454
|
Translate: {
|
|
442
|
-
toString(
|
|
443
|
-
if (!
|
|
455
|
+
toString(r) {
|
|
456
|
+
if (!r)
|
|
444
457
|
return;
|
|
445
458
|
const {
|
|
446
459
|
x: t,
|
|
447
|
-
y:
|
|
448
|
-
} =
|
|
449
|
-
return "translate3d(" + (t ? Math.round(t) : 0) + "px, " + (
|
|
460
|
+
y: n
|
|
461
|
+
} = r;
|
|
462
|
+
return "translate3d(" + (t ? Math.round(t) : 0) + "px, " + (n ? Math.round(n) : 0) + "px, 0)";
|
|
450
463
|
}
|
|
451
464
|
},
|
|
452
465
|
Scale: {
|
|
453
|
-
toString(
|
|
454
|
-
if (!
|
|
466
|
+
toString(r) {
|
|
467
|
+
if (!r)
|
|
455
468
|
return;
|
|
456
469
|
const {
|
|
457
470
|
scaleX: t,
|
|
458
|
-
scaleY:
|
|
459
|
-
} =
|
|
460
|
-
return "scaleX(" + t + ") scaleY(" +
|
|
471
|
+
scaleY: n
|
|
472
|
+
} = r;
|
|
473
|
+
return "scaleX(" + t + ") scaleY(" + n + ")";
|
|
461
474
|
}
|
|
462
475
|
},
|
|
463
476
|
Transform: {
|
|
464
|
-
toString(
|
|
465
|
-
if (
|
|
466
|
-
return [X.Translate.toString(
|
|
477
|
+
toString(r) {
|
|
478
|
+
if (r)
|
|
479
|
+
return [X.Translate.toString(r), X.Scale.toString(r)].join(" ");
|
|
467
480
|
}
|
|
468
481
|
},
|
|
469
482
|
Transition: {
|
|
470
|
-
toString(
|
|
483
|
+
toString(r) {
|
|
471
484
|
let {
|
|
472
485
|
property: t,
|
|
473
|
-
duration:
|
|
474
|
-
easing:
|
|
475
|
-
} =
|
|
476
|
-
return t + " " +
|
|
486
|
+
duration: n,
|
|
487
|
+
easing: s
|
|
488
|
+
} = r;
|
|
489
|
+
return t + " " + n + "ms " + s;
|
|
477
490
|
}
|
|
478
491
|
}
|
|
479
|
-
}),
|
|
480
|
-
({ className:
|
|
481
|
-
const
|
|
482
|
-
attributes:
|
|
483
|
-
listeners:
|
|
492
|
+
}), St = q(
|
|
493
|
+
({ className: r, ...t }) => {
|
|
494
|
+
const n = V(null), {
|
|
495
|
+
attributes: s,
|
|
496
|
+
listeners: o,
|
|
484
497
|
transform: d,
|
|
485
|
-
transition:
|
|
486
|
-
isDragging:
|
|
487
|
-
setNodeRef:
|
|
488
|
-
} =
|
|
489
|
-
|
|
490
|
-
const
|
|
491
|
-
if (
|
|
492
|
-
if (
|
|
493
|
-
const
|
|
494
|
-
h(
|
|
498
|
+
transition: p,
|
|
499
|
+
isDragging: m,
|
|
500
|
+
setNodeRef: i
|
|
501
|
+
} = dt({ id: t["data-node-key"] }), [c, h] = L();
|
|
502
|
+
S(() => {
|
|
503
|
+
const b = n.current;
|
|
504
|
+
if (b)
|
|
505
|
+
if (m) {
|
|
506
|
+
const a = Math.round(b.getBoundingClientRect().width);
|
|
507
|
+
h(a);
|
|
495
508
|
} else
|
|
496
509
|
h(void 0);
|
|
497
|
-
}, [
|
|
498
|
-
const
|
|
510
|
+
}, [m]);
|
|
511
|
+
const v = {
|
|
499
512
|
...t.style,
|
|
500
513
|
transform: d ? X.Transform.toString(d) : void 0,
|
|
501
|
-
transition:
|
|
514
|
+
transition: p ?? "transform 0.16s ease",
|
|
502
515
|
cursor: "grab",
|
|
503
516
|
userSelect: "none",
|
|
504
517
|
willChange: "transform",
|
|
505
518
|
// ✅ 드래그 중 픽셀 폭 고정 (flex 재계산 억제)
|
|
506
|
-
width:
|
|
507
|
-
minWidth:
|
|
508
|
-
maxWidth:
|
|
509
|
-
flex:
|
|
519
|
+
width: c ?? void 0,
|
|
520
|
+
minWidth: c ?? void 0,
|
|
521
|
+
maxWidth: c ?? void 0,
|
|
522
|
+
flex: c !== void 0 ? "0 0 auto" : void 0
|
|
510
523
|
};
|
|
511
|
-
return
|
|
512
|
-
ref: (
|
|
513
|
-
|
|
524
|
+
return Oe(t.children, {
|
|
525
|
+
ref: (b) => {
|
|
526
|
+
n.current !== b && (n.current = b), i(b);
|
|
514
527
|
},
|
|
515
|
-
style:
|
|
516
|
-
...
|
|
517
|
-
...
|
|
528
|
+
style: v,
|
|
529
|
+
...s,
|
|
530
|
+
...o
|
|
518
531
|
});
|
|
519
532
|
}
|
|
520
|
-
),
|
|
533
|
+
), Tt = q(function({
|
|
521
534
|
config: t,
|
|
522
|
-
isFirst:
|
|
523
|
-
isLast:
|
|
524
|
-
canCloseAll:
|
|
535
|
+
isFirst: n,
|
|
536
|
+
isLast: s,
|
|
537
|
+
canCloseAll: o,
|
|
525
538
|
onFirst: d,
|
|
526
|
-
onPrev:
|
|
527
|
-
onNext:
|
|
528
|
-
onLast:
|
|
529
|
-
onCloseAll:
|
|
539
|
+
onPrev: p,
|
|
540
|
+
onNext: m,
|
|
541
|
+
onLast: i,
|
|
542
|
+
onCloseAll: c
|
|
530
543
|
}) {
|
|
531
544
|
return /* @__PURE__ */ g("div", { className: t.wrapper?.className, style: t.wrapper?.style, children: [
|
|
532
545
|
/* @__PURE__ */ e(
|
|
@@ -536,14 +549,14 @@ const bt = ({
|
|
|
536
549
|
className: t.tooltip?.className,
|
|
537
550
|
style: t.tooltip?.style,
|
|
538
551
|
children: /* @__PURE__ */ e(
|
|
539
|
-
|
|
552
|
+
x,
|
|
540
553
|
{
|
|
541
554
|
className: t.buttons?.className,
|
|
542
555
|
style: t.buttons?.style,
|
|
543
556
|
size: "small",
|
|
544
|
-
icon: /* @__PURE__ */ e(
|
|
557
|
+
icon: /* @__PURE__ */ e($e, {}),
|
|
545
558
|
onClick: d,
|
|
546
|
-
disabled:
|
|
559
|
+
disabled: n
|
|
547
560
|
}
|
|
548
561
|
)
|
|
549
562
|
}
|
|
@@ -555,14 +568,14 @@ const bt = ({
|
|
|
555
568
|
className: t.tooltip?.className,
|
|
556
569
|
style: t.tooltip?.style,
|
|
557
570
|
children: /* @__PURE__ */ e(
|
|
558
|
-
|
|
571
|
+
x,
|
|
559
572
|
{
|
|
560
573
|
className: t.buttons?.className,
|
|
561
574
|
style: t.buttons?.style,
|
|
562
575
|
size: "small",
|
|
563
|
-
icon: /* @__PURE__ */ e(
|
|
564
|
-
onClick:
|
|
565
|
-
disabled:
|
|
576
|
+
icon: /* @__PURE__ */ e(Ge, {}),
|
|
577
|
+
onClick: p,
|
|
578
|
+
disabled: n
|
|
566
579
|
}
|
|
567
580
|
)
|
|
568
581
|
}
|
|
@@ -574,14 +587,14 @@ const bt = ({
|
|
|
574
587
|
className: t.tooltip?.className,
|
|
575
588
|
style: t.tooltip?.style,
|
|
576
589
|
children: /* @__PURE__ */ e(
|
|
577
|
-
|
|
590
|
+
x,
|
|
578
591
|
{
|
|
579
592
|
className: t.buttons?.className,
|
|
580
593
|
style: t.buttons?.style,
|
|
581
594
|
size: "small",
|
|
582
|
-
icon: /* @__PURE__ */ e(
|
|
583
|
-
onClick:
|
|
584
|
-
disabled:
|
|
595
|
+
icon: /* @__PURE__ */ e(We, {}),
|
|
596
|
+
onClick: m,
|
|
597
|
+
disabled: s
|
|
585
598
|
}
|
|
586
599
|
)
|
|
587
600
|
}
|
|
@@ -593,14 +606,14 @@ const bt = ({
|
|
|
593
606
|
className: t.tooltip?.className,
|
|
594
607
|
style: t.tooltip?.style,
|
|
595
608
|
children: /* @__PURE__ */ e(
|
|
596
|
-
|
|
609
|
+
x,
|
|
597
610
|
{
|
|
598
611
|
className: t.buttons?.className,
|
|
599
612
|
style: t.buttons?.style,
|
|
600
613
|
size: "small",
|
|
601
|
-
icon: /* @__PURE__ */ e(
|
|
602
|
-
onClick:
|
|
603
|
-
disabled:
|
|
614
|
+
icon: /* @__PURE__ */ e(je, {}),
|
|
615
|
+
onClick: i,
|
|
616
|
+
disabled: s
|
|
604
617
|
}
|
|
605
618
|
)
|
|
606
619
|
}
|
|
@@ -612,113 +625,113 @@ const bt = ({
|
|
|
612
625
|
className: t.tooltip?.className,
|
|
613
626
|
style: t.tooltip?.style,
|
|
614
627
|
children: /* @__PURE__ */ e(
|
|
615
|
-
|
|
628
|
+
x,
|
|
616
629
|
{
|
|
617
630
|
className: t.buttons?.className,
|
|
618
631
|
style: t.buttons?.style,
|
|
619
632
|
size: "small",
|
|
620
633
|
icon: /* @__PURE__ */ e(ce, {}),
|
|
621
|
-
onClick:
|
|
622
|
-
disabled: !
|
|
634
|
+
onClick: c,
|
|
635
|
+
disabled: !o
|
|
623
636
|
}
|
|
624
637
|
)
|
|
625
638
|
}
|
|
626
639
|
)
|
|
627
640
|
] });
|
|
628
641
|
}), Lt = ({
|
|
629
|
-
config:
|
|
642
|
+
config: r = {}
|
|
630
643
|
}) => {
|
|
631
644
|
const t = {
|
|
632
645
|
wrapper: {
|
|
633
646
|
className: "menu-tab-wrapper",
|
|
634
|
-
...
|
|
647
|
+
...r?.wrapper
|
|
635
648
|
},
|
|
636
649
|
tabs: {
|
|
637
650
|
className: "menu-tabs",
|
|
638
|
-
...
|
|
651
|
+
...r?.tabs
|
|
639
652
|
},
|
|
640
653
|
nav: {
|
|
641
654
|
wrapper: {
|
|
642
655
|
className: "menu-nav-wrapper",
|
|
643
|
-
...
|
|
656
|
+
...r?.nav?.wrapper
|
|
644
657
|
},
|
|
645
658
|
buttons: {
|
|
646
659
|
className: "menu-nav-buttons",
|
|
647
|
-
...
|
|
660
|
+
...r?.nav?.buttons
|
|
648
661
|
},
|
|
649
662
|
tooltip: {
|
|
650
663
|
className: "menu-nav-tooltip",
|
|
651
|
-
...
|
|
664
|
+
...r?.nav?.tooltip
|
|
652
665
|
},
|
|
653
|
-
...
|
|
666
|
+
...r?.nav
|
|
654
667
|
},
|
|
655
|
-
...
|
|
656
|
-
},
|
|
657
|
-
|
|
658
|
-
),
|
|
659
|
-
|
|
660
|
-
},
|
|
661
|
-
|
|
668
|
+
...r
|
|
669
|
+
}, n = T((u) => u.tabs), s = T((u) => u.activeMenuId), o = T((u) => u.focusTab), d = T((u) => u.closeTab), p = T((u) => u.reorderTabs), m = tt(
|
|
670
|
+
nt(rt, { activationConstraint: { distance: 6 } })
|
|
671
|
+
), i = (u) => {
|
|
672
|
+
o(u);
|
|
673
|
+
}, c = (u, N) => {
|
|
674
|
+
N === "remove" && typeof u == "string" && d(u);
|
|
662
675
|
}, h = () => {
|
|
663
|
-
|
|
664
|
-
},
|
|
665
|
-
if (!
|
|
666
|
-
const
|
|
667
|
-
|
|
676
|
+
n.length > 0 && o(n[0].key);
|
|
677
|
+
}, v = () => {
|
|
678
|
+
if (!s || n.length <= 1) return;
|
|
679
|
+
const u = n.findIndex((N) => N.key === s);
|
|
680
|
+
u > 0 && o(n[u - 1].key);
|
|
681
|
+
}, b = () => {
|
|
682
|
+
if (!s || n.length <= 1) return;
|
|
683
|
+
const u = n.findIndex((N) => N.key === s);
|
|
684
|
+
u < n.length - 1 && o(n[u + 1].key);
|
|
668
685
|
}, a = () => {
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
r.length > 0 && s(r[r.length - 1].key);
|
|
674
|
-
}, T = () => {
|
|
675
|
-
r.forEach((p) => {
|
|
676
|
-
d(p.key);
|
|
686
|
+
n.length > 0 && o(n[n.length - 1].key);
|
|
687
|
+
}, C = () => {
|
|
688
|
+
n.forEach((u) => {
|
|
689
|
+
d(u.key);
|
|
677
690
|
});
|
|
678
|
-
},
|
|
679
|
-
() =>
|
|
680
|
-
key:
|
|
681
|
-
label:
|
|
691
|
+
}, P = s ? n.findIndex((u) => u.key === s) : -1, _ = P === 0, A = P === n.length - 1, U = W(
|
|
692
|
+
() => n.map((u) => ({
|
|
693
|
+
key: u.key,
|
|
694
|
+
label: u.label,
|
|
682
695
|
closable: !0,
|
|
683
696
|
children: null
|
|
684
697
|
// 컨텐츠는 Main 쪽에서 렌더 → 여기선 헤더만 필요
|
|
685
698
|
})),
|
|
686
|
-
[
|
|
687
|
-
),
|
|
688
|
-
({ active:
|
|
689
|
-
if (!
|
|
690
|
-
const
|
|
691
|
-
if (
|
|
692
|
-
const
|
|
693
|
-
|
|
699
|
+
[n]
|
|
700
|
+
), $ = E(
|
|
701
|
+
({ active: u, over: N }) => {
|
|
702
|
+
if (!N || u.id === N.id) return;
|
|
703
|
+
const I = n.findIndex((l) => l.key === u.id), M = n.findIndex((l) => l.key === N.id);
|
|
704
|
+
if (I < 0 || M < 0 || I === M) return;
|
|
705
|
+
const f = n.map((l) => l.key), y = it(f, I, M);
|
|
706
|
+
p?.(y);
|
|
694
707
|
},
|
|
695
|
-
[
|
|
696
|
-
), G =
|
|
697
|
-
(
|
|
698
|
-
|
|
708
|
+
[n, p]
|
|
709
|
+
), G = E(
|
|
710
|
+
(u, N) => /* @__PURE__ */ e(
|
|
711
|
+
ot,
|
|
699
712
|
{
|
|
700
|
-
sensors:
|
|
701
|
-
onDragEnd:
|
|
702
|
-
collisionDetection:
|
|
703
|
-
modifiers: [
|
|
713
|
+
sensors: m,
|
|
714
|
+
onDragEnd: $,
|
|
715
|
+
collisionDetection: st,
|
|
716
|
+
modifiers: [at],
|
|
704
717
|
children: /* @__PURE__ */ e(
|
|
705
|
-
|
|
718
|
+
lt,
|
|
706
719
|
{
|
|
707
|
-
items:
|
|
708
|
-
strategy:
|
|
709
|
-
children: /* @__PURE__ */ e(
|
|
710
|
-
|
|
720
|
+
items: n.map((I) => I.key),
|
|
721
|
+
strategy: ct,
|
|
722
|
+
children: /* @__PURE__ */ e(N, { ...u, children: (I) => /* @__PURE__ */ le(
|
|
723
|
+
St,
|
|
711
724
|
{
|
|
712
|
-
...
|
|
713
|
-
key:
|
|
725
|
+
...I.props,
|
|
726
|
+
key: I.key
|
|
714
727
|
},
|
|
715
|
-
|
|
728
|
+
I
|
|
716
729
|
) })
|
|
717
730
|
}
|
|
718
731
|
)
|
|
719
732
|
}
|
|
720
733
|
),
|
|
721
|
-
[
|
|
734
|
+
[m, $, n]
|
|
722
735
|
);
|
|
723
736
|
return /* @__PURE__ */ e(
|
|
724
737
|
"div",
|
|
@@ -726,31 +739,31 @@ const bt = ({
|
|
|
726
739
|
className: t.wrapper.className,
|
|
727
740
|
style: {
|
|
728
741
|
...t.wrapper.style,
|
|
729
|
-
display:
|
|
742
|
+
display: n.length === 0 ? "none" : "block"
|
|
730
743
|
},
|
|
731
744
|
children: /* @__PURE__ */ e(
|
|
732
745
|
Se,
|
|
733
746
|
{
|
|
734
747
|
type: "editable-card",
|
|
735
|
-
activeKey:
|
|
736
|
-
onChange:
|
|
737
|
-
onEdit:
|
|
748
|
+
activeKey: s || void 0,
|
|
749
|
+
onChange: i,
|
|
750
|
+
onEdit: c,
|
|
738
751
|
className: t.tabs.className,
|
|
739
752
|
style: t.tabs.style,
|
|
740
753
|
hideAdd: !0,
|
|
741
754
|
items: U,
|
|
742
755
|
tabBarExtraContent: /* @__PURE__ */ e(
|
|
743
|
-
|
|
756
|
+
Tt,
|
|
744
757
|
{
|
|
745
758
|
config: t?.nav,
|
|
746
|
-
isFirst: !!
|
|
759
|
+
isFirst: !!_,
|
|
747
760
|
isLast: !!A,
|
|
748
|
-
canCloseAll:
|
|
761
|
+
canCloseAll: n.length > 0,
|
|
749
762
|
onFirst: h,
|
|
750
|
-
onPrev:
|
|
751
|
-
onNext:
|
|
752
|
-
onLast:
|
|
753
|
-
onCloseAll:
|
|
763
|
+
onPrev: v,
|
|
764
|
+
onNext: b,
|
|
765
|
+
onLast: a,
|
|
766
|
+
onCloseAll: C
|
|
754
767
|
}
|
|
755
768
|
),
|
|
756
769
|
renderTabBar: G
|
|
@@ -758,8 +771,8 @@ const bt = ({
|
|
|
758
771
|
)
|
|
759
772
|
}
|
|
760
773
|
);
|
|
761
|
-
}, { Sider:
|
|
762
|
-
config:
|
|
774
|
+
}, { Sider: Pt } = H, Mt = ({
|
|
775
|
+
config: r = {}
|
|
763
776
|
}) => {
|
|
764
777
|
const t = {
|
|
765
778
|
collapsed: !1,
|
|
@@ -768,7 +781,7 @@ const bt = ({
|
|
|
768
781
|
mainMenu: "MAIN",
|
|
769
782
|
subMenu: "SUB",
|
|
770
783
|
program: "PRGM",
|
|
771
|
-
...
|
|
784
|
+
...r?.menuGubunCode
|
|
772
785
|
},
|
|
773
786
|
className: {
|
|
774
787
|
wrapper: "side-wrapper",
|
|
@@ -776,7 +789,7 @@ const bt = ({
|
|
|
776
789
|
segmented: {
|
|
777
790
|
wrapper: "sider-segmented",
|
|
778
791
|
item: "sider-segment-item",
|
|
779
|
-
...
|
|
792
|
+
...r?.className?.segmented
|
|
780
793
|
},
|
|
781
794
|
sider: {
|
|
782
795
|
content: "sider-content",
|
|
@@ -787,29 +800,29 @@ const bt = ({
|
|
|
787
800
|
errorText: "sider-error-text",
|
|
788
801
|
menu: "sider-menu",
|
|
789
802
|
menuContainer: "sider-menu-container",
|
|
790
|
-
...
|
|
803
|
+
...r?.className?.sider
|
|
791
804
|
},
|
|
792
|
-
...
|
|
805
|
+
...r?.className
|
|
793
806
|
},
|
|
794
807
|
style: {
|
|
795
808
|
search: {
|
|
796
809
|
placeholder: "메뉴명, 메뉴번호 검색...",
|
|
797
810
|
height: 30,
|
|
798
|
-
...
|
|
811
|
+
...r?.style?.search
|
|
799
812
|
},
|
|
800
|
-
...
|
|
813
|
+
...r?.style
|
|
801
814
|
},
|
|
802
|
-
...
|
|
815
|
+
...r
|
|
803
816
|
};
|
|
804
|
-
console.log("@@ 사이드바 config : ",
|
|
805
|
-
const [
|
|
817
|
+
console.log("@@ 사이드바 config : ", r);
|
|
818
|
+
const [n, s] = L(""), [o, d] = L(
|
|
806
819
|
"category"
|
|
807
|
-
), { activeMenuId:
|
|
808
|
-
const
|
|
809
|
-
if (
|
|
810
|
-
const
|
|
811
|
-
|
|
812
|
-
value:
|
|
820
|
+
), { activeMenuId: p, sidebarCollapsed: m, openTabFromMenu: i, toggleSidebar: c } = T(), { menuList: h, isLoading: v, error: b, findMenuById: a } = Ae(), { nodes: C, treeNodes: P, loadFavoritesIfNeeded: _ } = ze(), A = W(() => {
|
|
821
|
+
const f = [], y = (l, k = 0) => {
|
|
822
|
+
if (l.menuGbCd === t.menuGubunCode.program && l.scrnPath) {
|
|
823
|
+
const w = " ".repeat(k), D = l.menuNo || "";
|
|
824
|
+
f.push({
|
|
825
|
+
value: l.menuId,
|
|
813
826
|
label: /* @__PURE__ */ g(
|
|
814
827
|
"div",
|
|
815
828
|
{
|
|
@@ -820,8 +833,8 @@ const bt = ({
|
|
|
820
833
|
},
|
|
821
834
|
children: [
|
|
822
835
|
/* @__PURE__ */ g("span", { children: [
|
|
823
|
-
|
|
824
|
-
|
|
836
|
+
w,
|
|
837
|
+
l.menuNm
|
|
825
838
|
] }),
|
|
826
839
|
/* @__PURE__ */ e(
|
|
827
840
|
"span",
|
|
@@ -834,53 +847,53 @@ const bt = ({
|
|
|
834
847
|
borderRadius: "3px",
|
|
835
848
|
marginLeft: "8px"
|
|
836
849
|
},
|
|
837
|
-
children:
|
|
850
|
+
children: D
|
|
838
851
|
}
|
|
839
852
|
)
|
|
840
853
|
]
|
|
841
854
|
}
|
|
842
855
|
),
|
|
843
|
-
menuItem:
|
|
856
|
+
menuItem: l
|
|
844
857
|
});
|
|
845
858
|
}
|
|
846
|
-
|
|
859
|
+
l.children && l.children.length > 0 && l.children.forEach((w) => y(w, k + 1));
|
|
847
860
|
};
|
|
848
|
-
return h.forEach((
|
|
849
|
-
}, [h]), U = W(() =>
|
|
850
|
-
const y =
|
|
851
|
-
return y.includes(
|
|
852
|
-
}) : [], [A,
|
|
853
|
-
if (!
|
|
854
|
-
console.warn("Invalid menu selection value:",
|
|
861
|
+
return h.forEach((l) => y(l)), f;
|
|
862
|
+
}, [h]), U = W(() => n.trim() ? A.filter((f) => {
|
|
863
|
+
const y = f.menuItem.menuNm.toLowerCase(), l = String(f.menuItem.menuNo || "미지정").toLowerCase(), k = n.toLowerCase();
|
|
864
|
+
return y.includes(k) || l.includes(k);
|
|
865
|
+
}) : [], [A, n]), $ = (f) => {
|
|
866
|
+
if (!f || typeof f != "string") {
|
|
867
|
+
console.warn("Invalid menu selection value:", f);
|
|
855
868
|
return;
|
|
856
869
|
}
|
|
857
|
-
if (!/^[a-zA-Z0-9_-]+$/.test(
|
|
858
|
-
console.warn("Invalid menu ID format:",
|
|
870
|
+
if (!/^[a-zA-Z0-9_-]+$/.test(f)) {
|
|
871
|
+
console.warn("Invalid menu ID format:", f);
|
|
859
872
|
return;
|
|
860
873
|
}
|
|
861
874
|
const y = A.find(
|
|
862
|
-
(
|
|
875
|
+
(l) => l.value === f
|
|
863
876
|
);
|
|
864
877
|
if (y) {
|
|
865
|
-
const { menuItem:
|
|
866
|
-
if (!
|
|
867
|
-
console.warn("Invalid menu item:",
|
|
878
|
+
const { menuItem: l } = y;
|
|
879
|
+
if (!l || !l.menuId || !l.menuNm) {
|
|
880
|
+
console.warn("Invalid menu item:", l);
|
|
868
881
|
return;
|
|
869
882
|
}
|
|
870
|
-
|
|
883
|
+
l.menuGbCd === t.menuGubunCode.program && l.scrnPath ? (console.log(
|
|
871
884
|
"✅ 검색으로 프로그램 메뉴 선택 - 탭 추가 및 setCurrentProgram 호출"
|
|
872
885
|
), console.log(
|
|
873
886
|
"메뉴명:",
|
|
874
|
-
|
|
887
|
+
l.menuNm,
|
|
875
888
|
"경로:",
|
|
876
|
-
|
|
889
|
+
l.scrnPath,
|
|
877
890
|
"scrnId:",
|
|
878
|
-
|
|
879
|
-
),
|
|
891
|
+
l.scrnId
|
|
892
|
+
), i(l)) : (l.menuGbCd === t.menuGubunCode.mainMenu || l.menuGbCd === t.menuGubunCode.subMenu) && (console.log("❌ 검색으로 메인/서브 메뉴 선택 - 이벤트 무시"), console.log("메뉴명:", l.menuNm, "menuGbCd:", l.menuGbCd)), s("");
|
|
880
893
|
}
|
|
881
|
-
}, G =
|
|
882
|
-
(
|
|
883
|
-
const y =
|
|
894
|
+
}, G = E(
|
|
895
|
+
(f) => {
|
|
896
|
+
const y = a(f);
|
|
884
897
|
y?.menuGbCd === t.menuGubunCode.program && (console.log(
|
|
885
898
|
"메뉴명:",
|
|
886
899
|
y.menuNm,
|
|
@@ -888,10 +901,10 @@ const bt = ({
|
|
|
888
901
|
y.scrnPath,
|
|
889
902
|
"scrnId:",
|
|
890
903
|
y.scrnId
|
|
891
|
-
),
|
|
904
|
+
), i(y));
|
|
892
905
|
},
|
|
893
|
-
[
|
|
894
|
-
),
|
|
906
|
+
[a, i]
|
|
907
|
+
), u = E((f) => f.map((y) => ({
|
|
895
908
|
key: y.menuId,
|
|
896
909
|
label: /* @__PURE__ */ e(
|
|
897
910
|
"div",
|
|
@@ -904,13 +917,13 @@ const bt = ({
|
|
|
904
917
|
children: /* @__PURE__ */ e("span", { children: y.menuNm })
|
|
905
918
|
}
|
|
906
919
|
),
|
|
907
|
-
icon:
|
|
908
|
-
children: y.children && y.children.length > 0 ?
|
|
909
|
-
})), []),
|
|
910
|
-
if (
|
|
911
|
-
const
|
|
912
|
-
if (
|
|
913
|
-
return /* @__PURE__ */ e(
|
|
920
|
+
icon: N(y.iconCd, y.menuGbCd),
|
|
921
|
+
children: y.children && y.children.length > 0 ? u(y.children) : void 0
|
|
922
|
+
})), []), N = (f, y) => {
|
|
923
|
+
if (f) {
|
|
924
|
+
const l = ne[f];
|
|
925
|
+
if (l)
|
|
926
|
+
return /* @__PURE__ */ e(l, {});
|
|
914
927
|
}
|
|
915
928
|
if (y)
|
|
916
929
|
switch (y) {
|
|
@@ -924,47 +937,47 @@ const bt = ({
|
|
|
924
937
|
return null;
|
|
925
938
|
}
|
|
926
939
|
return null;
|
|
927
|
-
},
|
|
928
|
-
(
|
|
940
|
+
}, I = E(
|
|
941
|
+
(f) => {
|
|
929
942
|
if (h.length === 0) return [];
|
|
930
|
-
const y = (
|
|
931
|
-
if (
|
|
932
|
-
return typeof
|
|
933
|
-
},
|
|
934
|
-
if (
|
|
935
|
-
const
|
|
943
|
+
const y = (k) => {
|
|
944
|
+
if (k)
|
|
945
|
+
return typeof k == "string" ? C[k] : k;
|
|
946
|
+
}, l = (k) => {
|
|
947
|
+
if (k.type === "M") {
|
|
948
|
+
const w = k, D = a(w.menuId) || void 0, ee = !!D, ue = ee ? `${D?.menuNm ?? w.menuNm ?? w.menuId}` : `${w.menuNm ?? w.menuId} (삭제됨)`;
|
|
936
949
|
return {
|
|
937
|
-
key:
|
|
950
|
+
key: w.menuId,
|
|
938
951
|
label: ue,
|
|
939
|
-
icon: ee ? void 0 : /* @__PURE__ */ e(
|
|
952
|
+
icon: ee ? void 0 : /* @__PURE__ */ e(Ye, { style: { color: "#faad14" } })
|
|
940
953
|
};
|
|
941
954
|
} else {
|
|
942
|
-
const
|
|
955
|
+
const w = k, D = (w.children ?? []).map(y).filter(Boolean).map(l);
|
|
943
956
|
return {
|
|
944
|
-
key:
|
|
945
|
-
label:
|
|
946
|
-
icon:
|
|
947
|
-
children:
|
|
957
|
+
key: w.bkmkId,
|
|
958
|
+
label: w.bkmkNm ?? w.bkmkId,
|
|
959
|
+
icon: w.prntBkmkId === "-" ? /* @__PURE__ */ e(Xe, {}) : /* @__PURE__ */ e(qe, {}),
|
|
960
|
+
children: D
|
|
948
961
|
// 빈 배열이면 자동으로 말아줌
|
|
949
962
|
};
|
|
950
963
|
}
|
|
951
964
|
};
|
|
952
|
-
return
|
|
965
|
+
return f.map(l);
|
|
953
966
|
},
|
|
954
|
-
[
|
|
955
|
-
),
|
|
956
|
-
() =>
|
|
957
|
-
[
|
|
967
|
+
[a, C, h]
|
|
968
|
+
), M = W(
|
|
969
|
+
() => I(P),
|
|
970
|
+
[I, P, C]
|
|
958
971
|
);
|
|
959
|
-
return
|
|
960
|
-
se() &&
|
|
961
|
-
}, [
|
|
962
|
-
|
|
963
|
-
}, [
|
|
964
|
-
|
|
972
|
+
return S(() => {
|
|
973
|
+
se() && _(se());
|
|
974
|
+
}, [_]), S(() => {
|
|
975
|
+
o === "category" && s("");
|
|
976
|
+
}, [o]), /* @__PURE__ */ g(
|
|
977
|
+
Pt,
|
|
965
978
|
{
|
|
966
979
|
className: t.className.wrapper,
|
|
967
|
-
collapsed: t.collapsed ||
|
|
980
|
+
collapsed: t.collapsed || m,
|
|
968
981
|
trigger: null,
|
|
969
982
|
width: t.width || 230,
|
|
970
983
|
children: [
|
|
@@ -989,10 +1002,10 @@ const bt = ({
|
|
|
989
1002
|
transition: "all 0.3s ease"
|
|
990
1003
|
},
|
|
991
1004
|
children: /* @__PURE__ */ e(
|
|
992
|
-
|
|
1005
|
+
x,
|
|
993
1006
|
{
|
|
994
1007
|
type: "text",
|
|
995
|
-
icon: t.collapsed ||
|
|
1008
|
+
icon: t.collapsed || m ? /* @__PURE__ */ e(Ue, {}) : /* @__PURE__ */ e(Ke, {}),
|
|
996
1009
|
style: {
|
|
997
1010
|
fontSize: "12px",
|
|
998
1011
|
color: "#787878",
|
|
@@ -1001,26 +1014,27 @@ const bt = ({
|
|
|
1001
1014
|
height: "100%",
|
|
1002
1015
|
display: "flex",
|
|
1003
1016
|
alignItems: "center",
|
|
1004
|
-
justifyContent: "center"
|
|
1017
|
+
justifyContent: "center",
|
|
1018
|
+
borderRadius: "0 10px 10px 0"
|
|
1005
1019
|
},
|
|
1006
|
-
onClick:
|
|
1020
|
+
onClick: c
|
|
1007
1021
|
}
|
|
1008
1022
|
)
|
|
1009
1023
|
}
|
|
1010
1024
|
),
|
|
1011
|
-
!(t.collapsed ||
|
|
1025
|
+
!(t.collapsed || m) && /* @__PURE__ */ e(
|
|
1012
1026
|
"div",
|
|
1013
1027
|
{
|
|
1014
1028
|
style: {
|
|
1015
1029
|
padding: 10
|
|
1016
1030
|
},
|
|
1017
1031
|
children: /* @__PURE__ */ e(
|
|
1018
|
-
|
|
1032
|
+
Te,
|
|
1019
1033
|
{
|
|
1020
|
-
value:
|
|
1034
|
+
value: n,
|
|
1021
1035
|
options: U,
|
|
1022
|
-
onSelect:
|
|
1023
|
-
onSearch:
|
|
1036
|
+
onSelect: $,
|
|
1037
|
+
onSearch: s,
|
|
1024
1038
|
style: { width: "100%" },
|
|
1025
1039
|
allowClear: !0,
|
|
1026
1040
|
children: /* @__PURE__ */ e(
|
|
@@ -1058,7 +1072,7 @@ const bt = ({
|
|
|
1058
1072
|
)
|
|
1059
1073
|
}
|
|
1060
1074
|
),
|
|
1061
|
-
!(t.collapsed ||
|
|
1075
|
+
!(t.collapsed || m) && /* @__PURE__ */ e(
|
|
1062
1076
|
"div",
|
|
1063
1077
|
{
|
|
1064
1078
|
style: {
|
|
@@ -1067,13 +1081,13 @@ const bt = ({
|
|
|
1067
1081
|
marginBottom: "10px"
|
|
1068
1082
|
},
|
|
1069
1083
|
children: /* @__PURE__ */ e(
|
|
1070
|
-
|
|
1084
|
+
Le,
|
|
1071
1085
|
{
|
|
1072
1086
|
className: t.className.segmented.wrapper,
|
|
1073
1087
|
options: [
|
|
1074
1088
|
{
|
|
1075
|
-
label: /* @__PURE__ */ g(
|
|
1076
|
-
/* @__PURE__ */ e("span", { className: t.className.segmented.item, children: /* @__PURE__ */ g(
|
|
1089
|
+
label: /* @__PURE__ */ g(R, { children: [
|
|
1090
|
+
/* @__PURE__ */ e("span", { className: t.className.segmented.item, style: { display: "flex", alignItems: "center" }, children: /* @__PURE__ */ g(
|
|
1077
1091
|
"svg",
|
|
1078
1092
|
{
|
|
1079
1093
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -1120,14 +1134,14 @@ const bt = ({
|
|
|
1120
1134
|
value: "category"
|
|
1121
1135
|
},
|
|
1122
1136
|
{
|
|
1123
|
-
label: /* @__PURE__ */ g(
|
|
1124
|
-
/* @__PURE__ */ e("span", { className: t.className.segmented.item, children: /* @__PURE__ */ e(
|
|
1137
|
+
label: /* @__PURE__ */ g(R, { children: [
|
|
1138
|
+
/* @__PURE__ */ e("span", { className: t.className.segmented.item, style: { display: "flex", alignItems: "center" }, children: /* @__PURE__ */ e(
|
|
1125
1139
|
"svg",
|
|
1126
1140
|
{
|
|
1127
1141
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1128
|
-
width: "
|
|
1129
|
-
height: "
|
|
1130
|
-
viewBox: "0 0
|
|
1142
|
+
width: "16",
|
|
1143
|
+
height: "16",
|
|
1144
|
+
viewBox: "0 0 16 16",
|
|
1131
1145
|
fill: "none",
|
|
1132
1146
|
children: /* @__PURE__ */ e(
|
|
1133
1147
|
"path",
|
|
@@ -1145,9 +1159,9 @@ const bt = ({
|
|
|
1145
1159
|
value: "favorite"
|
|
1146
1160
|
}
|
|
1147
1161
|
],
|
|
1148
|
-
value:
|
|
1149
|
-
onChange: (
|
|
1150
|
-
d(
|
|
1162
|
+
value: o,
|
|
1163
|
+
onChange: (f) => {
|
|
1164
|
+
d(f);
|
|
1151
1165
|
},
|
|
1152
1166
|
style: {
|
|
1153
1167
|
width: "100%"
|
|
@@ -1158,20 +1172,38 @@ const bt = ({
|
|
|
1158
1172
|
}
|
|
1159
1173
|
),
|
|
1160
1174
|
/* @__PURE__ */ g("div", { className: t.className.sider.content, children: [
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1175
|
+
v && /* @__PURE__ */ g(
|
|
1176
|
+
"div",
|
|
1177
|
+
{
|
|
1178
|
+
className: t.className.sider.loading,
|
|
1179
|
+
style: {
|
|
1180
|
+
padding: 10,
|
|
1181
|
+
margin: "0 auto",
|
|
1182
|
+
textAlign: "center",
|
|
1183
|
+
color: "var(--text-primary)"
|
|
1184
|
+
},
|
|
1185
|
+
children: [
|
|
1186
|
+
/* @__PURE__ */ e(Pe, { theme: {
|
|
1187
|
+
components: {
|
|
1188
|
+
Spin: {
|
|
1189
|
+
colorPrimary: "var(--primary-color)"
|
|
1190
|
+
}
|
|
1191
|
+
}
|
|
1192
|
+
}, children: /* @__PURE__ */ e(j, { size: "default" }) }),
|
|
1193
|
+
/* @__PURE__ */ e("div", { className: t.className.sider.loadingText, style: { marginTop: 10 }, children: "메뉴 로딩 중..." })
|
|
1194
|
+
]
|
|
1195
|
+
}
|
|
1196
|
+
),
|
|
1197
|
+
b && /* @__PURE__ */ g("div", { className: t.className.sider.error, children: [
|
|
1166
1198
|
/* @__PURE__ */ e(
|
|
1167
|
-
|
|
1199
|
+
Ze,
|
|
1168
1200
|
{
|
|
1169
1201
|
className: t.className.sider.errorIcon
|
|
1170
1202
|
}
|
|
1171
1203
|
),
|
|
1172
1204
|
/* @__PURE__ */ e("div", { className: t.className.sider.errorText, children: "메뉴 로드 실패" })
|
|
1173
1205
|
] }),
|
|
1174
|
-
!
|
|
1206
|
+
!v && !b && o === "category" && h.length === 0 && /* @__PURE__ */ e(
|
|
1175
1207
|
"div",
|
|
1176
1208
|
{
|
|
1177
1209
|
style: {
|
|
@@ -1183,7 +1215,7 @@ const bt = ({
|
|
|
1183
1215
|
children: "메뉴가 없습니다"
|
|
1184
1216
|
}
|
|
1185
1217
|
),
|
|
1186
|
-
!
|
|
1218
|
+
!v && !b && o === "favorite" && M.length === 0 && /* @__PURE__ */ e(
|
|
1187
1219
|
"div",
|
|
1188
1220
|
{
|
|
1189
1221
|
style: {
|
|
@@ -1195,26 +1227,26 @@ const bt = ({
|
|
|
1195
1227
|
children: "즐겨찾기된 메뉴가 없습니다"
|
|
1196
1228
|
}
|
|
1197
1229
|
),
|
|
1198
|
-
!
|
|
1230
|
+
!v && !b && o === "category" && h.length > 0 && /* @__PURE__ */ e("div", { className: t.className.sider.menuContainer, children: /* @__PURE__ */ e(
|
|
1199
1231
|
te,
|
|
1200
1232
|
{
|
|
1201
1233
|
theme: "light",
|
|
1202
1234
|
mode: "inline",
|
|
1203
|
-
items:
|
|
1235
|
+
items: u(h),
|
|
1204
1236
|
className: t.className.sider.menu,
|
|
1205
|
-
selectedKeys: [
|
|
1206
|
-
onClick: (
|
|
1237
|
+
selectedKeys: [p || ""],
|
|
1238
|
+
onClick: (f) => G(f.key)
|
|
1207
1239
|
}
|
|
1208
1240
|
) }),
|
|
1209
|
-
!
|
|
1241
|
+
!v && !b && o === "favorite" && M.length > 0 && /* @__PURE__ */ e("div", { className: t.className.sider.menuContainer, children: /* @__PURE__ */ e(
|
|
1210
1242
|
te,
|
|
1211
1243
|
{
|
|
1212
1244
|
theme: "light",
|
|
1213
1245
|
mode: "inline",
|
|
1214
|
-
items:
|
|
1246
|
+
items: M,
|
|
1215
1247
|
className: t.className.sider.menu,
|
|
1216
|
-
selectedKeys: [
|
|
1217
|
-
onClick: (
|
|
1248
|
+
selectedKeys: [p || ""],
|
|
1249
|
+
onClick: (f) => G(f.key)
|
|
1218
1250
|
}
|
|
1219
1251
|
) })
|
|
1220
1252
|
] })
|
|
@@ -1222,7 +1254,7 @@ const bt = ({
|
|
|
1222
1254
|
}
|
|
1223
1255
|
);
|
|
1224
1256
|
};
|
|
1225
|
-
class
|
|
1257
|
+
class Bt extends Re {
|
|
1226
1258
|
constructor(t) {
|
|
1227
1259
|
super(t), this.resetError = () => {
|
|
1228
1260
|
this.setState({ hasError: !1, error: void 0, errorInfo: void 0 });
|
|
@@ -1231,10 +1263,10 @@ class Mt extends Oe {
|
|
|
1231
1263
|
static getDerivedStateFromError(t) {
|
|
1232
1264
|
return { hasError: !0, error: t };
|
|
1233
1265
|
}
|
|
1234
|
-
componentDidCatch(t,
|
|
1235
|
-
console.error("ErrorBound caught an error:", t,
|
|
1266
|
+
componentDidCatch(t, n) {
|
|
1267
|
+
console.error("ErrorBound caught an error:", t, n), this.setState({
|
|
1236
1268
|
error: t,
|
|
1237
|
-
errorInfo:
|
|
1269
|
+
errorInfo: n
|
|
1238
1270
|
});
|
|
1239
1271
|
}
|
|
1240
1272
|
render() {
|
|
@@ -1259,7 +1291,7 @@ class Mt extends Oe {
|
|
|
1259
1291
|
subTitle: this.state.error ? `오류 내용: ${this.state.error.message}` : "알 수 없는 오류가 발생했습니다",
|
|
1260
1292
|
extra: [
|
|
1261
1293
|
/* @__PURE__ */ e(
|
|
1262
|
-
|
|
1294
|
+
x,
|
|
1263
1295
|
{
|
|
1264
1296
|
type: "primary",
|
|
1265
1297
|
icon: /* @__PURE__ */ e(de, {}),
|
|
@@ -1307,13 +1339,13 @@ class Mt extends Oe {
|
|
|
1307
1339
|
) : this.props.children;
|
|
1308
1340
|
}
|
|
1309
1341
|
}
|
|
1310
|
-
const
|
|
1311
|
-
isActive:
|
|
1342
|
+
const Et = ({
|
|
1343
|
+
isActive: r,
|
|
1312
1344
|
instance: t,
|
|
1313
|
-
params:
|
|
1345
|
+
params: n
|
|
1314
1346
|
}) => {
|
|
1315
|
-
const { activeMenuId:
|
|
1316
|
-
|
|
1347
|
+
const { activeMenuId: s, closeTab: o } = T(), d = () => {
|
|
1348
|
+
s && o(s);
|
|
1317
1349
|
};
|
|
1318
1350
|
return t ? /* @__PURE__ */ e(
|
|
1319
1351
|
"div",
|
|
@@ -1324,12 +1356,12 @@ const Bt = ({
|
|
|
1324
1356
|
left: 0,
|
|
1325
1357
|
width: "100%",
|
|
1326
1358
|
height: "100%",
|
|
1327
|
-
visibility:
|
|
1328
|
-
opacity:
|
|
1359
|
+
visibility: r ? "visible" : "hidden",
|
|
1360
|
+
opacity: r ? 1 : 0,
|
|
1329
1361
|
transition: "opacity 0.2s ease-in-out",
|
|
1330
|
-
pointerEvents:
|
|
1362
|
+
pointerEvents: r ? "auto" : "none"
|
|
1331
1363
|
},
|
|
1332
|
-
children: /* @__PURE__ */ e(
|
|
1364
|
+
children: /* @__PURE__ */ e(Bt, { children: /* @__PURE__ */ e(Q, { fallback: null, children: t && le(t, { params: n }) }) })
|
|
1333
1365
|
}
|
|
1334
1366
|
) : /* @__PURE__ */ e(
|
|
1335
1367
|
"div",
|
|
@@ -1343,10 +1375,10 @@ const Bt = ({
|
|
|
1343
1375
|
display: "flex",
|
|
1344
1376
|
justifyContent: "center",
|
|
1345
1377
|
alignItems: "center",
|
|
1346
|
-
visibility:
|
|
1347
|
-
opacity:
|
|
1378
|
+
visibility: r ? "visible" : "hidden",
|
|
1379
|
+
opacity: r ? 1 : 0,
|
|
1348
1380
|
transition: "opacity 0.2s ease-in-out",
|
|
1349
|
-
pointerEvents:
|
|
1381
|
+
pointerEvents: r ? "auto" : "none"
|
|
1350
1382
|
},
|
|
1351
1383
|
children: /* @__PURE__ */ e(
|
|
1352
1384
|
"div",
|
|
@@ -1362,18 +1394,18 @@ const Bt = ({
|
|
|
1362
1394
|
children: /* @__PURE__ */ e(
|
|
1363
1395
|
ie,
|
|
1364
1396
|
{
|
|
1365
|
-
icon: /* @__PURE__ */ e(
|
|
1397
|
+
icon: /* @__PURE__ */ e(Qe, { twoToneColor: "#69b1ff" }),
|
|
1366
1398
|
status: "warning",
|
|
1367
1399
|
title: "등록된 메뉴 정보가 없거나 유효한 메뉴가 아닙니다.",
|
|
1368
|
-
subTitle: /* @__PURE__ */ e(
|
|
1369
|
-
extra: /* @__PURE__ */ e(
|
|
1400
|
+
subTitle: /* @__PURE__ */ e(Be.Text, { type: "secondary", children: "자세한 내용은 관리자에게 문의바랍니다." }),
|
|
1401
|
+
extra: /* @__PURE__ */ e(Me, { children: /* @__PURE__ */ e(x, { icon: /* @__PURE__ */ e(ce, {}), onClick: d, children: "탭 닫기" }) })
|
|
1370
1402
|
}
|
|
1371
1403
|
)
|
|
1372
1404
|
}
|
|
1373
1405
|
)
|
|
1374
1406
|
}
|
|
1375
1407
|
);
|
|
1376
|
-
},
|
|
1408
|
+
}, Dt = q(Et), Ot = () => /* @__PURE__ */ g(R, { children: [
|
|
1377
1409
|
/* @__PURE__ */ e(
|
|
1378
1410
|
"link",
|
|
1379
1411
|
{
|
|
@@ -1383,58 +1415,58 @@ const Bt = ({
|
|
|
1383
1415
|
}
|
|
1384
1416
|
),
|
|
1385
1417
|
/* @__PURE__ */ e("div", { className: "LandingContainer-wrap", children: /* @__PURE__ */ e("div", { className: "inner", children: /* @__PURE__ */ e("div", { className: "content" }) }) })
|
|
1386
|
-
] }),
|
|
1387
|
-
console.log("createPopupViewLoader 호출 - popupUrl:",
|
|
1388
|
-
const
|
|
1389
|
-
if (
|
|
1390
|
-
const
|
|
1391
|
-
return console.log(`팝업 URL 변환: ${
|
|
1418
|
+
] }), Rt = (r, t) => {
|
|
1419
|
+
console.log("createPopupViewLoader 호출 - popupUrl:", r);
|
|
1420
|
+
const s = ((o) => {
|
|
1421
|
+
if (o.startsWith("/src/pages/views/popup/")) {
|
|
1422
|
+
const m = o + ".tsx";
|
|
1423
|
+
return console.log(`팝업 URL 변환: ${o} -> ${m}`), m;
|
|
1392
1424
|
}
|
|
1393
|
-
const
|
|
1394
|
-
return console.log(`팝업 URL 변환: ${
|
|
1395
|
-
})(
|
|
1396
|
-
return !
|
|
1397
|
-
}, Ft = ({ popup:
|
|
1398
|
-
const [
|
|
1399
|
-
console.log("PopupArea - handleClose:",
|
|
1425
|
+
const p = `/src/pages/views/popup/${o.startsWith("/") ? o.substring(1) : o}.tsx`;
|
|
1426
|
+
return console.log(`팝업 URL 변환: ${o} -> ${p}`), p;
|
|
1427
|
+
})(r);
|
|
1428
|
+
return !s || !t?.glob[s] ? (console.warn(`팝업 뷰를 찾을 수 없습니다: ${r} (${s})`), console.warn("사용 가능한 팝업 뷰들:", Object.keys(t?.glob || {})), null) : t?.glob[s];
|
|
1429
|
+
}, Ft = ({ popup: r, modules: t }) => {
|
|
1430
|
+
const [n, s] = L(null), [o, d] = L(!1), [p, m] = L(null), i = () => {
|
|
1431
|
+
console.log("PopupArea - handleClose:", r.popupId), J.getState().closePopup(r.popupId);
|
|
1400
1432
|
};
|
|
1401
|
-
return
|
|
1433
|
+
return S(() => {
|
|
1402
1434
|
(async () => {
|
|
1403
|
-
console.log("팝업 뷰 로드 시작:",
|
|
1435
|
+
console.log("팝업 뷰 로드 시작:", r.popupUrl), d(!0), m(null);
|
|
1404
1436
|
try {
|
|
1405
|
-
const h =
|
|
1437
|
+
const h = Rt(r.popupUrl, t);
|
|
1406
1438
|
if (!h) {
|
|
1407
|
-
const
|
|
1408
|
-
console.error(
|
|
1439
|
+
const a = `팝업 뷰를 찾을 수 없습니다: ${r.popupUrl}`;
|
|
1440
|
+
console.error(a), m(a), d(!1);
|
|
1409
1441
|
return;
|
|
1410
1442
|
}
|
|
1411
1443
|
console.log("팝업 뷰 모듈 로드 중...");
|
|
1412
|
-
const
|
|
1413
|
-
console.log("팝업 뷰 모듈 로드 완료:",
|
|
1414
|
-
const
|
|
1415
|
-
if (console.log("팝업 뷰 컴포넌트:",
|
|
1444
|
+
const v = await h();
|
|
1445
|
+
console.log("팝업 뷰 모듈 로드 완료:", v);
|
|
1446
|
+
const b = v.default;
|
|
1447
|
+
if (console.log("팝업 뷰 컴포넌트:", b), !b)
|
|
1416
1448
|
throw new Error("팝업 뷰 컴포넌트를 찾을 수 없습니다");
|
|
1417
|
-
|
|
1449
|
+
s(() => b), console.log("팝업 뷰 설정 완료");
|
|
1418
1450
|
} catch (h) {
|
|
1419
|
-
console.error("팝업 뷰 로드 실패:", h),
|
|
1451
|
+
console.error("팝업 뷰 로드 실패:", h), m(h instanceof Error ? h.message : "팝업 뷰 로드 실패");
|
|
1420
1452
|
} finally {
|
|
1421
1453
|
d(!1);
|
|
1422
1454
|
}
|
|
1423
1455
|
})();
|
|
1424
|
-
}, [
|
|
1456
|
+
}, [r.popupUrl]), o ? /* @__PURE__ */ g("div", { className: "popup-loading", children: [
|
|
1425
1457
|
/* @__PURE__ */ e(j, { size: "large" }),
|
|
1426
1458
|
/* @__PURE__ */ e("p", { children: "팝업을 로드하는 중..." })
|
|
1427
|
-
] }) :
|
|
1428
|
-
/* @__PURE__ */ e(Z, { description:
|
|
1459
|
+
] }) : p ? /* @__PURE__ */ g("div", { className: "popup-error", children: [
|
|
1460
|
+
/* @__PURE__ */ e(Z, { description: p, image: Z.PRESENTED_IMAGE_SIMPLE }),
|
|
1429
1461
|
/* @__PURE__ */ e(
|
|
1430
|
-
|
|
1462
|
+
x,
|
|
1431
1463
|
{
|
|
1432
1464
|
icon: /* @__PURE__ */ e(de, {}),
|
|
1433
1465
|
onClick: () => window.location.reload(),
|
|
1434
1466
|
children: "다시 시도"
|
|
1435
1467
|
}
|
|
1436
1468
|
)
|
|
1437
|
-
] }) :
|
|
1469
|
+
] }) : n ? /* @__PURE__ */ e(
|
|
1438
1470
|
Q,
|
|
1439
1471
|
{
|
|
1440
1472
|
fallback: /* @__PURE__ */ g("div", { className: "popup-loading", children: [
|
|
@@ -1442,63 +1474,63 @@ const Bt = ({
|
|
|
1442
1474
|
/* @__PURE__ */ e("p", { children: "컴포넌트를 로드하는 중..." })
|
|
1443
1475
|
] }),
|
|
1444
1476
|
children: /* @__PURE__ */ e(
|
|
1445
|
-
|
|
1477
|
+
n,
|
|
1446
1478
|
{
|
|
1447
1479
|
popup: {
|
|
1448
|
-
...
|
|
1449
|
-
close:
|
|
1480
|
+
...r,
|
|
1481
|
+
close: i
|
|
1450
1482
|
// popup 객체에 close 이벤트 추가
|
|
1451
1483
|
},
|
|
1452
|
-
onClose:
|
|
1484
|
+
onClose: i
|
|
1453
1485
|
}
|
|
1454
1486
|
)
|
|
1455
1487
|
}
|
|
1456
1488
|
) : /* @__PURE__ */ e("div", { className: "popup-empty", children: /* @__PURE__ */ e(Z, { description: "팝업 내용을 불러올 수 없습니다." }) });
|
|
1457
|
-
},
|
|
1489
|
+
}, At = ({ modules: r }) => {
|
|
1458
1490
|
const { popups: t } = J();
|
|
1459
|
-
return t.length === 0 ? null : /* @__PURE__ */ e(
|
|
1460
|
-
const
|
|
1461
|
-
key:
|
|
1462
|
-
text:
|
|
1463
|
-
type:
|
|
1464
|
-
disabled:
|
|
1491
|
+
return t.length === 0 ? null : /* @__PURE__ */ e(R, { children: t.map((n) => {
|
|
1492
|
+
const s = n.config || {}, o = s.width || n.width || 800, d = s.height || n.height || 600, p = s.title || n.popupTitle, m = n.buttonList?.map((i, c) => ({
|
|
1493
|
+
key: i.btnId || `btn_${c}`,
|
|
1494
|
+
text: i.btnNm,
|
|
1495
|
+
type: i.btnId === "CLOSE" ? "default" : "primary",
|
|
1496
|
+
disabled: i.enblYn !== "Y",
|
|
1465
1497
|
danger: !1
|
|
1466
1498
|
})) || [];
|
|
1467
1499
|
return console.log("팝업 렌더링:", {
|
|
1468
|
-
popupId:
|
|
1469
|
-
popupCode:
|
|
1470
|
-
title:
|
|
1471
|
-
width:
|
|
1500
|
+
popupId: n.popupId,
|
|
1501
|
+
popupCode: n.popupCode,
|
|
1502
|
+
title: p,
|
|
1503
|
+
width: o,
|
|
1472
1504
|
height: d,
|
|
1473
|
-
buttons:
|
|
1474
|
-
}), /* @__PURE__ */ e("div", { children: /* @__PURE__ */ e(Ft, { popup:
|
|
1505
|
+
buttons: m
|
|
1506
|
+
}), /* @__PURE__ */ e("div", { children: /* @__PURE__ */ e(Ft, { popup: n, modules: r }) }, n.popupId);
|
|
1475
1507
|
}) });
|
|
1476
|
-
},
|
|
1477
|
-
const { popups:
|
|
1478
|
-
return /* @__PURE__ */ e(
|
|
1479
|
-
if (!(
|
|
1480
|
-
const
|
|
1481
|
-
if (!
|
|
1482
|
-
const
|
|
1483
|
-
return /* @__PURE__ */ e(Q, { fallback: null, children: /* @__PURE__ */ e(
|
|
1508
|
+
}, zt = () => {
|
|
1509
|
+
const { popups: r, closePopup: t } = J();
|
|
1510
|
+
return /* @__PURE__ */ e(R, { children: r.map((n) => {
|
|
1511
|
+
if (!(n.isLocal || n.popupCode.startsWith("CORE_"))) return null;
|
|
1512
|
+
const s = ft[n.popupCode];
|
|
1513
|
+
if (!s) return null;
|
|
1514
|
+
const o = s.component;
|
|
1515
|
+
return /* @__PURE__ */ e(Q, { fallback: null, children: /* @__PURE__ */ e(o, { popup: n, onClose: () => t(n.popupId) }) }, n.popupId);
|
|
1484
1516
|
}) });
|
|
1485
|
-
},
|
|
1517
|
+
}, Ht = (r) => ({
|
|
1486
1518
|
position: "absolute",
|
|
1487
1519
|
inset: 0,
|
|
1488
|
-
visibility:
|
|
1489
|
-
opacity:
|
|
1520
|
+
visibility: r ? "visible" : "hidden",
|
|
1521
|
+
opacity: r ? 1 : 0,
|
|
1490
1522
|
transition: "opacity 0.2s ease-in-out",
|
|
1491
|
-
pointerEvents:
|
|
1492
|
-
}),
|
|
1493
|
-
const { lock: t } = ge(),
|
|
1494
|
-
return
|
|
1495
|
-
|
|
1496
|
-
}, [
|
|
1497
|
-
},
|
|
1498
|
-
const d = V(null), [
|
|
1499
|
-
d.current = h,
|
|
1500
|
-
}, []),
|
|
1501
|
-
return /* @__PURE__ */ e("div", { ref:
|
|
1523
|
+
pointerEvents: r ? "auto" : "none"
|
|
1524
|
+
}), Vt = ({ once: r = !0 }) => {
|
|
1525
|
+
const { lock: t } = ge(), n = V(!1);
|
|
1526
|
+
return S(() => {
|
|
1527
|
+
r && n.current || (n.current = !0, t());
|
|
1528
|
+
}, [r, t]), null;
|
|
1529
|
+
}, _t = ({ isActive: r, flagged: t, tabKey: n, onUnlock: s, children: o }) => {
|
|
1530
|
+
const d = V(null), [p, m] = L(!1), i = E((h) => {
|
|
1531
|
+
d.current = h, m(!!h);
|
|
1532
|
+
}, []), c = Ht(r);
|
|
1533
|
+
return /* @__PURE__ */ e("div", { ref: i, style: c, children: p ? /* @__PURE__ */ g(
|
|
1502
1534
|
he,
|
|
1503
1535
|
{
|
|
1504
1536
|
idleMs: Number.POSITIVE_INFINITY,
|
|
@@ -1506,16 +1538,16 @@ const Bt = ({
|
|
|
1506
1538
|
overlayScope: "scoped",
|
|
1507
1539
|
overlayPosition: "absolute",
|
|
1508
1540
|
eventTarget: d.current,
|
|
1509
|
-
overlayId: `tab-overlay-${
|
|
1510
|
-
onUnlock: async () => (
|
|
1541
|
+
overlayId: `tab-overlay-${n}`,
|
|
1542
|
+
onUnlock: async () => (s(), !0),
|
|
1511
1543
|
children: [
|
|
1512
|
-
|
|
1513
|
-
|
|
1544
|
+
r && t ? /* @__PURE__ */ e(Vt, { once: !0 }) : null,
|
|
1545
|
+
o
|
|
1514
1546
|
]
|
|
1515
1547
|
}
|
|
1516
|
-
) :
|
|
1517
|
-
},
|
|
1518
|
-
config:
|
|
1548
|
+
) : o });
|
|
1549
|
+
}, nn = ({
|
|
1550
|
+
config: r = {},
|
|
1519
1551
|
modules: t = {
|
|
1520
1552
|
view: {
|
|
1521
1553
|
path: "/src/pages/views/content"
|
|
@@ -1525,37 +1557,37 @@ const Bt = ({
|
|
|
1525
1557
|
}
|
|
1526
1558
|
}
|
|
1527
1559
|
}) => {
|
|
1528
|
-
const
|
|
1560
|
+
const n = V(
|
|
1529
1561
|
/* @__PURE__ */ new Map()
|
|
1530
1562
|
), {
|
|
1531
|
-
tabs:
|
|
1532
|
-
tabParams:
|
|
1563
|
+
tabs: s,
|
|
1564
|
+
tabParams: o,
|
|
1533
1565
|
activeMenuId: d,
|
|
1534
|
-
tabProtectFlag:
|
|
1535
|
-
clearProtectFlagForKey:
|
|
1536
|
-
} =
|
|
1537
|
-
(
|
|
1538
|
-
const h =
|
|
1566
|
+
tabProtectFlag: p,
|
|
1567
|
+
clearProtectFlagForKey: m
|
|
1568
|
+
} = T(), i = E(
|
|
1569
|
+
(c) => {
|
|
1570
|
+
const h = n.current.get(c.key);
|
|
1539
1571
|
if (h) return h;
|
|
1540
|
-
const
|
|
1541
|
-
let
|
|
1542
|
-
if (!
|
|
1543
|
-
const
|
|
1544
|
-
|
|
1572
|
+
const v = c.gubun === "M" ? `${t.view.path}${c.menuItem?.scrnPath}.tsx` : `${t.view.path}${c.componentItem?.scrnPath}.tsx`;
|
|
1573
|
+
let b = t.view?.glob?.[v];
|
|
1574
|
+
if (!b && typeof import.meta < "u" && typeof import.meta.glob == "function" && (b = (/* @__PURE__ */ Object.assign({}))[v]), b) {
|
|
1575
|
+
const a = F(
|
|
1576
|
+
b
|
|
1545
1577
|
);
|
|
1546
|
-
return
|
|
1578
|
+
return n.current.set(c.key, a), a;
|
|
1547
1579
|
}
|
|
1548
1580
|
return null;
|
|
1549
1581
|
},
|
|
1550
1582
|
[t.view?.glob]
|
|
1551
1583
|
);
|
|
1552
|
-
return /* @__PURE__ */ g(
|
|
1553
|
-
/* @__PURE__ */ e(
|
|
1554
|
-
/* @__PURE__ */ g(
|
|
1555
|
-
/* @__PURE__ */ e(
|
|
1584
|
+
return /* @__PURE__ */ g(H, { className: "main-layout", children: [
|
|
1585
|
+
/* @__PURE__ */ e(It, { config: r?.header }),
|
|
1586
|
+
/* @__PURE__ */ g(H, { children: [
|
|
1587
|
+
/* @__PURE__ */ e(Mt, { config: r?.sidebar }),
|
|
1556
1588
|
/* @__PURE__ */ g("div", { className: "content-container", children: [
|
|
1557
|
-
/* @__PURE__ */ e(Lt, { config:
|
|
1558
|
-
/* @__PURE__ */
|
|
1589
|
+
/* @__PURE__ */ e(Lt, { config: r?.menuTab }),
|
|
1590
|
+
/* @__PURE__ */ g(vt, { config: r?.content, children: [
|
|
1559
1591
|
/* @__PURE__ */ e("div", { className: "view-container", children: /* @__PURE__ */ g(
|
|
1560
1592
|
"div",
|
|
1561
1593
|
{
|
|
@@ -1565,74 +1597,74 @@ const Bt = ({
|
|
|
1565
1597
|
height: "100%"
|
|
1566
1598
|
},
|
|
1567
1599
|
children: [
|
|
1568
|
-
|
|
1569
|
-
const h =
|
|
1570
|
-
return /* @__PURE__ */ e(
|
|
1571
|
-
|
|
1600
|
+
s.map((c) => {
|
|
1601
|
+
const h = i(c), v = d === c.key, b = !!p?.[c.key], a = o[c.key] || {};
|
|
1602
|
+
return /* @__PURE__ */ e(fe, { children: /* @__PURE__ */ e(
|
|
1603
|
+
_t,
|
|
1572
1604
|
{
|
|
1573
|
-
isActive:
|
|
1574
|
-
flagged:
|
|
1575
|
-
tabKey:
|
|
1576
|
-
onUnlock: () =>
|
|
1605
|
+
isActive: v,
|
|
1606
|
+
flagged: b,
|
|
1607
|
+
tabKey: c.key,
|
|
1608
|
+
onUnlock: () => m(c.key),
|
|
1577
1609
|
children: /* @__PURE__ */ e(
|
|
1578
|
-
|
|
1610
|
+
Dt,
|
|
1579
1611
|
{
|
|
1580
|
-
isActive:
|
|
1612
|
+
isActive: v,
|
|
1581
1613
|
instance: h || void 0,
|
|
1582
|
-
params:
|
|
1614
|
+
params: a
|
|
1583
1615
|
},
|
|
1584
|
-
|
|
1616
|
+
c.key
|
|
1585
1617
|
)
|
|
1586
1618
|
},
|
|
1587
|
-
|
|
1588
|
-
);
|
|
1619
|
+
c.key
|
|
1620
|
+
) }, `sbp-${c.key}`);
|
|
1589
1621
|
}),
|
|
1590
|
-
(!d ||
|
|
1622
|
+
(!d || s.length === 0) && /* @__PURE__ */ e(Ot, {})
|
|
1591
1623
|
]
|
|
1592
1624
|
}
|
|
1593
1625
|
) }),
|
|
1594
|
-
/* @__PURE__ */ e(
|
|
1595
|
-
/* @__PURE__ */ e(
|
|
1596
|
-
] })
|
|
1626
|
+
/* @__PURE__ */ e(zt, {}),
|
|
1627
|
+
/* @__PURE__ */ e(At, { modules: t?.popup })
|
|
1628
|
+
] })
|
|
1597
1629
|
] })
|
|
1598
1630
|
] }),
|
|
1599
1631
|
/* @__PURE__ */ e(xe, {})
|
|
1600
1632
|
] });
|
|
1601
|
-
},
|
|
1602
|
-
function
|
|
1603
|
-
config:
|
|
1633
|
+
}, rn = ({ config: r, children: t }) => /* @__PURE__ */ e("div", { children: "BwgPortal02" });
|
|
1634
|
+
function on({
|
|
1635
|
+
config: r,
|
|
1604
1636
|
ui: t,
|
|
1605
|
-
navigate:
|
|
1637
|
+
navigate: n
|
|
1606
1638
|
}) {
|
|
1607
|
-
const { loading:
|
|
1608
|
-
return
|
|
1609
|
-
|
|
1610
|
-
}, []), /* @__PURE__ */ e(
|
|
1639
|
+
const { loading: s, capsOn: o, prefills: d, onKeyDown: p, doLogin: m } = He(r), i = (c) => m(c, n);
|
|
1640
|
+
return S(() => {
|
|
1641
|
+
Ve.getState().fetchSystemMap();
|
|
1642
|
+
}, []), /* @__PURE__ */ e(R, { children: t({ onSubmit: i, loading: s, capsOn: o, onKeyDown: p, prefills: d }) });
|
|
1611
1643
|
}
|
|
1612
|
-
function
|
|
1613
|
-
onSubmit:
|
|
1644
|
+
function sn({
|
|
1645
|
+
onSubmit: r,
|
|
1614
1646
|
loading: t,
|
|
1615
|
-
capsOn:
|
|
1616
|
-
onKeyDown:
|
|
1617
|
-
prefills:
|
|
1647
|
+
capsOn: n,
|
|
1648
|
+
onKeyDown: s,
|
|
1649
|
+
prefills: o,
|
|
1618
1650
|
labels: d = {
|
|
1619
1651
|
id: "ID 혹은 사번",
|
|
1620
1652
|
pw: "비밀번호",
|
|
1621
1653
|
remember: "Remember me",
|
|
1622
1654
|
login: "로그인"
|
|
1623
1655
|
},
|
|
1624
|
-
header:
|
|
1625
|
-
footer:
|
|
1656
|
+
header: p,
|
|
1657
|
+
footer: m
|
|
1626
1658
|
}) {
|
|
1627
|
-
const [
|
|
1628
|
-
return
|
|
1629
|
-
|
|
1630
|
-
}, [
|
|
1631
|
-
|
|
1659
|
+
const [i] = O.useForm();
|
|
1660
|
+
return S(() => {
|
|
1661
|
+
o && (o.id || o.pswr) && i.setFieldsValue({ id: o.id, pswr: o.pswr });
|
|
1662
|
+
}, [o, i]), /* @__PURE__ */ e("div", { className: "login-main", children: /* @__PURE__ */ g("div", { className: "login_wrap", children: [
|
|
1663
|
+
p || /* @__PURE__ */ e("div", { className: "logo_box" }),
|
|
1632
1664
|
/* @__PURE__ */ e("div", { className: "login_title" }),
|
|
1633
|
-
/* @__PURE__ */ e(
|
|
1665
|
+
/* @__PURE__ */ e(O, { form: i, onFinish: r, className: "login-form", children: /* @__PURE__ */ g(Ee, { vertical: !0, children: [
|
|
1634
1666
|
/* @__PURE__ */ e(
|
|
1635
|
-
|
|
1667
|
+
O.Item,
|
|
1636
1668
|
{
|
|
1637
1669
|
name: "id",
|
|
1638
1670
|
rules: [
|
|
@@ -1642,11 +1674,11 @@ function on({
|
|
|
1642
1674
|
message: "아이디는 공백이 들어갈 수 없습니다."
|
|
1643
1675
|
}
|
|
1644
1676
|
],
|
|
1645
|
-
children: /* @__PURE__ */ e(Y, { allowClear: !0, placeholder: d.id, onKeyDown:
|
|
1677
|
+
children: /* @__PURE__ */ e(Y, { allowClear: !0, placeholder: d.id, onKeyDown: s })
|
|
1646
1678
|
}
|
|
1647
1679
|
),
|
|
1648
1680
|
/* @__PURE__ */ e(
|
|
1649
|
-
|
|
1681
|
+
O.Item,
|
|
1650
1682
|
{
|
|
1651
1683
|
name: "pswr",
|
|
1652
1684
|
rules: [{ required: !0, message: "비밀번호를 입력하세요." }],
|
|
@@ -1655,32 +1687,32 @@ function on({
|
|
|
1655
1687
|
{
|
|
1656
1688
|
allowClear: !0,
|
|
1657
1689
|
placeholder: d.pw,
|
|
1658
|
-
onKeyDown:
|
|
1690
|
+
onKeyDown: s
|
|
1659
1691
|
}
|
|
1660
1692
|
)
|
|
1661
1693
|
}
|
|
1662
1694
|
),
|
|
1663
|
-
/* @__PURE__ */ e(
|
|
1664
|
-
/* @__PURE__ */ e("div", { className:
|
|
1665
|
-
/* @__PURE__ */ e(
|
|
1695
|
+
/* @__PURE__ */ e(O.Item, { name: "remember", valuePropName: "checked", children: /* @__PURE__ */ e(De, { children: d.remember }) }),
|
|
1696
|
+
/* @__PURE__ */ e("div", { className: n ? "caps-lock caps-lock-on" : "caps-lock", children: n ? "Caps Lock On" : "Caps Lock Off" }),
|
|
1697
|
+
/* @__PURE__ */ e(O.Item, { children: /* @__PURE__ */ e(x, { type: "primary", htmlType: "submit", loading: t, block: !0, children: d.login }) })
|
|
1666
1698
|
] }) }),
|
|
1667
|
-
|
|
1699
|
+
m
|
|
1668
1700
|
] }) });
|
|
1669
1701
|
}
|
|
1670
1702
|
export {
|
|
1671
|
-
|
|
1672
|
-
|
|
1673
|
-
|
|
1674
|
-
|
|
1675
|
-
|
|
1676
|
-
|
|
1677
|
-
|
|
1678
|
-
|
|
1679
|
-
|
|
1680
|
-
|
|
1681
|
-
|
|
1703
|
+
tn as A,
|
|
1704
|
+
nn as B,
|
|
1705
|
+
Dt as C,
|
|
1706
|
+
sn as D,
|
|
1707
|
+
en as L,
|
|
1708
|
+
At as P,
|
|
1709
|
+
rn as a,
|
|
1710
|
+
on as b,
|
|
1711
|
+
Ot as c,
|
|
1712
|
+
vt as d,
|
|
1713
|
+
It as e,
|
|
1682
1714
|
Lt as f,
|
|
1683
|
-
|
|
1684
|
-
|
|
1685
|
-
|
|
1715
|
+
Mt as g,
|
|
1716
|
+
_t as h,
|
|
1717
|
+
ft as l
|
|
1686
1718
|
};
|