@net-advantage/nabs-ui-shell 0.59.0 → 0.60.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -4,6 +4,7 @@ export { Branding } from './Branding';
4
4
  export type { BrandingProps } from './Branding.types';
5
5
  export * from '@net-advantage/nabs-ui-accordion';
6
6
  export * from '@net-advantage/nabs-ui-avatar';
7
+ export * from '@net-advantage/nabs-ui-breadcrumb';
7
8
  export * from '@net-advantage/nabs-ui-buttons';
8
9
  export * from '@net-advantage/nabs-ui-cards';
9
10
  export * from '@net-advantage/nabs-ui-charts';
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("react"),t=require("@net-advantage/nabs-ui-layout"),n=require("react/jsx-runtime");var r=(0,e.forwardRef)(({header:e,navigation:r,footer:i,children:a,className:o=``,headerClassName:s=``,navigationClassName:c=``,contentClassName:l=``,footerClassName:u=``,...d},f)=>{let p=[`nabs-ui-shell`,o].filter(Boolean).join(` `),m=[`nabs-ui-shell__header`,s].filter(Boolean).join(` `),h=[`nabs-ui-shell__navigation`,c].filter(Boolean).join(` `),g=[`nabs-ui-shell__content`,l].filter(Boolean).join(` `),_=[`nabs-ui-shell__footer`,u].filter(Boolean).join(` `);return(0,n.jsx)(`div`,{ref:f,className:p,...d,children:(0,n.jsx)(t.Layout,{className:`nabs-ui-shell__layout`,header:e,footer:i,leftSidePanel:r,headerClassName:m,footerClassName:_,leftSidePanelClassName:h,contentClassName:g,children:a})})});r.displayName=`Shell`;var i=(0,e.forwardRef)(function({logo:e,title:t,byline:r,className:i=``,...a},o){return(0,n.jsxs)(`div`,{ref:o,className:[`nabs-ui-branding`,i].filter(Boolean).join(` `),...a,children:[(0,n.jsx)(`div`,{className:`nabs-ui-branding__logo`,"aria-hidden":`true`,children:e}),(0,n.jsxs)(`div`,{className:`nabs-ui-branding__text`,children:[(0,n.jsx)(`strong`,{className:`nabs-ui-branding__title`,children:t}),(0,n.jsx)(`span`,{className:`nabs-ui-branding__byline`,children:r})]})]})});i.displayName=`Branding`;var a={leftPadding:44,rightPadding:18,plotTop:14,plotHeight:104,itemStep:56,barWidthMax:18,barGroupScale:.72,barGap:2,xLabelOffset:18,axisLabelOffset:40,legendOffset:20,legendItemGap:14,legendSampleWidth:12,legendTextGap:6,legendMarkerRadius:2,legendApproxCharWidth:5.8,svgBottomPadding:8},o={line:`nabs-ui-charts--line`,bar:`nabs-ui-charts--bar`};function s(e){return Number.isFinite(e)?Math.max(0,Math.floor(e??0)):8}function c(e){if(typeof e==`number`&&Number.isFinite(e))return e;if(typeof e==`string`){let t=Number(e);if(Number.isFinite(t))return t}return 0}function l(e,t){return c(e[t])}function u(e){return!Number.isFinite(e)||(e??0)<=0?5:Math.abs(e??5)}function d(e,t,n){return Math.min(n,Math.max(t,e))}function f(e){return Number(e.toFixed(6))}function p(e,t,n){let r=[];if(n?.length)for(let e of n){let t=String(e??``).trim();!t||r.includes(t)||r.push(t)}let i=String(t??``).trim();if(i&&!r.includes(i)&&r.push(i),r.length===0&&e.length>0){let t=e[0];for(let e of Object.keys(t)){if(e===`yAxis`)continue;let n=t[e],i=c(n);if(Number.isFinite(i)&&r.push(e),r.length>=10)break}}return r.slice(0,10)}function m(e,t,n,r){let i=e+t,a=Number.isFinite(n)?n:0,o=Number.isFinite(r)?r:i;return o<=a?{axisMin:a,axisMax:a+1}:{axisMin:a,axisMax:o}}function h(e,t,n){let r=[e],i=n/1e3,a=0;for(let o=e+n;o<=t+i&&!(a>5e3);o+=n){let e=f(o);if(e>=t)break;r.push(e),a+=1}return r[r.length-1]!==t&&r.push(t),r}function g(e,t,n){if(e.length<=1)return[];let r=e.map(e=>a.legendSampleWidth+a.legendTextGap+e.length*a.legendApproxCharWidth),i=t-(r.reduce((e,t)=>e+t,0)+Math.max(0,e.length-1)*a.legendItemGap)/2;return e.map((e,t)=>{let n=r[t]??0,o=i,s=o+a.legendSampleWidth,c=o+a.legendSampleWidth/2,l=s+a.legendTextGap;return i+=n+a.legendItemGap,{id:`legend-${e}`,label:e,colorIndex:t,sampleX1:o,sampleX2:s,markerX:c,textX:l}})}function _(e,t){let n=[];for(let r of e)r!==e[0]&&n.push({id:`guide-${r}`,value:r,y:t(r)});return n}function v(e,t){return e.map(e=>({id:`tick-${e}`,value:e,y:t(e)}))}function y(e,t,n,r,i,o,s,c){let f=p(e,t,n),y=f.flatMap(t=>e.map(e=>l(e,t))),{axisMin:b,axisMax:x}=m(Math.max(0,...y),i,o,s),S=Math.max(1,x-b),C=u(c),w=Math.max(1,e.length)*a.itemStep,T=a.leftPadding,E=T+w,D=a.plotTop,O=D+a.plotHeight,k=T+w+a.rightPadding,A=O,j=O+a.xLabelOffset,M=O+a.axisLabelOffset,N=M+a.legendOffset,P=r&&f.length>1,F=P?N+a.svgBottomPadding:M+a.svgBottomPadding,I=e=>D+(x-e)/S*a.plotHeight,L=h(b,x,C),R=_(L,I),z=v(L,I),B=e.map((e,t)=>{let n=T+t*a.itemStep+a.itemStep/2;return{id:`category-${e.yAxis}-${t}`,label:e.yAxis,x:n}}),V=f.map((t,n)=>{let r=B.map((n,r)=>{let i=e[r],a=l(i,t),o=I(d(a,b,x));return{id:`${t}-${n.id}`,label:n.label,value:a,x:n.x,y:o}});return{id:`series-${t}`,key:t,colorIndex:n,points:r}}),H=B.map(e=>({id:`v-guide-${e.id}`,x:e.x})),U=P?g(f,k/2,N):[],W=Math.max(1,V.length),G=a.itemStep*a.barGroupScale,K=a.barGap;return{valueKeys:f,categoryTicks:B,seriesModels:V,guides:R,verticalGuides:H,yTicks:z,legendItems:U,svgHeight:F,svgWidth:k,barWidth:Math.max(2,Math.min(a.barWidthMax,(G-Math.max(0,W-1)*K)/W)),barGap:K,plotLeft:T,plotRight:E,plotTop:D,plotBottom:O,xAxisY:A,xAxisLabelY:j,axisNameY:M,legendY:N}}function b(e){return e.map(e=>`${e.x},${e.y}`).join(` `)}function x(...e){return e.filter(Boolean).join(` `)}var S=(0,e.forwardRef)(function({className:t=``,series:r,valueName:i,valueNames:c,palette:l,chartType:u=`line`,topSpace:d=8,yAxisMin:f,yAxisMax:p,yAxisInterval:m,xAxisName:h=``,showXAxisName:g=!0,showLegend:_=!0,minPointHeight:v=2,style:S,...C},w){let T=s(d),E=(0,e.useMemo)(()=>y(r,i,c,_,T,f,p,m),[T,r,_,i,c,m,p,f]),D=(0,e.useMemo)(()=>{if(!l||l.length===0)return;let e={};for(let t=0;t<Math.min(10,l.length);t+=1){let n=String(l[t]??``).trim();n&&(e[`--nabs-ui-charts-series-inline-${t+1}`]=n)}return Object.keys(e).length>0?e:void 0},[l]),O=D?{...D,...S}:S,k=x(`nabs-ui-charts`,o[u],t),A=g&&h.trim().length>0,j=E.valueKeys.length>0?E.valueKeys.join(`, `):String(i??`value`);return(0,n.jsx)(`div`,{ref:w,className:k,style:O,...C,children:(0,n.jsxs)(`svg`,{className:`nabs-ui-charts__svg`,viewBox:`0 0 ${E.svgWidth} ${E.svgHeight}`,role:`img`,"aria-label":`2D ${u} chart for ${j}`,preserveAspectRatio:`xMidYMid meet`,children:[(0,n.jsx)(`rect`,{className:`nabs-ui-charts__plotBoundary`,x:E.plotLeft,y:E.plotTop,width:E.plotRight-E.plotLeft,height:E.plotBottom-E.plotTop}),E.verticalGuides.map(e=>(0,n.jsx)(`line`,{className:`nabs-ui-charts__guide`,x1:e.x,y1:E.plotTop,x2:e.x,y2:E.plotBottom},e.id)),E.guides.map(e=>(0,n.jsx)(`line`,{className:`nabs-ui-charts__guide`,x1:E.plotLeft,y1:e.y,x2:E.plotRight,y2:e.y},e.id)),E.yTicks.map(e=>(0,n.jsx)(`text`,{className:`nabs-ui-charts__yTickLabel`,x:E.plotLeft-6,y:e.y,children:e.value},e.id)),(0,n.jsx)(`line`,{className:`nabs-ui-charts__axis`,x1:E.plotLeft,y1:E.xAxisY,x2:E.plotRight,y2:E.xAxisY}),u===`line`?E.seriesModels.map(e=>{let t=x(`nabs-ui-charts__line`,`nabs-ui-charts__series-color-${e.colorIndex}`),r=x(`nabs-ui-charts__point`,`nabs-ui-charts__series-color-${e.colorIndex}`);return(0,n.jsxs)(`g`,{children:[e.points.length>1?(0,n.jsx)(`polyline`,{className:t,points:b(e.points)}):null,e.points.map(t=>(0,n.jsx)(`circle`,{className:r,cx:t.x,cy:t.y,r:1.5,children:(0,n.jsx)(`title`,{children:`${t.label} • ${e.key}: ${t.value}`})},t.id))]},e.id)}):E.categoryTicks.map((e,t)=>{let r=Math.max(1,E.seriesModels.length),i=r*E.barWidth+Math.max(0,r-1)*E.barGap,a=e.x-i/2;return(0,n.jsx)(`g`,{children:E.seriesModels.map((r,i)=>{let o=r.points[t];if(!o)return null;let s=Math.max(E.xAxisY-o.y,v),c=E.xAxisY-s,l=a+i*(E.barWidth+E.barGap);return(0,n.jsx)(`rect`,{className:x(`nabs-ui-charts__bar`,`nabs-ui-charts__series-color-${r.colorIndex}`),x:l,y:c,width:E.barWidth,height:s,rx:1.5,ry:1.5,children:(0,n.jsx)(`title`,{children:`${e.label} • ${r.key}: ${o.value}`})},`${r.id}-${o.id}`)})},`bars-${e.id}`)}),E.categoryTicks.map(e=>(0,n.jsx)(`text`,{className:`nabs-ui-charts__tickLabel`,x:e.x,y:E.xAxisLabelY,children:e.label},`${e.id}-label`)),A?(0,n.jsx)(`text`,{className:`nabs-ui-charts__axisName`,x:E.svgWidth/2,y:E.axisNameY,children:h}):null,E.legendItems.map(e=>{let t=x(`nabs-ui-charts__legendSample`,`nabs-ui-charts__series-color-${e.colorIndex}`);return(0,n.jsxs)(`g`,{children:[(0,n.jsx)(`line`,{className:t,x1:e.sampleX1,y1:E.legendY,x2:e.sampleX2,y2:E.legendY}),(0,n.jsx)(`circle`,{className:t,cx:e.markerX,cy:E.legendY,r:a.legendMarkerRadius}),(0,n.jsx)(`text`,{className:`nabs-ui-charts__legendLabel`,x:e.textX,y:E.legendY,children:e.label})]},e.id)})]})})});S.displayName=`2DChart`,exports.Branding=i,exports.Shell=r,exports.TwoDChart=S;var C=require("@net-advantage/nabs-ui-accordion");Object.keys(C).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return C[e]}})});var w=require("@net-advantage/nabs-ui-avatar");Object.keys(w).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return w[e]}})});var T=require("@net-advantage/nabs-ui-buttons");Object.keys(T).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return T[e]}})});var E=require("@net-advantage/nabs-ui-cards");Object.keys(E).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return E[e]}})});var D=require("@net-advantage/nabs-ui-checkbox");Object.keys(D).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return D[e]}})});var O=require("@net-advantage/nabs-ui-code");Object.keys(O).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return O[e]}})});var k=require("@net-advantage/nabs-ui-combobox");Object.keys(k).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return k[e]}})});var A=require("@net-advantage/nabs-ui-datepicker");Object.keys(A).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return A[e]}})});var j=require("@net-advantage/nabs-ui-dialog");Object.keys(j).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return j[e]}})});var M=require("@net-advantage/nabs-ui-dropdownlist");Object.keys(M).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return M[e]}})});var N=require("@net-advantage/nabs-ui-dropdownmenu");Object.keys(N).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return N[e]}})});var P=require("@net-advantage/nabs-ui-dynamicform");Object.keys(P).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return P[e]}})});var F=require("@net-advantage/nabs-ui-fileupload");Object.keys(F).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return F[e]}})});var I=require("@net-advantage/nabs-ui-graph");Object.keys(I).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return I[e]}})});var L=require("@net-advantage/nabs-ui-grid");Object.keys(L).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return L[e]}})}),Object.keys(t).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return t[e]}})});var R=require("@net-advantage/nabs-ui-markdown");Object.keys(R).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return R[e]}})});var z=require("@net-advantage/nabs-ui-navigation");Object.keys(z).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return z[e]}})});var B=require("@net-advantage/nabs-ui-panel");Object.keys(B).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return B[e]}})});var V=require("@net-advantage/nabs-ui-radiobutton");Object.keys(V).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return V[e]}})});var H=require("@net-advantage/nabs-ui-signature");Object.keys(H).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return H[e]}})});var U=require("@net-advantage/nabs-ui-slider");Object.keys(U).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return U[e]}})});var W=require("@net-advantage/nabs-ui-stepper");Object.keys(W).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return W[e]}})});var G=require("@net-advantage/nabs-ui-tab");Object.keys(G).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return G[e]}})});var K=require("@net-advantage/nabs-ui-textarea");Object.keys(K).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return K[e]}})});var q=require("@net-advantage/nabs-ui-textbox");Object.keys(q).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return q[e]}})});var J=require("@net-advantage/nabs-ui-toolbar");Object.keys(J).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return J[e]}})});
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("react"),t=require("@net-advantage/nabs-ui-layout"),n=require("react/jsx-runtime");var r=(0,e.forwardRef)(({header:e,navigation:r,footer:i,children:a,className:o=``,headerClassName:s=``,navigationClassName:c=``,contentClassName:l=``,footerClassName:u=``,...d},f)=>{let p=[`nabs-ui-shell`,o].filter(Boolean).join(` `),m=[`nabs-ui-shell__header`,s].filter(Boolean).join(` `),h=[`nabs-ui-shell__navigation`,c].filter(Boolean).join(` `),g=[`nabs-ui-shell__content`,l].filter(Boolean).join(` `),_=[`nabs-ui-shell__footer`,u].filter(Boolean).join(` `);return(0,n.jsx)(`div`,{ref:f,className:p,...d,children:(0,n.jsx)(t.Layout,{className:`nabs-ui-shell__layout`,header:e,footer:i,leftSidePanel:r,headerClassName:m,footerClassName:_,leftSidePanelClassName:h,contentClassName:g,children:a})})});r.displayName=`Shell`;var i=(0,e.forwardRef)(function({logo:e,title:t,byline:r,className:i=``,...a},o){return(0,n.jsxs)(`div`,{ref:o,className:[`nabs-ui-branding`,i].filter(Boolean).join(` `),...a,children:[(0,n.jsx)(`div`,{className:`nabs-ui-branding__logo`,"aria-hidden":`true`,children:e}),(0,n.jsxs)(`div`,{className:`nabs-ui-branding__text`,children:[(0,n.jsx)(`strong`,{className:`nabs-ui-branding__title`,children:t}),(0,n.jsx)(`span`,{className:`nabs-ui-branding__byline`,children:r})]})]})});i.displayName=`Branding`;function a(e){return e.button===0&&!e.metaKey&&!e.ctrlKey&&!e.shiftKey&&!e.altKey}function o(){return`Home`}function s(e){return{id:`__home__`,label:e?.label??o(),href:e?.href,path:e?.path,disabled:e?.disabled}}function c(e,t,n){return t?[s(n),...e]:e}function l(){return(0,n.jsxs)(`svg`,{className:`nabs-ui-breadcrumb__homeIcon`,viewBox:`0 0 24 24`,fill:`none`,"aria-hidden":`true`,focusable:`false`,children:[(0,n.jsx)(`path`,{d:`M3 11.5L12 4L21 11.5`,stroke:`currentColor`,strokeWidth:`1.8`,strokeLinecap:`round`,strokeLinejoin:`round`}),(0,n.jsx)(`path`,{d:`M6.5 10V20H17.5V10`,stroke:`currentColor`,strokeWidth:`1.8`,strokeLinecap:`round`,strokeLinejoin:`round`})]})}var u=(0,e.forwardRef)(function({items:e=[],showHome:t=!0,home:r,separator:i=`/`,lastItemClickable:o=!1,className:s=``,itemClassName:u=``,onItemSelect:d,...f},p){let m=c(e,t,r);return(0,n.jsx)(`nav`,{ref:p,className:[`nabs-ui-breadcrumb`,s].filter(Boolean).join(` `),"aria-label":`Breadcrumb`,...f,children:(0,n.jsx)(`ol`,{className:`nabs-ui-breadcrumb__list`,children:m.map((e,s)=>{let c=s===m.length-1,f=c&&!o,p=typeof e.path==`string`&&e.path.trim().length>0,h=typeof e.href==`string`&&e.href.trim().length>0,g=p?e.path:h?e.href:void 0,_=[`nabs-ui-breadcrumb__item`,f?`nabs-ui-breadcrumb__item--current`:``,e.disabled?`nabs-ui-breadcrumb__item--disabled`:``,u].filter(Boolean).join(` `),v=t=>{if(e.disabled||f){t.preventDefault();return}d?.({itemId:e.id,item:e,event:t}),!t.defaultPrevented&&(!p||typeof window>`u`||!a(t)||(t.preventDefault(),window.history.pushState({},``,e.path),window.dispatchEvent(new PopStateEvent(`popstate`,{state:window.history.state}))))},y=(0,n.jsxs)(n.Fragment,{children:[s===0&&t?r?.icon??(0,n.jsx)(l,{}):null,(0,n.jsx)(`span`,{className:`nabs-ui-breadcrumb__itemLabel`,children:e.label})]});return(0,n.jsxs)(`li`,{className:`nabs-ui-breadcrumb__entry`,children:[g&&!f?(0,n.jsx)(`a`,{className:_,href:g,onClick:v,children:y}):(0,n.jsx)(`button`,{type:`button`,className:_,disabled:e.disabled||f,"aria-current":f?`page`:void 0,onClick:v,children:y}),c?null:(0,n.jsx)(`span`,{className:`nabs-ui-breadcrumb__separator`,children:i})]},e.id)})})})});u.displayName=`Breadcrumb`;var d={leftPadding:44,rightPadding:18,plotTop:14,plotHeight:104,itemStep:56,barWidthMax:18,barGroupScale:.72,barGap:2,xLabelOffset:18,axisLabelOffset:40,legendOffset:20,legendItemGap:14,legendSampleWidth:12,legendTextGap:6,legendMarkerRadius:2,legendApproxCharWidth:5.8,svgBottomPadding:8},f={line:`nabs-ui-charts--line`,bar:`nabs-ui-charts--bar`};function p(e){return Number.isFinite(e)?Math.max(0,Math.floor(e??0)):8}function m(e){if(typeof e==`number`&&Number.isFinite(e))return e;if(typeof e==`string`){let t=Number(e);if(Number.isFinite(t))return t}return 0}function h(e,t){return m(e[t])}function g(e){return!Number.isFinite(e)||(e??0)<=0?5:Math.abs(e??5)}function _(e,t,n){return Math.min(n,Math.max(t,e))}function v(e){return Number(e.toFixed(6))}function y(e,t,n){let r=[];if(n?.length)for(let e of n){let t=String(e??``).trim();!t||r.includes(t)||r.push(t)}let i=String(t??``).trim();if(i&&!r.includes(i)&&r.push(i),r.length===0&&e.length>0){let t=e[0];for(let e of Object.keys(t)){if(e===`yAxis`)continue;let n=t[e],i=m(n);if(Number.isFinite(i)&&r.push(e),r.length>=10)break}}return r.slice(0,10)}function b(e,t,n,r){let i=e+t,a=Number.isFinite(n)?n:0,o=Number.isFinite(r)?r:i;return o<=a?{axisMin:a,axisMax:a+1}:{axisMin:a,axisMax:o}}function x(e,t,n){let r=[e],i=n/1e3,a=0;for(let o=e+n;o<=t+i&&!(a>5e3);o+=n){let e=v(o);if(e>=t)break;r.push(e),a+=1}return r[r.length-1]!==t&&r.push(t),r}function S(e,t,n){if(e.length<=1)return[];let r=e.map(e=>d.legendSampleWidth+d.legendTextGap+e.length*d.legendApproxCharWidth),i=t-(r.reduce((e,t)=>e+t,0)+Math.max(0,e.length-1)*d.legendItemGap)/2;return e.map((e,t)=>{let n=r[t]??0,a=i,o=a+d.legendSampleWidth,s=a+d.legendSampleWidth/2,c=o+d.legendTextGap;return i+=n+d.legendItemGap,{id:`legend-${e}`,label:e,colorIndex:t,sampleX1:a,sampleX2:o,markerX:s,textX:c}})}function C(e,t){let n=[];for(let r of e)r!==e[0]&&n.push({id:`guide-${r}`,value:r,y:t(r)});return n}function w(e,t){return e.map(e=>({id:`tick-${e}`,value:e,y:t(e)}))}function T(e,t,n,r,i,a,o,s){let c=y(e,t,n),l=c.flatMap(t=>e.map(e=>h(e,t))),{axisMin:u,axisMax:f}=b(Math.max(0,...l),i,a,o),p=Math.max(1,f-u),m=g(s),v=Math.max(1,e.length)*d.itemStep,T=d.leftPadding,E=T+v,D=d.plotTop,O=D+d.plotHeight,k=T+v+d.rightPadding,A=O,j=O+d.xLabelOffset,M=O+d.axisLabelOffset,N=M+d.legendOffset,P=r&&c.length>1,F=P?N+d.svgBottomPadding:M+d.svgBottomPadding,I=e=>D+(f-e)/p*d.plotHeight,L=x(u,f,m),R=C(L,I),z=w(L,I),B=e.map((e,t)=>{let n=T+t*d.itemStep+d.itemStep/2;return{id:`category-${e.yAxis}-${t}`,label:e.yAxis,x:n}}),V=c.map((t,n)=>{let r=B.map((n,r)=>{let i=e[r],a=h(i,t),o=I(_(a,u,f));return{id:`${t}-${n.id}`,label:n.label,value:a,x:n.x,y:o}});return{id:`series-${t}`,key:t,colorIndex:n,points:r}}),H=B.map(e=>({id:`v-guide-${e.id}`,x:e.x})),U=P?S(c,k/2,N):[],W=Math.max(1,V.length),G=d.itemStep*d.barGroupScale,K=d.barGap;return{valueKeys:c,categoryTicks:B,seriesModels:V,guides:R,verticalGuides:H,yTicks:z,legendItems:U,svgHeight:F,svgWidth:k,barWidth:Math.max(2,Math.min(d.barWidthMax,(G-Math.max(0,W-1)*K)/W)),barGap:K,plotLeft:T,plotRight:E,plotTop:D,plotBottom:O,xAxisY:A,xAxisLabelY:j,axisNameY:M,legendY:N}}function E(e){return e.map(e=>`${e.x},${e.y}`).join(` `)}function D(...e){return e.filter(Boolean).join(` `)}var O=(0,e.forwardRef)(function({className:t=``,series:r,valueName:i,valueNames:a,palette:o,chartType:s=`line`,topSpace:c=8,yAxisMin:l,yAxisMax:u,yAxisInterval:m,xAxisName:h=``,showXAxisName:g=!0,showLegend:_=!0,minPointHeight:v=2,style:y,...b},x){let S=p(c),C=(0,e.useMemo)(()=>T(r,i,a,_,S,l,u,m),[S,r,_,i,a,m,u,l]),w=(0,e.useMemo)(()=>{if(!o||o.length===0)return;let e={};for(let t=0;t<Math.min(10,o.length);t+=1){let n=String(o[t]??``).trim();n&&(e[`--nabs-ui-charts-series-inline-${t+1}`]=n)}return Object.keys(e).length>0?e:void 0},[o]),O=w?{...w,...y}:y,k=D(`nabs-ui-charts`,f[s],t),A=g&&h.trim().length>0,j=C.valueKeys.length>0?C.valueKeys.join(`, `):String(i??`value`);return(0,n.jsx)(`div`,{ref:x,className:k,style:O,...b,children:(0,n.jsxs)(`svg`,{className:`nabs-ui-charts__svg`,viewBox:`0 0 ${C.svgWidth} ${C.svgHeight}`,role:`img`,"aria-label":`2D ${s} chart for ${j}`,preserveAspectRatio:`xMidYMid meet`,children:[(0,n.jsx)(`rect`,{className:`nabs-ui-charts__plotBoundary`,x:C.plotLeft,y:C.plotTop,width:C.plotRight-C.plotLeft,height:C.plotBottom-C.plotTop}),C.verticalGuides.map(e=>(0,n.jsx)(`line`,{className:`nabs-ui-charts__guide`,x1:e.x,y1:C.plotTop,x2:e.x,y2:C.plotBottom},e.id)),C.guides.map(e=>(0,n.jsx)(`line`,{className:`nabs-ui-charts__guide`,x1:C.plotLeft,y1:e.y,x2:C.plotRight,y2:e.y},e.id)),C.yTicks.map(e=>(0,n.jsx)(`text`,{className:`nabs-ui-charts__yTickLabel`,x:C.plotLeft-6,y:e.y,children:e.value},e.id)),(0,n.jsx)(`line`,{className:`nabs-ui-charts__axis`,x1:C.plotLeft,y1:C.xAxisY,x2:C.plotRight,y2:C.xAxisY}),s===`line`?C.seriesModels.map(e=>{let t=D(`nabs-ui-charts__line`,`nabs-ui-charts__series-color-${e.colorIndex}`),r=D(`nabs-ui-charts__point`,`nabs-ui-charts__series-color-${e.colorIndex}`);return(0,n.jsxs)(`g`,{children:[e.points.length>1?(0,n.jsx)(`polyline`,{className:t,points:E(e.points)}):null,e.points.map(t=>(0,n.jsx)(`circle`,{className:r,cx:t.x,cy:t.y,r:1.5,children:(0,n.jsx)(`title`,{children:`${t.label} • ${e.key}: ${t.value}`})},t.id))]},e.id)}):C.categoryTicks.map((e,t)=>{let r=Math.max(1,C.seriesModels.length),i=r*C.barWidth+Math.max(0,r-1)*C.barGap,a=e.x-i/2;return(0,n.jsx)(`g`,{children:C.seriesModels.map((r,i)=>{let o=r.points[t];if(!o)return null;let s=Math.max(C.xAxisY-o.y,v),c=C.xAxisY-s,l=a+i*(C.barWidth+C.barGap);return(0,n.jsx)(`rect`,{className:D(`nabs-ui-charts__bar`,`nabs-ui-charts__series-color-${r.colorIndex}`),x:l,y:c,width:C.barWidth,height:s,rx:1.5,ry:1.5,children:(0,n.jsx)(`title`,{children:`${e.label} • ${r.key}: ${o.value}`})},`${r.id}-${o.id}`)})},`bars-${e.id}`)}),C.categoryTicks.map(e=>(0,n.jsx)(`text`,{className:`nabs-ui-charts__tickLabel`,x:e.x,y:C.xAxisLabelY,children:e.label},`${e.id}-label`)),A?(0,n.jsx)(`text`,{className:`nabs-ui-charts__axisName`,x:C.svgWidth/2,y:C.axisNameY,children:h}):null,C.legendItems.map(e=>{let t=D(`nabs-ui-charts__legendSample`,`nabs-ui-charts__series-color-${e.colorIndex}`);return(0,n.jsxs)(`g`,{children:[(0,n.jsx)(`line`,{className:t,x1:e.sampleX1,y1:C.legendY,x2:e.sampleX2,y2:C.legendY}),(0,n.jsx)(`circle`,{className:t,cx:e.markerX,cy:C.legendY,r:d.legendMarkerRadius}),(0,n.jsx)(`text`,{className:`nabs-ui-charts__legendLabel`,x:e.textX,y:C.legendY,children:e.label})]},e.id)})]})})});O.displayName=`2DChart`;var k={svgWidth:400,svgHeight:180,centerX:88,centerY:90,radius:56,donutInnerRadius:30,legendStartX:172,legendStartY:40,legendItemHeight:18,legendSwatchSize:7,legendTextGap:6};function A(e){let t=m(e);return t>0?t:0}function j(e,t){let n=e.map((e,n)=>{let r=String(e.yAxis??`Slice ${n+1}`).trim()||`Slice ${n+1}`,i=A(e[t]);return{id:`slice-${r}-${n}`,label:r,value:i,colorIndex:n%10}}),r=n.reduce((e,t)=>e+t.value,0);if(r<=0)return[];let i=-Math.PI/2;return n.map(e=>{let t=e.value/r,n=i;return i+=t*Math.PI*2,{...e,ratio:t,startAngle:n,endAngle:i}})}function M(e,t,n,r){return{x:e+n*Math.cos(r),y:t+n*Math.sin(r)}}function N(e,t,n){let r=e,i=t-n,a=e,o=t+n;return[`M ${e} ${t}`,`L ${r} ${i}`,`A ${n} ${n} 0 1 1 ${a} ${o}`,`A ${n} ${n} 0 1 1 ${r} ${i}`,`Z`].join(` `)}function P(e,t,n,r){let i=e,a=t-n,o=e,s=t+n,c=e,l=t-r,u=e,d=t+r;return[`M ${i} ${a}`,`A ${n} ${n} 0 1 1 ${o} ${s}`,`A ${n} ${n} 0 1 1 ${i} ${a}`,`L ${c} ${l}`,`A ${r} ${r} 0 1 0 ${u} ${d}`,`A ${r} ${r} 0 1 0 ${c} ${l}`,`Z`].join(` `)}function F(e,t,n,r,i,a){if(e.ratio>=.999999)return t===`donut`?P(n,r,i,a):N(n,r,i);let o=+(e.endAngle-e.startAngle>Math.PI),s=M(n,r,i,e.startAngle),c=M(n,r,i,e.endAngle);if(t===`pie`)return[`M ${n} ${r}`,`L ${s.x} ${s.y}`,`A ${i} ${i} 0 ${o} 1 ${c.x} ${c.y}`,`Z`].join(` `);let l=M(n,r,a,e.startAngle),u=M(n,r,a,e.endAngle);return[`M ${s.x} ${s.y}`,`A ${i} ${i} 0 ${o} 1 ${c.x} ${c.y}`,`L ${u.x} ${u.y}`,`A ${a} ${a} 0 ${o} 0 ${l.x} ${l.y}`,`Z`].join(` `)}var I=(0,e.forwardRef)(function({className:t=``,series:r,valueName:i,palette:a,chartType:o=`pie`,showLegend:s=!0,style:c,...l},u){let d=(0,e.useMemo)(()=>j(r,i),[r,i]),f=(0,e.useMemo)(()=>{if(!a||a.length===0)return;let e={};for(let t=0;t<Math.min(10,a.length);t+=1){let n=String(a[t]??``).trim();n&&(e[`--nabs-ui-charts-series-inline-${t+1}`]=n)}return Object.keys(e).length>0?e:void 0},[a]);return(0,n.jsx)(`div`,{ref:u,className:D(`nabs-ui-charts`,`nabs-ui-charts--pie`,`nabs-ui-charts--${o}`,t),style:f?{...f,...c}:c,...l,children:(0,n.jsxs)(`svg`,{className:`nabs-ui-charts__svg`,viewBox:`0 0 ${k.svgWidth} ${k.svgHeight}`,role:`img`,"aria-label":`${o} chart for ${i}`,preserveAspectRatio:`xMidYMid meet`,children:[d.length>0?d.map(e=>{let t=F(e,o,k.centerX,k.centerY,k.radius,k.donutInnerRadius);return(0,n.jsx)(`path`,{className:D(`nabs-ui-charts__pieSlice`,`nabs-ui-charts__series-color-${e.colorIndex}`),d:t,children:(0,n.jsx)(`title`,{children:`${e.label}: ${e.value}`})},e.id)}):null,s?d.map((e,t)=>{let r=k.legendStartY+t*k.legendItemHeight,i=D(`nabs-ui-charts__legendSwatch`,`nabs-ui-charts__series-color-${e.colorIndex}`),a=r-k.legendSwatchSize/2,o=k.legendStartX+k.legendSwatchSize+k.legendTextGap;return(0,n.jsxs)(`g`,{children:[(0,n.jsx)(`rect`,{className:i,x:k.legendStartX,y:a,width:k.legendSwatchSize,height:k.legendSwatchSize,rx:1,ry:1}),(0,n.jsx)(`text`,{className:`nabs-ui-charts__legendLabel`,x:o,y:r,children:`${e.label} (${Math.round(e.ratio*100)}%)`})]},`legend-${e.id}`)}):null,d.length===0?(0,n.jsx)(`text`,{className:`nabs-ui-charts__legendLabel`,x:k.centerX,y:k.centerY,textAnchor:`middle`,children:`No data`}):null]})})});I.displayName=`PieChart`,exports.Branding=i,exports.Breadcrumb=u,exports.PieChart=I,exports.Shell=r,exports.TwoDChart=O;var L=require("@net-advantage/nabs-ui-accordion");Object.keys(L).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return L[e]}})});var R=require("@net-advantage/nabs-ui-avatar");Object.keys(R).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return R[e]}})});var z=require("@net-advantage/nabs-ui-buttons");Object.keys(z).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return z[e]}})});var B=require("@net-advantage/nabs-ui-cards");Object.keys(B).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return B[e]}})});var V=require("@net-advantage/nabs-ui-checkbox");Object.keys(V).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return V[e]}})});var H=require("@net-advantage/nabs-ui-code");Object.keys(H).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return H[e]}})});var U=require("@net-advantage/nabs-ui-combobox");Object.keys(U).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return U[e]}})});var W=require("@net-advantage/nabs-ui-datepicker");Object.keys(W).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return W[e]}})});var G=require("@net-advantage/nabs-ui-dialog");Object.keys(G).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return G[e]}})});var K=require("@net-advantage/nabs-ui-dropdownlist");Object.keys(K).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return K[e]}})});var q=require("@net-advantage/nabs-ui-dropdownmenu");Object.keys(q).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return q[e]}})});var J=require("@net-advantage/nabs-ui-dynamicform");Object.keys(J).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return J[e]}})});var Y=require("@net-advantage/nabs-ui-fileupload");Object.keys(Y).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return Y[e]}})});var X=require("@net-advantage/nabs-ui-graph");Object.keys(X).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return X[e]}})});var Z=require("@net-advantage/nabs-ui-grid");Object.keys(Z).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return Z[e]}})}),Object.keys(t).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return t[e]}})});var Q=require("@net-advantage/nabs-ui-markdown");Object.keys(Q).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return Q[e]}})});var $=require("@net-advantage/nabs-ui-navigation");Object.keys($).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return $[e]}})});var ee=require("@net-advantage/nabs-ui-panel");Object.keys(ee).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return ee[e]}})});var te=require("@net-advantage/nabs-ui-radiobutton");Object.keys(te).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return te[e]}})});var ne=require("@net-advantage/nabs-ui-signature");Object.keys(ne).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return ne[e]}})});var re=require("@net-advantage/nabs-ui-slider");Object.keys(re).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return re[e]}})});var ie=require("@net-advantage/nabs-ui-stepper");Object.keys(ie).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return ie[e]}})});var ae=require("@net-advantage/nabs-ui-tab");Object.keys(ae).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return ae[e]}})});var oe=require("@net-advantage/nabs-ui-textarea");Object.keys(oe).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return oe[e]}})});var se=require("@net-advantage/nabs-ui-textbox");Object.keys(se).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return se[e]}})});var ce=require("@net-advantage/nabs-ui-toolbar");Object.keys(ce).forEach(function(e){e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return ce[e]}})});
@@ -111,9 +111,10 @@
111
111
  }
112
112
  .nabs-ui-accordion{gap:var(--nabs-ui-density-accordion-gap,.75rem);width:100%;display:grid}.nabs-ui-accordion__item{border:1px solid var(--nabs-ui-color-border);border-radius:var(--nabs-ui-density-accordion-item-radius,.75rem);overflow:clip}.nabs-ui-accordion__trigger{background:var(--nabs-ui-color-bg);color:inherit;cursor:pointer;font:inherit;font-size:var(--nabs-ui-density-accordion-trigger-font-size,1rem);min-height:var(--nabs-ui-density-accordion-trigger-min-height,3rem);padding:var(--nabs-ui-density-accordion-trigger-padding-y,.9rem) var(--nabs-ui-density-accordion-trigger-padding-x,1rem);text-align:left;border:0;justify-content:space-between;align-items:center;width:100%;font-weight:600;line-height:1.3;display:flex}.nabs-ui-accordion__trigger:disabled{cursor:not-allowed;opacity:.75}.nabs-ui-accordion__triggerIcon{font-size:var(--nabs-ui-density-accordion-trigger-icon-font-size,.95rem);flex:none;margin-inline-start:var(--nabs-ui-density-accordion-trigger-icon-margin-start,.5rem);font-weight:700;line-height:1;transition:transform .16s}.nabs-ui-accordion__item--expanded .nabs-ui-accordion__triggerIcon{transform:rotate(45deg)}.nabs-ui-accordion__panel:not([hidden]){border-top:1px solid var(--nabs-ui-color-border);gap:var(--nabs-ui-density-accordion-panel-gap,.75rem);padding:var(--nabs-ui-density-accordion-panel-padding-top,.9rem) var(--nabs-ui-density-accordion-panel-padding-x,1rem) var(--nabs-ui-density-accordion-panel-padding-bottom,1rem);line-height:1.5;display:grid}
113
113
  /*$vite$:1*/.nabs-ui-dropdownmenu{align-items:flex-start;display:inline-flex;position:relative}.nabs-ui-dropdownmenu__trigger{cursor:pointer;font:inherit;align-items:center;gap:var(--nabs-ui-density-menu-trigger-gap,.6rem);padding:var(--nabs-ui-density-menu-trigger-padding-y,.55rem) var(--nabs-ui-density-menu-trigger-padding-x,.8rem) var(--nabs-ui-density-menu-trigger-padding-y,.55rem) var(--nabs-ui-density-menu-trigger-padding-left,1rem);transition:background-color .12s,border-color .12s,box-shadow .12s,transform .12s;display:inline-flex}.nabs-ui-dropdownmenu__trigger:hover{transform:translateY(var(--nabs-ui-density-control-hover-translate-y,-1px))}.nabs-ui-dropdownmenu__triggerLabel{font-size:var(--nabs-ui-density-font-size-control,.95rem);font-weight:600;line-height:var(--nabs-ui-density-line-height-control,1.2)}.nabs-ui-dropdownmenu__triggerChevron{font-size:var(--nabs-ui-density-menu-chevron-font-size,.8rem);padding-right:var(--nabs-ui-density-menu-chevron-padding-right,.1rem);line-height:1}.nabs-ui-dropdownmenu__menu{font-family:var(--nabs-ui-font-family-base,inherit);gap:var(--nabs-ui-density-menu-gap,.25rem);min-width:var(--nabs-ui-density-menu-min-width,13rem);padding:var(--nabs-ui-density-menu-padding,.5rem);left:0;top:calc(100% + var(--nabs-ui-density-menu-offset,.6rem));z-index:2147483647;display:grid;position:absolute}.nabs-ui-dropdownmenu__item[aria-disabled=true]{pointer-events:none}.nabs-ui-dropdownmenu__item{cursor:pointer;align-items:flex-start;gap:var(--nabs-ui-density-menu-item-gap,.15rem);padding:var(--nabs-ui-density-menu-item-padding-y,.75rem) var(--nabs-ui-density-menu-item-padding-x,.9rem);text-align:left;border:0;justify-items:start;transition:background-color .12s,color .12s;display:grid}.nabs-ui-dropdownmenu__item--disabled{cursor:not-allowed}.nabs-ui-dropdownmenu__itemLabel{font-size:var(--nabs-ui-density-font-size-control,.95rem);font-weight:600;line-height:var(--nabs-ui-density-line-height-control,1.2)}.nabs-ui-dropdownmenu__itemDescription{font-size:var(--nabs-ui-density-description-font-size,.82rem);line-height:1.25}.nabs-ui-dropdownmenu__divider{margin:var(--nabs-ui-density-menu-divider-margin-y,.25rem) 0}.nabs-ui-avatar{align-items:center;display:inline-flex;position:relative}.nabs-ui-avatar__login,.nabs-ui-avatar__trigger{cursor:pointer;font:inherit;align-items:center;gap:var(--nabs-ui-density-avatar-trigger-gap,.75rem);padding:var(--nabs-ui-density-avatar-trigger-padding-top,.35rem) var(--nabs-ui-density-avatar-trigger-padding-right,.45rem) var(--nabs-ui-density-avatar-trigger-padding-bottom,.35rem) var(--nabs-ui-density-avatar-trigger-padding-left,.35rem);text-decoration:none;transition:background-color .12s,border-color .12s,box-shadow .12s,transform .12s;display:inline-flex}.nabs-ui-avatar__login:hover,.nabs-ui-avatar__trigger:hover{transform:translateY(var(--nabs-ui-density-control-hover-translate-y,-1px))}.nabs-ui-avatar__avatar{font-size:var(--nabs-ui-density-font-size-control,.95rem);height:var(--nabs-ui-density-avatar-size,2.5rem);width:var(--nabs-ui-density-avatar-size,2.5rem);flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex;overflow:hidden}.nabs-ui-avatar__image{object-fit:cover;width:100%;height:100%;display:block}.nabs-ui-avatar__loginText,.nabs-ui-avatar__name{font-size:var(--nabs-ui-density-font-size-control,.95rem);font-weight:600;line-height:var(--nabs-ui-density-line-height-control,1.2)}.nabs-ui-avatar__name{max-width:var(--nabs-ui-density-avatar-name-max-width,10rem);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.nabs-ui-avatar__chevron{font-size:var(--nabs-ui-density-menu-chevron-font-size,.8rem);padding-right:var(--nabs-ui-density-avatar-chevron-padding-right,.15rem);line-height:1}.nabs-ui-avatar__menu{gap:var(--nabs-ui-density-avatar-menu-gap,.25rem);min-width:var(--nabs-ui-density-avatar-menu-min-width,12rem);padding:var(--nabs-ui-density-avatar-menu-padding,.5rem);display:grid}.nabs-ui-avatar__menuItem{font-size:var(--nabs-ui-density-font-size-control,.95rem);padding:var(--nabs-ui-density-avatar-menu-item-padding-y,.8rem) var(--nabs-ui-density-avatar-menu-item-padding-x,.9rem);justify-content:flex-start;align-items:center;font-weight:600;text-decoration:none;transition:background-color .12s,color .12s;display:flex}
114
+ /*$vite$:1*/.nabs-ui-breadcrumb{width:100%}.nabs-ui-breadcrumb__list{align-items:center;gap:var(--nabs-ui-density-breadcrumb-gap,.2rem);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.nabs-ui-breadcrumb__entry{align-items:center;min-width:0;display:inline-flex}.nabs-ui-breadcrumb__item{appearance:none;cursor:pointer;font:inherit;align-items:center;gap:var(--nabs-ui-density-breadcrumb-item-gap,.35rem);min-width:0;text-decoration:none;display:inline-flex}.nabs-ui-breadcrumb__itemLabel{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:inline-block;overflow:hidden}.nabs-ui-breadcrumb__item--current{cursor:default}.nabs-ui-breadcrumb__item--disabled{cursor:not-allowed}.nabs-ui-breadcrumb__separator{margin-inline:var(--nabs-ui-density-breadcrumb-separator-inline,.3rem);-webkit-user-select:none;user-select:none;display:inline-flex}.nabs-ui-breadcrumb__homeIcon{height:var(--nabs-ui-density-breadcrumb-home-icon-size,.9rem);width:var(--nabs-ui-density-breadcrumb-home-icon-size,.9rem);flex:none;display:block}
114
115
  /*$vite$:1*/.nabs-ui-button{cursor:pointer;font:inherit;align-items:center;gap:var(--nabs-ui-density-button-gap,.5rem);padding:var(--nabs-ui-density-button-padding-y,.75rem) var(--nabs-ui-density-button-padding-x,1rem);justify-content:center;font-weight:600;line-height:1;transition:transform .12s,box-shadow .12s,background-color .12s,color .12s,border-color .12s;display:inline-flex}.nabs-ui-button:hover{transform:translateY(var(--nabs-ui-density-control-hover-translate-y,-1px))}.nabs-ui-button:active{transform:translateY(0)}.nabs-ui-button:disabled{cursor:not-allowed;transform:none}
115
116
  /*$vite$:1*/.nabs-ui-cards{width:100%;display:block}.nabs-ui-cards__grid{gap:var(--nabs-ui-density-cards-grid-gap,1rem);align-items:stretch;display:grid}.nabs-ui-cards__grid--columns-1{grid-template-columns:repeat(1,minmax(0,1fr))}.nabs-ui-cards__grid--columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}.nabs-ui-cards__grid--columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}.nabs-ui-cards__grid--columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}.nabs-ui-cards__grid--columns-5{grid-template-columns:repeat(5,minmax(0,1fr))}.nabs-ui-cards__grid--columns-6{grid-template-columns:repeat(6,minmax(0,1fr))}.nabs-ui-cards__grid--columns-7{grid-template-columns:repeat(7,minmax(0,1fr))}.nabs-ui-cards__grid--columns-8{grid-template-columns:repeat(8,minmax(0,1fr))}.nabs-ui-cards__grid--columns-9{grid-template-columns:repeat(9,minmax(0,1fr))}.nabs-ui-cards__grid--columns-10{grid-template-columns:repeat(10,minmax(0,1fr))}.nabs-ui-cards__grid--columns-11{grid-template-columns:repeat(11,minmax(0,1fr))}.nabs-ui-cards__grid--columns-12{grid-template-columns:repeat(12,minmax(0,1fr))}.nabs-ui-cards__card{gap:var(--nabs-ui-density-cards-card-gap,.875rem);min-width:0;padding:var(--nabs-ui-density-cards-card-padding-y,1rem) var(--nabs-ui-density-cards-card-padding-x,1rem);flex-direction:column;display:flex}.nabs-ui-cards__header{font-size:var(--nabs-ui-density-cards-header-font-size,1rem);font-weight:600;line-height:1.25}.nabs-ui-cards__content{line-height:1.6}.nabs-ui-cards__actions{gap:var(--nabs-ui-density-cards-actions-gap,.5rem);flex-wrap:wrap;margin-top:auto;display:flex}
116
- /*$vite$:1*/.nabs-ui-charts{width:100%}.nabs-ui-charts__svg{width:100%;min-height:var(--nabs-ui-density-charts-min-height,280px);display:block;overflow:visible}.nabs-ui-charts__plotBoundary{fill:#0000;stroke-width:var(--nabs-ui-density-charts-axis-stroke-width,1)}.nabs-ui-charts__axis{stroke-width:var(--nabs-ui-density-charts-axis-stroke-width,1)}.nabs-ui-charts__guide{stroke-width:var(--nabs-ui-density-charts-guide-stroke-width,.8)}.nabs-ui-charts__line{fill:none;stroke-width:var(--nabs-ui-density-charts-line-stroke-width,1.4);stroke-linecap:round;stroke-linejoin:round}.nabs-ui-charts__point{stroke-width:var(--nabs-ui-density-charts-point-stroke-width,1.2)}.nabs-ui-charts__bar{stroke-width:var(--nabs-ui-density-charts-bar-stroke-width,1.25)}.nabs-ui-charts__legendSample{fill:none;stroke-width:var(--nabs-ui-density-charts-line-stroke-width,1.4);stroke-linecap:round}.nabs-ui-charts__legendLabel{dominant-baseline:middle;font-size:var(--nabs-ui-density-charts-tick-font-size,.5rem);text-anchor:start}.nabs-ui-charts__tickLabel{font-size:var(--nabs-ui-density-charts-tick-font-size,.5rem);text-anchor:middle;font-stretch:100%}.nabs-ui-charts__yTickLabel{dominant-baseline:middle;font-size:var(--nabs-ui-density-charts-tick-font-size,.5rem);text-anchor:end}.nabs-ui-charts__axisName{font-size:var(--nabs-ui-density-charts-axis-name-font-size,.56rem);text-anchor:middle;font-weight:600;font-stretch:100%}.nabs-ui-charts__series-color-0{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-1,var(--nabs-ui-color-charts-series-1,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-1{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-2,var(--nabs-ui-color-charts-series-2,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-2{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-3,var(--nabs-ui-color-charts-series-3,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-3{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-4,var(--nabs-ui-color-charts-series-4,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-4{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-5,var(--nabs-ui-color-charts-series-5,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-5{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-6,var(--nabs-ui-color-charts-series-6,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-6{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-7,var(--nabs-ui-color-charts-series-7,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-7{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-8,var(--nabs-ui-color-charts-series-8,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-8{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-9,var(--nabs-ui-color-charts-series-9,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-9{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-10,var(--nabs-ui-color-charts-series-10,var(--nabs-ui-color-charts-line)))}
117
+ /*$vite$:1*/.nabs-ui-charts{width:100%}.nabs-ui-charts__svg{width:100%;min-height:var(--nabs-ui-density-charts-min-height,280px);display:block;overflow:visible}.nabs-ui-charts__plotBoundary{fill:#0000;stroke-width:var(--nabs-ui-density-charts-axis-stroke-width,1)}.nabs-ui-charts__axis{stroke-width:var(--nabs-ui-density-charts-axis-stroke-width,1)}.nabs-ui-charts__guide{stroke-width:var(--nabs-ui-density-charts-guide-stroke-width,.8)}.nabs-ui-charts__line{fill:none;stroke-width:var(--nabs-ui-density-charts-line-stroke-width,1.4);stroke-linecap:round;stroke-linejoin:round}.nabs-ui-charts__point{stroke-width:var(--nabs-ui-density-charts-point-stroke-width,1.2)}.nabs-ui-charts__bar{stroke-width:var(--nabs-ui-density-charts-bar-stroke-width,1.25)}.nabs-ui-charts__pieSlice{stroke-width:var(--nabs-ui-density-charts-axis-stroke-width,1)}.nabs-ui-charts__legendSample{fill:none;stroke-width:var(--nabs-ui-density-charts-line-stroke-width,1.4);stroke-linecap:round}.nabs-ui-charts__legendSwatch{stroke-width:var(--nabs-ui-density-charts-axis-stroke-width,1)}.nabs-ui-charts__legendLabel{dominant-baseline:middle;font-size:var(--nabs-ui-density-charts-tick-font-size,.5rem);text-anchor:start}.nabs-ui-charts__tickLabel{font-size:var(--nabs-ui-density-charts-tick-font-size,.5rem);text-anchor:middle;font-stretch:100%}.nabs-ui-charts__yTickLabel{dominant-baseline:middle;font-size:var(--nabs-ui-density-charts-tick-font-size,.5rem);text-anchor:end}.nabs-ui-charts__axisName{font-size:var(--nabs-ui-density-charts-axis-name-font-size,.56rem);text-anchor:middle;font-weight:600;font-stretch:100%}.nabs-ui-charts--pie .nabs-ui-charts__svg{min-height:var(--nabs-ui-density-charts-min-height,220px)}.nabs-ui-charts__series-color-0{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-1,var(--nabs-ui-color-charts-series-1,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-1{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-2,var(--nabs-ui-color-charts-series-2,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-2{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-3,var(--nabs-ui-color-charts-series-3,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-3{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-4,var(--nabs-ui-color-charts-series-4,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-4{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-5,var(--nabs-ui-color-charts-series-5,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-5{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-6,var(--nabs-ui-color-charts-series-6,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-6{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-7,var(--nabs-ui-color-charts-series-7,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-7{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-8,var(--nabs-ui-color-charts-series-8,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-8{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-9,var(--nabs-ui-color-charts-series-9,var(--nabs-ui-color-charts-line)))}.nabs-ui-charts__series-color-9{--nabs-ui-charts-series-color:var(--nabs-ui-charts-series-inline-10,var(--nabs-ui-color-charts-series-10,var(--nabs-ui-color-charts-line)))}
117
118
  /*$vite$:1*/.nabs-ui-checkbox{box-sizing:border-box;cursor:pointer;font:inherit;align-items:center;gap:var(--nabs-ui-density-checkbox-gap,.75rem);min-width:0;padding:var(--nabs-ui-density-checkbox-padding-y,.8rem) var(--nabs-ui-density-checkbox-padding-x,1rem);transition:border-color .12s,box-shadow .12s,background-color .12s,transform .12s;display:inline-flex}.nabs-ui-checkbox:hover{transform:translateY(var(--nabs-ui-density-control-hover-translate-y,-1px))}.nabs-ui-checkbox__input{flex:none;margin:0}.nabs-ui-checkbox__label{font-size:var(--nabs-ui-density-font-size-control,.95rem);font-weight:600;line-height:var(--nabs-ui-density-line-height-control,1.2)}.nabs-ui-checkbox--label-left{flex-direction:row-reverse}.nabs-ui-checkbox--label-top,.nabs-ui-checkbox--label-bottom{align-items:stretch;gap:var(--nabs-ui-density-checkbox-stack-gap,.5rem)}.nabs-ui-checkbox--label-top{flex-direction:column-reverse}.nabs-ui-checkbox--label-bottom{flex-direction:column}.nabs-ui-checkbox--label-top .nabs-ui-checkbox__label,.nabs-ui-checkbox--label-bottom .nabs-ui-checkbox__label{width:100%}.nabs-ui-checkbox--disabled{cursor:not-allowed}
118
119
  /*$vite$:1*/.nabs-ui-code{min-width:0;display:grid;overflow:hidden}.nabs-ui-code__header{align-items:center;gap:var(--nabs-ui-density-code-header-gap,.6rem);min-width:0;padding:var(--nabs-ui-density-code-header-padding-y,.65rem) var(--nabs-ui-density-code-header-padding-x,.9rem);justify-content:flex-start;display:flex}.nabs-ui-code__language{border-radius:var(--nabs-ui-density-code-language-radius,999px);font-size:var(--nabs-ui-density-code-language-font-size,.72rem);letter-spacing:var(--nabs-ui-density-code-language-letter-spacing,.08em);padding:var(--nabs-ui-density-code-language-padding-y,.35rem) var(--nabs-ui-density-code-language-padding-x,.55rem);text-transform:uppercase;font-weight:700;line-height:1}.nabs-ui-code__title{font-size:var(--nabs-ui-density-code-title-font-size,.8rem);text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.25;overflow:hidden}.nabs-ui-code__pre{min-width:0;padding:var(--nabs-ui-density-code-pre-padding-y,.9rem) var(--nabs-ui-density-code-pre-padding-x,1rem);margin:0;overflow:auto}.nabs-ui-code__pre--wrap,.nabs-ui-code__pre--wrap .nabs-ui-code__snippet{white-space:pre-wrap;word-break:break-word}.nabs-ui-code__snippet{font-family:var(--nabs-ui-font-family-mono);font-size:var(--nabs-ui-density-code-snippet-font-size,.85rem);white-space:pre;line-height:1.5;display:block}.nabs-ui-code__line{align-items:baseline;gap:var(--nabs-ui-density-code-line-gap,.9rem);grid-template-columns:2.5rem minmax(0,1fr);display:grid}.nabs-ui-code__lineNumber{text-align:right;-webkit-user-select:none;user-select:none}.nabs-ui-code__lineText{min-width:0}
119
120
  /*$vite$:1*/.nabs-ui-combobox{min-width:var(--nabs-ui-density-combobox-min-width,18rem);display:inline-block;position:relative}.nabs-ui-combobox__input{appearance:none;box-sizing:border-box;width:100%;font:inherit;line-height:var(--nabs-ui-density-line-height-control,1.2);min-height:var(--nabs-ui-density-input-min-height,3rem);padding:var(--nabs-ui-density-input-padding-y,.85rem) var(--nabs-ui-density-input-padding-x,1rem);transition:border-color .12s,box-shadow .12s,background-color .12s,transform .12s}.nabs-ui-combobox__input:hover{transform:translateY(var(--nabs-ui-density-control-hover-translate-y,-1px))}.nabs-ui-combobox--disabled .nabs-ui-combobox__input{cursor:not-allowed}.nabs-ui-combobox__popup{z-index:30;gap:var(--nabs-ui-density-popup-gap,.375rem);max-height:var(--nabs-ui-density-popup-max-height,16rem);padding:var(--nabs-ui-density-popup-padding,.5rem);display:grid;position:absolute;top:calc(100% + .5rem);left:0;right:0;overflow:auto}.nabs-ui-combobox__option,.nabs-ui-combobox__empty{box-sizing:border-box;gap:var(--nabs-ui-density-option-gap,.15rem);padding:var(--nabs-ui-density-option-padding-y,.8rem) var(--nabs-ui-density-option-padding-x,.9rem);text-align:left;border:0;justify-items:start;width:100%;display:grid}.nabs-ui-combobox__option{cursor:pointer}.nabs-ui-combobox__option--disabled{cursor:not-allowed}.nabs-ui-combobox__optionLabel{font-size:var(--nabs-ui-density-font-size-control,.95rem);font-weight:600;line-height:1.25}.nabs-ui-combobox__optionDescription{font-size:var(--nabs-ui-density-description-font-size,.82rem);line-height:1.35}
@@ -127,7 +128,7 @@
127
128
  /*$vite$:1*/.nabs-ui-button{cursor:pointer;font:inherit;align-items:center;gap:var(--nabs-ui-density-button-gap,.5rem);padding:var(--nabs-ui-density-button-padding-y,.75rem) var(--nabs-ui-density-button-padding-x,1rem);justify-content:center;font-weight:600;line-height:1;transition:transform .12s,box-shadow .12s,background-color .12s,color .12s,border-color .12s;display:inline-flex}.nabs-ui-button:hover{transform:translateY(var(--nabs-ui-density-control-hover-translate-y,-1px))}.nabs-ui-button:active{transform:translateY(0)}.nabs-ui-button:disabled{cursor:not-allowed;transform:none}.nabs-ui-dialog__backdrop{padding:var(--nabs-ui-density-dialog-backdrop-padding,1rem);z-index:20;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.nabs-ui-dialog{min-width:0;max-height:85dvh;width:min(var(--nabs-ui-density-dialog-max-width,40rem), 100%);grid-template-rows:auto minmax(0,1fr) auto;display:grid;overflow:hidden}.nabs-ui-dialog__header,.nabs-ui-dialog__description,.nabs-ui-dialog__content,.nabs-ui-dialog__footer{box-sizing:border-box;min-width:0;padding:var(--nabs-ui-density-dialog-padding-y,.8rem) var(--nabs-ui-density-dialog-padding-x,1rem)}.nabs-ui-dialog__description{padding-top:0}.nabs-ui-dialog__header,.nabs-ui-dialog__footer{align-items:center;gap:var(--nabs-ui-density-dialog-header-gap,.6rem);justify-content:space-between;display:flex}.nabs-ui-dialog__title{font-size:var(--nabs-ui-density-dialog-title-font-size,1rem);font-weight:700;line-height:var(--nabs-ui-density-dialog-title-line-height,1.2);margin:0}.nabs-ui-dialog__content{gap:var(--nabs-ui-density-dialog-content-gap,.7rem);display:grid;overflow:auto}.nabs-ui-dialog__footer{justify-content:flex-end}.nabs-ui-grid{gap:var(--nabs-ui-density-grid-root-gap,.8rem);display:grid}.nabs-ui-grid__surface{gap:0;display:grid}.nabs-ui-grid__headerViewport,.nabs-ui-grid__footerSection--columns{overflow:hidden}.nabs-ui-grid__footer{display:grid}.nabs-ui-grid__footerSection{border-top:1px solid var(--nabs-ui-color-border)}.nabs-ui-grid__footerSectionHeader{font-size:var(--nabs-ui-density-grid-label-font-size,.85rem);padding:var(--nabs-ui-density-grid-cell-padding-y,.35rem) var(--nabs-ui-density-grid-cell-padding-x,.5rem);font-weight:700;line-height:1.2}.nabs-ui-grid__footerSection--rows .nabs-ui-grid__cell{display:block}.nabs-ui-grid__toolbar{align-items:end;gap:var(--nabs-ui-density-grid-toolbar-gap,.65rem);flex-wrap:wrap;display:flex}.nabs-ui-grid__groupControl{gap:var(--nabs-ui-density-grid-field-gap,.25rem);min-width:var(--nabs-ui-density-grid-group-control-min-width,10rem);display:grid}.nabs-ui-grid__groupControl span{font-size:var(--nabs-ui-density-grid-label-font-size,.85rem);font-weight:600}.nabs-ui-grid__status{font-size:var(--nabs-ui-density-grid-status-font-size,.92rem)}.nabs-ui-grid__viewport{overflow:auto}.nabs-ui-grid__table{border-collapse:separate;border-spacing:0;table-layout:fixed;min-width:100%}.nabs-ui-grid__head{position:static}.nabs-ui-grid__col--selection{width:var(--nabs-ui-density-grid-selection-width,2.8rem)}.nabs-ui-grid__col--actions{width:var(--nabs-ui-density-grid-actions-width,9.5rem)}.nabs-ui-grid__cell{padding:var(--nabs-ui-density-grid-cell-padding-y,.35rem) var(--nabs-ui-density-grid-cell-padding-x,.5rem);text-overflow:ellipsis;vertical-align:top;white-space:nowrap;overflow:hidden}.nabs-ui-grid__cell--head{min-height:var(--nabs-ui-density-grid-head-min-height,3.3rem);font-weight:600}.nabs-ui-grid__cell--selection{text-align:center;width:var(--nabs-ui-density-grid-selection-width,2.8rem)}.nabs-ui-grid__cell--actions{width:var(--nabs-ui-density-grid-actions-width,9.5rem)}.nabs-ui-grid__cell--foot{font-size:var(--nabs-ui-density-grid-foot-font-size,.85rem);font-weight:600}.nabs-ui-grid__headCell{gap:var(--nabs-ui-density-grid-head-gap,.35rem);display:grid}.nabs-ui-grid__sortButton{cursor:pointer;font:inherit;align-items:center;gap:var(--nabs-ui-density-grid-sort-gap,.45rem);text-align:left;justify-content:space-between;width:100%;padding:0;display:inline-flex}.nabs-ui-grid__sortButton:disabled{cursor:default}.nabs-ui-grid__input{font:inherit;min-height:var(--nabs-ui-density-grid-input-min-height,2rem);padding:var(--nabs-ui-density-grid-input-padding-y,.2rem) var(--nabs-ui-density-grid-input-padding-x,.45rem);width:100%}.nabs-ui-grid__input--textarea{min-height:var(--nabs-ui-density-grid-textarea-min-height,4rem);resize:vertical}.nabs-ui-grid__search{max-width:var(--nabs-ui-density-grid-search-max-width,17rem);width:100%}.nabs-ui-grid__input--active{font-weight:600}.nabs-ui-grid__groupRow{font-size:var(--nabs-ui-density-grid-group-row-font-size,.9rem)}.nabs-ui-grid__groupCell{padding:0}.nabs-ui-grid__groupToggle{cursor:pointer;font:inherit;align-items:center;gap:var(--nabs-ui-density-grid-group-toggle-gap,.75rem);min-height:var(--nabs-ui-density-grid-group-toggle-min-height,2rem);padding:var(--nabs-ui-density-grid-group-toggle-padding-y,.4rem) var(--nabs-ui-density-grid-group-toggle-padding-x,.55rem);justify-content:flex-start;width:100%;display:inline-flex}.nabs-ui-grid__dataRow--selected{font-weight:600}.nabs-ui-grid__actionStack{gap:var(--nabs-ui-density-grid-action-gap,.35rem);flex-wrap:wrap;display:flex}.nabs-ui-grid__button,.nabs-ui-grid__iconButton{cursor:pointer;font:inherit;min-height:var(--nabs-ui-density-grid-button-min-height,1.8rem);padding:var(--nabs-ui-density-grid-button-padding-y,.18rem) var(--nabs-ui-density-grid-button-padding-x,.5rem)}.nabs-ui-grid__button:disabled,.nabs-ui-grid__iconButton:disabled{cursor:not-allowed}.nabs-ui-grid__button--primary{font-weight:700}.nabs-ui-grid__spacer td{border:0;padding:0}.nabs-ui-grid__pager{align-items:center;gap:var(--nabs-ui-density-grid-pager-gap,.45rem);flex-wrap:wrap;display:flex}.nabs-ui-grid__dialogBody{gap:var(--nabs-ui-density-grid-dialog-body-gap,.7rem);display:grid}.nabs-ui-grid__editDialog{--nabs-ui-density-dialog-max-width:var(--nabs-ui-density-grid-dialog-max-width,40rem)}.nabs-ui-grid__editDialogContent{max-height:min(70dvh,34rem)}.nabs-ui-grid__editDialogFooter{justify-content:flex-end}.nabs-ui-grid__field{gap:var(--nabs-ui-density-grid-field-gap,.35rem);display:grid}@media (width<=860px){.nabs-ui-grid__cell--actions{width:var(--nabs-ui-density-grid-actions-width-mobile,7.5rem)}.nabs-ui-grid__toolbar{flex-direction:column;align-items:stretch}}
128
129
  /*$vite$:1*/.nabs-ui-layout{gap:var(--nabs-ui-layout-gap,1rem);grid-template-rows:auto minmax(0,1fr) auto;width:100%;min-width:0;min-height:100%;display:grid}.nabs-ui-layout__headerWrapper,.nabs-ui-layout__footerWrapper{min-width:0}.nabs-ui-layout__header,.nabs-ui-layout__footer,.nabs-ui-layout__panel,.nabs-ui-layout__content{border:1px solid var(--nabs-ui-layout-border);border-radius:var(--nabs-ui-layout-radius,1rem);box-sizing:border-box;min-width:0}.nabs-ui-layout__header,.nabs-ui-layout__footer{padding:var(--nabs-ui-density-layout-chrome-padding-y,.75rem) var(--nabs-ui-density-layout-chrome-padding-x,.9rem)}.nabs-ui-layout__panel,.nabs-ui-layout__content{padding:var(--nabs-ui-density-layout-body-padding-y,1rem) var(--nabs-ui-density-layout-body-padding-x,1rem)}.nabs-ui-layout__header,.nabs-ui-layout__footer{background:var(--nabs-ui-layout-surface)}.nabs-ui-layout__footer{font-size:var(--nabs-ui-density-layout-footer-font-size,.76rem);line-height:var(--nabs-ui-density-layout-footer-line-height,1.25)}.nabs-ui-layout__body{gap:var(--nabs-ui-layout-gap,1rem);min-width:0;min-height:0;display:grid}.nabs-ui-layout__body--with-both-panels{grid-template-columns:var(--nabs-ui-layout-left-panel-width,max-content) minmax(0, 1fr) var(--nabs-ui-layout-right-panel-width,max-content)}.nabs-ui-layout__body--with-left-panel{grid-template-columns:var(--nabs-ui-layout-left-panel-width,max-content) minmax(0, 1fr)}.nabs-ui-layout__body--with-right-panel{grid-template-columns:minmax(0, 1fr) var(--nabs-ui-layout-right-panel-width,max-content)}.nabs-ui-layout__panel{background:var(--nabs-ui-layout-panel-surface);max-inline-size:min(100%, var(--nabs-ui-layout-side-panel-max-width,22rem))}.nabs-ui-layout__content{background:var(--nabs-ui-layout-content-surface)}.nabs-ui-layout__content>:first-child{margin-top:0}.nabs-ui-layout__content>:last-child{margin-bottom:0}
129
130
  /*$vite$:1*/.nabs-ui-toolbar{align-items:center;gap:var(--nabs-ui-density-toolbar-gap,.1rem);min-height:var(--nabs-ui-density-toolbar-min-height,3.65rem);padding:var(--nabs-ui-density-toolbar-padding-y,.4rem) var(--nabs-ui-density-toolbar-padding-x,.45rem);flex-wrap:wrap;display:inline-flex}.nabs-ui-toolbar__button{cursor:pointer;font:inherit;align-items:center;gap:var(--nabs-ui-density-toolbar-button-gap,.25rem);min-height:var(--nabs-ui-density-toolbar-button-min-size,2.75rem);min-width:var(--nabs-ui-density-toolbar-button-min-size,2.75rem);padding:var(--nabs-ui-density-toolbar-button-padding-y,.35rem) var(--nabs-ui-density-toolbar-button-padding-x,.8rem);justify-content:center;transition:transform .12s,box-shadow .12s,border-color .12s,background-color .12s,color .12s;display:inline-flex}.nabs-ui-toolbar__button:hover:not(:disabled){transform:translateY(var(--nabs-ui-density-control-hover-translate-y,-1px))}.nabs-ui-toolbar__button:disabled{cursor:not-allowed}.nabs-ui-toolbar__button--icon-only{padding-inline:var(--nabs-ui-density-toolbar-icon-only-padding-inline,.55rem)}.nabs-ui-toolbar__content{align-items:center;gap:var(--nabs-ui-density-toolbar-content-gap,.42rem);display:inline-flex}.nabs-ui-toolbar__content--label-left{flex-direction:row-reverse}.nabs-ui-toolbar__content--label-right{flex-direction:row}.nabs-ui-toolbar__content--label-top{flex-direction:column-reverse}.nabs-ui-toolbar__content--label-bottom{flex-direction:column}.nabs-ui-toolbar__icon{height:var(--nabs-ui-density-toolbar-icon-size,1.08rem);stroke-width:1.75px;width:var(--nabs-ui-density-toolbar-icon-size,1.08rem);flex:none;display:block}.nabs-ui-toolbar__label{font-size:var(--nabs-ui-density-toolbar-label-font-size,.95rem);white-space:nowrap;font-weight:500;line-height:1}.nabs-ui-markdown{gap:var(--nabs-ui-density-markdown-root-gap,16px);grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);min-width:0;display:grid}.nabs-ui-markdown--single-panel{grid-template-columns:minmax(0,1fr)}.nabs-ui-markdown__editorPanel,.nabs-ui-markdown__previewPanel{gap:var(--nabs-ui-density-markdown-panel-gap,12px);min-width:0;padding:var(--nabs-ui-density-markdown-panel-padding,16px);display:grid}.nabs-ui-markdown__label,.nabs-ui-markdown__previewLabel{font-size:var(--nabs-ui-density-markdown-label-font-size,.98rem);font-weight:800;line-height:var(--nabs-ui-density-line-height-control,1.2)}.nabs-ui-markdown__helper{font-size:var(--nabs-ui-density-markdown-helper-font-size,.88rem);line-height:var(--nabs-ui-density-markdown-helper-line-height,1.4)}.nabs-ui-markdown__toolbar{width:fit-content}.nabs-ui-markdown__editor{box-sizing:border-box;font:inherit;min-height:var(--nabs-ui-density-markdown-editor-min-height,280px);padding:var(--nabs-ui-density-markdown-editor-padding,14px);resize:vertical;width:100%}.nabs-ui-markdown__preview{box-sizing:border-box;min-height:var(--nabs-ui-density-markdown-editor-min-height,280px);padding:var(--nabs-ui-density-markdown-editor-padding,14px)}.nabs-ui-markdown__html{gap:var(--nabs-ui-density-markdown-content-gap,12px);line-height:var(--nabs-ui-density-markdown-content-line-height,1.7);display:grid}.nabs-ui-markdown__html h1,.nabs-ui-markdown__html h2,.nabs-ui-markdown__html h3,.nabs-ui-markdown__html h4,.nabs-ui-markdown__html h5,.nabs-ui-markdown__html h6,.nabs-ui-markdown__html p,.nabs-ui-markdown__html blockquote,.nabs-ui-markdown__html ul,.nabs-ui-markdown__html ol,.nabs-ui-markdown__html pre{margin:0}.nabs-ui-markdown__html h1{font-size:var(--nabs-ui-density-markdown-h1-font-size,1.65rem)}.nabs-ui-markdown__html h2{font-size:var(--nabs-ui-density-markdown-h2-font-size,1.42rem)}.nabs-ui-markdown__html h3{font-size:var(--nabs-ui-density-markdown-h3-font-size,1.22rem)}.nabs-ui-markdown__html blockquote{padding-left:var(--nabs-ui-density-markdown-blockquote-padding-left,12px)}.nabs-ui-markdown__html ul,.nabs-ui-markdown__html ol{padding-left:var(--nabs-ui-density-markdown-list-padding-left,20px)}.nabs-ui-markdown__html code{font-family:var(--nabs-ui-font-family-mono,"Consolas", "Courier New", monospace);font-size:var(--nabs-ui-density-markdown-code-font-size,.92em);padding:var(--nabs-ui-density-markdown-code-padding-y,.08rem) var(--nabs-ui-density-markdown-code-padding-x,.32rem)}.nabs-ui-markdown__html pre code{padding:var(--nabs-ui-density-markdown-pre-code-padding,12px);display:block;overflow-x:auto}@media (width<=960px){.nabs-ui-markdown{grid-template-columns:1fr}}
130
- /*$vite$:1*/.nabs-ui-navigation{width:100%}.nabs-ui-navigation__list{gap:var(--nabs-ui-density-navigation-list-gap,.55rem);margin:0;padding:0;list-style:none;display:flex}.nabs-ui-navigation .nabs-ui-navigation__list{padding:0;margin:0;padding-inline-start:0;list-style:none}.nabs-ui-navigation--vertical .nabs-ui-navigation__list{flex-direction:column}.nabs-ui-navigation--horizontal .nabs-ui-navigation__list{flex-flow:wrap}.nabs-ui-navigation__item{appearance:none;cursor:pointer;font:inherit;width:100%;min-width:0;text-decoration:none;transition:border-color .12s,background-color .12s,box-shadow .12s,transform .12s;display:block}.nabs-ui-navigation--horizontal .nabs-ui-navigation__item{min-width:var(--nabs-ui-density-navigation-horizontal-min-width,8.25rem)}.nabs-ui-navigation__item:hover:not(.nabs-ui-navigation__item--disabled):not(.nabs-ui-navigation__item--active){transform:translateY(var(--nabs-ui-density-control-hover-translate-y,-1px))}.nabs-ui-navigation__item--active:hover:not(.nabs-ui-navigation__item--disabled){transform:none}.nabs-ui-navigation__item--disabled{cursor:not-allowed;transform:none}.nabs-ui-navigation__itemContent{box-sizing:border-box;text-align:left;padding:var(--nabs-ui-density-navigation-item-padding-y,.66rem) var(--nabs-ui-density-navigation-item-padding-x,.85rem);width:100%;display:block}.nabs-ui-navigation__itemContent--center{text-align:center}.nabs-ui-navigation__itemContent--right{text-align:right}
131
+ /*$vite$:1*/.nabs-ui-navigation{width:100%;position:relative}.nabs-ui-navigation__list{gap:var(--nabs-ui-density-navigation-list-gap,.55rem);margin:0;padding:0;list-style:none;display:flex}.nabs-ui-navigation .nabs-ui-navigation__list{padding:0;margin:0;padding-inline-start:0;list-style:none}.nabs-ui-navigation--vertical .nabs-ui-navigation__list{flex-direction:column}.nabs-ui-navigation--horizontal .nabs-ui-navigation__list{flex-flow:row}.nabs-ui-navigation__entry{position:relative}.nabs-ui-navigation__itemRow{gap:var(--nabs-ui-density-navigation-toggle-gap,.3rem);width:100%;display:flex}.nabs-ui-navigation__item{appearance:none;cursor:pointer;font:inherit;width:100%;min-width:0;text-decoration:none;transition:border-color .12s,background-color .12s,box-shadow .12s,transform .12s;display:block}.nabs-ui-navigation--horizontal .nabs-ui-navigation__item{min-width:var(--nabs-ui-density-navigation-horizontal-min-width,8.25rem)}.nabs-ui-navigation__toggle{appearance:none;cursor:pointer;font:inherit;min-width:var(--nabs-ui-density-navigation-toggle-size,2rem);flex:none}.nabs-ui-navigation__toggleIcon{line-height:1;transition:transform .12s;display:inline-block;transform:rotate(-90deg)}.nabs-ui-navigation__entry--expanded>.nabs-ui-navigation__itemRow .nabs-ui-navigation__toggleIcon{transform:rotate(0)}.nabs-ui-navigation__item:hover:not(.nabs-ui-navigation__item--disabled):not(.nabs-ui-navigation__item--active){transform:translateY(var(--nabs-ui-density-control-hover-translate-y,-1px))}.nabs-ui-navigation__item--active:hover:not(.nabs-ui-navigation__item--disabled){transform:none}.nabs-ui-navigation__item--disabled{cursor:not-allowed;transform:none}.nabs-ui-navigation__itemContent{box-sizing:border-box;text-align:left;padding:var(--nabs-ui-density-navigation-item-padding-y,.66rem) var(--nabs-ui-density-navigation-item-padding-x,.85rem);width:100%;display:block}.nabs-ui-navigation__itemContent--center{text-align:center}.nabs-ui-navigation__itemContent--right{text-align:right}.nabs-ui-navigation__sublist{margin:0;padding:0}.nabs-ui-navigation__sublist--vertical{border-left:var(--nabs-ui-density-navigation-sublist-border-width,1px) solid var(--nabs-ui-color-border,currentColor);margin-left:var(--nabs-ui-density-navigation-indent,.8rem);margin-top:var(--nabs-ui-density-navigation-sublist-gap,.3rem);padding-left:var(--nabs-ui-density-navigation-indent,.8rem)}.nabs-ui-navigation__sublist--vertical .nabs-ui-navigation__itemContent{font-size:var(--nabs-ui-density-navigation-nested-font-size,.92em)}.nabs-ui-navigation__sublist--overlay{min-width:var(--nabs-ui-density-navigation-overlay-min-width,12rem);left:0;top:calc(100% + var(--nabs-ui-density-navigation-overlay-offset,.3rem));z-index:var(--nabs-ui-density-navigation-overlay-z-index,20);flex-direction:column;position:absolute}.nabs-ui-navigation__sublist--overlayNested{left:calc(100% + var(--nabs-ui-density-navigation-overlay-offset,.3rem));top:0}.nabs-ui-navigation--horizontal .nabs-ui-navigation__sublist--overlay .nabs-ui-navigation__item{min-width:100%}
131
132
  /*$vite$:1*/.nabs-ui-panel{grid-auto-rows:max-content;align-content:start;min-width:0;display:grid;overflow:hidden}.nabs-ui-panel__header,.nabs-ui-panel__content,.nabs-ui-panel__footer{box-sizing:border-box;min-width:0;padding:var(--nabs-ui-density-panel-padding-y,1rem) var(--nabs-ui-density-panel-padding-x,1rem)}.nabs-ui-panel__header,.nabs-ui-panel__footer{font-size:var(--nabs-ui-density-panel-header-font-size,.95rem);align-items:center;gap:var(--nabs-ui-density-panel-header-gap,.5rem);line-height:var(--nabs-ui-density-panel-header-line-height,1.2);justify-content:space-between;display:flex}.nabs-ui-panel__content{gap:var(--nabs-ui-density-panel-content-gap,.75rem);display:grid}
132
133
  /*$vite$:1*/.nabs-ui-radiobutton{box-sizing:border-box;cursor:pointer;font:inherit;align-items:center;gap:var(--nabs-ui-density-radio-gap,.75rem);min-width:0;padding:var(--nabs-ui-density-radio-padding-y,.8rem) var(--nabs-ui-density-radio-padding-x,1rem);transition:border-color .12s,box-shadow .12s,background-color .12s,transform .12s;display:inline-flex}.nabs-ui-radiobutton:hover{transform:translateY(var(--nabs-ui-density-control-hover-translate-y,-1px))}.nabs-ui-radiobutton__input{flex:none;margin:0}.nabs-ui-radiobutton__label{font-size:var(--nabs-ui-density-font-size-control,.95rem);font-weight:600;line-height:var(--nabs-ui-density-line-height-control,1.2)}.nabs-ui-radiobutton--label-left{flex-direction:row-reverse}.nabs-ui-radiobutton--label-top,.nabs-ui-radiobutton--label-bottom{align-items:stretch;gap:var(--nabs-ui-density-radio-stack-gap,.5rem)}.nabs-ui-radiobutton--label-top{flex-direction:column-reverse}.nabs-ui-radiobutton--label-bottom{flex-direction:column}.nabs-ui-radiobutton--label-top .nabs-ui-radiobutton__label,.nabs-ui-radiobutton--label-bottom .nabs-ui-radiobutton__label{width:100%}.nabs-ui-radiobutton--disabled{cursor:not-allowed}
133
134
  /*$vite$:1*/.nabs-ui-signature{gap:var(--nabs-ui-density-signature-gap,.75rem);font:inherit;min-width:0;display:grid}.nabs-ui-signature__label{font-size:var(--nabs-ui-density-signature-label-font-size,.95rem);font-weight:700;line-height:var(--nabs-ui-density-line-height-control,1.2)}.nabs-ui-signature__helper{font-size:var(--nabs-ui-density-signature-helper-font-size,.88rem);line-height:1.35}.nabs-ui-signature__pad{box-sizing:border-box;position:relative;overflow:hidden}.nabs-ui-signature__canvas{touch-action:none;width:100%;display:block}.nabs-ui-signature__placeholder{font-size:var(--nabs-ui-density-signature-placeholder-font-size,.9rem);pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.nabs-ui-signature__actions{justify-content:flex-start;display:flex}.nabs-ui-signature__clearButton{cursor:pointer;font:inherit;padding:var(--nabs-ui-density-signature-button-padding-y,.7rem) var(--nabs-ui-density-signature-button-padding-x,1rem);border:0;font-weight:700}.nabs-ui-signature__clearButton:disabled,.nabs-ui-signature--disabled{cursor:not-allowed}
@@ -1,6 +1,6 @@
1
1
  import { forwardRef as e, useMemo as t } from "react";
2
2
  import { Layout as n } from "@net-advantage/nabs-ui-layout";
3
- import { jsx as r, jsxs as i } from "react/jsx-runtime";
3
+ import { Fragment as r, jsx as i, jsxs as a } from "react/jsx-runtime";
4
4
  export * from "@net-advantage/nabs-ui-layout";
5
5
  export * from "@net-advantage/nabs-ui-accordion";
6
6
  export * from "@net-advantage/nabs-ui-avatar";
@@ -29,16 +29,16 @@ export * from "@net-advantage/nabs-ui-textarea";
29
29
  export * from "@net-advantage/nabs-ui-textbox";
30
30
  export * from "@net-advantage/nabs-ui-toolbar";
31
31
  //#region src/Shell.tsx
32
- var a = e(({ header: e, navigation: t, footer: i, children: a, className: o = "", headerClassName: s = "", navigationClassName: c = "", contentClassName: l = "", footerClassName: u = "", ...d }, f) => {
32
+ var o = e(({ header: e, navigation: t, footer: r, children: a, className: o = "", headerClassName: s = "", navigationClassName: c = "", contentClassName: l = "", footerClassName: u = "", ...d }, f) => {
33
33
  let p = ["nabs-ui-shell", o].filter(Boolean).join(" "), m = ["nabs-ui-shell__header", s].filter(Boolean).join(" "), h = ["nabs-ui-shell__navigation", c].filter(Boolean).join(" "), g = ["nabs-ui-shell__content", l].filter(Boolean).join(" "), _ = ["nabs-ui-shell__footer", u].filter(Boolean).join(" ");
34
- return /* @__PURE__ */ r("div", {
34
+ return /* @__PURE__ */ i("div", {
35
35
  ref: f,
36
36
  className: p,
37
37
  ...d,
38
- children: /* @__PURE__ */ r(n, {
38
+ children: /* @__PURE__ */ i(n, {
39
39
  className: "nabs-ui-shell__layout",
40
40
  header: e,
41
- footer: i,
41
+ footer: r,
42
42
  leftSidePanel: t,
43
43
  headerClassName: m,
44
44
  footerClassName: _,
@@ -48,34 +48,129 @@ var a = e(({ header: e, navigation: t, footer: i, children: a, className: o = ""
48
48
  })
49
49
  });
50
50
  });
51
- a.displayName = "Shell";
51
+ o.displayName = "Shell";
52
52
  //#endregion
53
53
  //#region src/Branding.tsx
54
- var o = e(function({ logo: e, title: t, byline: n, className: a = "", ...o }, s) {
55
- return /* @__PURE__ */ i("div", {
54
+ var s = e(function({ logo: e, title: t, byline: n, className: r = "", ...o }, s) {
55
+ return /* @__PURE__ */ a("div", {
56
56
  ref: s,
57
- className: ["nabs-ui-branding", a].filter(Boolean).join(" "),
57
+ className: ["nabs-ui-branding", r].filter(Boolean).join(" "),
58
58
  ...o,
59
- children: [/* @__PURE__ */ r("div", {
59
+ children: [/* @__PURE__ */ i("div", {
60
60
  className: "nabs-ui-branding__logo",
61
61
  "aria-hidden": "true",
62
62
  children: e
63
- }), /* @__PURE__ */ i("div", {
63
+ }), /* @__PURE__ */ a("div", {
64
64
  className: "nabs-ui-branding__text",
65
- children: [/* @__PURE__ */ r("strong", {
65
+ children: [/* @__PURE__ */ i("strong", {
66
66
  className: "nabs-ui-branding__title",
67
67
  children: t
68
- }), /* @__PURE__ */ r("span", {
68
+ }), /* @__PURE__ */ i("span", {
69
69
  className: "nabs-ui-branding__byline",
70
70
  children: n
71
71
  })]
72
72
  })]
73
73
  });
74
74
  });
75
- o.displayName = "Branding";
75
+ s.displayName = "Branding";
76
+ //#endregion
77
+ //#region ../nabs-ui-breadcrumb/dist/nabs-ui-breadcrumb.js
78
+ function c(e) {
79
+ return e.button === 0 && !e.metaKey && !e.ctrlKey && !e.shiftKey && !e.altKey;
80
+ }
81
+ function l() {
82
+ return "Home";
83
+ }
84
+ function u(e) {
85
+ return {
86
+ id: "__home__",
87
+ label: e?.label ?? l(),
88
+ href: e?.href,
89
+ path: e?.path,
90
+ disabled: e?.disabled
91
+ };
92
+ }
93
+ function d(e, t, n) {
94
+ return t ? [u(n), ...e] : e;
95
+ }
96
+ function f() {
97
+ return /* @__PURE__ */ a("svg", {
98
+ className: "nabs-ui-breadcrumb__homeIcon",
99
+ viewBox: "0 0 24 24",
100
+ fill: "none",
101
+ "aria-hidden": "true",
102
+ focusable: "false",
103
+ children: [/* @__PURE__ */ i("path", {
104
+ d: "M3 11.5L12 4L21 11.5",
105
+ stroke: "currentColor",
106
+ strokeWidth: "1.8",
107
+ strokeLinecap: "round",
108
+ strokeLinejoin: "round"
109
+ }), /* @__PURE__ */ i("path", {
110
+ d: "M6.5 10V20H17.5V10",
111
+ stroke: "currentColor",
112
+ strokeWidth: "1.8",
113
+ strokeLinecap: "round",
114
+ strokeLinejoin: "round"
115
+ })]
116
+ });
117
+ }
118
+ var p = e(function({ items: e = [], showHome: t = !0, home: n, separator: o = "/", lastItemClickable: s = !1, className: l = "", itemClassName: u = "", onItemSelect: p, ...m }, h) {
119
+ let g = d(e, t, n);
120
+ return /* @__PURE__ */ i("nav", {
121
+ ref: h,
122
+ className: ["nabs-ui-breadcrumb", l].filter(Boolean).join(" "),
123
+ "aria-label": "Breadcrumb",
124
+ ...m,
125
+ children: /* @__PURE__ */ i("ol", {
126
+ className: "nabs-ui-breadcrumb__list",
127
+ children: g.map((e, l) => {
128
+ let d = l === g.length - 1, m = d && !s, h = typeof e.path == "string" && e.path.trim().length > 0, _ = typeof e.href == "string" && e.href.trim().length > 0, v = h ? e.path : _ ? e.href : void 0, y = [
129
+ "nabs-ui-breadcrumb__item",
130
+ m ? "nabs-ui-breadcrumb__item--current" : "",
131
+ e.disabled ? "nabs-ui-breadcrumb__item--disabled" : "",
132
+ u
133
+ ].filter(Boolean).join(" "), b = (t) => {
134
+ if (e.disabled || m) {
135
+ t.preventDefault();
136
+ return;
137
+ }
138
+ p?.({
139
+ itemId: e.id,
140
+ item: e,
141
+ event: t
142
+ }), !t.defaultPrevented && (!h || typeof window > "u" || !c(t) || (t.preventDefault(), window.history.pushState({}, "", e.path), window.dispatchEvent(new PopStateEvent("popstate", { state: window.history.state }))));
143
+ }, x = /* @__PURE__ */ a(r, { children: [l === 0 && t ? n?.icon ?? /* @__PURE__ */ i(f, {}) : null, /* @__PURE__ */ i("span", {
144
+ className: "nabs-ui-breadcrumb__itemLabel",
145
+ children: e.label
146
+ })] });
147
+ return /* @__PURE__ */ a("li", {
148
+ className: "nabs-ui-breadcrumb__entry",
149
+ children: [v && !m ? /* @__PURE__ */ i("a", {
150
+ className: y,
151
+ href: v,
152
+ onClick: b,
153
+ children: x
154
+ }) : /* @__PURE__ */ i("button", {
155
+ type: "button",
156
+ className: y,
157
+ disabled: e.disabled || m,
158
+ "aria-current": m ? "page" : void 0,
159
+ onClick: b,
160
+ children: x
161
+ }), d ? null : /* @__PURE__ */ i("span", {
162
+ className: "nabs-ui-breadcrumb__separator",
163
+ children: o
164
+ })]
165
+ }, e.id);
166
+ })
167
+ })
168
+ });
169
+ });
170
+ p.displayName = "Breadcrumb";
76
171
  //#endregion
77
172
  //#region ../nabs-ui-charts/dist/nabs-ui-charts.js
78
- var s = {
173
+ var m = {
79
174
  leftPadding: 44,
80
175
  rightPadding: 18,
81
176
  plotTop: 14,
@@ -93,14 +188,14 @@ var s = {
93
188
  legendMarkerRadius: 2,
94
189
  legendApproxCharWidth: 5.8,
95
190
  svgBottomPadding: 8
96
- }, c = {
191
+ }, h = {
97
192
  line: "nabs-ui-charts--line",
98
193
  bar: "nabs-ui-charts--bar"
99
194
  };
100
- function l(e) {
195
+ function g(e) {
101
196
  return Number.isFinite(e) ? Math.max(0, Math.floor(e ?? 0)) : 8;
102
197
  }
103
- function u(e) {
198
+ function _(e) {
104
199
  if (typeof e == "number" && Number.isFinite(e)) return e;
105
200
  if (typeof e == "string") {
106
201
  let t = Number(e);
@@ -108,19 +203,19 @@ function u(e) {
108
203
  }
109
204
  return 0;
110
205
  }
111
- function d(e, t) {
112
- return u(e[t]);
206
+ function v(e, t) {
207
+ return _(e[t]);
113
208
  }
114
- function f(e) {
209
+ function y(e) {
115
210
  return !Number.isFinite(e) || (e ?? 0) <= 0 ? 5 : Math.abs(e ?? 5);
116
211
  }
117
- function p(e, t, n) {
212
+ function b(e, t, n) {
118
213
  return Math.min(n, Math.max(t, e));
119
214
  }
120
- function m(e) {
215
+ function x(e) {
121
216
  return Number(e.toFixed(6));
122
217
  }
123
- function h(e, t, n) {
218
+ function S(e, t, n) {
124
219
  let r = [];
125
220
  if (n?.length) for (let e of n) {
126
221
  let t = String(e ?? "").trim();
@@ -131,13 +226,13 @@ function h(e, t, n) {
131
226
  let t = e[0];
132
227
  for (let e of Object.keys(t)) {
133
228
  if (e === "yAxis") continue;
134
- let n = t[e], i = u(n);
229
+ let n = t[e], i = _(n);
135
230
  if (Number.isFinite(i) && r.push(e), r.length >= 10) break;
136
231
  }
137
232
  }
138
233
  return r.slice(0, 10);
139
234
  }
140
- function g(e, t, n, r) {
235
+ function C(e, t, n, r) {
141
236
  let i = e + t, a = Number.isFinite(n) ? n : 0, o = Number.isFinite(r) ? r : i;
142
237
  return o <= a ? {
143
238
  axisMin: a,
@@ -147,32 +242,32 @@ function g(e, t, n, r) {
147
242
  axisMax: o
148
243
  };
149
244
  }
150
- function _(e, t, n) {
245
+ function w(e, t, n) {
151
246
  let r = [e], i = n / 1e3, a = 0;
152
247
  for (let o = e + n; o <= t + i && !(a > 5e3); o += n) {
153
- let e = m(o);
248
+ let e = x(o);
154
249
  if (e >= t) break;
155
250
  r.push(e), a += 1;
156
251
  }
157
252
  return r[r.length - 1] !== t && r.push(t), r;
158
253
  }
159
- function v(e, t, n) {
254
+ function T(e, t, n) {
160
255
  if (e.length <= 1) return [];
161
- let r = e.map((e) => s.legendSampleWidth + s.legendTextGap + e.length * s.legendApproxCharWidth), i = t - (r.reduce((e, t) => e + t, 0) + Math.max(0, e.length - 1) * s.legendItemGap) / 2;
256
+ let r = e.map((e) => m.legendSampleWidth + m.legendTextGap + e.length * m.legendApproxCharWidth), i = t - (r.reduce((e, t) => e + t, 0) + Math.max(0, e.length - 1) * m.legendItemGap) / 2;
162
257
  return e.map((e, t) => {
163
- let n = r[t] ?? 0, a = i, o = a + s.legendSampleWidth, c = a + s.legendSampleWidth / 2, l = o + s.legendTextGap;
164
- return i += n + s.legendItemGap, {
258
+ let n = r[t] ?? 0, a = i, o = a + m.legendSampleWidth, s = a + m.legendSampleWidth / 2, c = o + m.legendTextGap;
259
+ return i += n + m.legendItemGap, {
165
260
  id: `legend-${e}`,
166
261
  label: e,
167
262
  colorIndex: t,
168
263
  sampleX1: a,
169
264
  sampleX2: o,
170
- markerX: c,
171
- textX: l
265
+ markerX: s,
266
+ textX: c
172
267
  };
173
268
  });
174
269
  }
175
- function y(e, t) {
270
+ function E(e, t) {
176
271
  let n = [];
177
272
  for (let r of e) r !== e[0] && n.push({
178
273
  id: `guide-${r}`,
@@ -181,24 +276,24 @@ function y(e, t) {
181
276
  });
182
277
  return n;
183
278
  }
184
- function b(e, t) {
279
+ function D(e, t) {
185
280
  return e.map((e) => ({
186
281
  id: `tick-${e}`,
187
282
  value: e,
188
283
  y: t(e)
189
284
  }));
190
285
  }
191
- function x(e, t, n, r, i, a, o, c) {
192
- let l = h(e, t, n), u = l.flatMap((t) => e.map((e) => d(e, t))), { axisMin: m, axisMax: x } = g(Math.max(0, ...u), i, a, o), S = Math.max(1, x - m), C = f(c), w = Math.max(1, e.length) * s.itemStep, T = s.leftPadding, E = T + w, D = s.plotTop, O = D + s.plotHeight, k = T + w + s.rightPadding, A = O, j = O + s.xLabelOffset, M = O + s.axisLabelOffset, N = M + s.legendOffset, P = r && l.length > 1, F = P ? N + s.svgBottomPadding : M + s.svgBottomPadding, I = (e) => D + (x - e) / S * s.plotHeight, L = _(m, x, C), R = y(L, I), z = b(L, I), B = e.map((e, t) => {
193
- let n = T + t * s.itemStep + s.itemStep / 2;
286
+ function O(e, t, n, r, i, a, o, s) {
287
+ let c = S(e, t, n), l = c.flatMap((t) => e.map((e) => v(e, t))), { axisMin: u, axisMax: d } = C(Math.max(0, ...l), i, a, o), f = Math.max(1, d - u), p = y(s), h = Math.max(1, e.length) * m.itemStep, g = m.leftPadding, _ = g + h, x = m.plotTop, O = x + m.plotHeight, k = g + h + m.rightPadding, A = O, j = O + m.xLabelOffset, M = O + m.axisLabelOffset, N = M + m.legendOffset, P = r && c.length > 1, F = P ? N + m.svgBottomPadding : M + m.svgBottomPadding, I = (e) => x + (d - e) / f * m.plotHeight, L = w(u, d, p), R = E(L, I), z = D(L, I), B = e.map((e, t) => {
288
+ let n = g + t * m.itemStep + m.itemStep / 2;
194
289
  return {
195
290
  id: `category-${e.yAxis}-${t}`,
196
291
  label: e.yAxis,
197
292
  x: n
198
293
  };
199
- }), V = l.map((t, n) => {
294
+ }), V = c.map((t, n) => {
200
295
  let r = B.map((n, r) => {
201
- let i = e[r], a = d(i, t), o = I(p(a, m, x));
296
+ let i = e[r], a = v(i, t), o = I(b(a, u, d));
202
297
  return {
203
298
  id: `${t}-${n.id}`,
204
299
  label: n.label,
@@ -216,9 +311,9 @@ function x(e, t, n, r, i, a, o, c) {
216
311
  }), H = B.map((e) => ({
217
312
  id: `v-guide-${e.id}`,
218
313
  x: e.x
219
- })), U = P ? v(l, k / 2, N) : [], W = Math.max(1, V.length), G = s.itemStep * s.barGroupScale, K = s.barGap;
314
+ })), U = P ? T(c, k / 2, N) : [], W = Math.max(1, V.length), G = m.itemStep * m.barGroupScale, K = m.barGap;
220
315
  return {
221
- valueKeys: l,
316
+ valueKeys: c,
222
317
  categoryTicks: B,
223
318
  seriesModels: V,
224
319
  guides: R,
@@ -227,11 +322,11 @@ function x(e, t, n, r, i, a, o, c) {
227
322
  legendItems: U,
228
323
  svgHeight: F,
229
324
  svgWidth: k,
230
- barWidth: Math.max(2, Math.min(s.barWidthMax, (G - Math.max(0, W - 1) * K) / W)),
325
+ barWidth: Math.max(2, Math.min(m.barWidthMax, (G - Math.max(0, W - 1) * K) / W)),
231
326
  barGap: K,
232
- plotLeft: T,
233
- plotRight: E,
234
- plotTop: D,
327
+ plotLeft: g,
328
+ plotRight: _,
329
+ plotTop: x,
235
330
  plotBottom: O,
236
331
  xAxisY: A,
237
332
  xAxisLabelY: j,
@@ -239,142 +334,142 @@ function x(e, t, n, r, i, a, o, c) {
239
334
  legendY: N
240
335
  };
241
336
  }
242
- function S(e) {
337
+ function k(e) {
243
338
  return e.map((e) => `${e.x},${e.y}`).join(" ");
244
339
  }
245
- function C(...e) {
340
+ function A(...e) {
246
341
  return e.filter(Boolean).join(" ");
247
342
  }
248
- var w = e(function({ className: e = "", series: n, valueName: a, valueNames: o, palette: u, chartType: d = "line", topSpace: f = 8, yAxisMin: p, yAxisMax: m, yAxisInterval: h, xAxisName: g = "", showXAxisName: _ = !0, showLegend: v = !0, minPointHeight: y = 2, style: b, ...w }, T) {
249
- let E = l(f), D = t(() => x(n, a, o, v, E, p, m, h), [
250
- E,
343
+ var j = e(function({ className: e = "", series: n, valueName: r, valueNames: o, palette: s, chartType: c = "line", topSpace: l = 8, yAxisMin: u, yAxisMax: d, yAxisInterval: f, xAxisName: p = "", showXAxisName: _ = !0, showLegend: v = !0, minPointHeight: y = 2, style: b, ...x }, S) {
344
+ let C = g(l), w = t(() => O(n, r, o, v, C, u, d, f), [
345
+ C,
251
346
  n,
252
347
  v,
253
- a,
348
+ r,
254
349
  o,
255
- h,
256
- m,
257
- p
258
- ]), O = t(() => {
259
- if (!u || u.length === 0) return;
350
+ f,
351
+ d,
352
+ u
353
+ ]), T = t(() => {
354
+ if (!s || s.length === 0) return;
260
355
  let e = {};
261
- for (let t = 0; t < Math.min(10, u.length); t += 1) {
262
- let n = String(u[t] ?? "").trim();
356
+ for (let t = 0; t < Math.min(10, s.length); t += 1) {
357
+ let n = String(s[t] ?? "").trim();
263
358
  n && (e[`--nabs-ui-charts-series-inline-${t + 1}`] = n);
264
359
  }
265
360
  return Object.keys(e).length > 0 ? e : void 0;
266
- }, [u]), k = O ? {
267
- ...O,
361
+ }, [s]), E = T ? {
362
+ ...T,
268
363
  ...b
269
- } : b, A = C("nabs-ui-charts", c[d], e), j = _ && g.trim().length > 0, M = D.valueKeys.length > 0 ? D.valueKeys.join(", ") : String(a ?? "value");
270
- return /* @__PURE__ */ r("div", {
271
- ref: T,
272
- className: A,
273
- style: k,
274
- ...w,
275
- children: /* @__PURE__ */ i("svg", {
364
+ } : b, D = A("nabs-ui-charts", h[c], e), j = _ && p.trim().length > 0, M = w.valueKeys.length > 0 ? w.valueKeys.join(", ") : String(r ?? "value");
365
+ return /* @__PURE__ */ i("div", {
366
+ ref: S,
367
+ className: D,
368
+ style: E,
369
+ ...x,
370
+ children: /* @__PURE__ */ a("svg", {
276
371
  className: "nabs-ui-charts__svg",
277
- viewBox: `0 0 ${D.svgWidth} ${D.svgHeight}`,
372
+ viewBox: `0 0 ${w.svgWidth} ${w.svgHeight}`,
278
373
  role: "img",
279
- "aria-label": `2D ${d} chart for ${M}`,
374
+ "aria-label": `2D ${c} chart for ${M}`,
280
375
  preserveAspectRatio: "xMidYMid meet",
281
376
  children: [
282
- /* @__PURE__ */ r("rect", {
377
+ /* @__PURE__ */ i("rect", {
283
378
  className: "nabs-ui-charts__plotBoundary",
284
- x: D.plotLeft,
285
- y: D.plotTop,
286
- width: D.plotRight - D.plotLeft,
287
- height: D.plotBottom - D.plotTop
379
+ x: w.plotLeft,
380
+ y: w.plotTop,
381
+ width: w.plotRight - w.plotLeft,
382
+ height: w.plotBottom - w.plotTop
288
383
  }),
289
- D.verticalGuides.map((e) => /* @__PURE__ */ r("line", {
384
+ w.verticalGuides.map((e) => /* @__PURE__ */ i("line", {
290
385
  className: "nabs-ui-charts__guide",
291
386
  x1: e.x,
292
- y1: D.plotTop,
387
+ y1: w.plotTop,
293
388
  x2: e.x,
294
- y2: D.plotBottom
389
+ y2: w.plotBottom
295
390
  }, e.id)),
296
- D.guides.map((e) => /* @__PURE__ */ r("line", {
391
+ w.guides.map((e) => /* @__PURE__ */ i("line", {
297
392
  className: "nabs-ui-charts__guide",
298
- x1: D.plotLeft,
393
+ x1: w.plotLeft,
299
394
  y1: e.y,
300
- x2: D.plotRight,
395
+ x2: w.plotRight,
301
396
  y2: e.y
302
397
  }, e.id)),
303
- D.yTicks.map((e) => /* @__PURE__ */ r("text", {
398
+ w.yTicks.map((e) => /* @__PURE__ */ i("text", {
304
399
  className: "nabs-ui-charts__yTickLabel",
305
- x: D.plotLeft - 6,
400
+ x: w.plotLeft - 6,
306
401
  y: e.y,
307
402
  children: e.value
308
403
  }, e.id)),
309
- /* @__PURE__ */ r("line", {
404
+ /* @__PURE__ */ i("line", {
310
405
  className: "nabs-ui-charts__axis",
311
- x1: D.plotLeft,
312
- y1: D.xAxisY,
313
- x2: D.plotRight,
314
- y2: D.xAxisY
406
+ x1: w.plotLeft,
407
+ y1: w.xAxisY,
408
+ x2: w.plotRight,
409
+ y2: w.xAxisY
315
410
  }),
316
- d === "line" ? D.seriesModels.map((e) => {
317
- let t = C("nabs-ui-charts__line", `nabs-ui-charts__series-color-${e.colorIndex}`), n = C("nabs-ui-charts__point", `nabs-ui-charts__series-color-${e.colorIndex}`);
318
- return /* @__PURE__ */ i("g", { children: [e.points.length > 1 ? /* @__PURE__ */ r("polyline", {
411
+ c === "line" ? w.seriesModels.map((e) => {
412
+ let t = A("nabs-ui-charts__line", `nabs-ui-charts__series-color-${e.colorIndex}`), n = A("nabs-ui-charts__point", `nabs-ui-charts__series-color-${e.colorIndex}`);
413
+ return /* @__PURE__ */ a("g", { children: [e.points.length > 1 ? /* @__PURE__ */ i("polyline", {
319
414
  className: t,
320
- points: S(e.points)
321
- }) : null, e.points.map((t) => /* @__PURE__ */ r("circle", {
415
+ points: k(e.points)
416
+ }) : null, e.points.map((t) => /* @__PURE__ */ i("circle", {
322
417
  className: n,
323
418
  cx: t.x,
324
419
  cy: t.y,
325
420
  r: 1.5,
326
- children: /* @__PURE__ */ r("title", { children: `${t.label} • ${e.key}: ${t.value}` })
421
+ children: /* @__PURE__ */ i("title", { children: `${t.label} • ${e.key}: ${t.value}` })
327
422
  }, t.id))] }, e.id);
328
- }) : D.categoryTicks.map((e, t) => {
329
- let n = Math.max(1, D.seriesModels.length), i = n * D.barWidth + Math.max(0, n - 1) * D.barGap, a = e.x - i / 2;
330
- return /* @__PURE__ */ r("g", { children: D.seriesModels.map((n, i) => {
423
+ }) : w.categoryTicks.map((e, t) => {
424
+ let n = Math.max(1, w.seriesModels.length), r = n * w.barWidth + Math.max(0, n - 1) * w.barGap, a = e.x - r / 2;
425
+ return /* @__PURE__ */ i("g", { children: w.seriesModels.map((n, r) => {
331
426
  let o = n.points[t];
332
427
  if (!o) return null;
333
- let s = Math.max(D.xAxisY - o.y, y), c = D.xAxisY - s, l = a + i * (D.barWidth + D.barGap);
334
- return /* @__PURE__ */ r("rect", {
335
- className: C("nabs-ui-charts__bar", `nabs-ui-charts__series-color-${n.colorIndex}`),
428
+ let s = Math.max(w.xAxisY - o.y, y), c = w.xAxisY - s, l = a + r * (w.barWidth + w.barGap);
429
+ return /* @__PURE__ */ i("rect", {
430
+ className: A("nabs-ui-charts__bar", `nabs-ui-charts__series-color-${n.colorIndex}`),
336
431
  x: l,
337
432
  y: c,
338
- width: D.barWidth,
433
+ width: w.barWidth,
339
434
  height: s,
340
435
  rx: 1.5,
341
436
  ry: 1.5,
342
- children: /* @__PURE__ */ r("title", { children: `${e.label} • ${n.key}: ${o.value}` })
437
+ children: /* @__PURE__ */ i("title", { children: `${e.label} • ${n.key}: ${o.value}` })
343
438
  }, `${n.id}-${o.id}`);
344
439
  }) }, `bars-${e.id}`);
345
440
  }),
346
- D.categoryTicks.map((e) => /* @__PURE__ */ r("text", {
441
+ w.categoryTicks.map((e) => /* @__PURE__ */ i("text", {
347
442
  className: "nabs-ui-charts__tickLabel",
348
443
  x: e.x,
349
- y: D.xAxisLabelY,
444
+ y: w.xAxisLabelY,
350
445
  children: e.label
351
446
  }, `${e.id}-label`)),
352
- j ? /* @__PURE__ */ r("text", {
447
+ j ? /* @__PURE__ */ i("text", {
353
448
  className: "nabs-ui-charts__axisName",
354
- x: D.svgWidth / 2,
355
- y: D.axisNameY,
356
- children: g
449
+ x: w.svgWidth / 2,
450
+ y: w.axisNameY,
451
+ children: p
357
452
  }) : null,
358
- D.legendItems.map((e) => {
359
- let t = C("nabs-ui-charts__legendSample", `nabs-ui-charts__series-color-${e.colorIndex}`);
360
- return /* @__PURE__ */ i("g", { children: [
361
- /* @__PURE__ */ r("line", {
453
+ w.legendItems.map((e) => {
454
+ let t = A("nabs-ui-charts__legendSample", `nabs-ui-charts__series-color-${e.colorIndex}`);
455
+ return /* @__PURE__ */ a("g", { children: [
456
+ /* @__PURE__ */ i("line", {
362
457
  className: t,
363
458
  x1: e.sampleX1,
364
- y1: D.legendY,
459
+ y1: w.legendY,
365
460
  x2: e.sampleX2,
366
- y2: D.legendY
461
+ y2: w.legendY
367
462
  }),
368
- /* @__PURE__ */ r("circle", {
463
+ /* @__PURE__ */ i("circle", {
369
464
  className: t,
370
465
  cx: e.markerX,
371
- cy: D.legendY,
372
- r: s.legendMarkerRadius
466
+ cy: w.legendY,
467
+ r: m.legendMarkerRadius
373
468
  }),
374
- /* @__PURE__ */ r("text", {
469
+ /* @__PURE__ */ i("text", {
375
470
  className: "nabs-ui-charts__legendLabel",
376
471
  x: e.textX,
377
- y: D.legendY,
472
+ y: w.legendY,
378
473
  children: e.label
379
474
  })
380
475
  ] }, e.id);
@@ -383,6 +478,153 @@ var w = e(function({ className: e = "", series: n, valueName: a, valueNames: o,
383
478
  })
384
479
  });
385
480
  });
386
- w.displayName = "2DChart";
481
+ j.displayName = "2DChart";
482
+ var M = {
483
+ svgWidth: 400,
484
+ svgHeight: 180,
485
+ centerX: 88,
486
+ centerY: 90,
487
+ radius: 56,
488
+ donutInnerRadius: 30,
489
+ legendStartX: 172,
490
+ legendStartY: 40,
491
+ legendItemHeight: 18,
492
+ legendSwatchSize: 7,
493
+ legendTextGap: 6
494
+ };
495
+ function N(e) {
496
+ let t = _(e);
497
+ return t > 0 ? t : 0;
498
+ }
499
+ function P(e, t) {
500
+ let n = e.map((e, n) => {
501
+ let r = String(e.yAxis ?? `Slice ${n + 1}`).trim() || `Slice ${n + 1}`, i = N(e[t]);
502
+ return {
503
+ id: `slice-${r}-${n}`,
504
+ label: r,
505
+ value: i,
506
+ colorIndex: n % 10
507
+ };
508
+ }), r = n.reduce((e, t) => e + t.value, 0);
509
+ if (r <= 0) return [];
510
+ let i = -Math.PI / 2;
511
+ return n.map((e) => {
512
+ let t = e.value / r, n = i;
513
+ return i += t * Math.PI * 2, {
514
+ ...e,
515
+ ratio: t,
516
+ startAngle: n,
517
+ endAngle: i
518
+ };
519
+ });
520
+ }
521
+ function F(e, t, n, r) {
522
+ return {
523
+ x: e + n * Math.cos(r),
524
+ y: t + n * Math.sin(r)
525
+ };
526
+ }
527
+ function I(e, t, n) {
528
+ let r = e, i = t - n, a = e, o = t + n;
529
+ return [
530
+ `M ${e} ${t}`,
531
+ `L ${r} ${i}`,
532
+ `A ${n} ${n} 0 1 1 ${a} ${o}`,
533
+ `A ${n} ${n} 0 1 1 ${r} ${i}`,
534
+ "Z"
535
+ ].join(" ");
536
+ }
537
+ function L(e, t, n, r) {
538
+ let i = e, a = t - n, o = e, s = t + n, c = e, l = t - r, u = e, d = t + r;
539
+ return [
540
+ `M ${i} ${a}`,
541
+ `A ${n} ${n} 0 1 1 ${o} ${s}`,
542
+ `A ${n} ${n} 0 1 1 ${i} ${a}`,
543
+ `L ${c} ${l}`,
544
+ `A ${r} ${r} 0 1 0 ${u} ${d}`,
545
+ `A ${r} ${r} 0 1 0 ${c} ${l}`,
546
+ "Z"
547
+ ].join(" ");
548
+ }
549
+ function R(e, t, n, r, i, a) {
550
+ if (e.ratio >= .999999) return t === "donut" ? L(n, r, i, a) : I(n, r, i);
551
+ let o = +(e.endAngle - e.startAngle > Math.PI), s = F(n, r, i, e.startAngle), c = F(n, r, i, e.endAngle);
552
+ if (t === "pie") return [
553
+ `M ${n} ${r}`,
554
+ `L ${s.x} ${s.y}`,
555
+ `A ${i} ${i} 0 ${o} 1 ${c.x} ${c.y}`,
556
+ "Z"
557
+ ].join(" ");
558
+ let l = F(n, r, a, e.startAngle), u = F(n, r, a, e.endAngle);
559
+ return [
560
+ `M ${s.x} ${s.y}`,
561
+ `A ${i} ${i} 0 ${o} 1 ${c.x} ${c.y}`,
562
+ `L ${u.x} ${u.y}`,
563
+ `A ${a} ${a} 0 ${o} 0 ${l.x} ${l.y}`,
564
+ "Z"
565
+ ].join(" ");
566
+ }
567
+ var z = e(function({ className: e = "", series: n, valueName: r, palette: o, chartType: s = "pie", showLegend: c = !0, style: l, ...u }, d) {
568
+ let f = t(() => P(n, r), [n, r]), p = t(() => {
569
+ if (!o || o.length === 0) return;
570
+ let e = {};
571
+ for (let t = 0; t < Math.min(10, o.length); t += 1) {
572
+ let n = String(o[t] ?? "").trim();
573
+ n && (e[`--nabs-ui-charts-series-inline-${t + 1}`] = n);
574
+ }
575
+ return Object.keys(e).length > 0 ? e : void 0;
576
+ }, [o]);
577
+ return /* @__PURE__ */ i("div", {
578
+ ref: d,
579
+ className: A("nabs-ui-charts", "nabs-ui-charts--pie", `nabs-ui-charts--${s}`, e),
580
+ style: p ? {
581
+ ...p,
582
+ ...l
583
+ } : l,
584
+ ...u,
585
+ children: /* @__PURE__ */ a("svg", {
586
+ className: "nabs-ui-charts__svg",
587
+ viewBox: `0 0 ${M.svgWidth} ${M.svgHeight}`,
588
+ role: "img",
589
+ "aria-label": `${s} chart for ${r}`,
590
+ preserveAspectRatio: "xMidYMid meet",
591
+ children: [
592
+ f.length > 0 ? f.map((e) => {
593
+ let t = R(e, s, M.centerX, M.centerY, M.radius, M.donutInnerRadius);
594
+ return /* @__PURE__ */ i("path", {
595
+ className: A("nabs-ui-charts__pieSlice", `nabs-ui-charts__series-color-${e.colorIndex}`),
596
+ d: t,
597
+ children: /* @__PURE__ */ i("title", { children: `${e.label}: ${e.value}` })
598
+ }, e.id);
599
+ }) : null,
600
+ c ? f.map((e, t) => {
601
+ let n = M.legendStartY + t * M.legendItemHeight, r = A("nabs-ui-charts__legendSwatch", `nabs-ui-charts__series-color-${e.colorIndex}`), o = n - M.legendSwatchSize / 2, s = M.legendStartX + M.legendSwatchSize + M.legendTextGap;
602
+ return /* @__PURE__ */ a("g", { children: [/* @__PURE__ */ i("rect", {
603
+ className: r,
604
+ x: M.legendStartX,
605
+ y: o,
606
+ width: M.legendSwatchSize,
607
+ height: M.legendSwatchSize,
608
+ rx: 1,
609
+ ry: 1
610
+ }), /* @__PURE__ */ i("text", {
611
+ className: "nabs-ui-charts__legendLabel",
612
+ x: s,
613
+ y: n,
614
+ children: `${e.label} (${Math.round(e.ratio * 100)}%)`
615
+ })] }, `legend-${e.id}`);
616
+ }) : null,
617
+ f.length === 0 ? /* @__PURE__ */ i("text", {
618
+ className: "nabs-ui-charts__legendLabel",
619
+ x: M.centerX,
620
+ y: M.centerY,
621
+ textAnchor: "middle",
622
+ children: "No data"
623
+ }) : null
624
+ ]
625
+ })
626
+ });
627
+ });
628
+ z.displayName = "PieChart";
387
629
  //#endregion
388
- export { o as Branding, a as Shell, w as TwoDChart };
630
+ export { s as Branding, p as Breadcrumb, z as PieChart, o as Shell, j as TwoDChart };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@net-advantage/nabs-ui-shell",
3
- "version": "0.59.0",
3
+ "version": "0.60.0",
4
4
  "description": "Reusable React app shell for the Nabs UI library.",
5
5
  "type": "module",
6
6
  "main": "./dist/nabs-ui-shell.cjs",
@@ -27,37 +27,38 @@
27
27
  ],
28
28
  "dependencies": {
29
29
  "react": "^19.0.0",
30
- "@net-advantage/nabs-ui-accordion": "0.59.0",
31
- "@net-advantage/nabs-ui-avatar": "0.59.0",
32
- "@net-advantage/nabs-ui-buttons": "0.59.0",
33
- "@net-advantage/nabs-ui-cards": "0.59.0",
34
- "@net-advantage/nabs-ui-charts": "0.59.0",
35
- "@net-advantage/nabs-ui-checkbox": "0.59.0",
36
- "@net-advantage/nabs-ui-code": "0.59.0",
37
- "@net-advantage/nabs-ui-combobox": "0.59.0",
38
- "@net-advantage/nabs-ui-datepicker": "0.59.0",
39
- "@net-advantage/nabs-ui-dialog": "0.59.0",
40
- "@net-advantage/nabs-ui-dropdownlist": "0.59.0",
41
- "@net-advantage/nabs-ui-dropdownmenu": "0.59.0",
42
- "@net-advantage/nabs-ui-dynamicform": "0.59.0",
43
- "@net-advantage/nabs-ui-fileupload": "0.59.0",
44
- "@net-advantage/nabs-ui-graph": "0.59.0",
45
- "@net-advantage/nabs-ui-grid": "0.59.0",
46
- "@net-advantage/nabs-ui-layout": "0.59.0",
47
- "@net-advantage/nabs-ui-markdown": "0.59.0",
48
- "@net-advantage/nabs-ui-navigation": "0.59.0",
49
- "@net-advantage/nabs-ui-panel": "0.59.0",
50
- "@net-advantage/nabs-ui-radiobutton": "0.59.0",
51
- "@net-advantage/nabs-ui-signature": "0.59.0",
52
- "@net-advantage/nabs-ui-slider": "0.59.0",
53
- "@net-advantage/nabs-ui-stepper": "0.59.0",
54
- "@net-advantage/nabs-ui-tab": "0.59.0",
55
- "@net-advantage/nabs-ui-textarea": "0.59.0",
56
- "@net-advantage/nabs-ui-textbox": "0.59.0",
57
- "@net-advantage/nabs-ui-themes": "0.59.0",
58
- "@net-advantage/nabs-ui-themes-dark": "0.59.0",
59
- "@net-advantage/nabs-ui-themes-light": "0.59.0",
60
- "@net-advantage/nabs-ui-toolbar": "0.59.0"
30
+ "@net-advantage/nabs-ui-accordion": "0.60.0",
31
+ "@net-advantage/nabs-ui-avatar": "0.60.0",
32
+ "@net-advantage/nabs-ui-breadcrumb": "0.60.0",
33
+ "@net-advantage/nabs-ui-buttons": "0.60.0",
34
+ "@net-advantage/nabs-ui-cards": "0.60.0",
35
+ "@net-advantage/nabs-ui-charts": "0.60.0",
36
+ "@net-advantage/nabs-ui-checkbox": "0.60.0",
37
+ "@net-advantage/nabs-ui-code": "0.60.0",
38
+ "@net-advantage/nabs-ui-combobox": "0.60.0",
39
+ "@net-advantage/nabs-ui-datepicker": "0.60.0",
40
+ "@net-advantage/nabs-ui-dialog": "0.60.0",
41
+ "@net-advantage/nabs-ui-dropdownlist": "0.60.0",
42
+ "@net-advantage/nabs-ui-dropdownmenu": "0.60.0",
43
+ "@net-advantage/nabs-ui-dynamicform": "0.60.0",
44
+ "@net-advantage/nabs-ui-fileupload": "0.60.0",
45
+ "@net-advantage/nabs-ui-graph": "0.60.0",
46
+ "@net-advantage/nabs-ui-grid": "0.60.0",
47
+ "@net-advantage/nabs-ui-layout": "0.60.0",
48
+ "@net-advantage/nabs-ui-markdown": "0.60.0",
49
+ "@net-advantage/nabs-ui-navigation": "0.60.0",
50
+ "@net-advantage/nabs-ui-panel": "0.60.0",
51
+ "@net-advantage/nabs-ui-radiobutton": "0.60.0",
52
+ "@net-advantage/nabs-ui-signature": "0.60.0",
53
+ "@net-advantage/nabs-ui-slider": "0.60.0",
54
+ "@net-advantage/nabs-ui-stepper": "0.60.0",
55
+ "@net-advantage/nabs-ui-tab": "0.60.0",
56
+ "@net-advantage/nabs-ui-textarea": "0.60.0",
57
+ "@net-advantage/nabs-ui-textbox": "0.60.0",
58
+ "@net-advantage/nabs-ui-themes": "0.60.0",
59
+ "@net-advantage/nabs-ui-themes-dark": "0.60.0",
60
+ "@net-advantage/nabs-ui-themes-light": "0.60.0",
61
+ "@net-advantage/nabs-ui-toolbar": "0.60.0"
61
62
  },
62
63
  "devDependencies": {
63
64
  "@types/react": "^19.0.0",