@bwg-ui/core 1.3.7 → 1.3.9

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 (183) hide show
  1. package/dist/chunks/CMPrgrMstrP02-CIPnCdt3.cjs +1 -0
  2. package/dist/chunks/CMPrgrMstrP02-jC3zDeFU.js +154 -0
  3. package/dist/chunks/CMSearchIntfGwP01-D4qj6J2N.cjs +1 -0
  4. package/dist/chunks/{CMSearchIntfGwP01-DCHZJn2H.js → CMSearchIntfGwP01-DzTHXQi3.js} +31 -31
  5. package/dist/chunks/MenuReport-BtP1uAmq.cjs +1 -0
  6. package/dist/chunks/{MenuReport-IBdoU2S3.js → MenuReport-DgMjx5Hs.js} +5 -5
  7. package/dist/chunks/SearchAddressP01-B25Exa9E.cjs +1 -0
  8. package/dist/chunks/SearchAddressP01-B_D3nrkn.js +605 -0
  9. package/dist/chunks/SearchDepartmentP01-D5ihO3l8.cjs +1 -0
  10. package/dist/chunks/SearchDepartmentP01-pUAav3Xp.js +352 -0
  11. package/dist/chunks/SearchDepartmentP02-B3oL1B-h.js +518 -0
  12. package/dist/chunks/SearchDepartmentP02-CWs8sLuu.cjs +1 -0
  13. package/dist/chunks/SearchHolidayP01-SuuyAk9T.js +188 -0
  14. package/dist/chunks/SearchHolidayP01-cJ8Wlkwr.cjs +1 -0
  15. package/dist/chunks/SearchOrganizationP01-3nDwrB08.cjs +1 -0
  16. package/dist/chunks/SearchOrganizationP01-ChwLBfVt.js +420 -0
  17. package/dist/chunks/SearchOrganizationP02-0Suj4DLH.cjs +1 -0
  18. package/dist/chunks/SearchOrganizationP02-DI0V4Bdz.js +516 -0
  19. package/dist/chunks/UploadMultiFileP01-CffgcIXm.cjs +1 -0
  20. package/dist/chunks/UploadMultiFileP01-Cy2LeYfy.js +38 -0
  21. package/dist/chunks/{layout-components-DnuV2Psp.js → layout-components-Cpzy8mH1.js} +1053 -951
  22. package/dist/chunks/layout-components-y9YpQQbx.cjs +38 -0
  23. package/dist/chunks/provider-DrmM0H4o.cjs +1 -0
  24. package/dist/chunks/provider-ff4RVDYo.js +711 -0
  25. package/dist/components/common/ButtonAccessController.d.ts +2 -3
  26. package/dist/components/common/ButtonAccessController.d.ts.map +1 -1
  27. package/dist/components/common/BwgButtonGroup.d.ts +1 -1
  28. package/dist/components/common/BwgButtonGroup.d.ts.map +1 -1
  29. package/dist/components/common/BwgCol.d.ts +1 -1
  30. package/dist/components/common/BwgCol.d.ts.map +1 -1
  31. package/dist/components/common/BwgGrid.d.ts.map +1 -1
  32. package/dist/components/common/BwgModal.d.ts +10 -0
  33. package/dist/components/common/BwgModal.d.ts.map +1 -0
  34. package/dist/components/common/BwgView.d.ts.map +1 -1
  35. package/dist/components/common/index.cjs +1 -1
  36. package/dist/components/common/index.d.ts +2 -1
  37. package/dist/components/common/index.d.ts.map +1 -1
  38. package/dist/components/common/index.js +4887 -28
  39. package/dist/components/core/BwgCmnFileItems.d.ts +47 -0
  40. package/dist/components/core/BwgCmnFileItems.d.ts.map +1 -0
  41. package/dist/components/core/BwgDeptSearch.d.ts +38 -0
  42. package/dist/components/core/BwgDeptSearch.d.ts.map +1 -0
  43. package/dist/components/core/BwgDraggerUploader.d.ts +13 -0
  44. package/dist/components/core/BwgDraggerUploader.d.ts.map +1 -0
  45. package/dist/components/core/BwgEmpSearch.d.ts +12 -4
  46. package/dist/components/core/BwgEmpSearch.d.ts.map +1 -1
  47. package/dist/components/core/BwgUploader.d.ts +6 -92
  48. package/dist/components/core/BwgUploader.d.ts.map +1 -1
  49. package/dist/components/core/BwgUploader_bak.d.ts +98 -0
  50. package/dist/components/core/BwgUploader_bak.d.ts.map +1 -0
  51. package/dist/components/core/BwgXlsxUploader.d.ts +25 -0
  52. package/dist/components/core/BwgXlsxUploader.d.ts.map +1 -0
  53. package/dist/components/core/index.cjs +1 -1
  54. package/dist/components/core/index.d.ts +11 -2
  55. package/dist/components/core/index.d.ts.map +1 -1
  56. package/dist/components/core/index.js +1318 -1164
  57. package/dist/components/guide/index.cjs +1 -1
  58. package/dist/components/guide/index.js +17 -17
  59. package/dist/components/layout/BwgCoreLogin.d.ts.map +1 -1
  60. package/dist/components/layout/BwgPortal01.d.ts.map +1 -1
  61. package/dist/components/layout/custom/ConfigurableSidebar.d.ts.map +1 -1
  62. package/dist/components/layout/index.cjs +1 -1
  63. package/dist/components/layout/index.js +1 -1
  64. package/dist/components/pages/auth/AuthManagement.d.ts +8 -0
  65. package/dist/components/pages/auth/AuthManagement.d.ts.map +1 -0
  66. package/dist/components/pages/auth/AuthSelector.d.ts +28 -0
  67. package/dist/components/pages/auth/AuthSelector.d.ts.map +1 -0
  68. package/dist/components/pages/auth/RoleAuthMapper.d.ts +8 -0
  69. package/dist/components/pages/auth/RoleAuthMapper.d.ts.map +1 -0
  70. package/dist/components/pages/auth/RoleDashBoard.d.ts +13 -0
  71. package/dist/components/pages/auth/RoleDashBoard.d.ts.map +1 -0
  72. package/dist/components/pages/auth/RoleView.d.ts +17 -0
  73. package/dist/components/pages/auth/RoleView.d.ts.map +1 -0
  74. package/dist/components/pages/board/AdminBoard.d.ts +6 -0
  75. package/dist/components/pages/board/AdminBoard.d.ts.map +1 -0
  76. package/dist/components/pages/board/BoardComment.d.ts +8 -0
  77. package/dist/components/pages/board/BoardComment.d.ts.map +1 -0
  78. package/dist/components/pages/board/MyBoard.d.ts +6 -0
  79. package/dist/components/pages/board/MyBoard.d.ts.map +1 -0
  80. package/dist/components/pages/index.d.ts +10 -10
  81. package/dist/components/pages/index.d.ts.map +1 -1
  82. package/dist/components/pages/rsrc/MenuManagement.d.ts +4 -0
  83. package/dist/components/pages/rsrc/MenuManagement.d.ts.map +1 -0
  84. package/dist/components/pages/rsrc/{CMMenuPrntSelectModal.d.ts → MenuSelector.d.ts} +5 -4
  85. package/dist/components/pages/rsrc/MenuSelector.d.ts.map +1 -0
  86. package/dist/components/pages/rsrc/ProgramManagement.d.ts +4 -0
  87. package/dist/components/pages/rsrc/ProgramManagement.d.ts.map +1 -0
  88. package/dist/components/pages/rsrc/{CMMenuPrgrSelectModal.d.ts → ProgramSelector.d.ts} +5 -4
  89. package/dist/components/pages/rsrc/ProgramSelector.d.ts.map +1 -0
  90. package/dist/components/pages/syst/CommonCodeManagement.d.ts +4 -0
  91. package/dist/components/pages/syst/CommonCodeManagement.d.ts.map +1 -0
  92. package/dist/components/pages/syst/CommonCodeTester.d.ts +7 -0
  93. package/dist/components/pages/syst/CommonCodeTester.d.ts.map +1 -0
  94. package/dist/components/pages/types.d.ts +5 -1
  95. package/dist/components/pages/types.d.ts.map +1 -1
  96. package/dist/components/popup/SearchDepartmentP01.d.ts +1 -1
  97. package/dist/components/popup/SearchDepartmentP01.d.ts.map +1 -1
  98. package/dist/components/popup/SearchOrganizationP02.d.ts.map +1 -1
  99. package/dist/components/popup/UploadMultiFileP01.d.ts +14 -0
  100. package/dist/components/popup/UploadMultiFileP01.d.ts.map +1 -0
  101. package/dist/components/popup/config/localPopupRegistry.d.ts.map +1 -1
  102. package/dist/components/popup/index.cjs +1 -1
  103. package/dist/components/popup/index.d.ts +1 -0
  104. package/dist/components/popup/index.d.ts.map +1 -1
  105. package/dist/components/popup/index.js +16 -8
  106. package/dist/index.cjs +186 -1
  107. package/dist/index.js +32378 -290
  108. package/dist/provider/contexts/BwgViewContext.d.ts +8 -1
  109. package/dist/provider/contexts/BwgViewContext.d.ts.map +1 -1
  110. package/dist/provider/contexts/CommonCodeContext.d.ts +15 -28
  111. package/dist/provider/contexts/CommonCodeContext.d.ts.map +1 -1
  112. package/dist/provider/contexts/MenuButtonContentx.d.ts +1 -0
  113. package/dist/provider/contexts/MenuButtonContentx.d.ts.map +1 -0
  114. package/dist/provider/contexts/MenuButtonContext.d.ts +42 -0
  115. package/dist/provider/contexts/MenuButtonContext.d.ts.map +1 -0
  116. package/dist/provider/hooks/index.d.ts +1 -0
  117. package/dist/provider/hooks/index.d.ts.map +1 -1
  118. package/dist/provider/hooks/useFileUploader.d.ts +74 -0
  119. package/dist/provider/hooks/useFileUploader.d.ts.map +1 -0
  120. package/dist/provider/hooks/useSizeConfig.d.ts +2 -2
  121. package/dist/provider/index.cjs +1 -1
  122. package/dist/provider/index.d.ts +1 -0
  123. package/dist/provider/index.d.ts.map +1 -1
  124. package/dist/provider/index.js +8 -7
  125. package/dist/stores/codeStore.d.ts +65 -128
  126. package/dist/stores/codeStore.d.ts.map +1 -1
  127. package/dist/stores/index.cjs +2 -2
  128. package/dist/stores/index.d.ts +3 -3
  129. package/dist/stores/index.d.ts.map +1 -1
  130. package/dist/stores/index.js +815 -1625
  131. package/dist/stores/menuModelStore.d.ts +22 -7
  132. package/dist/stores/menuModelStore.d.ts.map +1 -1
  133. package/dist/stores/menuViewStore.d.ts +3 -3
  134. package/dist/stores/menuViewStore.d.ts.map +1 -1
  135. package/dist/stores/systemStore.d.ts +50 -17
  136. package/dist/stores/systemStore.d.ts.map +1 -1
  137. package/dist/styles/assets/images/header/icon/ico-bell.svg +3 -3
  138. package/dist/styles/assets/images/header/icon/ico-logout.svg +10 -10
  139. package/dist/styles/assets/images/header/icon/ico-setting.svg +4 -4
  140. package/dist/styles/assets/images/header/icon/ico-sidebar-arrow.svg +3 -3
  141. package/dist/styles/assets/images/menus/ico1-completed.png +0 -0
  142. package/dist/styles/assets/images/menus/ico1-design.png +0 -0
  143. package/dist/styles/assets/images/menus/ico1-dev.png +0 -0
  144. package/dist/styles/assets/images/menus/ico2-completed.png +0 -0
  145. package/dist/styles/assets/images/menus/ico2-design.png +0 -0
  146. package/dist/styles/assets/images/menus/ico2-dev.png +0 -0
  147. package/dist/styles/assets/images/menus/ico3-completed.png +0 -0
  148. package/dist/styles/assets/images/menus/ico3-design.png +0 -0
  149. package/dist/styles/assets/images/menus/ico3-dev.png +0 -0
  150. package/dist/utils/apiUtils.d.ts.map +1 -1
  151. package/dist/utils/colorFormat.d.ts.map +1 -1
  152. package/dist/utils/commonUtils.d.ts +1 -2
  153. package/dist/utils/commonUtils.d.ts.map +1 -1
  154. package/dist/utils/index.cjs +1 -1
  155. package/dist/utils/index.d.ts +9 -3
  156. package/dist/utils/index.d.ts.map +1 -1
  157. package/dist/utils/index.js +1118 -1962
  158. package/dist/utils/serviceConfig.d.ts +9 -3
  159. package/dist/utils/serviceConfig.d.ts.map +1 -1
  160. package/package.json +4 -4
  161. package/dist/chunks/CMSearchIntfGwP01-0t3umcc_.cjs +0 -1
  162. package/dist/chunks/MenuReport-C70mGz2g.cjs +0 -1
  163. package/dist/chunks/common-components-DNgQR-Ge.cjs +0 -1109
  164. package/dist/chunks/common-components-DeYL3J6X.js +0 -52604
  165. package/dist/chunks/layout-components-Bf9IsLUS.cjs +0 -38
  166. package/dist/chunks/provider-Bi5OYngn.cjs +0 -1
  167. package/dist/chunks/provider-Bx4VpaFf.js +0 -465
  168. package/dist/components/pages/board/CMAdminBoardM01.d.ts +0 -6
  169. package/dist/components/pages/board/CMAdminBoardM01.d.ts.map +0 -1
  170. package/dist/components/pages/board/CMBoardS01.d.ts +0 -8
  171. package/dist/components/pages/board/CMBoardS01.d.ts.map +0 -1
  172. package/dist/components/pages/board/CMMyBoardM01.d.ts +0 -6
  173. package/dist/components/pages/board/CMMyBoardM01.d.ts.map +0 -1
  174. package/dist/components/pages/guide/BwgComponentGuideM01.d.ts +0 -3
  175. package/dist/components/pages/guide/BwgComponentGuideM01.d.ts.map +0 -1
  176. package/dist/components/pages/guide/BwgDeveloperGuideM01.d.ts +0 -3
  177. package/dist/components/pages/guide/BwgDeveloperGuideM01.d.ts.map +0 -1
  178. package/dist/components/pages/guide/BwgReactGuideM01.d.ts +0 -3
  179. package/dist/components/pages/guide/BwgReactGuideM01.d.ts.map +0 -1
  180. package/dist/components/pages/rsrc/CMMenuPrgrSelectModal.d.ts.map +0 -1
  181. package/dist/components/pages/rsrc/CMMenuPrntSelectModal.d.ts.map +0 -1
  182. package/dist/components/pages/syst/CMSystCodeM01.d.ts +0 -4
  183. package/dist/components/pages/syst/CMSystCodeM01.d.ts.map +0 -1
@@ -0,0 +1,516 @@
1
+ import { jsx as r, jsxs as i } from "react/jsx-runtime";
2
+ import { SearchOutlined as ne, CheckCircleFilled as re, CheckCircleOutlined as le, UserOutlined as K, CloseOutlined as ie } from "@ant-design/icons";
3
+ import { message as O, Splitter as u, Flex as oe, Input as de, Button as k, Spin as se, Tree as ce, Divider as R } from "antd";
4
+ import { useState as f, useCallback as s, useEffect as ae, useMemo as W } from "react";
5
+ import { callService as L } from "../utils/index.js";
6
+ import { BwgPopup as he, ContentLayOut as fe, ContentBox as pe, BwgTitleBox as U } from "../components/common/index.js";
7
+ const ge = (d) => {
8
+ const v = [...d].sort(
9
+ (l, a) => l.deptLvl - a.deptLvl || l.orgSortOrd - a.orgSortOrd || l.deptCd.localeCompare(a.deptCd)
10
+ ), c = /* @__PURE__ */ new Map();
11
+ v.forEach(
12
+ (l) => c.set(l.deptCd, {
13
+ ...l,
14
+ children: []
15
+ })
16
+ );
17
+ const p = [];
18
+ v.forEach((l) => {
19
+ const a = c.get(l.deptCd), m = l.hrnkDeptCd;
20
+ m && c.has(m) ? c.get(m).children.push(a) : p.push(a);
21
+ });
22
+ const S = (l) => {
23
+ !l.children || l.children.length === 0 ? delete l.children : l.children.forEach(S);
24
+ };
25
+ return p.forEach(S), p;
26
+ }, ke = ({
27
+ popup: d,
28
+ onClose: v
29
+ }) => {
30
+ const [c, p] = f(""), [S, l] = f(""), [a, m] = f([]), [g, D] = f([]), [w, Y] = f([]), [$, N] = f([]), [F, B] = f(!1), [I, j] = f(!1), [x, b] = f({}), y = s(async (e) => {
31
+ if (e)
32
+ try {
33
+ const n = await L(
34
+ "SCMUTIL00106",
35
+ {
36
+ deptCds: e
37
+ },
38
+ { showLoading: !1 }
39
+ ), t = Array.isArray(n?.empList) && n.empList || [];
40
+ N(t);
41
+ } catch (n) {
42
+ console.error("직원 목록 로딩 실패:", n), O.error("직원 목록을 불러오는 중 오류가 발생했습니다.");
43
+ }
44
+ }, []), E = s(
45
+ async (e, n) => {
46
+ try {
47
+ const h = await L("SCMUTIL00106", { keyword: e, deptCds: n }, {
48
+ showLoading: !1
49
+ });
50
+ N(h?.empList || []), h?.empCnt === 0 ? j(!0) : j(!1);
51
+ } catch (t) {
52
+ console.error("검색 실패:", t), O.error("검색 중 오류가 발생했습니다."), N([]), j(!1);
53
+ }
54
+ },
55
+ []
56
+ ), M = s(async () => {
57
+ try {
58
+ B(!0);
59
+ const e = await L(
60
+ "SCMUTIL00103",
61
+ {
62
+ ...d?.popupParams
63
+ },
64
+ { showLoading: !1 }
65
+ ), n = Array.isArray(e?.deptList) && e.deptList || [];
66
+ if (n.length === 0) {
67
+ console.warn("⚠️ 조직도 데이터가 없습니다.");
68
+ return;
69
+ }
70
+ const t = ge(n);
71
+ Y(t);
72
+ const h = n.filter((o) => o.deptLvl <= 2).map((o) => o.deptCd);
73
+ if (m(h), d?.popupParams?.keyword) {
74
+ const o = d.popupParams.keyword;
75
+ await E(o, []);
76
+ return;
77
+ }
78
+ if (t.length > 0) {
79
+ const o = t[1];
80
+ D([o.deptCd]), l(o.deptNm), y([o.deptCd]);
81
+ }
82
+ } catch (e) {
83
+ console.error("❌ 조직도 데이터 로딩 실패:", e), O.error("조직도 데이터를 불러오는 중 오류가 발생했습니다.");
84
+ } finally {
85
+ B(!1);
86
+ }
87
+ }, [y]);
88
+ ae(() => {
89
+ M();
90
+ }, [M]);
91
+ const J = W(() => {
92
+ const e = (n) => n.map((t) => ({
93
+ title: t.deptNm,
94
+ key: t.deptCd,
95
+ children: t.children ? e(t.children) : void 0,
96
+ isLeaf: !t.children || t.children.length === 0
97
+ }));
98
+ return e(w);
99
+ }, [w]), q = s(
100
+ async (e) => {
101
+ const n = e.trim();
102
+ p(n), n ? await E(n, []) : g.length > 0 && y([g[0]]);
103
+ },
104
+ [E, y, g]
105
+ ), C = W(() => $, [$]), P = s((e) => {
106
+ b((n) => {
107
+ const t = { ...n };
108
+ return t[e.empNo] ? delete t[e.empNo] : t[e.empNo] = e, t;
109
+ });
110
+ }, []), G = s((e) => {
111
+ b((n) => {
112
+ const t = { ...n };
113
+ return delete t[e], t;
114
+ });
115
+ }, []), H = s(() => b({}), []), Q = s(() => {
116
+ b((e) => {
117
+ const n = { ...e };
118
+ for (const t of C) n[t.empNo] = t;
119
+ return n;
120
+ });
121
+ }, [C]), V = s(() => {
122
+ b((e) => {
123
+ const n = { ...e };
124
+ for (const t of C) delete n[t.empNo];
125
+ return n;
126
+ });
127
+ }, [C]), X = s(
128
+ (e) => {
129
+ const n = e.map(String);
130
+ if (D(n), p(""), n.length > 0) {
131
+ const t = n[0], h = (te, T) => {
132
+ for (const z of te) {
133
+ if (z.deptCd === T)
134
+ return z.deptNm;
135
+ if (z.children) {
136
+ const A = h(z.children, T);
137
+ if (A) return A;
138
+ }
139
+ }
140
+ return null;
141
+ }, o = h(w, t);
142
+ o && l(o), p(""), y([t]);
143
+ }
144
+ },
145
+ [w, y]
146
+ ), Z = s((e) => {
147
+ m(e.map(String));
148
+ }, []), _ = s(
149
+ (e, n) => {
150
+ if (e.stopPropagation(), !n.children || !n.children.length) return;
151
+ const t = a.includes(n.key);
152
+ m(
153
+ (h) => t ? h.filter((o) => o !== n.key) : [...h, n.key]
154
+ );
155
+ },
156
+ [a]
157
+ ), ee = {
158
+ confirm: () => {
159
+ const e = Object.values(x).map((t) => ({
160
+ crprCd: t.crprCd,
161
+ wkplCd: t.wkplCd,
162
+ empNo: t.empNo,
163
+ deptCd: t.deptCd,
164
+ deptNm: t.deptNm,
165
+ empNm: t.empNm,
166
+ jbpsCd: t.jbpsCd,
167
+ jbgdCd: t.jbgdCd,
168
+ empMarkOrd: t.empMarkOrd,
169
+ emplyStCd: t.emplyStCd
170
+ }));
171
+ if (e.length === 0) {
172
+ O.error("직원을 선택해주세요.");
173
+ return;
174
+ }
175
+ const n = d?.config;
176
+ n?.onSelect ? n.onSelect(e) : d?.config?.callback && d.config.callback(JSON.stringify(e)), n?.onClose && n.onClose(), d?.close?.();
177
+ },
178
+ cancel: () => {
179
+ const e = d?.config;
180
+ e?.onCancel && e.onCancel(), d?.close?.();
181
+ }
182
+ };
183
+ return /* @__PURE__ */ r(
184
+ he,
185
+ {
186
+ popup: d,
187
+ buttons: [
188
+ {
189
+ id: "confirm",
190
+ label: "확인",
191
+ onClick: () => {
192
+ ee.confirm();
193
+ }
194
+ }
195
+ ],
196
+ onClose: () => {
197
+ d?.close?.(), v?.();
198
+ },
199
+ children: /* @__PURE__ */ r(fe, { children: /* @__PURE__ */ r(pe, { border: !1, style: { paddingBottom: 20 }, children: /* @__PURE__ */ i(u, { style: { height: "100%" }, children: [
200
+ /* @__PURE__ */ r(u.Panel, { defaultSize: "50%", min: "50%", max: "70%", children: /* @__PURE__ */ i(u, { layout: "vertical", style: { height: "100%" }, children: [
201
+ /* @__PURE__ */ i(u.Panel, { defaultSize: "60%", min: "35%", max: "75%", children: [
202
+ /* @__PURE__ */ r(
203
+ "div",
204
+ {
205
+ style: {
206
+ position: "sticky",
207
+ top: 0,
208
+ zIndex: 10,
209
+ backgroundColor: "white",
210
+ borderBottom: "1px solid #e0e0e0",
211
+ padding: 8
212
+ },
213
+ children: /* @__PURE__ */ i(oe, { gap: 8, vertical: !0, style: { marginBottom: 6 }, children: [
214
+ /* @__PURE__ */ r(U, { title: "조직도" }),
215
+ /* @__PURE__ */ r(
216
+ de.Search,
217
+ {
218
+ placeholder: "이름, 소속, 직급/직위, 전화번호 검색",
219
+ prefix: /* @__PURE__ */ r(ne, {}),
220
+ value: c,
221
+ allowClear: !0,
222
+ enterButton: /* @__PURE__ */ r(k, { children: "검색" }),
223
+ onChange: (e) => {
224
+ p(e.target.value), j(!1), N([]), !e.target.value.trim() && g.length > 0 && y([g[0]]);
225
+ },
226
+ onSearch: q
227
+ }
228
+ )
229
+ ] })
230
+ }
231
+ ),
232
+ /* @__PURE__ */ r("div", { style: { padding: 16, overflowY: "hidden" }, children: /* @__PURE__ */ r(se, { spinning: F, children: /* @__PURE__ */ r(
233
+ ce,
234
+ {
235
+ className: "bwg-ogrn-tree",
236
+ treeData: J,
237
+ expandedKeys: a,
238
+ selectedKeys: g,
239
+ onSelect: X,
240
+ onExpand: Z,
241
+ onDoubleClick: _,
242
+ showLine: !0,
243
+ showIcon: !1,
244
+ style: { overflow: "hidden" },
245
+ titleRender: (e) => /* @__PURE__ */ r(
246
+ "span",
247
+ {
248
+ style: {
249
+ padding: "4px 8px",
250
+ borderRadius: 4,
251
+ fontWeight: g.includes(e.key) ? "bold" : "normal",
252
+ display: "inline-block",
253
+ width: "100%"
254
+ },
255
+ children: e.title
256
+ }
257
+ )
258
+ }
259
+ ) }) })
260
+ ] }),
261
+ /* @__PURE__ */ r(u.Panel, { children: /* @__PURE__ */ i(
262
+ "div",
263
+ {
264
+ style: {
265
+ padding: 16,
266
+ height: "100%",
267
+ display: "flex",
268
+ flexDirection: "column"
269
+ },
270
+ children: [
271
+ /* @__PURE__ */ i(
272
+ "div",
273
+ {
274
+ style: {
275
+ display: "flex",
276
+ alignItems: "center",
277
+ justifyContent: "space-between"
278
+ },
279
+ children: [
280
+ /* @__PURE__ */ r("h3", { style: { margin: 0, fontSize: 16, fontWeight: 700 }, children: c ? "검색 결과" : `${S} 사용자` }),
281
+ /* @__PURE__ */ i("div", { style: { display: "flex", gap: 8 }, children: [
282
+ /* @__PURE__ */ r(k, { size: "small", onClick: Q, children: "현재 목록 전체 선택" }),
283
+ /* @__PURE__ */ r(k, { size: "small", onClick: V, children: "현재 목록 전체 해제" })
284
+ ] })
285
+ ]
286
+ }
287
+ ),
288
+ /* @__PURE__ */ r(R, { style: { margin: "8px 0" } }),
289
+ /* @__PURE__ */ i("div", { style: { overflowY: "auto" }, children: [
290
+ C.map((e) => {
291
+ const n = !!x[e.empNo];
292
+ return /* @__PURE__ */ i(
293
+ "div",
294
+ {
295
+ style: {
296
+ display: "flex",
297
+ alignItems: "center",
298
+ padding: 10,
299
+ border: "1px solid #e0e0e0",
300
+ borderRadius: 8,
301
+ marginBottom: 8,
302
+ cursor: "pointer",
303
+ background: n ? "#efebff" : "#fff"
304
+ },
305
+ onClick: () => P(e),
306
+ children: [
307
+ /* @__PURE__ */ r(
308
+ "div",
309
+ {
310
+ style: {
311
+ marginRight: 12,
312
+ width: 22,
313
+ height: 22,
314
+ display: "flex",
315
+ alignItems: "center",
316
+ justifyContent: "center"
317
+ },
318
+ onClick: (t) => {
319
+ t.stopPropagation(), P(e);
320
+ },
321
+ children: n ? /* @__PURE__ */ r(
322
+ re,
323
+ {
324
+ style: { fontSize: 20, color: "#6449fc" }
325
+ }
326
+ ) : /* @__PURE__ */ r(
327
+ le,
328
+ {
329
+ style: { fontSize: 20, color: "#d9d9d9" }
330
+ }
331
+ )
332
+ }
333
+ ),
334
+ /* @__PURE__ */ r(
335
+ "div",
336
+ {
337
+ style: {
338
+ width: 36,
339
+ height: 36,
340
+ borderRadius: "50%",
341
+ backgroundColor: "#e0e0e0",
342
+ display: "flex",
343
+ alignItems: "center",
344
+ justifyContent: "center",
345
+ marginRight: 12,
346
+ fontSize: 16,
347
+ color: "#666",
348
+ flex: "0 0 auto"
349
+ },
350
+ children: /* @__PURE__ */ r(K, {})
351
+ }
352
+ ),
353
+ /* @__PURE__ */ i("div", { style: { flex: 1, minWidth: 0 }, children: [
354
+ /* @__PURE__ */ r(
355
+ "div",
356
+ {
357
+ style: {
358
+ fontSize: 14,
359
+ fontWeight: 600,
360
+ marginBottom: 2
361
+ },
362
+ children: e.empNm
363
+ }
364
+ ),
365
+ /* @__PURE__ */ i("div", { style: { fontSize: 12, color: "#666" }, children: [
366
+ e.deptNm,
367
+ " (",
368
+ e.deptCd,
369
+ ") | 직급: ",
370
+ e.jbpsCd,
371
+ " ",
372
+ "| 등급: ",
373
+ e.jbgdCd
374
+ ] })
375
+ ] })
376
+ ]
377
+ },
378
+ `emp-${e.crprCd}-${e.wkplCd}-${e.empNo}-${e.jbpsCd}-${e.jbgdCd}-${e.empMarkOrd}`
379
+ );
380
+ }),
381
+ C.length === 0 && /* @__PURE__ */ r(
382
+ "div",
383
+ {
384
+ style: {
385
+ textAlign: "center",
386
+ padding: 32,
387
+ color: "#999",
388
+ fontSize: 14
389
+ },
390
+ children: !c && g.length > 0 ? "해당 부서에 직원이 없습니다." : c && I ? "검색 결과가 없습니다." : c && !I ? "검색 버튼을 누르거나 엔터키를 눌러 검색해주세요." : "검색어를 입력하거나 부서를 눌러 직원을 조회해주세요."
391
+ }
392
+ )
393
+ ] })
394
+ ]
395
+ }
396
+ ) })
397
+ ] }) }),
398
+ /* @__PURE__ */ r(u.Panel, { collapsible: !0, children: /* @__PURE__ */ i(
399
+ "div",
400
+ {
401
+ style: {
402
+ padding: 16,
403
+ height: "100%",
404
+ display: "flex",
405
+ flexDirection: "column"
406
+ },
407
+ children: [
408
+ /* @__PURE__ */ i(
409
+ "div",
410
+ {
411
+ style: {
412
+ display: "flex",
413
+ alignItems: "center",
414
+ justifyContent: "space-between"
415
+ },
416
+ children: [
417
+ /* @__PURE__ */ r(
418
+ U,
419
+ {
420
+ title: `선택된 사용자 (${Object.keys(x).length})`
421
+ }
422
+ ),
423
+ /* @__PURE__ */ r(k, { type: "link", size: "small", onClick: H, children: "전체 해제" })
424
+ ]
425
+ }
426
+ ),
427
+ /* @__PURE__ */ r(R, { style: { margin: "8px 0" } }),
428
+ /* @__PURE__ */ i("div", { style: { overflowY: "auto", flex: 1 }, children: [
429
+ Object.values(x).map((e) => /* @__PURE__ */ i(
430
+ "div",
431
+ {
432
+ style: {
433
+ display: "flex",
434
+ alignItems: "center",
435
+ padding: 10,
436
+ border: "1px solid #e0e0e0",
437
+ borderRadius: 8,
438
+ marginBottom: 8,
439
+ background: "#fafafa"
440
+ },
441
+ children: [
442
+ /* @__PURE__ */ r(
443
+ "div",
444
+ {
445
+ style: {
446
+ width: 32,
447
+ height: 32,
448
+ borderRadius: "50%",
449
+ backgroundColor: "#e0e0e0",
450
+ display: "flex",
451
+ alignItems: "center",
452
+ justifyContent: "center",
453
+ marginRight: 10,
454
+ color: "#666"
455
+ },
456
+ children: /* @__PURE__ */ r(K, {})
457
+ }
458
+ ),
459
+ /* @__PURE__ */ i("div", { style: { flex: 1, minWidth: 0 }, children: [
460
+ /* @__PURE__ */ r(
461
+ "div",
462
+ {
463
+ style: {
464
+ fontSize: 13,
465
+ fontWeight: 600,
466
+ marginBottom: 2
467
+ },
468
+ children: e.empNm
469
+ }
470
+ ),
471
+ /* @__PURE__ */ i("div", { style: { fontSize: 12, color: "#666" }, children: [
472
+ e.deptNm,
473
+ " (",
474
+ e.deptCd,
475
+ ") | 직급: ",
476
+ e.jbpsCd,
477
+ " | 등급: ",
478
+ e.jbgdCd
479
+ ] })
480
+ ] }),
481
+ /* @__PURE__ */ r(
482
+ k,
483
+ {
484
+ type: "text",
485
+ shape: "circle",
486
+ icon: /* @__PURE__ */ r(ie, {}),
487
+ onClick: () => G(e.empNo)
488
+ }
489
+ )
490
+ ]
491
+ },
492
+ `selected-${e.crprCd}-${e.wkplCd}-${e.empNo}-${e.jbpsCd}-${e.jbgdCd}-${e.empMarkOrd}`
493
+ )),
494
+ Object.keys(x).length === 0 && /* @__PURE__ */ r(
495
+ "div",
496
+ {
497
+ style: {
498
+ color: "#999",
499
+ fontSize: 14,
500
+ textAlign: "center",
501
+ padding: 24
502
+ },
503
+ children: "선택된 사용자가 없습니다."
504
+ }
505
+ )
506
+ ] })
507
+ ]
508
+ }
509
+ ) })
510
+ ] }) }) })
511
+ }
512
+ );
513
+ };
514
+ export {
515
+ ke as default
516
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),o=require("react"),n=require("../components/common/index.cjs"),d=require("../components/core/index.cjs"),f=require("./provider-DrmM0H4o.cjs");function m({popup:s}){o.useState([]);const{fileGrpKey:e,permissions:i,listType:l,heights:u}=s?.popupParams||{},[c,a]=o.useState([]),{fetchFileList:p}=f.useFileUploader({fileGrpKey:e,multiple:!0,allowedExtensions:[],maxFileSize:200});return o.useEffect(()=>{const r=[];i?.draftUpload&&r.push({id:"draftUpload",label:"기안업로드",onClick:()=>{console.log("기안업로드")}}),a(r)},[s?.popupParams.permissions]),o.useEffect(()=>{e&&p()},[e]),t.jsx(n.BwgPopup,{popup:s,buttons:c,children:t.jsx(n.ContentLayOut,{children:t.jsx(n.ContentBox,{children:t.jsx(d.BwgDraggerUploader,{listType:l,permissions:i,fileGrpKey:e,heights:u,multiple:!0})})})})}exports.default=m;
@@ -0,0 +1,38 @@
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ import { useState as r, useEffect as l } from "react";
3
+ import { BwgPopup as f, ContentLayOut as d, ContentBox as c } from "../components/common/index.js";
4
+ import { BwgDraggerUploader as h } from "../components/core/index.js";
5
+ import { h as g } from "./provider-ff4RVDYo.js";
6
+ function b({ popup: e }) {
7
+ r([]);
8
+ const { fileGrpKey: t, permissions: i, listType: n, heights: p } = e?.popupParams || {}, [a, u] = r([]), { fetchFileList: m } = g({
9
+ fileGrpKey: t,
10
+ multiple: !0,
11
+ allowedExtensions: [],
12
+ maxFileSize: 200
13
+ });
14
+ return l(() => {
15
+ const s = [];
16
+ i?.draftUpload && s.push({
17
+ id: "draftUpload",
18
+ label: "기안업로드",
19
+ onClick: () => {
20
+ console.log("기안업로드");
21
+ }
22
+ }), u(s);
23
+ }, [e?.popupParams.permissions]), l(() => {
24
+ t && m();
25
+ }, [t]), /* @__PURE__ */ o(f, { popup: e, buttons: a, children: /* @__PURE__ */ o(d, { children: /* @__PURE__ */ o(c, { children: /* @__PURE__ */ o(
26
+ h,
27
+ {
28
+ listType: n,
29
+ permissions: i,
30
+ fileGrpKey: t,
31
+ heights: p,
32
+ multiple: !0
33
+ }
34
+ ) }) }) });
35
+ }
36
+ export {
37
+ b as default
38
+ };