@shineuix/ssr 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/THIRD-PARTY-NOTICES.md +15 -15
- package/dist/components/index.js +1 -1
- package/dist/components/p-0NNDSmh0.js +1 -0
- package/dist/components/{p-CDJMRbCX.js → p-2OGp7Y2F.js} +1 -1
- package/dist/components/{p-D0KZcTn9.js → p-3rGcn3Dk.js} +1 -1
- package/dist/components/{p-Hej7hALV.js → p-B1-k9bVs.js} +1 -1
- package/dist/components/{p-BmmgLDk2.js → p-B3hr5-fa.js} +1 -1
- package/dist/components/{p-vN2wl76B.js → p-BB3IbuND.js} +1 -1
- package/dist/components/{p-eoxRNwfF.js → p-BBNN1byS.js} +1 -1
- package/dist/components/p-BJYToX7G.js +1 -0
- package/dist/components/{p-Bv5xqCDb.js → p-BLK-elHV.js} +1 -1
- package/dist/components/{p-iKk1YZ0M.js → p-BLxI_QCP.js} +1 -1
- package/dist/components/p-BQJXtvhG.js +1 -0
- package/dist/components/{p-8BHOb7Dy.js → p-BglXr2C4.js} +1 -1
- package/dist/components/{p-CYZG3LOZ.js → p-BkdpcGfq.js} +1 -1
- package/dist/components/{p-DhYPkfV2.js → p-Bpr2o3vT.js} +1 -1
- package/dist/components/{p-C6T8Kp68.js → p-BtgC2u2Q.js} +1 -1
- package/dist/components/{p-DNgqy3W8.js → p-BwHBOv1l.js} +1 -1
- package/dist/components/{p-B0NNDkks.js → p-BwkaZsaT.js} +1 -1
- package/dist/components/{p-l4ru8vIR.js → p-C-tuu2jV.js} +1 -1
- package/dist/components/p-C5TSOOMd.js +1 -0
- package/dist/components/{p-5IOXzr3D.js → p-C6J9xhWE.js} +1 -1
- package/dist/components/{p-DSNURte-.js → p-CBiEHE-i.js} +1 -1
- package/dist/components/p-CDaU9b47.js +1 -0
- package/dist/components/p-CDiy2nTd.js +1 -0
- package/dist/components/{p-DtI1DFsR.js → p-CFn_q23Q.js} +1 -1
- package/dist/components/{p-pJYXPDB_.js → p-CUB_NKYi.js} +1 -1
- package/dist/components/p-CaekSnKG.js +1 -0
- package/dist/components/{p-D9rbC_yY.js → p-Cb1wtfPJ.js} +1 -1
- package/dist/components/{p-CyBxJm67.js → p-Cb50ss23.js} +1 -1
- package/dist/components/{p-CT6aJe8X.js → p-Cbd6cMaD.js} +1 -1
- package/dist/components/{p-NpX9eEW0.js → p-CiFpI_XW.js} +1 -1
- package/dist/components/{p-Ds9HpZbg.js → p-CmEfiaNv.js} +1 -1
- package/dist/components/{p-C6DEF4nA.js → p-CqvOA-0K.js} +1 -1
- package/dist/components/p-D00-pPuH.js +1 -0
- package/dist/components/{p-Deadvw27.js → p-D0BIoHLP.js} +1 -1
- package/dist/components/{p-C0MrkGLb.js → p-D0WdoZzs.js} +1 -1
- package/dist/components/{p-DSjolNQa.js → p-D1HckqwW.js} +1 -1
- package/dist/components/{p-Dgl_qIYT.js → p-D3Vt3xcn.js} +1 -1
- package/dist/components/{p-mdFjb4l0.js → p-DDyzuLfq.js} +1 -1
- package/dist/components/p-DW6x7zfX.js +1 -0
- package/dist/components/p-DWqzHMCu.js +1 -0
- package/dist/components/p-DX9wgxoJ.js +1 -0
- package/dist/components/{p-BJXb6pu9.js → p-Dh0O8nfH.js} +1 -1
- package/dist/components/{p-BEa7fx4d.js → p-DpbLhd6d.js} +1 -1
- package/dist/components/p-DquILvXX.js +1 -0
- package/dist/components/{p-CN5x4MC8.js → p-DsHK25q3.js} +1 -1
- package/dist/components/{p-D31mbQ3e.js → p-DthM6mDw.js} +1 -1
- package/dist/components/p-DuYxgKgU.js +1 -0
- package/dist/components/p-FKYMQPFB.js +1 -0
- package/dist/components/{p-CCVYcPwO.js → p-G2jDNXXR.js} +1 -1
- package/dist/components/p-VFpQ6hXH.js +1 -0
- package/dist/components/{p-v0MrzKlW.js → p-b5Ks_pUg.js} +1 -1
- package/dist/components/{p-CjVByuTx.js → p-czkAmPgI.js} +1 -1
- package/dist/components/{p-DuJmXwMk.js → p-hbVWBG4S.js} +1 -1
- package/dist/components/{p--YwzuGO4.js → p-kDhmjEYc.js} +1 -1
- package/dist/components/{p-BPGiU7Vj.js → p-lu4HWrMJ.js} +1 -1
- package/dist/components/{p-CR0heQtR.js → p-mEOcDy5S.js} +1 -1
- package/dist/components/{p-TBwsYzWO.js → p-piEUki9n.js} +1 -1
- package/dist/components/{p-D7L5Nhsy.js → p-qtQ1008P.js} +1 -1
- package/dist/components/p-qut9RP2y.js +1 -0
- package/dist/components/p-wknHx00K.js +1 -0
- package/dist/components/sui-accordion-item.js +1 -1
- package/dist/components/sui-accordion.js +1 -1
- package/dist/components/sui-anchor.js +1 -1
- package/dist/components/sui-auto-complete.js +1 -1
- package/dist/components/sui-avatar-group.js +1 -1
- package/dist/components/sui-avatar.js +1 -1
- package/dist/components/sui-block-ui.js +1 -1
- package/dist/components/sui-board.js +1 -1
- package/dist/components/sui-bottom-nav.js +1 -1
- package/dist/components/sui-breadcrumb.js +1 -1
- package/dist/components/sui-button-group.js +1 -1
- package/dist/components/sui-button.js +1 -1
- package/dist/components/sui-calendar.js +1 -1
- package/dist/components/sui-card.js +1 -1
- package/dist/components/sui-carousel.js +1 -1
- package/dist/components/sui-cascade-select.js +1 -1
- package/dist/components/sui-chart-bar.js +1 -1
- package/dist/components/sui-chart-candlestick.js +1 -1
- package/dist/components/sui-chart-combo.js +1 -1
- package/dist/components/sui-chart-gauge.js +1 -1
- package/dist/components/sui-chart-heatmap.js +1 -1
- package/dist/components/sui-chart-line.js +1 -1
- package/dist/components/sui-chart-navigator.js +1 -1
- package/dist/components/sui-chart-pie.js +1 -1
- package/dist/components/sui-chart-radar.js +1 -1
- package/dist/components/sui-chart-scatter.js +1 -1
- package/dist/components/sui-chart-synced.js +1 -1
- package/dist/components/sui-chart-treemap.js +1 -1
- package/dist/components/sui-chart-waterfall.js +1 -1
- package/dist/components/sui-checkbox-group.js +1 -1
- package/dist/components/sui-checkbox.js +1 -1
- package/dist/components/sui-chip.js +1 -1
- package/dist/components/sui-choice-cards.js +1 -1
- package/dist/components/sui-code-block.js +1 -1
- package/dist/components/sui-color-editor.js +1 -1
- package/dist/components/sui-color-picker.js +1 -1
- package/dist/components/sui-command-palette.js +1 -1
- package/dist/components/sui-config-list.js +1 -1
- package/dist/components/sui-config-row.js +1 -1
- package/dist/components/sui-confirm-dialog.js +1 -1
- package/dist/components/sui-confirm-popup.js +1 -1
- package/dist/components/sui-context-menu.js +1 -1
- package/dist/components/sui-copy-button.js +1 -1
- package/dist/components/sui-data-grid.js +1 -1
- package/dist/components/sui-data-table.js +1 -1
- package/dist/components/sui-data-view.js +1 -1
- package/dist/components/sui-date-picker.js +1 -1
- package/dist/components/sui-description-list.js +1 -1
- package/dist/components/sui-dialog.js +1 -1
- package/dist/components/sui-divider.js +1 -1
- package/dist/components/sui-dock.js +1 -1
- package/dist/components/sui-drawer.js +1 -1
- package/dist/components/sui-edit-box.js +1 -1
- package/dist/components/sui-empty-state.js +1 -1
- package/dist/components/sui-fieldset.js +1 -1
- package/dist/components/sui-file-upload.js +1 -1
- package/dist/components/sui-filter-builder.js +1 -1
- package/dist/components/sui-filter-panel.js +1 -1
- package/dist/components/sui-float-label.js +1 -1
- package/dist/components/sui-fluid.js +1 -1
- package/dist/components/sui-form-actions.js +1 -1
- package/dist/components/sui-form-layout.js +1 -1
- package/dist/components/sui-form.js +1 -1
- package/dist/components/sui-galleria.js +1 -1
- package/dist/components/sui-icon-button.js +1 -1
- package/dist/components/sui-icon-field.js +1 -1
- package/dist/components/sui-ifta-label.js +1 -1
- package/dist/components/sui-image-compare.js +1 -1
- package/dist/components/sui-image.js +1 -1
- package/dist/components/sui-inplace.js +1 -1
- package/dist/components/sui-input-group-addon.js +1 -1
- package/dist/components/sui-input-group.js +1 -1
- package/dist/components/sui-input-mask.js +1 -1
- package/dist/components/sui-input-number.js +1 -1
- package/dist/components/sui-input-otp.js +1 -1
- package/dist/components/sui-input-tags.js +1 -1
- package/dist/components/sui-input-text.js +1 -1
- package/dist/components/sui-kbd.js +1 -1
- package/dist/components/sui-knob.js +1 -1
- package/dist/components/sui-list.js +1 -1
- package/dist/components/sui-listbox.js +1 -1
- package/dist/components/sui-mega-menu.js +1 -1
- package/dist/components/sui-menu.js +1 -1
- package/dist/components/sui-menubar.js +1 -1
- package/dist/components/sui-message.js +1 -1
- package/dist/components/sui-meter-group.js +1 -1
- package/dist/components/sui-mini-toolbar.js +1 -1
- package/dist/components/sui-multi-select.js +1 -1
- package/dist/components/sui-notification-center.js +1 -1
- package/dist/components/sui-order-list.js +1 -1
- package/dist/components/sui-org-chart.js +1 -1
- package/dist/components/sui-page-header.js +1 -1
- package/dist/components/sui-paginator.js +1 -1
- package/dist/components/sui-panel-menu.js +1 -1
- package/dist/components/sui-panel.js +1 -1
- package/dist/components/sui-password.js +1 -1
- package/dist/components/sui-persona.js +1 -1
- package/dist/components/sui-pick-list.js +1 -1
- package/dist/components/sui-popover.js +1 -1
- package/dist/components/sui-progress-bar.js +1 -1
- package/dist/components/sui-progress-ring.js +1 -1
- package/dist/components/sui-progress-spinner.js +1 -1
- package/dist/components/sui-qr-code.js +1 -1
- package/dist/components/sui-radio-button.js +1 -1
- package/dist/components/sui-radio-group.js +1 -1
- package/dist/components/sui-rating.js +1 -1
- package/dist/components/sui-rich-text-editor.js +1 -1
- package/dist/components/sui-save-status.js +1 -1
- package/dist/components/sui-scheduler-builder.js +1 -1
- package/dist/components/sui-scroll-panel.js +1 -1
- package/dist/components/sui-scroll-top.js +1 -1
- package/dist/components/sui-select-button.js +1 -1
- package/dist/components/sui-select.js +1 -1
- package/dist/components/sui-side-nav.js +1 -1
- package/dist/components/sui-skeleton-card.js +1 -1
- package/dist/components/sui-skeleton.js +1 -1
- package/dist/components/sui-slider.js +1 -1
- package/dist/components/sui-sparkline.js +1 -1
- package/dist/components/sui-speed-dial.js +1 -1
- package/dist/components/sui-split-button.js +1 -1
- package/dist/components/sui-splitter.js +1 -1
- package/dist/components/sui-spoiler.js +1 -1
- package/dist/components/sui-stat-card.js +1 -1
- package/dist/components/sui-stepper.js +1 -1
- package/dist/components/sui-tab.js +1 -1
- package/dist/components/sui-tabs.js +1 -1
- package/dist/components/sui-tag.js +1 -1
- package/dist/components/sui-terminal.js +1 -1
- package/dist/components/sui-textarea.js +1 -1
- package/dist/components/sui-theme-picker.js +1 -1
- package/dist/components/sui-tiered-menu.js +1 -1
- package/dist/components/sui-time-picker.js +1 -1
- package/dist/components/sui-timeline.js +1 -1
- package/dist/components/sui-toast-host.js +1 -1
- package/dist/components/sui-toggle-button.js +1 -1
- package/dist/components/sui-toggle-switch.js +1 -1
- package/dist/components/sui-toolbar.js +1 -1
- package/dist/components/sui-tooltip.js +1 -1
- package/dist/components/sui-tour.js +1 -1
- package/dist/components/sui-tree-select.js +1 -1
- package/dist/components/sui-tree-table.js +1 -1
- package/dist/components/sui-tree.js +1 -1
- package/dist/components/sui-trend.js +1 -1
- package/dist/components/sui-virtual-scroller.js +1 -1
- package/dist/hydrate/index.js +1 -1
- package/dist/hydrate/index.mjs +1 -1
- package/package.json +8 -3
- package/dist/components/p-7Ti-Ht9x.js +0 -1
- package/dist/components/p-9ma1-eiT.js +0 -1
- package/dist/components/p-BiSaIyr0.js +0 -1
- package/dist/components/p-BioVIgkG.js +0 -1
- package/dist/components/p-CAeBVGwP.js +0 -1
- package/dist/components/p-COO9uV7W.js +0 -1
- package/dist/components/p-CbnOosJi.js +0 -1
- package/dist/components/p-CekHtBpA.js +0 -1
- package/dist/components/p-Cs2X0Kih.js +0 -1
- package/dist/components/p-D_hGdmbW.js +0 -1
- package/dist/components/p-DgXzRiP4.js +0 -1
- package/dist/components/p-DgiZgZCh.js +0 -1
- package/dist/components/p-DskQyZoR.js +0 -1
- package/dist/components/p-Dxh8L0dt.js +0 -1
- package/dist/components/p-RwPlJzMY.js +0 -1
- package/dist/components/p-mF7K10Wh.js +0 -1
- package/dist/components/p-n4-59tbj.js +0 -1
- /package/dist/components/{p-DdsE4HI6.js → p-BeYfX4rQ.js} +0 -0
- /package/dist/components/{p-DXIDl7cw.js → p-CZ4DDtn8.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as t,H as a,c as i,h as s,a as r,t as o}from"./p-CeVlau-G.js";import{l as c,d as n,C as h,c as e}from"./p-Bv5xqCDb.js";import{h as u,w as g,d as p,m as v}from"./p-DtI1DFsR.js";import{d}from"./p-BHB1Wprj.js";import{c as l}from"./p-Bzu70qWq.js";import{a as x,l as f}from"./p-BuyjS5bS.js";const b=[.55,1],w=(t,a)=>!!t&&!!a&&t[0]===a[0]&&t[1]===a[1],m="var(--sui-chart-navigator-area, var(--viz-4))",k="var(--sui-chart-navigator-line, var(--viz-2))",y=t(class extends a{constructor(t){super(),!1!==t&&this.__registerHost(),this.suiWindowChange=i(this,"suiWindowChange",3)}get host(){return this}data=[];width=460;window;curve=!1;zoom=!1;heading;subtitle;caption;emptyMessage;loading=!1;suiWindowChange;hasHeaderEnd=!1;span;winEl;hostName={};stopHostName;strip;stripBox;drag;touches=new Map;pinch;armed=!1;async setFocus(){this.winEl?.focus()}componentWillLoad(){this.hasHeaderEnd=u(this.host,"header-end"),(this.data||[]).length>=2&&this.put(this.held(this.window))}onData(t,a){if((t||[]).length<2)return;const i=(a||[]).length-1;if(i<1)return this.span=void 0,void this.put(this.held(this.window));const s=this.fracOf(i);this.span=s,this.put(this.held(this.indicesOf(s,this.last)))}componentDidLoad(){this.armZoom()}connectedCallback(){d(this.host,(()=>this.winEl)),this.stopHostName?.(),this.stopHostName=g(this.host,(t=>{this.hostName=t})),this.armZoom()}armZoom(){this.zoom!==this.armed&&(this.zoom?this.arm():this.disarm(),this.armed=this.zoom)}arm(){this.host.addEventListener("wheel",this.onWheel,{passive:!1}),this.host.addEventListener("pointerdown",this.onTouchDown),this.host.addEventListener("pointermove",this.onTouchMove,{passive:!1}),this.host.addEventListener("pointerup",this.onTouchUp),this.host.addEventListener("pointercancel",this.onTouchUp)}disarm(){this.host.removeEventListener("wheel",this.onWheel),this.host.removeEventListener("pointerdown",this.onTouchDown),this.host.removeEventListener("pointermove",this.onTouchMove),this.host.removeEventListener("pointerup",this.onTouchUp),this.host.removeEventListener("pointercancel",this.onTouchUp),this.touches.clear(),this.pinch=void 0}disconnectedCallback(){this.stopHostName?.(),this.stopHostName=void 0,this.endDrag(),this.armed&&this.disarm(),this.armed=!1}get step(){return 1/Math.max(this.data.length-1,1)}get minSpan(){return Math.min(1,2*this.step)}get last(){return Math.max((this.data||[]).length-1,0)}indicesOf(t,a){return[Math.round(t[0]*a),Math.round(t[1]*a)]}held(t,a=this.last){if(!t||t.length<2||!Number.isFinite(Number(t[0]))||!Number.isFinite(Number(t[1])))return this.indicesOf(b,a);let i=Math.min(Math.max(Math.round(Number(t[0])),0),a),s=Math.min(Math.max(Math.round(Number(t[1])),0),a);return s<i&&([i,s]=[s,i]),s===i&&a>0&&(s<a?s++:i--),[i,s]}fracOf(t){const a=this.window?this.held(this.window,t):void 0;return!this.span||a&&!w(this.indicesOf(this.span,t),a)?a&&t>0?[a[0]/t,a[1]/t]:b:this.span}get frac(){return this.fracOf(this.last)}put(t){w(t,this.window)||(this.window=t,this.suiWindowChange.emit(t))}commit(t,a){this.span=[t=Math.max(0,Math.min(t,1)),a=Math.max(t,Math.min(a,1))],this.put(this.indicesOf(this.span,this.last))}anchorAt(t,a){const[i,s]=this.frac,r=this.stripBox,o=!!r&&!!a&&r.contains(a),c=(o?r:this.host).getBoundingClientRect();if(!c.width)return(i+s)/2;const n=Math.max(0,Math.min((t-c.left)/c.width,1));return o?n:i+n*(s-i)}scaleWindow(t,a){const[i,s]=this.frac,r=s-i,o=Math.max(this.minSpan,Math.min(r*t,1));if(Math.abs(o-r)<1e-6)return!1;const c=Math.max(i,Math.min(a,s)),n=Math.max(0,Math.min(c-(r>0?(c-i)/r:.5)*o,1-o));return this.commit(n,n+o),!0}onWheel=t=>{if(!this.zoom)return;const a=1===t.deltaMode?16*t.deltaY:2===t.deltaMode?400*t.deltaY:t.deltaY;a&&this.scaleWindow(Math.exp(.002*a),this.anchorAt(t.clientX,t.target))&&t.preventDefault()};onTouchDown=t=>{if("touch"!==t.pointerType)return;if(this.touches.set(t.pointerId,t.clientX),2!==this.touches.size)return;this.endDrag();const a=Array.from(this.touches.values()),[i,s]=this.frac;this.pinch={d0:Math.max(Math.abs(a[0]-a[1]),1),span:s-i,anchor:this.anchorAt((a[0]+a[1])/2,t.target)}};onTouchMove=t=>{if("touch"!==t.pointerType||!this.touches.has(t.pointerId))return;if(this.touches.set(t.pointerId,t.clientX),2!==this.touches.size||!this.pinch)return;t.preventDefault();const a=Array.from(this.touches.values()),i=Math.max(Math.abs(a[0]-a[1]),1),[s,r]=this.frac,o=r-s;o>0&&this.scaleWindow(Math.max(this.minSpan,Math.min(this.pinch.span*(this.pinch.d0/i),1))/o,this.pinch.anchor)};onTouchUp=t=>{"touch"===t.pointerType&&(this.touches.delete(t.pointerId),this.touches.size<2&&(this.pinch=void 0))};onPointerDown=t=>{if(0!==t.button)return;t.preventDefault();const a=t.target.getAttribute("data-edge"),i=this.strip?this.strip.getBoundingClientRect():{width:0};this.drag={startX:t.clientX,w0:this.frac,width:i.width||1,edge:a},t.currentTarget.focus(),document.addEventListener("pointermove",this.onPointerMove),document.addEventListener("pointerup",this.endDrag),document.addEventListener("pointercancel",this.endDrag)};onPointerMove=t=>{if(!this.drag)return;const{startX:a,w0:i,width:s,edge:r}=this.drag,o=(t.clientX-a)/s,c=this.step;if("lo"===r)this.commit(Math.min(Math.max(i[0]+o,0),i[1]-c),i[1]);else if("hi"===r)this.commit(i[0],Math.max(Math.min(i[1]+o,1),i[0]+c));else{const t=i[1]-i[0],a=Math.min(Math.max(i[0]+o,0),1-t);this.commit(a,a+t)}};endDrag=()=>{this.drag=void 0,document.removeEventListener("pointermove",this.onPointerMove),document.removeEventListener("pointerup",this.endDrag),document.removeEventListener("pointercancel",this.endDrag)};onKeyDown=t=>{const[a,i]=this.frac,s=this.step,r=i-a;let o;switch(t.key){case"PageDown":o=Math.max(a-r,0),this.commit(o,o+r);break;case"PageUp":o=Math.min(a+r,1-r),this.commit(o,o+r);break;case"ArrowLeft":case"ArrowDown":t.shiftKey?this.commit(a,Math.max(i-s,a+s)):(o=Math.max(a-s,0),this.commit(o,o+r));break;case"ArrowRight":case"ArrowUp":t.shiftKey?this.commit(a,Math.min(i+s,1)):(o=Math.min(a+s,1-r),this.commit(o,o+r));break;case"Home":this.commit(0,r);break;case"End":this.commit(1-r,1);break;default:return}t.preventDefault()};render(){const{data:t,width:a}=this,i=t.length,o=v(t,[0,0]),u=c(0,i-1,0,a),g=c(o[0],o[1],40,4),d=p(t,u,g),b=g(0),[w,y]=this.frac,[M,z]=this.window?this.held(this.window):this.indicesOf([w,y],this.last),C=!!(this.heading||this.subtitle||this.caption),T=this.curve?[s("path",{d:l(t,u,g)+` L ${a},${b} L 0,${b} Z`,fill:m,opacity:.8}),s("path",{d:l(t,u,g),fill:"none",stroke:k,"stroke-width":1.2})]:[s("polygon",{points:`${d} ${a},${b} 0,${b}`,fill:m,opacity:.8}),s("polyline",{points:d,fill:"none",stroke:k,"stroke-width":1.2})],D=i<2,j=[s("slot",{key:"f7205f63cf670b7bc7eb28c18966e4e759102442"}),this.loading?s("div",{class:"nav"},s(n,{height:44,label:x(void 0,"chart-navigator.loading",void 0,"Loading")})):D?s("div",{class:"nav"},s("div",{class:"sui-chart-plot",style:{height:"44px"}},s(h,{text:x(void 0,"chart-navigator.empty",this.emptyMessage,"Nothing to plot yet.")}))):s("div",{class:"nav"},s("div",{class:"strip",ref:t=>this.stripBox=t},s("svg",{ref:t=>this.strip=t,viewBox:`0 0 ${a} 44`,"aria-hidden":"true"},T),s("div",{class:"win",ref:t=>this.winEl=t,style:{left:+(100*w).toFixed(3)+"%",width:+(100*(y-w)).toFixed(3)+"%"},tabindex:"0",role:"slider","aria-label":this.hostName.labelledby?this.hostName.label:this.hostName.label||x(void 0,"chart-navigator.contextWindow",void 0,"Context window"),"aria-labelledby":this.hostName.labelledby,"aria-valuemin":1,"aria-valuemax":i,"aria-valuenow":M+1,"aria-valuetext":f(void 0,"chart-navigator.window",void 0,"Day {start} – {end} of {count}",{start:M+1,end:z+1,count:i}),"aria-orientation":"horizontal",onPointerDown:this.onPointerDown,onKeyDown:this.onKeyDown},s("span",{class:"grip lo","data-edge":"lo"}),s("span",{class:"grip hi","data-edge":"hi"}))),s("div",{class:"status"},s("span",{class:"prose"},f(void 0,"chart-navigator.status",void 0,"Window: day {start} – {end} of {count} · drag to pan, handles resize, arrow keys move",{start:M+1,end:z+1,count:i}))))];return s(r,{key:"89cb3caf2431243691b453b7f25d3978a053c0fd","aria-busy":this.loading?"true":null},C?s(e,{title:this.heading,subtitle:this.subtitle,caption:this.caption,hasHeaderEnd:this.hasHeaderEnd},j):j)}static get watchers(){return{data:[{onData:0}],zoom:[{armZoom:0}]}}static get style(){return".sc-sui-chart-navigator-h{display:block;font-family:var(--font-sans)}[zoom].sc-sui-chart-navigator-h{touch-action:pan-y}.nav.sc-sui-chart-navigator{margin-top:6px;padding:0 16px}.strip.sc-sui-chart-navigator{position:relative;direction:ltr}.strip.sc-sui-chart-navigator svg.sc-sui-chart-navigator{display:block;width:100%;height:auto;box-sizing:border-box;border-radius:6px;background:var(--surface-sunken);border:1px solid var(--hairline)}.win.sc-sui-chart-navigator{position:absolute;top:0;bottom:0;box-sizing:border-box;border:1.5px solid var(--accent);border-radius:6px;background:color-mix(in srgb, var(--accent) 10%, transparent);cursor:grab;touch-action:none;user-select:none}.win.sc-sui-chart-navigator:active{cursor:grabbing}.win.sc-sui-chart-navigator:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;box-shadow:var(--focus-shadow)}.grip.sc-sui-chart-navigator{position:absolute;top:50%;width:5px;height:14px;border-radius:3px;background:var(--accent);cursor:ew-resize}.grip.lo.sc-sui-chart-navigator{left:-1px;transform:translate(-50%, -50%)}.grip.hi.sc-sui-chart-navigator{right:-1px;transform:translate(50%, -50%)}.grip.sc-sui-chart-navigator::after{content:'';position:absolute;inset:-6px -5px}.status.sc-sui-chart-navigator{font-size:10px;color:var(--ink-faint);margin-top:4px;font-feature-settings:'tnum'}@media (forced-colors: active){.strip.sc-sui-chart-navigator svg.sc-sui-chart-navigator{forced-color-adjust:none;background:Canvas;border-color:CanvasText}.strip.sc-sui-chart-navigator svg.sc-sui-chart-navigator path.sc-sui-chart-navigator,.strip.sc-sui-chart-navigator svg.sc-sui-chart-navigator polyline.sc-sui-chart-navigator,.strip.sc-sui-chart-navigator svg.sc-sui-chart-navigator polygon.sc-sui-chart-navigator{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.win.sc-sui-chart-navigator{border-color:Highlight}.grip.sc-sui-chart-navigator{background:ButtonText}}.sc-sui-chart-navigator-h{display:block;font-family:var(--font-sans)}.sui-chart-frame.sc-sui-chart-navigator{position:relative;box-sizing:border-box;font-family:var(--font-sans);color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px}.sui-chart-frame.plain.sc-sui-chart-navigator{background:transparent;border:none;padding:0}.sui-chart-head.sc-sui-chart-navigator{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.sui-chart-titles.sc-sui-chart-navigator{flex:1;min-width:0}.sui-chart-title.sc-sui-chart-navigator{font-size:13.5px;font-weight:700}.sui-chart-subtitle.sc-sui-chart-navigator{font-size:11.5px;color:var(--ink-faint);margin-top:1px}.sui-chart-plot.sc-sui-chart-navigator{position:relative}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator{display:block;width:100%;height:auto;overflow:visible}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator line.sc-sui-chart-navigator{shape-rendering:crispEdges}.sui-chart-legend.sc-sui-chart-navigator{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px}.sui-chart-key.sc-sui-chart-navigator{display:inline-flex;align-items:center;gap:5px;border:none;background:transparent;padding:2px 4px;margin:0 -4px;font:600 11.5px var(--font-sans);color:var(--ink-muted);cursor:default}.sui-chart-key.toggle.sc-sui-chart-navigator{cursor:pointer}.sui-chart-key.toggle.sc-sui-chart-navigator:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-radius:4px}.sui-chart-key.off.sc-sui-chart-navigator{color:var(--ink-placeholder);text-decoration:line-through}.sui-chart-key.sc-sui-chart-navigator .swatch.sc-sui-chart-navigator{width:9px;height:9px;border-radius:2px;flex-shrink:0}.sui-chart-key.sc-sui-chart-navigator .swatch.round.sc-sui-chart-navigator{border-radius:50%}.sui-chart-key.sc-sui-chart-navigator .swatch.glyph.sc-sui-chart-navigator,.sui-chart-tip-row.sc-sui-chart-navigator .swatch.glyph.sc-sui-chart-navigator{position:relative;width:16px;height:10px;border-radius:0}.swatch.glyph.line.sc-sui-chart-navigator::before{content:'';position:absolute;left:1px;right:1px;top:4px;border-top:2px solid var(--c)}.swatch.glyph.ls-dot.sc-sui-chart-navigator::before{border-top-style:dotted}.swatch.glyph.ls-dash.sc-sui-chart-navigator::before{border-top-style:dashed}.swatch.glyph.sc-sui-chart-navigator .mk.sc-sui-chart-navigator{position:absolute;left:4.5px;top:1.5px;width:7px;height:7px;box-sizing:border-box;border:1.5px solid var(--c);background:var(--surface)}.swatch.glyph.sc-sui-chart-navigator .mk.dot.sc-sui-chart-navigator,.swatch.glyph.sc-sui-chart-navigator .mk.solid.sc-sui-chart-navigator,.swatch.glyph.sc-sui-chart-navigator .mk.ring.sc-sui-chart-navigator{border-radius:50%}.swatch.glyph.sc-sui-chart-navigator .mk.solid.sc-sui-chart-navigator{background:var(--c)}.swatch.glyph.sc-sui-chart-navigator .mk.ring.sc-sui-chart-navigator{background:color-mix(in srgb, var(--c) 25%, var(--surface))}.swatch.glyph.sc-sui-chart-navigator .mk.diamond.sc-sui-chart-navigator{transform:rotate(45deg) scale(0.85)}.swatch.glyph.sc-sui-chart-navigator .mk.tri.sc-sui-chart-navigator,.swatch.glyph.sc-sui-chart-navigator .mk.tri-down.sc-sui-chart-navigator{left:4px;top:1px;width:8px;height:8px;border:none}.swatch.glyph.sc-sui-chart-navigator .mk.tri.sc-sui-chart-navigator::after,.swatch.glyph.sc-sui-chart-navigator .mk.tri-down.sc-sui-chart-navigator::after{content:'';position:absolute;inset:0;background:var(--c);clip-path:polygon(50% 0, 100% 100%, 0 100%)}.swatch.glyph.sc-sui-chart-navigator .mk.tri-down.sc-sui-chart-navigator::after{clip-path:polygon(0 0, 100% 0, 50% 100%)}.sui-chart-key.sc-sui-chart-navigator .swatch.glyph.sc-sui-chart-navigator{width:22px}.sui-chart-key.sc-sui-chart-navigator .swatch.glyph.line.sc-sui-chart-navigator::before{top:3.5px;border-top-width:3px}.sui-chart-key.sc-sui-chart-navigator .swatch.glyph.sc-sui-chart-navigator .mk.sc-sui-chart-navigator{left:7px;top:1px;width:8px;height:8px;border-width:2px}.sui-chart-key.sc-sui-chart-navigator .swatch.glyph.sc-sui-chart-navigator .mk.tri.sc-sui-chart-navigator,.sui-chart-key.sc-sui-chart-navigator .swatch.glyph.sc-sui-chart-navigator .mk.tri-down.sc-sui-chart-navigator{left:6.5px;top:0.5px;width:9px;height:9px}.sui-chart-key.off.sc-sui-chart-navigator .swatch.sc-sui-chart-navigator{opacity:0.35}.sui-chart-caption.sc-sui-chart-navigator{font-size:11px;color:var(--ink-faint);margin-top:8px;border-top:1px solid var(--hairline);padding-top:7px}.sui-chart-tip.sc-sui-chart-navigator{position:absolute;width:max-content;min-width:110px;max-width:240px;pointer-events:none;z-index:5;box-sizing:border-box;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);padding:8px 10px}.sui-chart-tip-title.sc-sui-chart-navigator{font-size:10.5px;font-weight:700;color:var(--ink-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:0.05em;text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-navigator{display:flex;align-items:center;gap:6px;font-size:11.5px;padding:1.5px 0}.sui-chart-tip-row.sc-sui-chart-navigator .swatch.sc-sui-chart-navigator{width:8px;height:8px;border-radius:2px;flex-shrink:0}.sui-chart-tip-row.sc-sui-chart-navigator .lbl.sc-sui-chart-navigator{flex:1;min-width:0;color:var(--ink-muted);text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-navigator b.sc-sui-chart-navigator{margin-inline-start:6px;white-space:nowrap;font-variant-numeric:tabular-nums;font-feature-settings:'tnum';font-weight:700}.sui-chart-tip.stack.sc-sui-chart-navigator .sui-chart-tip-row.sc-sui-chart-navigator{display:grid;grid-template-columns:minmax(min-content, 1fr);align-items:center;column-gap:6px;row-gap:0}.sui-chart-tip.stack.sc-sui-chart-navigator .sui-chart-tip-row.keyed.sc-sui-chart-navigator{grid-template-columns:auto minmax(min-content, 1fr)}.sui-chart-tip.stack.sc-sui-chart-navigator .sui-chart-tip-row.keyed.sc-sui-chart-navigator>b.sc-sui-chart-navigator{grid-column:2}.sui-chart-tip.stack.sc-sui-chart-navigator .sui-chart-tip-row.sc-sui-chart-navigator>b.sc-sui-chart-navigator{margin-inline-start:0}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator .halo.sc-sui-chart-navigator{paint-order:stroke;stroke:var(--surface);stroke-width:3px;stroke-linejoin:round}.sui-chart-keys.sc-sui-chart-navigator:focus{outline:none}.sui-chart-keys.sc-sui-chart-navigator:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;box-shadow:var(--focus-shadow);border-radius:4px}.sui-chart-keys.keyed.sc-sui-chart-navigator:focus-visible{outline:none;box-shadow:none}.sui-chart-ring.sc-sui-chart-navigator{pointer-events:none;fill:none}.sui-chart-ring-halo.sc-sui-chart-navigator{stroke:var(--focus-halo);stroke-width:6px}.sui-chart-ring-line.sc-sui-chart-navigator{stroke:var(--focus-ring);stroke-width:2px}.sui-chart-empty.sc-sui-chart-navigator{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 16px;text-align:center;font-size:12.5px;color:var(--ink-muted);pointer-events:none}.sui-chart-empty.sc-sui-chart-navigator span.sc-sui-chart-navigator{background:var(--surface);box-shadow:0 0 0 4px var(--surface);border-radius:4px}.sui-chart-wait.sc-sui-chart-navigator{box-sizing:border-box}.sui-chart-loading.sc-sui-chart-navigator{position:absolute;inset:8px 10px 22px 46px;border-radius:var(--radius-md);background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--brand-soft) 50%, var(--surface-sunken) 75%);background-size:300% 100%;animation:sb-shimmer 1.4s infinite linear}@media (prefers-reduced-motion: reduce){.sui-chart-loading.sc-sui-chart-navigator{animation-duration:3s}}.sui-chart-sr.sc-sui-chart-navigator{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.figure.sc-sui-chart-navigator,.prose.sc-sui-chart-navigator{direction:ltr;unicode-bidi:plaintext}svg.sc-sui-chart-navigator text.sc-sui-chart-navigator{unicode-bidi:plaintext}@media (forced-colors: active){.sui-chart-loading.sc-sui-chart-navigator{box-sizing:border-box;border:1px solid GrayText}.sui-chart-key.sc-sui-chart-navigator .swatch.sc-sui-chart-navigator,.sui-chart-tip-row.sc-sui-chart-navigator .swatch.sc-sui-chart-navigator{forced-color-adjust:none;box-sizing:border-box;border:1px solid CanvasText}.sui-chart-key.sc-sui-chart-navigator .swatch.glyph.sc-sui-chart-navigator,.sui-chart-tip-row.sc-sui-chart-navigator .swatch.glyph.sc-sui-chart-navigator{border:none}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator{forced-color-adjust:none}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator text.sc-sui-chart-navigator{fill:CanvasText !important}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator .halo.sc-sui-chart-navigator{stroke:Canvas}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator line.sc-sui-chart-navigator{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator line[stroke*=\"--hairline\"].sc-sui-chart-navigator{stroke:GrayText;filter:none}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator line[stroke*=\"--chart-axis\"].sc-sui-chart-navigator,.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator line[stroke*=\"--border-strong\"].sc-sui-chart-navigator,.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator line[stroke*=\"--accent-deep\"].sc-sui-chart-navigator{stroke:CanvasText;filter:none}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator circle.sc-sui-chart-navigator{stroke:CanvasText}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator rect.sc-sui-chart-navigator,.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator path.sc-sui-chart-navigator,.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator polyline.sc-sui-chart-navigator,.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator polygon.sc-sui-chart-navigator{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-keys.sc-sui-chart-navigator:focus-visible{outline-color:Highlight;box-shadow:none}svg.sc-sui-chart-navigator .sui-chart-ring.sc-sui-chart-navigator .sui-chart-ring-line.sc-sui-chart-navigator{stroke:Highlight;filter:none}svg.sc-sui-chart-navigator .sui-chart-ring.sc-sui-chart-navigator .sui-chart-ring-halo.sc-sui-chart-navigator{stroke:Canvas;filter:none}}"}},[774,"sui-chart-navigator",{data:[16],width:[2],window:[1040],curve:[516],zoom:[516],heading:[1],subtitle:[1],caption:[1],emptyMessage:[1,"empty-message"],loading:[516],hasHeaderEnd:[32],span:[32],hostName:[32],setFocus:[64]},void 0,{data:[{onData:0}],zoom:[{armZoom:0}]}]),M=y,z=function(){"undefined"!=typeof customElements&&["sui-chart-navigator"].forEach((t=>{"sui-chart-navigator"===t&&(customElements.get(o(t))||customElements.define(o(t),y))}))};export{M as SuiChartNavigator,z as defineCustomElement}
|
|
1
|
+
import{p as t,H as a,c as i,h as s,a as r,t as o}from"./p-CeVlau-G.js";import{l as c,d as n,C as h,c as e}from"./p-BLK-elHV.js";import{h as u,w as g,d as p,m as v}from"./p-CFn_q23Q.js";import{d}from"./p-BHB1Wprj.js";import{c as l}from"./p-Bzu70qWq.js";import{a as x,l as f}from"./p-BuyjS5bS.js";const b=[.55,1],w=(t,a)=>!!t&&!!a&&t[0]===a[0]&&t[1]===a[1],m="var(--sui-chart-navigator-area, var(--viz-4))",k="var(--sui-chart-navigator-line, var(--viz-2))",y=t(class extends a{constructor(t){super(),!1!==t&&this.__registerHost(),this.suiWindowChange=i(this,"suiWindowChange",3)}get host(){return this}data=[];width=460;window;curve=!1;zoom=!1;heading;subtitle;caption;emptyMessage;loading=!1;suiWindowChange;hasHeaderEnd=!1;span;winEl;hostName={};stopHostName;strip;stripBox;drag;touches=new Map;pinch;armed=!1;async setFocus(){this.winEl?.focus()}componentWillLoad(){this.hasHeaderEnd=u(this.host,"header-end"),(this.data||[]).length>=2&&this.put(this.held(this.window))}onData(t,a){if((t||[]).length<2)return;const i=(a||[]).length-1;if(i<1)return this.span=void 0,void this.put(this.held(this.window));const s=this.fracOf(i);this.span=s,this.put(this.held(this.indicesOf(s,this.last)))}componentDidLoad(){this.armZoom()}connectedCallback(){d(this.host,(()=>this.winEl)),this.stopHostName?.(),this.stopHostName=g(this.host,(t=>{this.hostName=t})),this.armZoom()}armZoom(){this.zoom!==this.armed&&(this.zoom?this.arm():this.disarm(),this.armed=this.zoom)}arm(){this.host.addEventListener("wheel",this.onWheel,{passive:!1}),this.host.addEventListener("pointerdown",this.onTouchDown),this.host.addEventListener("pointermove",this.onTouchMove,{passive:!1}),this.host.addEventListener("pointerup",this.onTouchUp),this.host.addEventListener("pointercancel",this.onTouchUp)}disarm(){this.host.removeEventListener("wheel",this.onWheel),this.host.removeEventListener("pointerdown",this.onTouchDown),this.host.removeEventListener("pointermove",this.onTouchMove),this.host.removeEventListener("pointerup",this.onTouchUp),this.host.removeEventListener("pointercancel",this.onTouchUp),this.touches.clear(),this.pinch=void 0}disconnectedCallback(){this.stopHostName?.(),this.stopHostName=void 0,this.endDrag(),this.armed&&this.disarm(),this.armed=!1}get step(){return 1/Math.max(this.data.length-1,1)}get minSpan(){return Math.min(1,2*this.step)}get last(){return Math.max((this.data||[]).length-1,0)}indicesOf(t,a){return[Math.round(t[0]*a),Math.round(t[1]*a)]}held(t,a=this.last){if(!t||t.length<2||!Number.isFinite(Number(t[0]))||!Number.isFinite(Number(t[1])))return this.indicesOf(b,a);let i=Math.min(Math.max(Math.round(Number(t[0])),0),a),s=Math.min(Math.max(Math.round(Number(t[1])),0),a);return s<i&&([i,s]=[s,i]),s===i&&a>0&&(s<a?s++:i--),[i,s]}fracOf(t){const a=this.window?this.held(this.window,t):void 0;return!this.span||a&&!w(this.indicesOf(this.span,t),a)?a&&t>0?[a[0]/t,a[1]/t]:b:this.span}get frac(){return this.fracOf(this.last)}put(t){w(t,this.window)||(this.window=t,this.suiWindowChange.emit(t))}commit(t,a){this.span=[t=Math.max(0,Math.min(t,1)),a=Math.max(t,Math.min(a,1))],this.put(this.indicesOf(this.span,this.last))}anchorAt(t,a){const[i,s]=this.frac,r=this.stripBox,o=!!r&&!!a&&r.contains(a),c=(o?r:this.host).getBoundingClientRect();if(!c.width)return(i+s)/2;const n=Math.max(0,Math.min((t-c.left)/c.width,1));return o?n:i+n*(s-i)}scaleWindow(t,a){const[i,s]=this.frac,r=s-i,o=Math.max(this.minSpan,Math.min(r*t,1));if(Math.abs(o-r)<1e-6)return!1;const c=Math.max(i,Math.min(a,s)),n=Math.max(0,Math.min(c-(r>0?(c-i)/r:.5)*o,1-o));return this.commit(n,n+o),!0}onWheel=t=>{if(!this.zoom)return;const a=1===t.deltaMode?16*t.deltaY:2===t.deltaMode?400*t.deltaY:t.deltaY;a&&this.scaleWindow(Math.exp(.002*a),this.anchorAt(t.clientX,t.target))&&t.preventDefault()};onTouchDown=t=>{if("touch"!==t.pointerType)return;if(this.touches.set(t.pointerId,t.clientX),2!==this.touches.size)return;this.endDrag();const a=Array.from(this.touches.values()),[i,s]=this.frac;this.pinch={d0:Math.max(Math.abs(a[0]-a[1]),1),span:s-i,anchor:this.anchorAt((a[0]+a[1])/2,t.target)}};onTouchMove=t=>{if("touch"!==t.pointerType||!this.touches.has(t.pointerId))return;if(this.touches.set(t.pointerId,t.clientX),2!==this.touches.size||!this.pinch)return;t.preventDefault();const a=Array.from(this.touches.values()),i=Math.max(Math.abs(a[0]-a[1]),1),[s,r]=this.frac,o=r-s;o>0&&this.scaleWindow(Math.max(this.minSpan,Math.min(this.pinch.span*(this.pinch.d0/i),1))/o,this.pinch.anchor)};onTouchUp=t=>{"touch"===t.pointerType&&(this.touches.delete(t.pointerId),this.touches.size<2&&(this.pinch=void 0))};onPointerDown=t=>{if(0!==t.button)return;t.preventDefault();const a=t.target.getAttribute("data-edge"),i=this.strip?this.strip.getBoundingClientRect():{width:0};this.drag={startX:t.clientX,w0:this.frac,width:i.width||1,edge:a},t.currentTarget.focus(),document.addEventListener("pointermove",this.onPointerMove),document.addEventListener("pointerup",this.endDrag),document.addEventListener("pointercancel",this.endDrag)};onPointerMove=t=>{if(!this.drag)return;const{startX:a,w0:i,width:s,edge:r}=this.drag,o=(t.clientX-a)/s,c=this.step;if("lo"===r)this.commit(Math.min(Math.max(i[0]+o,0),i[1]-c),i[1]);else if("hi"===r)this.commit(i[0],Math.max(Math.min(i[1]+o,1),i[0]+c));else{const t=i[1]-i[0],a=Math.min(Math.max(i[0]+o,0),1-t);this.commit(a,a+t)}};endDrag=()=>{this.drag=void 0,document.removeEventListener("pointermove",this.onPointerMove),document.removeEventListener("pointerup",this.endDrag),document.removeEventListener("pointercancel",this.endDrag)};onKeyDown=t=>{const[a,i]=this.frac,s=this.step,r=i-a;let o;switch(t.key){case"PageDown":o=Math.max(a-r,0),this.commit(o,o+r);break;case"PageUp":o=Math.min(a+r,1-r),this.commit(o,o+r);break;case"ArrowLeft":case"ArrowDown":t.shiftKey?this.commit(a,Math.max(i-s,a+s)):(o=Math.max(a-s,0),this.commit(o,o+r));break;case"ArrowRight":case"ArrowUp":t.shiftKey?this.commit(a,Math.min(i+s,1)):(o=Math.min(a+s,1-r),this.commit(o,o+r));break;case"Home":this.commit(0,r);break;case"End":this.commit(1-r,1);break;default:return}t.preventDefault()};render(){const{data:t,width:a}=this,i=t.length,o=v(t,[0,0]),u=c(0,i-1,0,a),g=c(o[0],o[1],40,4),d=p(t,u,g),b=g(0),[w,y]=this.frac,[M,z]=this.window?this.held(this.window):this.indicesOf([w,y],this.last),C=!!(this.heading||this.subtitle||this.caption),T=this.curve?[s("path",{d:l(t,u,g)+` L ${a},${b} L 0,${b} Z`,fill:m,opacity:.8}),s("path",{d:l(t,u,g),fill:"none",stroke:k,"stroke-width":1.2})]:[s("polygon",{points:`${d} ${a},${b} 0,${b}`,fill:m,opacity:.8}),s("polyline",{points:d,fill:"none",stroke:k,"stroke-width":1.2})],j=i<2,D=[s("slot",{key:"f7205f63cf670b7bc7eb28c18966e4e759102442"}),this.loading?s("div",{class:"nav"},s(n,{height:44,label:x(void 0,"chart-navigator.loading",void 0,"Loading")})):j?s("div",{class:"nav"},s("div",{class:"sui-chart-plot",style:{height:"44px"}},s(h,{text:x(void 0,"chart-navigator.empty",this.emptyMessage,"Nothing to plot yet.")}))):s("div",{class:"nav"},s("div",{class:"strip",ref:t=>this.stripBox=t},s("svg",{ref:t=>this.strip=t,viewBox:`0 0 ${a} 44`,"aria-hidden":"true"},T),s("div",{class:"win",ref:t=>this.winEl=t,style:{left:+(100*w).toFixed(3)+"%",width:+(100*(y-w)).toFixed(3)+"%"},tabindex:"0",role:"slider","aria-label":this.hostName.labelledby?this.hostName.label:this.hostName.label||x(void 0,"chart-navigator.contextWindow",void 0,"Context window"),"aria-labelledby":this.hostName.labelledby,"aria-valuemin":1,"aria-valuemax":i,"aria-valuenow":M+1,"aria-valuetext":f(void 0,"chart-navigator.window",void 0,"Day {start} – {end} of {count}",{start:M+1,end:z+1,count:i}),"aria-orientation":"horizontal",onPointerDown:this.onPointerDown,onKeyDown:this.onKeyDown},s("span",{class:"grip lo","data-edge":"lo"}),s("span",{class:"grip hi","data-edge":"hi"}))),s("div",{class:"status"},s("span",{class:"prose"},f(void 0,"chart-navigator.status",void 0,"Window: day {start} – {end} of {count} · drag to pan, handles resize, arrow keys move",{start:M+1,end:z+1,count:i}))))];return s(r,{key:"89cb3caf2431243691b453b7f25d3978a053c0fd","aria-busy":this.loading?"true":null},C?s(e,{title:this.heading,subtitle:this.subtitle,caption:this.caption,hasHeaderEnd:this.hasHeaderEnd},D):D)}static get watchers(){return{data:[{onData:0}],zoom:[{armZoom:0}]}}static get style(){return".sc-sui-chart-navigator-h{display:block;font-family:var(--font-sans)}[zoom].sc-sui-chart-navigator-h{touch-action:pan-y}.nav.sc-sui-chart-navigator{margin-top:6px;padding:0 16px}.strip.sc-sui-chart-navigator{position:relative;direction:ltr}.strip.sc-sui-chart-navigator svg.sc-sui-chart-navigator{display:block;width:100%;height:auto;box-sizing:border-box;border-radius:6px;background:var(--surface-sunken);border:1px solid var(--hairline)}.win.sc-sui-chart-navigator{position:absolute;top:0;bottom:0;box-sizing:border-box;border:1.5px solid var(--accent);border-radius:6px;background:color-mix(in srgb, var(--accent) 10%, transparent);cursor:grab;touch-action:none;user-select:none}.win.sc-sui-chart-navigator:active{cursor:grabbing}.win.sc-sui-chart-navigator:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;box-shadow:var(--focus-shadow)}.grip.sc-sui-chart-navigator{position:absolute;top:50%;width:5px;height:14px;border-radius:3px;background:var(--accent);cursor:ew-resize}.grip.lo.sc-sui-chart-navigator{left:-1px;transform:translate(-50%, -50%)}.grip.hi.sc-sui-chart-navigator{right:-1px;transform:translate(50%, -50%)}.grip.sc-sui-chart-navigator::after{content:'';position:absolute;inset:-6px -5px}.status.sc-sui-chart-navigator{font-size:10px;color:var(--ink-faint);margin-top:4px;font-feature-settings:'tnum'}@media (forced-colors: active){.strip.sc-sui-chart-navigator svg.sc-sui-chart-navigator{forced-color-adjust:none;background:Canvas;border-color:CanvasText}.strip.sc-sui-chart-navigator svg.sc-sui-chart-navigator path.sc-sui-chart-navigator,.strip.sc-sui-chart-navigator svg.sc-sui-chart-navigator polyline.sc-sui-chart-navigator,.strip.sc-sui-chart-navigator svg.sc-sui-chart-navigator polygon.sc-sui-chart-navigator{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.win.sc-sui-chart-navigator{border-color:Highlight}.grip.sc-sui-chart-navigator{background:ButtonText}}.sc-sui-chart-navigator-h{display:block;font-family:var(--font-sans)}.sui-chart-frame.sc-sui-chart-navigator{position:relative;box-sizing:border-box;font-family:var(--font-sans);color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px}.sui-chart-frame.plain.sc-sui-chart-navigator{background:transparent;border:none;padding:0}.sui-chart-head.sc-sui-chart-navigator{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.sui-chart-titles.sc-sui-chart-navigator{flex:1;min-width:0}.sui-chart-title.sc-sui-chart-navigator{font-size:13.5px;font-weight:700}.sui-chart-subtitle.sc-sui-chart-navigator{font-size:11.5px;color:var(--ink-faint);margin-top:1px}.sui-chart-plot.sc-sui-chart-navigator{position:relative}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator{display:block;width:100%;height:auto;overflow:visible}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator line.sc-sui-chart-navigator{shape-rendering:crispEdges}.sui-chart-legend.sc-sui-chart-navigator{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px}.sui-chart-key.sc-sui-chart-navigator{display:inline-flex;align-items:center;gap:5px;border:none;background:transparent;padding:2px 4px;margin:0 -4px;font:600 11.5px var(--font-sans);color:var(--ink-muted);cursor:default}.sui-chart-key.toggle.sc-sui-chart-navigator{cursor:pointer}.sui-chart-key.toggle.sc-sui-chart-navigator:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-radius:4px}.sui-chart-key.off.sc-sui-chart-navigator{color:var(--ink-placeholder);text-decoration:line-through}.sui-chart-key.sc-sui-chart-navigator .swatch.sc-sui-chart-navigator{width:9px;height:9px;border-radius:2px;flex-shrink:0}.sui-chart-key.sc-sui-chart-navigator .swatch.round.sc-sui-chart-navigator{border-radius:50%}.sui-chart-key.sc-sui-chart-navigator .swatch.glyph.sc-sui-chart-navigator,.sui-chart-tip-row.sc-sui-chart-navigator .swatch.glyph.sc-sui-chart-navigator{position:relative;width:16px;height:10px;border-radius:0}.swatch.glyph.line.sc-sui-chart-navigator::before{content:'';position:absolute;left:1px;right:1px;top:4px;border-top:2px solid var(--c)}.swatch.glyph.ls-dot.sc-sui-chart-navigator::before{border-top-style:dotted}.swatch.glyph.ls-dash.sc-sui-chart-navigator::before{border-top-style:dashed}.swatch.glyph.sc-sui-chart-navigator .mk.sc-sui-chart-navigator{position:absolute;left:4.5px;top:1.5px;width:7px;height:7px;box-sizing:border-box;border:1.5px solid var(--c);background:var(--surface)}.swatch.glyph.sc-sui-chart-navigator .mk.dot.sc-sui-chart-navigator,.swatch.glyph.sc-sui-chart-navigator .mk.solid.sc-sui-chart-navigator,.swatch.glyph.sc-sui-chart-navigator .mk.ring.sc-sui-chart-navigator{border-radius:50%}.swatch.glyph.sc-sui-chart-navigator .mk.solid.sc-sui-chart-navigator{background:var(--c)}.swatch.glyph.sc-sui-chart-navigator .mk.ring.sc-sui-chart-navigator{background:color-mix(in srgb, var(--c) 25%, var(--surface))}.swatch.glyph.sc-sui-chart-navigator .mk.diamond.sc-sui-chart-navigator{transform:rotate(45deg) scale(0.85)}.swatch.glyph.sc-sui-chart-navigator .mk.tri.sc-sui-chart-navigator,.swatch.glyph.sc-sui-chart-navigator .mk.tri-down.sc-sui-chart-navigator{left:4px;top:1px;width:8px;height:8px;border:none}.swatch.glyph.sc-sui-chart-navigator .mk.tri.sc-sui-chart-navigator::after,.swatch.glyph.sc-sui-chart-navigator .mk.tri-down.sc-sui-chart-navigator::after{content:'';position:absolute;inset:0;background:var(--c);clip-path:polygon(50% 0, 100% 100%, 0 100%)}.swatch.glyph.sc-sui-chart-navigator .mk.tri-down.sc-sui-chart-navigator::after{clip-path:polygon(0 0, 100% 0, 50% 100%)}.sui-chart-key.sc-sui-chart-navigator .swatch.glyph.sc-sui-chart-navigator{width:22px}.sui-chart-key.sc-sui-chart-navigator .swatch.glyph.line.sc-sui-chart-navigator::before{top:3.5px;border-top-width:3px}.sui-chart-key.sc-sui-chart-navigator .swatch.glyph.sc-sui-chart-navigator .mk.sc-sui-chart-navigator{left:7px;top:1px;width:8px;height:8px;border-width:2px}.sui-chart-key.sc-sui-chart-navigator .swatch.glyph.sc-sui-chart-navigator .mk.tri.sc-sui-chart-navigator,.sui-chart-key.sc-sui-chart-navigator .swatch.glyph.sc-sui-chart-navigator .mk.tri-down.sc-sui-chart-navigator{left:6.5px;top:0.5px;width:9px;height:9px}.sui-chart-key.off.sc-sui-chart-navigator .swatch.sc-sui-chart-navigator{opacity:0.35}.sui-chart-caption.sc-sui-chart-navigator{font-size:11px;color:var(--ink-faint);margin-top:8px;border-top:1px solid var(--hairline);padding-top:7px}.sui-chart-tip.sc-sui-chart-navigator{position:absolute;width:max-content;min-width:110px;max-width:240px;pointer-events:none;z-index:5;box-sizing:border-box;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);padding:8px 10px}.sui-chart-tip-title.sc-sui-chart-navigator{font-size:10.5px;font-weight:700;color:var(--ink-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:0.05em;text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-navigator{display:flex;align-items:center;gap:6px;font-size:11.5px;padding:1.5px 0}.sui-chart-tip-row.sc-sui-chart-navigator .swatch.sc-sui-chart-navigator{width:8px;height:8px;border-radius:2px;flex-shrink:0}.sui-chart-tip-row.sc-sui-chart-navigator .lbl.sc-sui-chart-navigator{flex:1;min-width:0;color:var(--ink-muted);text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-navigator b.sc-sui-chart-navigator{margin-inline-start:6px;white-space:nowrap;font-variant-numeric:tabular-nums;font-feature-settings:'tnum';font-weight:700}.sui-chart-tip.stack.sc-sui-chart-navigator .sui-chart-tip-row.sc-sui-chart-navigator{display:grid;grid-template-columns:minmax(min-content, 1fr);align-items:center;column-gap:6px;row-gap:0}.sui-chart-tip.stack.sc-sui-chart-navigator .sui-chart-tip-row.keyed.sc-sui-chart-navigator{grid-template-columns:auto minmax(min-content, 1fr)}.sui-chart-tip.stack.sc-sui-chart-navigator .sui-chart-tip-row.keyed.sc-sui-chart-navigator>b.sc-sui-chart-navigator{grid-column:2}.sui-chart-tip.stack.sc-sui-chart-navigator .sui-chart-tip-row.sc-sui-chart-navigator>b.sc-sui-chart-navigator{margin-inline-start:0}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator .halo.sc-sui-chart-navigator{paint-order:stroke;stroke:var(--surface);stroke-width:3px;stroke-linejoin:round}.sui-chart-keys.sc-sui-chart-navigator:focus{outline:none}.sui-chart-keys.sc-sui-chart-navigator:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;box-shadow:var(--focus-shadow);border-radius:4px}.sui-chart-keys.keyed.sc-sui-chart-navigator:focus-visible{outline:none;box-shadow:none}.sui-chart-ring.sc-sui-chart-navigator{pointer-events:none;fill:none}.sui-chart-ring-halo.sc-sui-chart-navigator{stroke:var(--focus-halo);stroke-width:6px}.sui-chart-ring-line.sc-sui-chart-navigator{stroke:var(--focus-ring);stroke-width:2px}.sui-chart-empty.sc-sui-chart-navigator{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 16px;text-align:center;font-size:12.5px;color:var(--ink-muted);pointer-events:none}.sui-chart-empty.sc-sui-chart-navigator span.sc-sui-chart-navigator{background:var(--surface);box-shadow:0 0 0 4px var(--surface);border-radius:4px}.sui-chart-wait.sc-sui-chart-navigator{box-sizing:border-box}.sui-chart-loading.sc-sui-chart-navigator{position:absolute;inset:8px 10px 22px 46px;border-radius:var(--radius-md);background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--brand-soft) 50%, var(--surface-sunken) 75%);background-size:300% 100%;animation:sb-shimmer 1.4s infinite linear}@media (prefers-reduced-motion: reduce){.sui-chart-loading.sc-sui-chart-navigator{animation-duration:3s}}.sui-chart-sr.sc-sui-chart-navigator{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.figure.sc-sui-chart-navigator,.prose.sc-sui-chart-navigator{direction:ltr;unicode-bidi:plaintext}svg.sc-sui-chart-navigator text.sc-sui-chart-navigator{unicode-bidi:plaintext}@media (forced-colors: active){.sui-chart-loading.sc-sui-chart-navigator{box-sizing:border-box;border:1px solid GrayText}.sui-chart-key.sc-sui-chart-navigator .swatch.sc-sui-chart-navigator,.sui-chart-tip-row.sc-sui-chart-navigator .swatch.sc-sui-chart-navigator{forced-color-adjust:none;box-sizing:border-box;border:1px solid CanvasText}.sui-chart-key.sc-sui-chart-navigator .swatch.glyph.sc-sui-chart-navigator,.sui-chart-tip-row.sc-sui-chart-navigator .swatch.glyph.sc-sui-chart-navigator{border:none}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator{forced-color-adjust:none}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator text.sc-sui-chart-navigator{fill:CanvasText !important}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator .halo.sc-sui-chart-navigator{stroke:Canvas}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator line.sc-sui-chart-navigator{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator line[stroke*=\"--hairline\"].sc-sui-chart-navigator{stroke:GrayText;filter:none}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator line[stroke*=\"--chart-axis\"].sc-sui-chart-navigator,.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator line[stroke*=\"--border-strong\"].sc-sui-chart-navigator,.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator line[stroke*=\"--accent-deep\"].sc-sui-chart-navigator{stroke:CanvasText;filter:none}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator circle.sc-sui-chart-navigator{stroke:CanvasText}.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator rect.sc-sui-chart-navigator,.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator path.sc-sui-chart-navigator,.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator polyline.sc-sui-chart-navigator,.sui-chart-plot.sc-sui-chart-navigator svg.sc-sui-chart-navigator polygon.sc-sui-chart-navigator{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-keys.sc-sui-chart-navigator:focus-visible{outline-color:Highlight;box-shadow:none}svg.sc-sui-chart-navigator .sui-chart-ring.sc-sui-chart-navigator .sui-chart-ring-line.sc-sui-chart-navigator{stroke:Highlight;filter:none}svg.sc-sui-chart-navigator .sui-chart-ring.sc-sui-chart-navigator .sui-chart-ring-halo.sc-sui-chart-navigator{stroke:Canvas;filter:none}}"}},[774,"sui-chart-navigator",{data:[16],width:[2],window:[1040],curve:[516],zoom:[516],heading:[1],subtitle:[1],caption:[1],emptyMessage:[1,"empty-message"],loading:[516],hasHeaderEnd:[32],span:[32],hostName:[32],setFocus:[64]},void 0,{data:[{onData:0}],zoom:[{armZoom:0}]}]),M=y,z=function(){"undefined"!=typeof customElements&&["sui-chart-navigator"].forEach((t=>{"sui-chart-navigator"===t&&(customElements.get(o(t))||customElements.define(o(t),y))}))};export{M as SuiChartNavigator,z as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as i,H as s,c as t,h as e,a,t as r}from"./p-CeVlau-G.js";import{o as c,s as h,f as o,c as p,d as u,C as n,t as l,e as d,H as x,h as g,S as f,a2 as v,L as m}from"./p-Bv5xqCDb.js";import{w as b,c as w,a as y,k,s as $,K as M,g as C,P as z}from"./p-DtI1DFsR.js";import{h as T,p as j}from"./p-DbF8ArKE.js";import{a as E}from"./p-BuyjS5bS.js";import{d as H}from"./p-BHB1Wprj.js";import{u as L}from"./p-U06fVoGD.js";import{d as D}from"./p-COO9uV7W.js";const B=2*Math.PI,F=(i,s,t,e,a,r)=>{const c=(t,e)=>`${i+t*Math.cos(e)} ${s+t*Math.sin(e)}`,h=r-a>Math.PI?1:0;return`M ${c(e,a)} A ${e} ${e} 0 ${h} 1 ${c(e,r)} L ${c(t,r)} A ${t} ${t} 0 ${h} 0 ${c(t,a)} Z`},I=i(class extends s{constructor(i){super(),!1!==i&&this.__registerHost(),this.suiHover=t(this,"suiHover",7)}get host(){return this}heading;subtitle;caption;items=[];kind="donut";diameter=168;money=!1;currency="USD";centerLabel;emptyMessage;loading=!1;hoverIndex=-1;suiHover;hiddenLabels=[];keyed=!1;plotEl;keysId=L("sui-chart-keys");hostName={};stopHostName;layout={slices:[],total:0,cx:0,cy:0};boxW=0;besideFit={w:0,sig:""};drewBeside=!1;sig="";hasHeaderEnd=!1;stopResize;hatchId=L("sui-chart-hatch");componentWillLoad(){this.hasHeaderEnd=T(this.host,"header-end"),this.compute()}connectedCallback(){H(this.host,(()=>this.plotEl)),this.stopHostName?.(),this.stopHostName=b(this.host,(i=>{this.hostName=i})),this.stopResize||(this.stopResize=c(this.host,(i=>{this.boxW=i})))}disconnectedCallback(){this.stopHostName?.(),this.stopHostName=void 0,this.stopResize?.(),this.stopResize=void 0}componentDidRender(){if(!this.drewBeside)return;const i=Math.round(this.host.getBoundingClientRect().width);i&&(Array.from(this.host.querySelectorAll(".sui-pie-row .lbl")).some((i=>i.scrollWidth>i.clientWidth+1&&i.clientWidth<96))||(this.besideFit={w:i,sig:this.sig}))}get empty(){const i=this.items||[];return 0===i.length||i.every((i=>!i.value))}compute(){const i=(this.items||[]).map(((i,s)=>({item:i,index:s}))).filter((({item:i})=>!this.hiddenLabels.includes(i.label))),s=i.reduce(((i,s)=>i+s.item.value),0),t=s||1,e=this.diameter/2,a=this.diameter/2,r=this.diameter/2-6,c="donut"===this.kind?.62*r:0,o=i.reduce(((i,s)=>Math.max(i,s.item.value)),0)||1;let p=-Math.PI/2;const u=i.map((({item:i,index:s})=>{const u=p,n=p+i.value/t*B;p=n;const l="nightingale"===this.kind?.16*r:c,d="nightingale"===this.kind?.35*r+.65*r*(i.value/o):r,x=u+.008,g=n-.008;return{index:s,item:i,a0:x,a1:g,mid:(u+n)/2,r0:l,r1:d,color:h(i,s),d:F(e,a,l,d,x,g)}}));this.layout={slices:u,total:s,cx:e,cy:a}}setHov(i){this.hoverIndex!==i&&(this.hoverIndex=i,this.suiHover.emit({index:i}))}point(i){this.keyed=!1,this.setHov(i)}async setFocus(){this.plotEl&&this.plotEl.hasAttribute("tabindex")&&this.plotEl.focus()}onKey=i=>{if(this.empty)return;const{slices:s}=this.layout,t=s.findIndex((i=>i.index===this.hoverIndex)),e=w(i,{rows:1,count:()=>s.length,flat:!0},t>=0?{s:0,i:t}:null,this.keyed);if(e){if(i.preventDefault(),"leave"===e)return i.stopPropagation(),this.keyed=!1,void this.setHov(-1);this.keyed=!0,this.setHov(s[e.i].index)}};onBlur=()=>{this.keyed&&(this.keyed=!1,this.setHov(-1))};toggle(i){this.hiddenLabels=this.hiddenLabels.includes(i)?this.hiddenLabels.filter((s=>s!==i)):this.hiddenLabels.concat(i),this.compute()}fmt=i=>this.money?D(i,!1,this.currency):o(i);render(){const{slices:i,total:s,cx:t,cy:r}=this.layout,c=this.items||[];if(this.loading)return e(a,{"aria-busy":"true"},e(p,{title:this.heading,subtitle:this.subtitle,caption:this.caption,hasHeaderEnd:this.hasHeaderEnd},e(u,{height:this.diameter,label:E(void 0,"chart-pie.loading",void 0,"Loading")})));if(this.empty)return e(a,null,e(p,{title:this.heading,subtitle:this.subtitle,caption:this.caption,hasHeaderEnd:this.hasHeaderEnd},e("div",{class:"sui-chart-plot",style:{height:this.diameter+"px"}},e(n,{text:E(void 0,"chart-pie.empty",this.emptyMessage,"Nothing to plot yet.")}))));const o=$(this.hoverIndex,c.length),b=o>=0&&i.some((i=>i.index===o))?o:-1,w=b>=0?c[b]:void 0,T=y(this.heading,i.map((i=>`${i.item.label} ${this.fmt(i.item.value)}`)).join(", ")),H=this.keyed&&b>=0?i.find((i=>i.index===b)):void 0,L=H?`${this.keysId}-${b}`:void 0;let B=0,I=0;for(const i of c)B=Math.max(B,l(this.fmt(i.value),12)),I=Math.max(I,l(i.label,12));this.sig=`${this.diameter}|${this.money}|${this.currency}|${c.map((i=>i.label+":"+i.value)).join("|")}`;const S=this.boxW>0&&!(this.besideFit.w===this.boxW&&this.besideFit.sig===this.sig)&&this.boxW-m-this.diameter-18<71+B+Math.min(I,96);this.drewBeside=!S;const W=.62*(this.diameter/2-6),A=i=>2*Math.sqrt(Math.max(W*W-i*i,0))-8,G=w?w.value:s;let K=this.fmt(G);const N=Math.max(12,Math.min(17,A(14)/(.6*K.length)));l(K,N)>A(14)&&this.money&&(K=D(G,!0,this.currency));const R=w?w.label:E(void 0,"chart-pie.total",this.centerLabel,"Total"),V=l(R,9.5)<=A(16)||A(27)<50?d(R,A(16),9.5):d(R,A(27),9.5,2);return e(a,null,e(p,{title:this.heading,subtitle:this.subtitle,caption:this.caption,hasHeaderEnd:this.hasHeaderEnd},e("div",{class:{"sui-pie-body":!0,stacked:S},style:S?{flexDirection:"column",alignItems:"stretch"}:void 0},e("div",{class:"sui-pie-plot",style:{width:this.diameter+"px"}},e("svg",{width:this.diameter,height:this.diameter,...k(T,this.keysId,this.hostName,L),ref:i=>{this.plotEl=i},onKeyDown:this.onKey,onBlur:this.onBlur},c.length>4?e(x,{id:this.hatchId}):null,i.map((i=>{const s=b===i.index?3:0,a=s?F(t+s*Math.cos(i.mid),r+s*Math.sin(i.mid),i.r0,i.r1,i.a0,i.a1):i.d,c=i.item.accent?0:g(i.index);return[e("path",{key:i.item.label,class:"sui-pie-slice",d:a,fill:i.color,"aria-hidden":"true",onMouseEnter:()=>this.point(i.index),onMouseLeave:()=>this.setHov(-1)},e("title",null,`${i.item.label} · ${this.fmt(i.item.value)}`)),c?e("path",{key:i.item.label+"-h",class:"sui-pie-hatch",d:a,fill:`url(#${this.hatchId}-h${c})`,stroke:i.color,"stroke-width":1.5}):null]})),"donut"===this.kind?e("g",null,e("text",{"aria-hidden":"true",class:"sui-pie-center-value",x:t,y:r-2,"text-anchor":"middle",style:N<17?{fontSize:N+"px"}:void 0},d(K,A(14),N)[0]||K),V.map(((i,s)=>e("text",{"aria-hidden":"true",key:s+"",class:"sui-pie-center-label",x:t,y:r+14+11*s,"text-anchor":"middle"},i)))):null,H?e(M,{id:L,label:C(H.item.label,this.fmt(H.item.value),f(j(H.item.value,s))),path:F(t+3*Math.cos(H.mid),r+3*Math.sin(H.mid),H.r0,H.r1,H.a0,H.a1)}):null),e(z,{ids:this.keysId,summary:T,host:this.hostName,hint:!0})),e("div",{class:"sui-pie-legend"},c.map(((i,t)=>{const a=this.hiddenLabels.includes(i.label),r=h(i,t);return e("button",{key:i.label,type:"button",class:{"sui-pie-row":!0,dim:-1!==b&&b!==t,on:b===t,off:a},"aria-pressed":!a+"",onMouseEnter:()=>this.point(t),onMouseLeave:()=>this.setHov(-1),onFocus:()=>this.point(t),onBlur:()=>this.setHov(-1),onClick:()=>this.toggle(i.label)},e("span",{class:"swatch",style:i.accent||!g(t)?{background:r}:{background:`${v(g(t))}, ${r}`,boxShadow:"inset 0 0 0 1px "+r}}),e("span",{class:"lbl"},e("span",{class:"prose"},i.label)),e("b",{class:"val"},e("span",{class:"figure"},this.fmt(i.value))),e("span",{class:"pct"},e("span",{class:"figure"},a?"–":f(j(i.value,s)))))}))))))}static get watchers(){return{items:[{compute:0}],kind:[{compute:0}],diameter:[{compute:0}]}}static get style(){return".sui-pie-body.sc-sui-chart-pie{display:flex;align-items:center;gap:18px}.sui-pie-plot.sc-sui-chart-pie{position:relative;flex-shrink:0}.sui-pie-plot.sc-sui-chart-pie svg.sc-sui-chart-pie{display:block;overflow:visible;direction:ltr}.sui-pie-slice.sc-sui-chart-pie{cursor:pointer;transition:d var(--duration-fast) var(--ease-out), fill var(--duration-fast) var(--ease-out), opacity var(--duration-fast) var(--ease-out)}.sui-pie-center-value.sc-sui-chart-pie{font:730 17px var(--font-sans);fill:var(--ink)}.sui-pie-center-label.sc-sui-chart-pie{font:600 9.5px var(--font-sans);fill:var(--ink-faint)}.sui-pie-legend.sc-sui-chart-pie{flex:1;min-width:0;display:flex;flex-direction:column;gap:7px}.sui-pie-row.sc-sui-chart-pie{display:flex;align-items:center;gap:8px;width:calc(100% + 8px);box-sizing:border-box;margin:-2px -4px;padding:2px 4px;border:none;background:transparent;border-radius:4px;font-family:var(--font-sans);font-size:12px;color:var(--ink);text-align:start;cursor:pointer;transition:opacity var(--duration-fast) var(--ease-out)}.sui-pie-body.stacked.sc-sui-chart-pie .sui-pie-plot.sc-sui-chart-pie{align-self:center}.sui-pie-hatch.sc-sui-chart-pie{pointer-events:none}.sui-pie-row.dim.sc-sui-chart-pie .swatch.sc-sui-chart-pie{opacity:0.45}.sui-pie-row.dim.sc-sui-chart-pie .val.sc-sui-chart-pie{color:var(--ink-muted)}.sui-pie-row.on.sc-sui-chart-pie .lbl.sc-sui-chart-pie{color:var(--ink);font-weight:650}.sui-pie-row.off.sc-sui-chart-pie{color:var(--ink-placeholder);text-decoration:line-through}.sui-pie-row.off.sc-sui-chart-pie .swatch.sc-sui-chart-pie{opacity:0.35}.sui-pie-row.sc-sui-chart-pie:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;box-shadow:var(--focus-shadow)}.sui-pie-row.sc-sui-chart-pie .swatch.sc-sui-chart-pie{width:9px;height:9px;border-radius:2px;flex-shrink:0}.sui-pie-row.sc-sui-chart-pie .lbl.sc-sui-chart-pie{flex:1;min-width:0;color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sui-pie-row.off.sc-sui-chart-pie .lbl.sc-sui-chart-pie{color:inherit}.sui-pie-row.sc-sui-chart-pie .val.sc-sui-chart-pie{font-weight:700;font-feature-settings:'tnum'}.sui-pie-row.sc-sui-chart-pie .pct.sc-sui-chart-pie{width:38px;text-align:end;color:var(--ink-faint);font-feature-settings:'tnum'}@media (forced-colors: active){.sui-pie-plot.sc-sui-chart-pie svg.sc-sui-chart-pie{forced-color-adjust:none}.sui-pie-slice.sc-sui-chart-pie{stroke:CanvasText}.sui-pie-center-value.sc-sui-chart-pie,.sui-pie-center-label.sc-sui-chart-pie{fill:CanvasText}.sui-pie-row.sc-sui-chart-pie .swatch.sc-sui-chart-pie{forced-color-adjust:none;box-sizing:border-box;border:1px solid CanvasText}}.sc-sui-chart-pie-h{display:block;font-family:var(--font-sans)}.sui-chart-frame.sc-sui-chart-pie{position:relative;box-sizing:border-box;font-family:var(--font-sans);color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px}.sui-chart-frame.plain.sc-sui-chart-pie{background:transparent;border:none;padding:0}.sui-chart-head.sc-sui-chart-pie{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.sui-chart-titles.sc-sui-chart-pie{flex:1;min-width:0}.sui-chart-title.sc-sui-chart-pie{font-size:13.5px;font-weight:700}.sui-chart-subtitle.sc-sui-chart-pie{font-size:11.5px;color:var(--ink-faint);margin-top:1px}.sui-chart-plot.sc-sui-chart-pie{position:relative}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie{display:block;width:100%;height:auto;overflow:visible}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie line.sc-sui-chart-pie{shape-rendering:crispEdges}.sui-chart-legend.sc-sui-chart-pie{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px}.sui-chart-key.sc-sui-chart-pie{display:inline-flex;align-items:center;gap:5px;border:none;background:transparent;padding:2px 4px;margin:0 -4px;font:600 11.5px var(--font-sans);color:var(--ink-muted);cursor:default}.sui-chart-key.toggle.sc-sui-chart-pie{cursor:pointer}.sui-chart-key.toggle.sc-sui-chart-pie:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-radius:4px}.sui-chart-key.off.sc-sui-chart-pie{color:var(--ink-placeholder);text-decoration:line-through}.sui-chart-key.sc-sui-chart-pie .swatch.sc-sui-chart-pie{width:9px;height:9px;border-radius:2px;flex-shrink:0}.sui-chart-key.sc-sui-chart-pie .swatch.round.sc-sui-chart-pie{border-radius:50%}.sui-chart-key.sc-sui-chart-pie .swatch.glyph.sc-sui-chart-pie,.sui-chart-tip-row.sc-sui-chart-pie .swatch.glyph.sc-sui-chart-pie{position:relative;width:16px;height:10px;border-radius:0}.swatch.glyph.line.sc-sui-chart-pie::before{content:'';position:absolute;left:1px;right:1px;top:4px;border-top:2px solid var(--c)}.swatch.glyph.ls-dot.sc-sui-chart-pie::before{border-top-style:dotted}.swatch.glyph.ls-dash.sc-sui-chart-pie::before{border-top-style:dashed}.swatch.glyph.sc-sui-chart-pie .mk.sc-sui-chart-pie{position:absolute;left:4.5px;top:1.5px;width:7px;height:7px;box-sizing:border-box;border:1.5px solid var(--c);background:var(--surface)}.swatch.glyph.sc-sui-chart-pie .mk.dot.sc-sui-chart-pie,.swatch.glyph.sc-sui-chart-pie .mk.solid.sc-sui-chart-pie,.swatch.glyph.sc-sui-chart-pie .mk.ring.sc-sui-chart-pie{border-radius:50%}.swatch.glyph.sc-sui-chart-pie .mk.solid.sc-sui-chart-pie{background:var(--c)}.swatch.glyph.sc-sui-chart-pie .mk.ring.sc-sui-chart-pie{background:color-mix(in srgb, var(--c) 25%, var(--surface))}.swatch.glyph.sc-sui-chart-pie .mk.diamond.sc-sui-chart-pie{transform:rotate(45deg) scale(0.85)}.swatch.glyph.sc-sui-chart-pie .mk.tri.sc-sui-chart-pie,.swatch.glyph.sc-sui-chart-pie .mk.tri-down.sc-sui-chart-pie{left:4px;top:1px;width:8px;height:8px;border:none}.swatch.glyph.sc-sui-chart-pie .mk.tri.sc-sui-chart-pie::after,.swatch.glyph.sc-sui-chart-pie .mk.tri-down.sc-sui-chart-pie::after{content:'';position:absolute;inset:0;background:var(--c);clip-path:polygon(50% 0, 100% 100%, 0 100%)}.swatch.glyph.sc-sui-chart-pie .mk.tri-down.sc-sui-chart-pie::after{clip-path:polygon(0 0, 100% 0, 50% 100%)}.sui-chart-key.sc-sui-chart-pie .swatch.glyph.sc-sui-chart-pie{width:22px}.sui-chart-key.sc-sui-chart-pie .swatch.glyph.line.sc-sui-chart-pie::before{top:3.5px;border-top-width:3px}.sui-chart-key.sc-sui-chart-pie .swatch.glyph.sc-sui-chart-pie .mk.sc-sui-chart-pie{left:7px;top:1px;width:8px;height:8px;border-width:2px}.sui-chart-key.sc-sui-chart-pie .swatch.glyph.sc-sui-chart-pie .mk.tri.sc-sui-chart-pie,.sui-chart-key.sc-sui-chart-pie .swatch.glyph.sc-sui-chart-pie .mk.tri-down.sc-sui-chart-pie{left:6.5px;top:0.5px;width:9px;height:9px}.sui-chart-key.off.sc-sui-chart-pie .swatch.sc-sui-chart-pie{opacity:0.35}.sui-chart-caption.sc-sui-chart-pie{font-size:11px;color:var(--ink-faint);margin-top:8px;border-top:1px solid var(--hairline);padding-top:7px}.sui-chart-tip.sc-sui-chart-pie{position:absolute;width:max-content;min-width:110px;max-width:240px;pointer-events:none;z-index:5;box-sizing:border-box;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);padding:8px 10px}.sui-chart-tip-title.sc-sui-chart-pie{font-size:10.5px;font-weight:700;color:var(--ink-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:0.05em;text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-pie{display:flex;align-items:center;gap:6px;font-size:11.5px;padding:1.5px 0}.sui-chart-tip-row.sc-sui-chart-pie .swatch.sc-sui-chart-pie{width:8px;height:8px;border-radius:2px;flex-shrink:0}.sui-chart-tip-row.sc-sui-chart-pie .lbl.sc-sui-chart-pie{flex:1;min-width:0;color:var(--ink-muted);text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-pie b.sc-sui-chart-pie{margin-inline-start:6px;white-space:nowrap;font-variant-numeric:tabular-nums;font-feature-settings:'tnum';font-weight:700}.sui-chart-tip.stack.sc-sui-chart-pie .sui-chart-tip-row.sc-sui-chart-pie{display:grid;grid-template-columns:minmax(min-content, 1fr);align-items:center;column-gap:6px;row-gap:0}.sui-chart-tip.stack.sc-sui-chart-pie .sui-chart-tip-row.keyed.sc-sui-chart-pie{grid-template-columns:auto minmax(min-content, 1fr)}.sui-chart-tip.stack.sc-sui-chart-pie .sui-chart-tip-row.keyed.sc-sui-chart-pie>b.sc-sui-chart-pie{grid-column:2}.sui-chart-tip.stack.sc-sui-chart-pie .sui-chart-tip-row.sc-sui-chart-pie>b.sc-sui-chart-pie{margin-inline-start:0}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie .halo.sc-sui-chart-pie{paint-order:stroke;stroke:var(--surface);stroke-width:3px;stroke-linejoin:round}.sui-chart-keys.sc-sui-chart-pie:focus{outline:none}.sui-chart-keys.sc-sui-chart-pie:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;box-shadow:var(--focus-shadow);border-radius:4px}.sui-chart-keys.keyed.sc-sui-chart-pie:focus-visible{outline:none;box-shadow:none}.sui-chart-ring.sc-sui-chart-pie{pointer-events:none;fill:none}.sui-chart-ring-halo.sc-sui-chart-pie{stroke:var(--focus-halo);stroke-width:6px}.sui-chart-ring-line.sc-sui-chart-pie{stroke:var(--focus-ring);stroke-width:2px}.sui-chart-empty.sc-sui-chart-pie{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 16px;text-align:center;font-size:12.5px;color:var(--ink-muted);pointer-events:none}.sui-chart-empty.sc-sui-chart-pie span.sc-sui-chart-pie{background:var(--surface);box-shadow:0 0 0 4px var(--surface);border-radius:4px}.sui-chart-wait.sc-sui-chart-pie{box-sizing:border-box}.sui-chart-loading.sc-sui-chart-pie{position:absolute;inset:8px 10px 22px 46px;border-radius:var(--radius-md);background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--brand-soft) 50%, var(--surface-sunken) 75%);background-size:300% 100%;animation:sb-shimmer 1.4s infinite linear}@media (prefers-reduced-motion: reduce){.sui-chart-loading.sc-sui-chart-pie{animation-duration:3s}}.sui-chart-sr.sc-sui-chart-pie{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.figure.sc-sui-chart-pie,.prose.sc-sui-chart-pie{direction:ltr;unicode-bidi:plaintext}svg.sc-sui-chart-pie text.sc-sui-chart-pie{unicode-bidi:plaintext}@media (forced-colors: active){.sui-chart-loading.sc-sui-chart-pie{box-sizing:border-box;border:1px solid GrayText}.sui-chart-key.sc-sui-chart-pie .swatch.sc-sui-chart-pie,.sui-chart-tip-row.sc-sui-chart-pie .swatch.sc-sui-chart-pie{forced-color-adjust:none;box-sizing:border-box;border:1px solid CanvasText}.sui-chart-key.sc-sui-chart-pie .swatch.glyph.sc-sui-chart-pie,.sui-chart-tip-row.sc-sui-chart-pie .swatch.glyph.sc-sui-chart-pie{border:none}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie{forced-color-adjust:none}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie text.sc-sui-chart-pie{fill:CanvasText !important}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie .halo.sc-sui-chart-pie{stroke:Canvas}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie line.sc-sui-chart-pie{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie line[stroke*=\"--hairline\"].sc-sui-chart-pie{stroke:GrayText;filter:none}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie line[stroke*=\"--chart-axis\"].sc-sui-chart-pie,.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie line[stroke*=\"--border-strong\"].sc-sui-chart-pie,.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie line[stroke*=\"--accent-deep\"].sc-sui-chart-pie{stroke:CanvasText;filter:none}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie circle.sc-sui-chart-pie{stroke:CanvasText}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie rect.sc-sui-chart-pie,.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie path.sc-sui-chart-pie,.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie polyline.sc-sui-chart-pie,.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie polygon.sc-sui-chart-pie{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-keys.sc-sui-chart-pie:focus-visible{outline-color:Highlight;box-shadow:none}svg.sc-sui-chart-pie .sui-chart-ring.sc-sui-chart-pie .sui-chart-ring-line.sc-sui-chart-pie{stroke:Highlight;filter:none}svg.sc-sui-chart-pie .sui-chart-ring.sc-sui-chart-pie .sui-chart-ring-halo.sc-sui-chart-pie{stroke:Canvas;filter:none}}"}},[518,"sui-chart-pie",{heading:[1],subtitle:[1],caption:[1],items:[16],kind:[513],diameter:[2],money:[516],currency:[1],centerLabel:[1,"center-label"],emptyMessage:[1,"empty-message"],loading:[516],hoverIndex:[1026,"hover-index"],hiddenLabels:[32],keyed:[32],hostName:[32],layout:[32],boxW:[32],setFocus:[64]},void 0,{items:[{compute:0}],kind:[{compute:0}],diameter:[{compute:0}]}]),S=I,W=function(){"undefined"!=typeof customElements&&["sui-chart-pie"].forEach((i=>{"sui-chart-pie"===i&&(customElements.get(r(i))||customElements.define(r(i),I))}))};export{S as SuiChartPie,W as defineCustomElement}
|
|
1
|
+
import{p as i,H as s,c as t,h as e,a,t as r}from"./p-CeVlau-G.js";import{o as c,s as h,f as o,c as p,d as u,C as n,t as l,e as d,H as x,h as g,S as f,a2 as v,L as m}from"./p-BLK-elHV.js";import{w as b,c as w,a as y,k,s as $,K as M,g as C,P as z}from"./p-CFn_q23Q.js";import{h as T,p as j}from"./p-DbF8ArKE.js";import{a as H}from"./p-BuyjS5bS.js";import{d as E}from"./p-BHB1Wprj.js";import{u as L}from"./p-U06fVoGD.js";import{d as B}from"./p-qut9RP2y.js";const D=2*Math.PI,F=(i,s,t,e,a,r)=>{const c=(t,e)=>`${i+t*Math.cos(e)} ${s+t*Math.sin(e)}`,h=r-a>Math.PI?1:0;return`M ${c(e,a)} A ${e} ${e} 0 ${h} 1 ${c(e,r)} L ${c(t,r)} A ${t} ${t} 0 ${h} 0 ${c(t,a)} Z`},S=i(class extends s{constructor(i){super(),!1!==i&&this.__registerHost(),this.suiHover=t(this,"suiHover",7)}get host(){return this}heading;subtitle;caption;items=[];kind="donut";diameter=168;money=!1;currency="USD";centerLabel;emptyMessage;loading=!1;hoverIndex=-1;suiHover;hiddenLabels=[];keyed=!1;plotEl;keysId=L("sui-chart-keys");hostName={};stopHostName;layout={slices:[],total:0,cx:0,cy:0};boxW=0;besideFit={w:0,sig:""};drewBeside=!1;sig="";hasHeaderEnd=!1;stopResize;hatchId=L("sui-chart-hatch");componentWillLoad(){this.hasHeaderEnd=T(this.host,"header-end"),this.compute()}connectedCallback(){E(this.host,(()=>this.plotEl)),this.stopHostName?.(),this.stopHostName=b(this.host,(i=>{this.hostName=i})),this.stopResize||(this.stopResize=c(this.host,(i=>{this.boxW=i})))}disconnectedCallback(){this.stopHostName?.(),this.stopHostName=void 0,this.stopResize?.(),this.stopResize=void 0}componentDidRender(){if(!this.drewBeside)return;const i=Math.round(this.host.getBoundingClientRect().width);i&&(Array.from(this.host.querySelectorAll(".sui-pie-row .lbl")).some((i=>i.scrollWidth>i.clientWidth+1&&i.clientWidth<96))||(this.besideFit={w:i,sig:this.sig}))}get empty(){const i=this.items||[];return 0===i.length||i.every((i=>!i.value))}compute(){const i=(this.items||[]).map(((i,s)=>({item:i,index:s}))).filter((({item:i})=>!this.hiddenLabels.includes(i.label))),s=i.reduce(((i,s)=>i+s.item.value),0),t=s||1,e=this.diameter/2,a=this.diameter/2,r=this.diameter/2-6,c="donut"===this.kind?.62*r:0,o=i.reduce(((i,s)=>Math.max(i,s.item.value)),0)||1;let p=-Math.PI/2;const u=i.map((({item:i,index:s})=>{const u=p,n=p+i.value/t*D;p=n;const l="nightingale"===this.kind?.16*r:c,d="nightingale"===this.kind?.35*r+.65*r*(i.value/o):r,x=u+.008,g=n-.008;return{index:s,item:i,a0:x,a1:g,mid:(u+n)/2,r0:l,r1:d,color:h(i,s),d:F(e,a,l,d,x,g)}}));this.layout={slices:u,total:s,cx:e,cy:a}}setHov(i){this.hoverIndex!==i&&(this.hoverIndex=i,this.suiHover.emit({index:i}))}point(i){this.keyed=!1,this.setHov(i)}async setFocus(){this.plotEl&&this.plotEl.hasAttribute("tabindex")&&this.plotEl.focus()}onKey=i=>{if(this.empty)return;const{slices:s}=this.layout,t=s.findIndex((i=>i.index===this.hoverIndex)),e=w(i,{rows:1,count:()=>s.length,flat:!0},t>=0?{s:0,i:t}:null,this.keyed);if(e){if(i.preventDefault(),"leave"===e)return i.stopPropagation(),this.keyed=!1,void this.setHov(-1);this.keyed=!0,this.setHov(s[e.i].index)}};onBlur=()=>{this.keyed&&(this.keyed=!1,this.setHov(-1))};toggle(i){this.hiddenLabels=this.hiddenLabels.includes(i)?this.hiddenLabels.filter((s=>s!==i)):this.hiddenLabels.concat(i),this.compute()}fmt=i=>this.money?B(i,!1,this.currency):o(i);render(){const{slices:i,total:s,cx:t,cy:r}=this.layout,c=this.items||[];if(this.loading)return e(a,{"aria-busy":"true"},e(p,{title:this.heading,subtitle:this.subtitle,caption:this.caption,hasHeaderEnd:this.hasHeaderEnd},e(u,{height:this.diameter,label:H(void 0,"chart-pie.loading",void 0,"Loading")})));if(this.empty)return e(a,null,e(p,{title:this.heading,subtitle:this.subtitle,caption:this.caption,hasHeaderEnd:this.hasHeaderEnd},e("div",{class:"sui-chart-plot",style:{height:this.diameter+"px"}},e(n,{text:H(void 0,"chart-pie.empty",this.emptyMessage,"Nothing to plot yet.")}))));const o=$(this.hoverIndex,c.length),b=o>=0&&i.some((i=>i.index===o))?o:-1,w=b>=0?c[b]:void 0,T=y(this.heading,i.map((i=>`${i.item.label} ${this.fmt(i.item.value)}`)).join(", ")),E=this.keyed&&b>=0?i.find((i=>i.index===b)):void 0,L=E?`${this.keysId}-${b}`:void 0;let D=0,S=0;for(const i of c)D=Math.max(D,l(this.fmt(i.value),12)),S=Math.max(S,l(i.label,12));this.sig=`${this.diameter}|${this.money}|${this.currency}|${c.map((i=>i.label+":"+i.value)).join("|")}`;const I=this.boxW>0&&!(this.besideFit.w===this.boxW&&this.besideFit.sig===this.sig)&&this.boxW-m-this.diameter-18<71+D+Math.min(S,96);this.drewBeside=!I;const K=.62*(this.diameter/2-6),A=i=>2*Math.sqrt(Math.max(K*K-i*i,0))-8,G=w?w.value:s;let N=this.fmt(G);const W=Math.max(12,Math.min(17,A(14)/(.6*N.length)));l(N,W)>A(14)&&this.money&&(N=B(G,!0,this.currency));const R=w?w.label:H(void 0,"chart-pie.total",this.centerLabel,"Total"),V=l(R,9.5)<=A(16)||A(27)<50?d(R,A(16),9.5):d(R,A(27),9.5,2);return e(a,null,e(p,{title:this.heading,subtitle:this.subtitle,caption:this.caption,hasHeaderEnd:this.hasHeaderEnd},e("div",{class:{"sui-pie-body":!0,stacked:I},style:I?{flexDirection:"column",alignItems:"stretch"}:void 0},e("div",{class:"sui-pie-plot",style:{width:this.diameter+"px"}},e("svg",{width:this.diameter,height:this.diameter,...k(T,this.keysId,this.hostName,L),ref:i=>{this.plotEl=i},onKeyDown:this.onKey,onBlur:this.onBlur},c.length>4?e(x,{id:this.hatchId}):null,i.map((i=>{const s=b===i.index?3:0,a=s?F(t+s*Math.cos(i.mid),r+s*Math.sin(i.mid),i.r0,i.r1,i.a0,i.a1):i.d,c=i.item.accent?0:g(i.index);return[e("path",{key:i.item.label,class:"sui-pie-slice",d:a,fill:i.color,"aria-hidden":"true",onMouseEnter:()=>this.point(i.index),onMouseLeave:()=>this.setHov(-1)},e("title",null,`${i.item.label} · ${this.fmt(i.item.value)}`)),c?e("path",{key:i.item.label+"-h",class:"sui-pie-hatch",d:a,fill:`url(#${this.hatchId}-h${c})`,stroke:i.color,"stroke-width":1.5}):null]})),"donut"===this.kind?e("g",null,e("text",{"aria-hidden":"true",class:"sui-pie-center-value",x:t,y:r-2,"text-anchor":"middle",style:W<17?{fontSize:W+"px"}:void 0},d(N,A(14),W)[0]||N),V.map(((i,s)=>e("text",{"aria-hidden":"true",key:s+"",class:"sui-pie-center-label",x:t,y:r+14+11*s,"text-anchor":"middle"},i)))):null,E?e(M,{id:L,label:C(E.item.label,this.fmt(E.item.value),f(j(E.item.value,s))),path:F(t+3*Math.cos(E.mid),r+3*Math.sin(E.mid),E.r0,E.r1,E.a0,E.a1)}):null),e(z,{ids:this.keysId,summary:T,host:this.hostName,hint:!0})),e("div",{class:"sui-pie-legend"},c.map(((i,t)=>{const a=this.hiddenLabels.includes(i.label),r=h(i,t);return e("button",{key:i.label,type:"button",class:{"sui-pie-row":!0,dim:-1!==b&&b!==t,on:b===t,off:a},"aria-pressed":!a+"",onMouseEnter:()=>this.point(t),onMouseLeave:()=>this.setHov(-1),onFocus:()=>this.point(t),onBlur:()=>this.setHov(-1),onClick:()=>this.toggle(i.label)},e("span",{class:"swatch",style:i.accent||!g(t)?{background:r}:{background:`${v(g(t))}, ${r}`,boxShadow:"inset 0 0 0 1px "+r}}),e("span",{class:"lbl"},e("span",{class:"prose"},i.label)),e("b",{class:"val"},e("span",{class:"figure"},this.fmt(i.value))),e("span",{class:"pct"},e("span",{class:"figure"},a?"–":f(j(i.value,s)))))}))))))}static get watchers(){return{items:[{compute:0}],kind:[{compute:0}],diameter:[{compute:0}]}}static get style(){return".sui-pie-body.sc-sui-chart-pie{display:flex;align-items:center;gap:18px}.sui-pie-plot.sc-sui-chart-pie{position:relative;flex-shrink:0}.sui-pie-plot.sc-sui-chart-pie svg.sc-sui-chart-pie{display:block;overflow:visible;direction:ltr}.sui-pie-slice.sc-sui-chart-pie{cursor:pointer;transition:d var(--duration-fast) var(--ease-out), fill var(--duration-fast) var(--ease-out), opacity var(--duration-fast) var(--ease-out)}.sui-pie-center-value.sc-sui-chart-pie{font:730 17px var(--font-sans);fill:var(--ink)}.sui-pie-center-label.sc-sui-chart-pie{font:600 9.5px var(--font-sans);fill:var(--ink-faint)}.sui-pie-legend.sc-sui-chart-pie{flex:1;min-width:0;display:flex;flex-direction:column;gap:7px}.sui-pie-row.sc-sui-chart-pie{display:flex;align-items:center;gap:8px;width:calc(100% + 8px);box-sizing:border-box;margin:-2px -4px;padding:2px 4px;border:none;background:transparent;border-radius:4px;font-family:var(--font-sans);font-size:12px;color:var(--ink);text-align:start;cursor:pointer;transition:opacity var(--duration-fast) var(--ease-out)}.sui-pie-body.stacked.sc-sui-chart-pie .sui-pie-plot.sc-sui-chart-pie{align-self:center}.sui-pie-hatch.sc-sui-chart-pie{pointer-events:none}.sui-pie-row.dim.sc-sui-chart-pie .swatch.sc-sui-chart-pie{opacity:0.45}.sui-pie-row.dim.sc-sui-chart-pie .val.sc-sui-chart-pie{color:var(--ink-muted)}.sui-pie-row.on.sc-sui-chart-pie .lbl.sc-sui-chart-pie{color:var(--ink);font-weight:650}.sui-pie-row.off.sc-sui-chart-pie{color:var(--ink-placeholder);text-decoration:line-through}.sui-pie-row.off.sc-sui-chart-pie .swatch.sc-sui-chart-pie{opacity:0.35}.sui-pie-row.sc-sui-chart-pie:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;box-shadow:var(--focus-shadow)}.sui-pie-row.sc-sui-chart-pie .swatch.sc-sui-chart-pie{width:9px;height:9px;border-radius:2px;flex-shrink:0}.sui-pie-row.sc-sui-chart-pie .lbl.sc-sui-chart-pie{flex:1;min-width:0;color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sui-pie-row.off.sc-sui-chart-pie .lbl.sc-sui-chart-pie{color:inherit}.sui-pie-row.sc-sui-chart-pie .val.sc-sui-chart-pie{font-weight:700;font-feature-settings:'tnum'}.sui-pie-row.sc-sui-chart-pie .pct.sc-sui-chart-pie{width:38px;text-align:end;color:var(--ink-faint);font-feature-settings:'tnum'}@media (forced-colors: active){.sui-pie-plot.sc-sui-chart-pie svg.sc-sui-chart-pie{forced-color-adjust:none}.sui-pie-slice.sc-sui-chart-pie{stroke:CanvasText}.sui-pie-center-value.sc-sui-chart-pie,.sui-pie-center-label.sc-sui-chart-pie{fill:CanvasText}.sui-pie-row.sc-sui-chart-pie .swatch.sc-sui-chart-pie{forced-color-adjust:none;box-sizing:border-box;border:1px solid CanvasText}}.sc-sui-chart-pie-h{display:block;font-family:var(--font-sans)}.sui-chart-frame.sc-sui-chart-pie{position:relative;box-sizing:border-box;font-family:var(--font-sans);color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px}.sui-chart-frame.plain.sc-sui-chart-pie{background:transparent;border:none;padding:0}.sui-chart-head.sc-sui-chart-pie{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.sui-chart-titles.sc-sui-chart-pie{flex:1;min-width:0}.sui-chart-title.sc-sui-chart-pie{font-size:13.5px;font-weight:700}.sui-chart-subtitle.sc-sui-chart-pie{font-size:11.5px;color:var(--ink-faint);margin-top:1px}.sui-chart-plot.sc-sui-chart-pie{position:relative}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie{display:block;width:100%;height:auto;overflow:visible}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie line.sc-sui-chart-pie{shape-rendering:crispEdges}.sui-chart-legend.sc-sui-chart-pie{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px}.sui-chart-key.sc-sui-chart-pie{display:inline-flex;align-items:center;gap:5px;border:none;background:transparent;padding:2px 4px;margin:0 -4px;font:600 11.5px var(--font-sans);color:var(--ink-muted);cursor:default}.sui-chart-key.toggle.sc-sui-chart-pie{cursor:pointer}.sui-chart-key.toggle.sc-sui-chart-pie:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-radius:4px}.sui-chart-key.off.sc-sui-chart-pie{color:var(--ink-placeholder);text-decoration:line-through}.sui-chart-key.sc-sui-chart-pie .swatch.sc-sui-chart-pie{width:9px;height:9px;border-radius:2px;flex-shrink:0}.sui-chart-key.sc-sui-chart-pie .swatch.round.sc-sui-chart-pie{border-radius:50%}.sui-chart-key.sc-sui-chart-pie .swatch.glyph.sc-sui-chart-pie,.sui-chart-tip-row.sc-sui-chart-pie .swatch.glyph.sc-sui-chart-pie{position:relative;width:16px;height:10px;border-radius:0}.swatch.glyph.line.sc-sui-chart-pie::before{content:'';position:absolute;left:1px;right:1px;top:4px;border-top:2px solid var(--c)}.swatch.glyph.ls-dot.sc-sui-chart-pie::before{border-top-style:dotted}.swatch.glyph.ls-dash.sc-sui-chart-pie::before{border-top-style:dashed}.swatch.glyph.sc-sui-chart-pie .mk.sc-sui-chart-pie{position:absolute;left:4.5px;top:1.5px;width:7px;height:7px;box-sizing:border-box;border:1.5px solid var(--c);background:var(--surface)}.swatch.glyph.sc-sui-chart-pie .mk.dot.sc-sui-chart-pie,.swatch.glyph.sc-sui-chart-pie .mk.solid.sc-sui-chart-pie,.swatch.glyph.sc-sui-chart-pie .mk.ring.sc-sui-chart-pie{border-radius:50%}.swatch.glyph.sc-sui-chart-pie .mk.solid.sc-sui-chart-pie{background:var(--c)}.swatch.glyph.sc-sui-chart-pie .mk.ring.sc-sui-chart-pie{background:color-mix(in srgb, var(--c) 25%, var(--surface))}.swatch.glyph.sc-sui-chart-pie .mk.diamond.sc-sui-chart-pie{transform:rotate(45deg) scale(0.85)}.swatch.glyph.sc-sui-chart-pie .mk.tri.sc-sui-chart-pie,.swatch.glyph.sc-sui-chart-pie .mk.tri-down.sc-sui-chart-pie{left:4px;top:1px;width:8px;height:8px;border:none}.swatch.glyph.sc-sui-chart-pie .mk.tri.sc-sui-chart-pie::after,.swatch.glyph.sc-sui-chart-pie .mk.tri-down.sc-sui-chart-pie::after{content:'';position:absolute;inset:0;background:var(--c);clip-path:polygon(50% 0, 100% 100%, 0 100%)}.swatch.glyph.sc-sui-chart-pie .mk.tri-down.sc-sui-chart-pie::after{clip-path:polygon(0 0, 100% 0, 50% 100%)}.sui-chart-key.sc-sui-chart-pie .swatch.glyph.sc-sui-chart-pie{width:22px}.sui-chart-key.sc-sui-chart-pie .swatch.glyph.line.sc-sui-chart-pie::before{top:3.5px;border-top-width:3px}.sui-chart-key.sc-sui-chart-pie .swatch.glyph.sc-sui-chart-pie .mk.sc-sui-chart-pie{left:7px;top:1px;width:8px;height:8px;border-width:2px}.sui-chart-key.sc-sui-chart-pie .swatch.glyph.sc-sui-chart-pie .mk.tri.sc-sui-chart-pie,.sui-chart-key.sc-sui-chart-pie .swatch.glyph.sc-sui-chart-pie .mk.tri-down.sc-sui-chart-pie{left:6.5px;top:0.5px;width:9px;height:9px}.sui-chart-key.off.sc-sui-chart-pie .swatch.sc-sui-chart-pie{opacity:0.35}.sui-chart-caption.sc-sui-chart-pie{font-size:11px;color:var(--ink-faint);margin-top:8px;border-top:1px solid var(--hairline);padding-top:7px}.sui-chart-tip.sc-sui-chart-pie{position:absolute;width:max-content;min-width:110px;max-width:240px;pointer-events:none;z-index:5;box-sizing:border-box;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);padding:8px 10px}.sui-chart-tip-title.sc-sui-chart-pie{font-size:10.5px;font-weight:700;color:var(--ink-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:0.05em;text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-pie{display:flex;align-items:center;gap:6px;font-size:11.5px;padding:1.5px 0}.sui-chart-tip-row.sc-sui-chart-pie .swatch.sc-sui-chart-pie{width:8px;height:8px;border-radius:2px;flex-shrink:0}.sui-chart-tip-row.sc-sui-chart-pie .lbl.sc-sui-chart-pie{flex:1;min-width:0;color:var(--ink-muted);text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-pie b.sc-sui-chart-pie{margin-inline-start:6px;white-space:nowrap;font-variant-numeric:tabular-nums;font-feature-settings:'tnum';font-weight:700}.sui-chart-tip.stack.sc-sui-chart-pie .sui-chart-tip-row.sc-sui-chart-pie{display:grid;grid-template-columns:minmax(min-content, 1fr);align-items:center;column-gap:6px;row-gap:0}.sui-chart-tip.stack.sc-sui-chart-pie .sui-chart-tip-row.keyed.sc-sui-chart-pie{grid-template-columns:auto minmax(min-content, 1fr)}.sui-chart-tip.stack.sc-sui-chart-pie .sui-chart-tip-row.keyed.sc-sui-chart-pie>b.sc-sui-chart-pie{grid-column:2}.sui-chart-tip.stack.sc-sui-chart-pie .sui-chart-tip-row.sc-sui-chart-pie>b.sc-sui-chart-pie{margin-inline-start:0}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie .halo.sc-sui-chart-pie{paint-order:stroke;stroke:var(--surface);stroke-width:3px;stroke-linejoin:round}.sui-chart-keys.sc-sui-chart-pie:focus{outline:none}.sui-chart-keys.sc-sui-chart-pie:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;box-shadow:var(--focus-shadow);border-radius:4px}.sui-chart-keys.keyed.sc-sui-chart-pie:focus-visible{outline:none;box-shadow:none}.sui-chart-ring.sc-sui-chart-pie{pointer-events:none;fill:none}.sui-chart-ring-halo.sc-sui-chart-pie{stroke:var(--focus-halo);stroke-width:6px}.sui-chart-ring-line.sc-sui-chart-pie{stroke:var(--focus-ring);stroke-width:2px}.sui-chart-empty.sc-sui-chart-pie{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 16px;text-align:center;font-size:12.5px;color:var(--ink-muted);pointer-events:none}.sui-chart-empty.sc-sui-chart-pie span.sc-sui-chart-pie{background:var(--surface);box-shadow:0 0 0 4px var(--surface);border-radius:4px}.sui-chart-wait.sc-sui-chart-pie{box-sizing:border-box}.sui-chart-loading.sc-sui-chart-pie{position:absolute;inset:8px 10px 22px 46px;border-radius:var(--radius-md);background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--brand-soft) 50%, var(--surface-sunken) 75%);background-size:300% 100%;animation:sb-shimmer 1.4s infinite linear}@media (prefers-reduced-motion: reduce){.sui-chart-loading.sc-sui-chart-pie{animation-duration:3s}}.sui-chart-sr.sc-sui-chart-pie{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.figure.sc-sui-chart-pie,.prose.sc-sui-chart-pie{direction:ltr;unicode-bidi:plaintext}svg.sc-sui-chart-pie text.sc-sui-chart-pie{unicode-bidi:plaintext}@media (forced-colors: active){.sui-chart-loading.sc-sui-chart-pie{box-sizing:border-box;border:1px solid GrayText}.sui-chart-key.sc-sui-chart-pie .swatch.sc-sui-chart-pie,.sui-chart-tip-row.sc-sui-chart-pie .swatch.sc-sui-chart-pie{forced-color-adjust:none;box-sizing:border-box;border:1px solid CanvasText}.sui-chart-key.sc-sui-chart-pie .swatch.glyph.sc-sui-chart-pie,.sui-chart-tip-row.sc-sui-chart-pie .swatch.glyph.sc-sui-chart-pie{border:none}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie{forced-color-adjust:none}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie text.sc-sui-chart-pie{fill:CanvasText !important}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie .halo.sc-sui-chart-pie{stroke:Canvas}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie line.sc-sui-chart-pie{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie line[stroke*=\"--hairline\"].sc-sui-chart-pie{stroke:GrayText;filter:none}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie line[stroke*=\"--chart-axis\"].sc-sui-chart-pie,.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie line[stroke*=\"--border-strong\"].sc-sui-chart-pie,.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie line[stroke*=\"--accent-deep\"].sc-sui-chart-pie{stroke:CanvasText;filter:none}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie circle.sc-sui-chart-pie{stroke:CanvasText}.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie rect.sc-sui-chart-pie,.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie path.sc-sui-chart-pie,.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie polyline.sc-sui-chart-pie,.sui-chart-plot.sc-sui-chart-pie svg.sc-sui-chart-pie polygon.sc-sui-chart-pie{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-keys.sc-sui-chart-pie:focus-visible{outline-color:Highlight;box-shadow:none}svg.sc-sui-chart-pie .sui-chart-ring.sc-sui-chart-pie .sui-chart-ring-line.sc-sui-chart-pie{stroke:Highlight;filter:none}svg.sc-sui-chart-pie .sui-chart-ring.sc-sui-chart-pie .sui-chart-ring-halo.sc-sui-chart-pie{stroke:Canvas;filter:none}}"}},[518,"sui-chart-pie",{heading:[1],subtitle:[1],caption:[1],items:[16],kind:[513],diameter:[2],money:[516],currency:[1],centerLabel:[1,"center-label"],emptyMessage:[1,"empty-message"],loading:[516],hoverIndex:[1026,"hover-index"],hiddenLabels:[32],keyed:[32],hostName:[32],layout:[32],boxW:[32],setFocus:[64]},void 0,{items:[{compute:0}],kind:[{compute:0}],diameter:[{compute:0}]}]),I=S,K=function(){"undefined"!=typeof customElements&&["sui-chart-pie"].forEach((i=>{"sui-chart-pie"===i&&(customElements.get(r(i))||customElements.define(r(i),S))}))};export{I as SuiChartPie,K as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as a,H as r,c as s,h as t,a as i,t as c}from"./p-CeVlau-G.js";import{o as e,t as h,e as o,s as d,Q as u,c as n,d as p,C as l,f as x,k as g,u as v,L as f,T as m,D as y,g as b,a3 as k}from"./p-Bv5xqCDb.js";import{h as w,w as M,m as C,c as T,a as j,k as z,s as H,K as E,b as D,P as L}from"./p-DtI1DFsR.js";import{a as B,l as R}from"./p-BuyjS5bS.js";import{d as G}from"./p-BHB1Wprj.js";import{u as W}from"./p-U06fVoGD.js";import{d as I}from"./p-COO9uV7W.js";const N=2*Math.PI,F=9.5,K=11,O=a(class extends r{constructor(a){super(),!1!==a&&this.__registerHost(),this.suiHover=s(this,"suiHover",7)}get host(){return this}heading;subtitle;caption;axes=[];series=[];diameter=210;max;rings=4;money=!1;currency="USD";emptyMessage;loading=!1;hoverIndex=-1;suiHover;hiddenLabels=[];keyed=!1;keyRow=0;plotEl;keysId=W("sui-chart-keys");hostName={};stopHostName;layout={cx:0,cy:0,R:0,rings:[],axes:[],polys:[]};boxW=0;hasHeaderEnd=!1;stopResize;componentWillLoad(){this.hasHeaderEnd=w(this.host,"header-end"),this.compute()}connectedCallback(){G(this.host,(()=>this.plotEl)),this.stopHostName?.(),this.stopHostName=M(this.host,(a=>{this.hostName=a})),this.stopResize||(this.stopResize=e(this.host,(a=>{this.boxW=a})))}disconnectedCallback(){this.stopHostName?.(),this.stopHostName=void 0,this.stopResize?.(),this.stopResize=void 0}compute(){const a=this.axes||[],r=this.series||[],s=a.length||1,t=this.diameter,i=t/2,c=t/2,e=t/2-26,u=a=>-Math.PI/2+a/s*N,n=a.map(((a,r)=>{const s=u(r),t=Math.cos(s);return{label:a,a:s,dx:t,dy:Math.sin(s),anchor:t>.3?"start":t<-.3?"end":"middle"}})),p=n.map((a=>Math.min((a=>{const r=a.split(" "),s=a=>{let s=1,t="";for(const i of r){const r=t?t+" "+i:i;h(r,F)<=a?t=r:(s++,t=i)}return s};let t=Math.max(...r.map((a=>h(a,F))));for(;s(t)>3;)t+=2;return t})(a.label),h(a.label,F)))),l=a=>(t/2+12-p[a])/Math.abs(n[a].dx)-8,x=n.map(((a,r)=>"middle"!==a.anchor&&l(r)<e));let g=e;n.forEach(((a,r)=>{"middle"!==a.anchor&&(g=Math.min(g,x[r]?(t/2+12+4-p[r])/Math.abs(a.dx):l(r)))})),g=Math.max(g,.6*e);const v=this.max||r.reduce(((a,r)=>C(r.data,[0,a])[1]),1),f=(a,r)=>{const s=u(a),t=r/v*g;return[i+t*Math.cos(s),c+t*Math.sin(s)]},m=Array.from({length:this.rings},((r,s)=>a.map(((a,r)=>f(r,v*(s+1)/this.rings).join(","))).join(" "))),y=Math.PI/s,b=n.map(((a,r)=>{const[s,e]=f(r,v),d=a.a,u=g+22,n=x[r]?i+g*a.dx-4*Math.sign(a.dx):i+(g+8)*a.dx,p=c+(g+8)*a.dy,l=[[i,c],[i+u*Math.cos(d-y),c+u*Math.sin(d-y)],[i+u*Math.cos(d),c+u*Math.sin(d)],[i+u*Math.cos(d+y),c+u*Math.sin(d+y)]].map((a=>a.join(","))).join(" "),m=o(a.label,"start"===a.anchor?t+12-n:"end"===a.anchor?n+12:2*Math.min(n,t-n)+24,F,3),b=c+g*a.dy,k=x[r]?a.dy>0?b+13:b-7-(m.length-1)*K:p-(a.dy>.3?-8:a.dy<-.3?3+(m.length-1)*K:(m.length-1)*K/2-3.5),w=m.reduce(((a,r)=>Math.max(a,h(r,F))),0),M="start"===a.anchor?n:"end"===a.anchor?n-w:n-w/2;return{label:a.label,x:s,y:e,lx:n,ly:k,anchor:a.anchor,lines:m,box:[M,k-9,M+w,k+(m.length-1)*K+3],hit:l}})),k=r.map(((a,r)=>{const s=a.data.map(((a,r)=>f(r,a)));return{series:a,index:r,color:d(a,r),points:s.map((a=>a.join(","))).join(" "),dots:s}}));this.layout={cx:i,cy:c,R:g,rings:m,axes:b,polys:k}}get empty(){return 0===(this.axes||[]).length||0===(this.series||[]).length}setHover(a){a!==this.hoverIndex&&(this.hoverIndex=a,this.suiHover.emit({index:a}))}onLeave=()=>this.setHover(-1);enter(a){this.keyed=!1,this.setHover(a)}async setFocus(){this.plotEl&&this.plotEl.hasAttribute("tabindex")&&this.plotEl.focus()}onKey=a=>{if(this.empty)return;const r=this.axes.length,s=this.layout.polys.filter((a=>!this.hiddenLabels.includes(a.series.label))).length,t=H(this.hoverIndex,r),i=T(a,{rows:s,count:()=>r},t>=0?{s:Math.min(this.keyRow,s-1),i:t}:null,this.keyed);if(i){if(a.preventDefault(),"leave"===i)return a.stopPropagation(),this.keyed=!1,void this.setHover(-1);this.keyRow=i.s,this.keyed=!0,this.setHover(i.i)}};onBlur=()=>{this.keyed&&(this.keyed=!1,this.setHover(-1))};keyOf=a=>({line:!0,mark:"dot",dash:a.index>=4&&!a.series.accent?u:void 0});toggle=a=>{this.hiddenLabels=this.hiddenLabels.includes(a)?this.hiddenLabels.filter((r=>r!==a)):this.hiddenLabels.concat(a)};render(){const{cx:a,cy:r,rings:s,axes:c,polys:e}=this.layout;if(this.loading)return t(i,{"aria-busy":"true"},t(n,{title:this.heading,subtitle:this.subtitle,caption:this.caption,hasHeaderEnd:this.hasHeaderEnd},t(p,{height:this.diameter,label:B(void 0,"chart-radar.loading",void 0,"Loading")})));if(this.empty)return t(i,null,t(n,{title:this.heading,subtitle:this.subtitle,caption:this.caption,hasHeaderEnd:this.hasHeaderEnd},t("div",{class:"sui-chart-plot",style:{height:this.diameter+"px"}},t(l,{text:B(void 0,"chart-radar.empty",this.emptyMessage,"Nothing to plot yet.")}))));const o=e.filter((a=>!this.hiddenLabels.includes(a.series.label))),d=H(this.hoverIndex,c.length),w=d>=0?c[d]:void 0,M=this.money?a=>I(a,!1,this.currency):x,C=Math.max(0,(this.boxW-f-this.diameter)/2),T=d<0?[]:[[c[d].box[0]-2,c[d].box[1]-2,c[d].box[2]+2,c[d].box[3]+2]].concat(o.filter((a=>a.dots[d])).map((a=>[a.dots[d][0]-6,a.dots[d][1]-6,a.dots[d][0]+6,a.dots[d][1]+6]))),G=[];if(d>=0){c.forEach(((a,r)=>{r!==d&&a.lines.forEach(((r,s)=>{const t=h(r,F),i=a.ly+s*K,c="start"===a.anchor?a.lx:"end"===a.anchor?a.lx-t:a.lx-t/2;G.push([c,i-7,c+t,i+2,s||1===a.lines.length?m:3*m])}))}));for(let s=1;s<8;s++){const t=a+(c[d].x-a)*s/8,i=r+(c[d].y-r)*s/8;G.push([t-3,i-3,t+3,i+3,y])}o.forEach((a=>{a.dots.forEach((([r,s],t)=>{t!==d&&G.push([r-4,s-4,r+4,s+4,b]);const[i,c]=a.dots[(t+1)%a.dots.length];for(let a=1;a<4;a++)G.push([r+(i-r)*a/4-3,s+(c-s)*a/4-3,r+(i-r)*a/4+3,s+(c-s)*a/4+3,k])}));const r=a.dots.map((a=>a[0])),s=a.dots.map((a=>a[1]));G.push([Math.min(...r),Math.min(...s),Math.max(...r),Math.max(...s),k])}))}const W=T.reduce(((a,r)=>[Math.min(a[0],r[0]),Math.min(a[1],r[1]),Math.max(a[2],r[2]),Math.max(a[3],r[3])]),[1/0,1/0,-1/0,-1/0]),N=j(this.heading,R(void 0,"chart-radar.across",void 0,"{series} across {axes}",{series:o.map((a=>a.series.label)).join(", "),axes:c.map((a=>a.label)).join(", ")})),O=Math.min(this.keyRow,o.length-1),S=o[O],V=this.keyed&&w&&S&&S.dots[d]?`${this.keysId}-${O}-${d}`:void 0;return t(i,null,t(n,{title:this.heading,subtitle:this.subtitle,caption:this.caption,hasHeaderEnd:this.hasHeaderEnd,legend:e.map((a=>({label:a.series.label,color:a.color,...this.keyOf(a)}))),hidden:this.hiddenLabels,onToggle:this.toggle},t("div",{class:"sui-radar-plot",style:{width:this.diameter+"px"}},t("svg",{width:this.diameter,height:this.diameter,...z(N,this.keysId,this.hostName,V),ref:a=>{this.plotEl=a},onKeyDown:this.onKey,onBlur:this.onBlur,onMouseLeave:this.onLeave},s.map(((a,r)=>t("polygon",{key:r+"",class:"sui-radar-ring",points:a,fill:"none",stroke:"var(--hairline)","stroke-width":1}))),c.map(((s,i)=>t("g",{key:s.label},t("line",{class:{"sui-radar-spoke":!0,hov:d===i},x1:a,y1:r,x2:s.x,y2:s.y,stroke:d===i?"var(--border)":"var(--hairline)"}),t("text",{"aria-hidden":"true",class:{"sui-radar-axis":!0,hov:d===i},x:s.lx,y:s.ly,"text-anchor":s.anchor},s.lines.length>1?s.lines.map(((a,r)=>t("tspan",{key:r+"",x:s.lx,dy:r?K:0},a))):s.lines[0])))),o.map(((a,r)=>t("g",{key:a.series.label,class:"sui-radar-series"},r<2?t("polygon",{points:a.points,fill:a.color,opacity:.12}):null,t("polygon",{points:a.points,fill:"none",stroke:a.color,"stroke-width":2,"stroke-linejoin":"round","stroke-linecap":"round","stroke-dasharray":a.index>=4&&!a.series.accent?u:void 0}),a.dots.map(((r,s)=>t("circle",{key:s+"",class:{"sui-radar-dot":!0,hov:d===s},cx:r[0],cy:r[1],r:d===s?3.2:2.4,fill:"var(--surface)",stroke:a.color,"stroke-width":1.5})))))),c.map(((a,r)=>t("polygon",{key:"hit-"+a.label,class:"sui-radar-hit",points:a.hit,fill:"transparent",onMouseEnter:()=>this.enter(r)}))),V?t(E,{id:V,circle:[S.dots[d][0],S.dots[d][1],6],label:D(c[d].label,o.length>1?S.series.label:void 0,M(S.series.data[d]??0))}):null),t(L,{ids:this.keysId,summary:N,host:this.hostName,hint:!0}),t(g,{show:!!w,box:W,keep:T,w:this.diameter,ht:this.diameter,title:w?w.label:"",room:[-C-v,0,this.diameter+C+v,this.diameter],avoid:G,rows:o.map((a=>({label:a.series.label,value:M(a.series.data[d]??0),color:a.color,...this.keyOf(a)})))}))))}static get watchers(){return{axes:[{compute:0}],series:[{compute:0}],diameter:[{compute:0}],max:[{compute:0}],rings:[{compute:0}]}}static get style(){return'.sui-radar-plot.sc-sui-chart-radar{position:relative;margin:0 auto}.sui-radar-plot.sc-sui-chart-radar svg.sc-sui-chart-radar{display:block;overflow:visible;direction:ltr}.sui-radar-axis.sc-sui-chart-radar{font:600 9.5px var(--font-sans);fill:var(--ink-muted)}.sui-radar-axis.hov.sc-sui-chart-radar{fill:var(--ink)}.sui-radar-series.sc-sui-chart-radar{pointer-events:none}.sui-radar-dot.sc-sui-chart-radar{transition:r var(--duration-fast) var(--ease-out)}.sui-radar-hit.sc-sui-chart-radar{cursor:default}@media (forced-colors: active){.sui-radar-plot.sc-sui-chart-radar svg.sc-sui-chart-radar{forced-color-adjust:none}.sui-radar-ring.sc-sui-chart-radar,.sui-radar-spoke.sc-sui-chart-radar{stroke:GrayText}.sui-radar-spoke.hov.sc-sui-chart-radar{stroke:CanvasText}.sui-radar-axis.sc-sui-chart-radar,.sui-radar-axis.hov.sc-sui-chart-radar{fill:CanvasText}.sui-radar-series.sc-sui-chart-radar polygon.sc-sui-chart-radar{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-radar-dot.sc-sui-chart-radar{stroke:CanvasText}}.sc-sui-chart-radar-h{display:block;font-family:var(--font-sans)}.sui-chart-frame.sc-sui-chart-radar{position:relative;box-sizing:border-box;font-family:var(--font-sans);color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px}.sui-chart-frame.plain.sc-sui-chart-radar{background:transparent;border:none;padding:0}.sui-chart-head.sc-sui-chart-radar{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.sui-chart-titles.sc-sui-chart-radar{flex:1;min-width:0}.sui-chart-title.sc-sui-chart-radar{font-size:13.5px;font-weight:700}.sui-chart-subtitle.sc-sui-chart-radar{font-size:11.5px;color:var(--ink-faint);margin-top:1px}.sui-chart-plot.sc-sui-chart-radar{position:relative}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar{display:block;width:100%;height:auto;overflow:visible}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar line.sc-sui-chart-radar{shape-rendering:crispEdges}.sui-chart-legend.sc-sui-chart-radar{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px}.sui-chart-key.sc-sui-chart-radar{display:inline-flex;align-items:center;gap:5px;border:none;background:transparent;padding:2px 4px;margin:0 -4px;font:600 11.5px var(--font-sans);color:var(--ink-muted);cursor:default}.sui-chart-key.toggle.sc-sui-chart-radar{cursor:pointer}.sui-chart-key.toggle.sc-sui-chart-radar:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-radius:4px}.sui-chart-key.off.sc-sui-chart-radar{color:var(--ink-placeholder);text-decoration:line-through}.sui-chart-key.sc-sui-chart-radar .swatch.sc-sui-chart-radar{width:9px;height:9px;border-radius:2px;flex-shrink:0}.sui-chart-key.sc-sui-chart-radar .swatch.round.sc-sui-chart-radar{border-radius:50%}.sui-chart-key.sc-sui-chart-radar .swatch.glyph.sc-sui-chart-radar,.sui-chart-tip-row.sc-sui-chart-radar .swatch.glyph.sc-sui-chart-radar{position:relative;width:16px;height:10px;border-radius:0}.swatch.glyph.line.sc-sui-chart-radar::before{content:\'\';position:absolute;left:1px;right:1px;top:4px;border-top:2px solid var(--c)}.swatch.glyph.ls-dot.sc-sui-chart-radar::before{border-top-style:dotted}.swatch.glyph.ls-dash.sc-sui-chart-radar::before{border-top-style:dashed}.swatch.glyph.sc-sui-chart-radar .mk.sc-sui-chart-radar{position:absolute;left:4.5px;top:1.5px;width:7px;height:7px;box-sizing:border-box;border:1.5px solid var(--c);background:var(--surface)}.swatch.glyph.sc-sui-chart-radar .mk.dot.sc-sui-chart-radar,.swatch.glyph.sc-sui-chart-radar .mk.solid.sc-sui-chart-radar,.swatch.glyph.sc-sui-chart-radar .mk.ring.sc-sui-chart-radar{border-radius:50%}.swatch.glyph.sc-sui-chart-radar .mk.solid.sc-sui-chart-radar{background:var(--c)}.swatch.glyph.sc-sui-chart-radar .mk.ring.sc-sui-chart-radar{background:color-mix(in srgb, var(--c) 25%, var(--surface))}.swatch.glyph.sc-sui-chart-radar .mk.diamond.sc-sui-chart-radar{transform:rotate(45deg) scale(0.85)}.swatch.glyph.sc-sui-chart-radar .mk.tri.sc-sui-chart-radar,.swatch.glyph.sc-sui-chart-radar .mk.tri-down.sc-sui-chart-radar{left:4px;top:1px;width:8px;height:8px;border:none}.swatch.glyph.sc-sui-chart-radar .mk.tri.sc-sui-chart-radar::after,.swatch.glyph.sc-sui-chart-radar .mk.tri-down.sc-sui-chart-radar::after{content:\'\';position:absolute;inset:0;background:var(--c);clip-path:polygon(50% 0, 100% 100%, 0 100%)}.swatch.glyph.sc-sui-chart-radar .mk.tri-down.sc-sui-chart-radar::after{clip-path:polygon(0 0, 100% 0, 50% 100%)}.sui-chart-key.sc-sui-chart-radar .swatch.glyph.sc-sui-chart-radar{width:22px}.sui-chart-key.sc-sui-chart-radar .swatch.glyph.line.sc-sui-chart-radar::before{top:3.5px;border-top-width:3px}.sui-chart-key.sc-sui-chart-radar .swatch.glyph.sc-sui-chart-radar .mk.sc-sui-chart-radar{left:7px;top:1px;width:8px;height:8px;border-width:2px}.sui-chart-key.sc-sui-chart-radar .swatch.glyph.sc-sui-chart-radar .mk.tri.sc-sui-chart-radar,.sui-chart-key.sc-sui-chart-radar .swatch.glyph.sc-sui-chart-radar .mk.tri-down.sc-sui-chart-radar{left:6.5px;top:0.5px;width:9px;height:9px}.sui-chart-key.off.sc-sui-chart-radar .swatch.sc-sui-chart-radar{opacity:0.35}.sui-chart-caption.sc-sui-chart-radar{font-size:11px;color:var(--ink-faint);margin-top:8px;border-top:1px solid var(--hairline);padding-top:7px}.sui-chart-tip.sc-sui-chart-radar{position:absolute;width:max-content;min-width:110px;max-width:240px;pointer-events:none;z-index:5;box-sizing:border-box;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);padding:8px 10px}.sui-chart-tip-title.sc-sui-chart-radar{font-size:10.5px;font-weight:700;color:var(--ink-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:0.05em;text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-radar{display:flex;align-items:center;gap:6px;font-size:11.5px;padding:1.5px 0}.sui-chart-tip-row.sc-sui-chart-radar .swatch.sc-sui-chart-radar{width:8px;height:8px;border-radius:2px;flex-shrink:0}.sui-chart-tip-row.sc-sui-chart-radar .lbl.sc-sui-chart-radar{flex:1;min-width:0;color:var(--ink-muted);text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-radar b.sc-sui-chart-radar{margin-inline-start:6px;white-space:nowrap;font-variant-numeric:tabular-nums;font-feature-settings:\'tnum\';font-weight:700}.sui-chart-tip.stack.sc-sui-chart-radar .sui-chart-tip-row.sc-sui-chart-radar{display:grid;grid-template-columns:minmax(min-content, 1fr);align-items:center;column-gap:6px;row-gap:0}.sui-chart-tip.stack.sc-sui-chart-radar .sui-chart-tip-row.keyed.sc-sui-chart-radar{grid-template-columns:auto minmax(min-content, 1fr)}.sui-chart-tip.stack.sc-sui-chart-radar .sui-chart-tip-row.keyed.sc-sui-chart-radar>b.sc-sui-chart-radar{grid-column:2}.sui-chart-tip.stack.sc-sui-chart-radar .sui-chart-tip-row.sc-sui-chart-radar>b.sc-sui-chart-radar{margin-inline-start:0}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar .halo.sc-sui-chart-radar{paint-order:stroke;stroke:var(--surface);stroke-width:3px;stroke-linejoin:round}.sui-chart-keys.sc-sui-chart-radar:focus{outline:none}.sui-chart-keys.sc-sui-chart-radar:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;box-shadow:var(--focus-shadow);border-radius:4px}.sui-chart-keys.keyed.sc-sui-chart-radar:focus-visible{outline:none;box-shadow:none}.sui-chart-ring.sc-sui-chart-radar{pointer-events:none;fill:none}.sui-chart-ring-halo.sc-sui-chart-radar{stroke:var(--focus-halo);stroke-width:6px}.sui-chart-ring-line.sc-sui-chart-radar{stroke:var(--focus-ring);stroke-width:2px}.sui-chart-empty.sc-sui-chart-radar{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 16px;text-align:center;font-size:12.5px;color:var(--ink-muted);pointer-events:none}.sui-chart-empty.sc-sui-chart-radar span.sc-sui-chart-radar{background:var(--surface);box-shadow:0 0 0 4px var(--surface);border-radius:4px}.sui-chart-wait.sc-sui-chart-radar{box-sizing:border-box}.sui-chart-loading.sc-sui-chart-radar{position:absolute;inset:8px 10px 22px 46px;border-radius:var(--radius-md);background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--brand-soft) 50%, var(--surface-sunken) 75%);background-size:300% 100%;animation:sb-shimmer 1.4s infinite linear}@media (prefers-reduced-motion: reduce){.sui-chart-loading.sc-sui-chart-radar{animation-duration:3s}}.sui-chart-sr.sc-sui-chart-radar{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.figure.sc-sui-chart-radar,.prose.sc-sui-chart-radar{direction:ltr;unicode-bidi:plaintext}svg.sc-sui-chart-radar text.sc-sui-chart-radar{unicode-bidi:plaintext}@media (forced-colors: active){.sui-chart-loading.sc-sui-chart-radar{box-sizing:border-box;border:1px solid GrayText}.sui-chart-key.sc-sui-chart-radar .swatch.sc-sui-chart-radar,.sui-chart-tip-row.sc-sui-chart-radar .swatch.sc-sui-chart-radar{forced-color-adjust:none;box-sizing:border-box;border:1px solid CanvasText}.sui-chart-key.sc-sui-chart-radar .swatch.glyph.sc-sui-chart-radar,.sui-chart-tip-row.sc-sui-chart-radar .swatch.glyph.sc-sui-chart-radar{border:none}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar{forced-color-adjust:none}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar text.sc-sui-chart-radar{fill:CanvasText !important}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar .halo.sc-sui-chart-radar{stroke:Canvas}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar line.sc-sui-chart-radar{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar line[stroke*="--hairline"].sc-sui-chart-radar{stroke:GrayText;filter:none}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar line[stroke*="--chart-axis"].sc-sui-chart-radar,.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar line[stroke*="--border-strong"].sc-sui-chart-radar,.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar line[stroke*="--accent-deep"].sc-sui-chart-radar{stroke:CanvasText;filter:none}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar circle.sc-sui-chart-radar{stroke:CanvasText}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar rect.sc-sui-chart-radar,.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar path.sc-sui-chart-radar,.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar polyline.sc-sui-chart-radar,.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar polygon.sc-sui-chart-radar{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-keys.sc-sui-chart-radar:focus-visible{outline-color:Highlight;box-shadow:none}svg.sc-sui-chart-radar .sui-chart-ring.sc-sui-chart-radar .sui-chart-ring-line.sc-sui-chart-radar{stroke:Highlight;filter:none}svg.sc-sui-chart-radar .sui-chart-ring.sc-sui-chart-radar .sui-chart-ring-halo.sc-sui-chart-radar{stroke:Canvas;filter:none}}'}},[518,"sui-chart-radar",{heading:[1],subtitle:[1],caption:[1],axes:[16],series:[16],diameter:[2],max:[2],rings:[2],money:[516],currency:[1],emptyMessage:[1,"empty-message"],loading:[516],hoverIndex:[1026,"hover-index"],hiddenLabels:[32],keyed:[32],keyRow:[32],hostName:[32],layout:[32],boxW:[32],setFocus:[64]},void 0,{axes:[{compute:0}],series:[{compute:0}],diameter:[{compute:0}],max:[{compute:0}],rings:[{compute:0}]}]),S=O,V=function(){"undefined"!=typeof customElements&&["sui-chart-radar"].forEach((a=>{"sui-chart-radar"===a&&(customElements.get(c(a))||customElements.define(c(a),O))}))};export{S as SuiChartRadar,V as defineCustomElement}
|
|
1
|
+
import{p as a,H as r,c as s,h as t,a as i,t as c}from"./p-CeVlau-G.js";import{o as e,t as h,e as o,s as d,Q as u,c as n,d as p,C as l,f as x,k as g,u as v,L as f,T as m,D as y,g as b,a3 as k}from"./p-BLK-elHV.js";import{h as w,w as M,m as C,c as T,a as j,k as z,s as H,K as E,b as L,P as B}from"./p-CFn_q23Q.js";import{a as R,l as G}from"./p-BuyjS5bS.js";import{d as D}from"./p-BHB1Wprj.js";import{u as K}from"./p-U06fVoGD.js";import{d as N}from"./p-qut9RP2y.js";const W=2*Math.PI,F=9.5,I=11,S=a(class extends r{constructor(a){super(),!1!==a&&this.__registerHost(),this.suiHover=s(this,"suiHover",7)}get host(){return this}heading;subtitle;caption;axes=[];series=[];diameter=210;max;rings=4;money=!1;currency="USD";emptyMessage;loading=!1;hoverIndex=-1;suiHover;hiddenLabels=[];keyed=!1;keyRow=0;plotEl;keysId=K("sui-chart-keys");hostName={};stopHostName;layout={cx:0,cy:0,R:0,rings:[],axes:[],polys:[]};boxW=0;hasHeaderEnd=!1;stopResize;componentWillLoad(){this.hasHeaderEnd=w(this.host,"header-end"),this.compute()}connectedCallback(){D(this.host,(()=>this.plotEl)),this.stopHostName?.(),this.stopHostName=M(this.host,(a=>{this.hostName=a})),this.stopResize||(this.stopResize=e(this.host,(a=>{this.boxW=a})))}disconnectedCallback(){this.stopHostName?.(),this.stopHostName=void 0,this.stopResize?.(),this.stopResize=void 0}compute(){const a=this.axes||[],r=this.series||[],s=a.length||1,t=this.diameter,i=t/2,c=t/2,e=t/2-26,u=a=>-Math.PI/2+a/s*W,n=a.map(((a,r)=>{const s=u(r),t=Math.cos(s);return{label:a,a:s,dx:t,dy:Math.sin(s),anchor:t>.3?"start":t<-.3?"end":"middle"}})),p=n.map((a=>Math.min((a=>{const r=a.split(" "),s=a=>{let s=1,t="";for(const i of r){const r=t?t+" "+i:i;h(r,F)<=a?t=r:(s++,t=i)}return s};let t=Math.max(...r.map((a=>h(a,F))));for(;s(t)>3;)t+=2;return t})(a.label),h(a.label,F)))),l=a=>(t/2+12-p[a])/Math.abs(n[a].dx)-8,x=n.map(((a,r)=>"middle"!==a.anchor&&l(r)<e));let g=e;n.forEach(((a,r)=>{"middle"!==a.anchor&&(g=Math.min(g,x[r]?(t/2+12+4-p[r])/Math.abs(a.dx):l(r)))})),g=Math.max(g,.6*e);const v=this.max||r.reduce(((a,r)=>C(r.data,[0,a])[1]),1),f=(a,r)=>{const s=u(a),t=r/v*g;return[i+t*Math.cos(s),c+t*Math.sin(s)]},m=Array.from({length:this.rings},((r,s)=>a.map(((a,r)=>f(r,v*(s+1)/this.rings).join(","))).join(" "))),y=Math.PI/s,b=n.map(((a,r)=>{const[s,e]=f(r,v),d=a.a,u=g+22,n=x[r]?i+g*a.dx-4*Math.sign(a.dx):i+(g+8)*a.dx,p=c+(g+8)*a.dy,l=[[i,c],[i+u*Math.cos(d-y),c+u*Math.sin(d-y)],[i+u*Math.cos(d),c+u*Math.sin(d)],[i+u*Math.cos(d+y),c+u*Math.sin(d+y)]].map((a=>a.join(","))).join(" "),m=o(a.label,"start"===a.anchor?t+12-n:"end"===a.anchor?n+12:2*Math.min(n,t-n)+24,F,3),b=c+g*a.dy,k=x[r]?a.dy>0?b+13:b-7-(m.length-1)*I:p-(a.dy>.3?-8:a.dy<-.3?3+(m.length-1)*I:(m.length-1)*I/2-3.5),w=m.reduce(((a,r)=>Math.max(a,h(r,F))),0),M="start"===a.anchor?n:"end"===a.anchor?n-w:n-w/2;return{label:a.label,x:s,y:e,lx:n,ly:k,anchor:a.anchor,lines:m,box:[M,k-9,M+w,k+(m.length-1)*I+3],hit:l}})),k=r.map(((a,r)=>{const s=a.data.map(((a,r)=>f(r,a)));return{series:a,index:r,color:d(a,r),points:s.map((a=>a.join(","))).join(" "),dots:s}}));this.layout={cx:i,cy:c,R:g,rings:m,axes:b,polys:k}}get empty(){return 0===(this.axes||[]).length||0===(this.series||[]).length}setHover(a){a!==this.hoverIndex&&(this.hoverIndex=a,this.suiHover.emit({index:a}))}onLeave=()=>this.setHover(-1);enter(a){this.keyed=!1,this.setHover(a)}async setFocus(){this.plotEl&&this.plotEl.hasAttribute("tabindex")&&this.plotEl.focus()}onKey=a=>{if(this.empty)return;const r=this.axes.length,s=this.layout.polys.filter((a=>!this.hiddenLabels.includes(a.series.label))).length,t=H(this.hoverIndex,r),i=T(a,{rows:s,count:()=>r},t>=0?{s:Math.min(this.keyRow,s-1),i:t}:null,this.keyed);if(i){if(a.preventDefault(),"leave"===i)return a.stopPropagation(),this.keyed=!1,void this.setHover(-1);this.keyRow=i.s,this.keyed=!0,this.setHover(i.i)}};onBlur=()=>{this.keyed&&(this.keyed=!1,this.setHover(-1))};keyOf=a=>({line:!0,mark:"dot",dash:a.index>=4&&!a.series.accent?u:void 0});toggle=a=>{this.hiddenLabels=this.hiddenLabels.includes(a)?this.hiddenLabels.filter((r=>r!==a)):this.hiddenLabels.concat(a)};render(){const{cx:a,cy:r,rings:s,axes:c,polys:e}=this.layout;if(this.loading)return t(i,{"aria-busy":"true"},t(n,{title:this.heading,subtitle:this.subtitle,caption:this.caption,hasHeaderEnd:this.hasHeaderEnd},t(p,{height:this.diameter,label:R(void 0,"chart-radar.loading",void 0,"Loading")})));if(this.empty)return t(i,null,t(n,{title:this.heading,subtitle:this.subtitle,caption:this.caption,hasHeaderEnd:this.hasHeaderEnd},t("div",{class:"sui-chart-plot",style:{height:this.diameter+"px"}},t(l,{text:R(void 0,"chart-radar.empty",this.emptyMessage,"Nothing to plot yet.")}))));const o=e.filter((a=>!this.hiddenLabels.includes(a.series.label))),d=H(this.hoverIndex,c.length),w=d>=0?c[d]:void 0,M=this.money?a=>N(a,!1,this.currency):x,C=Math.max(0,(this.boxW-f-this.diameter)/2),T=d<0?[]:[[c[d].box[0]-2,c[d].box[1]-2,c[d].box[2]+2,c[d].box[3]+2]].concat(o.filter((a=>a.dots[d])).map((a=>[a.dots[d][0]-6,a.dots[d][1]-6,a.dots[d][0]+6,a.dots[d][1]+6]))),D=[];if(d>=0){c.forEach(((a,r)=>{r!==d&&a.lines.forEach(((r,s)=>{const t=h(r,F),i=a.ly+s*I,c="start"===a.anchor?a.lx:"end"===a.anchor?a.lx-t:a.lx-t/2;D.push([c,i-7,c+t,i+2,s||1===a.lines.length?m:3*m])}))}));for(let s=1;s<8;s++){const t=a+(c[d].x-a)*s/8,i=r+(c[d].y-r)*s/8;D.push([t-3,i-3,t+3,i+3,y])}o.forEach((a=>{a.dots.forEach((([r,s],t)=>{t!==d&&D.push([r-4,s-4,r+4,s+4,b]);const[i,c]=a.dots[(t+1)%a.dots.length];for(let a=1;a<4;a++)D.push([r+(i-r)*a/4-3,s+(c-s)*a/4-3,r+(i-r)*a/4+3,s+(c-s)*a/4+3,k])}));const r=a.dots.map((a=>a[0])),s=a.dots.map((a=>a[1]));D.push([Math.min(...r),Math.min(...s),Math.max(...r),Math.max(...s),k])}))}const K=T.reduce(((a,r)=>[Math.min(a[0],r[0]),Math.min(a[1],r[1]),Math.max(a[2],r[2]),Math.max(a[3],r[3])]),[1/0,1/0,-1/0,-1/0]),W=j(this.heading,G(void 0,"chart-radar.across",void 0,"{series} across {axes}",{series:o.map((a=>a.series.label)).join(", "),axes:c.map((a=>a.label)).join(", ")})),S=Math.min(this.keyRow,o.length-1),V=o[S],$=this.keyed&&w&&V&&V.dots[d]?`${this.keysId}-${S}-${d}`:void 0;return t(i,null,t(n,{title:this.heading,subtitle:this.subtitle,caption:this.caption,hasHeaderEnd:this.hasHeaderEnd,legend:e.map((a=>({label:a.series.label,color:a.color,...this.keyOf(a)}))),hidden:this.hiddenLabels,onToggle:this.toggle},t("div",{class:"sui-radar-plot",style:{width:this.diameter+"px"}},t("svg",{width:this.diameter,height:this.diameter,...z(W,this.keysId,this.hostName,$),ref:a=>{this.plotEl=a},onKeyDown:this.onKey,onBlur:this.onBlur,onMouseLeave:this.onLeave},s.map(((a,r)=>t("polygon",{key:r+"",class:"sui-radar-ring",points:a,fill:"none",stroke:"var(--hairline)","stroke-width":1}))),c.map(((s,i)=>t("g",{key:s.label},t("line",{class:{"sui-radar-spoke":!0,hov:d===i},x1:a,y1:r,x2:s.x,y2:s.y,stroke:d===i?"var(--border)":"var(--hairline)"}),t("text",{"aria-hidden":"true",class:{"sui-radar-axis":!0,hov:d===i},x:s.lx,y:s.ly,"text-anchor":s.anchor},s.lines.length>1?s.lines.map(((a,r)=>t("tspan",{key:r+"",x:s.lx,dy:r?I:0},a))):s.lines[0])))),o.map(((a,r)=>t("g",{key:a.series.label,class:"sui-radar-series"},r<2?t("polygon",{points:a.points,fill:a.color,opacity:.12}):null,t("polygon",{points:a.points,fill:"none",stroke:a.color,"stroke-width":2,"stroke-linejoin":"round","stroke-linecap":"round","stroke-dasharray":a.index>=4&&!a.series.accent?u:void 0}),a.dots.map(((r,s)=>t("circle",{key:s+"",class:{"sui-radar-dot":!0,hov:d===s},cx:r[0],cy:r[1],r:d===s?3.2:2.4,fill:"var(--surface)",stroke:a.color,"stroke-width":1.5})))))),c.map(((a,r)=>t("polygon",{key:"hit-"+a.label,class:"sui-radar-hit",points:a.hit,fill:"transparent",onMouseEnter:()=>this.enter(r)}))),$?t(E,{id:$,circle:[V.dots[d][0],V.dots[d][1],6],label:L(c[d].label,o.length>1?V.series.label:void 0,M(V.series.data[d]??0))}):null),t(B,{ids:this.keysId,summary:W,host:this.hostName,hint:!0}),t(g,{show:!!w,box:K,keep:T,w:this.diameter,ht:this.diameter,title:w?w.label:"",room:[-C-v,0,this.diameter+C+v,this.diameter],avoid:D,rows:o.map((a=>({label:a.series.label,value:M(a.series.data[d]??0),color:a.color,...this.keyOf(a)})))}))))}static get watchers(){return{axes:[{compute:0}],series:[{compute:0}],diameter:[{compute:0}],max:[{compute:0}],rings:[{compute:0}]}}static get style(){return'.sui-radar-plot.sc-sui-chart-radar{position:relative;margin:0 auto}.sui-radar-plot.sc-sui-chart-radar svg.sc-sui-chart-radar{display:block;overflow:visible;direction:ltr}.sui-radar-axis.sc-sui-chart-radar{font:600 9.5px var(--font-sans);fill:var(--ink-muted)}.sui-radar-axis.hov.sc-sui-chart-radar{fill:var(--ink)}.sui-radar-series.sc-sui-chart-radar{pointer-events:none}.sui-radar-dot.sc-sui-chart-radar{transition:r var(--duration-fast) var(--ease-out)}.sui-radar-hit.sc-sui-chart-radar{cursor:default}@media (forced-colors: active){.sui-radar-plot.sc-sui-chart-radar svg.sc-sui-chart-radar{forced-color-adjust:none}.sui-radar-ring.sc-sui-chart-radar,.sui-radar-spoke.sc-sui-chart-radar{stroke:GrayText}.sui-radar-spoke.hov.sc-sui-chart-radar{stroke:CanvasText}.sui-radar-axis.sc-sui-chart-radar,.sui-radar-axis.hov.sc-sui-chart-radar{fill:CanvasText}.sui-radar-series.sc-sui-chart-radar polygon.sc-sui-chart-radar{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-radar-dot.sc-sui-chart-radar{stroke:CanvasText}}.sc-sui-chart-radar-h{display:block;font-family:var(--font-sans)}.sui-chart-frame.sc-sui-chart-radar{position:relative;box-sizing:border-box;font-family:var(--font-sans);color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px}.sui-chart-frame.plain.sc-sui-chart-radar{background:transparent;border:none;padding:0}.sui-chart-head.sc-sui-chart-radar{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.sui-chart-titles.sc-sui-chart-radar{flex:1;min-width:0}.sui-chart-title.sc-sui-chart-radar{font-size:13.5px;font-weight:700}.sui-chart-subtitle.sc-sui-chart-radar{font-size:11.5px;color:var(--ink-faint);margin-top:1px}.sui-chart-plot.sc-sui-chart-radar{position:relative}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar{display:block;width:100%;height:auto;overflow:visible}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar line.sc-sui-chart-radar{shape-rendering:crispEdges}.sui-chart-legend.sc-sui-chart-radar{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px}.sui-chart-key.sc-sui-chart-radar{display:inline-flex;align-items:center;gap:5px;border:none;background:transparent;padding:2px 4px;margin:0 -4px;font:600 11.5px var(--font-sans);color:var(--ink-muted);cursor:default}.sui-chart-key.toggle.sc-sui-chart-radar{cursor:pointer}.sui-chart-key.toggle.sc-sui-chart-radar:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-radius:4px}.sui-chart-key.off.sc-sui-chart-radar{color:var(--ink-placeholder);text-decoration:line-through}.sui-chart-key.sc-sui-chart-radar .swatch.sc-sui-chart-radar{width:9px;height:9px;border-radius:2px;flex-shrink:0}.sui-chart-key.sc-sui-chart-radar .swatch.round.sc-sui-chart-radar{border-radius:50%}.sui-chart-key.sc-sui-chart-radar .swatch.glyph.sc-sui-chart-radar,.sui-chart-tip-row.sc-sui-chart-radar .swatch.glyph.sc-sui-chart-radar{position:relative;width:16px;height:10px;border-radius:0}.swatch.glyph.line.sc-sui-chart-radar::before{content:\'\';position:absolute;left:1px;right:1px;top:4px;border-top:2px solid var(--c)}.swatch.glyph.ls-dot.sc-sui-chart-radar::before{border-top-style:dotted}.swatch.glyph.ls-dash.sc-sui-chart-radar::before{border-top-style:dashed}.swatch.glyph.sc-sui-chart-radar .mk.sc-sui-chart-radar{position:absolute;left:4.5px;top:1.5px;width:7px;height:7px;box-sizing:border-box;border:1.5px solid var(--c);background:var(--surface)}.swatch.glyph.sc-sui-chart-radar .mk.dot.sc-sui-chart-radar,.swatch.glyph.sc-sui-chart-radar .mk.solid.sc-sui-chart-radar,.swatch.glyph.sc-sui-chart-radar .mk.ring.sc-sui-chart-radar{border-radius:50%}.swatch.glyph.sc-sui-chart-radar .mk.solid.sc-sui-chart-radar{background:var(--c)}.swatch.glyph.sc-sui-chart-radar .mk.ring.sc-sui-chart-radar{background:color-mix(in srgb, var(--c) 25%, var(--surface))}.swatch.glyph.sc-sui-chart-radar .mk.diamond.sc-sui-chart-radar{transform:rotate(45deg) scale(0.85)}.swatch.glyph.sc-sui-chart-radar .mk.tri.sc-sui-chart-radar,.swatch.glyph.sc-sui-chart-radar .mk.tri-down.sc-sui-chart-radar{left:4px;top:1px;width:8px;height:8px;border:none}.swatch.glyph.sc-sui-chart-radar .mk.tri.sc-sui-chart-radar::after,.swatch.glyph.sc-sui-chart-radar .mk.tri-down.sc-sui-chart-radar::after{content:\'\';position:absolute;inset:0;background:var(--c);clip-path:polygon(50% 0, 100% 100%, 0 100%)}.swatch.glyph.sc-sui-chart-radar .mk.tri-down.sc-sui-chart-radar::after{clip-path:polygon(0 0, 100% 0, 50% 100%)}.sui-chart-key.sc-sui-chart-radar .swatch.glyph.sc-sui-chart-radar{width:22px}.sui-chart-key.sc-sui-chart-radar .swatch.glyph.line.sc-sui-chart-radar::before{top:3.5px;border-top-width:3px}.sui-chart-key.sc-sui-chart-radar .swatch.glyph.sc-sui-chart-radar .mk.sc-sui-chart-radar{left:7px;top:1px;width:8px;height:8px;border-width:2px}.sui-chart-key.sc-sui-chart-radar .swatch.glyph.sc-sui-chart-radar .mk.tri.sc-sui-chart-radar,.sui-chart-key.sc-sui-chart-radar .swatch.glyph.sc-sui-chart-radar .mk.tri-down.sc-sui-chart-radar{left:6.5px;top:0.5px;width:9px;height:9px}.sui-chart-key.off.sc-sui-chart-radar .swatch.sc-sui-chart-radar{opacity:0.35}.sui-chart-caption.sc-sui-chart-radar{font-size:11px;color:var(--ink-faint);margin-top:8px;border-top:1px solid var(--hairline);padding-top:7px}.sui-chart-tip.sc-sui-chart-radar{position:absolute;width:max-content;min-width:110px;max-width:240px;pointer-events:none;z-index:5;box-sizing:border-box;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);padding:8px 10px}.sui-chart-tip-title.sc-sui-chart-radar{font-size:10.5px;font-weight:700;color:var(--ink-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:0.05em;text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-radar{display:flex;align-items:center;gap:6px;font-size:11.5px;padding:1.5px 0}.sui-chart-tip-row.sc-sui-chart-radar .swatch.sc-sui-chart-radar{width:8px;height:8px;border-radius:2px;flex-shrink:0}.sui-chart-tip-row.sc-sui-chart-radar .lbl.sc-sui-chart-radar{flex:1;min-width:0;color:var(--ink-muted);text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-radar b.sc-sui-chart-radar{margin-inline-start:6px;white-space:nowrap;font-variant-numeric:tabular-nums;font-feature-settings:\'tnum\';font-weight:700}.sui-chart-tip.stack.sc-sui-chart-radar .sui-chart-tip-row.sc-sui-chart-radar{display:grid;grid-template-columns:minmax(min-content, 1fr);align-items:center;column-gap:6px;row-gap:0}.sui-chart-tip.stack.sc-sui-chart-radar .sui-chart-tip-row.keyed.sc-sui-chart-radar{grid-template-columns:auto minmax(min-content, 1fr)}.sui-chart-tip.stack.sc-sui-chart-radar .sui-chart-tip-row.keyed.sc-sui-chart-radar>b.sc-sui-chart-radar{grid-column:2}.sui-chart-tip.stack.sc-sui-chart-radar .sui-chart-tip-row.sc-sui-chart-radar>b.sc-sui-chart-radar{margin-inline-start:0}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar .halo.sc-sui-chart-radar{paint-order:stroke;stroke:var(--surface);stroke-width:3px;stroke-linejoin:round}.sui-chart-keys.sc-sui-chart-radar:focus{outline:none}.sui-chart-keys.sc-sui-chart-radar:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;box-shadow:var(--focus-shadow);border-radius:4px}.sui-chart-keys.keyed.sc-sui-chart-radar:focus-visible{outline:none;box-shadow:none}.sui-chart-ring.sc-sui-chart-radar{pointer-events:none;fill:none}.sui-chart-ring-halo.sc-sui-chart-radar{stroke:var(--focus-halo);stroke-width:6px}.sui-chart-ring-line.sc-sui-chart-radar{stroke:var(--focus-ring);stroke-width:2px}.sui-chart-empty.sc-sui-chart-radar{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 16px;text-align:center;font-size:12.5px;color:var(--ink-muted);pointer-events:none}.sui-chart-empty.sc-sui-chart-radar span.sc-sui-chart-radar{background:var(--surface);box-shadow:0 0 0 4px var(--surface);border-radius:4px}.sui-chart-wait.sc-sui-chart-radar{box-sizing:border-box}.sui-chart-loading.sc-sui-chart-radar{position:absolute;inset:8px 10px 22px 46px;border-radius:var(--radius-md);background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--brand-soft) 50%, var(--surface-sunken) 75%);background-size:300% 100%;animation:sb-shimmer 1.4s infinite linear}@media (prefers-reduced-motion: reduce){.sui-chart-loading.sc-sui-chart-radar{animation-duration:3s}}.sui-chart-sr.sc-sui-chart-radar{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.figure.sc-sui-chart-radar,.prose.sc-sui-chart-radar{direction:ltr;unicode-bidi:plaintext}svg.sc-sui-chart-radar text.sc-sui-chart-radar{unicode-bidi:plaintext}@media (forced-colors: active){.sui-chart-loading.sc-sui-chart-radar{box-sizing:border-box;border:1px solid GrayText}.sui-chart-key.sc-sui-chart-radar .swatch.sc-sui-chart-radar,.sui-chart-tip-row.sc-sui-chart-radar .swatch.sc-sui-chart-radar{forced-color-adjust:none;box-sizing:border-box;border:1px solid CanvasText}.sui-chart-key.sc-sui-chart-radar .swatch.glyph.sc-sui-chart-radar,.sui-chart-tip-row.sc-sui-chart-radar .swatch.glyph.sc-sui-chart-radar{border:none}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar{forced-color-adjust:none}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar text.sc-sui-chart-radar{fill:CanvasText !important}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar .halo.sc-sui-chart-radar{stroke:Canvas}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar line.sc-sui-chart-radar{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar line[stroke*="--hairline"].sc-sui-chart-radar{stroke:GrayText;filter:none}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar line[stroke*="--chart-axis"].sc-sui-chart-radar,.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar line[stroke*="--border-strong"].sc-sui-chart-radar,.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar line[stroke*="--accent-deep"].sc-sui-chart-radar{stroke:CanvasText;filter:none}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar circle.sc-sui-chart-radar{stroke:CanvasText}.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar rect.sc-sui-chart-radar,.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar path.sc-sui-chart-radar,.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar polyline.sc-sui-chart-radar,.sui-chart-plot.sc-sui-chart-radar svg.sc-sui-chart-radar polygon.sc-sui-chart-radar{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-keys.sc-sui-chart-radar:focus-visible{outline-color:Highlight;box-shadow:none}svg.sc-sui-chart-radar .sui-chart-ring.sc-sui-chart-radar .sui-chart-ring-line.sc-sui-chart-radar{stroke:Highlight;filter:none}svg.sc-sui-chart-radar .sui-chart-ring.sc-sui-chart-radar .sui-chart-ring-halo.sc-sui-chart-radar{stroke:Canvas;filter:none}}'}},[518,"sui-chart-radar",{heading:[1],subtitle:[1],caption:[1],axes:[16],series:[16],diameter:[2],max:[2],rings:[2],money:[516],currency:[1],emptyMessage:[1,"empty-message"],loading:[516],hoverIndex:[1026,"hover-index"],hiddenLabels:[32],keyed:[32],keyRow:[32],hostName:[32],layout:[32],boxW:[32],setFocus:[64]},void 0,{axes:[{compute:0}],series:[{compute:0}],diameter:[{compute:0}],max:[{compute:0}],rings:[{compute:0}]}]),V=S,$=function(){"undefined"!=typeof customElements&&["sui-chart-radar"].forEach((a=>{"sui-chart-radar"===a&&(customElements.get(c(a))||customElements.define(c(a),S))}))};export{V as SuiChartRadar,$ as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as t,H as s,c as r,h as a,a as c,t as i}from"./p-CeVlau-G.js";import{o as e,p as h,c as o,L as n,d as u,b as l,v as p,Z as d,N as x,s as g,x as f,t as v,T as b,l as m,m as y,E as w,k,Y as C,K as z,C as T,a4 as M,P as j,J as H}from"./p-Bv5xqCDb.js";import{h as E,w as L,c as N,p as S,t as B,a as O,s as V,b as D,i as F,k as G,K as W,P as I,m as K}from"./p-DtI1DFsR.js";import{d as P}from"./p-BHB1Wprj.js";import{u as Y}from"./p-U06fVoGD.js";import{i as $}from"./p-GAnFXayY.js";import{l as X,a as R}from"./p-BuyjS5bS.js";const q=t(class extends s{constructor(t){super(),!1!==t&&this.__registerHost(),this.suiHover=r(this,"suiHover",7)}get host(){return this}heading;subtitle;caption;series=[];width=440;height=210;fixedSize=!1;xLabel;yLabel;formatX;formatY;every="auto";emptyMessage;loading=!1;hoverIndex=-1;suiHover;hiddenSeries=[];hasHeaderEnd=!1;boxW=0;keyed=!1;plotEl;keysId=Y("sui-chart-keys");hostName={};stopHostName;scale=1;stopResize;componentWillLoad(){this.hasHeaderEnd=E(this.host,"header-end")}connectedCallback(){P(this.host,(()=>this.plotEl)),this.stopHostName?.(),this.stopHostName=L(this.host,(t=>{this.hostName=t})),this.stopResize||(this.stopResize=e(this.host,(t=>{this.boxW=t})))}disconnectedCallback(){this.stopHostName?.(),this.stopHostName=void 0,this.stopResize?.(),this.stopResize=void 0}async setFocus(){this.plotEl&&this.plotEl.hasAttribute("tabindex")&&this.plotEl.focus()}get plotW(){return h(!this.fixedSize,this.boxW,this.width)}keyOrder(){const t=[];(this.series||[]).forEach(((s,r)=>{this.hiddenSeries.includes(s.label)||t.push(r)}));const s=t.map((t=>{const s=this.series[t].points||[];return s.map(((t,s)=>s)).sort(((t,r)=>s[t].x-s[r].x||s[t].y-s[r].y))}));return{drawn:t,order:s}}onKey=t=>{if(this.empty)return;const{drawn:s,order:r}=this.keyOrder(),a=(t,a)=>this.series[s[t]].points[r[t][a]],c={rows:s.length,count:t=>r[t].length,near:(t,s)=>{const c=a(t.s,t.i);let i=0;return r[s].forEach(((t,r)=>{const e=a(s,r),h=a(s,i);(Math.abs(e.x-c.x)<Math.abs(h.x-c.x)||Math.abs(e.x-c.x)===Math.abs(h.x-c.x)&&Math.abs(e.y-c.y)<Math.abs(h.y-c.y))&&(i=r)})),i}},i=this.locate(this.hoverIndex),e=i?s.indexOf(i.s):-1,h=N(t,c,e>=0?{s:e,i:r[e].indexOf(i.p)}:null,this.keyed);if(h){if(t.preventDefault(),"leave"===h)return t.stopPropagation(),this.keyed=!1,void this.setHover(-1);this.scale=S(this.plotEl,this.plotW,this.scale),this.keyed=!0,this.setHover(this.flat(s[h.s],r[h.s][h.i]))}};onBlur=()=>{this.keyed&&(this.keyed=!1,this.setHover(-1))};get empty(){const t=this.series||[];return 0===t.length||t.every((t=>!(t.points||[]).length))}locate(t){if(t<0)return null;let s=0;for(let r=0;r<this.series.length;r++){const a=this.series[r].points.length;if(t<s+a)return{s:r,p:t-s};s+=a}return null}flat(t,s){let r=0;for(let s=0;s<t;s++)r+=this.series[s].points.length;return r+s}setHover(t){if(t===this.hoverIndex)return;this.hoverIndex=t;const s=this.locate(t);this.suiHover.emit(s?{index:t,series:s.s,point:s.p}:{index:-1,series:-1,point:-1})}onOver=t=>{const s=t.target;if(!s||"circle"!==s.tagName)return;const r=t.currentTarget.getBoundingClientRect();r.width>0&&(this.scale=r.width/this.plotW),this.keyed=!1,this.setHover(this.flat(Number(s.getAttribute("data-s")),Number(s.getAttribute("data-p"))))};onOut=t=>{const s=t.target;if(!s||"circle"!==s.tagName||this.hoverIndex<0)return;const r=t.relatedTarget;r&&"circle"===r.tagName&&this.host.contains(r)||this.setHover(-1)};onLeave=()=>this.setHover(-1);toggle=t=>{this.hiddenSeries=B(this.hiddenSeries,t);const s=this.locate(this.hoverIndex);s&&this.series[s.s]&&this.hiddenSeries.includes(this.series[s.s].label)&&this.setHover(-1)};chartName(t){const s=t.join(", "),r=this.xLabel,a=this.yLabel;let c;return c=r&&a?t.length?X(void 0,"chart-scatter.scatterOfPlotting",void 0,"scatter chart of {series}, plotting {y} against {x}",{series:s,x:r,y:a}):X(void 0,"chart-scatter.scatterPlotting",void 0,"scatter chart, plotting {y} against {x}",{x:r,y:a}):t.length?X(void 0,"chart-scatter.scatterOf",void 0,"scatter chart of {series}",{series:s}):R(void 0,"chart-scatter.scatter",void 0,"scatter chart"),O(this.heading,c)}render(){const{series:t,hiddenSeries:s}=this,r=this.plotW,i=this.height,e=$(this.host);if(this.loading)return a(c,{"aria-busy":"true"},a(o,{title:this.heading,subtitle:this.subtitle,caption:this.caption,w:this.fixedSize?r+n:void 0,hasHeaderEnd:this.hasHeaderEnd},a(u,{height:i,label:R(void 0,"chart-scatter.loading",void 0,"Loading"),rtl:e})));const h=this.empty,E=t.map((t=>!s.includes(t.label)));let L,N,S=0;for(let s=0;s<t.length;s++)if(S+=t[s].points.length,E[s])for(const r of t[s].points)L=L?[Math.min(L[0],r.x),Math.max(L[1],r.x)]:[r.x,r.x],N=N?[Math.min(N[0],r.y),Math.max(N[1],r.y)]:[r.y,r.y];L=L||K([]),N=N||K([]);const B=l(L[0],L[1],5),O=l(N[0],N[1],4),P=this.formatX||d,Y=this.formatY||d,q=p(O.ticks.map(Y)),[A,J]=H(r,0,e,q),U=m(B.lo,B.hi,A,J),Z=m(O.lo,O.hi,i-j.b,j.t),Q=x(this.every,B.ticks.map(P),r-q-j.r,!1),_=t.map(g),tt=h?null:this.locate(V(this.hoverIndex,S)),st=tt&&E[tt.s]?t[tt.s].points[tt.p]:void 0,rt=t.filter(((t,s)=>E[s])).map((t=>t.label)),at=[],ct=[],it=t.map(((t,s)=>s>=4&&!t.color&&!t.accent));for(let s=0;s<t.length;s++){if(!E[s])continue;const r=t[s].points;for(let t=0;t<r.length;t++){const c=r[t],i=!!st&&tt.s===s&&tt.p===t;at.push(a("circle",{key:s+"-"+t,class:"pt","data-s":s+"","data-p":t+"",cx:U(c.x),cy:Z(c.y),r:c.r||4,fill:_[s],opacity:c.r?.55:.85,"fill-opacity":it[s]?.25:1,stroke:i?"var(--brand)":it[s]?_[s]:"var(--surface)","stroke-width":i||it[s]?2:1}));const e=(c.r||4)+1;i||ct.push([U(c.x)-e,Z(c.y)-e,U(c.x)+e,Z(c.y)+e,b,M])}}const et=this.scale,ht=st?(st.r||4)+2:0,ot=f(r,i,et,0,0,e,q),nt=B.ticks.filter(((t,s)=>s%Q==0)).map((t=>{const s=v(P(t),9.5)/2;return[U(t)-s,i-13,U(t)+s,i-4,b]})),ut=st?y(ct.concat(w(O.ticks,Z,Y,r,e,!1,q),nt),et).concat(ot.avoid):[],lt=this.keyed&&st?`${this.keysId}-${this.hoverIndex}`:void 0,pt=lt&&st?D(st.name||t[tt.s].label,st.name&&rt.length>1?t[tt.s].label:void 0,X(void 0,"chart-scatter.coords",void 0,"{x} {xValue}, {y} {yValue}",{x:this.xLabel||"x",xValue:P(st.x),y:this.yLabel||"y",yValue:Y(st.y)})):"";return a(c,null,a(o,{title:this.heading,subtitle:this.subtitle,caption:this.caption,w:this.fixedSize?r+n:void 0,hasHeaderEnd:this.hasHeaderEnd,legend:t.map(((t,s)=>({label:t.label,color:_[s],round:!0,mark:it[s]?"ring":void 0}))),hidden:s,onToggle:this.toggle},a("div",{class:"sui-chart-plot"},st?a(k,{show:!0,box:[(U(st.x)-ht)*et,(Z(st.y)-ht)*et,(U(st.x)+ht)*et,(Z(st.y)+ht)*et],w:r*et,ht:i*et,title:st.name||t[tt.s].label,rows:[{label:this.xLabel||"x",value:P(st.x)},{label:this.yLabel||"y",value:Y(st.y)}],avoid:ut,area:ot.area,room:ot.room}):null,a("svg",{viewBox:`0 0 ${r} ${i}`,...h?F(this.chartName(rt),this.keysId,this.hostName):G(this.chartName(rt),this.keysId,this.hostName,lt),ref:t=>{this.plotEl=t},onKeyDown:this.onKey,onBlur:this.onBlur,onMouseOver:this.onOver,onMouseOut:this.onOut,onMouseLeave:this.onLeave},a(C,{ticks:O.ticks,y:Z,w:r,rtl:e,gl:q,fmt:Y,bare:h}),a(z,{w:r,rtl:e,gl:q,h:i}),h?null:B.ticks.map(((t,s)=>s%Q==0?a("text",{"aria-hidden":"true",key:t+"",x:U(t),y:i-6,"text-anchor":"middle",style:{font:"600 9.5px var(--font-sans)",fill:"var(--ink-faint)",fontFeatureSettings:"'tnum'"}},P(t)):null)),h?null:at,lt&&st?a(W,{id:lt,label:pt,circle:[U(st.x),Z(st.y),(st.r||4)+4]}):null),a(I,{ids:this.keysId,summary:this.chartName(rt),host:this.hostName,hint:!h}),h?a(T,{text:R(void 0,"chart-scatter.empty",this.emptyMessage,"Nothing to plot yet.")}):null)))}static get style(){return'.sc-sui-chart-scatter-h{display:block}svg.sc-sui-chart-scatter{direction:ltr}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter text.sc-sui-chart-scatter{user-select:none}.sui-chart-plot.sc-sui-chart-scatter circle.pt.sc-sui-chart-scatter{cursor:pointer}.sc-sui-chart-scatter-h{display:block;font-family:var(--font-sans)}.sui-chart-frame.sc-sui-chart-scatter{position:relative;box-sizing:border-box;font-family:var(--font-sans);color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px}.sui-chart-frame.plain.sc-sui-chart-scatter{background:transparent;border:none;padding:0}.sui-chart-head.sc-sui-chart-scatter{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.sui-chart-titles.sc-sui-chart-scatter{flex:1;min-width:0}.sui-chart-title.sc-sui-chart-scatter{font-size:13.5px;font-weight:700}.sui-chart-subtitle.sc-sui-chart-scatter{font-size:11.5px;color:var(--ink-faint);margin-top:1px}.sui-chart-plot.sc-sui-chart-scatter{position:relative}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter{display:block;width:100%;height:auto;overflow:visible}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter line.sc-sui-chart-scatter{shape-rendering:crispEdges}.sui-chart-legend.sc-sui-chart-scatter{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px}.sui-chart-key.sc-sui-chart-scatter{display:inline-flex;align-items:center;gap:5px;border:none;background:transparent;padding:2px 4px;margin:0 -4px;font:600 11.5px var(--font-sans);color:var(--ink-muted);cursor:default}.sui-chart-key.toggle.sc-sui-chart-scatter{cursor:pointer}.sui-chart-key.toggle.sc-sui-chart-scatter:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-radius:4px}.sui-chart-key.off.sc-sui-chart-scatter{color:var(--ink-placeholder);text-decoration:line-through}.sui-chart-key.sc-sui-chart-scatter .swatch.sc-sui-chart-scatter{width:9px;height:9px;border-radius:2px;flex-shrink:0}.sui-chart-key.sc-sui-chart-scatter .swatch.round.sc-sui-chart-scatter{border-radius:50%}.sui-chart-key.sc-sui-chart-scatter .swatch.glyph.sc-sui-chart-scatter,.sui-chart-tip-row.sc-sui-chart-scatter .swatch.glyph.sc-sui-chart-scatter{position:relative;width:16px;height:10px;border-radius:0}.swatch.glyph.line.sc-sui-chart-scatter::before{content:\'\';position:absolute;left:1px;right:1px;top:4px;border-top:2px solid var(--c)}.swatch.glyph.ls-dot.sc-sui-chart-scatter::before{border-top-style:dotted}.swatch.glyph.ls-dash.sc-sui-chart-scatter::before{border-top-style:dashed}.swatch.glyph.sc-sui-chart-scatter .mk.sc-sui-chart-scatter{position:absolute;left:4.5px;top:1.5px;width:7px;height:7px;box-sizing:border-box;border:1.5px solid var(--c);background:var(--surface)}.swatch.glyph.sc-sui-chart-scatter .mk.dot.sc-sui-chart-scatter,.swatch.glyph.sc-sui-chart-scatter .mk.solid.sc-sui-chart-scatter,.swatch.glyph.sc-sui-chart-scatter .mk.ring.sc-sui-chart-scatter{border-radius:50%}.swatch.glyph.sc-sui-chart-scatter .mk.solid.sc-sui-chart-scatter{background:var(--c)}.swatch.glyph.sc-sui-chart-scatter .mk.ring.sc-sui-chart-scatter{background:color-mix(in srgb, var(--c) 25%, var(--surface))}.swatch.glyph.sc-sui-chart-scatter .mk.diamond.sc-sui-chart-scatter{transform:rotate(45deg) scale(0.85)}.swatch.glyph.sc-sui-chart-scatter .mk.tri.sc-sui-chart-scatter,.swatch.glyph.sc-sui-chart-scatter .mk.tri-down.sc-sui-chart-scatter{left:4px;top:1px;width:8px;height:8px;border:none}.swatch.glyph.sc-sui-chart-scatter .mk.tri.sc-sui-chart-scatter::after,.swatch.glyph.sc-sui-chart-scatter .mk.tri-down.sc-sui-chart-scatter::after{content:\'\';position:absolute;inset:0;background:var(--c);clip-path:polygon(50% 0, 100% 100%, 0 100%)}.swatch.glyph.sc-sui-chart-scatter .mk.tri-down.sc-sui-chart-scatter::after{clip-path:polygon(0 0, 100% 0, 50% 100%)}.sui-chart-key.sc-sui-chart-scatter .swatch.glyph.sc-sui-chart-scatter{width:22px}.sui-chart-key.sc-sui-chart-scatter .swatch.glyph.line.sc-sui-chart-scatter::before{top:3.5px;border-top-width:3px}.sui-chart-key.sc-sui-chart-scatter .swatch.glyph.sc-sui-chart-scatter .mk.sc-sui-chart-scatter{left:7px;top:1px;width:8px;height:8px;border-width:2px}.sui-chart-key.sc-sui-chart-scatter .swatch.glyph.sc-sui-chart-scatter .mk.tri.sc-sui-chart-scatter,.sui-chart-key.sc-sui-chart-scatter .swatch.glyph.sc-sui-chart-scatter .mk.tri-down.sc-sui-chart-scatter{left:6.5px;top:0.5px;width:9px;height:9px}.sui-chart-key.off.sc-sui-chart-scatter .swatch.sc-sui-chart-scatter{opacity:0.35}.sui-chart-caption.sc-sui-chart-scatter{font-size:11px;color:var(--ink-faint);margin-top:8px;border-top:1px solid var(--hairline);padding-top:7px}.sui-chart-tip.sc-sui-chart-scatter{position:absolute;width:max-content;min-width:110px;max-width:240px;pointer-events:none;z-index:5;box-sizing:border-box;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);padding:8px 10px}.sui-chart-tip-title.sc-sui-chart-scatter{font-size:10.5px;font-weight:700;color:var(--ink-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:0.05em;text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-scatter{display:flex;align-items:center;gap:6px;font-size:11.5px;padding:1.5px 0}.sui-chart-tip-row.sc-sui-chart-scatter .swatch.sc-sui-chart-scatter{width:8px;height:8px;border-radius:2px;flex-shrink:0}.sui-chart-tip-row.sc-sui-chart-scatter .lbl.sc-sui-chart-scatter{flex:1;min-width:0;color:var(--ink-muted);text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-scatter b.sc-sui-chart-scatter{margin-inline-start:6px;white-space:nowrap;font-variant-numeric:tabular-nums;font-feature-settings:\'tnum\';font-weight:700}.sui-chart-tip.stack.sc-sui-chart-scatter .sui-chart-tip-row.sc-sui-chart-scatter{display:grid;grid-template-columns:minmax(min-content, 1fr);align-items:center;column-gap:6px;row-gap:0}.sui-chart-tip.stack.sc-sui-chart-scatter .sui-chart-tip-row.keyed.sc-sui-chart-scatter{grid-template-columns:auto minmax(min-content, 1fr)}.sui-chart-tip.stack.sc-sui-chart-scatter .sui-chart-tip-row.keyed.sc-sui-chart-scatter>b.sc-sui-chart-scatter{grid-column:2}.sui-chart-tip.stack.sc-sui-chart-scatter .sui-chart-tip-row.sc-sui-chart-scatter>b.sc-sui-chart-scatter{margin-inline-start:0}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter .halo.sc-sui-chart-scatter{paint-order:stroke;stroke:var(--surface);stroke-width:3px;stroke-linejoin:round}.sui-chart-keys.sc-sui-chart-scatter:focus{outline:none}.sui-chart-keys.sc-sui-chart-scatter:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;box-shadow:var(--focus-shadow);border-radius:4px}.sui-chart-keys.keyed.sc-sui-chart-scatter:focus-visible{outline:none;box-shadow:none}.sui-chart-ring.sc-sui-chart-scatter{pointer-events:none;fill:none}.sui-chart-ring-halo.sc-sui-chart-scatter{stroke:var(--focus-halo);stroke-width:6px}.sui-chart-ring-line.sc-sui-chart-scatter{stroke:var(--focus-ring);stroke-width:2px}.sui-chart-empty.sc-sui-chart-scatter{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 16px;text-align:center;font-size:12.5px;color:var(--ink-muted);pointer-events:none}.sui-chart-empty.sc-sui-chart-scatter span.sc-sui-chart-scatter{background:var(--surface);box-shadow:0 0 0 4px var(--surface);border-radius:4px}.sui-chart-wait.sc-sui-chart-scatter{box-sizing:border-box}.sui-chart-loading.sc-sui-chart-scatter{position:absolute;inset:8px 10px 22px 46px;border-radius:var(--radius-md);background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--brand-soft) 50%, var(--surface-sunken) 75%);background-size:300% 100%;animation:sb-shimmer 1.4s infinite linear}@media (prefers-reduced-motion: reduce){.sui-chart-loading.sc-sui-chart-scatter{animation-duration:3s}}.sui-chart-sr.sc-sui-chart-scatter{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.figure.sc-sui-chart-scatter,.prose.sc-sui-chart-scatter{direction:ltr;unicode-bidi:plaintext}svg.sc-sui-chart-scatter text.sc-sui-chart-scatter{unicode-bidi:plaintext}@media (forced-colors: active){.sui-chart-loading.sc-sui-chart-scatter{box-sizing:border-box;border:1px solid GrayText}.sui-chart-key.sc-sui-chart-scatter .swatch.sc-sui-chart-scatter,.sui-chart-tip-row.sc-sui-chart-scatter .swatch.sc-sui-chart-scatter{forced-color-adjust:none;box-sizing:border-box;border:1px solid CanvasText}.sui-chart-key.sc-sui-chart-scatter .swatch.glyph.sc-sui-chart-scatter,.sui-chart-tip-row.sc-sui-chart-scatter .swatch.glyph.sc-sui-chart-scatter{border:none}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter{forced-color-adjust:none}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter text.sc-sui-chart-scatter{fill:CanvasText !important}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter .halo.sc-sui-chart-scatter{stroke:Canvas}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter line.sc-sui-chart-scatter{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter line[stroke*="--hairline"].sc-sui-chart-scatter{stroke:GrayText;filter:none}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter line[stroke*="--chart-axis"].sc-sui-chart-scatter,.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter line[stroke*="--border-strong"].sc-sui-chart-scatter,.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter line[stroke*="--accent-deep"].sc-sui-chart-scatter{stroke:CanvasText;filter:none}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter circle.sc-sui-chart-scatter{stroke:CanvasText}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter rect.sc-sui-chart-scatter,.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter path.sc-sui-chart-scatter,.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter polyline.sc-sui-chart-scatter,.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter polygon.sc-sui-chart-scatter{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-keys.sc-sui-chart-scatter:focus-visible{outline-color:Highlight;box-shadow:none}svg.sc-sui-chart-scatter .sui-chart-ring.sc-sui-chart-scatter .sui-chart-ring-line.sc-sui-chart-scatter{stroke:Highlight;filter:none}svg.sc-sui-chart-scatter .sui-chart-ring.sc-sui-chart-scatter .sui-chart-ring-halo.sc-sui-chart-scatter{stroke:Canvas;filter:none}}'}},[518,"sui-chart-scatter",{heading:[1],subtitle:[1],caption:[1],series:[16],width:[2],height:[2],fixedSize:[516,"fixed-size"],xLabel:[1,"x-label"],yLabel:[1,"y-label"],formatX:[16],formatY:[16],every:[8],emptyMessage:[1,"empty-message"],loading:[516],hoverIndex:[1026,"hover-index"],hiddenSeries:[32],hasHeaderEnd:[32],boxW:[32],keyed:[32],hostName:[32],setFocus:[64]}]),A=q,J=function(){"undefined"!=typeof customElements&&["sui-chart-scatter"].forEach((t=>{"sui-chart-scatter"===t&&(customElements.get(i(t))||customElements.define(i(t),q))}))};export{A as SuiChartScatter,J as defineCustomElement}
|
|
1
|
+
import{p as t,H as s,c as r,h as a,a as c,t as i}from"./p-CeVlau-G.js";import{o as e,p as h,c as o,L as n,d as u,b as l,v as p,Z as d,N as x,s as g,x as f,t as v,T as b,l as m,m as y,E as w,k,Y as C,K as z,C as T,a4 as M,P as j,J as H}from"./p-BLK-elHV.js";import{h as E,w as L,c as N,p as S,t as B,a as O,s as V,b as F,i as G,k as K,K as W,P,m as Y}from"./p-CFn_q23Q.js";import{d as $}from"./p-BHB1Wprj.js";import{u as I}from"./p-U06fVoGD.js";import{i as X}from"./p-GAnFXayY.js";import{l as D,a as q}from"./p-BuyjS5bS.js";const A=t(class extends s{constructor(t){super(),!1!==t&&this.__registerHost(),this.suiHover=r(this,"suiHover",7)}get host(){return this}heading;subtitle;caption;series=[];width=440;height=210;fixedSize=!1;xLabel;yLabel;formatX;formatY;every="auto";emptyMessage;loading=!1;hoverIndex=-1;suiHover;hiddenSeries=[];hasHeaderEnd=!1;boxW=0;keyed=!1;plotEl;keysId=I("sui-chart-keys");hostName={};stopHostName;scale=1;stopResize;componentWillLoad(){this.hasHeaderEnd=E(this.host,"header-end")}connectedCallback(){$(this.host,(()=>this.plotEl)),this.stopHostName?.(),this.stopHostName=L(this.host,(t=>{this.hostName=t})),this.stopResize||(this.stopResize=e(this.host,(t=>{this.boxW=t})))}disconnectedCallback(){this.stopHostName?.(),this.stopHostName=void 0,this.stopResize?.(),this.stopResize=void 0}async setFocus(){this.plotEl&&this.plotEl.hasAttribute("tabindex")&&this.plotEl.focus()}get plotW(){return h(!this.fixedSize,this.boxW,this.width)}keyOrder(){const t=[];(this.series||[]).forEach(((s,r)=>{this.hiddenSeries.includes(s.label)||t.push(r)}));const s=t.map((t=>{const s=this.series[t].points||[];return s.map(((t,s)=>s)).sort(((t,r)=>s[t].x-s[r].x||s[t].y-s[r].y))}));return{drawn:t,order:s}}onKey=t=>{if(this.empty)return;const{drawn:s,order:r}=this.keyOrder(),a=(t,a)=>this.series[s[t]].points[r[t][a]],c={rows:s.length,count:t=>r[t].length,near:(t,s)=>{const c=a(t.s,t.i);let i=0;return r[s].forEach(((t,r)=>{const e=a(s,r),h=a(s,i);(Math.abs(e.x-c.x)<Math.abs(h.x-c.x)||Math.abs(e.x-c.x)===Math.abs(h.x-c.x)&&Math.abs(e.y-c.y)<Math.abs(h.y-c.y))&&(i=r)})),i}},i=this.locate(this.hoverIndex),e=i?s.indexOf(i.s):-1,h=N(t,c,e>=0?{s:e,i:r[e].indexOf(i.p)}:null,this.keyed);if(h){if(t.preventDefault(),"leave"===h)return t.stopPropagation(),this.keyed=!1,void this.setHover(-1);this.scale=S(this.plotEl,this.plotW,this.scale),this.keyed=!0,this.setHover(this.flat(s[h.s],r[h.s][h.i]))}};onBlur=()=>{this.keyed&&(this.keyed=!1,this.setHover(-1))};get empty(){const t=this.series||[];return 0===t.length||t.every((t=>!(t.points||[]).length))}locate(t){if(t<0)return null;let s=0;for(let r=0;r<this.series.length;r++){const a=this.series[r].points.length;if(t<s+a)return{s:r,p:t-s};s+=a}return null}flat(t,s){let r=0;for(let s=0;s<t;s++)r+=this.series[s].points.length;return r+s}setHover(t){if(t===this.hoverIndex)return;this.hoverIndex=t;const s=this.locate(t);this.suiHover.emit(s?{index:t,series:s.s,point:s.p}:{index:-1,series:-1,point:-1})}onOver=t=>{const s=t.target;if(!s||"circle"!==s.tagName)return;const r=t.currentTarget.getBoundingClientRect();r.width>0&&(this.scale=r.width/this.plotW),this.keyed=!1,this.setHover(this.flat(Number(s.getAttribute("data-s")),Number(s.getAttribute("data-p"))))};onOut=t=>{const s=t.target;if(!s||"circle"!==s.tagName||this.hoverIndex<0)return;const r=t.relatedTarget;r&&"circle"===r.tagName&&this.host.contains(r)||this.setHover(-1)};onLeave=()=>this.setHover(-1);toggle=t=>{this.hiddenSeries=B(this.hiddenSeries,t);const s=this.locate(this.hoverIndex);s&&this.series[s.s]&&this.hiddenSeries.includes(this.series[s.s].label)&&this.setHover(-1)};chartName(t){const s=t.join(", "),r=this.xLabel,a=this.yLabel;let c;return c=r&&a?t.length?D(void 0,"chart-scatter.scatterOfPlotting",void 0,"scatter chart of {series}, plotting {y} against {x}",{series:s,x:r,y:a}):D(void 0,"chart-scatter.scatterPlotting",void 0,"scatter chart, plotting {y} against {x}",{x:r,y:a}):t.length?D(void 0,"chart-scatter.scatterOf",void 0,"scatter chart of {series}",{series:s}):q(void 0,"chart-scatter.scatter",void 0,"scatter chart"),O(this.heading,c)}render(){const{series:t,hiddenSeries:s}=this,r=this.plotW,i=this.height,e=X(this.host);if(this.loading)return a(c,{"aria-busy":"true"},a(o,{title:this.heading,subtitle:this.subtitle,caption:this.caption,w:this.fixedSize?r+n:void 0,hasHeaderEnd:this.hasHeaderEnd},a(u,{height:i,label:q(void 0,"chart-scatter.loading",void 0,"Loading"),rtl:e})));const h=this.empty,E=t.map((t=>!s.includes(t.label)));let L,N,S=0;for(let s=0;s<t.length;s++)if(S+=t[s].points.length,E[s])for(const r of t[s].points)L=L?[Math.min(L[0],r.x),Math.max(L[1],r.x)]:[r.x,r.x],N=N?[Math.min(N[0],r.y),Math.max(N[1],r.y)]:[r.y,r.y];L=L||Y([]),N=N||Y([]);const B=l(L[0],L[1],5),O=l(N[0],N[1],4),$=this.formatX||d,I=this.formatY||d,A=p(O.ticks.map(I)),[J,Q]=H(r,0,e,A),R=m(B.lo,B.hi,J,Q),U=m(O.lo,O.hi,i-j.b,j.t),Z=x(this.every,B.ticks.map($),r-A-j.r,!1),_=t.map(g),tt=h?null:this.locate(V(this.hoverIndex,S)),st=tt&&E[tt.s]?t[tt.s].points[tt.p]:void 0,rt=t.filter(((t,s)=>E[s])).map((t=>t.label)),at=[],ct=[],it=t.map(((t,s)=>s>=4&&!t.color&&!t.accent));for(let s=0;s<t.length;s++){if(!E[s])continue;const r=t[s].points;for(let t=0;t<r.length;t++){const c=r[t],i=!!st&&tt.s===s&&tt.p===t;at.push(a("circle",{key:s+"-"+t,class:"pt","data-s":s+"","data-p":t+"",cx:R(c.x),cy:U(c.y),r:c.r||4,fill:_[s],opacity:c.r?.55:.85,"fill-opacity":it[s]?.25:1,stroke:i?"var(--brand)":it[s]?_[s]:"var(--surface)","stroke-width":i||it[s]?2:1}));const e=(c.r||4)+1;i||ct.push([R(c.x)-e,U(c.y)-e,R(c.x)+e,U(c.y)+e,b,M])}}const et=this.scale,ht=st?(st.r||4)+2:0,ot=f(r,i,et,0,0,e,A),nt=B.ticks.filter(((t,s)=>s%Z==0)).map((t=>{const s=v($(t),9.5)/2;return[R(t)-s,i-13,R(t)+s,i-4,b]})),ut=st?y(ct.concat(w(O.ticks,U,I,r,e,!1,A),nt),et).concat(ot.avoid):[],lt=this.keyed&&st?`${this.keysId}-${this.hoverIndex}`:void 0,pt=lt&&st?F(st.name||t[tt.s].label,st.name&&rt.length>1?t[tt.s].label:void 0,D(void 0,"chart-scatter.coords",void 0,"{x} {xValue}, {y} {yValue}",{x:this.xLabel||"x",xValue:$(st.x),y:this.yLabel||"y",yValue:I(st.y)})):"";return a(c,null,a(o,{title:this.heading,subtitle:this.subtitle,caption:this.caption,w:this.fixedSize?r+n:void 0,hasHeaderEnd:this.hasHeaderEnd,legend:t.map(((t,s)=>({label:t.label,color:_[s],round:!0,mark:it[s]?"ring":void 0}))),hidden:s,onToggle:this.toggle},a("div",{class:"sui-chart-plot"},st?a(k,{show:!0,box:[(R(st.x)-ht)*et,(U(st.y)-ht)*et,(R(st.x)+ht)*et,(U(st.y)+ht)*et],w:r*et,ht:i*et,title:st.name||t[tt.s].label,rows:[{label:this.xLabel||"x",value:$(st.x)},{label:this.yLabel||"y",value:I(st.y)}],avoid:ut,area:ot.area,room:ot.room}):null,a("svg",{viewBox:`0 0 ${r} ${i}`,...h?G(this.chartName(rt),this.keysId,this.hostName):K(this.chartName(rt),this.keysId,this.hostName,lt),ref:t=>{this.plotEl=t},onKeyDown:this.onKey,onBlur:this.onBlur,onMouseOver:this.onOver,onMouseOut:this.onOut,onMouseLeave:this.onLeave},a(C,{ticks:O.ticks,y:U,w:r,rtl:e,gl:A,fmt:I,bare:h}),a(z,{w:r,rtl:e,gl:A,h:i}),h?null:B.ticks.map(((t,s)=>s%Z==0?a("text",{"aria-hidden":"true",key:t+"",x:R(t),y:i-6,"text-anchor":"middle",style:{font:"600 9.5px var(--font-sans)",fill:"var(--ink-faint)",fontFeatureSettings:"'tnum'"}},$(t)):null)),h?null:at,lt&&st?a(W,{id:lt,label:pt,circle:[R(st.x),U(st.y),(st.r||4)+4]}):null),a(P,{ids:this.keysId,summary:this.chartName(rt),host:this.hostName,hint:!h}),h?a(T,{text:q(void 0,"chart-scatter.empty",this.emptyMessage,"Nothing to plot yet.")}):null)))}static get style(){return'.sc-sui-chart-scatter-h{display:block}svg.sc-sui-chart-scatter{direction:ltr}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter text.sc-sui-chart-scatter{user-select:none}.sui-chart-plot.sc-sui-chart-scatter circle.pt.sc-sui-chart-scatter{cursor:pointer}.sc-sui-chart-scatter-h{display:block;font-family:var(--font-sans)}.sui-chart-frame.sc-sui-chart-scatter{position:relative;box-sizing:border-box;font-family:var(--font-sans);color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px}.sui-chart-frame.plain.sc-sui-chart-scatter{background:transparent;border:none;padding:0}.sui-chart-head.sc-sui-chart-scatter{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.sui-chart-titles.sc-sui-chart-scatter{flex:1;min-width:0}.sui-chart-title.sc-sui-chart-scatter{font-size:13.5px;font-weight:700}.sui-chart-subtitle.sc-sui-chart-scatter{font-size:11.5px;color:var(--ink-faint);margin-top:1px}.sui-chart-plot.sc-sui-chart-scatter{position:relative}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter{display:block;width:100%;height:auto;overflow:visible}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter line.sc-sui-chart-scatter{shape-rendering:crispEdges}.sui-chart-legend.sc-sui-chart-scatter{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px}.sui-chart-key.sc-sui-chart-scatter{display:inline-flex;align-items:center;gap:5px;border:none;background:transparent;padding:2px 4px;margin:0 -4px;font:600 11.5px var(--font-sans);color:var(--ink-muted);cursor:default}.sui-chart-key.toggle.sc-sui-chart-scatter{cursor:pointer}.sui-chart-key.toggle.sc-sui-chart-scatter:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-radius:4px}.sui-chart-key.off.sc-sui-chart-scatter{color:var(--ink-placeholder);text-decoration:line-through}.sui-chart-key.sc-sui-chart-scatter .swatch.sc-sui-chart-scatter{width:9px;height:9px;border-radius:2px;flex-shrink:0}.sui-chart-key.sc-sui-chart-scatter .swatch.round.sc-sui-chart-scatter{border-radius:50%}.sui-chart-key.sc-sui-chart-scatter .swatch.glyph.sc-sui-chart-scatter,.sui-chart-tip-row.sc-sui-chart-scatter .swatch.glyph.sc-sui-chart-scatter{position:relative;width:16px;height:10px;border-radius:0}.swatch.glyph.line.sc-sui-chart-scatter::before{content:\'\';position:absolute;left:1px;right:1px;top:4px;border-top:2px solid var(--c)}.swatch.glyph.ls-dot.sc-sui-chart-scatter::before{border-top-style:dotted}.swatch.glyph.ls-dash.sc-sui-chart-scatter::before{border-top-style:dashed}.swatch.glyph.sc-sui-chart-scatter .mk.sc-sui-chart-scatter{position:absolute;left:4.5px;top:1.5px;width:7px;height:7px;box-sizing:border-box;border:1.5px solid var(--c);background:var(--surface)}.swatch.glyph.sc-sui-chart-scatter .mk.dot.sc-sui-chart-scatter,.swatch.glyph.sc-sui-chart-scatter .mk.solid.sc-sui-chart-scatter,.swatch.glyph.sc-sui-chart-scatter .mk.ring.sc-sui-chart-scatter{border-radius:50%}.swatch.glyph.sc-sui-chart-scatter .mk.solid.sc-sui-chart-scatter{background:var(--c)}.swatch.glyph.sc-sui-chart-scatter .mk.ring.sc-sui-chart-scatter{background:color-mix(in srgb, var(--c) 25%, var(--surface))}.swatch.glyph.sc-sui-chart-scatter .mk.diamond.sc-sui-chart-scatter{transform:rotate(45deg) scale(0.85)}.swatch.glyph.sc-sui-chart-scatter .mk.tri.sc-sui-chart-scatter,.swatch.glyph.sc-sui-chart-scatter .mk.tri-down.sc-sui-chart-scatter{left:4px;top:1px;width:8px;height:8px;border:none}.swatch.glyph.sc-sui-chart-scatter .mk.tri.sc-sui-chart-scatter::after,.swatch.glyph.sc-sui-chart-scatter .mk.tri-down.sc-sui-chart-scatter::after{content:\'\';position:absolute;inset:0;background:var(--c);clip-path:polygon(50% 0, 100% 100%, 0 100%)}.swatch.glyph.sc-sui-chart-scatter .mk.tri-down.sc-sui-chart-scatter::after{clip-path:polygon(0 0, 100% 0, 50% 100%)}.sui-chart-key.sc-sui-chart-scatter .swatch.glyph.sc-sui-chart-scatter{width:22px}.sui-chart-key.sc-sui-chart-scatter .swatch.glyph.line.sc-sui-chart-scatter::before{top:3.5px;border-top-width:3px}.sui-chart-key.sc-sui-chart-scatter .swatch.glyph.sc-sui-chart-scatter .mk.sc-sui-chart-scatter{left:7px;top:1px;width:8px;height:8px;border-width:2px}.sui-chart-key.sc-sui-chart-scatter .swatch.glyph.sc-sui-chart-scatter .mk.tri.sc-sui-chart-scatter,.sui-chart-key.sc-sui-chart-scatter .swatch.glyph.sc-sui-chart-scatter .mk.tri-down.sc-sui-chart-scatter{left:6.5px;top:0.5px;width:9px;height:9px}.sui-chart-key.off.sc-sui-chart-scatter .swatch.sc-sui-chart-scatter{opacity:0.35}.sui-chart-caption.sc-sui-chart-scatter{font-size:11px;color:var(--ink-faint);margin-top:8px;border-top:1px solid var(--hairline);padding-top:7px}.sui-chart-tip.sc-sui-chart-scatter{position:absolute;width:max-content;min-width:110px;max-width:240px;pointer-events:none;z-index:5;box-sizing:border-box;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);padding:8px 10px}.sui-chart-tip-title.sc-sui-chart-scatter{font-size:10.5px;font-weight:700;color:var(--ink-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:0.05em;text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-scatter{display:flex;align-items:center;gap:6px;font-size:11.5px;padding:1.5px 0}.sui-chart-tip-row.sc-sui-chart-scatter .swatch.sc-sui-chart-scatter{width:8px;height:8px;border-radius:2px;flex-shrink:0}.sui-chart-tip-row.sc-sui-chart-scatter .lbl.sc-sui-chart-scatter{flex:1;min-width:0;color:var(--ink-muted);text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-scatter b.sc-sui-chart-scatter{margin-inline-start:6px;white-space:nowrap;font-variant-numeric:tabular-nums;font-feature-settings:\'tnum\';font-weight:700}.sui-chart-tip.stack.sc-sui-chart-scatter .sui-chart-tip-row.sc-sui-chart-scatter{display:grid;grid-template-columns:minmax(min-content, 1fr);align-items:center;column-gap:6px;row-gap:0}.sui-chart-tip.stack.sc-sui-chart-scatter .sui-chart-tip-row.keyed.sc-sui-chart-scatter{grid-template-columns:auto minmax(min-content, 1fr)}.sui-chart-tip.stack.sc-sui-chart-scatter .sui-chart-tip-row.keyed.sc-sui-chart-scatter>b.sc-sui-chart-scatter{grid-column:2}.sui-chart-tip.stack.sc-sui-chart-scatter .sui-chart-tip-row.sc-sui-chart-scatter>b.sc-sui-chart-scatter{margin-inline-start:0}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter .halo.sc-sui-chart-scatter{paint-order:stroke;stroke:var(--surface);stroke-width:3px;stroke-linejoin:round}.sui-chart-keys.sc-sui-chart-scatter:focus{outline:none}.sui-chart-keys.sc-sui-chart-scatter:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;box-shadow:var(--focus-shadow);border-radius:4px}.sui-chart-keys.keyed.sc-sui-chart-scatter:focus-visible{outline:none;box-shadow:none}.sui-chart-ring.sc-sui-chart-scatter{pointer-events:none;fill:none}.sui-chart-ring-halo.sc-sui-chart-scatter{stroke:var(--focus-halo);stroke-width:6px}.sui-chart-ring-line.sc-sui-chart-scatter{stroke:var(--focus-ring);stroke-width:2px}.sui-chart-empty.sc-sui-chart-scatter{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 16px;text-align:center;font-size:12.5px;color:var(--ink-muted);pointer-events:none}.sui-chart-empty.sc-sui-chart-scatter span.sc-sui-chart-scatter{background:var(--surface);box-shadow:0 0 0 4px var(--surface);border-radius:4px}.sui-chart-wait.sc-sui-chart-scatter{box-sizing:border-box}.sui-chart-loading.sc-sui-chart-scatter{position:absolute;inset:8px 10px 22px 46px;border-radius:var(--radius-md);background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--brand-soft) 50%, var(--surface-sunken) 75%);background-size:300% 100%;animation:sb-shimmer 1.4s infinite linear}@media (prefers-reduced-motion: reduce){.sui-chart-loading.sc-sui-chart-scatter{animation-duration:3s}}.sui-chart-sr.sc-sui-chart-scatter{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.figure.sc-sui-chart-scatter,.prose.sc-sui-chart-scatter{direction:ltr;unicode-bidi:plaintext}svg.sc-sui-chart-scatter text.sc-sui-chart-scatter{unicode-bidi:plaintext}@media (forced-colors: active){.sui-chart-loading.sc-sui-chart-scatter{box-sizing:border-box;border:1px solid GrayText}.sui-chart-key.sc-sui-chart-scatter .swatch.sc-sui-chart-scatter,.sui-chart-tip-row.sc-sui-chart-scatter .swatch.sc-sui-chart-scatter{forced-color-adjust:none;box-sizing:border-box;border:1px solid CanvasText}.sui-chart-key.sc-sui-chart-scatter .swatch.glyph.sc-sui-chart-scatter,.sui-chart-tip-row.sc-sui-chart-scatter .swatch.glyph.sc-sui-chart-scatter{border:none}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter{forced-color-adjust:none}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter text.sc-sui-chart-scatter{fill:CanvasText !important}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter .halo.sc-sui-chart-scatter{stroke:Canvas}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter line.sc-sui-chart-scatter{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter line[stroke*="--hairline"].sc-sui-chart-scatter{stroke:GrayText;filter:none}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter line[stroke*="--chart-axis"].sc-sui-chart-scatter,.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter line[stroke*="--border-strong"].sc-sui-chart-scatter,.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter line[stroke*="--accent-deep"].sc-sui-chart-scatter{stroke:CanvasText;filter:none}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter circle.sc-sui-chart-scatter{stroke:CanvasText}.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter rect.sc-sui-chart-scatter,.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter path.sc-sui-chart-scatter,.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter polyline.sc-sui-chart-scatter,.sui-chart-plot.sc-sui-chart-scatter svg.sc-sui-chart-scatter polygon.sc-sui-chart-scatter{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-keys.sc-sui-chart-scatter:focus-visible{outline-color:Highlight;box-shadow:none}svg.sc-sui-chart-scatter .sui-chart-ring.sc-sui-chart-scatter .sui-chart-ring-line.sc-sui-chart-scatter{stroke:Highlight;filter:none}svg.sc-sui-chart-scatter .sui-chart-ring.sc-sui-chart-scatter .sui-chart-ring-halo.sc-sui-chart-scatter{stroke:Canvas;filter:none}}'}},[518,"sui-chart-scatter",{heading:[1],subtitle:[1],caption:[1],series:[16],width:[2],height:[2],fixedSize:[516,"fixed-size"],xLabel:[1,"x-label"],yLabel:[1,"y-label"],formatX:[16],formatY:[16],every:[8],emptyMessage:[1,"empty-message"],loading:[516],hoverIndex:[1026,"hover-index"],hiddenSeries:[32],hasHeaderEnd:[32],boxW:[32],keyed:[32],hostName:[32],setFocus:[64]}]),J=A,Q=function(){"undefined"!=typeof customElements&&["sui-chart-scatter"].forEach((t=>{"sui-chart-scatter"===t&&(customElements.get(i(t))||customElements.define(i(t),A))}))};export{J as SuiChartScatter,Q as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as t,H as s,c as e,h as i,a as r,t as n}from"./p-CeVlau-G.js";const o=["SUI-CHART-LINE","SUI-CHART-BAR","SUI-CHART-CANDLESTICK","SUI-CHART-COMBO","SUI-CHART-WATERFALL","SUI-CHART-SCATTER","SUI-CHART-RADAR","SUI-CHART-HEATMAP","SUI-CHART-TREEMAP","SUI-CHART-PIE"],
|
|
1
|
+
import{p as t,H as s,c as e,h as i,a as r,t as n}from"./p-CeVlau-G.js";const o=["SUI-CHART-LINE","SUI-CHART-BAR","SUI-CHART-CANDLESTICK","SUI-CHART-COMBO","SUI-CHART-WATERFALL","SUI-CHART-SCATTER","SUI-CHART-RADAR","SUI-CHART-HEATMAP","SUI-CHART-TREEMAP","SUI-CHART-PIE"],c=o.join(",").toLowerCase(),h=t=>1===t.nodeType&&(o.includes(t.tagName)||!!t.querySelector?.(c)),a=t(class extends s{constructor(t){super(),!1!==t&&this.__registerHost(),this.suiHover=e(this,"suiHover",7)}get host(){return this}hoverIndex=-1;suiHover;wired=new Set;stopObserving;connectedCallback(){this.wirePanels(),this.stopObserving=this.observePanels()}disconnectedCallback(){this.stopObserving?.(),this.stopObserving=void 0;for(const t of this.wired)t.removeEventListener("suiHover",this.onPanelHover);this.wired.clear()}componentDidLoad(){this.wirePanels(),-1!==this.hoverIndex&&this.broadcast(this.hoverIndex)}ownPanels(){return Array.from(this.host.querySelectorAll(c)).filter((t=>t.closest("sui-chart-synced")===this.host))}wirePanels(){const t=new Set(this.ownPanels());for(const s of this.wired)t.has(s)||(s.removeEventListener("suiHover",this.onPanelHover),this.wired.delete(s));for(const s of t)this.wired.has(s)||(s.addEventListener("suiHover",this.onPanelHover),this.wired.add(s))}observePanels(){if("undefined"==typeof MutationObserver)return;const t=t=>Array.from(t.addedNodes).some(h)||Array.from(t.removedNodes).some(h),s=new MutationObserver((s=>{s&&s.length>0&&!s.some(t)||(this.wirePanels(),-1!==this.hoverIndex&&this.broadcast(this.hoverIndex))}));return s.observe(this.host,{childList:!0,subtree:!0}),()=>s.disconnect()}onPanelHover=t=>{if(t.target!==t.currentTarget)return;t.stopPropagation();const s=t.detail,e=s?s.index:-1;e!==this.hoverIndex&&(this.hoverIndex=e,this.suiHover.emit({index:e}))};broadcast(t){for(const s of this.ownPanels())s.hoverIndex!==t&&(s.hoverIndex=t)}render(){return i(r,{key:"63d4e0f0f0b1fa508239af4f2112ef163ea8c1ca"},i("slot",{key:"059fb791c647c4b64b9208df860694f9589c8bfe"}))}static get watchers(){return{hoverIndex:[{broadcast:0}]}}static get style(){return".sc-sui-chart-synced-h{display:flex;flex-direction:column;gap:14px;font-family:var(--font-sans)}"}},[774,"sui-chart-synced",{hoverIndex:[1026,"hover-index"]},void 0,{hoverIndex:[{broadcast:0}]}]),d=a,f=function(){"undefined"!=typeof customElements&&["sui-chart-synced"].forEach((t=>{"sui-chart-synced"===t&&(customElements.get(n(t))||customElements.define(n(t),a))}))};export{d as SuiChartSynced,f as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as t,H as s,c as e,h as r,a as i,t as a}from"./p-CeVlau-G.js";import{o as c,p as h,f as o,c as p,L as u,d as n,C as l,t as m,e as d,S as x,T as v,a3 as g,$ as f,k as b}from"./p-Bv5xqCDb.js";import{h as w,p as k}from"./p-DbF8ArKE.js";import{w as y,r as z,l as C,m as T}from"./p-mdFjb4l0.js";import{w as j,c as H,p as E,a as M,k as S,s as W,K as $,g as D,r as B,P as L}from"./p-DtI1DFsR.js";import{a as F}from"./p-BuyjS5bS.js";import{d as G}from"./p-BHB1Wprj.js";import{u as I}from"./p-U06fVoGD.js";import{d as K}from"./p-COO9uV7W.js";const N=["var(--viz-1)","color-mix(in oklab, var(--viz-1) 55%, var(--viz-3))","var(--viz-2)","var(--viz-3)","color-mix(in oklab, var(--viz-3) 45%, var(--viz-4))","var(--viz-4)"],V=[["--viz-1","--viz-1",1],["--viz-1","--viz-3",.55],["--viz-2","--viz-2",1],["--viz-3","--viz-3",1],["--viz-3","--viz-4",.45],["--viz-4","--viz-4",1]],R=["--viz-1","--viz-2","--viz-3","--viz-4","--accent","--ink","--ink-on-dark","--surface"],O=t(class extends s{constructor(t){super(),!1!==t&&this.__registerHost(),this.suiHover=e(this,"suiHover",7)}get host(){return this}heading;subtitle;caption;items=[];width=460;height=220;fixedSize=!1;money=!1;currency="USD";emptyMessage;loading=!1;hoverIndex=-1;suiHover;keyed=!1;keysId=I("sui-chart-keys");hostName={};stopHostName;tiles=[];total=0;boxW=0;themeTick=0;hasHeaderEnd=!1;inks=null;stopTheme;svg;scale=1;stopResize;loaded=!1;componentWillLoad(){this.hasHeaderEnd=w(this.host,"header-end"),this.compute()}connectedCallback(){G(this.host,(()=>this.svg)),this.stopHostName?.(),this.stopHostName=j(this.host,(t=>{this.hostName=t})),this.stopResize||(this.stopResize=c(this.host,(t=>{this.boxW=t}))),this.loaded&&this.followTheme(!0)}componentDidLoad(){this.loaded=!0,this.followTheme()}followTheme(t=!1){this.stopTheme?.(),this.stopTheme=y(this.host,(()=>{this.themeTick++})),t&&Promise.resolve().then((()=>{this.host.isConnected&&this.themeTick++}))}componentWillRender(){this.inks=z(this.host,R)}disconnectedCallback(){this.stopHostName?.(),this.stopHostName=void 0,this.stopResize?.(),this.stopResize=void 0,this.stopTheme?.(),this.stopTheme=void 0}get plotW(){return h(!this.fixedSize,this.boxW,this.width)}async setFocus(){this.svg&&this.svg.hasAttribute("tabindex")&&this.svg.focus()}onKey=t=>{if(this.empty)return;const s=this.tiles,e=s.findIndex((t=>t.idx===this.hoverIndex)),r=H(t,{rows:1,count:()=>s.length,flat:!0},e>=0?{s:0,i:e}:null,this.keyed);if(r){if(t.preventDefault(),"leave"===r)return t.stopPropagation(),this.keyed=!1,void this.setHover(-1);this.scale=E(this.svg,this.plotW,this.scale),this.keyed=!0,this.setHover(s[r.i].idx)}};onBlur=()=>{this.keyed&&(this.keyed=!1,this.setHover(-1))};compute(){const t=this.items||[];this.total=t.reduce(((t,s)=>t+s.value),0),this.tiles=function(t,s,e,r,i){const a=[];let c=t.map(((t,s)=>({it:t,idx:s}))).sort(((t,s)=>s.it.value-t.it.value));const h=c.reduce(((t,s)=>t+s.it.value),0)||1;let o=0,p=0,u=r,n=i,l=h;for(;c.length;){const t=u>=n,s=t?n:u;let e=[c[0]],r=c[0].it.value;const i=(t,e)=>{const r=u*n/l,i=e*r/s;let a=0;for(let s=0;s<t.length;s++){const e=t[s].it.value*r/i,c=Math.max(i/e,e/i);c>a&&(a=c)}return a};let h=1;for(;h<c.length;){const t=e.concat(c[h]);if(!(i(t,r+c[h].it.value)<=i(e,r)))break;e=t,r+=c[h].it.value,h++}const m=u*n/l,d=r*m/s;let x=0;e.forEach((s=>{const e=s.it.value*m/d;a.push(t?{it:s.it,idx:s.idx,x:o,y:p+x,w:d,h:e}:{it:s.it,idx:s.idx,x:o+x,y:p,w:e,h:d}),x+=e})),t?(o+=d,u-=d):(p+=d,n-=d),l-=r,c=c.slice(e.length)}return a}(t,0,0,this.plotW,this.height).map((t=>({...t,fill:t.it.color||(t.it.accent?"var(--accent)":N[Math.min(t.idx,N.length-1)]),light:t.idx>=3&&!t.it.accent||!!t.it.accent,showText:t.h>34})))}get empty(){const t=this.items||[];return 0===t.length||t.every((t=>!t.value))}setHover(t){t!==this.hoverIndex&&(this.hoverIndex=t,this.suiHover.emit({index:t}))}enter=t=>{const s=this.svg?this.svg.getBoundingClientRect():{width:0};s.width>0&&(this.scale=s.width/this.plotW),this.keyed=!1,this.setHover(t)};onLeave=()=>this.setHover(-1);fmt=t=>this.money?K(t,!0,this.currency):o(t);exact=t=>this.money?K(t,!1,this.currency):o(t);render(){const t=this.plotW;if(this.loading)return r(i,{"aria-busy":"true"},r(p,{title:this.heading,subtitle:this.subtitle,caption:this.caption,w:this.fixedSize?t+u:void 0,hasHeaderEnd:this.hasHeaderEnd},r(n,{height:this.height,label:F(void 0,"chart-treemap.loading",void 0,"Loading")})));if(this.empty)return r(i,null,r(p,{title:this.heading,subtitle:this.subtitle,caption:this.caption,w:this.fixedSize?t+u:void 0,hasHeaderEnd:this.hasHeaderEnd},r("div",{class:"sui-chart-plot",style:{height:this.height+"px"}},r(l,{text:F(void 0,"chart-treemap.empty",this.emptyMessage,"Nothing to plot yet.")}))));const s=W(this.hoverIndex,(this.items||[]).length),e=s>=0?this.tiles.find((t=>t.idx===s)):void 0,a=M(this.heading,(this.items||[]).map((t=>`${t.label} ${this.exact(t.value)}`)).join(", ")),c=this.inks,h=this.scale,o=[],w=this.keyed&&e?`${this.keysId}-${s}`:void 0;return r(i,null,r(p,{title:this.heading,subtitle:this.subtitle,caption:this.caption,w:this.fixedSize?t+u:void 0,hasHeaderEnd:this.hasHeaderEnd},r("div",{class:"sui-tree-plot"},r("svg",{ref:t=>this.svg=t,width:"100%",viewBox:`0 0 ${t} ${this.height}`,...S(a,this.keysId,this.hostName,w),onKeyDown:this.onKey,onBlur:this.onBlur,onMouseLeave:this.onLeave},this.tiles.map((t=>{const e=t.w-18,i=t.showText&&e>=m("xxxxxxx",10.5)?d(t.it.label,e,10.5,Math.max(1,Math.floor((t.h-39)/13)+1)):[],a=this.fmt(t.it.value),p=`${a} · ${x(k(t.it.value,this.total))}`,u=t.showText?m(p,9.5)<=e?p:m(a,9.5)<=e?a:"":"",n=i.length>0||!!u,l=t.y+17+(i.length?13*i.length+1:0);t.idx!==s&&(i.forEach(((s,e)=>o.push([(t.x+8)*h,(t.y+9+13*e)*h,(t.x+10+m(s,10.5))*h,(t.y+20+13*e)*h,v]))),u&&o.push([(t.x+8)*h,(l-8)*h,(t.x+10+m(u,9.5))*h,(l+3)*h,v])),t.idx!==s&&o.push([t.x*h,t.y*h,(t.x+t.w)*h,(t.y+t.h)*h,g]);const b=V[Math.min(t.idx,V.length-1)],y=t.it.color&&c&&n?f(this.host,t.it.color):"",z=c&&n&&(y||!t.it.color)?C(y||(t.it.accent?c["--accent"]:T(c[b[0]],c[b[1]],b[2])),[c["--ink"],c["--ink-on-dark"],c["--surface"]]):void 0;return r("g",{key:t.it.label,class:{"sui-tree-tile":!0,dim:-1!==s&&s!==t.idx,hov:s===t.idx,light:t.light},onMouseEnter:()=>this.enter(t.idx)},r("rect",{x:t.x+1.5,y:t.y+1.5,width:t.w-3,height:t.h-3,rx:4,fill:t.fill,stroke:s!==t.idx||w?"var(--surface)":"var(--accent)","stroke-width":s!==t.idx||w?1:2}),i.map(((s,e)=>r("text",{"aria-hidden":"true",key:e+"",class:"sui-tree-label",x:t.x+9,y:t.y+17+13*e,style:z?{fill:z.ink}:void 0},s))),u?r("text",{"aria-hidden":"true",class:"sui-tree-sub",x:t.x+9,y:l,style:z?{fill:z.ink,opacity:z.sub+""}:void 0},u):null)})),w&&e?r($,{id:w,box:B([e.x,e.y,e.x+e.w,e.y+e.h],1),r:5,label:D(e.it.label,this.exact(e.it.value),x(k(e.it.value,this.total)))}):null),r(L,{ids:this.keysId,summary:a,host:this.hostName,hint:!0}),r(b,{show:!!e,box:e?[e.x*h,e.y*h,(e.x+e.w)*h,(e.y+e.h)*h]:[],w:t*h,ht:this.height*h,title:e?e.it.label:"",avoid:o,rows:e?[{label:F(void 0,"chart-treemap.value",void 0,"Value"),value:this.exact(e.it.value),color:e.fill},{label:F(void 0,"chart-treemap.share",void 0,"Share"),value:x(k(e.it.value,this.total))}]:[]}))))}static get watchers(){return{items:[{compute:0}],width:[{compute:0}],height:[{compute:0}],boxW:[{compute:0}],fixedSize:[{compute:0}]}}static get style(){return".sui-tree-plot.sc-sui-chart-treemap{position:relative}.sui-tree-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap{display:block;width:100%;height:auto;overflow:visible;direction:ltr}.sui-tree-tile.sc-sui-chart-treemap{cursor:default}.sui-tree-tile.sc-sui-chart-treemap rect.sc-sui-chart-treemap{transition:opacity var(--duration-fast) var(--ease-out), stroke var(--duration-fast) var(--ease-out)}.sui-tree-tile.dim.sc-sui-chart-treemap rect.sc-sui-chart-treemap{opacity:0.55}.sui-tree-label.sc-sui-chart-treemap{font:650 10.5px var(--font-sans);fill:var(--ink-on-dark);pointer-events:none}.sui-tree-sub.sc-sui-chart-treemap{font:600 9.5px var(--font-sans);fill:var(--ink-inverse-muted);font-feature-settings:'tnum';pointer-events:none}.sui-tree-tile.light.sc-sui-chart-treemap .sui-tree-label.sc-sui-chart-treemap{fill:var(--brand)}.sui-tree-tile.light.sc-sui-chart-treemap .sui-tree-sub.sc-sui-chart-treemap{fill:var(--ink-muted)}@media (forced-colors: active){.sui-tree-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap{forced-color-adjust:none}.sui-tree-tile.sc-sui-chart-treemap rect.sc-sui-chart-treemap{stroke:CanvasText}}.sc-sui-chart-treemap-h{display:block;font-family:var(--font-sans)}.sui-chart-frame.sc-sui-chart-treemap{position:relative;box-sizing:border-box;font-family:var(--font-sans);color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px}.sui-chart-frame.plain.sc-sui-chart-treemap{background:transparent;border:none;padding:0}.sui-chart-head.sc-sui-chart-treemap{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.sui-chart-titles.sc-sui-chart-treemap{flex:1;min-width:0}.sui-chart-title.sc-sui-chart-treemap{font-size:13.5px;font-weight:700}.sui-chart-subtitle.sc-sui-chart-treemap{font-size:11.5px;color:var(--ink-faint);margin-top:1px}.sui-chart-plot.sc-sui-chart-treemap{position:relative}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap{display:block;width:100%;height:auto;overflow:visible}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap line.sc-sui-chart-treemap{shape-rendering:crispEdges}.sui-chart-legend.sc-sui-chart-treemap{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px}.sui-chart-key.sc-sui-chart-treemap{display:inline-flex;align-items:center;gap:5px;border:none;background:transparent;padding:2px 4px;margin:0 -4px;font:600 11.5px var(--font-sans);color:var(--ink-muted);cursor:default}.sui-chart-key.toggle.sc-sui-chart-treemap{cursor:pointer}.sui-chart-key.toggle.sc-sui-chart-treemap:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-radius:4px}.sui-chart-key.off.sc-sui-chart-treemap{color:var(--ink-placeholder);text-decoration:line-through}.sui-chart-key.sc-sui-chart-treemap .swatch.sc-sui-chart-treemap{width:9px;height:9px;border-radius:2px;flex-shrink:0}.sui-chart-key.sc-sui-chart-treemap .swatch.round.sc-sui-chart-treemap{border-radius:50%}.sui-chart-key.sc-sui-chart-treemap .swatch.glyph.sc-sui-chart-treemap,.sui-chart-tip-row.sc-sui-chart-treemap .swatch.glyph.sc-sui-chart-treemap{position:relative;width:16px;height:10px;border-radius:0}.swatch.glyph.line.sc-sui-chart-treemap::before{content:'';position:absolute;left:1px;right:1px;top:4px;border-top:2px solid var(--c)}.swatch.glyph.ls-dot.sc-sui-chart-treemap::before{border-top-style:dotted}.swatch.glyph.ls-dash.sc-sui-chart-treemap::before{border-top-style:dashed}.swatch.glyph.sc-sui-chart-treemap .mk.sc-sui-chart-treemap{position:absolute;left:4.5px;top:1.5px;width:7px;height:7px;box-sizing:border-box;border:1.5px solid var(--c);background:var(--surface)}.swatch.glyph.sc-sui-chart-treemap .mk.dot.sc-sui-chart-treemap,.swatch.glyph.sc-sui-chart-treemap .mk.solid.sc-sui-chart-treemap,.swatch.glyph.sc-sui-chart-treemap .mk.ring.sc-sui-chart-treemap{border-radius:50%}.swatch.glyph.sc-sui-chart-treemap .mk.solid.sc-sui-chart-treemap{background:var(--c)}.swatch.glyph.sc-sui-chart-treemap .mk.ring.sc-sui-chart-treemap{background:color-mix(in srgb, var(--c) 25%, var(--surface))}.swatch.glyph.sc-sui-chart-treemap .mk.diamond.sc-sui-chart-treemap{transform:rotate(45deg) scale(0.85)}.swatch.glyph.sc-sui-chart-treemap .mk.tri.sc-sui-chart-treemap,.swatch.glyph.sc-sui-chart-treemap .mk.tri-down.sc-sui-chart-treemap{left:4px;top:1px;width:8px;height:8px;border:none}.swatch.glyph.sc-sui-chart-treemap .mk.tri.sc-sui-chart-treemap::after,.swatch.glyph.sc-sui-chart-treemap .mk.tri-down.sc-sui-chart-treemap::after{content:'';position:absolute;inset:0;background:var(--c);clip-path:polygon(50% 0, 100% 100%, 0 100%)}.swatch.glyph.sc-sui-chart-treemap .mk.tri-down.sc-sui-chart-treemap::after{clip-path:polygon(0 0, 100% 0, 50% 100%)}.sui-chart-key.sc-sui-chart-treemap .swatch.glyph.sc-sui-chart-treemap{width:22px}.sui-chart-key.sc-sui-chart-treemap .swatch.glyph.line.sc-sui-chart-treemap::before{top:3.5px;border-top-width:3px}.sui-chart-key.sc-sui-chart-treemap .swatch.glyph.sc-sui-chart-treemap .mk.sc-sui-chart-treemap{left:7px;top:1px;width:8px;height:8px;border-width:2px}.sui-chart-key.sc-sui-chart-treemap .swatch.glyph.sc-sui-chart-treemap .mk.tri.sc-sui-chart-treemap,.sui-chart-key.sc-sui-chart-treemap .swatch.glyph.sc-sui-chart-treemap .mk.tri-down.sc-sui-chart-treemap{left:6.5px;top:0.5px;width:9px;height:9px}.sui-chart-key.off.sc-sui-chart-treemap .swatch.sc-sui-chart-treemap{opacity:0.35}.sui-chart-caption.sc-sui-chart-treemap{font-size:11px;color:var(--ink-faint);margin-top:8px;border-top:1px solid var(--hairline);padding-top:7px}.sui-chart-tip.sc-sui-chart-treemap{position:absolute;width:max-content;min-width:110px;max-width:240px;pointer-events:none;z-index:5;box-sizing:border-box;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);padding:8px 10px}.sui-chart-tip-title.sc-sui-chart-treemap{font-size:10.5px;font-weight:700;color:var(--ink-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:0.05em;text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-treemap{display:flex;align-items:center;gap:6px;font-size:11.5px;padding:1.5px 0}.sui-chart-tip-row.sc-sui-chart-treemap .swatch.sc-sui-chart-treemap{width:8px;height:8px;border-radius:2px;flex-shrink:0}.sui-chart-tip-row.sc-sui-chart-treemap .lbl.sc-sui-chart-treemap{flex:1;min-width:0;color:var(--ink-muted);text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-treemap b.sc-sui-chart-treemap{margin-inline-start:6px;white-space:nowrap;font-variant-numeric:tabular-nums;font-feature-settings:'tnum';font-weight:700}.sui-chart-tip.stack.sc-sui-chart-treemap .sui-chart-tip-row.sc-sui-chart-treemap{display:grid;grid-template-columns:minmax(min-content, 1fr);align-items:center;column-gap:6px;row-gap:0}.sui-chart-tip.stack.sc-sui-chart-treemap .sui-chart-tip-row.keyed.sc-sui-chart-treemap{grid-template-columns:auto minmax(min-content, 1fr)}.sui-chart-tip.stack.sc-sui-chart-treemap .sui-chart-tip-row.keyed.sc-sui-chart-treemap>b.sc-sui-chart-treemap{grid-column:2}.sui-chart-tip.stack.sc-sui-chart-treemap .sui-chart-tip-row.sc-sui-chart-treemap>b.sc-sui-chart-treemap{margin-inline-start:0}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap .halo.sc-sui-chart-treemap{paint-order:stroke;stroke:var(--surface);stroke-width:3px;stroke-linejoin:round}.sui-chart-keys.sc-sui-chart-treemap:focus{outline:none}.sui-chart-keys.sc-sui-chart-treemap:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;box-shadow:var(--focus-shadow);border-radius:4px}.sui-chart-keys.keyed.sc-sui-chart-treemap:focus-visible{outline:none;box-shadow:none}.sui-chart-ring.sc-sui-chart-treemap{pointer-events:none;fill:none}.sui-chart-ring-halo.sc-sui-chart-treemap{stroke:var(--focus-halo);stroke-width:6px}.sui-chart-ring-line.sc-sui-chart-treemap{stroke:var(--focus-ring);stroke-width:2px}.sui-chart-empty.sc-sui-chart-treemap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 16px;text-align:center;font-size:12.5px;color:var(--ink-muted);pointer-events:none}.sui-chart-empty.sc-sui-chart-treemap span.sc-sui-chart-treemap{background:var(--surface);box-shadow:0 0 0 4px var(--surface);border-radius:4px}.sui-chart-wait.sc-sui-chart-treemap{box-sizing:border-box}.sui-chart-loading.sc-sui-chart-treemap{position:absolute;inset:8px 10px 22px 46px;border-radius:var(--radius-md);background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--brand-soft) 50%, var(--surface-sunken) 75%);background-size:300% 100%;animation:sb-shimmer 1.4s infinite linear}@media (prefers-reduced-motion: reduce){.sui-chart-loading.sc-sui-chart-treemap{animation-duration:3s}}.sui-chart-sr.sc-sui-chart-treemap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.figure.sc-sui-chart-treemap,.prose.sc-sui-chart-treemap{direction:ltr;unicode-bidi:plaintext}svg.sc-sui-chart-treemap text.sc-sui-chart-treemap{unicode-bidi:plaintext}@media (forced-colors: active){.sui-chart-loading.sc-sui-chart-treemap{box-sizing:border-box;border:1px solid GrayText}.sui-chart-key.sc-sui-chart-treemap .swatch.sc-sui-chart-treemap,.sui-chart-tip-row.sc-sui-chart-treemap .swatch.sc-sui-chart-treemap{forced-color-adjust:none;box-sizing:border-box;border:1px solid CanvasText}.sui-chart-key.sc-sui-chart-treemap .swatch.glyph.sc-sui-chart-treemap,.sui-chart-tip-row.sc-sui-chart-treemap .swatch.glyph.sc-sui-chart-treemap{border:none}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap{forced-color-adjust:none}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap text.sc-sui-chart-treemap{fill:CanvasText !important}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap .halo.sc-sui-chart-treemap{stroke:Canvas}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap line.sc-sui-chart-treemap{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap line[stroke*=\"--hairline\"].sc-sui-chart-treemap{stroke:GrayText;filter:none}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap line[stroke*=\"--chart-axis\"].sc-sui-chart-treemap,.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap line[stroke*=\"--border-strong\"].sc-sui-chart-treemap,.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap line[stroke*=\"--accent-deep\"].sc-sui-chart-treemap{stroke:CanvasText;filter:none}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap circle.sc-sui-chart-treemap{stroke:CanvasText}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap rect.sc-sui-chart-treemap,.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap path.sc-sui-chart-treemap,.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap polyline.sc-sui-chart-treemap,.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap polygon.sc-sui-chart-treemap{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-keys.sc-sui-chart-treemap:focus-visible{outline-color:Highlight;box-shadow:none}svg.sc-sui-chart-treemap .sui-chart-ring.sc-sui-chart-treemap .sui-chart-ring-line.sc-sui-chart-treemap{stroke:Highlight;filter:none}svg.sc-sui-chart-treemap .sui-chart-ring.sc-sui-chart-treemap .sui-chart-ring-halo.sc-sui-chart-treemap{stroke:Canvas;filter:none}}"}},[518,"sui-chart-treemap",{heading:[1],subtitle:[1],caption:[1],items:[16],width:[2],height:[2],fixedSize:[516,"fixed-size"],money:[516],currency:[1],emptyMessage:[1,"empty-message"],loading:[516],hoverIndex:[1026,"hover-index"],keyed:[32],hostName:[32],tiles:[32],total:[32],boxW:[32],themeTick:[32],setFocus:[64]},void 0,{items:[{compute:0}],width:[{compute:0}],height:[{compute:0}],boxW:[{compute:0}],fixedSize:[{compute:0}]}]),P=O,U=function(){"undefined"!=typeof customElements&&["sui-chart-treemap"].forEach((t=>{"sui-chart-treemap"===t&&(customElements.get(a(t))||customElements.define(a(t),O))}))};export{P as SuiChartTreemap,U as defineCustomElement}
|
|
1
|
+
import{p as t,H as s,c as e,h as r,a as i,t as a}from"./p-CeVlau-G.js";import{o as c,p as h,f as o,c as p,L as u,d as n,C as l,t as m,e as d,S as x,T as v,a3 as g,$ as f,k as b}from"./p-BLK-elHV.js";import{h as w,p as k}from"./p-DbF8ArKE.js";import{w as y,r as z,l as T,m as C}from"./p-DDyzuLfq.js";import{w as j,c as H,p as E,a as M,k as S,s as $,K as L,g as W,r as B,P as D}from"./p-CFn_q23Q.js";import{a as K}from"./p-BuyjS5bS.js";import{d as F}from"./p-BHB1Wprj.js";import{u as G}from"./p-U06fVoGD.js";import{d as N}from"./p-qut9RP2y.js";const V=["var(--viz-1)","color-mix(in oklab, var(--viz-1) 55%, var(--viz-3))","var(--viz-2)","var(--viz-3)","color-mix(in oklab, var(--viz-3) 45%, var(--viz-4))","var(--viz-4)"],q=[["--viz-1","--viz-1",1],["--viz-1","--viz-3",.55],["--viz-2","--viz-2",1],["--viz-3","--viz-3",1],["--viz-3","--viz-4",.45],["--viz-4","--viz-4",1]],I=["--viz-1","--viz-2","--viz-3","--viz-4","--accent","--ink","--ink-on-dark","--surface"],P=t(class extends s{constructor(t){super(),!1!==t&&this.__registerHost(),this.suiHover=e(this,"suiHover",7)}get host(){return this}heading;subtitle;caption;items=[];width=460;height=220;fixedSize=!1;money=!1;currency="USD";emptyMessage;loading=!1;hoverIndex=-1;suiHover;keyed=!1;keysId=G("sui-chart-keys");hostName={};stopHostName;tiles=[];total=0;boxW=0;themeTick=0;hasHeaderEnd=!1;inks=null;stopTheme;svg;scale=1;stopResize;loaded=!1;componentWillLoad(){this.hasHeaderEnd=w(this.host,"header-end"),this.compute()}connectedCallback(){F(this.host,(()=>this.svg)),this.stopHostName?.(),this.stopHostName=j(this.host,(t=>{this.hostName=t})),this.stopResize||(this.stopResize=c(this.host,(t=>{this.boxW=t}))),this.loaded&&this.followTheme(!0)}componentDidLoad(){this.loaded=!0,this.followTheme()}followTheme(t=!1){this.stopTheme?.(),this.stopTheme=y(this.host,(()=>{this.themeTick++})),t&&Promise.resolve().then((()=>{this.host.isConnected&&this.themeTick++}))}componentWillRender(){this.inks=z(this.host,I)}disconnectedCallback(){this.stopHostName?.(),this.stopHostName=void 0,this.stopResize?.(),this.stopResize=void 0,this.stopTheme?.(),this.stopTheme=void 0}get plotW(){return h(!this.fixedSize,this.boxW,this.width)}async setFocus(){this.svg&&this.svg.hasAttribute("tabindex")&&this.svg.focus()}onKey=t=>{if(this.empty)return;const s=this.tiles,e=s.findIndex((t=>t.idx===this.hoverIndex)),r=H(t,{rows:1,count:()=>s.length,flat:!0},e>=0?{s:0,i:e}:null,this.keyed);if(r){if(t.preventDefault(),"leave"===r)return t.stopPropagation(),this.keyed=!1,void this.setHover(-1);this.scale=E(this.svg,this.plotW,this.scale),this.keyed=!0,this.setHover(s[r.i].idx)}};onBlur=()=>{this.keyed&&(this.keyed=!1,this.setHover(-1))};compute(){const t=this.items||[];this.total=t.reduce(((t,s)=>t+s.value),0),this.tiles=function(t,s,e,r,i){const a=[];let c=t.map(((t,s)=>({it:t,idx:s}))).sort(((t,s)=>s.it.value-t.it.value));const h=c.reduce(((t,s)=>t+s.it.value),0)||1;let o=0,p=0,u=r,n=i,l=h;for(;c.length;){const t=u>=n,s=t?n:u;let e=[c[0]],r=c[0].it.value;const i=(t,e)=>{const r=u*n/l,i=e*r/s;let a=0;for(let s=0;s<t.length;s++){const e=t[s].it.value*r/i,c=Math.max(i/e,e/i);c>a&&(a=c)}return a};let h=1;for(;h<c.length;){const t=e.concat(c[h]);if(!(i(t,r+c[h].it.value)<=i(e,r)))break;e=t,r+=c[h].it.value,h++}const m=u*n/l,d=r*m/s;let x=0;e.forEach((s=>{const e=s.it.value*m/d;a.push(t?{it:s.it,idx:s.idx,x:o,y:p+x,w:d,h:e}:{it:s.it,idx:s.idx,x:o+x,y:p,w:e,h:d}),x+=e})),t?(o+=d,u-=d):(p+=d,n-=d),l-=r,c=c.slice(e.length)}return a}(t,0,0,this.plotW,this.height).map((t=>({...t,fill:t.it.color||(t.it.accent?"var(--accent)":V[Math.min(t.idx,V.length-1)]),light:t.idx>=3&&!t.it.accent||!!t.it.accent,showText:t.h>34})))}get empty(){const t=this.items||[];return 0===t.length||t.every((t=>!t.value))}setHover(t){t!==this.hoverIndex&&(this.hoverIndex=t,this.suiHover.emit({index:t}))}enter=t=>{const s=this.svg?this.svg.getBoundingClientRect():{width:0};s.width>0&&(this.scale=s.width/this.plotW),this.keyed=!1,this.setHover(t)};onLeave=()=>this.setHover(-1);fmt=t=>this.money?N(t,!0,this.currency):o(t);exact=t=>this.money?N(t,!1,this.currency):o(t);render(){const t=this.plotW;if(this.loading)return r(i,{"aria-busy":"true"},r(p,{title:this.heading,subtitle:this.subtitle,caption:this.caption,w:this.fixedSize?t+u:void 0,hasHeaderEnd:this.hasHeaderEnd},r(n,{height:this.height,label:K(void 0,"chart-treemap.loading",void 0,"Loading")})));if(this.empty)return r(i,null,r(p,{title:this.heading,subtitle:this.subtitle,caption:this.caption,w:this.fixedSize?t+u:void 0,hasHeaderEnd:this.hasHeaderEnd},r("div",{class:"sui-chart-plot",style:{height:this.height+"px"}},r(l,{text:K(void 0,"chart-treemap.empty",this.emptyMessage,"Nothing to plot yet.")}))));const s=$(this.hoverIndex,(this.items||[]).length),e=s>=0?this.tiles.find((t=>t.idx===s)):void 0,a=M(this.heading,(this.items||[]).map((t=>`${t.label} ${this.exact(t.value)}`)).join(", ")),c=this.inks,h=this.scale,o=[],w=this.keyed&&e?`${this.keysId}-${s}`:void 0;return r(i,null,r(p,{title:this.heading,subtitle:this.subtitle,caption:this.caption,w:this.fixedSize?t+u:void 0,hasHeaderEnd:this.hasHeaderEnd},r("div",{class:"sui-tree-plot"},r("svg",{ref:t=>this.svg=t,width:"100%",viewBox:`0 0 ${t} ${this.height}`,...S(a,this.keysId,this.hostName,w),onKeyDown:this.onKey,onBlur:this.onBlur,onMouseLeave:this.onLeave},this.tiles.map((t=>{const e=t.w-18,i=t.showText&&e>=m("xxxxxxx",10.5)?d(t.it.label,e,10.5,Math.max(1,Math.floor((t.h-39)/13)+1)):[],a=this.fmt(t.it.value),p=`${a} · ${x(k(t.it.value,this.total))}`,u=t.showText?m(p,9.5)<=e?p:m(a,9.5)<=e?a:"":"",n=i.length>0||!!u,l=t.y+17+(i.length?13*i.length+1:0);t.idx!==s&&(i.forEach(((s,e)=>o.push([(t.x+8)*h,(t.y+9+13*e)*h,(t.x+10+m(s,10.5))*h,(t.y+20+13*e)*h,v]))),u&&o.push([(t.x+8)*h,(l-8)*h,(t.x+10+m(u,9.5))*h,(l+3)*h,v])),t.idx!==s&&o.push([t.x*h,t.y*h,(t.x+t.w)*h,(t.y+t.h)*h,g]);const b=q[Math.min(t.idx,q.length-1)],y=t.it.color&&c&&n?f(this.host,t.it.color):"",z=c&&n&&(y||!t.it.color)?T(y||(t.it.accent?c["--accent"]:C(c[b[0]],c[b[1]],b[2])),[c["--ink"],c["--ink-on-dark"],c["--surface"]]):void 0;return r("g",{key:t.it.label,class:{"sui-tree-tile":!0,dim:-1!==s&&s!==t.idx,hov:s===t.idx,light:t.light},onMouseEnter:()=>this.enter(t.idx)},r("rect",{x:t.x+1.5,y:t.y+1.5,width:t.w-3,height:t.h-3,rx:4,fill:t.fill,stroke:s!==t.idx||w?"var(--surface)":"var(--accent)","stroke-width":s!==t.idx||w?1:2}),i.map(((s,e)=>r("text",{"aria-hidden":"true",key:e+"",class:"sui-tree-label",x:t.x+9,y:t.y+17+13*e,style:z?{fill:z.ink}:void 0},s))),u?r("text",{"aria-hidden":"true",class:"sui-tree-sub",x:t.x+9,y:l,style:z?{fill:z.ink,opacity:z.sub+""}:void 0},u):null)})),w&&e?r(L,{id:w,box:B([e.x,e.y,e.x+e.w,e.y+e.h],1),r:5,label:W(e.it.label,this.exact(e.it.value),x(k(e.it.value,this.total)))}):null),r(D,{ids:this.keysId,summary:a,host:this.hostName,hint:!0}),r(b,{show:!!e,box:e?[e.x*h,e.y*h,(e.x+e.w)*h,(e.y+e.h)*h]:[],w:t*h,ht:this.height*h,title:e?e.it.label:"",avoid:o,rows:e?[{label:K(void 0,"chart-treemap.value",void 0,"Value"),value:this.exact(e.it.value),color:e.fill},{label:K(void 0,"chart-treemap.share",void 0,"Share"),value:x(k(e.it.value,this.total))}]:[]}))))}static get watchers(){return{items:[{compute:0}],width:[{compute:0}],height:[{compute:0}],boxW:[{compute:0}],fixedSize:[{compute:0}]}}static get style(){return".sui-tree-plot.sc-sui-chart-treemap{position:relative}.sui-tree-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap{display:block;width:100%;height:auto;overflow:visible;direction:ltr}.sui-tree-tile.sc-sui-chart-treemap{cursor:default}.sui-tree-tile.sc-sui-chart-treemap rect.sc-sui-chart-treemap{transition:opacity var(--duration-fast) var(--ease-out), stroke var(--duration-fast) var(--ease-out)}.sui-tree-tile.dim.sc-sui-chart-treemap rect.sc-sui-chart-treemap{opacity:0.55}.sui-tree-label.sc-sui-chart-treemap{font:650 10.5px var(--font-sans);fill:var(--ink-on-dark);pointer-events:none}.sui-tree-sub.sc-sui-chart-treemap{font:600 9.5px var(--font-sans);fill:var(--ink-inverse-muted);font-feature-settings:'tnum';pointer-events:none}.sui-tree-tile.light.sc-sui-chart-treemap .sui-tree-label.sc-sui-chart-treemap{fill:var(--brand)}.sui-tree-tile.light.sc-sui-chart-treemap .sui-tree-sub.sc-sui-chart-treemap{fill:var(--ink-muted)}@media (forced-colors: active){.sui-tree-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap{forced-color-adjust:none}.sui-tree-tile.sc-sui-chart-treemap rect.sc-sui-chart-treemap{stroke:CanvasText}}.sc-sui-chart-treemap-h{display:block;font-family:var(--font-sans)}.sui-chart-frame.sc-sui-chart-treemap{position:relative;box-sizing:border-box;font-family:var(--font-sans);color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px}.sui-chart-frame.plain.sc-sui-chart-treemap{background:transparent;border:none;padding:0}.sui-chart-head.sc-sui-chart-treemap{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.sui-chart-titles.sc-sui-chart-treemap{flex:1;min-width:0}.sui-chart-title.sc-sui-chart-treemap{font-size:13.5px;font-weight:700}.sui-chart-subtitle.sc-sui-chart-treemap{font-size:11.5px;color:var(--ink-faint);margin-top:1px}.sui-chart-plot.sc-sui-chart-treemap{position:relative}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap{display:block;width:100%;height:auto;overflow:visible}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap line.sc-sui-chart-treemap{shape-rendering:crispEdges}.sui-chart-legend.sc-sui-chart-treemap{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px}.sui-chart-key.sc-sui-chart-treemap{display:inline-flex;align-items:center;gap:5px;border:none;background:transparent;padding:2px 4px;margin:0 -4px;font:600 11.5px var(--font-sans);color:var(--ink-muted);cursor:default}.sui-chart-key.toggle.sc-sui-chart-treemap{cursor:pointer}.sui-chart-key.toggle.sc-sui-chart-treemap:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-radius:4px}.sui-chart-key.off.sc-sui-chart-treemap{color:var(--ink-placeholder);text-decoration:line-through}.sui-chart-key.sc-sui-chart-treemap .swatch.sc-sui-chart-treemap{width:9px;height:9px;border-radius:2px;flex-shrink:0}.sui-chart-key.sc-sui-chart-treemap .swatch.round.sc-sui-chart-treemap{border-radius:50%}.sui-chart-key.sc-sui-chart-treemap .swatch.glyph.sc-sui-chart-treemap,.sui-chart-tip-row.sc-sui-chart-treemap .swatch.glyph.sc-sui-chart-treemap{position:relative;width:16px;height:10px;border-radius:0}.swatch.glyph.line.sc-sui-chart-treemap::before{content:'';position:absolute;left:1px;right:1px;top:4px;border-top:2px solid var(--c)}.swatch.glyph.ls-dot.sc-sui-chart-treemap::before{border-top-style:dotted}.swatch.glyph.ls-dash.sc-sui-chart-treemap::before{border-top-style:dashed}.swatch.glyph.sc-sui-chart-treemap .mk.sc-sui-chart-treemap{position:absolute;left:4.5px;top:1.5px;width:7px;height:7px;box-sizing:border-box;border:1.5px solid var(--c);background:var(--surface)}.swatch.glyph.sc-sui-chart-treemap .mk.dot.sc-sui-chart-treemap,.swatch.glyph.sc-sui-chart-treemap .mk.solid.sc-sui-chart-treemap,.swatch.glyph.sc-sui-chart-treemap .mk.ring.sc-sui-chart-treemap{border-radius:50%}.swatch.glyph.sc-sui-chart-treemap .mk.solid.sc-sui-chart-treemap{background:var(--c)}.swatch.glyph.sc-sui-chart-treemap .mk.ring.sc-sui-chart-treemap{background:color-mix(in srgb, var(--c) 25%, var(--surface))}.swatch.glyph.sc-sui-chart-treemap .mk.diamond.sc-sui-chart-treemap{transform:rotate(45deg) scale(0.85)}.swatch.glyph.sc-sui-chart-treemap .mk.tri.sc-sui-chart-treemap,.swatch.glyph.sc-sui-chart-treemap .mk.tri-down.sc-sui-chart-treemap{left:4px;top:1px;width:8px;height:8px;border:none}.swatch.glyph.sc-sui-chart-treemap .mk.tri.sc-sui-chart-treemap::after,.swatch.glyph.sc-sui-chart-treemap .mk.tri-down.sc-sui-chart-treemap::after{content:'';position:absolute;inset:0;background:var(--c);clip-path:polygon(50% 0, 100% 100%, 0 100%)}.swatch.glyph.sc-sui-chart-treemap .mk.tri-down.sc-sui-chart-treemap::after{clip-path:polygon(0 0, 100% 0, 50% 100%)}.sui-chart-key.sc-sui-chart-treemap .swatch.glyph.sc-sui-chart-treemap{width:22px}.sui-chart-key.sc-sui-chart-treemap .swatch.glyph.line.sc-sui-chart-treemap::before{top:3.5px;border-top-width:3px}.sui-chart-key.sc-sui-chart-treemap .swatch.glyph.sc-sui-chart-treemap .mk.sc-sui-chart-treemap{left:7px;top:1px;width:8px;height:8px;border-width:2px}.sui-chart-key.sc-sui-chart-treemap .swatch.glyph.sc-sui-chart-treemap .mk.tri.sc-sui-chart-treemap,.sui-chart-key.sc-sui-chart-treemap .swatch.glyph.sc-sui-chart-treemap .mk.tri-down.sc-sui-chart-treemap{left:6.5px;top:0.5px;width:9px;height:9px}.sui-chart-key.off.sc-sui-chart-treemap .swatch.sc-sui-chart-treemap{opacity:0.35}.sui-chart-caption.sc-sui-chart-treemap{font-size:11px;color:var(--ink-faint);margin-top:8px;border-top:1px solid var(--hairline);padding-top:7px}.sui-chart-tip.sc-sui-chart-treemap{position:absolute;width:max-content;min-width:110px;max-width:240px;pointer-events:none;z-index:5;box-sizing:border-box;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);padding:8px 10px}.sui-chart-tip-title.sc-sui-chart-treemap{font-size:10.5px;font-weight:700;color:var(--ink-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:0.05em;text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-treemap{display:flex;align-items:center;gap:6px;font-size:11.5px;padding:1.5px 0}.sui-chart-tip-row.sc-sui-chart-treemap .swatch.sc-sui-chart-treemap{width:8px;height:8px;border-radius:2px;flex-shrink:0}.sui-chart-tip-row.sc-sui-chart-treemap .lbl.sc-sui-chart-treemap{flex:1;min-width:0;color:var(--ink-muted);text-wrap:balance}.sui-chart-tip-row.sc-sui-chart-treemap b.sc-sui-chart-treemap{margin-inline-start:6px;white-space:nowrap;font-variant-numeric:tabular-nums;font-feature-settings:'tnum';font-weight:700}.sui-chart-tip.stack.sc-sui-chart-treemap .sui-chart-tip-row.sc-sui-chart-treemap{display:grid;grid-template-columns:minmax(min-content, 1fr);align-items:center;column-gap:6px;row-gap:0}.sui-chart-tip.stack.sc-sui-chart-treemap .sui-chart-tip-row.keyed.sc-sui-chart-treemap{grid-template-columns:auto minmax(min-content, 1fr)}.sui-chart-tip.stack.sc-sui-chart-treemap .sui-chart-tip-row.keyed.sc-sui-chart-treemap>b.sc-sui-chart-treemap{grid-column:2}.sui-chart-tip.stack.sc-sui-chart-treemap .sui-chart-tip-row.sc-sui-chart-treemap>b.sc-sui-chart-treemap{margin-inline-start:0}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap .halo.sc-sui-chart-treemap{paint-order:stroke;stroke:var(--surface);stroke-width:3px;stroke-linejoin:round}.sui-chart-keys.sc-sui-chart-treemap:focus{outline:none}.sui-chart-keys.sc-sui-chart-treemap:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;box-shadow:var(--focus-shadow);border-radius:4px}.sui-chart-keys.keyed.sc-sui-chart-treemap:focus-visible{outline:none;box-shadow:none}.sui-chart-ring.sc-sui-chart-treemap{pointer-events:none;fill:none}.sui-chart-ring-halo.sc-sui-chart-treemap{stroke:var(--focus-halo);stroke-width:6px}.sui-chart-ring-line.sc-sui-chart-treemap{stroke:var(--focus-ring);stroke-width:2px}.sui-chart-empty.sc-sui-chart-treemap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 16px;text-align:center;font-size:12.5px;color:var(--ink-muted);pointer-events:none}.sui-chart-empty.sc-sui-chart-treemap span.sc-sui-chart-treemap{background:var(--surface);box-shadow:0 0 0 4px var(--surface);border-radius:4px}.sui-chart-wait.sc-sui-chart-treemap{box-sizing:border-box}.sui-chart-loading.sc-sui-chart-treemap{position:absolute;inset:8px 10px 22px 46px;border-radius:var(--radius-md);background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--brand-soft) 50%, var(--surface-sunken) 75%);background-size:300% 100%;animation:sb-shimmer 1.4s infinite linear}@media (prefers-reduced-motion: reduce){.sui-chart-loading.sc-sui-chart-treemap{animation-duration:3s}}.sui-chart-sr.sc-sui-chart-treemap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.figure.sc-sui-chart-treemap,.prose.sc-sui-chart-treemap{direction:ltr;unicode-bidi:plaintext}svg.sc-sui-chart-treemap text.sc-sui-chart-treemap{unicode-bidi:plaintext}@media (forced-colors: active){.sui-chart-loading.sc-sui-chart-treemap{box-sizing:border-box;border:1px solid GrayText}.sui-chart-key.sc-sui-chart-treemap .swatch.sc-sui-chart-treemap,.sui-chart-tip-row.sc-sui-chart-treemap .swatch.sc-sui-chart-treemap{forced-color-adjust:none;box-sizing:border-box;border:1px solid CanvasText}.sui-chart-key.sc-sui-chart-treemap .swatch.glyph.sc-sui-chart-treemap,.sui-chart-tip-row.sc-sui-chart-treemap .swatch.glyph.sc-sui-chart-treemap{border:none}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap{forced-color-adjust:none}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap text.sc-sui-chart-treemap{fill:CanvasText !important}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap .halo.sc-sui-chart-treemap{stroke:Canvas}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap line.sc-sui-chart-treemap{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap line[stroke*=\"--hairline\"].sc-sui-chart-treemap{stroke:GrayText;filter:none}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap line[stroke*=\"--chart-axis\"].sc-sui-chart-treemap,.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap line[stroke*=\"--border-strong\"].sc-sui-chart-treemap,.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap line[stroke*=\"--accent-deep\"].sc-sui-chart-treemap{stroke:CanvasText;filter:none}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap circle.sc-sui-chart-treemap{stroke:CanvasText}.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap rect.sc-sui-chart-treemap,.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap path.sc-sui-chart-treemap,.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap polyline.sc-sui-chart-treemap,.sui-chart-plot.sc-sui-chart-treemap svg.sc-sui-chart-treemap polygon.sc-sui-chart-treemap{filter:drop-shadow(1px 0 0 CanvasText) drop-shadow(-1px 0 0 CanvasText) drop-shadow(0 1px 0 CanvasText) drop-shadow(0 -1px 0 CanvasText)}.sui-chart-keys.sc-sui-chart-treemap:focus-visible{outline-color:Highlight;box-shadow:none}svg.sc-sui-chart-treemap .sui-chart-ring.sc-sui-chart-treemap .sui-chart-ring-line.sc-sui-chart-treemap{stroke:Highlight;filter:none}svg.sc-sui-chart-treemap .sui-chart-ring.sc-sui-chart-treemap .sui-chart-ring-halo.sc-sui-chart-treemap{stroke:Canvas;filter:none}}"}},[518,"sui-chart-treemap",{heading:[1],subtitle:[1],caption:[1],items:[16],width:[2],height:[2],fixedSize:[516,"fixed-size"],money:[516],currency:[1],emptyMessage:[1,"empty-message"],loading:[516],hoverIndex:[1026,"hover-index"],keyed:[32],hostName:[32],tiles:[32],total:[32],boxW:[32],themeTick:[32],setFocus:[64]},void 0,{items:[{compute:0}],width:[{compute:0}],height:[{compute:0}],boxW:[{compute:0}],fixedSize:[{compute:0}]}]),R=P,U=function(){"undefined"!=typeof customElements&&["sui-chart-treemap"].forEach((t=>{"sui-chart-treemap"===t&&(customElements.get(a(t))||customElements.define(a(t),P))}))};export{R as SuiChartTreemap,U as defineCustomElement}
|