@bwg-ui/core 1.2.31 → 1.2.34

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 (40) hide show
  1. package/dist/chunks/CMSearchIntfGwP01-CmRmK_7Z.cjs +1 -0
  2. package/dist/chunks/{CMSearchIntfGwP01-CIf-fHXy.js → CMSearchIntfGwP01-DmVxvizb.js} +108 -94
  3. package/dist/chunks/MenuReport-D3V5JPQR.cjs +1 -0
  4. package/dist/chunks/{MenuReport-GeXRkcDD.js → MenuReport-Dsh_obqp.js} +26 -26
  5. package/dist/chunks/{common-components-DNos8aEG.js → common-components-BJrGciHA.js} +14143 -13553
  6. package/dist/chunks/common-components-BpsIQZ0O.cjs +1057 -0
  7. package/dist/chunks/{layout-components-C4ehuALr.js → layout-components-DuSrPWSr.js} +495 -474
  8. package/dist/chunks/layout-components-fFjip5fv.cjs +35 -0
  9. package/dist/components/common/BwgPopup.d.ts.map +1 -1
  10. package/dist/components/common/index.cjs +1 -1
  11. package/dist/components/common/index.js +1 -1
  12. package/dist/components/core/BwgMaskedPicker.d.ts.map +1 -1
  13. package/dist/components/core/index.cjs +1 -1
  14. package/dist/components/core/index.js +712 -644
  15. package/dist/components/guide/index.cjs +1 -1
  16. package/dist/components/guide/index.js +1 -1
  17. package/dist/components/layout/custom/ConfigurableSidebar.d.ts.map +1 -1
  18. package/dist/components/layout/index.cjs +1 -1
  19. package/dist/components/layout/index.js +1 -1
  20. package/dist/components/popup/CMSearchIntfGwP01.d.ts.map +1 -1
  21. package/dist/components/popup/index.cjs +1 -1
  22. package/dist/components/popup/index.js +1 -1
  23. package/dist/index.cjs +1 -1
  24. package/dist/index.js +2 -2
  25. package/dist/stores/index.cjs +1 -1
  26. package/dist/stores/index.js +1 -1
  27. package/dist/styles/assets/images/header/icon/ico-bell.svg +3 -3
  28. package/dist/styles/assets/images/header/icon/ico-logout.svg +10 -10
  29. package/dist/styles/assets/images/header/icon/ico-setting.svg +4 -4
  30. package/dist/styles/assets/images/header/icon/ico-sidebar-arrow.svg +3 -3
  31. package/dist/styles/layout.css +58 -0
  32. package/dist/utils/index.cjs +1 -1
  33. package/dist/utils/index.js +1 -1
  34. package/package.json +1 -1
  35. package/dist/chunks/CMSearchIntfGwP01-C4Kg1iWo.cjs +0 -1
  36. package/dist/chunks/MenuReport-DQS5SAmi.cjs +0 -1
  37. package/dist/chunks/common-components-CyqUT5Vj.cjs +0 -1109
  38. package/dist/chunks/layout-components-USIA9TVn.cjs +0 -35
  39. package/dist/components/common/BwgDraggable.d.ts +0 -25
  40. package/dist/components/common/BwgDraggable.d.ts.map +0 -1
@@ -1,35 +0,0 @@
1
- "use strict";const e=require("react/jsx-runtime"),O=require("../provider/index.cjs"),F=require("react-router-dom"),W=require("./common-components-CyqUT5Vj.cjs"),o=require("antd"),i=require("react"),N=require("../stores/index.cjs"),k=require("@ant-design/icons"),M=require("../utils/index.cjs"),A=require("@dnd-kit/core"),oe=require("@dnd-kit/modifiers"),V=require("@dnd-kit/sortable");var $=typeof document<"u"?document.currentScript:null;function ae(r){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const n in r)if(n!=="default"){const a=Object.getOwnPropertyDescriptor(r,n);Object.defineProperty(t,n,a.get?a:{enumerable:!0,get:()=>r[n]})}}return t.default=r,Object.freeze(t)}const U=ae(k),ie=i.lazy(()=>Promise.resolve().then(()=>require("./MenuReport-DQS5SAmi.cjs"))),le=i.lazy(()=>Promise.resolve().then(()=>require("./common-components-CyqUT5Vj.cjs")).then(r=>r.SearchDepartmentP01$1)),ce=i.lazy(()=>Promise.resolve().then(()=>require("./common-components-CyqUT5Vj.cjs")).then(r=>r.SearchDepartmentP02$1)),de=i.lazy(()=>Promise.resolve().then(()=>require("./common-components-CyqUT5Vj.cjs")).then(r=>r.SearchOrganizationP01$1)),ue=i.lazy(()=>Promise.resolve().then(()=>require("./common-components-CyqUT5Vj.cjs")).then(r=>r.SearchOrganizationP02$1)),me=i.lazy(()=>Promise.resolve().then(()=>require("./common-components-CyqUT5Vj.cjs")).then(r=>r.CMPrgrMstrP02$1)),pe=i.lazy(()=>Promise.resolve().then(()=>require("./CMSearchIntfGwP01-C4Kg1iWo.cjs"))),Z={CORE_REPORT:{component:ie,defaultConfig:{title:"게시판/문의",width:1200,height:800}},CORE_DEPARTMENT_01:{component:le,defaultConfig:{title:"부서 검색",width:620,height:700}},CORE_DEPARTMENT_02:{component:ce,defaultConfig:{title:"부서 검색",width:620,height:700}},CORE_ORGANIZATION_01:{component:de,defaultConfig:{title:"조직 검색",width:620,height:700}},CORE_ORGANIZATION_02:{component:ue,defaultConfig:{title:"조직 검색",width:1e3,height:700}},CORE_PRGR_02:{component:me,defaultConfig:{title:"프로그램 검색",width:700,height:800}},CORE_GW_DRAFTS:{component:pe,defaultConfig:{title:"기안 목록",width:1e3,height:700}}},K="bwg-dot-line-wave-v4";function he(){if(typeof document>"u"||document.getElementById(K))return;const r=document.createElement("style");r.id=K,r.textContent=`
2
- .bwg-dotline {
3
- display: inline-flex;
4
- align-items: center;
5
- gap: var(--bwg-gap, 12px);
6
- height: calc(var(--bwg-size, 12px) + 2 * var(--bwg-amp, 12px));
7
- line-height: 0;
8
- }
9
- .bwg-dotline .dot {
10
- width: var(--bwg-size, 12px);
11
- height: var(--bwg-size, 12px);
12
- border-radius: 50%;
13
- background: currentColor;
14
- will-change: transform, opacity;
15
- filter: drop-shadow(0 1px 2px rgba(0,0,0,.12));
16
- animation: bwg-dotline-sine var(--bwg-speed, 780ms) linear infinite;
17
- }
18
-
19
- /* sin(θ) 근사: 0, 45, 90, 135, 180, 225, 270, 315, 360deg */
20
- @keyframes bwg-dotline-sine {
21
- 0% { transform: translate3d(0, 0, 0) scale(.98); opacity: .80; }
22
- 12.5%{ transform: translate3d(0, calc(-0.7071 * var(--bwg-amp, 12px)), 0) scale(1.03); opacity: .92; }
23
- 25% { transform: translate3d(0, calc(-1 * var(--bwg-amp, 12px)), 0) scale(1.06); opacity: 1; }
24
- 37.5%{ transform: translate3d(0, calc(-0.7071 * var(--bwg-amp, 12px)), 0) scale(1.03); opacity: .92; }
25
- 50% { transform: translate3d(0, 0, 0) scale(.98); opacity: .80; }
26
- 62.5%{ transform: translate3d(0, calc( 0.7071 * var(--bwg-amp, 12px)), 0) scale(.97); opacity: .78; }
27
- 75% { transform: translate3d(0, calc( 1 * var(--bwg-amp, 12px)), 0) scale(.96); opacity: .76; }
28
- 87.5%{ transform: translate3d(0, calc( 0.7071 * var(--bwg-amp, 12px)), 0) scale(.97); opacity: .78; }
29
- 100% { transform: translate3d(0, 0, 0) scale(.98); opacity: .80; }
30
- }
31
-
32
- @media (prefers-reduced-motion: reduce) {
33
- .bwg-dotline .dot { animation: none; }
34
- }
35
- `,document.head.appendChild(r)}const ge=({colors:r=["#DAD3FF","#B3A6FF","#9380FF","#816BFA"],count:t,size:n=12,gap:a=10,amp:s=16,speedMs:c=900,direction:g="ltr",phase:p=.7})=>{i.useEffect(()=>{he()},[]);const h=t??r.length,u=Array.from({length:h}),f={"--bwg-size":`${n}px`,"--bwg-gap":`${a}px`,"--bwg-amp":`${s}px`,"--bwg-speed":`${c}ms`},j=c/h*p;return e.jsx("span",{className:"bwg-dotline",role:"img","aria-label":"loading",style:f,children:u.map((y,C)=>e.jsx("span",{className:"dot",style:{backgroundColor:r[C%r.length],animationDelay:g==="ltr"?`${C*j}ms`:`${(h-1-C)*j}ms`}},C))})},fe=({spin:r=null,text:t="인증중...",dimStyle:n="dark"})=>{if(!(r??!0))return null;const c=n==="dark";return e.jsxs("div",{className:"loading-overlay",style:{position:"fixed",height:"100vh",left:0,right:0,top:0,display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",gap:8,padding:"8px 12px",background:c?"rgba(0, 0, 0, 0.6)":"rgba(255, 255, 255, 0.85)",color:c?"#fff":"#333",backdropFilter:"blur(4px)",zIndex:1e4},"aria-live":"polite","aria-busy":"true",role:"status",children:[e.jsx(o.Spin,{indicator:e.jsx(ge,{colors:["#DAD3FF","#B3A6FF","#9380FF","#816BFA"],size:12,gap:10,amp:16,speedMs:900,phase:.75,direction:"ltr"})}),e.jsx("span",{className:"bwg-spin-txt",style:{marginTop:"15px"},children:t})]})},xe=({routes:r,useCommonProvider:t=!0,useServiceProvider:n=!0})=>{let s=e.jsxs(F.Routes,{children:[e.jsx(F.Route,{path:"/",element:e.jsx(F.Navigate,{to:"/login"})}),e.jsx(F.Route,{path:"/login",element:r.login}),e.jsx(F.Route,{path:"/main",element:r.main})]});return n&&(s=e.jsx(O.ServiceCodeProvider,{children:s})),t&&(s=e.jsx(O.CommonCodeProvider,{children:s})),e.jsx(W.GlobalConfigProvider,{children:s})},{Content:be}=o.Layout,Y=({config:r={},children:t})=>{const n={wrapper:{className:"content-wrapper",...r.wrapper},body:{className:"content-body",...r.body},...r};return e.jsx(be,{className:n.wrapper.className,style:n.wrapper.style,children:e.jsx(W.BwgConfigProvider,{children:e.jsx("div",{className:n.body.className,style:n.body.style,children:t})})})},ye="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",Ce="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",ve="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:je}=o.Layout,R={light:{headerBg:"#ffffff",headerText:"#000000",sidebarBg:"#ffffff",sidebarText:"#000000",buttonPrimary:"#1890ff",buttonPrimaryHover:"#40a9ff",buttonPrimaryActive:"#096dd9",buttonDefault:"#ffffff",buttonDefaultHover:"#f5f5f5",buttonDefaultBorder:"#d9d9d9",buttonPermissionBorder:"#bdb1ff"},dark:{headerBg:"#4a4a4a",headerText:"#ffffff",sidebarBg:"#4a4a4a",sidebarText:"#ffffff",buttonPrimary:"#177ddc",buttonPrimaryHover:"#1890ff",buttonPrimaryActive:"#0958b5",buttonDefault:"#434343",buttonDefaultHover:"#303030",buttonDefaultBorder:"#434343",buttonPermissionBorder:"#bdb1ff"},blue:{headerBg:"#4a90e2",headerText:"#ffffff",sidebarBg:"#4a90e2",sidebarText:"#ffffff",buttonPrimary:"#1890ff",buttonPrimaryHover:"#40a9ff",buttonPrimaryActive:"#096dd9",buttonDefault:"#ffffff",buttonDefaultHover:"#f0f8ff",buttonDefaultBorder:"#4a90e2",buttonPermissionBorder:"#bdb1ff"},modern:{headerBg:"#f3f4ff",headerText:"#333333",sidebarBg:"#ffffff",sidebarText:"#555555",buttonPrimary:"#6449FC",buttonPrimaryHover:"#6449FC",buttonPrimaryActive:"#6449FC",buttonDefault:"#ffffff",buttonDefaultHover:"#f5f5f5",buttonDefaultBorder:"#dddddd",buttonPermissionBorder:"#bdb1ff"}},H={0:"작게",1:"보통",2:"크게"},X=({config:r={}})=>{const t={gap:14,minWidth:200,items:r.right?.items,alarm:{visible:!0,...r.right?.alarm||{}},theme:{visible:!0,...r.right?.theme||{}},logout:{visible:!0,...r.right?.logout||{}},avatar:{visible:!0,width:30,height:30,...r.right?.avatar||{}}},n={wrapper:{className:"header-wrapper",...r.wrapper},logo:{gap:10,...r.logo},right:t},a=F.useNavigate(),[s,c]=i.useState("modern"),g=i.useRef(null),p=N.useLogout(),{componentSize:h,setComponentSize:u,gridSize:f,setGridSize:j,spacingSize:y,setSpacingSize:C}=N.useUserStore(),w=(d,v)=>{try{if(!/^[a-zA-Z0-9-]+$/.test(d)||!/^[#a-zA-Z0-9()\s,.-]+$/.test(v))return;document.documentElement.style.setProperty(d,v)}catch(m){console.error("CSS variable setting failed:",m)}},L=d=>{if(!R[d])return;c(d);const v={...R[d]};w("--header-bg",v.headerBg),w("--header-text",v.headerText),w("--sidebar-bg",v.sidebarBg),w("--sidebar-text",v.sidebarText),w("--button-primary",v.buttonPrimary),w("--button-primary-hover",v.buttonPrimaryHover),w("--button-primary-active",v.buttonPrimaryActive),w("--button-default",v.buttonDefault),w("--button-default-hover",v.buttonDefaultHover),w("--button-default-border",v.buttonDefaultBorder),w("--button-permission-border",v.buttonPermissionBorder),g.current&&g.current.setAttribute("data-theme",d),document.documentElement.setAttribute("data-theme",d),M.setCookie(M.THEME_COOKIE_NAME,d,30)};i.useEffect(()=>{const d=M.getCookie(M.THEME_COOKIE_NAME);d&&R[d]?L(d):L("modern")},[]);const D=()=>({...R[s]}).headerBg,B=()=>{p(),a("/login")};M.getTodateString?M.getTodateString("HH:mm:ss"):new Date().toLocaleTimeString("ko-KR");const _=e.jsxs("div",{style:{padding:"8px 0"},children:[e.jsxs("div",{style:{marginBottom:"12px"},children:[e.jsx(o.ColorPicker,{value:D(),disabled:!0,size:"small"}),e.jsx("span",{style:{marginLeft:"8px",fontSize:"12px"},children:"현재 테마 색상"})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[e.jsx(o.Button,{type:s==="modern"?"primary":"default",size:"small",onClick:()=>L("modern"),style:{textAlign:"left",backgroundColor:s==="modern"?R.modern.headerBg:void 0,color:s==="modern"?R.modern.headerText:void 0},children:"모던"},"modern"),Object.entries(R).filter(([d])=>d!=="modern").map(([d,v])=>e.jsx(o.Button,{type:s===d?"primary":"default",size:"small",onClick:()=>L(d),style:{textAlign:"left",backgroundColor:s===d?v.headerBg:void 0,color:s===d?v.headerText:void 0},children:d},d))]}),e.jsx(o.Divider,{}),e.jsxs("div",{style:{marginTop:"8px"},children:[e.jsx("div",{style:{marginBottom:"8px",fontSize:"12px"},children:"컴포넌트 크기"}),e.jsx(o.Slider,{marks:H,value:h,min:0,max:2,step:1,onChange:d=>u(d)}),e.jsx("div",{style:{marginTop:"16px",marginBottom:"8px",fontSize:"12px"},children:"그리드 크기"}),e.jsx(o.Slider,{marks:H,value:f,min:0,max:2,step:1,onChange:d=>j(d)}),e.jsx("div",{style:{marginTop:"16px",marginBottom:"8px",fontSize:"12px"},children:"여백 조정"}),e.jsx(o.Slider,{marks:H,value:y,min:0,max:2,step:1,onChange:d=>C(d)})]})]});return e.jsxs(je,{className:n.wrapper.className,style:{...n.wrapper.style},children:[n.logo&&e.jsx("div",{className:"header-left",children:e.jsx("div",{className:"logo-container",style:{gap:n.logo?.gap},children:n.logo?.items})}),e.jsxs("div",{className:"header-right",style:{gap:n.right?.gap,minWidth:n.right?.minWidth},children:[n.right?.items?.map((d,v)=>e.jsx("div",{children:d},v)),n.right?.alarm?.visible&&e.jsx(o.Button,{type:"text",icon:e.jsx("img",{src:ye,alt:"알림"}),className:"alarm-btn",onClick:n.right?.alarm?.onClick}),n.right?.theme?.visible&&e.jsx(o.Popover,{content:_,title:"테마 설정",trigger:"click",placement:"bottomRight",onOpenChange:d=>n.right?.theme?.onOpenChange?.(d),children:e.jsx(o.Button,{type:"text",icon:e.jsx("img",{src:ve,alt:"개인설정"}),className:"theme-btn",onClick:n.right?.theme?.onClick})}),n.right?.logout?.visible&&e.jsx(o.Button,{type:"text",icon:e.jsx("img",{src:Ce,alt:"로그아웃"}),onClick:n.right?.logout?.onClick||B,className:"logout-btn"}),n.right?.avatar?.visible&&e.jsx(o.Avatar,{icon:e.jsx(k.UserOutlined,{}),className:"avatar",style:{width:n.right?.avatar?.width,height:n.right?.avatar?.height},onClick:n.right?.avatar?.onClick})]})]})},G=Object.freeze({Translate:{toString(r){if(!r)return;const{x:t,y:n}=r;return"translate3d("+(t?Math.round(t):0)+"px, "+(n?Math.round(n):0)+"px, 0)"}},Scale:{toString(r){if(!r)return;const{scaleX:t,scaleY:n}=r;return"scaleX("+t+") scaleY("+n+")"}},Transform:{toString(r){if(r)return[G.Translate.toString(r),G.Scale.toString(r)].join(" ")}},Transition:{toString(r){let{property:t,duration:n,easing:a}=r;return t+" "+n+"ms "+a}}}),we=i.memo(({className:r,...t})=>{const n=i.useRef(null),{attributes:a,listeners:s,transform:c,transition:g,isDragging:p,setNodeRef:h}=V.useSortable({id:t["data-node-key"]}),[u,f]=i.useState();i.useEffect(()=>{const y=n.current;if(y)if(p){const C=Math.round(y.getBoundingClientRect().width);f(C)}else f(void 0)},[p]);const j={...t.style,transform:c?G.Transform.toString(c):void 0,transition:g??"transform 0.16s ease",cursor:"grab",userSelect:"none",willChange:"transform",width:u??void 0,minWidth:u??void 0,maxWidth:u??void 0,flex:u!==void 0?"0 0 auto":void 0};return i.cloneElement(t.children,{ref:y=>{n.current!==y&&(n.current=y),h(y)},style:j,...a,...s})}),ke=i.memo(function({config:t,isFirst:n,isLast:a,canCloseAll:s,onFirst:c,onPrev:g,onNext:p,onLast:h,onCloseAll:u}){return e.jsxs("div",{className:t.wrapper?.className,style:t.wrapper?.style,children:[e.jsx(o.Tooltip,{title:"첫 번째 탭",className:t.tooltip?.className,style:t.tooltip?.style,children:e.jsx(o.Button,{className:t.buttons?.className,style:t.buttons?.style,size:"small",icon:e.jsx(k.StepBackwardOutlined,{}),onClick:c,disabled:n})}),e.jsx(o.Tooltip,{title:"이전 탭",className:t.tooltip?.className,style:t.tooltip?.style,children:e.jsx(o.Button,{className:t.buttons?.className,style:t.buttons?.style,size:"small",icon:e.jsx(k.LeftOutlined,{}),onClick:g,disabled:n})}),e.jsx(o.Tooltip,{title:"다음 탭",className:t.tooltip?.className,style:t.tooltip?.style,children:e.jsx(o.Button,{className:t.buttons?.className,style:t.buttons?.style,size:"small",icon:e.jsx(k.RightOutlined,{}),onClick:p,disabled:a})}),e.jsx(o.Tooltip,{title:"마지막 탭",className:t.tooltip?.className,style:t.tooltip?.style,children:e.jsx(o.Button,{className:t.buttons?.className,style:t.buttons?.style,size:"small",icon:e.jsx(k.StepForwardOutlined,{}),onClick:h,disabled:a})}),e.jsx(o.Tooltip,{title:"모든 탭 닫기",className:t.tooltip?.className,style:t.tooltip?.style,children:e.jsx(o.Button,{className:t.buttons?.className,style:t.buttons?.style,size:"small",icon:e.jsx(k.CloseOutlined,{}),onClick:u,disabled:!s})})]})}),Q=({config:r={}})=>{const t={wrapper:{className:"menu-tab-wrapper",...r?.wrapper},tabs:{className:"menu-tabs",...r?.tabs},nav:{wrapper:{className:"menu-nav-wrapper",...r?.nav?.wrapper},buttons:{className:"menu-nav-buttons",...r?.nav?.buttons},tooltip:{className:"menu-nav-tooltip",...r?.nav?.tooltip},...r?.nav},...r},n=N.useMenuViewStore(m=>m.tabs),a=N.useMenuViewStore(m=>m.activeMenuId),s=N.useMenuViewStore(m=>m.focusTab),c=N.useMenuViewStore(m=>m.closeTab),g=N.useMenuViewStore(m=>m.reorderTabs),p=A.useSensors(A.useSensor(A.PointerSensor,{activationConstraint:{distance:6}})),h=m=>{s(m)},u=(m,P)=>{P==="remove"&&typeof m=="string"&&c(m)},f=()=>{n.length>0&&s(n[0].key)},j=()=>{if(!a||n.length<=1)return;const m=n.findIndex(P=>P.key===a);m>0&&s(n[m-1].key)},y=()=>{if(!a||n.length<=1)return;const m=n.findIndex(P=>P.key===a);m<n.length-1&&s(n[m+1].key)},C=()=>{n.length>0&&s(n[n.length-1].key)},w=()=>{n.forEach(m=>{c(m.key)})},L=a?n.findIndex(m=>m.key===a):-1,D=L===0,B=L===n.length-1,_=i.useMemo(()=>n.map(m=>({key:m.key,label:m.label,closable:!0,children:null})),[n]),d=i.useCallback(({active:m,over:P})=>{if(!P||m.id===P.id)return;const T=n.findIndex(l=>l.key===m.id),E=n.findIndex(l=>l.key===P.id);if(T<0||E<0||T===E)return;const x=n.map(l=>l.key),b=V.arrayMove(x,T,E);g?.(b)},[n,g]),v=i.useCallback((m,P)=>e.jsx(A.DndContext,{sensors:p,onDragEnd:d,collisionDetection:A.closestCenter,modifiers:[oe.restrictToHorizontalAxis],children:e.jsx(V.SortableContext,{items:n.map(T=>T.key),strategy:V.horizontalListSortingStrategy,children:e.jsx(P,{...m,children:T=>i.createElement(we,{...T.props,key:T.key},T)})})}),[p,d,n]);return e.jsx("div",{className:t.wrapper.className,style:{...t.wrapper.style,display:n.length===0?"none":"block"},children:e.jsx(o.Tabs,{type:"editable-card",activeKey:a||void 0,onChange:h,onEdit:u,className:t.tabs.className,style:t.tabs.style,hideAdd:!0,items:_,tabBarExtraContent:e.jsx(ke,{config:t?.nav,isFirst:!!D,isLast:!!B,canCloseAll:n.length>0,onFirst:f,onPrev:j,onNext:y,onLast:C,onCloseAll:w}),renderTabBar:v})})},{Sider:Ne}=o.Layout,J=({config:r={}})=>{const t={collapsed:!1,width:230,menuGubunCode:{mainMenu:"MAIN",subMenu:"SUB",program:"PRGM",...r?.menuGubunCode},className:{wrapper:"side-wrapper",search:"sider-search-ipt",segmented:{wrapper:"sider-segmented",item:"sider-segment-item",...r?.className?.segmented},sider:{content:"sider-content",loading:"sider-loading",loadingText:"sider-loading-text",error:"sider-error",errorIcon:"sider-error-icon",errorText:"sider-error-text",menu:"sider-menu",menuContainer:"sider-menu-container",...r?.className?.sider},...r?.className},style:{search:{placeholder:"메뉴명, 메뉴번호 검색...",height:30,...r?.style?.search},...r?.style},...r},[n,a]=i.useState(""),[s,c]=i.useState("category"),{activeMenuId:g,sidebarCollapsed:p,openTabFromMenu:h,toggleSidebar:u}=N.useMenuViewStore(),{menuList:f,isLoading:j,error:y,findMenuById:C}=N.useMenuModelStore(),{nodes:w,treeNodes:L,loadFavoritesIfNeeded:D}=N.useFavoriteStore(),B=i.useMemo(()=>{const x=[],b=(l,I=0)=>{if(l.menuGbCd===t.menuGubunCode.program&&l.scrnPath){const S=" ".repeat(I),z=l.menuNo||"";x.push({value:l.menuId,label:e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsxs("span",{children:[S,l.menuNm]}),e.jsx("span",{style:{fontSize:"11px",color:"#999",backgroundColor:"#f0f0f0",padding:"2px 6px",borderRadius:"3px",marginLeft:"8px"},children:z})]}),menuItem:l})}l.children&&l.children.length>0&&l.children.forEach(S=>b(S,I+1))};return f.forEach(l=>b(l)),x},[f]),_=i.useMemo(()=>n.trim()?B.filter(x=>{const b=x.menuItem.menuNm.toLowerCase(),l=String(x.menuItem.menuNo||"미지정").toLowerCase(),I=n.toLowerCase();return b.includes(I)||l.includes(I)}):[],[B,n]),d=x=>{if(!x||typeof x!="string"){console.warn("Invalid menu selection value:",x);return}if(!/^[a-zA-Z0-9_-]+$/.test(x)){console.warn("Invalid menu ID format:",x);return}const b=B.find(l=>l.value===x);if(b){const{menuItem:l}=b;if(!l||!l.menuId||!l.menuNm){console.warn("Invalid menu item:",l);return}l.menuGbCd===t.menuGubunCode.program&&l.scrnPath?(console.log("✅ 검색으로 프로그램 메뉴 선택 - 탭 추가 및 setCurrentProgram 호출"),console.log("메뉴명:",l.menuNm,"경로:",l.scrnPath,"scrnId:",l.scrnId),h(l)):(l.menuGbCd===t.menuGubunCode.mainMenu||l.menuGbCd===t.menuGubunCode.subMenu)&&(console.log("❌ 검색으로 메인/서브 메뉴 선택 - 이벤트 무시"),console.log("메뉴명:",l.menuNm,"menuGbCd:",l.menuGbCd)),a("")}},v=i.useCallback(x=>{const b=C(x);b?.menuGbCd===t.menuGubunCode.program&&(console.log("메뉴명:",b.menuNm,"경로:",b.scrnPath,"scrnId:",b.scrnId),h(b))},[C,h]),m=i.useCallback(x=>x.map(b=>({key:b.menuId,label:e.jsx("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:e.jsx("span",{children:b.menuNm})}),icon:P(b.iconCd,b.menuGbCd),children:b.children&&b.children.length>0?m(b.children):void 0})),[]),P=(x,b)=>{if(x){const l=U[x];if(l)return e.jsx(l,{})}if(b)switch(b){case t.menuGubunCode.mainMenu:return e.jsx(U.HomeOutlined,{});case t.menuGubunCode.subMenu:return null;case t.menuGubunCode.program:return null;default:return null}return null},T=i.useCallback(x=>{if(f.length===0)return[];const b=I=>{if(I)return typeof I=="string"?w[I]:I},l=I=>{if(I.type==="M"){const S=I,z=C(S.menuId)||void 0,q=!!z,se=q?`${z?.menuNm??S.menuNm??S.menuId}`:`${S.menuNm??S.menuId} (삭제됨)`;return{key:S.menuId,label:se,icon:q?void 0:e.jsx(k.WarningOutlined,{style:{color:"#faad14"}})}}else{const S=I,z=(S.children??[]).map(b).filter(Boolean).map(l);return{key:S.bkmkId,label:S.bkmkNm??S.bkmkId,icon:S.prntBkmkId==="-"?e.jsx(k.StarOutlined,{}):e.jsx(k.FolderOpenOutlined,{}),children:z}}};return x.map(l)},[C,w,f]),E=i.useMemo(()=>T(L),[T,L,w]);return i.useEffect(()=>{M.getUserId()&&D(M.getUserId())},[D]),i.useEffect(()=>{s==="category"&&a("")},[s]),e.jsxs(Ne,{className:t.className.wrapper,collapsed:t.collapsed||p,trigger:null,width:t.width||230,children:[e.jsx("div",{style:{position:"absolute",top:"9px",right:"-25px",zIndex:"1000",width:"25px",height:"41px",backgroundColor:"#ffffff",border:"1px solid #dddddd",borderRadius:"0 10px 10px 0",display:"flex",alignItems:"center",justifyContent:"center",cursor:"pointer",boxShadow:"2px 2px 2px rgba(0, 0, 0, 0.05)",transition:"all 0.3s ease"},children:e.jsx(o.Button,{type:"text",icon:t.collapsed||p?e.jsx(k.MenuUnfoldOutlined,{}):e.jsx(k.MenuFoldOutlined,{}),style:{fontSize:"12px",color:"#787878",padding:0,width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"center",borderRadius:"0 10px 10px 0"},onClick:u})}),!(t.collapsed||p)&&e.jsx("div",{style:{padding:10},children:e.jsx(o.AutoComplete,{value:n,options:_,onSelect:d,onSearch:a,style:{width:"100%"},allowClear:!0,children:e.jsx(o.Input,{className:t.className.search,placeholder:t.style.search.placeholder,prefix:e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:e.jsx("path",{d:"M16.4972 16.6667L13.0355 13.1694M14.8475 8.75C14.8475 5.29822 12.0777 2.5 8.66105 2.5C5.24437 2.5 2.47461 5.29822 2.47461 8.75C2.47461 12.2018 5.24437 15 8.66105 15C12.0777 15 14.8475 12.2018 14.8475 8.75Z",stroke:"#5F5F5F",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),size:"middle",style:{height:t.style.search.height||30}})})}),!(t.collapsed||p)&&e.jsx("div",{style:{width:"100%",padding:"0px 10px",marginBottom:"10px"},children:e.jsx(o.Segmented,{className:t.className.segmented.wrapper,options:[{label:e.jsxs(e.Fragment,{children:[e.jsx("span",{className:t.className.segmented.item,style:{display:"flex",alignItems:"center"},children:e.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:[e.jsx("path",{d:"M2.46979 6.90625H13.0298C13.7298 6.90625 14.2965 7.47292 14.2965 8.17292V13.5396H1.20312V8.17292C1.20312 7.47292 1.76979 6.90625 2.46979 6.90625Z",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e.jsx("path",{d:"M2.76318 4.70626C2.76318 4.00626 3.18318 3.75293 3.69652 3.75293H11.8032C12.3165 3.75293 12.7365 4.00626 12.7365 4.70626",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e.jsx("path",{d:"M4.71631 1.45996H10.783",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})}),"카테고리"]}),value:"category"},{label:e.jsxs(e.Fragment,{children:[e.jsx("span",{className:t.className.segmented.item,style:{display:"flex",alignItems:"center"},children:e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:e.jsx("path",{d:"M7.11329 1.33356C7.32084 0.888813 7.66676 0.888813 7.88296 1.33356L9.258 4.25619C9.46556 4.70094 10.0277 5.12753 10.4947 5.20014L13.5647 5.67212C14.0317 5.74473 14.1441 6.08964 13.7982 6.43455L11.5757 8.70367C11.2384 9.04858 11.0222 9.73839 11.1 10.2285L11.6276 13.4325C11.7054 13.9227 11.4287 14.1405 11.0049 13.9045L8.26348 12.3887C7.83972 12.1527 7.15653 12.1527 6.73277 12.3887L3.99134 13.9045C3.56759 14.1405 3.29085 13.9227 3.36868 13.4325L3.89621 10.2285C3.97405 9.73839 3.76649 9.04858 3.42057 8.70367L1.19802 6.43455C0.86075 6.08964 0.964526 5.74473 1.43152 5.67212L4.50158 5.20014C4.96857 5.12753 5.5307 4.70094 5.73825 4.25619L7.11329 1.33356Z",stroke:"currentColor",strokeWidth:"1.5",strokeMiterlimit:"4"})})}),"즐겨찾기"]}),value:"favorite"}],value:s,onChange:x=>{c(x)},style:{width:"100%"},block:!0})}),e.jsxs("div",{className:t.className.sider.content,children:[j&&e.jsxs("div",{className:t.className.sider.loading,style:{padding:10,margin:"0 auto",textAlign:"center",color:"var(--text-primary)"},children:[e.jsx(o.ConfigProvider,{theme:{components:{Spin:{colorPrimary:"var(--primary-color)"}}},children:e.jsx(o.Spin,{size:"default"})}),e.jsx("div",{className:t.className.sider.loadingText,style:{marginTop:10},children:"메뉴 로딩 중..."})]}),y&&e.jsxs("div",{className:t.className.sider.error,children:[e.jsx(k.ExclamationCircleOutlined,{className:t.className.sider.errorIcon}),e.jsx("div",{className:t.className.sider.errorText,children:"메뉴 로드 실패"})]}),!j&&!y&&s==="category"&&f.length===0&&e.jsx("div",{style:{padding:"16px",textAlign:"center",color:"#666",fontSize:"12px"},children:"메뉴가 없습니다"}),!j&&!y&&s==="favorite"&&E.length===0&&e.jsx("div",{style:{padding:"16px",textAlign:"center",color:"#666",fontSize:"12px"},children:"즐겨찾기된 메뉴가 없습니다"}),!j&&!y&&s==="category"&&f.length>0&&e.jsx("div",{className:t.className.sider.menuContainer,children:e.jsx(o.Menu,{theme:"light",mode:"inline",items:m(f),className:t.className.sider.menu,selectedKeys:[g||""],onClick:x=>v(x.key)})}),!j&&!y&&s==="favorite"&&E.length>0&&e.jsx("div",{className:t.className.sider.menuContainer,children:e.jsx(o.Menu,{theme:"light",mode:"inline",items:E,className:t.className.sider.menu,selectedKeys:[g||""],onClick:x=>v(x.key)})})]})]})};class Se extends i.Component{constructor(t){super(t),this.resetError=()=>{this.setState({hasError:!1,error:void 0,errorInfo:void 0})},this.state={hasError:!1}}static getDerivedStateFromError(t){return{hasError:!0,error:t}}componentDidCatch(t,n){console.error("ErrorBound caught an error:",t,n),this.setState({error:t,errorInfo:n})}render(){return this.state.hasError?this.props.fallback?this.props.fallback:e.jsxs("div",{style:{padding:"40px 20px",textAlign:"center",backgroundColor:"#fafafa",display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center"},children:[e.jsx(o.Result,{status:"error",title:"컴포넌트 로딩 중 오류가 발생했습니다",subTitle:this.state.error?`오류 내용: ${this.state.error.message}`:"알 수 없는 오류가 발생했습니다",extra:[e.jsx(o.Button,{type:"primary",icon:e.jsx(k.ReloadOutlined,{}),onClick:this.resetError,style:{marginRight:8},children:"다시 시도"},"retry")]}),this.state.error&&e.jsxs("details",{style:{marginTop:"20px",textAlign:"left",maxWidth:"600px",backgroundColor:"#fff",padding:"16px",borderRadius:"6px",border:"1px solid #d9d9d9"},children:[e.jsx("summary",{style:{cursor:"pointer",fontWeight:"bold"},children:"오류 상세 정보"}),e.jsx("pre",{style:{marginTop:"8px",fontSize:"12px",color:"#666",whiteSpace:"pre-wrap",wordBreak:"break-word"},children:this.state.error.stack})]})]}):this.props.children}}const Ie=({isActive:r,instance:t,params:n})=>{const{activeMenuId:a,closeTab:s}=N.useMenuViewStore(),c=()=>{a&&s(a)};return t?e.jsx("div",{style:{position:"absolute",top:0,left:0,width:"100%",height:"100%",visibility:r?"visible":"hidden",opacity:r?1:0,transition:"opacity 0.2s ease-in-out",pointerEvents:r?"auto":"none"},children:e.jsx(Se,{children:e.jsx(i.Suspense,{fallback:null,children:t&&i.createElement(t,{params:n})})})}):e.jsx("div",{style:{position:"absolute",top:0,left:0,width:"100%",height:"100%",display:"flex",justifyContent:"center",alignItems:"center",visibility:r?"visible":"hidden",opacity:r?1:0,transition:"opacity 0.2s ease-in-out",pointerEvents:r?"auto":"none"},children:e.jsx("div",{style:{width:500,maxWidth:"90%",background:"#fff",borderRadius:16,boxShadow:"0 8px 30px rgba(0,0,0,0.05)",padding:24},children:e.jsx(o.Result,{icon:e.jsx(k.ExclamationCircleTwoTone,{twoToneColor:"#69b1ff"}),status:"warning",title:"등록된 메뉴 정보가 없거나 유효한 메뉴가 아닙니다.",subTitle:e.jsx(o.Typography.Text,{type:"secondary",children:"자세한 내용은 관리자에게 문의바랍니다."}),extra:e.jsx(o.Space,{children:e.jsx(o.Button,{icon:e.jsx(k.CloseOutlined,{}),onClick:c,children:"탭 닫기"})})})})})},ee=i.memo(Ie),te=()=>e.jsxs(e.Fragment,{children:[e.jsx("link",{rel:"preload",as:"image",href:"/src/styles/assets/images/backgrounds/LandingContainer_bg.png"}),e.jsx("div",{className:"LandingContainer-wrap",children:e.jsx("div",{className:"inner",children:e.jsx("div",{className:"content"})})})]}),Pe=(r,t)=>{console.log("createPopupViewLoader 호출 - popupUrl:",r);const a=(s=>{if(s.startsWith("/src/pages/views/popup/")){const p=s+".tsx";return console.log(`팝업 URL 변환: ${s} -> ${p}`),p}const g=`/src/pages/views/popup/${s.startsWith("/")?s.substring(1):s}.tsx`;return console.log(`팝업 URL 변환: ${s} -> ${g}`),g})(r);return!a||!t?.glob||!t.glob[a]?(console.warn(`팝업 뷰를 찾을 수 없습니다: ${r} (${a})`),console.warn("사용 가능한 팝업 뷰들:",Object.keys(t?.glob||{})),null):t.glob[a]},Te=({popup:r,modules:t})=>{const[n,a]=i.useState(null),[s,c]=i.useState(!1),[g,p]=i.useState(null),h=()=>{console.log("PopupArea - handleClose:",r.popupId),N.usePopupStore.getState().closePopup(r.popupId)};return i.useEffect(()=>{(async()=>{console.log("팝업 뷰 로드 시작:",r.popupUrl),c(!0),p(null);try{const f=Pe(r.popupUrl,t);if(!f){const C=`팝업 뷰를 찾을 수 없습니다: ${r.popupUrl}`;console.error(C),p(C),c(!1);return}console.log("팝업 뷰 모듈 로드 중...");const j=await f();console.log("팝업 뷰 모듈 로드 완료:",j);const y=j.default;if(console.log("팝업 뷰 컴포넌트:",y),!y)throw new Error("팝업 뷰 컴포넌트를 찾을 수 없습니다");a(()=>y),console.log("팝업 뷰 설정 완료")}catch(f){console.error("팝업 뷰 로드 실패:",f),p(f instanceof Error?f.message:"팝업 뷰 로드 실패")}finally{c(!1)}})()},[r.popupUrl]),s?e.jsxs("div",{className:"popup-loading",children:[e.jsx(o.Spin,{size:"large"}),e.jsx("p",{children:"팝업을 로드하는 중..."})]}):g?e.jsxs("div",{className:"popup-error",children:[e.jsx(o.Empty,{description:g,image:o.Empty.PRESENTED_IMAGE_SIMPLE}),e.jsx(o.Button,{icon:e.jsx(k.ReloadOutlined,{}),onClick:()=>window.location.reload(),children:"다시 시도"})]}):n?e.jsx(i.Suspense,{fallback:e.jsxs("div",{className:"popup-loading",children:[e.jsx(o.Spin,{size:"large"}),e.jsx("p",{children:"컴포넌트를 로드하는 중..."})]}),children:e.jsx(n,{popup:{...r,close:h},onClose:h})}):e.jsx("div",{className:"popup-empty",children:e.jsx(o.Empty,{description:"팝업 내용을 불러올 수 없습니다."})})},ne=({modules:r})=>{const{popups:t}=N.usePopupStore();return t.length===0?null:e.jsx(e.Fragment,{children:t.map(n=>{if(n.isLocal||n.popupCode.startsWith("CORE_"))return null;const a=n.config||{},s=a.width||n.width||800,c=a.height||n.height||600,g=a.title||n.popupTitle,p=n.buttonList?.map((h,u)=>({key:h.btnId||`btn_${u}`,text:h.btnNm,type:h.btnId==="CLOSE"?"default":"primary",disabled:h.enblYn!=="Y",danger:!1}))||[];return console.log("팝업 렌더링:",{popupId:n.popupId,popupCode:n.popupCode,title:g,width:s,height:c,buttons:p}),e.jsx(O.SearchBoxProvider,{children:e.jsx("div",{children:e.jsx(Te,{popup:n,modules:r})},n.popupId)},`sbp-${n.popupId}`)})})},Le=()=>{const{popups:r,closePopup:t}=N.usePopupStore();return e.jsx(e.Fragment,{children:r.map(n=>{if(!(n.isLocal||n.popupCode.startsWith("CORE_")))return null;const a=Z[n.popupCode];if(!a)return null;const s=a.component;return e.jsx(O.SearchBoxProvider,{children:e.jsx(i.Suspense,{fallback:null,children:e.jsx(s,{popup:n,onClose:()=>t(n.popupId)})},n.popupId)},`sbp-${n.popupId}`)})})},Me=r=>({position:"absolute",inset:0,visibility:r?"visible":"hidden",opacity:r?1:0,transition:"opacity 0.2s ease-in-out",pointerEvents:r?"auto":"none"}),Be=({once:r=!0})=>{const{lock:t}=O.useLock(),n=i.useRef(!1);return i.useEffect(()=>{r&&n.current||(n.current=!0,t())},[r,t]),null},re=({isActive:r,flagged:t,tabKey:n,onUnlock:a,children:s})=>{const c=i.useRef(null),[g,p]=i.useState(!1),h=i.useCallback(f=>{c.current=f,p(!!f)},[]),u=Me(r);return e.jsx("div",{ref:h,style:u,children:g?e.jsxs(O.ScreenProtectProvider,{idleMs:Number.POSITIVE_INFINITY,persistLocked:!1,overlayScope:"scoped",overlayPosition:"absolute",eventTarget:c.current,overlayId:`tab-overlay-${n}`,onUnlock:async()=>(a(),!0),children:[r&&t?e.jsx(Be,{once:!0}):null,s]}):s})},Ee=({config:r={},modules:t={view:{path:"/src/pages/views/content"},popup:{path:"/src/pages/views/popups"}}})=>{const n=i.useRef(new Map),{tabs:a,tabParams:s,activeMenuId:c,tabProtectFlag:g,clearProtectFlagForKey:p}=N.useMenuViewStore(),h=i.useCallback(u=>{const f=n.current.get(u.key);if(f)return f;const j=u.gubun==="M"?`${t.view.path}${u.menuItem?.scrnPath}.tsx`:`${t.view.path}${u.componentItem?.scrnPath}.tsx`;let y=t.view?.glob?.[j];if(!y&&typeof{url:typeof document>"u"?require("url").pathToFileURL(__filename).href:$&&$.tagName.toUpperCase()==="SCRIPT"&&$.src||new URL("chunks/layout-components-USIA9TVn.cjs",document.baseURI).href}<"u",y){const C=i.lazy(y);return n.current.set(u.key,C),C}return null},[t.view?.glob]);return e.jsxs(o.Layout,{className:"main-layout",children:[e.jsx(X,{config:r?.header}),e.jsxs(o.Layout,{children:[e.jsx(J,{config:r?.sidebar}),e.jsxs("div",{className:"content-container",children:[e.jsx(Q,{config:r?.menuTab}),e.jsxs(Y,{config:r?.content,children:[e.jsx("div",{className:"view-container",children:e.jsxs("div",{style:{position:"relative",width:"100%",height:"100%"},children:[a.map(u=>{const f=h(u),j=c===u.key,y=!!g?.[u.key],C=s[u.key]||{};return e.jsx(O.SearchBoxProvider,{children:e.jsx(re,{isActive:j,flagged:y,tabKey:u.key,onUnlock:()=>p(u.key),children:e.jsx(ee,{isActive:j,instance:f||void 0,params:C},u.key)},u.key)},`sbp-${u.key}`)}),(!c||a.length===0)&&e.jsx(te,{})]})}),e.jsx(Le,{}),e.jsx(ne,{modules:t?.popup})]})]})]}),(r?.quickService?.visible??!0)&&e.jsx(W.QuickServiceToggle,{})]})},Re=({config:r,children:t})=>e.jsx("div",{children:"BwgPortal02"});function Oe({config:r,ui:t,navigate:n}){const{loading:a,capsOn:s,prefills:c,onKeyDown:g,doLogin:p}=N.useLogin(r),h=u=>p(u,n);return i.useEffect(()=>{N.useSystemStore.getState().fetchSystemMap()},[]),e.jsx(e.Fragment,{children:t({onSubmit:h,loading:a,capsOn:s,onKeyDown:g,prefills:c})})}function De({onSubmit:r,loading:t,capsOn:n,onKeyDown:a,prefills:s,labels:c={id:"ID 혹은 사번",pw:"비밀번호",remember:"Remember me",login:"로그인"},header:g,footer:p}){const[h]=o.Form.useForm();return i.useEffect(()=>{s&&(s.id||s.pswr)&&h.setFieldsValue({id:s.id,pswr:s.pswr})},[s,h]),e.jsx("div",{className:"login-main",children:e.jsxs("div",{className:"login_wrap",children:[g||e.jsx("div",{className:"logo_box"}),e.jsx("div",{className:"login_title"}),e.jsx(o.Form,{form:h,onFinish:r,className:"login-form",children:e.jsxs(o.Flex,{vertical:!0,children:[e.jsx(o.Form.Item,{name:"id",rules:[{required:!0,message:"아이디를 입력해주세요."},{whitespace:!0,message:"아이디는 공백이 들어갈 수 없습니다."}],children:e.jsx(o.Input,{allowClear:!0,placeholder:c.id,onKeyDown:a})}),e.jsx(o.Form.Item,{name:"pswr",rules:[{required:!0,message:"비밀번호를 입력하세요."}],children:e.jsx(o.Input.Password,{allowClear:!0,placeholder:c.pw,onKeyDown:a})}),e.jsx(o.Form.Item,{name:"remember",valuePropName:"checked",children:e.jsx(o.Checkbox,{children:c.remember})}),e.jsx("div",{className:n?"caps-lock caps-lock-on":"caps-lock",children:n?"Caps Lock On":"Caps Lock Off"}),e.jsx(o.Form.Item,{children:e.jsx(o.Button,{type:"primary",htmlType:"submit",loading:t,block:!0,children:c.login})})]})}),p]})})}exports.AppWrapper=xe;exports.BwgCoreLogin=Oe;exports.BwgPortal01=Ee;exports.BwgPortal02=Re;exports.ConfigurableContent=Y;exports.ConfigurableHeader=X;exports.ConfigurableMenuTab=Q;exports.ConfigurableSidebar=J;exports.ContentContainer=ee;exports.DefaultLoginView=De;exports.LandingContainer=te;exports.LoadingContainer=fe;exports.PopupContainer=ne;exports.ProtectWrapper=re;exports.localPopupRegistry=Z;
@@ -1,25 +0,0 @@
1
- import { CSSProperties, FC, ReactNode } from 'react';
2
- export interface BwgDraggableButton {
3
- key: string;
4
- text: string;
5
- type?: "primary" | "default" | "dashed" | "link" | "text";
6
- danger?: boolean;
7
- disabled?: boolean;
8
- onClick?: () => void;
9
- }
10
- export interface BwgDraggableProps {
11
- title?: string;
12
- width?: number;
13
- height?: number;
14
- minWidth?: number;
15
- minHeight?: number;
16
- onClose?: () => void;
17
- children: ReactNode;
18
- footer?: ReactNode;
19
- showMask?: boolean;
20
- maskStyle?: CSSProperties;
21
- buttons?: BwgDraggableButton[];
22
- }
23
- declare const BwgDraggable: FC<BwgDraggableProps>;
24
- export default BwgDraggable;
25
- //# sourceMappingURL=BwgDraggable.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BwgDraggable.d.ts","sourceRoot":"","sources":["../../../src/components/common/BwgDraggable.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,SAAS,EAA6B,MAAM,OAAO,CAAC;AAehF,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;IAC1D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAChC;AAED,QAAA,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CA4LvC,CAAC;AAEF,eAAe,YAAY,CAAC"}