@nice2dev/ui 1.0.5 → 1.0.6
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/README.md +253 -207
- package/dist/NiceButton-B5RXLDwI.cjs +1 -0
- package/dist/NiceButton-DmTHNHet.js +450 -0
- package/dist/NiceErrorBoundary-D1hh5GGe.js +732 -0
- package/dist/NiceErrorBoundary-Dta4TGee.cjs +1 -0
- package/dist/NiceModuleLifecyclePanel-BapdidD6.js +4776 -0
- package/dist/NiceModuleLifecyclePanel-CsFsm534.cjs +1 -0
- package/dist/NicePinCodeInput-4q8yULuo.js +13359 -0
- package/dist/NicePinCodeInput-eD2q8nGa.cjs +692 -0
- package/dist/NicePinCodeInput.css +1 -0
- package/dist/NiceSavedQueryPanel-DUw8plYP.js +5666 -0
- package/dist/NiceSavedQueryPanel-xpk09zy1.cjs +596 -0
- package/dist/NiceSavedQueryPanel.css +1 -0
- package/dist/NiceStockChart-CHlOnWzN.cjs +287 -0
- package/dist/NiceStockChart-Cpmv9_Cc.js +2341 -0
- package/dist/NiceStockChart.css +1 -0
- package/dist/NiceToggle-C1UKGXmJ.js +209 -0
- package/dist/NiceToggle-lVi-ETi0.cjs +1 -0
- package/dist/NiceWindow-D1awkyFl.js +1636 -0
- package/dist/NiceWindow-yARTUJsg.cjs +1 -0
- package/dist/charts.cjs +1 -0
- package/dist/charts.d.ts +1043 -0
- package/dist/charts.mjs +23 -0
- package/dist/core-CfXsl755.js +16305 -0
- package/dist/core-DGJSUW64.cjs +96 -0
- package/dist/data.cjs +1 -0
- package/dist/data.d.ts +2003 -0
- package/dist/data.mjs +21 -0
- package/dist/editors.cjs +1 -0
- package/dist/editors.d.ts +2728 -0
- package/dist/editors.mjs +66 -0
- package/dist/feedback.cjs +1 -0
- package/dist/feedback.d.ts +339 -0
- package/dist/feedback.mjs +16 -0
- package/dist/index-C853adw1.cjs +6199 -0
- package/dist/index-CNwVELPJ.js +62857 -0
- package/dist/index-CUx_-gKK.cjs +1 -0
- package/dist/index-x8mRM4Jc.js +17 -0
- package/dist/index.cjs +1 -7866
- package/dist/index.css +1 -0
- package/dist/index.d.ts +1160 -2
- package/dist/index.mjs +972 -105889
- package/dist/navigation.cjs +1 -0
- package/dist/navigation.d.ts +1862 -0
- package/dist/navigation.mjs +519 -0
- package/dist/overlays.cjs +1 -0
- package/dist/overlays.d.ts +706 -0
- package/dist/overlays.mjs +26 -0
- package/package.json +31 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const e=require("react/jsx-runtime"),l=require("react"),D=require("./core-DGJSUW64.cjs"),Q=require("./NiceButton-B5RXLDwI.cjs"),pe=require("./NiceToggle-lVi-ETi0.cjs"),rn=({tabs:n,activeTab:s,onChange:a,variant:i="default",vertical:t,size:m="md",className:o,style:h,displayStyle:r})=>{const c=D.useComponentDisplayStyle("tab",r),u=D.useComponentDisplayClass("tab",r),[b,y]=l.useState(s||n[0]?.id),d=s??b,v=l.useCallback(M=>{y(M),a?.(M)},[a]),$=n.find(M=>M.id===d)?.content;return e.jsxs("div",{className:`nice-tabs nice-tabs--${m} nice-tabs--ds-${u} ${o||""}`,style:{...c,...h,...t?{display:"flex",gap:16}:{}},children:[e.jsx("div",{className:`nice-tabs__list ${i!=="default"?`nice-tabs__list--${i}`:""} ${t?"nice-tabs__list--vertical":""}`,role:"tablist",children:n.map(M=>e.jsxs("button",{role:"tab","aria-selected":d===M.id,className:`nice-tabs__tab ${d===M.id?"nice-tabs__tab--active":""} ${M.disabled?"nice-tabs__tab--disabled":""}`,disabled:M.disabled,onClick:()=>v(M.id),children:[M.icon,e.jsx("span",{children:M.label}),M.badge!==void 0&&e.jsx("span",{className:"nice-tabs__badge",children:M.badge})]},M.id))}),$&&e.jsx("div",{className:"nice-tabs__panel",role:"tabpanel",children:$})]})},on=({items:n,multiple:s=!1,defaultOpen:a=[],size:i="md",className:t,style:m,displayStyle:o})=>{D.useComponentDisplayClass("card",o);const[h,r]=l.useState(new Set(a)),c=l.useId(),u=l.useCallback(b=>{r(y=>{const d=new Set(y);return d.has(b)?d.delete(b):(s||d.clear(),d.add(b)),d})},[s]);return e.jsx("div",{className:`nice-accordion nice-accordion--${i} ${t||""}`,style:m,children:n.map((b,y)=>{const d=h.has(b.id),v=`${c}-trigger-${y}`,$=`${c}-panel-${y}`;return e.jsxs("div",{className:"nice-accordion__item",children:[e.jsxs("button",{id:v,className:"nice-accordion__trigger",onClick:()=>!b.disabled&&u(b.id),"aria-expanded":d,"aria-controls":$,"aria-disabled":b.disabled,disabled:b.disabled,children:[e.jsx("span",{children:b.title}),e.jsx("svg",{className:`nice-accordion__chevron ${d?"nice-accordion__chevron--open":""}`,viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true",children:e.jsx("path",{fillRule:"evenodd",d:"M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z",clipRule:"evenodd"})})]}),d&&e.jsx("div",{id:$,className:"nice-accordion__content",role:"region","aria-labelledby":v,children:b.content})]},b.id)})})},dn=({items:n,separator:s="/",size:a="md",className:i,style:t})=>e.jsx("nav",{className:`nice-breadcrumb nice-breadcrumb--${a} ${i||""}`,style:t,"aria-label":"Breadcrumb",children:n.map((m,o)=>e.jsxs(l.Fragment,{children:[o>0&&e.jsx("span",{className:"nice-breadcrumb__separator",children:s}),o===n.length-1?e.jsx("span",{className:"nice-breadcrumb__current","aria-current":"page",children:m.label}):e.jsx("span",{className:"nice-breadcrumb__item",children:e.jsx("a",{className:"nice-breadcrumb__link",href:m.href,onClick:h=>{m.onClick&&(h.preventDefault(),m.onClick())},children:m.label})})]},o))});function un(n,s,a){const i=[],t=Math.max(2,n-a),m=Math.min(s-1,n+a);i.push(1),t>2&&i.push("dots");for(let o=t;o<=m;o++)i.push(o);return m<s-1&&i.push("dots"),s>1&&i.push(s),i}const _n=({page:n,totalPages:s,onChange:a,showInfo:i,siblingCount:t=1,size:m="md",className:o,style:h})=>{const r=un(n,s,t);return e.jsxs("nav",{className:`nice-pagination nice-pagination--${m} ${o||""}`,style:h,"aria-label":"Pagination",children:[e.jsx("button",{className:"nice-pagination__btn",disabled:n<=1,onClick:()=>a(n-1),"aria-label":"Previous",children:e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M12.79 5.23a.75.75 0 01-.02 1.06L8.832 10l3.938 3.71a.75.75 0 11-1.04 1.08l-4.5-4.25a.75.75 0 010-1.08l4.5-4.25a.75.75 0 011.06.02z",clipRule:"evenodd"})})}),r.map((c,u)=>c==="dots"?e.jsx("span",{className:"nice-pagination__ellipsis",children:"…"},`dots-${u}`):e.jsx("button",{className:`nice-pagination__btn ${c===n?"nice-pagination__btn--active":""}`,onClick:()=>a(c),"aria-current":c===n?"page":void 0,children:c},c)),e.jsx("button",{className:"nice-pagination__btn",disabled:n>=s,onClick:()=>a(n+1),"aria-label":"Next",children:e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M7.21 14.77a.75.75 0 01.02-1.06L11.168 10 7.23 6.29a.75.75 0 111.04-1.08l4.5 4.25a.75.75 0 010 1.08l-4.5 4.25a.75.75 0 01-1.06-.02z",clipRule:"evenodd"})})}),i&&e.jsxs("span",{className:"nice-pagination__info",children:[n," / ",s]})]})},mn=({children:n,title:s,headerExtra:a,footer:i,hoverable:t,onClick:m,size:o="md",className:h,style:r,displayStyle:c})=>{const u=D.useComponentDisplayStyle("card",c),b=D.useComponentDisplayClass("card",c);return e.jsxs("div",{className:`nice-card nice-card--${o} nice-card--ds-${b} ${t?"nice-card--hoverable":""} ${m?"nice-card--clickable":""} ${h||""}`,style:{...u,...r},onClick:m,role:m?"button":void 0,tabIndex:m?0:void 0,children:[(s||a)&&e.jsxs("div",{className:"nice-card__header",children:[s&&e.jsx("h3",{className:"nice-card__title",children:s}),a]}),e.jsx("div",{className:"nice-card__body",children:n}),i&&e.jsx("div",{className:"nice-card__footer",children:i})]})},$e=({items:n,orientation:s="horizontal",onItemClick:a,size:i="md",className:t,style:m,accessMode:o,id:h,displayStyle:r})=>{if(D.useComponentDisplayStyle("menu",r),D.useComponentDisplayClass("menu",r),D.useNiceAccessMode(o,h)==="hidden")return null;const[u,b]=l.useState(null),[y,d]=l.useState(-1),v=l.useRef(null),$=n.filter(j=>!j.disabled),M=l.useCallback(j=>{const w=s==="horizontal",p=w?"ArrowLeft":"ArrowUp",f=w?"ArrowRight":"ArrowDown";if(j.key===p)j.preventDefault(),d(C=>C<=0?$.length-1:C-1);else if(j.key===f)j.preventDefault(),d(C=>C>=$.length-1?0:C+1);else if(j.key==="Enter"||j.key===" "){j.preventDefault();const C=$[y];C&&(C.items?.length?b(u===C.key?null:C.key):(C.onClick?.(),a?.(C)))}else j.key==="Escape"&&b(null)},[s,$,y,u,a]),I=(j,w)=>{const p=j.items&&j.items.length>0,f=u===j.key,C=$[y]?.key===j.key;return e.jsxs("li",{className:`nice-menu__item ${j.disabled?"nice-menu__item--disabled":""} ${p?"nice-menu__item--has-children":""} ${C?"nice-menu__item--focused":""}`,onMouseEnter:()=>p&&b(j.key),onMouseLeave:()=>p&&b(null),role:"none",children:[e.jsxs("button",{type:"button",className:"nice-menu__link",disabled:j.disabled,tabIndex:C?0:-1,role:"menuitem","aria-haspopup":p||void 0,"aria-expanded":p?f:void 0,onClick:()=>{j.disabled||(j.onClick?.(),a?.(j))},children:[j.icon&&e.jsx("span",{className:"nice-menu__icon",children:j.icon}),e.jsx("span",{children:j.text}),p&&e.jsx("span",{className:"nice-menu__arrow",children:"▸"})]}),p&&f&&e.jsx("ul",{className:"nice-menu__submenu",role:"menu",children:j.items.map((k,L)=>I(k))})]},j.key)};return e.jsx("nav",{className:`nice-menu nice-menu--${s} nice-menu--${i} ${t||""}`,style:m,children:e.jsx("ul",{ref:v,className:"nice-menu__list",role:"menubar",tabIndex:0,onKeyDown:M,onFocus:()=>y<0&&d(0),children:n.map((j,w)=>I(j))})})};$e.displayName="NiceMenu";const bn=({items:n,target:s,onItemClick:a,size:i="md",className:t,style:m})=>{const[o,h]=l.useState(null),r=l.useRef(null);return D.useClickOutside(r,()=>h(null)),l.useEffect(()=>{const c=s.current;if(!c)return;const u=b=>{b.preventDefault(),h({x:b.clientX,y:b.clientY})};return c.addEventListener("contextmenu",u),()=>c.removeEventListener("contextmenu",u)},[s]),o?e.jsx("div",{ref:r,className:`nice-contextmenu nice-contextmenu--${i} ${t||""}`,style:{position:"fixed",left:o.x,top:o.y,zIndex:1e4,...m},children:e.jsx("ul",{className:"nice-contextmenu__list",role:"menu",children:n.map(c=>e.jsx("li",{className:`nice-contextmenu__item ${c.disabled?"nice-contextmenu__item--disabled":""}`,role:"none",children:e.jsxs("button",{type:"button",className:"nice-contextmenu__btn",disabled:c.disabled,"aria-disabled":c.disabled,role:"menuitem",onClick:()=>{c.onClick?.(),a?.(c),h(null)},children:[c.icon&&e.jsx("span",{className:"nice-contextmenu__icon","aria-hidden":"true",children:c.icon}),e.jsx("span",{children:c.text})]})},c.key))})}):null},hn=({items:n,selectedIndex:s,onSelectedIndexChange:a,animationEnabled:i=!0,size:t="md",className:m,style:o,accessMode:h,id:r})=>{if(D.useNiceAccessMode(h,r)==="hidden")return null;const[u,b]=l.useState(0),d=n[s??u];return d?e.jsx("div",{className:`nice-multiview nice-multiview--${t} ${i?"nice-multiview--animated":""} ${m||""}`,style:o,children:e.jsx("div",{className:"nice-multiview__content",children:d.render()},d.key)}):null},pn=({items:n,selectedKey:s,onSelectedKeyChange:a,tabPosition:i="top",size:t="md",className:m,style:o,displayStyle:h})=>{D.useComponentDisplayClass("tab",h);const[r,c]=l.useState(n[0]?.key??""),u=s??r,b=$=>{a?a($):c($)},y=n.find($=>$.key===u),d=i==="left"||i==="right",v=e.jsx("div",{className:"nice-tabpanel__tabs",role:"tablist",style:{display:"flex",flexDirection:d?"column":"row"},children:n.map($=>e.jsxs("button",{type:"button",role:"tab",className:`nice-tabpanel__tab ${$.key===u?"nice-tabpanel__tab--active":""}`,disabled:$.disabled,onClick:()=>!$.disabled&&b($.key),"aria-selected":$.key===u,children:[$.icon&&e.jsx("span",{className:"nice-tabpanel__tab-icon",children:$.icon}),e.jsx("span",{children:$.title}),$.badge&&e.jsx("span",{className:"nice-tabpanel__tab-badge",children:$.badge})]},$.key))});return e.jsxs("div",{className:`nice-tabpanel nice-tabpanel--${i} ${m||""}`,style:{display:"flex",flexDirection:d?"row":"column",...o},children:[(i==="top"||i==="left")&&v,e.jsx("div",{className:"nice-tabpanel__content",role:"tabpanel",children:y?.render()}),(i==="bottom"||i==="right")&&v]})},xn=({panes:n,orientation:s="horizontal",gutterSize:a=6,onResize:i,className:t,style:m,accessMode:o,id:h})=>{if(D.useNiceAccessMode(o,h)==="hidden")return null;const c=l.useRef(null),[u,b]=l.useState(()=>n.map(()=>100/n.length)),y=l.useCallback((v,$)=>{$.preventDefault();const M=c.current;if(!M)return;const I=s==="horizontal",j=I?M.offsetWidth:M.offsetHeight,w=I?$.clientX:$.clientY,p=[...u],f=k=>{const L=((I?k.clientX:k.clientY)-w)/j*100,S=[...p],g=n[v].minSize?n[v].minSize/j*100:5,N=n[v+1].minSize?n[v+1].minSize/j*100:5;let z=p[v]+L,_=p[v+1]-L;z<g&&(z=g,_=p[v]+p[v+1]-g),_<N&&(_=N,z=p[v]+p[v+1]-N),S[v]=z,S[v+1]=_,b(S),i?.(S)},C=()=>{document.removeEventListener("pointermove",f),document.removeEventListener("pointerup",C)};document.addEventListener("pointermove",f),document.addEventListener("pointerup",C)},[u,s,n,i]),d=s==="horizontal";return e.jsx("div",{ref:c,className:`nice-splitter nice-splitter--${s} ${t||""}`,style:{display:"flex",flexDirection:d?"row":"column",height:"100%",...m},children:n.map((v,$)=>e.jsxs(l.Fragment,{children:[e.jsx("div",{className:"nice-splitter__pane",style:{[d?"width":"height"]:`calc(${u[$]}% - ${a*(n.length-1)/n.length}px)`,overflow:"auto"},children:v.render()}),$<n.length-1&&e.jsx("div",{className:`nice-splitter__gutter nice-splitter__gutter--${s}`,style:{[d?"width":"height"]:a,cursor:d?"col-resize":"row-resize",flexShrink:0},onPointerDown:M=>y($,M)})]},v.key))})},Nn=({items:n,size:s="md",className:a,style:i,accessMode:t,id:m})=>{if(D.useNiceAccessMode(t,m)==="hidden")return null;const h=n.filter(b=>!b.location||b.location==="before"),r=n.filter(b=>b.location==="center"),c=n.filter(b=>b.location==="after"),u=b=>b.widget==="separator"?e.jsx("div",{className:"nice-toolbar__separator"},b.key):b.widget==="spacer"?e.jsx("div",{className:"nice-toolbar__spacer",style:{flex:1}},b.key):b.render?e.jsx("div",{className:"nice-toolbar__custom",children:b.render()},b.key):e.jsxs("button",{type:"button",className:`nice-toolbar__btn nice-btn nice-btn--ghost nice-btn--${s}`,disabled:b.disabled,onClick:b.onClick,children:[b.icon&&e.jsx("span",{className:"nice-toolbar__icon",children:b.icon}),b.text&&e.jsx("span",{children:b.text})]},b.key);return e.jsxs("div",{className:`nice-toolbar ${a||""}`,style:{display:"flex",alignItems:"center",gap:4,...i},children:[e.jsx("div",{className:"nice-toolbar__section nice-toolbar__section--before",style:{display:"flex",alignItems:"center",gap:4},children:h.map(u)}),r.length>0&&e.jsx("div",{className:"nice-toolbar__section nice-toolbar__section--center",style:{display:"flex",alignItems:"center",gap:4,flex:1,justifyContent:"center"},children:r.map(u)}),e.jsx("div",{className:"nice-toolbar__section nice-toolbar__section--after",style:{display:"flex",alignItems:"center",gap:4,marginLeft:r.length===0?"auto":void 0},children:c.map(u)})]})},Me=l.forwardRef(({panels:n,columns:s=12,rowHeight:a=80,gap:i=8,draggable:t=!0,resizable:m=!0,onLayoutChange:o,className:h,style:r,id:c},u)=>{const b=D.useControlId(c),[y,d]=l.useState(null),v=l.useRef(null),$=l.useCallback((f,C)=>{t&&(d(C),f.dataTransfer.effectAllowed="move")},[t]),M=l.useCallback((f,C)=>{if(f.preventDefault(),!y||y===C)return;const k=n.find(g=>g.key===y),L=n.find(g=>g.key===C);if(!k||!L)return;const S=n.map(g=>g.key===y?{...g,col:L.col,row:L.row}:g.key===C?{...g,col:k.col,row:k.row}:g);o?.(S),d(null)},[y,n,o]),I=l.useCallback(f=>{f.preventDefault()},[]),j=l.useRef(null);l.useEffect(()=>{if(!m)return;const f=k=>{if(!j.current||!v.current)return;const{key:L,startX:S,startY:g,cs:N,rs:z}=j.current,_=k.clientX-S,R=k.clientY-g,K=v.current.clientWidth/s,H=Math.max(1,N+Math.round(_/K)),F=Math.max(1,z+Math.round(R/a)),U=n.map(Y=>Y.key===L?{...Y,colSpan:H,rowSpan:F}:Y);o?.(U)},C=()=>{j.current=null};return document.addEventListener("mousemove",f),document.addEventListener("mouseup",C),()=>{document.removeEventListener("mousemove",f),document.removeEventListener("mouseup",C)}},[m,n,s,a,o]);const w=l.useCallback((f,C,k,L)=>{f.stopPropagation(),j.current={key:C,startX:f.clientX,startY:f.clientY,cs:k,rs:L}},[]),p=Math.max(...n.map(f=>f.row+(f.rowSpan??1)),1);return e.jsx("div",{ref:u,id:b,className:`nice-dashboard ${h||""}`,style:r,children:e.jsx("div",{ref:v,className:"nice-dashboard__grid",style:{display:"grid",gridTemplateColumns:`repeat(${s}, 1fr)`,gridTemplateRows:`repeat(${p}, ${a}px)`,gap:i},children:n.map(f=>e.jsxs("div",{className:`nice-dashboard__panel${y===f.key?" nice-dashboard__panel--dragging":""}`,style:{gridColumn:`${f.col+1} / span ${f.colSpan??1}`,gridRow:`${f.row+1} / span ${f.rowSpan??1}`},draggable:t,onDragStart:C=>$(C,f.key),onDragOver:I,onDrop:C=>M(C,f.key),children:[e.jsx("div",{className:"nice-dashboard__panel-content",children:f.render()}),m&&e.jsx("div",{className:"nice-dashboard__resize-handle",onMouseDown:C=>w(C,f.key,f.colSpan??1,f.rowSpan??1)})]},f.key))})})});Me.displayName="NiceDashboardLayout";const ze=l.forwardRef(({header:n,sidebar:s,sidebarWidth:a=260,sidebarCollapsed:i,onToggleSidebar:t,children:m,footer:o,className:h,style:r,id:c},u)=>{const b=D.useControlId(c),[y,d]=l.useState(!1),v=i??y,$=l.useCallback(()=>{const M=!v;d(M),t?.(M)},[v,t]);return e.jsxs("div",{ref:u,id:b,className:`nice-app-layout${v?" nice-app-layout--collapsed":""} ${h||""}`,style:r,children:[n&&e.jsx("header",{className:"nice-app-layout__header",children:n}),e.jsxs("div",{className:"nice-app-layout__body",children:[s&&e.jsx("aside",{className:"nice-app-layout__sidebar",style:{width:v?0:a,overflow:"hidden",transition:"width 0.2s"},children:!v&&s}),s&&e.jsx("button",{type:"button",className:"nice-app-layout__sidebar-toggle",onClick:$,"aria-label":v?"Open sidebar":"Close sidebar",children:v?"☰":"✕"}),e.jsx("main",{className:"nice-app-layout__content",children:m})]}),o&&e.jsx("footer",{className:"nice-app-layout__footer",children:o})]})});ze.displayName="NiceAppLayout";const De=l.forwardRef(({items:n,activeKey:s,onChange:a,size:i="md",showLabels:t=!0,className:m,style:o,id:h},r)=>{const c=D.useControlId(h);return e.jsx("nav",{ref:r,id:c,className:`nice-bottom-nav nice-bottom-nav--${i} ${m||""}`,style:o,role:"navigation",children:n.map(u=>e.jsxs("button",{type:"button",className:`nice-bottom-nav__item${s===u.key?" nice-bottom-nav__item--active":""}${u.disabled?" nice-bottom-nav__item--disabled":""}`,onClick:()=>!u.disabled&&a?.(u.key),disabled:u.disabled,"aria-current":s===u.key?"page":void 0,children:[u.icon&&e.jsx("span",{className:"nice-bottom-nav__icon",children:u.icon}),t&&e.jsx("span",{className:"nice-bottom-nav__label",children:u.label})]},u.key))})});De.displayName="NiceBottomNavigation";const Te=l.forwardRef(({items:n,size:s="md",className:a,style:i,id:t},m)=>{const o=D.useControlId(t),[h,r]=l.useState(null),c=l.useRef(null);l.useEffect(()=>{if(!h)return;const b=y=>{c.current&&!c.current.contains(y.target)&&r(null)};return document.addEventListener("mousedown",b),()=>document.removeEventListener("mousedown",b)},[h]);const u=n.find(b=>b.key===h);return e.jsxs("div",{ref:m,id:o,className:`nice-mega-menu nice-mega-menu--${s} ${a||""}`,style:i,children:[e.jsx("div",{ref:c,className:"nice-mega-menu__bar",role:"menubar",children:n.map(b=>e.jsx("button",{type:"button",className:`nice-mega-menu__trigger${h===b.key?" nice-mega-menu__trigger--active":""}`,onMouseEnter:()=>r(b.key),onClick:()=>r(h===b.key?null:b.key),"aria-haspopup":"true","aria-expanded":h===b.key,children:b.label},b.key))}),u&&e.jsx("div",{className:"nice-mega-menu__dropdown",onMouseLeave:()=>r(null),children:u.renderPanel?u.renderPanel():e.jsx("div",{className:"nice-mega-menu__columns",children:u.columns.map((b,y)=>e.jsxs("div",{className:"nice-mega-menu__column",children:[b.header&&e.jsx("div",{className:"nice-mega-menu__column-header",children:b.header}),e.jsx("ul",{className:"nice-mega-menu__list",role:"menu",children:b.items.map(d=>e.jsx("li",{className:`nice-mega-menu__item${d.disabled?" nice-mega-menu__item--disabled":""}`,role:"menuitem",children:d.href?e.jsxs("a",{href:d.href,className:"nice-mega-menu__link",children:[d.icon&&e.jsx("span",{className:"nice-mega-menu__icon",children:d.icon}),d.label]}):e.jsxs("button",{type:"button",className:"nice-mega-menu__link",disabled:d.disabled,onClick:()=>{d.onClick?.(),r(null)},children:[d.icon&&e.jsx("span",{className:"nice-mega-menu__icon",children:d.icon}),d.label]})},d.key))})]},y))})})]})});Te.displayName="NiceMegaMenu";const Ie=l.forwardRef(({items:n,position:s="bottom",size:a="md",magnify:i=!0,magnifyScale:t=1.5,activeKey:m,onItemClick:o,className:h,style:r,id:c,...u},b)=>{const y=D.useControlId(c),{t:d}=D.useNiceTranslation(),[v,$]=l.useState(null),M=l.useCallback(j=>{if(!i||v===null)return 1;const w=Math.abs(j-v);return w===0?t:w===1?1+(t-1)*.5:w===2?1+(t-1)*.2:1},[i,v,t]),I=s==="left"||s==="right";return e.jsx("div",{ref:b,id:y,className:`nice-dock nice-dock--${s} nice-dock--${a} ${h??""}`,style:r,role:"toolbar","aria-label":d("dock.label","Dock"),...u,children:e.jsx("div",{className:"nice-dock__bar",style:{flexDirection:I?"column":"row"},children:n.map((j,w)=>{const p=M(w);return e.jsxs("button",{type:"button",className:`nice-dock__item ${m===j.key?"nice-dock__item--active":""} ${j.disabled?"nice-dock__item--disabled":""}`,style:{transform:`scale(${p})`,transition:"transform 0.15s ease-out"},disabled:j.disabled,onClick:()=>o?.(j.key),onMouseEnter:()=>$(w),onMouseLeave:()=>$(null),"aria-label":j.label,title:j.label,children:[e.jsx("span",{className:"nice-dock__icon",children:j.icon}),j.badge!==void 0&&e.jsx("span",{className:"nice-dock__badge",children:j.badge})]},j.key)})})})});Ie.displayName="NiceDock";const Ee=({items:n,label:s,icon:a,position:i,onItemClick:t})=>{const{t:m}=D.useNiceTranslation(),[o,h]=l.useState(!1),[r,c]=l.useState(null),u=l.useRef(null);l.useEffect(()=>{if(!o)return;const d=v=>{u.current&&!u.current.contains(v.target)&&(h(!1),c(null))};return document.addEventListener("mousedown",d),()=>document.removeEventListener("mousedown",d)},[o]),l.useEffect(()=>{if(!o)return;const d=v=>{v.key==="Escape"&&(h(!1),c(null))};return document.addEventListener("keydown",d),()=>document.removeEventListener("keydown",d)},[o]);const b=i==="bottom"?"bottom-start":i==="top"?"top-start":i==="left"?"left-start":"right-start",y=l.useCallback(d=>{if(d.children&&d.children.length>0){c(r===d.key?null:d.key);return}d.onClick?.(),t?.(d.key),h(!1),c(null)},[t,r]);return e.jsxs("div",{className:"nice-desktop__start",ref:u,children:[e.jsxs("button",{type:"button",className:`nice-desktop__start-btn ${o?"nice-desktop__start-btn--active":""}`,onClick:()=>h(!o),"aria-expanded":o,"aria-haspopup":"menu","aria-label":m("desktop.start","Start"),children:[a&&e.jsx("span",{className:"nice-desktop__start-icon",children:a}),s&&e.jsx("span",{className:"nice-desktop__start-label",children:s}),!a&&!s&&e.jsx("span",{className:"nice-desktop__start-label",children:m("desktop.start","Start")})]}),o&&e.jsx("div",{className:`nice-desktop__start-menu nice-desktop__start-menu--${b}`,role:"menu",children:n.map(d=>e.jsxs(l.Fragment,{children:[d.divider&&e.jsx("div",{className:"nice-desktop__start-divider"}),e.jsxs("div",{className:"nice-desktop__start-item-wrap",children:[e.jsxs("button",{type:"button",className:`nice-desktop__start-item ${r===d.key?"nice-desktop__start-item--open":""}`,disabled:d.disabled,onClick:()=>y(d),role:"menuitem",children:[d.icon&&e.jsx("span",{className:"nice-desktop__start-item-icon",children:d.icon}),e.jsx("span",{className:"nice-desktop__start-item-label",children:d.label}),d.children&&d.children.length>0&&e.jsx("span",{className:"nice-desktop__start-item-arrow",children:"▸"})]}),d.children&&r===d.key&&e.jsx("div",{className:"nice-desktop__start-submenu",role:"menu",children:d.children.map(v=>e.jsxs("button",{type:"button",className:"nice-desktop__start-item",disabled:v.disabled,onClick:()=>y(v),role:"menuitem",children:[v.icon&&e.jsx("span",{className:"nice-desktop__start-item-icon",children:v.icon}),e.jsx("span",{className:"nice-desktop__start-item-label",children:v.label})]},v.key))})]})]},d.key))})]})},ge=({items:n,position:s,size:a,startMenu:i,systemTray:t,onItemClick:m})=>{const h=s==="left"||s==="right"?{width:a,height:"100%"}:{height:a,width:"100%"};return e.jsxs("div",{className:`nice-desktop__taskbar nice-desktop__taskbar--${s}`,style:h,role:"toolbar","aria-label":"Taskbar",children:[i,e.jsx("div",{className:"nice-desktop__taskbar-items",children:n.map(r=>e.jsxs("button",{type:"button",className:`nice-desktop__taskbar-btn ${r.active?"nice-desktop__taskbar-btn--active":""} ${r.minimized?"nice-desktop__taskbar-btn--minimized":""}`,onClick:()=>m?.(r.key),title:r.label,children:[r.icon&&e.jsx("span",{className:"nice-desktop__taskbar-btn-icon",children:r.icon}),e.jsx("span",{className:"nice-desktop__taskbar-btn-label",children:r.label}),r.badge!==void 0&&e.jsx("span",{className:"nice-desktop__taskbar-btn-badge",children:r.badge})]},r.key))}),t]})},Ae=({items:n,showClock:s=!0,onItemClick:a})=>{const[i,t]=l.useState(()=>new Date);return l.useEffect(()=>{if(!s)return;const m=setInterval(()=>t(new Date),3e4);return()=>clearInterval(m)},[s]),e.jsxs("div",{className:"nice-desktop__tray",children:[n.map(m=>e.jsx("button",{type:"button",className:"nice-desktop__tray-item",title:m.tooltip,onClick:()=>{m.onClick?.(),a?.(m.key)},children:m.icon},m.key)),s&&e.jsx("span",{className:"nice-desktop__tray-clock",children:i.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})},Le=({icons:n,gridColumns:s,iconSize:a,onIconClick:i,onIconDoubleClick:t})=>{const[m,o]=l.useState(null),h=l.useCallback(c=>{o(c),i?.(c)},[i]),r=l.useCallback(c=>{t?.(c)},[t]);return e.jsx("div",{className:`nice-desktop__grid nice-desktop__grid--${a}`,style:{gridTemplateColumns:`repeat(${s}, 1fr)`},children:n.map(c=>e.jsxs("div",{className:`nice-desktop__icon ${m===c.key?"nice-desktop__icon--selected":""} ${c.disabled?"nice-desktop__icon--disabled":""}`,style:c.gridCol!=null||c.gridRow!=null?{gridColumn:c.gridCol,gridRow:c.gridRow}:void 0,onClick:()=>!c.disabled&&h(c.key),onDoubleClick:()=>!c.disabled&&r(c.key),role:"button",tabIndex:c.disabled?-1:0,"aria-label":c.label,onKeyDown:u=>{c.disabled||(u.key==="Enter"&&r(c.key),u.key===" "&&(u.preventDefault(),h(c.key)))},children:[e.jsx("div",{className:"nice-desktop__icon-img",children:c.icon}),e.jsx("span",{className:"nice-desktop__icon-label",children:c.label})]},c.key))})},Re=({items:n,x:s,y:a,onItemClick:i,onClose:t})=>{const m=l.useRef(null);return l.useEffect(()=>{const o=h=>{m.current&&!m.current.contains(h.target)&&t()};return document.addEventListener("mousedown",o),()=>document.removeEventListener("mousedown",o)},[t]),l.useEffect(()=>{const o=h=>{h.key==="Escape"&&t()};return document.addEventListener("keydown",o),()=>document.removeEventListener("keydown",o)},[t]),e.jsx("div",{ref:m,className:"nice-desktop__context-menu",style:{position:"fixed",left:s,top:a},role:"menu",children:n.map(o=>e.jsxs(l.Fragment,{children:[o.divider&&e.jsx("div",{className:"nice-desktop__context-divider"}),e.jsxs("button",{type:"button",className:"nice-desktop__context-item",disabled:o.disabled,onClick:()=>{o.onClick?.(),i?.(o.key),t()},role:"menuitem",children:[o.icon&&e.jsx("span",{className:"nice-desktop__context-icon",children:o.icon}),e.jsx("span",{children:o.label})]})]},o.key))})},Oe=l.forwardRef(({icons:n=[],taskbarPosition:s="bottom",taskbarSize:a=40,startMenuItems:i=[],startMenuLabel:t,startMenuIcon:m,taskbarItems:o=[],systemTrayItems:h=[],showClock:r=!0,wallpaper:c,gridColumns:u=8,iconSize:b="md",onIconClick:y,onIconDoubleClick:d,onTaskbarItemClick:v,onStartMenuItemClick:$,onSystemTrayItemClick:M,contextMenuItems:I,onContextMenuItemClick:j,children:w,className:p,style:f,id:C,accessMode:k,...L},S)=>{const g=D.useControlId(C);if(D.useNiceAccessMode(k,C)==="hidden")return null;const[z,_]=l.useState(null),R=l.useCallback(U=>{!I||I.length===0||(U.preventDefault(),_({x:U.clientX,y:U.clientY}))},[I]),K=i.length>0?e.jsx(Ee,{items:i,label:t,icon:m,position:s,onItemClick:$}):null,H=e.jsx(Ae,{items:h,showClock:r,onItemClick:M}),F={...f,...c?{background:c}:{}};return e.jsxs("div",{ref:S,id:g,className:`nice-desktop nice-desktop--taskbar-${s} ${p??""}`,style:F,...L,children:[(s==="top"||s==="left")&&e.jsx(ge,{items:o,position:s,size:a,startMenu:K,systemTray:H,onItemClick:v}),e.jsxs("div",{className:"nice-desktop__area",onContextMenu:R,children:[n.length>0&&e.jsx(Le,{icons:n,gridColumns:u,iconSize:b,onIconClick:y,onIconDoubleClick:d}),w,z&&I&&e.jsx(Re,{items:I,x:z.x,y:z.y,onItemClick:j,onClose:()=>_(null)})]}),(s==="bottom"||s==="right")&&e.jsx(ge,{items:o,position:s,size:a,startMenu:K,systemTray:H,onItemClick:v})]})});Oe.displayName="NiceDesktop";const vn=({commands:n,onSelect:s,onClose:a})=>{const[i,t]=l.useState(""),m=l.useRef(null),{t:o}=D.useNiceTranslation();l.useEffect(()=>{m.current?.focus()},[]),l.useEffect(()=>{const r=c=>{c.key==="Escape"&&a()};return document.addEventListener("keydown",r),()=>document.removeEventListener("keydown",r)},[a]);const h=i?n.filter(r=>r.label.toLowerCase().includes(i.toLowerCase())):n;return e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"nice-console__palette-overlay",onClick:a}),e.jsxs("div",{className:"nice-console__palette",role:"dialog","aria-label":o("console.commandPalette","Command Palette"),children:[e.jsx("input",{ref:m,className:"nice-console__palette-input",placeholder:o("console.searchCommands","Search commands..."),value:i,onChange:r=>t(r.target.value),onKeyDown:r=>{r.key==="Enter"&&h.length>0&&(s(h[0].key),a())}}),e.jsxs("div",{className:"nice-console__palette-list",children:[h.map(r=>e.jsxs("button",{type:"button",className:"nice-console__palette-item",disabled:r.disabled,onClick:()=>{s(r.key),a()},children:[r.icon&&e.jsx("span",{className:"nice-console__palette-icon",children:r.icon}),e.jsx("span",{className:"nice-console__palette-label",children:r.label}),r.description&&e.jsx("span",{className:"nice-console__palette-desc",children:r.description}),r.shortcut&&e.jsx("span",{className:"nice-console__palette-shortcut",children:r.shortcut})]},r.key)),h.length===0&&e.jsx("div",{className:"nice-console__palette-empty",children:o("console.noCommands","No matching commands")})]})]})]})},Ye=l.forwardRef(({tabs:n=[],activeTabKey:s,onTabChange:a,onTabClose:i,commandPalette:t=[],onCommand:m,statusItems:o=[],toolbar:h,sidePanel:r,sidePanelWidth:c=220,sidePanelCollapsed:u,onToggleSidePanel:b,bottomPanel:y,bottomPanelHeight:d=200,bottomPanelCollapsed:v,onToggleBottomPanel:$,children:M,size:I="md",theme:j="dark",className:w,style:p,id:f,accessMode:C,...k},L)=>{const S=D.useControlId(f),g=D.useNiceAccessMode(C,f),{t:N}=D.useNiceTranslation();if(g==="hidden")return null;const[z,_]=l.useState(n[0]?.key??""),[R,K]=l.useState(!1),[H,F]=l.useState(!1),[U,Y]=l.useState(!1),G=s??z,W=u??R,A=v??H,X=l.useCallback(O=>{a?a(O):_(O)},[a]),Z=l.useCallback(()=>{const O=!W;b?b(O):K(O)},[W,b]),le=l.useCallback(()=>{const O=!A;$?$(O):F(O)},[A,$]);l.useEffect(()=>{if(t.length===0)return;const O=J=>{J.ctrlKey&&J.shiftKey&&J.key==="P"&&(J.preventDefault(),Y(B=>!B))};return document.addEventListener("keydown",O),()=>document.removeEventListener("keydown",O)},[t.length]);const oe=n.find(O=>O.key===G),re=o.filter(O=>!O.position||O.position==="left"),ae=o.filter(O=>O.position==="right");return e.jsxs("div",{ref:L,id:S,className:`nice-console nice-console--${I} nice-console--${j} ${w??""}`,style:p,...k,children:[h&&e.jsx("div",{className:"nice-console__toolbar",children:h}),n.length>0&&e.jsx("div",{className:"nice-console__tabs",role:"tablist",children:n.map(O=>e.jsxs("div",{className:`nice-console__tab ${O.key===G?"nice-console__tab--active":""}`,role:"tab","aria-selected":O.key===G,children:[e.jsxs("button",{type:"button",className:"nice-console__tab-btn",onClick:()=>X(O.key),children:[O.icon&&e.jsx("span",{className:"nice-console__tab-icon",children:O.icon}),e.jsx("span",{children:O.label})]}),(O.closable??!0)&&i&&e.jsx("button",{type:"button",className:"nice-console__tab-close",onClick:()=>i(O.key),"aria-label":N("console.closeTab","Close tab"),children:"✕"})]},O.key))}),e.jsxs("div",{className:"nice-console__main",children:[r&&!W&&e.jsxs("aside",{className:"nice-console__side",style:{width:c,flexShrink:0},children:[e.jsx("div",{className:"nice-console__side-header",children:e.jsx("button",{type:"button",className:"nice-console__side-toggle",onClick:Z,"aria-label":N("console.closeSidePanel","Close side panel"),children:"✕"})}),e.jsx("div",{className:"nice-console__side-content",children:r})]}),e.jsxs("div",{className:"nice-console__center",children:[e.jsx("div",{className:"nice-console__content",role:"tabpanel",children:oe?oe.render():M}),y&&!A&&e.jsxs("div",{className:"nice-console__bottom",style:{height:d,flexShrink:0},children:[e.jsx("div",{className:"nice-console__bottom-header",children:e.jsx("button",{type:"button",className:"nice-console__bottom-toggle",onClick:le,"aria-label":N("console.closeBottomPanel","Close bottom panel"),children:"✕"})}),e.jsx("div",{className:"nice-console__bottom-content",children:y})]})]})]}),o.length>0&&e.jsxs("div",{className:"nice-console__statusbar",children:[e.jsxs("div",{className:"nice-console__statusbar-left",children:[r&&W&&e.jsx("button",{type:"button",className:"nice-console__statusbar-btn",onClick:Z,title:N("console.openSidePanel","Open side panel"),children:"☰"}),y&&A&&e.jsx("button",{type:"button",className:"nice-console__statusbar-btn",onClick:le,title:N("console.openBottomPanel","Open bottom panel"),children:"▁"}),re.map(O=>e.jsx("span",{className:"nice-console__status-item",onClick:O.onClick,role:O.onClick?"button":void 0,tabIndex:O.onClick?0:void 0,children:O.content},O.key))]}),e.jsx("div",{className:"nice-console__statusbar-right",children:ae.map(O=>e.jsx("span",{className:"nice-console__status-item",onClick:O.onClick,role:O.onClick?"button":void 0,tabIndex:O.onClick?0:void 0,children:O.content},O.key))})]}),U&&t.length>0&&e.jsx(vn,{commands:t,onSelect:O=>m?.(O),onClose:()=>Y(!1)})]})});Ye.displayName="NiceConsole";const Fe=l.forwardRef(({steps:n,activeStep:s,onStepChange:a,onComplete:i,onCancel:t,allowStepClick:m=!1,variant:o="horizontal",nextLabel:h,prevLabel:r,finishLabel:c,cancelLabel:u,showProgress:b=!0,className:y,style:d,size:v="md",accessMode:$,id:M},I)=>{if(D.useNiceAccessMode($,M)==="hidden")return null;const{t:w}=D.useNiceTranslation(),p=D.useControlId(M),[f,C]=l.useState(0),[k,L]=l.useState({}),[S,g]=l.useState(new Set([0])),N=s??f,z=n[N],_=N===0,R=N===n.length-1,K=l.useCallback(A=>{const X=Math.max(0,Math.min(n.length-1,A));C(X),g(Z=>new Set(Z).add(X)),a?.(X)},[n.length,a]),H=l.useCallback(()=>{if(!z?.validate)return!0;const A=z.validate();return A===!0||A===void 0?(L(X=>{const Z={...X};return delete Z[z.id],Z}),!0):(L(X=>({...X,[z.id]:A})),!1)},[z]),F=l.useCallback(()=>{H()&&(R?i?.():K(N+1))},[N,R,H,K,i]),U=l.useCallback(()=>{_||K(N-1)},[N,_,K]),Y=l.useCallback(A=>{const X=n.findIndex(Z=>Z.id===A);X>=0&&K(X)},[n,K]),G=l.useMemo(()=>({stepIndex:N,totalSteps:n.length,goNext:F,goPrev:U,goTo:Y,isFirst:_,isLast:R}),[N,n.length,F,U,Y,_,R]),W=(N+1)/n.length*100;return e.jsxs("div",{ref:I,id:p,className:`nice-wizard nice-wizard--${o} nice-size-${v}${y?` ${y}`:""}`,style:d,children:[e.jsx("div",{className:"nice-wizard__steps",role:"tablist",children:n.map((A,X)=>{const Z=X<N?"completed":X===N?"active":"pending",le=!!k[A.id];return e.jsxs("button",{role:"tab","aria-selected":X===N,className:`nice-wizard__step nice-wizard__step--${Z}${le?" nice-wizard__step--error":""}`,onClick:()=>m&&X<=N&&K(X),disabled:!m||X>N,type:"button",children:[e.jsx("span",{className:"nice-wizard__step-number",children:Z==="completed"?"✓":X+1}),e.jsx("span",{className:"nice-wizard__step-title",children:A.title}),A.optional&&e.jsxs("span",{className:"nice-wizard__step-optional",children:["(",w("optional","optional"),")"]})]},A.id)})}),b&&e.jsx("div",{className:"nice-wizard__progress",children:e.jsx("div",{className:"nice-wizard__progress-bar",style:{width:`${W}%`}})}),e.jsx("div",{className:"nice-wizard__content",role:"tabpanel",children:z&&e.jsxs(e.Fragment,{children:[typeof z.content=="function"?z.content(G):z.content,k[z.id]&&e.jsx("div",{className:"nice-wizard__error nice-error-text",children:k[z.id]})]})}),e.jsxs("div",{className:"nice-wizard__actions",children:[t&&e.jsx("button",{type:"button",className:"nice-btn nice-btn--text",onClick:t,children:u??w("cancel","Cancel")}),e.jsxs("div",{className:"nice-wizard__actions-right",children:[!_&&e.jsx("button",{type:"button",className:"nice-btn nice-btn--outlined",onClick:U,children:r??w("previous","← Previous")}),e.jsx("button",{type:"button",className:"nice-btn nice-btn--primary",onClick:F,children:R?c??w("finish","Finish ✓"):h??w("next","Next →")})]})]})]})});Fe.displayName="NiceWizard";const We=l.createContext(null);function jn(){const n=l.useContext(We);if(!n)throw new Error("useSetupWizard must be used within NiceSetupWizard");return n}const Be=l.forwardRef(({steps:n,initialValues:s={},activeStep:a,layout:i="horizontal",size:t="md",defaultQuickMode:m=!1,allowQuickModeToggle:o=!0,showStepNumbers:h=!0,showProgress:r=!0,showEstimatedTime:c=!1,allowStepClick:u=!0,showReviewStep:b=!1,persistKey:y,animation:d="slide",branding:v,header:$,footer:M,onStepChange:I,onValuesChange:j,onComplete:w,onCancel:p,labels:f={},accessMode:C,id:k,className:L,style:S},g)=>{const N=D.useNiceAccessMode(C,k);if(N==="hidden")return null;const{t:z}=D.useNiceTranslation(),_=D.useControlId(k),[R,K]=l.useState(m),H=l.useMemo(()=>R?n.filter(x=>!x.quickModeSkip):n,[n,R]),F=l.useMemo(()=>{if(!b)return H;const x={id:"__review__",title:f.review??z("wizard.review","Review"),icon:"📋",content:V=>e.jsxs("div",{className:"nice-setup-wizard__review",children:[e.jsx("h3",{children:z("wizard.reviewTitle","Review Your Setup")}),H.filter(P=>P.summary).map(P=>e.jsxs("div",{className:"nice-setup-wizard__review-section",children:[e.jsx("h4",{children:P.title}),P.summary?.(V.values)]},P.id))]})};return[...H,x]},[H,b,f.review,z]),[U,Y]=l.useState(()=>{if(y)try{const x=localStorage.getItem(y);if(x)return{...s,...JSON.parse(x)}}catch{}return s}),[G,W]=l.useState(()=>{if(a)return a;if(y)try{const x=localStorage.getItem(`${y}_step`);if(x&&F.some(V=>V.id===x))return x}catch{}return F[0]?.id??""}),[A,X]=l.useState(()=>new Set([G])),[Z,le]=l.useState({}),[oe,re]=l.useState(!1),[ae,O]=l.useState("next"),J=F.findIndex(x=>x.id===G),B=F[J],T=J===0,E=J===F.length-1,ee=(J+1)/F.length*100;l.useEffect(()=>{y&&(localStorage.setItem(y,JSON.stringify(U)),localStorage.setItem(`${y}_step`,G))},[U,G,y]);const ne=l.useCallback((x,V)=>{Y(P=>{const se={...P,[x]:V};return j?.(se),se})},[j]),_e=l.useCallback(x=>{Y(V=>{const P={...V,...x};return j?.(P),P})},[j]),de=l.useCallback((x,V)=>{le(P=>({...P,[x]:V}))},[]),he=l.useCallback(x=>{le(V=>{const P={...V};return delete P[x],P})},[]),te=l.useCallback(x=>{const V=F.findIndex(P=>P.id===x);V>=0&&(O(V>J?"next":"prev"),W(x),X(P=>new Set(P).add(x)),I?.(x,V))},[F,J,I]),xe=l.useCallback(async()=>{if(B){if(B.validate){re(!0);try{const x=await B.validate(U);if(x){de(B.id,x),re(!1);return}he(B.id)}catch(x){de(B.id,String(x)),re(!1);return}re(!1)}if(B.fields){for(const x of B.fields){if(x.required&&!U[x.id]){de(B.id,`${x.label} ${z("wizard.isRequired","is required")}`);return}if(x.validation?.custom){const V=x.validation.custom(U[x.id]);if(V){de(B.id,V);return}}}he(B.id)}if(E)await w?.(U),y&&(localStorage.removeItem(y),localStorage.removeItem(`${y}_step`));else{let x;B.nextStep?x=typeof B.nextStep=="function"?B.nextStep(U):B.nextStep:x=F[J+1]?.id??"",x&&te(x)}}},[B,U,E,J,F,w,y,z,de,he,te]),Ne=l.useCallback(()=>{if(T)return;const x=B?.prevStep??F[J-1]?.id;x&&(O("prev"),te(x))},[T,B,J,F,te]),ve=l.useCallback(()=>{if(B?.optional&&!E){const x=F[J+1]?.id;x&&te(x)}},[B,E,J,F,te]),ke=l.useCallback(()=>{w?.(U)},[w,U]),je=l.useCallback(()=>{p?.()},[p]),fe=l.useCallback(()=>{K(x=>!x)},[]),me=l.useMemo(()=>({values:U,setValue:ne,setValues:_e,currentStep:B,currentIndex:J,totalSteps:F.length,visitedSteps:A,errors:Z,setError:de,clearError:he,goNext:xe,goPrev:Ne,goTo:te,skip:ve,complete:ke,cancel:je,isFirst:T,isLast:E,isQuickMode:R,toggleQuickMode:fe,progress:ee,t:z}),[U,ne,_e,B,J,F.length,A,Z,de,he,xe,Ne,te,ve,ke,je,T,E,R,fe,ee,z]),Ce=l.useMemo(()=>{if(!c)return null;const V=F.map(P=>P.estimatedTime).filter(Boolean).map(P=>{const se=P.match(/(\d+)\s*(min|sec|s|m)/i);if(!se)return 0;const ie=parseInt(se[1],10);return se[2].toLowerCase().startsWith("m")?ie:ie/60}).reduce((P,se)=>P+se,0);return V>0?`~${Math.ceil(V)} min`:null},[F,c]);if(!B)return null;const cn=(x,V)=>{const P=x.id===G,se=A.has(x.id)&&!P&&V<J,ie=!P&&!se,ce=!!Z[x.id],q=u&&(se||V<=J);return e.jsxs("button",{type:"button",role:"tab","aria-selected":P,"aria-current":P?"step":void 0,className:["nice-setup-wizard__step-indicator",P&&"nice-setup-wizard__step-indicator--active",se&&"nice-setup-wizard__step-indicator--completed",ie&&"nice-setup-wizard__step-indicator--pending",ce&&"nice-setup-wizard__step-indicator--error"].filter(Boolean).join(" "),onClick:()=>q&&te(x.id),disabled:!q,children:[e.jsx("span",{className:"nice-setup-wizard__step-marker",children:se?"✓":ce?"!":h?V+1:x.icon||"○"}),e.jsxs("span",{className:"nice-setup-wizard__step-info",children:[e.jsx("span",{className:"nice-setup-wizard__step-title",children:x.title}),x.subtitle&&e.jsx("span",{className:"nice-setup-wizard__step-subtitle",children:x.subtitle}),x.optional&&e.jsxs("span",{className:"nice-setup-wizard__step-optional",children:["(",f.optional??z("wizard.optional","optional"),")"]})]}),x.badge&&e.jsx("span",{className:"nice-setup-wizard__step-badge",children:x.badge})]},x.id)},ln=x=>{if(x.showWhen&&!x.showWhen(U))return null;const V=U[x.id]??x.defaultValue??"",P=q=>ne(x.id,q);if(x.render)return e.jsx("div",{className:`nice-setup-wizard__field${x.fullWidth?" nice-setup-wizard__field--full":""}`,children:x.render({value:V,onChange:P,field:x})},x.id);const se=`${_}-${x.id}`,ie={id:se,disabled:x.disabled||N==="disabled"||N==="readOnly",placeholder:x.placeholder,required:x.required};let ce;switch(x.type){case"textarea":ce=e.jsx("textarea",{...ie,className:"nice-setup-wizard__input nice-setup-wizard__textarea",value:String(V),onChange:q=>P(q.target.value),rows:4});break;case"select":ce=e.jsxs("select",{...ie,className:"nice-setup-wizard__input nice-setup-wizard__select",value:String(V),onChange:q=>P(q.target.value),children:[e.jsx("option",{value:"",children:x.placeholder||z("wizard.select","Select...")}),x.options?.map(q=>e.jsx("option",{value:q.value,children:q.label},q.value))]});break;case"radio":ce=e.jsx("div",{className:"nice-setup-wizard__radio-group",children:x.options?.map(q=>e.jsxs("label",{className:"nice-setup-wizard__radio-label",children:[e.jsx("input",{type:"radio",name:se,value:q.value,checked:V===q.value,onChange:()=>P(q.value),disabled:ie.disabled}),q.icon&&e.jsx("span",{className:"nice-setup-wizard__radio-icon",children:q.icon}),e.jsx("span",{children:q.label})]},q.value))});break;case"checkbox":ce=e.jsxs("label",{className:"nice-setup-wizard__checkbox-label",children:[e.jsx("input",{type:"checkbox",checked:!!V,onChange:q=>P(q.target.checked),disabled:ie.disabled}),e.jsx("span",{children:x.label})]});break;case"switch":ce=e.jsxs("label",{className:"nice-setup-wizard__switch-label",children:[e.jsx("span",{className:"nice-setup-wizard__switch-text",children:x.label}),e.jsxs("span",{className:`nice-setup-wizard__switch${V?" nice-setup-wizard__switch--on":""}`,children:[e.jsx("input",{type:"checkbox",checked:!!V,onChange:q=>P(q.target.checked),disabled:ie.disabled}),e.jsx("span",{className:"nice-setup-wizard__switch-track"}),e.jsx("span",{className:"nice-setup-wizard__switch-thumb"})]})]});break;case"slider":ce=e.jsxs("div",{className:"nice-setup-wizard__slider-wrapper",children:[e.jsx("input",{type:"range",...ie,className:"nice-setup-wizard__slider",value:Number(V)||x.validation?.min||0,min:x.validation?.min,max:x.validation?.max,onChange:q=>P(Number(q.target.value))}),e.jsx("span",{className:"nice-setup-wizard__slider-value",children:String(V??"")})]});break;default:ce=e.jsx("input",{type:x.type==="custom"?"text":x.type,...ie,className:"nice-setup-wizard__input",value:String(V),onChange:q=>P(q.target.value),minLength:x.validation?.minLength,maxLength:x.validation?.maxLength,min:x.validation?.min,max:x.validation?.max,pattern:x.validation?.pattern?.source})}return e.jsxs("div",{className:`nice-setup-wizard__field${x.fullWidth?" nice-setup-wizard__field--full":""}`,children:[x.type!=="checkbox"&&x.type!=="switch"&&e.jsxs("label",{htmlFor:se,className:"nice-setup-wizard__label",children:[x.label,x.required&&e.jsx("span",{className:"nice-setup-wizard__required",children:"*"})]}),ce,x.description&&e.jsx("span",{className:"nice-setup-wizard__field-desc",children:x.description})]},x.id)},tn=()=>B.fields?e.jsx("div",{className:"nice-setup-wizard__fields",children:B.fields.map(ln)}):B.content?typeof B.content=="function"?B.content(me):B.content:null;return e.jsx(We.Provider,{value:me,children:e.jsxs("div",{ref:g,id:_,className:["nice-setup-wizard",`nice-setup-wizard--${i}`,`nice-size-${t}`,d!=="none"&&`nice-setup-wizard--anim-${d}`,L].filter(Boolean).join(" "),style:S,children:[(v||$||o)&&e.jsxs("header",{className:"nice-setup-wizard__header",children:[v&&e.jsx("div",{className:"nice-setup-wizard__branding",children:v}),$,o&&e.jsxs("label",{className:"nice-setup-wizard__quick-toggle",children:[e.jsx("input",{type:"checkbox",checked:R,onChange:fe}),e.jsx("span",{children:f.quickMode??z("wizard.quickMode","Quick Setup")})]}),Ce&&e.jsx("span",{className:"nice-setup-wizard__time",children:Ce})]}),i!=="minimal"&&e.jsx("nav",{className:"nice-setup-wizard__nav",role:"tablist",children:F.map(cn)}),r&&e.jsx("div",{className:"nice-setup-wizard__progress",children:e.jsx("div",{className:"nice-setup-wizard__progress-bar",style:{width:`${ee}%`},role:"progressbar","aria-valuenow":ee,"aria-valuemin":0,"aria-valuemax":100})}),e.jsxs("div",{className:["nice-setup-wizard__content",ae==="next"&&"nice-setup-wizard__content--slide-next",ae==="prev"&&"nice-setup-wizard__content--slide-prev"].filter(Boolean).join(" "),role:"tabpanel",children:[B.description&&e.jsx("p",{className:"nice-setup-wizard__step-description",children:B.description}),tn(),Z[B.id]&&e.jsx("div",{className:"nice-setup-wizard__error",role:"alert",children:Z[B.id]})]},G),e.jsxs("footer",{className:"nice-setup-wizard__footer",children:[e.jsxs("div",{className:"nice-setup-wizard__actions-left",children:[p&&e.jsx("button",{type:"button",className:"nice-btn nice-btn--text",onClick:je,children:f.cancel??z("wizard.cancel","Cancel")}),B.optional&&!E&&e.jsx("button",{type:"button",className:"nice-btn nice-btn--text",onClick:ve,children:f.skip??z("wizard.skip","Skip")}),B.actions?.filter(x=>x.position==="left").map(x=>e.jsxs("button",{type:"button",className:`nice-btn nice-btn--${x.variant||"outlined"}`,onClick:()=>x.onClick(me),disabled:x.disabled?.(me),children:[x.icon," ",x.label]},x.id))]}),e.jsxs("div",{className:"nice-setup-wizard__actions-right",children:[B.actions?.filter(x=>x.position!=="left").map(x=>e.jsxs("button",{type:"button",className:`nice-btn nice-btn--${x.variant||"outlined"}`,onClick:()=>x.onClick(me),disabled:x.disabled?.(me),children:[x.icon," ",x.label]},x.id)),!T&&e.jsx("button",{type:"button",className:"nice-btn nice-btn--outlined",onClick:Ne,children:f.prev??z("wizard.prev","← Back")}),e.jsx("button",{type:"button",className:"nice-btn nice-btn--primary",onClick:xe,disabled:oe,children:oe?e.jsx("span",{className:"nice-setup-wizard__spinner"}):E?f.finish??z("wizard.finish","Finish ✓"):f.next??z("wizard.next","Continue →")})]})]}),M&&e.jsx("div",{className:"nice-setup-wizard__custom-footer",children:M}),i==="minimal"&&e.jsx("div",{className:"nice-setup-wizard__minimal-indicator",children:f.stepOf?f.stepOf.replace("{current}",String(J+1)).replace("{total}",String(F.length)):`${J+1} / ${F.length}`})]})})});Be.displayName="NiceSetupWizard";const Pe=l.forwardRef(({label:n,helperText:s,disabled:a,size:i="md",id:t,className:m,style:o,accessMode:h,logo:r,brandName:c,breadcrumbs:u,centerContent:b,rightContent:y,leftContent:d,sticky:v=!0,variant:$="light",height:M="md",onBrandClick:I,displayStyle:j},w)=>{const p=D.useNiceAccessMode(h,t);if(p==="hidden")return null;p==="disabled"&&(a=!0);const{t:f}=D.useNiceTranslation(),C=D.useControlId(t),k=D.useComponentDisplayStyle("menu",j),L=D.useComponentDisplayClass("menu",j);return e.jsxs("nav",{ref:w,id:C,className:`nice-navbar nice-navbar--${$} nice-navbar--h-${M}${v?" nice-navbar--sticky":""} nice-navbar--ds-${L}${m?` ${m}`:""}${a?" nice-disabled":""}`,style:{...k,...o},role:"navigation","aria-label":n??f("mainNavigation","Main navigation"),children:[e.jsxs("div",{className:"nice-navbar__left",children:[d,(r||c)&&e.jsxs("div",{className:"nice-navbar__brand",onClick:I,role:I?"button":void 0,tabIndex:I?0:void 0,children:[r&&e.jsx("span",{className:"nice-navbar__logo",children:r}),c&&e.jsx("span",{className:"nice-navbar__brand-name",children:c})]}),u&&u.length>0&&e.jsx("ol",{className:"nice-navbar__breadcrumbs","aria-label":f("breadcrumbs","Breadcrumbs"),children:u.map((S,g)=>e.jsxs("li",{className:"nice-navbar__breadcrumb",children:[g>0&&e.jsx("span",{className:"nice-navbar__breadcrumb-sep",children:"/"}),S.href||S.onClick?e.jsx("a",{href:S.href??"#",onClick:N=>{S.onClick&&(N.preventDefault(),S.onClick())},children:S.label}):e.jsx("span",{"aria-current":g===u.length-1?"page":void 0,children:S.label})]},g))})]}),b&&e.jsx("div",{className:"nice-navbar__center",children:b}),y&&e.jsx("div",{className:"nice-navbar__right",children:y})]})});Pe.displayName="NiceNavbar";const Ue=l.forwardRef(({label:n,helperText:s,disabled:a,readOnly:i,size:t="md",id:m,className:o,style:h,accessMode:r,tenants:c,currentTenantId:u,onSwitch:b,onManage:y,onCreate:d,variant:v="dropdown",searchable:$=!1},M)=>{const I=D.useNiceAccessMode(r,m);if(I==="hidden")return null;I==="disabled"&&(a=!0),I==="readOnly"&&(i=!0);const{t:j}=D.useNiceTranslation(),w=D.useControlId(m),[p,f]=l.useState(!1),[C,k]=l.useState(""),L=l.useMemo(()=>c.find(N=>N.id===u),[c,u]),S=l.useMemo(()=>{if(!C)return c;const N=C.toLowerCase();return c.filter(z=>z.name.toLowerCase().includes(N))},[c,C]),g=l.useCallback(N=>{b?.(N),f(!1),k("")},[b]);return v==="inline"?e.jsxs("div",{ref:M,id:w,className:`nice-tenant-switcher nice-tenant-switcher--inline nice-size-${t}${o?` ${o}`:""}${a?" nice-disabled":""}`,style:h,children:[n&&e.jsx("span",{className:"nice-tenant-switcher__label",children:n}),e.jsx("div",{className:"nice-tenant-switcher__list",children:c.map(N=>e.jsxs("button",{type:"button",className:`nice-tenant-switcher__option${N.id===u?" nice-tenant-switcher__option--active":""}`,onClick:()=>g(N.id),disabled:a||i,children:[N.logoUrl&&e.jsx("img",{src:N.logoUrl,alt:"",className:"nice-tenant-switcher__option-logo"}),e.jsx("span",{children:N.name})]},N.id))})]}):e.jsxs("div",{ref:M,id:w,className:`nice-tenant-switcher nice-size-${t}${o?` ${o}`:""}${a?" nice-disabled":""}`,style:h,children:[e.jsxs("button",{type:"button",className:"nice-tenant-switcher__trigger",onClick:()=>!a&&!i&&f(!p),onBlur:()=>setTimeout(()=>f(!1),200),disabled:a,"aria-haspopup":"listbox","aria-expanded":p,children:[L?.logoUrl&&e.jsx("img",{src:L.logoUrl,alt:"",className:"nice-tenant-switcher__trigger-logo"}),e.jsx("span",{className:"nice-tenant-switcher__trigger-name",children:L?.name??j("selectTenant","Select organization")}),e.jsx("span",{className:"nice-tenant-switcher__trigger-arrow",children:p?"▲":"▼"})]}),p&&e.jsxs("div",{className:"nice-tenant-switcher__dropdown",role:"listbox",children:[$&&e.jsx("input",{type:"text",className:"nice-input nice-tenant-switcher__search",value:C,onChange:N=>k(N.target.value),placeholder:j("searchOrganizations","Search…"),autoFocus:!0}),e.jsxs("div",{className:"nice-tenant-switcher__options",children:[S.map(N=>e.jsxs("div",{className:`nice-tenant-switcher__option${N.id===u?" nice-tenant-switcher__option--active":""}`,role:"option","aria-selected":N.id===u,onClick:()=>g(N.id),children:[N.logoUrl&&e.jsx("img",{src:N.logoUrl,alt:"",className:"nice-tenant-switcher__option-logo"}),e.jsxs("div",{className:"nice-tenant-switcher__option-info",children:[e.jsx("span",{className:"nice-tenant-switcher__option-name",children:N.name}),N.subtitle&&e.jsx("span",{className:"nice-tenant-switcher__option-subtitle",children:N.subtitle})]}),N.id===u&&e.jsx("span",{className:"nice-tenant-switcher__check",children:"✓"})]},N.id)),S.length===0&&e.jsx("div",{className:"nice-tenant-switcher__empty",children:j("noResults","No results")})]}),(y||d)&&e.jsxs("div",{className:"nice-tenant-switcher__footer",children:[y&&e.jsx("button",{type:"button",onClick:y,children:j("manageTenants","Manage organizations")}),d&&e.jsx("button",{type:"button",onClick:d,children:j("createTenant","Create organization")})]})]})]})});Ue.displayName="NiceTenantSwitcher";const fn={online:"var(--nice-color-success, #5cb85c)",away:"var(--nice-color-warning, #f0ad4e)",busy:"var(--nice-color-error, #d9534f)",offline:"var(--nice-color-muted, #999)"},Ve=l.forwardRef(({label:n,disabled:s,size:a="md",id:i,className:t,style:m,accessMode:o,userName:h,userEmail:r,userRole:c,avatarUrl:u,items:b=[],open:y,onOpenChange:d,onProfile:v,onLogout:$,avatarSize:M=36,status:I},j)=>{const w=D.useNiceAccessMode(o,i);if(w==="hidden")return null;w==="disabled"&&(s=!0);const{t:p}=D.useNiceTranslation(),f=D.useControlId(i),[C,k]=l.useState(!1),L=y??C,S=l.useCallback(()=>{const _=!L;k(_),d?.(_)},[L,d]),g=h.split(" ").map(_=>_.charAt(0)).join("").toUpperCase().slice(0,2),N=[];v&&N.push({id:"__profile",label:p("profile","Profile"),onClick:v}),$&&N.push({id:"__divider",label:"",isDivider:!0},{id:"__logout",label:p("logout","Logout"),onClick:$,danger:!0});const z=b.length>0?b:N;return e.jsxs("div",{ref:j,id:f,className:`nice-user-menu nice-size-${a}${t?` ${t}`:""}${s?" nice-disabled":""}`,style:m,children:[e.jsx("button",{type:"button",className:"nice-user-menu__trigger",onClick:S,onBlur:()=>setTimeout(()=>{k(!1),d?.(!1)},200),disabled:s,"aria-haspopup":"menu","aria-expanded":L,"aria-label":n??h,children:e.jsxs("span",{className:"nice-user-menu__avatar",style:{width:M,height:M},children:[u?e.jsx("img",{src:u,alt:h}):e.jsx("span",{className:"nice-user-menu__initials",children:g}),I&&e.jsx("span",{className:"nice-user-menu__status",style:{backgroundColor:fn[I]},title:I})]})}),L&&e.jsxs("div",{className:"nice-user-menu__dropdown",role:"menu",children:[e.jsxs("div",{className:"nice-user-menu__info",children:[e.jsx("span",{className:"nice-user-menu__name",children:h}),r&&e.jsx("span",{className:"nice-user-menu__email",children:r}),c&&e.jsx("span",{className:"nice-user-menu__role",children:c})]}),z.length>0&&e.jsx("div",{className:"nice-user-menu__items",children:z.map(_=>_.isDivider?e.jsx("hr",{className:"nice-user-menu__divider"},_.id):e.jsxs("button",{type:"button",role:"menuitem",className:`nice-user-menu__item${_.danger?" nice-user-menu__item--danger":""}`,onClick:()=>{_.onClick?.(),k(!1),d?.(!1)},disabled:_.disabled||s,children:[_.icon&&e.jsx("span",{className:"nice-user-menu__item-icon",children:_.icon}),e.jsx("span",{children:_.label})]},_.id))})]})]})});Ve.displayName="NiceUserMenu";function gn(n,s){if(!s)return n;const a=s.toLowerCase();return n.map(i=>{const t=i.entities.filter(o=>o.label.toLowerCase().includes(a)||o.name.toLowerCase().includes(a));return i.label.toLowerCase().includes(a)||i.name.toLowerCase().includes(a)?i:t.length>0?{...i,entities:t}:null}).filter(Boolean)}const yn=({value:n,onChange:s,placeholder:a})=>e.jsxs("div",{className:"nice-dynamic-sidebar__search",children:[e.jsx("span",{className:"nice-dynamic-sidebar__search-icon","aria-hidden":!0,children:"🔍"}),e.jsx("input",{type:"text",className:"nice-dynamic-sidebar__search-input",value:n,onChange:i=>s(i.target.value),placeholder:a,"aria-label":a}),n&&e.jsx("button",{className:"nice-dynamic-sidebar__search-clear",onClick:()=>s(""),"aria-label":"Clear",type:"button",children:"×"})]}),kn=({module:n,activeRoute:s,collapsed:a,expandedModules:i,onToggleModule:t,onNavigate:m})=>{const o=i.has(n.id);return a?e.jsx("div",{className:"nice-dynamic-sidebar__module nice-dynamic-sidebar__module--collapsed",title:n.label,children:e.jsx("button",{className:`nice-dynamic-sidebar__module-icon ${n.isAvailable?"":"nice-dynamic-sidebar__module-icon--disabled"}`,onClick:()=>n.isAvailable&&n.entities.length>0&&m(n.entities[0].route,n.entities[0]),disabled:!n.isAvailable,type:"button",children:e.jsx("span",{children:n.icon||n.label[0]})})}):e.jsxs("div",{className:`nice-dynamic-sidebar__module ${n.isAvailable?"":"nice-dynamic-sidebar__module--disabled"}`,children:[e.jsxs("button",{className:`nice-dynamic-sidebar__module-header ${o?"nice-dynamic-sidebar__module-header--expanded":""}`,onClick:()=>n.isAvailable&&t(n.id),disabled:!n.isAvailable,type:"button","aria-expanded":o,children:[n.icon&&e.jsx("span",{className:"nice-dynamic-sidebar__module-icon",children:n.icon}),e.jsx("span",{className:"nice-dynamic-sidebar__module-label",children:n.label}),e.jsx("span",{className:`nice-dynamic-sidebar__module-chevron ${o?"nice-dynamic-sidebar__module-chevron--open":""}`,children:"▸"})]}),o&&e.jsx("ul",{className:"nice-dynamic-sidebar__entities",role:"list",children:n.entities.map(h=>e.jsx("li",{className:`nice-dynamic-sidebar__entity ${s===h.route?"nice-dynamic-sidebar__entity--active":""}`,children:e.jsxs("button",{className:"nice-dynamic-sidebar__entity-btn",onClick:()=>m(h.route,h),type:"button",children:[h.icon&&e.jsx("span",{className:"nice-dynamic-sidebar__entity-icon",children:h.icon}),e.jsx("span",{children:h.label})]})},h.id))})]})},Cn=({favorites:n,activeRoute:s,onNavigate:a,label:i})=>n.length===0?null:e.jsxs("div",{className:"nice-dynamic-sidebar__favorites",children:[e.jsx("div",{className:"nice-dynamic-sidebar__section-title",children:i}),e.jsx("ul",{role:"list",children:n.map(t=>e.jsx("li",{className:`nice-dynamic-sidebar__favorite ${s===t.route?"nice-dynamic-sidebar__favorite--active":""}`,children:e.jsxs("button",{className:"nice-dynamic-sidebar__favorite-btn",onClick:()=>a(t.route),type:"button",children:[t.icon&&e.jsx("span",{children:t.icon}),e.jsx("span",{children:t.label})]})},t.id))})]}),Ke=l.forwardRef(({menu:n,activeRoute:s,collapsed:a,width:i=260,collapsedWidth:t=56,searchable:m=!0,showFavorites:o=!0,showQuickActions:h=!0,collapsible:r=!0,onNavigate:c,onCollapseChange:u,onToggleFavorite:b,header:y,footer:d,className:v,style:$,id:M,accessMode:I,...j},w)=>{const p=D.useControlId(M),f=D.useNiceAccessMode(I,M),{t:C}=D.useNiceTranslation(),[k,L]=l.useState(a??!1),S=a??k,[g,N]=l.useState(""),[z,_]=l.useState(()=>{if(s){const Y=n.modules.find(G=>G.entities.some(W=>W.route===s));return Y?new Set([Y.id]):new Set}return new Set}),R=l.useCallback(()=>{const Y=!S;L(Y),u?.(Y)},[S,u]),K=l.useCallback(Y=>{_(G=>{const W=new Set(G);return W.has(Y)?W.delete(Y):W.add(Y),W})},[]),H=l.useCallback((Y,G)=>{c?.(Y,G)},[c]),F=l.useMemo(()=>gn(n.modules.filter(Y=>Y.isAvailable).sort((Y,G)=>Y.order-G.order),g),[n.modules,g]),U=S?t:i;return f==="hidden"?null:e.jsxs("nav",{ref:w,id:p,className:`nice-dynamic-sidebar ${S?"nice-dynamic-sidebar--collapsed":""} ${v??""}`,style:{...$,width:U,minWidth:U},"aria-label":C("nav.sidebar","Sidebar"),...j,children:[y&&e.jsx("div",{className:"nice-dynamic-sidebar__header",children:y}),r&&e.jsx("button",{className:"nice-dynamic-sidebar__toggle",onClick:R,"aria-label":S?C("expand","Expand"):C("collapse","Collapse"),type:"button",children:S?"▸":"◂"}),m&&!S&&e.jsx(yn,{value:g,onChange:N,placeholder:C("nav.search","Search")}),o&&!S&&e.jsx(Cn,{favorites:n.favorites,activeRoute:s,onNavigate:H,label:C("nav.favorites","Favorites")}),h&&!S&&n.quickActions.length>0&&e.jsx("div",{className:"nice-dynamic-sidebar__quick-actions",children:n.quickActions.map(Y=>e.jsxs("button",{className:"nice-dynamic-sidebar__quick-action",onClick:()=>H(Y.route),title:Y.shortcut?`${Y.label} (${Y.shortcut})`:Y.label,type:"button",children:[Y.icon&&e.jsx("span",{children:Y.icon}),e.jsx("span",{children:Y.label})]},Y.id))}),e.jsxs("div",{className:"nice-dynamic-sidebar__modules",role:"navigation",children:[F.map(Y=>e.jsx(kn,{module:Y,activeRoute:s,collapsed:S,expandedModules:z,onToggleModule:K,onNavigate:H},Y.id)),F.length===0&&!S&&e.jsx("div",{className:"nice-dynamic-sidebar__empty",children:C("noData","No data")})]}),d&&e.jsx("div",{className:"nice-dynamic-sidebar__footer",children:d})]})});Ke.displayName="NiceDynamicSidebar";const be={all:{icon:"☰",label:"Wszystko"},"by-role":{icon:"👤",label:"Według roli"},"by-unit":{icon:"🏢",label:"Według jednostki"},favorites:{icon:"⭐",label:"Ulubione"},preferences:{icon:"⚙️",label:"Preferencje"}},ye={enableModeIcons:!1,enabledModes:["all","by-role","by-unit","favorites","preferences"],activeMode:"all",pinnedSources:{},hiddenItems:[],favorites:[],maxDepth:{},collapsedIds:[],autoExpand:!0};function He(n){return`nice_sidebar_nav_${n??"_default"}`}function wn(n,s){const a={...ye,userId:n??"_default"};if(s&&Object.assign(a,s),s&&typeof s.activeMode<"u")return a;try{const i=localStorage.getItem(He(n));if(i){const t=JSON.parse(i);return{...a,...t,userId:n??"_default"}}}catch{}return a}function Sn(n,s,a,i){const[t,m]=l.useState(()=>{const r=wn(n,a);return s!==void 0&&(r.enableModeIcons=s),r});l.useEffect(()=>{a&&m(r=>({...r,...a}))},[a]);const o=l.useCallback(r=>{m(c=>{const u=r(c);if(!a?.activeMode)try{localStorage.setItem(He(n),JSON.stringify(u))}catch{}return i?.(u),u})},[n,a,i]),h=l.useMemo(()=>({setMode:r=>o(c=>({...c,activeMode:r})),setEnableModeIcons:r=>o(c=>({...c,enableModeIcons:r})),toggleMode:r=>o(c=>{if(r==="preferences")return c;const u=c.enabledModes.includes(r);return{...c,enabledModes:u?c.enabledModes.filter(b=>b!==r):[...c.enabledModes,r],activeMode:!u||c.activeMode!==r?c.activeMode:"all"}}),pinSource:(r,c)=>o(u=>({...u,pinnedSources:{...u.pinnedSources,[r]:[...u.pinnedSources[r]??[],c]}})),unpinSource:(r,c)=>o(u=>({...u,pinnedSources:{...u.pinnedSources,[r]:(u.pinnedSources[r]??[]).filter(b=>b!==c)}})),hideItem:r=>o(c=>({...c,hiddenItems:c.hiddenItems.some(u=>u.id===r.id)?c.hiddenItems:[...c.hiddenItems,r]})),restoreItem:r=>o(c=>({...c,hiddenItems:c.hiddenItems.filter(u=>u.id!==r)})),addFavorite:r=>o(c=>({...c,favorites:c.favorites.some(u=>u.id===r.id)?c.favorites:[...c.favorites,{...r,addedAt:Date.now()}]})),removeFavorite:r=>o(c=>({...c,favorites:c.favorites.filter(u=>u.id!==r)})),setMaxDepth:(r,c)=>o(u=>({...u,maxDepth:{...u.maxDepth,[r]:Math.min(4,Math.max(1,c))}})),toggleCollapse:r=>o(c=>({...c,collapsedIds:c.collapsedIds.includes(r)?c.collapsedIds.filter(u=>u!==r):[...c.collapsedIds,r]})),setAutoExpand:r=>o(c=>({...c,autoExpand:r})),resetAll:()=>o(()=>({...ye,userId:n??"_default"}))}),[o,n]);return[t,h]}function $n({enabledModes:n,activeMode:s,onSelect:a}){const i=[...n.filter(t=>t!=="preferences"),"preferences"];return e.jsx("div",{className:"nice-sidebar-nav__mode-strip",role:"tablist","aria-label":"Tryb nawigacji",children:i.map(t=>{const m=be[t],o=s===t;return e.jsx("button",{role:"tab","aria-selected":o,"aria-label":m.label,title:m.label,className:["nice-sidebar-nav__mode-btn",o?"nice-sidebar-nav__mode-btn--active":""].filter(Boolean).join(" "),onClick:()=>a(t),children:e.jsx("span",{className:"nice-sidebar-nav__mode-icon","aria-hidden":"true",children:m.icon})},t)})})}function Qe({item:n,depth:s,maxDepth:a,activeRoute:i,collapsedIds:t,hiddenIds:m,autoExpand:o,onNavigate:h,onHide:r,onToggleCollapse:c,onAddFavorite:u,isFavorite:b}){if(m.has(n.id))return null;const y=(n.children?.length??0)>0&&s<a,d=t.includes(n.id),v=o?!d:d,$=!!(n.route&&i&&n.route===i),M=!!n.route;function I(){M&&n.route?h?.(n.route,n):y&&c(n.id)}return e.jsxs("li",{className:["nice-sidebar-nav__node",`nice-sidebar-nav__node--depth-${s}`,$?"nice-sidebar-nav__node--active":"",y?"nice-sidebar-nav__node--branch":"nice-sidebar-nav__node--leaf"].filter(Boolean).join(" "),children:[e.jsxs("div",{className:"nice-sidebar-nav__node-row",children:[y&&e.jsx("button",{className:"nice-sidebar-nav__collapse-btn","aria-label":v?"Zwiń":"Rozwiń","aria-expanded":v,onClick:()=>c(n.id),children:e.jsx("span",{"aria-hidden":"true",children:v?"▾":"▸"})}),!y&&e.jsx("span",{className:"nice-sidebar-nav__collapse-spacer"}),e.jsxs("span",{role:M?"link":void 0,tabIndex:M?0:void 0,className:["nice-sidebar-nav__node-content",M?"nice-sidebar-nav__node-content--link":""].filter(Boolean).join(" "),onClick:I,onKeyDown:j=>(j.key==="Enter"||j.key===" ")&&I(),children:[n.icon&&e.jsx("span",{className:"nice-sidebar-nav__node-icon","aria-hidden":"true",children:n.icon}),e.jsx("span",{className:"nice-sidebar-nav__node-label",children:n.label}),n.badge!==void 0&&e.jsx("span",{className:"nice-sidebar-nav__node-badge","aria-label":`${n.badge} powiadomień`,children:n.badge})]}),e.jsxs("div",{className:"nice-sidebar-nav__node-actions",children:[M&&!b(n.id)&&e.jsx("button",{className:"nice-sidebar-nav__action-btn nice-sidebar-nav__action-btn--fav","aria-label":"Dodaj do ulubionych",title:"Dodaj do ulubionych",onClick:j=>{j.stopPropagation(),u({id:n.id,label:n.label,icon:n.icon,route:n.route,sourceId:n.sourceId,moduleId:n.moduleId,addedAt:Date.now()})},children:"☆"}),b(n.id)&&e.jsx("span",{className:"nice-sidebar-nav__action-btn nice-sidebar-nav__action-btn--fav-active","aria-label":"W ulubionych",title:"W ulubionych",children:"⭐"}),e.jsx("button",{className:"nice-sidebar-nav__action-btn nice-sidebar-nav__action-btn--hide","aria-label":"Ukryj element",title:"Ukryj",onClick:j=>{j.stopPropagation(),r({id:n.id,kind:n.kind,label:n.label})},children:"👁"})]})]}),y&&v&&e.jsx("ul",{className:"nice-sidebar-nav__children",children:n.children.map(j=>e.jsx(Qe,{item:j,depth:s+1,maxDepth:a,activeRoute:i,collapsedIds:t,hiddenIds:m,autoExpand:o,onNavigate:h,onHide:r,onToggleCollapse:c,onAddFavorite:u,isFavorite:b},j.id))})]})}function Mn(n,s){return n.map(a=>({id:a.id,label:a.label,icon:a.icon,kind:"module",sourceId:s,children:a.views.map(i=>({id:i.id,label:i.label,icon:i.icon,route:i.route,badge:i.badge,kind:"view",sourceId:s,moduleId:a.id,children:[]}))}))}function zn(n,s){return n.map(a=>({id:a.id,label:a.label,icon:a.icon,kind:"role",sourceId:s,children:a.modules.map(i=>({id:`${a.id}:${i.id}`,label:i.label,icon:i.icon,kind:"module",sourceId:s,children:i.views.map(t=>({id:t.id,label:t.label,icon:t.icon,route:t.route,badge:t.badge,kind:"view",sourceId:s,moduleId:i.id,children:[]}))}))}))}function Dn(n,s){return n.map(a=>({id:a.id,label:a.label,icon:a.icon,kind:"unit",sourceId:s,children:a.modules.map(i=>({id:`${a.id}:${i.id}`,label:i.label,icon:i.icon,kind:"module",sourceId:s,children:i.views.map(t=>({id:t.id,label:t.label,icon:t.icon,route:t.route,badge:t.badge,kind:"view",sourceId:s,moduleId:i.id,children:[]}))}))}))}function Tn({node:n,mode:s,maxDepth:a,isPinned:i,prefs:t,helpers:m,activeRoute:o,onNavigate:h}){const r=l.useMemo(()=>new Set(t.hiddenItems.map(b=>b.id)),[t.hiddenItems]),c=l.useMemo(()=>s==="all"?Mn(n.modules,n.source.id):s==="by-role"?zn(n.roles,n.source.id):Dn(n.units,n.source.id),[s,n]),u=l.useCallback(b=>t.favorites.some(y=>y.id===b),[t.favorites]);return r.has(n.source.id)?null:e.jsxs("section",{className:"nice-sidebar-nav__source-section",children:[e.jsxs("div",{className:"nice-sidebar-nav__source-header",children:[n.source.icon&&e.jsx("span",{className:"nice-sidebar-nav__source-icon","aria-hidden":"true",children:n.source.icon}),e.jsx("span",{className:"nice-sidebar-nav__source-label",children:n.source.label}),e.jsxs("div",{className:"nice-sidebar-nav__source-actions",children:[e.jsx("button",{className:["nice-sidebar-nav__action-btn nice-sidebar-nav__action-btn--pin",i?"nice-sidebar-nav__action-btn--pin-active":""].filter(Boolean).join(" "),"aria-label":i?"Odepnij źródło":"Przypnij źródło",title:i?"Odepnij":"Przypnij",onClick:()=>i?m.unpinSource(s,n.source.id):m.pinSource(s,n.source.id),children:i?"📌":"📍"}),e.jsx("button",{className:"nice-sidebar-nav__action-btn nice-sidebar-nav__action-btn--hide","aria-label":"Ukryj źródło",title:"Ukryj",onClick:()=>m.hideItem({id:n.source.id,kind:"source",label:n.source.label}),children:"👁"})]})]}),a>1&&e.jsx("ul",{className:"nice-sidebar-nav__tree",children:c.map(b=>e.jsx(Qe,{item:b,depth:2,maxDepth:a,activeRoute:o,collapsedIds:t.collapsedIds,hiddenIds:r,autoExpand:t.autoExpand,onNavigate:h,onHide:m.hideItem,onToggleCollapse:m.toggleCollapse,onAddFavorite:m.addFavorite,isFavorite:u},b.id))})]})}function In({favorites:n,activeRoute:s,onNavigate:a,onRemove:i}){return n.length===0?e.jsx("p",{className:"nice-sidebar-nav__empty",children:"Brak ulubionych. Najedź na element i kliknij ☆, aby dodać."}):e.jsx("ul",{className:"nice-sidebar-nav__favorites-list",children:n.map(t=>{const m=!!(t.route&&t.route===s);return e.jsxs("li",{className:["nice-sidebar-nav__fav-item",m?"nice-sidebar-nav__fav-item--active":""].filter(Boolean).join(" "),children:[e.jsxs("span",{role:"link",tabIndex:0,className:"nice-sidebar-nav__fav-content",onClick:()=>{t.route&&a?.(t.route,t)},onKeyDown:o=>{(o.key==="Enter"||o.key===" ")&&t.route&&a?.(t.route,t)},children:[t.icon&&e.jsx("span",{className:"nice-sidebar-nav__fav-icon","aria-hidden":"true",children:t.icon}),e.jsx("span",{className:"nice-sidebar-nav__fav-label",children:t.label})]}),e.jsx("button",{className:"nice-sidebar-nav__action-btn nice-sidebar-nav__action-btn--remove","aria-label":"Usuń z ulubionych",title:"Usuń z ulubionych",onClick:()=>i(t.id),children:"✕"})]},t.id)})})}const we=["all","by-role","by-unit","favorites"];function En({prefs:n,helpers:s}){return e.jsxs("div",{className:"nice-sidebar-nav__prefs",children:[e.jsx("h3",{className:"nice-sidebar-nav__prefs-title",children:"Preferencje"}),e.jsxs("section",{className:"nice-sidebar-nav__prefs-section",children:[e.jsx("h4",{className:"nice-sidebar-nav__prefs-section-title",children:"Tryb wyświetlania"}),e.jsxs("label",{className:"nice-sidebar-nav__prefs-row",children:[e.jsx("span",{children:"Pokaż ikony trybów"}),e.jsx("input",{type:"checkbox",checked:n.enableModeIcons,onChange:a=>s.setEnableModeIcons(a.target.checked)})]}),we.map(a=>{const i=be[a],t=n.enabledModes.includes(a);return e.jsxs("label",{className:"nice-sidebar-nav__prefs-row",children:[e.jsxs("span",{children:[i.icon," ",i.label]}),e.jsx("input",{type:"checkbox",checked:t,onChange:()=>s.toggleMode(a)})]},a)})]}),e.jsxs("section",{className:"nice-sidebar-nav__prefs-section",children:[e.jsx("h4",{className:"nice-sidebar-nav__prefs-section-title",children:"Głębokość drzewa"}),we.map(a=>{const i=be[a],t=n.maxDepth[a]??4;return e.jsxs("div",{className:"nice-sidebar-nav__prefs-row",children:[e.jsxs("span",{children:[i.icon," ",i.label]}),e.jsxs("div",{className:"nice-sidebar-nav__depth-control",children:[e.jsx("input",{type:"range",min:1,max:4,value:t,onChange:m=>s.setMaxDepth(a,Number(m.target.value)),"aria-label":`Głębokość dla trybu ${i.label}`}),e.jsx("span",{className:"nice-sidebar-nav__depth-value",children:t})]})]},a)})]}),e.jsxs("section",{className:"nice-sidebar-nav__prefs-section",children:[e.jsx("h4",{className:"nice-sidebar-nav__prefs-section-title",children:"Zachowanie drzewa"}),e.jsxs("label",{className:"nice-sidebar-nav__prefs-row",children:[e.jsx("span",{children:"Domyślnie rozwiń wszystko"}),e.jsx("input",{type:"checkbox",checked:n.autoExpand,onChange:a=>s.setAutoExpand(a.target.checked)})]})]}),n.hiddenItems.length>0&&e.jsxs("section",{className:"nice-sidebar-nav__prefs-section",children:[e.jsx("h4",{className:"nice-sidebar-nav__prefs-section-title",children:"Ukryte elementy"}),e.jsx("ul",{className:"nice-sidebar-nav__hidden-list",children:n.hiddenItems.map(a=>e.jsxs("li",{className:"nice-sidebar-nav__hidden-item",children:[e.jsxs("span",{className:"nice-sidebar-nav__hidden-label",children:[e.jsxs("span",{className:"nice-sidebar-nav__hidden-kind",children:["[",a.kind,"]"]})," ",a.label]}),e.jsx("button",{className:"nice-sidebar-nav__action-btn",onClick:()=>s.restoreItem(a.id),"aria-label":`Przywróć ${a.label}`,title:"Przywróć",children:"↩"})]},a.id))})]}),e.jsx("section",{className:"nice-sidebar-nav__prefs-section",children:e.jsx("button",{className:"nice-sidebar-nav__btn-reset",onClick:s.resetAll,"aria-label":"Zresetuj wszystkie preferencje",children:"Resetuj wszystkie preferencje"})})]})}const An=l.forwardRef(function({data:s,userId:a,activeRoute:i,onNavigate:t,enableModeIcons:m,preferences:o,onPreferencesChange:h,width:r=264,size:c="md",className:u,"data-testid":b},y){const[d,v]=Sn(a,m,o,h),$=l.useMemo(()=>{const w=d.activeMode;if(w==="favorites"||w==="preferences")return s;const p=d.pinnedSources[w];return!p||p.length===0?s:s.filter(f=>p.includes(f.source.id))},[s,d.activeMode,d.pinnedSources]),M=d.maxDepth[d.activeMode]??4;function I(){const w=d.activeMode;return w==="favorites"?e.jsx(In,{favorites:d.favorites,activeRoute:i,onNavigate:t,onRemove:v.removeFavorite}):w==="preferences"?e.jsx(En,{prefs:d,helpers:v}):$.length===0?e.jsx("p",{className:"nice-sidebar-nav__empty",children:"Brak widocznych źródeł danych dla tego trybu."}):$.map(p=>{const f=(d.pinnedSources[w]??[]).includes(p.source.id);return e.jsx(Tn,{node:p,mode:w,maxDepth:M,isPinned:f,prefs:d,helpers:v,activeRoute:i,onNavigate:t},p.source.id)})}const j=["nice-sidebar-nav",`nice-sidebar-nav--${c}`,d.enableModeIcons?"nice-sidebar-nav--with-strip":"",u].filter(Boolean).join(" ");return e.jsxs("div",{ref:y,className:j,style:{width:r},"data-testid":b,"data-mode":d.activeMode,children:[d.enableModeIcons&&e.jsx($n,{enabledModes:d.enabledModes,activeMode:d.activeMode,onSelect:v.setMode}),e.jsxs("div",{className:"nice-sidebar-nav__content",children:[!d.enableModeIcons&&d.activeMode!=="favorites"&&d.activeMode!=="preferences"&&e.jsxs("div",{className:"nice-sidebar-nav__mode-inline-actions",children:[["all","by-role","by-unit","favorites"].map(w=>{const p=be[w],f=d.activeMode===w;return!d.enabledModes.includes(w)&&w!=="all"?null:e.jsxs("button",{className:["nice-sidebar-nav__mode-pill",f?"nice-sidebar-nav__mode-pill--active":""].filter(Boolean).join(" "),onClick:()=>v.setMode(w),"aria-label":p.label,title:p.label,children:[p.icon," ",e.jsx("span",{className:"nice-sidebar-nav__mode-pill-label",children:p.label})]},w)}),e.jsx("button",{className:["nice-sidebar-nav__mode-pill",d.activeMode==="preferences"?"nice-sidebar-nav__mode-pill--active":""].filter(Boolean).join(" "),onClick:()=>v.setMode("preferences"),"aria-label":"Preferencje",title:"Preferencje",children:be.preferences.icon})]}),e.jsx("div",{className:"nice-sidebar-nav__body",children:I()})]})]})}),Xe=l.forwardRef(({tabs:n,activeIndex:s,renderTab:a,onActiveChange:i,onCloseTab:t,onReorderTabs:m,onSaveState:o,enableShortcuts:h=!0,maxTabs:r=0,showDirtyIndicator:c=!0,tabBarPosition:u="top",draggable:b=!0,showAddButton:y=!1,onAddTab:d,keepAlive:v=!0,warnOnUnsavedClose:$=!0,maxClosedTabs:M=10,onUndoCloseTab:I,getTabState:j,unsavedWarningMessage:w,className:p,style:f,id:C,accessMode:k,...L},S)=>{const g=D.useControlId(C),N=D.useNiceAccessMode(k,C),{t:z}=D.useNiceTranslation(),_=l.useRef(null),[R,K]=l.useState(null),[H,F]=l.useState(null),[U,Y]=l.useState([]),[G,W]=l.useState(null),A=l.useCallback((T,E,ee=!1)=>{if(!ee&&$&&T.isDirty){W({tab:T,index:E});return}const ne={tab:{...T},originalIndex:E,closedAt:Date.now(),state:j?.(T)};Y(_e=>[ne,..._e].slice(0,M)),t?.(T,E)},[$,M,j,t]),X=l.useCallback(()=>{if(U.length===0)return;const[T,...E]=U;Y(E),I?.(T)},[U,I]);l.useEffect(()=>{if(!h)return;const T=E=>{const ee=E.ctrlKey||E.metaKey;if(ee&&E.key==="w"){E.preventDefault();const ne=n[s];ne&&ne.closable!==!1&&A(ne,s)}else if(ee&&E.key==="Tab"){E.preventDefault();const ne=E.shiftKey?-1:1,_e=(s+ne+n.length)%n.length;i?.(_e)}else ee&&E.shiftKey&&(E.key==="t"||E.key==="T")&&(E.preventDefault(),X())};return window.addEventListener("keydown",T),()=>window.removeEventListener("keydown",T)},[h,n,s,A,X,i]),l.useEffect(()=>{if(!o)return;const T=setTimeout(()=>{o({tabs:n,activeTabIndex:s})},500);return()=>clearTimeout(T)},[n,s,o]);const Z=l.useCallback(T=>{b&&F(T)},[b]),le=l.useCallback((T,E)=>{T.preventDefault()},[H]),oe=l.useCallback(T=>{if(H===null||H===T)return;const E=[...n],[ee]=E.splice(H,1);E.splice(T,0,ee),m?.(E),F(null);let ne=s;s===H?ne=T:H<s&&T>=s?ne--:H>s&&T<=s&&ne++,ne!==s&&i?.(ne)},[H,n,s,m,i]),re=l.useCallback((T,E)=>{T.preventDefault(),K({tabIndex:E,x:T.clientX,y:T.clientY})},[]),ae=l.useCallback(()=>K(null),[]),O=l.useMemo(()=>{if(!R)return[];const T=n[R.tabIndex];return[{label:z("wm.close","Close"),action:()=>{A(T,R.tabIndex),ae()},disabled:T.closable===!1},{label:z("wm.closeAll","Close all"),action:()=>{n.forEach((E,ee)=>E.closable!==!1&&A(E,ee)),ae()}},{label:z("wm.closeOthers","Close others"),action:()=>{n.forEach((E,ee)=>ee!==R.tabIndex&&E.closable!==!1&&A(E,ee)),ae()}},{label:z("controls.pin","Pin"),action:()=>ae()},{type:"divider"},{label:z("wm.reopenClosed","Reopen closed tab"),action:()=>{X(),ae()},disabled:U.length===0,shortcut:"Ctrl+Shift+T"}]},[R,n,z,A,X,U.length,ae]);if(l.useEffect(()=>{if(!R)return;const T=()=>ae();return window.addEventListener("click",T),()=>window.removeEventListener("click",T)},[R,ae]),N==="hidden")return null;const J=e.jsxs("div",{className:`nice-mdi__tab-bar nice-mdi__tab-bar--${u}`,role:"tablist",children:[n.map((T,E)=>e.jsxs("div",{className:`nice-mdi__tab ${E===s?"nice-mdi__tab--active":""} ${T.isPinned?"nice-mdi__tab--pinned":""}`,role:"tab","aria-selected":E===s,onClick:()=>i?.(E),onContextMenu:ee=>re(ee,E),draggable:b,onDragStart:()=>Z(E),onDragOver:ee=>le(ee,E),onDrop:()=>oe(E),children:[T.icon&&e.jsx("span",{className:"nice-mdi__tab-icon",children:T.icon}),e.jsx("span",{className:"nice-mdi__tab-title",children:T.title}),c&&T.isDirty&&e.jsx("span",{className:"nice-mdi__tab-dirty",title:"Unsaved changes",children:"●"}),T.closable!==!1&&!T.isPinned&&e.jsx("button",{className:"nice-mdi__tab-close",onClick:ee=>{ee.stopPropagation(),A(T,E)},"aria-label":z("wm.close","Close"),type:"button",children:"×"})]},T.id)),y&&e.jsx("button",{className:"nice-mdi__tab-add",onClick:d,"aria-label":z("controls.new","New"),type:"button",children:"+"})]}),B=v?e.jsx("div",{className:"nice-mdi__content",children:n.map((T,E)=>e.jsx("div",{className:"nice-mdi__panel",role:"tabpanel",style:{display:E===s?"block":"none"},children:a(T,E)},T.id))}):e.jsx("div",{className:"nice-mdi__content",children:n[s]&&e.jsx("div",{className:"nice-mdi__panel",role:"tabpanel",children:a(n[s],s)})});return e.jsxs("div",{ref:T=>{_.current=T,typeof S=="function"?S(T):S&&(S.current=T)},id:g,className:`nice-mdi ${p??""}`,style:f,...L,children:[u==="top"&&J,B,u==="bottom"&&J,R&&e.jsx("div",{className:"nice-mdi__ctx-menu",style:{position:"fixed",left:R.x,top:R.y,zIndex:9999},children:O.map((T,E)=>"type"in T&&T.type==="divider"?e.jsx("div",{className:"nice-mdi__ctx-divider"},E):e.jsxs("button",{className:"nice-mdi__ctx-item",onClick:T.action,disabled:T.disabled,type:"button",children:[e.jsx("span",{className:"nice-mdi__ctx-label",children:T.label}),"shortcut"in T&&T.shortcut&&e.jsx("span",{className:"nice-mdi__ctx-shortcut",children:T.shortcut})]},E))}),G&&e.jsx("div",{className:"nice-mdi__modal-backdrop",onClick:()=>W(null),children:e.jsxs("div",{className:"nice-mdi__modal",onClick:T=>T.stopPropagation(),children:[e.jsx("div",{className:"nice-mdi__modal-icon",children:"⚠️"}),e.jsx("h3",{className:"nice-mdi__modal-title",children:z("wm.unsavedTitle","Unsaved Changes")}),e.jsx("p",{className:"nice-mdi__modal-message",children:w??z("wm.unsavedMessage",`"${G.tab.title}" has unsaved changes. Do you want to close it anyway?`)}),e.jsxs("div",{className:"nice-mdi__modal-actions",children:[e.jsx("button",{type:"button",className:"nice-mdi__modal-btn nice-mdi__modal-btn--secondary",onClick:()=>W(null),children:z("controls.cancel","Cancel")}),e.jsx("button",{type:"button",className:"nice-mdi__modal-btn nice-mdi__modal-btn--danger",onClick:()=>{A(G.tab,G.index,!0),W(null)},children:z("wm.closeAnyway","Close Anyway")})]})]})})]})});Xe.displayName="NiceMdiWorkspace";const qe=l.forwardRef(({menu:n,activeRoute:s,toolbar:a,statusBar:i,sidebarHeader:t,sidebarFooter:m,onNavigate:o,children:h,className:r,style:c,id:u,accessMode:b,...y},d)=>{const v=D.useControlId(u),$=D.useNiceAccessMode(b,u),{t:M}=D.useNiceTranslation(),[I,j]=l.useState(!1);return $==="hidden"?null:e.jsxs("div",{ref:d,id:v,className:`nice-shell nice-shell--classic ${I?"nice-shell--sidebar-collapsed":""} ${r??""}`,style:c,...y,children:[e.jsxs("aside",{className:"nice-shell__sidebar",children:[t&&e.jsx("div",{className:"nice-shell__sidebar-header",children:t}),e.jsx("button",{className:"nice-shell__sidebar-toggle",onClick:()=>j(w=>!w),type:"button","aria-label":I?M("expand","Expand"):M("collapse","Collapse"),children:I?"▸":"◂"}),n&&!I&&e.jsx("nav",{className:"nice-shell__nav",role:"navigation",children:n.modules.filter(w=>w.isAvailable).sort((w,p)=>w.order-p.order).map(w=>e.jsxs("div",{className:"nice-shell__nav-group",children:[e.jsxs("div",{className:"nice-shell__nav-group-label",children:[w.icon&&e.jsx("span",{children:w.icon}),e.jsx("span",{children:w.label})]}),e.jsx("ul",{children:w.entities.map(p=>e.jsx("li",{children:e.jsx("button",{className:`nice-shell__nav-item ${s===p.route?"nice-shell__nav-item--active":""}`,onClick:()=>o?.(p.route),type:"button",children:p.label})},p.id))})]},w.id))}),m&&e.jsx("div",{className:"nice-shell__sidebar-footer",children:m})]}),e.jsxs("div",{className:"nice-shell__main",children:[a&&e.jsx("header",{className:"nice-shell__toolbar",children:a}),e.jsx("main",{className:"nice-shell__content",children:h}),i&&e.jsx("footer",{className:"nice-shell__status-bar",children:i})]})]})});qe.displayName="NiceClassicShell";const Ge=l.forwardRef(({topBar:n,sidePanel:s,sidePanelPosition:a="left",sidePanelWidth:i=280,children:t,className:m,style:o,id:h,accessMode:r,...c},u)=>{const b=D.useControlId(h);return D.useNiceAccessMode(r,h)==="hidden"?null:e.jsxs("div",{ref:u,id:b,className:`nice-shell nice-shell--dashboard ${m??""}`,style:o,...c,children:[n&&e.jsx("header",{className:"nice-shell__top-bar",children:n}),e.jsxs("div",{className:`nice-shell__dashboard-body nice-shell__dashboard-body--panel-${a}`,children:[s&&e.jsx("aside",{className:"nice-shell__side-panel",style:{width:i},children:s}),e.jsx("main",{className:"nice-shell__dashboard-content",children:t})]})]})});Ge.displayName="NiceDashboardShell";const Je=l.forwardRef(({topBar:n,bottomNav:s,children:a,className:i,style:t,id:m,accessMode:o,...h},r)=>{const c=D.useControlId(m);return D.useNiceAccessMode(o,m)==="hidden"?null:e.jsxs("div",{ref:r,id:c,className:`nice-shell nice-shell--compact ${i??""}`,style:t,...h,children:[n&&e.jsx("header",{className:"nice-shell__compact-top",children:n}),e.jsx("main",{className:"nice-shell__compact-content",children:a}),s&&e.jsx("footer",{className:"nice-shell__compact-bottom",children:s})]})});Je.displayName="NiceCompactShell";const Ze=l.forwardRef(({overlay:n,lockScreen:s,locked:a=!1,children:i,className:t,style:m,id:o,accessMode:h,...r},c)=>{const u=D.useControlId(o);return D.useNiceAccessMode(h,o)==="hidden"?null:e.jsx("div",{ref:c,id:u,className:`nice-shell nice-shell--kiosk ${t??""}`,style:{...m,position:"fixed",inset:0},...r,children:a&&s?e.jsx("div",{className:"nice-shell__kiosk-lock",children:s}):e.jsxs(e.Fragment,{children:[e.jsx("main",{className:"nice-shell__kiosk-content",children:i}),n&&e.jsx("div",{className:"nice-shell__kiosk-overlay",children:n})]})})});Ze.displayName="NiceKioskShell";const en=l.forwardRef(({modes:n,activeMode:s,onModeChange:a,variant:i="dropdown",gridColumns:t=3,showDescription:m=!0,showColorIndicator:o=!0,compact:h=!1,size:r="md",className:c,style:u,id:b,accessMode:y,...d},v)=>{const $=D.useControlId(b),M=D.useNiceAccessMode(y,b),{t:I}=D.useNiceTranslation(),[j,w]=l.useState(!1),p=l.useRef(null),f=n.find(k=>k.key===s);l.useEffect(()=>{if(!j)return;const k=L=>{p.current&&!p.current.contains(L.target)&&w(!1)};return document.addEventListener("mousedown",k),()=>document.removeEventListener("mousedown",k)},[j]);const C=l.useCallback(k=>{a?.(k),w(!1)},[a]);return M==="hidden"?null:i==="dropdown"?e.jsxs("div",{ref:k=>{p.current=k,typeof v=="function"?v(k):v&&(v.current=k)},id:$,className:`nice-mode-selector nice-mode-selector--dropdown nice-mode-selector--${r} ${c??""}`,style:u,...d,children:[e.jsxs("button",{className:"nice-mode-selector__trigger",onClick:()=>w(k=>!k),"aria-expanded":j,"aria-haspopup":"listbox",type:"button",children:[o&&f?.color&&e.jsx("span",{className:"nice-mode-selector__color",style:{backgroundColor:f.color}}),f?.icon&&e.jsx("span",{className:"nice-mode-selector__icon",children:f.icon}),e.jsx("span",{className:"nice-mode-selector__label",children:f?.displayName??s}),e.jsx("span",{className:"nice-mode-selector__chevron",children:j?"▴":"▾"})]}),j&&e.jsx("ul",{className:"nice-mode-selector__menu",role:"listbox",children:n.map(k=>e.jsxs("li",{className:`nice-mode-selector__option ${k.key===s?"nice-mode-selector__option--active":""}`,role:"option","aria-selected":k.key===s,onClick:()=>C(k),children:[o&&k.color&&e.jsx("span",{className:"nice-mode-selector__color",style:{backgroundColor:k.color}}),k.icon&&e.jsx("span",{className:"nice-mode-selector__icon",children:k.icon}),e.jsxs("div",{children:[e.jsx("div",{className:"nice-mode-selector__name",children:k.displayName}),m&&k.description&&e.jsx("div",{className:"nice-mode-selector__desc",children:k.description})]})]},k.key))})]}):i==="pills"?e.jsx("div",{ref:v,id:$,className:`nice-mode-selector nice-mode-selector--pills ${c??""}`,style:u,role:"radiogroup",...d,children:n.map(k=>e.jsxs("button",{className:`nice-mode-selector__pill ${k.key===s?"nice-mode-selector__pill--active":""}`,style:o&&k.color?{borderColor:k.color}:void 0,onClick:()=>C(k),role:"radio","aria-checked":k.key===s,type:"button",children:[k.icon&&e.jsx("span",{children:k.icon}),e.jsx("span",{children:k.displayName})]},k.key))}):e.jsx("div",{ref:v,id:$,className:`nice-mode-selector nice-mode-selector--card-grid ${c??""}`,style:{...u,gridTemplateColumns:`repeat(${t}, 1fr)`},role:"radiogroup",...d,children:n.map(k=>e.jsxs("button",{className:`nice-mode-selector__card ${k.key===s?"nice-mode-selector__card--active":""} ${h?"nice-mode-selector__card--compact":""}`,onClick:()=>C(k),role:"radio","aria-checked":k.key===s,type:"button",children:[o&&k.color&&e.jsx("div",{className:"nice-mode-selector__card-stripe",style:{backgroundColor:k.color}}),k.icon&&e.jsx("div",{className:"nice-mode-selector__card-icon",children:k.icon}),e.jsx("div",{className:"nice-mode-selector__card-name",children:k.displayName}),m&&k.description&&!h&&e.jsx("div",{className:"nice-mode-selector__card-desc",children:k.description}),k.sourcePackage&&!h&&e.jsx("div",{className:"nice-mode-selector__card-pkg",children:k.sourcePackage})]},k.key))})});en.displayName="NiceModeSelector";function Ln(n){const s=new Map;for(const a of n.sort((i,t)=>i.orderIndex-t.orderIndex))s.has(a.category)||s.set(a.category,[]),s.get(a.category).push(a);return Array.from(s,([a,i])=>({category:a,items:i}))}const Rn=({question:n,value:s,onChange:a})=>{switch(n.questionType){case"boolean":return e.jsxs("div",{className:"nice-onboarding__field nice-onboarding__field--boolean",children:[e.jsxs("label",{className:"nice-onboarding__label",children:[n.question,n.isRequired&&e.jsx("span",{className:"nice-onboarding__required",children:"*"})]}),n.helpText&&e.jsx("p",{className:"nice-onboarding__help",children:n.helpText}),e.jsxs("div",{className:"nice-onboarding__boolean-group",children:[e.jsx("button",{className:`nice-onboarding__bool-btn ${s==="true"?"nice-onboarding__bool-btn--active":""}`,onClick:()=>a("true"),type:"button",children:"✓"}),e.jsx("button",{className:`nice-onboarding__bool-btn ${s==="false"?"nice-onboarding__bool-btn--active":""}`,onClick:()=>a("false"),type:"button",children:"✗"})]})]});case"select":return e.jsxs("div",{className:"nice-onboarding__field nice-onboarding__field--select",children:[e.jsxs("label",{className:"nice-onboarding__label",children:[n.question,n.isRequired&&e.jsx("span",{className:"nice-onboarding__required",children:"*"})]}),n.helpText&&e.jsx("p",{className:"nice-onboarding__help",children:n.helpText}),e.jsx("div",{className:"nice-onboarding__options",children:n.options?.map(i=>e.jsx("button",{className:`nice-onboarding__option ${s===i?"nice-onboarding__option--selected":""}`,onClick:()=>a(i),type:"button",children:i},i))})]});case"multiSelect":return e.jsxs("div",{className:"nice-onboarding__field nice-onboarding__field--multi",children:[e.jsxs("label",{className:"nice-onboarding__label",children:[n.question,n.isRequired&&e.jsx("span",{className:"nice-onboarding__required",children:"*"})]}),n.helpText&&e.jsx("p",{className:"nice-onboarding__help",children:n.helpText}),e.jsx("div",{className:"nice-onboarding__options",children:n.options?.map(i=>{const t=s.split(",").filter(Boolean),m=t.includes(i);return e.jsx("button",{className:`nice-onboarding__option ${m?"nice-onboarding__option--selected":""}`,onClick:()=>{const o=m?t.filter(h=>h!==i):[...t,i];a(o.join(","))},type:"button",children:i},i)})})]});case"number":return e.jsxs("div",{className:"nice-onboarding__field nice-onboarding__field--number",children:[e.jsxs("label",{className:"nice-onboarding__label",children:[n.question,n.isRequired&&e.jsx("span",{className:"nice-onboarding__required",children:"*"})]}),n.helpText&&e.jsx("p",{className:"nice-onboarding__help",children:n.helpText}),e.jsx("input",{type:"number",className:"nice-onboarding__input",value:s,onChange:i=>a(i.target.value)})]});case"date":return e.jsxs("div",{className:"nice-onboarding__field nice-onboarding__field--date",children:[e.jsxs("label",{className:"nice-onboarding__label",children:[n.question,n.isRequired&&e.jsx("span",{className:"nice-onboarding__required",children:"*"})]}),n.helpText&&e.jsx("p",{className:"nice-onboarding__help",children:n.helpText}),e.jsx("input",{type:"date",className:"nice-onboarding__input",value:s,onChange:i=>a(i.target.value)})]});default:return e.jsxs("div",{className:"nice-onboarding__field nice-onboarding__field--text",children:[e.jsxs("label",{className:"nice-onboarding__label",children:[n.question,n.isRequired&&e.jsx("span",{className:"nice-onboarding__required",children:"*"})]}),n.helpText&&e.jsx("p",{className:"nice-onboarding__help",children:n.helpText}),e.jsx("input",{type:"text",className:"nice-onboarding__input",value:s,onChange:i=>a(i.target.value),placeholder:n.defaultValue})]})}},nn=l.forwardRef(({questions:n,initialAnswers:s=[],stepLabels:a,onComplete:i,onCancel:t,onStepChange:m,welcomeContent:o,completionContent:h,showProgress:r=!0,allowBack:c=!0,logo:u,size:b="md",className:y,style:d,id:v,accessMode:$,...M},I)=>{const j=D.useControlId(v),w=D.useNiceAccessMode($,v),{t:p}=D.useNiceTranslation(),f=l.useMemo(()=>Ln(n),[n]),C=!!o,k=!!h,L=C?-1:0,S=k?f.length:f.length-1,[g,N]=l.useState(L),[z,_]=l.useState(()=>{const W=new Map;for(const A of s)W.set(A.questionId,A.answer);for(const A of n)!W.has(A.id)&&A.defaultValue&&W.set(A.id,A.defaultValue);return W}),R=l.useCallback((W,A)=>{_(X=>{const Z=new Map(X);return Z.set(W,A),Z})},[]),K=l.useMemo(()=>g<0||g>=f.length?!0:f[g].items.every(A=>!A.isRequired||(z.get(A.id)??"").trim().length>0),[g,f,z]),H=l.useCallback(()=>{if(g>=S){const A=[];z.forEach((X,Z)=>A.push({questionId:Z,answer:X})),i?.(A);return}const W=g+1;N(W),m?.(W)},[g,S,z,i,m]),F=l.useCallback(()=>{if(g<=L)return;const W=g-1;N(W),m?.(W)},[g,L,m]),U=f.length+(C?1:0)+(k?1:0),Y=g-L,G=Math.round(Y/Math.max(U-1,1)*100);return w==="hidden"?null:e.jsxs("div",{ref:I,id:j,className:`nice-onboarding nice-onboarding--${b} ${y??""}`,style:d,...M,children:[e.jsxs("div",{className:"nice-onboarding__header",children:[u&&e.jsx("div",{className:"nice-onboarding__logo",children:u}),r&&e.jsx("div",{className:"nice-onboarding__progress",children:e.jsx("div",{className:"nice-onboarding__progress-bar",style:{width:`${G}%`}})}),e.jsx("div",{className:"nice-onboarding__steps",children:f.map((W,A)=>e.jsxs("div",{className:`nice-onboarding__step-dot ${A===g?"nice-onboarding__step-dot--active":""} ${A<g?"nice-onboarding__step-dot--done":""}`,children:[e.jsx("span",{children:A+1}),e.jsx("span",{className:"nice-onboarding__step-label",children:a?.[A]??W.category})]},A))})]}),e.jsxs("div",{className:"nice-onboarding__body",children:[g===-1&&o,g>=0&&g<f.length&&e.jsxs("div",{className:"nice-onboarding__questions",children:[e.jsx("h2",{className:"nice-onboarding__category",children:f[g].category}),f[g].items.map(W=>e.jsx(Rn,{question:W,value:z.get(W.id)??"",onChange:A=>R(W.id,A)},W.id))]}),g===f.length&&h]}),e.jsxs("div",{className:"nice-onboarding__footer",children:[t&&e.jsx("button",{className:"nice-onboarding__btn nice-onboarding__btn--cancel",onClick:t,type:"button",children:p("cancel","Cancel")}),e.jsxs("div",{className:"nice-onboarding__footer-right",children:[c&&g>L&&e.jsx("button",{className:"nice-onboarding__btn nice-onboarding__btn--back",onClick:F,type:"button",children:p("back","Back")}),e.jsx("button",{className:"nice-onboarding__btn nice-onboarding__btn--next",onClick:H,disabled:!K,type:"button",children:g>=S?p("finish","Finish"):p("next","Next")})]})]})]})});nn.displayName="NiceOnboardingWizard";const On=[{key:"Mon",label:"Monday"},{key:"Tue",label:"Tuesday"},{key:"Wed",label:"Wednesday"},{key:"Thu",label:"Thursday"},{key:"Fri",label:"Friday"},{key:"Sat",label:"Saturday"},{key:"Sun",label:"Sunday"}],Yn=[{value:"YYYY-MM-DD",label:"YYYY-MM-DD"},{value:"DD/MM/YYYY",label:"DD/MM/YYYY"},{value:"MM/DD/YYYY",label:"MM/DD/YYYY"},{value:"DD.MM.YYYY",label:"DD.MM.YYYY"}],Se=["basic","contact","address","branding","localization","fiscal","preferences"],ue=({title:n,expanded:s,onToggle:a})=>e.jsxs("button",{className:`nice-org-form__section-header ${s?"nice-org-form__section-header--expanded":""}`,onClick:a,type:"button","aria-expanded":s,children:[e.jsx("span",{className:"nice-org-form__section-title",children:n}),e.jsx("span",{className:"nice-org-form__section-chevron",children:s?"▾":"▸"})]}),sn=l.forwardRef(({profile:n,onChange:s,onSave:a,onCancel:i,sections:t,expandedSections:m,showActions:o=!0,countryOptions:h,languageOptions:r,currencyOptions:c,timezoneOptions:u,saving:b=!1,className:y,style:d,id:v,accessMode:$,...M},I)=>{const j=D.useControlId(v),w=D.useNiceAccessMode($,v),{t:p}=D.useNiceTranslation(),f=l.useMemo(()=>t&&t.length>0?t:Se,[t]),[C,k]=l.useState(()=>new Set(m??Se)),L=l.useCallback(_=>{k(R=>{const K=new Set(R);return K.has(_)?K.delete(_):K.add(_),K})},[]),S=w==="readOnly",g=w==="disabled",N=l.useCallback((_,R)=>{s?.({...n,[_]:R})},[n,s]),z=l.useCallback(()=>{a?.(n)},[n,a]);return w==="hidden"?null:e.jsxs("div",{ref:I,id:j,className:`nice-org-form ${y??""}`,style:d,...M,children:[f.includes("basic")&&e.jsxs("div",{className:"nice-org-form__section",children:[e.jsx(ue,{title:p("org.basic","Company Information"),expanded:C.has("basic"),onToggle:()=>L("basic")}),C.has("basic")&&e.jsxs("div",{className:"nice-org-form__fields",children:[e.jsx(Q.NiceTextInput,{label:p("org.name","Company Name"),value:n.name,onChange:_=>N("name",_),required:!0,disabled:g,readOnly:S}),e.jsx(Q.NiceTextInput,{label:p("org.legalName","Legal Name"),value:n.legalName??"",onChange:_=>N("legalName",_),disabled:g,readOnly:S}),e.jsx(Q.NiceTextInput,{label:p("org.taxId","Tax ID"),value:n.taxId??"",onChange:_=>N("taxId",_),disabled:g,readOnly:S}),e.jsx(Q.NiceTextInput,{label:p("org.regNumber","Registration Number"),value:n.registrationNumber??"",onChange:_=>N("registrationNumber",_),disabled:g,readOnly:S}),e.jsx(Q.NiceTextInput,{label:p("org.industry","Industry"),value:n.industry??"",onChange:_=>N("industry",_),disabled:g,readOnly:S}),e.jsx(pe.NiceNumberInput,{label:p("org.employees","Number of Employees"),value:n.employeeCount??null,onChange:_=>N("employeeCount",_??void 0),min:1,disabled:g,readOnly:S})]})]}),f.includes("contact")&&e.jsxs("div",{className:"nice-org-form__section",children:[e.jsx(ue,{title:p("org.contact","Contact Details"),expanded:C.has("contact"),onToggle:()=>L("contact")}),C.has("contact")&&e.jsxs("div",{className:"nice-org-form__fields",children:[e.jsx(Q.NiceTextInput,{label:p("org.email","Email"),value:n.email??"",onChange:_=>N("email",_),type:"email",disabled:g,readOnly:S}),e.jsx(Q.NiceTextInput,{label:p("org.phone","Phone"),value:n.phone??"",onChange:_=>N("phone",_),type:"tel",disabled:g,readOnly:S}),e.jsx(Q.NiceTextInput,{label:p("org.website","Website"),value:n.website??"",onChange:_=>N("website",_),type:"url",disabled:g,readOnly:S}),e.jsx(Q.NiceTextInput,{label:p("org.fax","Fax"),value:n.fax??"",onChange:_=>N("fax",_),type:"tel",disabled:g,readOnly:S})]})]}),f.includes("address")&&e.jsxs("div",{className:"nice-org-form__section",children:[e.jsx(ue,{title:p("org.address","Address"),expanded:C.has("address"),onToggle:()=>L("address")}),C.has("address")&&e.jsxs("div",{className:"nice-org-form__fields",children:[e.jsx(Q.NiceTextInput,{label:p("org.street","Street"),value:n.street??"",onChange:_=>N("street",_),disabled:g,readOnly:S}),e.jsx(Q.NiceTextInput,{label:p("org.city","City"),value:n.city??"",onChange:_=>N("city",_),disabled:g,readOnly:S}),e.jsx(Q.NiceTextInput,{label:p("org.state","State / Province"),value:n.state??"",onChange:_=>N("state",_),disabled:g,readOnly:S}),e.jsx(Q.NiceTextInput,{label:p("org.postalCode","Postal Code"),value:n.postalCode??"",onChange:_=>N("postalCode",_),disabled:g,readOnly:S}),h?e.jsx(Q.NiceSelect,{label:p("org.country","Country"),value:n.country??"",onChange:_=>N("country",_),options:h,searchable:!0,disabled:g,readOnly:S}):e.jsx(Q.NiceTextInput,{label:p("org.country","Country"),value:n.country??"",onChange:_=>N("country",_),disabled:g,readOnly:S})]})]}),f.includes("branding")&&e.jsxs("div",{className:"nice-org-form__section",children:[e.jsx(ue,{title:p("org.branding","Branding"),expanded:C.has("branding"),onToggle:()=>L("branding")}),C.has("branding")&&e.jsxs("div",{className:"nice-org-form__fields",children:[e.jsx(Q.NiceTextInput,{label:p("org.logoUrl","Logo URL"),value:n.logoUrl??"",onChange:_=>N("logoUrl",_),type:"url",disabled:g,readOnly:S}),e.jsx(Q.NiceColorPicker,{label:p("org.primaryColor","Primary Color"),value:n.primaryColor??"#3b82f6",onChange:_=>N("primaryColor",_),disabled:g,readOnly:S}),e.jsx(Q.NiceColorPicker,{label:p("org.secondaryColor","Secondary Color"),value:n.secondaryColor??"#8b5cf6",onChange:_=>N("secondaryColor",_),disabled:g,readOnly:S})]})]}),f.includes("localization")&&e.jsxs("div",{className:"nice-org-form__section",children:[e.jsx(ue,{title:p("org.localization","Localization"),expanded:C.has("localization"),onToggle:()=>L("localization")}),C.has("localization")&&e.jsxs("div",{className:"nice-org-form__fields",children:[r?e.jsx(Q.NiceSelect,{label:p("org.language","Default Language"),value:n.defaultLanguage??"",onChange:_=>N("defaultLanguage",_),options:r,searchable:!0,disabled:g,readOnly:S}):e.jsx(Q.NiceTextInput,{label:p("org.language","Default Language"),value:n.defaultLanguage??"",onChange:_=>N("defaultLanguage",_),disabled:g,readOnly:S}),c?e.jsx(Q.NiceSelect,{label:p("org.currency","Default Currency"),value:n.defaultCurrency??"",onChange:_=>N("defaultCurrency",_),options:c,searchable:!0,disabled:g,readOnly:S}):e.jsx(Q.NiceTextInput,{label:p("org.currency","Default Currency"),value:n.defaultCurrency??"",onChange:_=>N("defaultCurrency",_),disabled:g,readOnly:S}),u?e.jsx(Q.NiceSelect,{label:p("org.timezone","Default Timezone"),value:n.defaultTimezone??"",onChange:_=>N("defaultTimezone",_),options:u,searchable:!0,disabled:g,readOnly:S}):e.jsx(Q.NiceTextInput,{label:p("org.timezone","Default Timezone"),value:n.defaultTimezone??"",onChange:_=>N("defaultTimezone",_),disabled:g,readOnly:S}),e.jsx(Q.NiceSelect,{label:p("org.dateFormat","Date Format"),value:n.dateFormat??"YYYY-MM-DD",onChange:_=>N("dateFormat",_),options:Yn,disabled:g,readOnly:S})]})]}),f.includes("fiscal")&&e.jsxs("div",{className:"nice-org-form__section",children:[e.jsx(ue,{title:p("org.fiscal","Fiscal Settings"),expanded:C.has("fiscal"),onToggle:()=>L("fiscal")}),C.has("fiscal")&&e.jsxs("div",{className:"nice-org-form__fields",children:[e.jsx(Q.NiceTextInput,{label:p("org.fiscalYearStart","Fiscal Year Start"),value:n.fiscalYearStart??"",onChange:_=>N("fiscalYearStart",_),placeholder:"MM-DD",disabled:g,readOnly:S}),e.jsx(pe.NiceToggle,{label:p("org.vatEnabled","VAT Enabled"),checked:n.vatEnabled??!1,onChange:_=>N("vatEnabled",_),disabled:g||S}),n.vatEnabled&&e.jsx(pe.NiceNumberInput,{label:p("org.defaultVatRate","Default VAT Rate (%)"),value:n.defaultVatRate??null,onChange:_=>N("defaultVatRate",_??void 0),min:0,max:100,step:.5,disabled:g,readOnly:S})]})]}),f.includes("preferences")&&e.jsxs("div",{className:"nice-org-form__section",children:[e.jsx(ue,{title:p("org.preferences","Work Preferences"),expanded:C.has("preferences"),onToggle:()=>L("preferences")}),C.has("preferences")&&e.jsxs("div",{className:"nice-org-form__fields",children:[e.jsxs("div",{className:"nice-org-form__field-group",children:[e.jsx("label",{className:"nice-org-form__group-label",children:p("org.workingDays","Working Days")}),e.jsx("div",{className:"nice-org-form__checkboxes",children:On.map(_=>e.jsx(pe.NiceCheckbox,{label:_.label,checked:(n.workingDays??["Mon","Tue","Wed","Thu","Fri"]).includes(_.key),onChange:R=>{const K=n.workingDays??["Mon","Tue","Wed","Thu","Fri"],H=R?[...K,_.key]:K.filter(F=>F!==_.key);N("workingDays",H)},disabled:g||S},_.key))})]}),e.jsx(Q.NiceTextInput,{label:p("org.workStart","Working Hours Start"),value:n.workingHoursStart??"09:00",onChange:_=>N("workingHoursStart",_),placeholder:"HH:MM",disabled:g,readOnly:S}),e.jsx(Q.NiceTextInput,{label:p("org.workEnd","Working Hours End"),value:n.workingHoursEnd??"17:00",onChange:_=>N("workingHoursEnd",_),placeholder:"HH:MM",disabled:g,readOnly:S})]})]}),o&&e.jsxs("div",{className:"nice-org-form__actions",children:[i&&e.jsx(Q.NiceButton,{variant:"secondary",onClick:i,disabled:b,children:p("cancel","Cancel")}),a&&e.jsx(Q.NiceButton,{variant:"primary",onClick:z,loading:b,disabled:S||g,children:p("save","Save")})]})]})});sn.displayName="NiceOrganizationProfileForm";const Fn={available:{color:"#6b7280",icon:"○"},installed:{color:"#3b82f6",icon:"◉"},active:{color:"#10b981",icon:"●"},disabled:{color:"#f59e0b",icon:"◌"},error:{color:"#ef4444",icon:"⊘"},updating:{color:"#8b5cf6",icon:"↻"}};function Wn(n,s){switch(n){case"available":return["install"];case"installed":return["activate",...s?[]:["uninstall"]];case"active":return["deactivate"];case"disabled":return["activate",...s?[]:["uninstall"]];case"error":return["activate",...s?[]:["uninstall"]];case"updating":return[];default:return[]}}const Bn=({module:n,onAction:s,onClick:a,showDependencies:i,showAuthor:t,showVersion:m,processing:o,disabled:h,readOnly:r,t:c,layout:u})=>{const b=Fn[n.status],y=Wn(n.status,n.isCore);return e.jsxs("div",{className:`nice-module-card nice-module-card--${u} nice-module-card--${n.status}`,onClick:a,role:a?"button":void 0,tabIndex:a?0:void 0,onKeyDown:a?d=>{(d.key==="Enter"||d.key===" ")&&(d.preventDefault(),a())}:void 0,children:[e.jsxs("div",{className:"nice-module-card__header",children:[e.jsx("span",{className:"nice-module-card__icon",children:n.icon??"📦"}),e.jsxs("div",{className:"nice-module-card__info",children:[e.jsx("div",{className:"nice-module-card__name",children:n.label}),m&&e.jsxs("span",{className:"nice-module-card__version",children:["v",n.version]})]}),e.jsxs("span",{className:"nice-module-card__status",style:{color:b.color},title:n.status,children:[o?"⟳":b.icon," ",n.status]})]}),e.jsx("div",{className:"nice-module-card__desc",children:n.description}),e.jsxs("div",{className:"nice-module-card__meta",children:[t&&n.author&&e.jsx("span",{className:"nice-module-card__author",children:n.author}),n.isCore&&e.jsx("span",{className:"nice-module-card__badge nice-module-card__badge--core",children:c("module.core","Core")})]}),i&&n.dependencies&&n.dependencies.length>0&&e.jsxs("div",{className:"nice-module-card__deps",children:[e.jsxs("span",{className:"nice-module-card__deps-label",children:[c("module.deps","Dependencies"),":"]}),n.dependencies.map(d=>e.jsx("span",{className:"nice-module-card__dep-tag",children:d},d))]}),!r&&y.length>0&&e.jsx("div",{className:"nice-module-card__actions",children:y.map(d=>e.jsx(Q.NiceButton,{size:"sm",variant:d==="uninstall"?"error":d==="activate"?"primary":"secondary",onClick:v=>{v.stopPropagation(),s(d)},disabled:h||o,loading:o,children:c(`module.${d}`,d.charAt(0).toUpperCase()+d.slice(1))},d))})]})},an=l.forwardRef(({modules:n,onAction:s,statusFilter:a,searchable:i=!0,showDependencies:t=!0,showAuthor:m=!0,showVersion:o=!0,processingModules:h,layout:r="list",gridColumns:c=3,onModuleClick:u,className:b,style:y,id:d,accessMode:v,...$},M)=>{const I=D.useControlId(d),j=D.useNiceAccessMode(v,d),{t:w}=D.useNiceTranslation(),[p,f]=l.useState(""),[C,k]=l.useState("all"),L=j==="readOnly",S=j==="disabled",g=l.useMemo(()=>{let _=n;if(a&&a.length>0&&(_=_.filter(R=>a.includes(R.status))),C!=="all"&&(_=_.filter(R=>R.status===C)),p){const R=p.toLowerCase();_=_.filter(K=>K.label.toLowerCase().includes(R)||K.name.toLowerCase().includes(R)||K.description.toLowerCase().includes(R))}return _},[n,a,C,p]),N=l.useMemo(()=>{const _={all:n.length};for(const R of n)_[R.status]=(_[R.status]??0)+1;return _},[n]),z=l.useCallback((_,R)=>{s?.(_,R)},[s]);return j==="hidden"?null:e.jsxs("div",{ref:M,id:I,className:`nice-module-panel ${b??""}`,style:y,...$,children:[e.jsxs("div",{className:"nice-module-panel__toolbar",children:[i&&e.jsx(Q.NiceTextInput,{value:p,onChange:f,placeholder:w("module.search","Search modules…"),type:"search",clearable:!0,className:"nice-module-panel__search"}),e.jsx("div",{className:"nice-module-panel__filters",role:"tablist",children:["all","active","installed","disabled","available","error"].map(_=>e.jsxs("button",{className:`nice-module-panel__filter ${C===_?"nice-module-panel__filter--active":""}`,onClick:()=>k(_),role:"tab","aria-selected":C===_,type:"button",children:[w(`module.status.${_}`,_==="all"?"All":_.charAt(0).toUpperCase()+_.slice(1)),e.jsx("span",{className:"nice-module-panel__filter-count",children:N[_]??0})]},_))})]}),e.jsx("div",{className:`nice-module-panel__grid nice-module-panel__grid--${r}`,style:r==="grid"?{gridTemplateColumns:`repeat(${c}, 1fr)`}:void 0,children:g.length===0?e.jsx("div",{className:"nice-module-panel__empty",children:w("module.empty","No modules found")}):g.map(_=>e.jsx(Bn,{module:_,onAction:R=>z(_.id,R),onClick:u?()=>u(_):void 0,showDependencies:t,showAuthor:m,showVersion:o,processing:h?.has(_.id)??!1,disabled:S,readOnly:L,t:w,layout:r},_.id))}),e.jsxs("div",{className:"nice-module-panel__summary",children:[w("module.total","Total"),": ",n.length," ·",w("module.status.active","Active"),": ",N.active??0," ·",w("module.status.disabled","Disabled"),": ",N.disabled??0," ·",w("module.status.error","Error"),": ",N.error??0]})]})});an.displayName="NiceModuleLifecyclePanel";exports.DEFAULT_SIDEBAR_PREFS=ye;exports.DesktopContextMenu=Re;exports.DesktopGrid=Le;exports.DesktopStartMenu=Ee;exports.DesktopSystemTray=Ae;exports.DesktopTaskbar=ge;exports.NiceAccordion=on;exports.NiceAppLayout=ze;exports.NiceBottomNavigation=De;exports.NiceBreadcrumb=dn;exports.NiceCard=mn;exports.NiceClassicShell=qe;exports.NiceCompactShell=Je;exports.NiceConsole=Ye;exports.NiceContextMenu=bn;exports.NiceDashboardLayout=Me;exports.NiceDashboardShell=Ge;exports.NiceDesktop=Oe;exports.NiceDock=Ie;exports.NiceDynamicSidebar=Ke;exports.NiceKioskShell=Ze;exports.NiceMdiWorkspace=Xe;exports.NiceMegaMenu=Te;exports.NiceMenu=$e;exports.NiceModeSelector=en;exports.NiceModuleLifecyclePanel=an;exports.NiceMultiView=hn;exports.NiceNavbar=Pe;exports.NiceOnboardingWizard=nn;exports.NiceOrganizationProfileForm=sn;exports.NicePagination=_n;exports.NiceSetupWizard=Be;exports.NiceSidebarNav=An;exports.NiceSplitter=xn;exports.NiceTabPanel=pn;exports.NiceTabs=rn;exports.NiceTenantSwitcher=Ue;exports.NiceToolbar=Nn;exports.NiceUserMenu=Ve;exports.NiceWizard=Fe;exports.SIDEBAR_MODE_META=be;exports.useSetupWizard=jn;
|