@nubisco/ui 5.10.0 → 5.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{Blueprint-DbehXPR2.cjs → Blueprint-CnXyZkSE.cjs} +1 -1
- package/dist/{Blueprint-ClU0eIiy.js → Blueprint-DzzoerbM.js} +2 -2
- package/dist/{BlueprintCard-VfWPpR6_.js → BlueprintCard-2Q1zYWcN.js} +1 -1
- package/dist/{BlueprintCard-MDfxqPyE.cjs → BlueprintCard-D3Rr5cKO.cjs} +1 -1
- package/dist/{NotificationCenter-Yhez667P.js → NotificationCenter-CaBgCv1t.js} +1 -1
- package/dist/{NotificationCenter-DCi4hoKm.cjs → NotificationCenter-alMJHf3D.cjs} +1 -1
- package/dist/{Slider-DvtYL2RF.cjs → Slider-BECfNKi_.cjs} +1 -1
- package/dist/{Slider-BpLiHe3x.js → Slider-CPQjPfG2.js} +1 -1
- package/dist/{Stepper-BK59bD3V.cjs → Stepper-BlRuqNKX.cjs} +1 -1
- package/dist/{Stepper-BJgUA5ry.js → Stepper-SLb_qc9m.js} +1 -1
- package/dist/{StepperStep-C3eo3pec.cjs → StepperStep-DoJ3MUEl.cjs} +1 -1
- package/dist/{StepperStep-CanGAyO8.js → StepperStep-DxQQgCrC.js} +1 -1
- package/dist/{Tree-Clpnh7Mh.js → Tree-C6rMUOja.js} +1 -1
- package/dist/{Tree-CMXvRX6y.cjs → Tree-CR_288A-.cjs} +1 -1
- package/dist/{TreeNode-BgNskPoV.js → TreeNode-CXaEp3-m.js} +1 -1
- package/dist/{TreeNode-PEdclX99.cjs → TreeNode-kgKGox1Y.cjs} +1 -1
- package/dist/Wireframe-Da6GH06Y.js +147 -0
- package/dist/Wireframe-tQvC-86g.cjs +1 -0
- package/dist/all.cjs +1 -1
- package/dist/all.mjs +69 -67
- package/dist/component-styles.json +3 -0
- package/dist/components/AiLabel.cjs +1 -1
- package/dist/components/AiLabel.mjs +1 -1
- package/dist/components/Blueprint.cjs +1 -1
- package/dist/components/Blueprint.mjs +1 -1
- package/dist/components/BlueprintBackground.cjs +1 -1
- package/dist/components/BlueprintBackground.mjs +1 -1
- package/dist/components/BlueprintCard.cjs +1 -1
- package/dist/components/BlueprintCard.mjs +1 -1
- package/dist/components/BlueprintControls.cjs +1 -1
- package/dist/components/BlueprintControls.mjs +1 -1
- package/dist/components/BlueprintMinimap.cjs +1 -1
- package/dist/components/BlueprintMinimap.mjs +1 -1
- package/dist/components/BottomPanel.cjs +1 -1
- package/dist/components/BottomPanel.mjs +1 -1
- package/dist/components/Charts/Sparkline.cjs +1 -1
- package/dist/components/Charts/Sparkline.mjs +1 -1
- package/dist/components/FileUploader.cjs +1 -1
- package/dist/components/FileUploader.mjs +1 -1
- package/dist/components/Form.cjs +1 -1
- package/dist/components/Form.mjs +1 -1
- package/dist/components/ImageCropper.cjs +1 -1
- package/dist/components/ImageCropper.mjs +1 -1
- package/dist/components/NotificationCenter.cjs +1 -1
- package/dist/components/NotificationCenter.mjs +1 -1
- package/dist/components/NotificationCenterItem.cjs +1 -1
- package/dist/components/NotificationCenterItem.mjs +1 -1
- package/dist/components/NumberInput.cjs +1 -1
- package/dist/components/NumberInput.mjs +1 -1
- package/dist/components/Radio.cjs +1 -1
- package/dist/components/Radio.mjs +1 -1
- package/dist/components/ShellPanel.cjs +1 -1
- package/dist/components/ShellPanel.mjs +1 -1
- package/dist/components/Slider.cjs +1 -1
- package/dist/components/Slider.mjs +1 -1
- package/dist/components/Stepper.cjs +1 -1
- package/dist/components/Stepper.mjs +1 -1
- package/dist/components/StepperStep.cjs +1 -1
- package/dist/components/StepperStep.mjs +1 -1
- package/dist/components/TableOfContents.cjs +1 -1
- package/dist/components/TableOfContents.mjs +1 -1
- package/dist/components/Tabs.cjs +1 -1
- package/dist/components/Tabs.mjs +1 -1
- package/dist/components/Tree.cjs +1 -1
- package/dist/components/Tree.mjs +1 -1
- package/dist/components/TreeNode.cjs +1 -1
- package/dist/components/TreeNode.mjs +1 -1
- package/dist/components/Walkthrough.cjs +1 -1
- package/dist/components/Walkthrough.mjs +1 -1
- package/dist/components/Wireframe.cjs +1 -0
- package/dist/components/Wireframe.d.ts +30 -0
- package/dist/components/Wireframe.mjs +2 -0
- package/dist/components/Wireframe.vue.d.ts +7 -0
- package/dist/components/Wireframe.vue.d.ts.map +1 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/manifest.d.ts +1 -0
- package/dist/components/manifest.d.ts.map +1 -1
- package/dist/components/manifest.js +1 -0
- package/dist/composables/useBlueprint.composable.cjs +1 -1
- package/dist/composables/useBlueprint.composable.mjs +1 -1
- package/dist/global.d.ts +2 -0
- package/dist/index.cjs +1 -1
- package/dist/index.mjs +39 -38
- package/dist/main.d.ts +2 -0
- package/dist/main.d.ts.map +1 -1
- package/dist/styles/Wireframe.css +1 -0
- package/dist/ui.css +1 -0
- package/package.json +1 -1
- package/src/styles/_reset.scss +10 -0
- /package/dist/{AiLabel-BciBQAKB.js → AiLabel-MZn446Uy.js} +0 -0
- /package/dist/{AiLabel-ClnMVvCl.cjs → AiLabel-i75MlwdE.cjs} +0 -0
- /package/dist/{Blueprint.context-CHfek6nW.js → Blueprint.context-C51gyX3c.js} +0 -0
- /package/dist/{Blueprint.context-C_y0TS6a.cjs → Blueprint.context-DQAE9pH9.cjs} +0 -0
- /package/dist/{BlueprintBackground-D58A6eXS.cjs → BlueprintBackground-CCuLvvq5.cjs} +0 -0
- /package/dist/{BlueprintBackground-SJ-ibrkF.js → BlueprintBackground-DJhMflIN.js} +0 -0
- /package/dist/{BlueprintControls-pnaU1lCY.js → BlueprintControls-9TePyiYN.js} +0 -0
- /package/dist/{BlueprintControls-BR12TLQ1.cjs → BlueprintControls-D0IN84WV.cjs} +0 -0
- /package/dist/{BlueprintMinimap-BPqaGiY0.cjs → BlueprintMinimap-C4hKP0wV.cjs} +0 -0
- /package/dist/{BlueprintMinimap-De8KVP54.js → BlueprintMinimap-CUNeYFVd.js} +0 -0
- /package/dist/{BottomPanel-C7VWbs0V.js → BottomPanel-BkD7euB4.js} +0 -0
- /package/dist/{BottomPanel-Di3pv797.cjs → BottomPanel-DvS5Q8c8.cjs} +0 -0
- /package/dist/{FileUploader-CN7XPX9n.cjs → FileUploader-BQuiNHeI.cjs} +0 -0
- /package/dist/{FileUploader-Ba0H8UPw.js → FileUploader-GhaVDiGG.js} +0 -0
- /package/dist/{Form-BPHdzd8_.js → Form-CJbbzvXt.js} +0 -0
- /package/dist/{Form-C-l_4RHC.cjs → Form-D50Okwsy.cjs} +0 -0
- /package/dist/{ImageCropper-DS3QiZ-X.js → ImageCropper-6wnJLNBr.js} +0 -0
- /package/dist/{ImageCropper-BbW7o5mE.cjs → ImageCropper-ZofGN_5r.cjs} +0 -0
- /package/dist/{NotificationCenterItem-BXj2X04e.cjs → NotificationCenterItem--dJsS8g2.cjs} +0 -0
- /package/dist/{NotificationCenterItem-DklUTQo7.js → NotificationCenterItem-CknMkJUp.js} +0 -0
- /package/dist/{NumberInput-uc5R3VrB.js → NumberInput-Bnd9zGie.js} +0 -0
- /package/dist/{NumberInput-BLaRojBI.cjs → NumberInput-qBJbdvfP.cjs} +0 -0
- /package/dist/{Radio-BaemfNbH.cjs → Radio-B2bhBVJ8.cjs} +0 -0
- /package/dist/{Radio-BpRlhuPp.js → Radio-BlBitwW3.js} +0 -0
- /package/dist/{ShellPanel-c3FBvVMm.cjs → ShellPanel-DzMmoG81.cjs} +0 -0
- /package/dist/{ShellPanel-B1byDSRC.js → ShellPanel-f75v2_V2.js} +0 -0
- /package/dist/{Sparkline-Bq-80US3.js → Sparkline-C__UzqcW.js} +0 -0
- /package/dist/{Sparkline-XWBYsAXl.cjs → Sparkline-hfnHBqr_.cjs} +0 -0
- /package/dist/{Stepper.context-9GpAWDvv.js → Stepper.context-DtdxFiTP.js} +0 -0
- /package/dist/{Stepper.context-CweJHiCo.cjs → Stepper.context-OTxRDrqb.cjs} +0 -0
- /package/dist/{TableOfContents-BD-79w4n.cjs → TableOfContents-C6btwKBE.cjs} +0 -0
- /package/dist/{TableOfContents-fTZdpn-L.js → TableOfContents-DCaf2uyd.js} +0 -0
- /package/dist/{Tabs-B4r8l7vl.cjs → Tabs-D-GFagsH.cjs} +0 -0
- /package/dist/{Tabs-Cs5i4IGp.js → Tabs-DNctPfS2.js} +0 -0
- /package/dist/{TreeContext-C77g-WGF.js → TreeContext-CN8Jmm3J.js} +0 -0
- /package/dist/{TreeContext-51-0WkVM.cjs → TreeContext-CRgX277A.cjs} +0 -0
- /package/dist/{Walkthrough-DuX31BAz.cjs → Walkthrough-BsPHPjJf.cjs} +0 -0
- /package/dist/{Walkthrough-B4E8LruL.js → Walkthrough-Vy7rtAmt.js} +0 -0
- /package/dist/{pixi-scene-BmwgRql_.cjs → pixi-scene-Be5EU7HP.cjs} +0 -0
- /package/dist/{pixi-scene-CeviVGrf.js → pixi-scene-CjZJN5UI.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./Blueprint.context-C_y0TS6a.cjs`);let n=require(`vue`);function r(e){let t=new Map;function n(n,r){let i=`${n}:${r}`,a=t.get(i);if(a&&a.isConnected)return a;a&&t.delete(i);let o=e();if(!o)return null;let s=o.querySelector(`[data-port="${n}:${r}"]`);return s&&t.set(i,s),s}function r(){for(let[e,n]of t)n.isConnected||t.delete(e)}function i(){t.clear()}function a(){return t.size}return{get:n,prune:r,clear:i,size:a}}function i(e){return e instanceof Element?e.parentElement?.classList.contains(`nb-blueprint__canvas`)??!1:!1}var a={class:`nb-blueprint__wires`},o=[`d`,`data-wire-index`,`onMousedown`,`onContextmenu`,`onMousemove`,`onMouseleave`],s=[`d`,`stroke`],c=[`d`,`stroke`],l=[`d`],u=(0,n.defineComponent)({__name:`BlueprintDomRenderer`,props:{panX:{},panY:{},zoom:{},isTransforming:{type:Boolean},wires:{},windowed:{type:Boolean},visibleCards:{},dragWire:{},shouldFlow:{type:Function},levelColoring:{type:Boolean},activityStyle:{},animateConnections:{},background:{},liveData:{}},emits:[`wire-mousedown`,`wire-contextmenu`,`wire-mousemove`,`wire-mouseleave`],setup(e,{emit:t}){let r=e,i=t,u=(0,n.computed)(()=>`translate(${r.panX}px, ${r.panY}px) scale(${r.zoom})`),d=(0,n.computed)(()=>r.isTransforming?`transform`:void 0),f=(0,n.computed)(()=>({transform:u.value,willChange:d.value})),p=(0,n.computed)(()=>({transform:u.value,transformOrigin:`0 0`,willChange:d.value}));return(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,null,[e.background===`none`?(0,n.createCommentVNode)(``,!0):((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:0,class:(0,n.normalizeClass)([`nb-blueprint__grid`,`nb-blueprint__grid--${e.background}`]),style:(0,n.normalizeStyle)(f.value)},null,6)),(0,n.createElementVNode)(`div`,{class:`nb-blueprint__canvas`,style:(0,n.normalizeStyle)(p.value)},[((0,n.openBlock)(),(0,n.createElementBlock)(`svg`,a,[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.wires,(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`g`,{key:t,class:`nb-blueprint__wire-group`},[(0,n.createElementVNode)(`path`,{d:e.path,fill:`none`,stroke:`transparent`,"stroke-width":`14`,class:`nb-blueprint__wire-hitregion`,"data-wire-index":t,onMousedown:t=>i(`wire-mousedown`,t,e.conn),onContextmenu:(0,n.withModifiers)(t=>i(`wire-contextmenu`,t,e.conn),[`prevent`]),onMousemove:t=>i(`wire-mousemove`,t,e.conn),onMouseleave:t=>i(`wire-mouseleave`,e.conn)},null,40,o),(0,n.createElementVNode)(`path`,{d:e.path,fill:`none`,stroke:e.color,"stroke-width":`1.5`,class:(0,n.normalizeClass)([`nb-blueprint__wire`,{"nb-blueprint__wire--inactive":e.conn.active===!1}]),"pointer-events":`none`},null,10,s)]))),128)),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.wires,(t,r)=>(0,n.withDirectives)(((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:`flow-${r}`,d:t.path,fill:`none`,stroke:t.color,"stroke-width":`1.5`,"stroke-dasharray":`4 8`,class:`nb-blueprint__wire-flow`,"pointer-events":`none`},null,8,c)),[[n.vShow,e.shouldFlow(t.conn)]])),128)),e.dragWire?((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:0,d:e.dragWire,fill:`none`,stroke:`var(--nb-c-primary)`,"stroke-width":`2`,"stroke-dasharray":`6 3`,opacity:`0.6`},null,8,l)):(0,n.createCommentVNode)(``,!0)])),e.windowed?((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,{key:0},(0,n.renderList)(e.visibleCards,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:e.id,class:`nb-blueprint__card-wrapper`,style:(0,n.normalizeStyle)({position:`absolute`,left:`${e.x}px`,top:`${e.y}px`})},[(0,n.renderSlot)(t.$slots,`card`,{card:e},void 0,!0)],4))),128)):(0,n.renderSlot)(t.$slots,`default`,{key:1},void 0,!0)],4)],64))}}),d=e.t(u,[[`__scopeId`,`data-v-31ed2748`]]),f={class:`nb-blueprint__wires`},p=[`d`,`stroke`],m=[`d`,`data-wire-index`,`onMousedown`,`onContextmenu`,`onMousemove`,`onMouseleave`],h=[`d`],g=(0,n.defineComponent)({__name:`BlueprintPixiRenderer`,props:{panX:{},panY:{},zoom:{},isTransforming:{type:Boolean},wires:{},windowed:{type:Boolean},visibleCards:{},dragWire:{},shouldFlow:{type:Function},levelColoring:{type:Boolean},activityStyle:{},animateConnections:{},background:{},liveData:{}},emits:[`wire-mousedown`,`wire-contextmenu`,`wire-mousemove`,`wire-mouseleave`,`unavailable`],setup(e,{emit:t}){let r=e,i=t,a=(0,n.ref)(),o=(0,n.ref)(),s=(0,n.ref)(!1),c=null,l,u=(0,n.computed)(()=>({transform:`translate(${r.panX}px, ${r.panY}px) scale(${r.zoom})`,transformOrigin:`0 0`,willChange:r.isTransforming?`transform`:`auto`}));function d(){let e=a.value?.parentElement;return{width:e?.clientWidth??0,height:e?.clientHeight??0}}async function g(){let e=a.value,t=o.value;if(!(!e||!t))try{let[n,{PixiScene:i}]=await Promise.all([import(`pixi.js`),Promise.resolve().then(()=>require(`./pixi-scene-BmwgRql_.cjs`))]),{width:o,height:l}=d(),u=await i.create(n,{canvas:e,el:t,width:o,height:l,resolution:window.devicePixelRatio||1,background:r.background,liveData:r.liveData});if(!a.value){u.destroy();return}c=u,_(),s.value=!0,v()}catch(e){i(`unavailable`,e)}}function _(){c&&(c.setCamera(r.panX,r.panY,r.zoom),c.setLevelColoring(r.levelColoring??!1),c.setActivityStyle(r.activityStyle??`flow`),c.setWires(r.wires,r.shouldFlow),c.setMeters(r.visibleCards))}function v(){let e=a.value?.parentElement;e&&(l=new ResizeObserver(()=>{if(!c)return;let{width:e,height:t}=d();c.resize(e,t,window.devicePixelRatio||1)}),l.observe(e))}return(0,n.watch)(()=>[r.panX,r.panY,r.zoom],([e,t,n])=>c?.setCamera(e,t,n)),(0,n.watch)(()=>r.wires,e=>c?.setWires(e,r.shouldFlow)),(0,n.watch)(()=>r.visibleCards,e=>c?.setMeters(e)),(0,n.watch)(()=>r.levelColoring,e=>c?.setLevelColoring(e??!1)),(0,n.watch)(()=>r.activityStyle,e=>c?.setActivityStyle(e??`flow`)),(0,n.watch)(()=>r.animateConnections,()=>c?.setWires(r.wires,r.shouldFlow)),(0,n.watch)(()=>r.background,e=>c?.setBackground(e)),(0,n.onMounted)(g),(0,n.onBeforeUnmount)(()=>{l?.disconnect(),c?.destroy(),c=null}),(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,null,[(0,n.createElementVNode)(`canvas`,{ref_key:`canvasRef`,ref:a,class:`nb-blueprint-pixi__canvas`},null,512),(0,n.createElementVNode)(`div`,{ref_key:`overlayRef`,ref:o,class:`nb-blueprint__canvas nb-blueprint-pixi__overlay`,style:(0,n.normalizeStyle)(u.value)},[((0,n.openBlock)(),(0,n.createElementBlock)(`svg`,f,[s.value?(0,n.createCommentVNode)(``,!0):((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,{key:0},(0,n.renderList)(e.wires,(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:`w-${t}`,d:e.path,fill:`none`,stroke:e.color,"stroke-width":`1.5`,class:(0,n.normalizeClass)([`nb-blueprint__wire`,{"nb-blueprint__wire--inactive":e.conn.active===!1}]),"pointer-events":`none`},null,10,p))),128)),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.wires,(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:`h-${t}`,d:e.path,fill:`none`,stroke:`transparent`,"stroke-width":`14`,class:`nb-blueprint__wire-hitregion`,"data-wire-index":t,onMousedown:t=>i(`wire-mousedown`,t,e.conn),onContextmenu:(0,n.withModifiers)(t=>i(`wire-contextmenu`,t,e.conn),[`prevent`]),onMousemove:t=>i(`wire-mousemove`,t,e.conn),onMouseleave:t=>i(`wire-mouseleave`,e.conn)},null,40,m))),128)),e.dragWire?((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:1,d:e.dragWire,fill:`none`,stroke:`var(--nb-c-primary)`,"stroke-width":`2`,"stroke-dasharray":`6 3`,opacity:`0.6`},null,8,h)):(0,n.createCommentVNode)(``,!0)])),e.windowed?((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,{key:0},(0,n.renderList)(e.visibleCards,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:e.id,class:`nb-blueprint__card-wrapper`,style:(0,n.normalizeStyle)({position:`absolute`,left:`${e.x}px`,top:`${e.y}px`})},[(0,n.renderSlot)(t.$slots,`card`,{card:e},void 0,!0)],4))),128)):(0,n.renderSlot)(t.$slots,`default`,{key:1},void 0,!0)],4)],64))}}),_=e.t(g,[[`__scopeId`,`data-v-6fdf251d`]]),v=class{values=new Map;epoch=0;onChange=void 0;set(e,t){this.values.set(e,t),this.epoch++,this.onChange?.()}setMany(e){for(let t in e)this.values.set(t,e[t]);this.epoch++,this.onChange?.()}replace(e){this.values.clear(),this.setMany(e)}get(e){return this.values.get(e)??0}clear(){this.values.size!==0&&(this.values.clear(),this.epoch++,this.onChange?.())}get size(){return this.values.size}get version(){return this.epoch}};function y(e,t,n={}){let r=n.originX??80,i=n.originY??80,a=n.colGap??420,o=n.rowGap??48,s=n.bandGap??90,c=n.defaultW??220,l=n.defaultH??140,u=new Map;if(!e.length)return u;let d=new Map(e.map(e=>[e.id,e])),f=e=>Math.max(c,d.get(e)?.w||c),p=e=>Math.max(l,d.get(e)?.h||l),m=new Map,h=new Map;for(let t of e)m.set(t.id,new Set),h.set(t.id,new Set);let g=[];for(let e of t)if(!(!d.has(e.from)||!d.has(e.to))&&e.kind!==`ignore`){if(e.kind===`control`){g.push({from:e.from,to:e.to});continue}m.get(e.to).add(e.from),h.get(e.from).add(e.to)}let _=e=>m.get(e).size,v=e=>h.get(e).size,y=e=>_(e)>=2,b=new Map,ee=(e,t=new Set)=>{let n=b.get(e);if(n!==void 0)return n;if(t.has(e))return 0;t.add(e);let r=0;for(let n of m.get(e))r=Math.max(r,ee(n,t)+1);return t.delete(e),b.set(e,r),r};for(let t of e)ee(t.id);let x,S=-1,te=-1;for(let t of e){if(!y(t.id)||v(t.id)===0)continue;let e=b.get(t.id),n=_(t.id);(e>S||e===S&&n>te)&&(S=e,te=n,x=t.id)}let C=new Set;if(x){let e=[x];for(;e.length;){let t=e.pop();if(!C.has(t)){C.add(t);for(let n of h.get(t))e.push(n)}}}let ne=e=>{let t=[...h.get(e)],n=new Set(t);for(;t.length;){let e=t.shift();if(y(e))return e;for(let r of h.get(e))n.has(r)||(n.add(r),t.push(r))}return null},re=e=>y(e)?e:ne(e),w=new Set;for(let t of e){if(_(t.id)!==0||v(t.id)<2)continue;let e=new Set;for(let n of h.get(t.id))e.add(re(n));e.size>1&&w.add(t.id)}let ie=`\0shared`,T=`\0trunk`,E=new Map;for(let t of e){let e=t.id;if(w.has(e)){E.set(e,ie);continue}if(C.has(e)){E.set(e,T);continue}let n=y(e)?e:ne(e);E.set(e,n&&n!==x?n:`direct:${e}`)}let D=e.map(e=>e.id).filter(e=>E.get(e)?.startsWith(`direct:`)),O=new Map(D.map(e=>[e,e])),k=e=>{let t=e;for(;O.get(t)!==t;)t=O.get(t);for(;O.get(e)!==t;){let n=O.get(e);O.set(e,t),e=n}return t};for(let e of t)e.kind===`signal`&&E.get(e.from)?.startsWith(`direct:`)&&E.get(e.to)?.startsWith(`direct:`)&&O.set(k(e.from),k(e.to));for(let e of D)E.set(e,`chain:${k(e)}`);for(let{from:e,to:t}of g){let n=E.get(t);n&&E.has(e)&&E.set(e,n)}for(let t of e)E.has(t.id)||E.set(t.id,`\0orphan`);let A=[...new Set(E.values())].filter(e=>e!==ie&&e!==T),j=t=>e.filter(e=>E.get(e.id)===t);A.sort((e,t)=>j(t).length-j(e).length);let M=new Map;for(let e of A)M.set(e,Math.max(0,...j(e).map(e=>b.get(e.id))));let N=Math.max(0,...M.values()),P=new Map;if(x){P.set(x,0);let e=[x];for(;e.length;){let t=e.shift(),n=P.get(t);for(let r of h.get(t))C.has(r)&&!P.has(r)&&(P.set(r,n+1),e.push(r))}}let F=e=>w.has(e)?-1:C.has(e)?N+1+(P.get(e)??0):N-(M.get(E.get(e))??0)+(b.get(e)??0),I=[...new Set(e.map(e=>F(e.id)))].sort((e,t)=>e-t),L=new Map;for(let t of I)L.set(t,Math.max(c,...e.filter(e=>F(e.id)===t).map(e=>f(e.id))));let ae=new Map,R=r;for(let e of I)ae.set(e,R),R+=L.get(e)+a;let z=new Map,B=e=>e.reduce((e,t)=>e+p(t)+o,0)-o,V=e=>{let t=[...m.get(e),...h.get(e)].map(e=>z.get(e)).filter(e=>e!=null).sort((e,t)=>e-t);return t.length?t[Math.floor(t.length/2)]:0},oe=(e,t)=>{let n=t;for(let t of e)z.set(t,n),n+=p(t)+o},se=e=>{let t=new Map;for(let n of e){let e=F(n);(t.get(e)??t.set(e,[]).get(e)).push(n)}return t},H=i;for(let e of A){let t=se(j(e).map(e=>e.id)),n=l;for(let e of t.values())n=Math.max(n,B(e));for(let[,e]of t)e.sort((e,t)=>V(e)-V(t)),oe(e,H+(n-B(e))/2);H+=n+s}let ce=(i+Math.max(i,H-s))/2;{let e=[...w];oe(e,ce-B(e)/2)}for(let[,e]of se([...C]))oe(e,ce-B(e)/2);for(let t of e)u.set(t.id,{x:ae.get(F(t.id)),y:z.get(t.id)??i});return u}var b={key:0,class:`nb-blueprint__background-slot`,"aria-hidden":`true`},ee={class:`nb-blueprint__chrome`},x=100,S=.2,te=3,C=4,ne=240,re=400,w=1.2,ie=40,T=(0,n.defineComponent)({__name:`Blueprint`,props:{connections:{default:()=>[]},density:{default:`default`},cards:{},cardSizeEstimate:{},animateConnections:{default:`never`},activityStyle:{},wheelMode:{default:`auto`},editable:{type:Boolean,default:!1},renderer:{default:`auto`},background:{default:`dots`},layoutEdgeKind:{}},emits:[`connect`,`disconnect`,`move`,`selection-change`,`focus`,`drop-on-wire`,`wire-hover`,`wire-mouseover`,`wire-mouseout`],setup(e,{expose:a,emit:o}){let s=e,c=(0,n.useSlots)(),l=(0,n.computed)(()=>c.background?`none`:s.background),u=(0,n.ref)(!1),f=(0,n.ref)(!1),p=(0,n.computed)(()=>s.renderer!==`dom`&&u.value&&!f.value?`pixi`:`dom`);function m(){try{let e=document.createElement(`canvas`);return!!(e.getContext(`webgl2`)||e.getContext(`webgl`)||e.getContext(`experimental-webgl`))}catch{return!1}}function h(e){s.renderer===`pixi`&&console.warn(`[NubiscoUI] Blueprint renderer="pixi" unavailable (${e}); using the DOM renderer.`)}(0,n.onMounted)(async()=>{if(!(s.renderer===`dom`||typeof window>`u`)){if(!m()){h(`no WebGL`);return}try{await import(`pixi.js`),u.value=!0}catch{h(`pixi.js not installed`)}}});function g(e){f.value=!0,h(e instanceof Error?e.message:`init failed`)}let T=o,E=(0,n.ref)(),D=(0,n.ref)(0),O=(0,n.ref)(0),k=(0,n.ref)(1),A=(0,n.ref)(0),j=new v,M=(0,n.ref)(!1),N;function P(){M.value=!0,N&&clearTimeout(N),N=setTimeout(()=>{M.value=!1},220)}let F=(0,n.ref)(0),I=(0,n.ref)(0),L=(0,n.ref)(1),ae=0;function R(){F.value=D.value,I.value=O.value,L.value=k.value,ae=performance.now()}(0,n.watch)([D,O,k],()=>{if(!M.value){R();return}performance.now()-ae>=x&&R()}),(0,n.watch)(M,e=>{e||R()});let z=(0,n.ref)({w:0,h:0}),B=r(()=>E.value),V=new Map;function oe(e){for(let[t,n]of V)n.cardId===e&&V.delete(t)}function se(){V.clear()}function H(e,t,n){let r=`${e}:${t}`,i=V.get(r);if(i)return{x:i.x,y:i.y};let a=B.get(e,t);if(!a)return null;let o=a.getBoundingClientRect(),s=(o.left+o.width/2-n.left-D.value)/k.value,c=(o.top+o.height/2-n.top-O.value)/k.value,l=a.closest(`[data-card-id]`)?.getAttribute(`data-card-id`)??``;return V.set(r,{cardId:l,x:s,y:c}),{x:s,y:c}}let ce={width:260,height:200},U=(0,n.ref)(new Set),le=(0,n.ref)(null);function ue(e){le.value=e,T(`focus`,e)}function W(e){U.value=new Set(e),T(`selection-change`,e)}function de(){if(s.cards){W(s.cards.map(e=>e.id));return}if(!E.value)return;let e=[];E.value.querySelectorAll(`[data-card-id]`).forEach(t=>{let n=t.dataset.cardId;n&&e.push(n)}),W(e)}function fe(){W([]),ue(null)}let pe=(0,n.ref)(!1);function me(){let e=document.activeElement;if(!e)return!1;let t=e.tagName;return t===`INPUT`||t===`TEXTAREA`?!0:e.isContentEditable===!0}function he(e){if(e.code===`Space`&&!e.repeat){if(me())return;pe.value=!0,e.preventDefault()}}function ge(e){e.code===`Space`&&(pe.value=!1)}let _e=!1,ve=0,ye=0,be=[`button`,`input`,`select`,`textarea`,`label`,`a[href]`,`[role="button"]`,`[role="slider"]`,`[contenteditable="true"]`,`[data-no-card-drag]`].join(`, `);function xe(e){return!!(e instanceof Element?e:null)?.closest(be)}let Se=[`[role="slider"]`,`[role="spinbutton"]`,`[role="listbox"]`,`[data-canvas-wheel-passthrough]`,`input[type="range"]`,`input[type="number"]`].join(`, `);function Ce(e){let t=e instanceof Element?e:null;if(!t)return!1;if(t.closest(Se))return!0;let n=t;for(;n&&n!==E.value;){let e=window.getComputedStyle(n),t=e.overflowY,r=e.overflowX,i=(t===`auto`||t===`scroll`||t===`overlay`)&&n.scrollHeight>n.clientHeight,a=(r===`auto`||r===`scroll`||r===`overlay`)&&n.scrollWidth>n.clientWidth;if(i||a)return!0;n=n.parentElement}return!1}function we(e){let t=e.target instanceof HTMLElement?e.target:null;if(t?.closest(`.nb-blueprint__chrome`)||t?.closest(`.nb-blueprint-card__port`))return;if(e.button===1){Te(e);return}if(pe.value){Te(e);return}let n=t?.closest(`.nb-blueprint-card`);if(n){Be(e,n,!xe(t));return}Ye(e)}function Te(e){_e=!0,ve=e.clientX-D.value,ye=e.clientY-O.value,document.addEventListener(`mousemove`,Ee),document.addEventListener(`mouseup`,De)}function Ee(e){_e&&(P(),D.value=e.clientX-ve,O.value=e.clientY-ye)}function De(){_e=!1,document.removeEventListener(`mousemove`,Ee),document.removeEventListener(`mouseup`,De)}function Oe(e,t,n){let r=E.value?.getBoundingClientRect();if(!r)return;let i=k.value,a=Math.max(S,Math.min(te,i*n));if(a===i)return;let o=e-r.left,s=t-r.top,c=(o-D.value)/i,l=(s-O.value)/i;D.value=o-c*a,O.value=s-l*a,k.value=a}function ke(e){let t=E.value?.getBoundingClientRect();t&&Oe(t.left+t.width/2,t.top+t.height/2,e)}function Ae(){ke(w)}function je(){ke(1/w)}function Me(e){if(!E.value?.getBoundingClientRect())return;let t=e.ctrlKey;if(!t&&Ce(e.target))return;e.preventDefault(),P();let n;if(n=t||s.wheelMode===`zoom`?`zoom`:(s.wheelMode,`pan`),n===`zoom`){let t=1-e.deltaY*.01;Oe(e.clientX,e.clientY,t)}else D.value-=e.deltaX,O.value-=e.deltaY}let Ne=!1,Pe=null,Fe=0,Ie=0,G=new Map,Le=!1;function Re(e){let t=e;for(;t?.parentElement;){if(t.parentElement.classList.contains(`nb-blueprint__canvas`))return t;t=t.parentElement}return e.parentElement}function K(e){let t=Re(e);if(!t)return{x:0,y:0};let n=parseFloat(t.style.left),r=parseFloat(t.style.top);if(!Number.isNaN(n)&&!Number.isNaN(r))return{x:n,y:r};let i=(t.style.transform||``).match(/translate\(([^,]+)px,\s*([^)]+)px\)/);return i?{x:parseFloat(i[1]),y:parseFloat(i[2])}:{x:t.offsetLeft,y:t.offsetTop}}function ze(e,t,n){let r=Re(e);r&&(r.style.left=`${t}px`,r.style.top=`${n}px`)}function Be(e,t,r=!0){let i=t.dataset.cardId;if(i){if(Fe=e.clientX,Ie=e.clientY,Le=!1,G=new Map,e.shiftKey){let e=new Set(U.value);e.has(i)?e.delete(i):e.add(i),W(Array.from(e))}else U.value.has(i)||W([i]),ue(i);(0,n.nextTick)(()=>{if(E.value)for(let e of U.value){let t=E.value.querySelector(`[data-card-id="${e}"]`);t&&G.set(e,K(t))}}),r&&(document.addEventListener(`mousemove`,He),document.addEventListener(`mouseup`,We))}}function Ve(){if(!E.value)return;let e=[];for(let t of G.keys()){let n=E.value.querySelector(`[data-card-id="${t}"]`);if(n){let r=K(n);e.push({id:t,x:Math.round(r.x),y:Math.round(r.y)})}}e.length&&T(`move`,e)}function He(e){let t=(e.clientX-Fe)/k.value,n=(e.clientY-Ie)/k.value;if(!(!Ne&&Math.abs(t*k.value)<C&&Math.abs(n*k.value)<C)&&(Ne=!0,Le=!0,E.value)){for(let[e,r]of G){let i=E.value.querySelector(`[data-card-id="${e}"]`);i&&ze(i,r.x+t,r.y+n)}if(Ve(),A.value++,G.size===1){let[t]=G.keys();if(t){let n=Ue(e.clientX,e.clientY),r=n?`${n.fromNode}/${n.fromPort}|${n.toNode}/${n.toPort}`:null;r!==Pe&&(Pe=r,T(`wire-hover`,t,n))}}}}function Ue(e,t){if(!E.value)return null;let n=E.value.querySelectorAll(`.nb-blueprint__wire-hitregion`);for(let r of n){let n=r.ownerSVGElement;if(!n)continue;let i=n.getScreenCTM();if(!i)continue;let a=i.inverse(),o=n.createSVGPoint();o.x=e,o.y=t;let s=o.matrixTransform(a);if(r.isPointInStroke(s)){let e=parseInt(r.getAttribute(`data-wire-index`)??`-1`,10),t=e>=0?yt.value[e]:void 0;if(t)return t.conn}}return null}function We(e){if(document.removeEventListener(`mousemove`,He),document.removeEventListener(`mouseup`,We),Le&&(Ve(),e&&G.size===1)){let[t]=G.keys();if(t){let n=Ue(e.clientX,e.clientY);n&&T(`drop-on-wire`,t,n)}}if(Ne=!1,Le=!1,G=new Map,Pe!==null){let[e]=G.keys();e&&T(`wire-hover`,e,null),Pe=null}}let q=(0,n.ref)(null),Ge=!1,Ke=(0,n.computed)(()=>{if(!q.value)return{};let{x1:e,y1:t,x2:n,y2:r}=q.value;return{left:`${Math.min(e,n)}px`,top:`${Math.min(t,r)}px`,width:`${Math.abs(n-e)}px`,height:`${Math.abs(r-t)}px`}}),qe=(0,n.ref)(null);function Je(){if(U.value.size<2||!E.value||q.value)return null;let e=E.value.getBoundingClientRect(),t=1/0,n=1/0,r=-1/0,i=-1/0;for(let a of U.value){let o=E.value.querySelector(`[data-card-id="${a}"]`);if(!o)continue;let s=o.getBoundingClientRect(),c=s.left-e.left,l=s.top-e.top;t=Math.min(t,c),n=Math.min(n,l),r=Math.max(r,c+s.width),i=Math.max(i,l+s.height)}return t===1/0?null:{left:`${t-8}px`,top:`${n-8}px`,width:`${r-t+16}px`,height:`${i-n+16}px`}}(0,n.watch)([D,O,k,A,U,q],()=>{qe.value=Je()},{flush:`post`,immediate:!0});function Ye(e){if(!E.value)return;let t=E.value.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;Ge=e.shiftKey,Ge||W([]),q.value={x1:n,y1:r,x2:n,y2:r},document.addEventListener(`mousemove`,Xe),document.addEventListener(`mouseup`,Ze)}function Xe(e){if(!q.value||!E.value)return;let t=E.value.getBoundingClientRect();q.value.x2=e.clientX-t.left,q.value.y2=e.clientY-t.top}function Ze(){if(document.removeEventListener(`mousemove`,Xe),document.removeEventListener(`mouseup`,Ze),!q.value||!E.value){q.value=null;return}let e=E.value.getBoundingClientRect(),{x1:t,y1:n,x2:r,y2:i}=q.value,a=Math.min(t,r),o=Math.min(n,i),s=Math.max(t,r),c=Math.max(n,i);if(Math.abs(r-t)<C&&Math.abs(i-n)<C){Ge||(W([]),ue(null)),q.value=null;return}let l=Ge?[...U.value]:[];E.value.querySelectorAll(`[data-card-id]`).forEach(t=>{let n=t.getBoundingClientRect(),r=n.left-e.left,i=n.top-e.top,u=r+n.width,d=i+n.height;if(r<s&&u>a&&i<c&&d>o){let e=t.dataset.cardId;e&&!l.includes(e)&&l.push(e)}}),W(l),q.value=null}let J=(0,n.ref)(null),Y=(0,n.ref)(null),X=(0,n.ref)(null);function Qe(e){Y.value=e,X.value=null,document.addEventListener(`mousemove`,ft),document.addEventListener(`mouseup`,pt)}function $e(e,t){if(e.button!==0||(e.stopPropagation(),!E.value))return;let n=E.value.getBoundingClientRect(),r=(e.clientX-n.left-D.value)/k.value,i=(e.clientY-n.top-O.value)/k.value,a=ut(t.fromNode,t.fromPort),o=ut(t.toNode,t.toPort);if(!a||!o)return;let s=a.getBoundingClientRect(),c=o.getBoundingClientRect(),l=(s.left+s.width/2-n.left-D.value)/k.value,u=(s.top+s.height/2-n.top-O.value)/k.value,d=(c.left+c.width/2-n.left-D.value)/k.value,f=(c.top+c.height/2-n.top-O.value)/k.value,p=Math.hypot(r-l,i-u),m=Math.hypot(r-d,i-f);if(Math.min(p,m)>ie)return;e.preventDefault();let h=p<m,g=h?o:a;Y.value=h?{nodeId:t.toNode,portId:t.toPort,type:`input`,dataType:dt(g)}:{nodeId:t.fromNode,portId:t.fromPort,type:`output`,dataType:dt(g)},X.value=t,document.addEventListener(`mousemove`,ft),document.addEventListener(`mouseup`,pt)}(0,n.provide)(t.t,{onPortDown:e=>Qe(e),onPortUp:e=>mt(e),dragOrigin:Y,density:(0,n.computed)(()=>s.density),nudge:et,cancelPortDrag:pt});function et(e,t,n){let r=E.value;if(!r)return;let i;if(U.value.has(e))i=Q();else{let t=r.querySelector(`[data-card-id="${e}"]`);if(!t)return;let n=K(t);i=[{id:e,el:t,x:n.x,y:n.y,w:t.offsetWidth,h:t.offsetHeight}]}i.length&&$(i.map(e=>({...e,x:e.x+t,y:e.y+n})))}function tt(e,t){let n=E.value?.getBoundingClientRect(),r=n?.left??0,i=n?.top??0;return{x:(e-r-D.value)/k.value,y:(t-i-O.value)/k.value}}function nt(e,t){let n=E.value?.getBoundingClientRect(),r=n?.left??0,i=n?.top??0;return{clientX:e*k.value+D.value+r,clientY:t*k.value+O.value+i}}(0,n.provide)(t.n,{panX:D,panY:O,zoom:k,selectedIds:U,focusedId:le,selectAll:de,deselectAll:fe,centerView:wt,fitToView:Tt,resetView:Et,getCamera:Dt,setCamera:Ot,zoomIn:Ae,zoomOut:je,alignLeft:kt,alignCenter:At,alignRight:jt,alignTop:Mt,alignMiddle:Nt,alignBottom:Pt,distributeHorizontally:Ft,distributeVertically:It,autoLayout:Lt,screenToCanvas:tt,canvasToScreen:nt,isEditMode:(0,n.computed)(()=>s.editable),viewportSize:z,isTransforming:M,live:j,onPortDown:e=>Qe(e),onPortUp:e=>mt(e)});let Z=(0,n.ref)(null);function rt(e,t){if(!E.value)return;let n=E.value.getBoundingClientRect();Z.value={x:e.clientX-n.left,y:e.clientY-n.top,conn:t}}function it(e,t){T(`wire-mouseover`,t,e.clientX,e.clientY)}function at(e){T(`wire-mouseout`,e)}function ot(){Z.value=null}function st(e){T(`disconnect`,e),ot()}function ct(e){Z.value&&(e.target.closest(`.nb-blueprint__wire-menu`)||ot())}function lt(e){e.key===`Escape`&&Z.value&&ot()}function ut(e,t){return B.get(e,t)}function dt(e){let t=e?.getAttribute(`data-port-data-type`);return t&&t!==`any`?t:void 0}function ft(e){let t=Y.value;if(!t||!E.value)return;let n=E.value.getBoundingClientRect(),r=(e.clientX-n.left-D.value)/k.value,i=(e.clientY-n.top-O.value)/k.value,a=ut(t.nodeId,t.portId);if(!a)return;let o=a.getBoundingClientRect(),s=(o.left+o.width/2-n.left-D.value)/k.value,c=(o.top+o.height/2-n.top-O.value)/k.value,l=Math.abs(r-s)*.5;J.value=`M ${s} ${c} C ${s+l} ${c}, ${r-l} ${i}, ${r} ${i}`}function pt(){Y.value=null,X.value=null,J.value=null,document.removeEventListener(`mousemove`,ft),document.removeEventListener(`mouseup`,pt)}function mt(e){let t=Y.value;if(!t||t.nodeId===e.nodeId||t.type===e.type)return;let n=t.type===`output`?t:e,r=t.type===`output`?e:t,i={fromNode:n.nodeId,fromPort:n.portId,toNode:r.nodeId,toPort:r.portId},a=X.value;a?a.fromNode===i.fromNode&&a.fromPort===i.fromPort&&a.toNode===i.toNode&&a.toPort===i.toPort||(T(`disconnect`,a),T(`connect`,i)):T(`connect`,i),Y.value=null,X.value=null,J.value=null}let ht=new WeakMap;function gt(e){let t=ht.get(e);if(t)return t;let n=e.closest(`.nb-blueprint-card`),r=`var(--nb-c-primary)`;if(n){let e=getComputedStyle(n).getPropertyValue(`--nb-card-color`).trim();e&&!e.startsWith(`var(`)&&(r=e)}return ht.set(e,r),r}function _t(e){let t=e.getAttribute(`data-port-data-type`)??``;return t===`midi`||t.startsWith(`midi:`)}function vt(e){let t=Math.max(0,Math.min(1,e)),n=[34,197,94],r=[250,204,21],i=[239,68,68],a,o,s;t<=.5?(a=n,o=r,s=t*2):(a=r,o=i,s=(t-.5)*2);let c=(e,t)=>Math.round(e+(t-e)*s);return`rgb(${c(a[0],o[0])}, ${c(a[1],o[1])}, ${c(a[2],o[2])})`}let yt=(0,n.computed)(()=>{if(A.value,!E.value)return[];let e=E.value.getBoundingClientRect(),t=L.value,n=ne/t,r=(0-F.value)/t-n,i=(e.width-F.value)/t+n,a=(0-I.value)/t-n,o=(e.height-I.value)/t+n,c=X.value;return s.connections.filter(e=>!c||e.fromNode!==c.fromNode||e.fromPort!==c.fromPort||e.toNode!==c.toNode||e.toPort!==c.toPort).map(t=>{let n=H(t.fromNode,t.fromPort,e),c=H(t.toNode,t.toPort,e);if(!n||!c)return null;let l=n.x,u=n.y,d=c.x,f=c.y,p=Math.abs(d-l)*.4,m=l+p,h=d-p;if(Math.max(l,m,h,d)<r||Math.min(l,m,h,d)>i||(u<f?f:u)<a||(u<f?u:f)>o)return null;let g=ut(t.fromNode,t.fromPort);if(!g)return null;let _=`M ${l} ${u} C ${m} ${u}, ${h} ${f}, ${d} ${f}`,v=gt(g),y=_t(g),b=v;return s.animateConnections===`levels`&&t.active!==!1&&!y&&typeof t.level==`number`&&(b=vt(t.level)),{path:_,conn:t,color:b,isMidi:y}}).filter(Boolean)}),bt=e=>{let t=s.cardSizeEstimate??ce;return{w:e.width??t.width,h:e.height??t.height}},xt=(0,n.computed)(()=>{let e=s.cards;if(!e||e.length===0)return[];let t=L.value,n=re/t,r=(0-F.value)/t-n,i=(z.value.w-F.value)/t+n,a=(0-I.value)/t-n,o=(z.value.h-I.value)/t+n,c=(e,t,n,s)=>n>=r&&e<=i&&s>=a&&t<=o,l=new Map,u=new Set;for(let t of e){l.set(t.id,t);let{w:e,h:n}=bt(t);c(t.x,t.y,t.x+e,t.y+n)&&u.add(t.id)}for(let e of s.connections){let t=l.get(e.fromNode),n=l.get(e.toNode);if(!t||!n||u.has(t.id)&&u.has(n.id))continue;let r=bt(t),i=bt(n),a=t.x+r.w,o=t.y+r.h/2,s=n.x,d=n.y+i.h/2,f=Math.abs(s-a)*.4,p=Math.min(a,a+f,s-f,s),m=Math.max(a,a+f,s-f,s);c(p,o<d?o:d,m,o<d?d:o)&&(u.add(t.id),u.add(n.id))}return e.filter(e=>u.has(e.id))});function St(e){return s.animateConnections===`never`?!1:s.animateConnections===`always`?!0:s.animateConnections===`levels`?!1:e.active!==!1}function Ct(e){let t=1/0,n=1/0,r=-1/0,i=-1/0,a=e&&e.length?new Set(e):null,o=0;if(s.cards){if(s.cards.length===0)return null;for(let e of s.cards){if(a&&!a.has(e.id))continue;let{w:s,h:c}=bt(e);t=Math.min(t,e.x),n=Math.min(n,e.y),r=Math.max(r,e.x+s),i=Math.max(i,e.y+c),o++}return o>0?{minX:t,minY:n,maxX:r,maxY:i}:null}if(!E.value)return null;let c=E.value.querySelectorAll(`[data-card-id]`);return c.length===0?null:(c.forEach(e=>{let s=e;if(a&&!a.has(s.getAttribute(`data-card-id`)??``))return;let c=K(s),l=s.offsetWidth,u=s.offsetHeight;t=Math.min(t,c.x),n=Math.min(n,c.y),r=Math.max(r,c.x+l),i=Math.max(i,c.y+u),o++}),o>0?{minX:t,minY:n,maxX:r,maxY:i}:null)}function wt(){if(k.value=1,!E.value)return;let e=Ct();if(!e){D.value=0,O.value=0;return}let t=E.value.getBoundingClientRect(),n=(e.minX+e.maxX)/2,r=(e.minY+e.maxY)/2;D.value=t.width/2-n,O.value=t.height/2-r}function Tt(e=40,t){if(!E.value)return;let n=Ct(t);if(!n){if(t&&t.length)return;Et();return}let r=E.value.getBoundingClientRect(),i=n.maxX-n.minX,a=n.maxY-n.minY;if(i<=0||a<=0){wt();return}let o=r.width-e*2,s=r.height-e*2,c=o/i,l=s/a,u=Math.max(S,Math.min(te,Math.min(c,l))),d=(n.minX+n.maxX)/2,f=(n.minY+n.maxY)/2;k.value=u,D.value=r.width/2-d*u,O.value=r.height/2-f*u}function Et(){D.value=0,O.value=0,k.value=1}function Dt(){return{panX:D.value,panY:O.value,zoom:k.value}}function Ot(e){typeof e.panX==`number`&&(D.value=e.panX),typeof e.panY==`number`&&(O.value=e.panY),typeof e.zoom==`number`&&(k.value=e.zoom)}function Q(){if(!E.value)return[];let e=[];for(let t of U.value){let n=E.value.querySelector(`[data-card-id="${t}"]`);if(!n)continue;let r=K(n);e.push({id:t,el:n,x:r.x,y:r.y,w:n.offsetWidth,h:n.offsetHeight})}return e}function $(e){let t=[];for(let n of e)n.el&&ze(n.el,n.x,n.y),t.push({id:n.id,x:Math.round(n.x),y:Math.round(n.y)});t.length&&(A.value++,T(`move`,t))}function kt(){let e=Q();if(e.length<2)return;let t=Math.min(...e.map(e=>e.x));e.forEach(e=>e.x=t),$(e)}function At(){let e=Q();if(e.length<2)return;let t=e.map(e=>e.x+e.w/2),n=t.reduce((e,t)=>e+t,0)/t.length;e.forEach(e=>e.x=n-e.w/2),$(e)}function jt(){let e=Q();if(e.length<2)return;let t=Math.max(...e.map(e=>e.x+e.w));e.forEach(e=>e.x=t-e.w),$(e)}function Mt(){let e=Q();if(e.length<2)return;let t=Math.min(...e.map(e=>e.y));e.forEach(e=>e.y=t),$(e)}function Nt(){let e=Q();if(e.length<2)return;let t=e.map(e=>e.y+e.h/2),n=t.reduce((e,t)=>e+t,0)/t.length;e.forEach(e=>e.y=n-e.h/2),$(e)}function Pt(){let e=Q();if(e.length<2)return;let t=Math.max(...e.map(e=>e.y+e.h));e.forEach(e=>e.y=t-e.h),$(e)}function Ft(){let e=Q();if(e.length<3)return;e.sort((e,t)=>e.x-t.x);let t=e[0],n=e[e.length-1],r=e.reduce((e,t)=>e+t.w,0),i=(n.x+n.w-t.x-r)/(e.length-1),a=t.x+t.w+i;for(let t=1;t<e.length-1;t++)e[t].x=a,a+=e[t].w+i;$(e)}function It(){let e=Q();if(e.length<3)return;e.sort((e,t)=>e.y-t.y);let t=e[0],n=e[e.length-1],r=e.reduce((e,t)=>e+t.h,0),i=(n.y+n.h-t.y-r)/(e.length-1),a=t.y+t.h+i;for(let t=1;t<e.length-1;t++)e[t].y=a,a+=e[t].h+i;$(e)}function Lt(e){if(!E.value)return;let t=e?.gapY??40,n=e?.padding??60,r=[];if(s.cards)for(let e of s.cards){let t=E.value.querySelector(`[data-card-id="${e.id}"]`),{w:n,h:i}=bt(e);r.push({id:e.id,el:t,x:e.x,y:e.y,w:e.width??t?.offsetWidth??n,h:e.height??t?.offsetHeight??i})}else E.value.querySelectorAll(`[data-card-id]`).forEach(e=>{let t=e,n=t.dataset.cardId;if(!n)return;let i=K(t);r.push({id:n,el:t,x:i.x,y:i.y,w:t.offsetWidth,h:t.offsetHeight})});if(!r.length)return;let i=new Map(r.map(e=>[e.id,e])),a=r.map(e=>({id:e.id,w:e.w,h:e.h})),o=s.layoutEdgeKind,c=[];for(let e of s.connections)!i.has(e.fromNode)||!i.has(e.toNode)||c.push({from:e.fromNode,to:e.toNode,kind:o?o(e):`signal`});let l=y(a,c,{colGap:e?.gapX,rowGap:t,originX:n,originY:n});for(let e of r){let t=l.get(e.id);t&&(e.x=t.x,e.y=t.y)}$(r)}let Rt=new MutationObserver(e=>{B.prune();let t=!1,n=!1;for(let r of e){if(r.type===`childList`){t=!0;continue}if(!i(r.target))continue;n=!0;let e=r.target.querySelector(`[data-card-id]`)?.getAttribute(`data-card-id`);e&&oe(e)}t&&se(),(t||n)&&A.value++}),zt=null;return(0,n.onMounted)(()=>{if(E.value){let e=E.value.getBoundingClientRect();z.value={w:e.width,h:e.height},typeof ResizeObserver<`u`&&(zt=new ResizeObserver(e=>{let t=e[0]?.contentRect;t&&(z.value={w:t.width,h:t.height})}),zt.observe(E.value)),Rt.observe(E.value,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[`style`]})}window.addEventListener(`keydown`,he),window.addEventListener(`keyup`,ge),document.addEventListener(`mousedown`,ct),document.addEventListener(`keydown`,lt),(0,n.nextTick)(()=>(0,n.nextTick)(Tt))}),(0,n.onBeforeUnmount)(()=>{Rt.disconnect(),zt?.disconnect(),N&&clearTimeout(N),window.removeEventListener(`keydown`,he),window.removeEventListener(`keyup`,ge),document.removeEventListener(`mousedown`,ct),document.removeEventListener(`keydown`,lt)}),a({centerView:wt,fitToView:Tt,resetView:Et,getCamera:Dt,setCamera:Ot,zoomIn:Ae,zoomOut:je,selectedIds:U,focusedId:le,selectAll:de,deselectAll:fe,alignLeft:kt,alignCenter:At,alignRight:jt,alignTop:Mt,alignMiddle:Nt,alignBottom:Pt,distributeHorizontally:Ft,distributeVertically:It,autoLayout:Lt,onPortMouseDown:Qe,onPortMouseUp:mt,panX:D,panY:O,zoom:k,isTransforming:M,live:j}),(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{ref_key:`containerRef`,ref:E,class:(0,n.normalizeClass)([`nb-blueprint`,{"is-panning":(0,n.unref)(_e),"is-space":pe.value}]),onMousedown:we,onWheel:Me},[r[4]||=(0,n.createElementVNode)(`div`,{class:`nb-blueprint__ambient`},null,-1),t.$slots.background?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,b,[(0,n.renderSlot)(t.$slots,`background`,{},void 0,!0)])):(0,n.createCommentVNode)(``,!0),p.value===`dom`?((0,n.openBlock)(),(0,n.createBlock)(d,{key:1,"pan-x":D.value,"pan-y":O.value,zoom:k.value,"is-transforming":M.value,wires:yt.value,windowed:!!s.cards,"visible-cards":xt.value,"drag-wire":J.value,"should-flow":St,"level-coloring":e.animateConnections===`levels`,"activity-style":e.activityStyle??`flow`,"animate-connections":e.animateConnections,background:l.value,onWireMousedown:$e,onWireContextmenu:rt,onWireMousemove:it,onWireMouseleave:at},{card:(0,n.withCtx)(({card:e})=>[(0,n.renderSlot)(t.$slots,`card`,{card:e},void 0,!0)]),default:(0,n.withCtx)(()=>[(0,n.renderSlot)(t.$slots,`default`,{},void 0,!0)]),_:3},8,[`pan-x`,`pan-y`,`zoom`,`is-transforming`,`wires`,`windowed`,`visible-cards`,`drag-wire`,`level-coloring`,`activity-style`,`animate-connections`,`background`])):((0,n.openBlock)(),(0,n.createBlock)(_,{key:2,"pan-x":D.value,"pan-y":O.value,zoom:k.value,"is-transforming":M.value,wires:yt.value,windowed:!!s.cards,"visible-cards":xt.value,"drag-wire":J.value,"should-flow":St,"level-coloring":e.animateConnections===`levels`,"activity-style":e.activityStyle??`flow`,"animate-connections":e.animateConnections,background:l.value,"live-data":(0,n.unref)(j),onWireMousedown:$e,onWireContextmenu:rt,onWireMousemove:it,onWireMouseleave:at,onUnavailable:g},{card:(0,n.withCtx)(({card:e})=>[(0,n.renderSlot)(t.$slots,`card`,{card:e},void 0,!0)]),default:(0,n.withCtx)(()=>[(0,n.renderSlot)(t.$slots,`default`,{},void 0,!0)]),_:3},8,[`pan-x`,`pan-y`,`zoom`,`is-transforming`,`wires`,`windowed`,`visible-cards`,`drag-wire`,`level-coloring`,`activity-style`,`animate-connections`,`background`,`live-data`])),q.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:3,class:`nb-blueprint__marquee nb-blueprint__marquee--dragging`,style:(0,n.normalizeStyle)(Ke.value)},null,4)):(0,n.createCommentVNode)(``,!0),qe.value?((0,n.openBlock)(),(0,n.createElementBlock)(`svg`,{key:4,class:`nb-blueprint__selection-box`,style:(0,n.normalizeStyle)(qe.value)},[...r[3]||=[(0,n.createElementVNode)(`rect`,{x:`0.75`,y:`0.75`,width:`calc(100% - 1.5px)`,height:`calc(100% - 1.5px)`,rx:`4`,ry:`4`,fill:`none`,stroke:`var(--nb-blueprint-marquee-border, var(--nb-c-primary, #6366f1))`,"stroke-width":`1.5`,"stroke-dasharray":`6 4`,class:`nb-blueprint__selection-ants`},null,-1)]],4)):(0,n.createCommentVNode)(``,!0),Z.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:5,class:`nb-blueprint__wire-menu`,style:(0,n.normalizeStyle)({left:`${Z.value.x}px`,top:`${Z.value.y}px`}),role:`menu`,onClick:r[1]||=(0,n.withModifiers)(()=>{},[`stop`]),onContextmenu:r[2]||=(0,n.withModifiers)(()=>{},[`prevent`])},[(0,n.renderSlot)(t.$slots,`wire-menu`,{connection:Z.value.conn,close:ot,disconnect:()=>st(Z.value.conn)},()=>[(0,n.createElementVNode)(`button`,{type:`button`,class:`nb-blueprint__wire-menu-item`,onClick:r[0]||=e=>st(Z.value.conn)},` Disconnect `)],!0)],36)):(0,n.createCommentVNode)(``,!0),(0,n.createElementVNode)(`div`,ee,[(0,n.renderSlot)(t.$slots,`chrome`,{},void 0,!0)])],34))}}),E=e.t(T,[[`__scopeId`,`data-v-16839f88`]]);Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return E}});
|
|
1
|
+
require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./Blueprint.context-DQAE9pH9.cjs`);let n=require(`vue`);function r(e){let t=new Map;function n(n,r){let i=`${n}:${r}`,a=t.get(i);if(a&&a.isConnected)return a;a&&t.delete(i);let o=e();if(!o)return null;let s=o.querySelector(`[data-port="${n}:${r}"]`);return s&&t.set(i,s),s}function r(){for(let[e,n]of t)n.isConnected||t.delete(e)}function i(){t.clear()}function a(){return t.size}return{get:n,prune:r,clear:i,size:a}}function i(e){return e instanceof Element?e.parentElement?.classList.contains(`nb-blueprint__canvas`)??!1:!1}var a={class:`nb-blueprint__wires`},o=[`d`,`data-wire-index`,`onMousedown`,`onContextmenu`,`onMousemove`,`onMouseleave`],s=[`d`,`stroke`],c=[`d`,`stroke`],l=[`d`],u=(0,n.defineComponent)({__name:`BlueprintDomRenderer`,props:{panX:{},panY:{},zoom:{},isTransforming:{type:Boolean},wires:{},windowed:{type:Boolean},visibleCards:{},dragWire:{},shouldFlow:{type:Function},levelColoring:{type:Boolean},activityStyle:{},animateConnections:{},background:{},liveData:{}},emits:[`wire-mousedown`,`wire-contextmenu`,`wire-mousemove`,`wire-mouseleave`],setup(e,{emit:t}){let r=e,i=t,u=(0,n.computed)(()=>`translate(${r.panX}px, ${r.panY}px) scale(${r.zoom})`),d=(0,n.computed)(()=>r.isTransforming?`transform`:void 0),f=(0,n.computed)(()=>({transform:u.value,willChange:d.value})),p=(0,n.computed)(()=>({transform:u.value,transformOrigin:`0 0`,willChange:d.value}));return(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,null,[e.background===`none`?(0,n.createCommentVNode)(``,!0):((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:0,class:(0,n.normalizeClass)([`nb-blueprint__grid`,`nb-blueprint__grid--${e.background}`]),style:(0,n.normalizeStyle)(f.value)},null,6)),(0,n.createElementVNode)(`div`,{class:`nb-blueprint__canvas`,style:(0,n.normalizeStyle)(p.value)},[((0,n.openBlock)(),(0,n.createElementBlock)(`svg`,a,[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.wires,(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`g`,{key:t,class:`nb-blueprint__wire-group`},[(0,n.createElementVNode)(`path`,{d:e.path,fill:`none`,stroke:`transparent`,"stroke-width":`14`,class:`nb-blueprint__wire-hitregion`,"data-wire-index":t,onMousedown:t=>i(`wire-mousedown`,t,e.conn),onContextmenu:(0,n.withModifiers)(t=>i(`wire-contextmenu`,t,e.conn),[`prevent`]),onMousemove:t=>i(`wire-mousemove`,t,e.conn),onMouseleave:t=>i(`wire-mouseleave`,e.conn)},null,40,o),(0,n.createElementVNode)(`path`,{d:e.path,fill:`none`,stroke:e.color,"stroke-width":`1.5`,class:(0,n.normalizeClass)([`nb-blueprint__wire`,{"nb-blueprint__wire--inactive":e.conn.active===!1}]),"pointer-events":`none`},null,10,s)]))),128)),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.wires,(t,r)=>(0,n.withDirectives)(((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:`flow-${r}`,d:t.path,fill:`none`,stroke:t.color,"stroke-width":`1.5`,"stroke-dasharray":`4 8`,class:`nb-blueprint__wire-flow`,"pointer-events":`none`},null,8,c)),[[n.vShow,e.shouldFlow(t.conn)]])),128)),e.dragWire?((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:0,d:e.dragWire,fill:`none`,stroke:`var(--nb-c-primary)`,"stroke-width":`2`,"stroke-dasharray":`6 3`,opacity:`0.6`},null,8,l)):(0,n.createCommentVNode)(``,!0)])),e.windowed?((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,{key:0},(0,n.renderList)(e.visibleCards,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:e.id,class:`nb-blueprint__card-wrapper`,style:(0,n.normalizeStyle)({position:`absolute`,left:`${e.x}px`,top:`${e.y}px`})},[(0,n.renderSlot)(t.$slots,`card`,{card:e},void 0,!0)],4))),128)):(0,n.renderSlot)(t.$slots,`default`,{key:1},void 0,!0)],4)],64))}}),d=e.t(u,[[`__scopeId`,`data-v-31ed2748`]]),f={class:`nb-blueprint__wires`},p=[`d`,`stroke`],m=[`d`,`data-wire-index`,`onMousedown`,`onContextmenu`,`onMousemove`,`onMouseleave`],h=[`d`],g=(0,n.defineComponent)({__name:`BlueprintPixiRenderer`,props:{panX:{},panY:{},zoom:{},isTransforming:{type:Boolean},wires:{},windowed:{type:Boolean},visibleCards:{},dragWire:{},shouldFlow:{type:Function},levelColoring:{type:Boolean},activityStyle:{},animateConnections:{},background:{},liveData:{}},emits:[`wire-mousedown`,`wire-contextmenu`,`wire-mousemove`,`wire-mouseleave`,`unavailable`],setup(e,{emit:t}){let r=e,i=t,a=(0,n.ref)(),o=(0,n.ref)(),s=(0,n.ref)(!1),c=null,l,u=(0,n.computed)(()=>({transform:`translate(${r.panX}px, ${r.panY}px) scale(${r.zoom})`,transformOrigin:`0 0`,willChange:r.isTransforming?`transform`:`auto`}));function d(){let e=a.value?.parentElement;return{width:e?.clientWidth??0,height:e?.clientHeight??0}}async function g(){let e=a.value,t=o.value;if(!(!e||!t))try{let[n,{PixiScene:i}]=await Promise.all([import(`pixi.js`),Promise.resolve().then(()=>require(`./pixi-scene-Be5EU7HP.cjs`))]),{width:o,height:l}=d(),u=await i.create(n,{canvas:e,el:t,width:o,height:l,resolution:window.devicePixelRatio||1,background:r.background,liveData:r.liveData});if(!a.value){u.destroy();return}c=u,_(),s.value=!0,v()}catch(e){i(`unavailable`,e)}}function _(){c&&(c.setCamera(r.panX,r.panY,r.zoom),c.setLevelColoring(r.levelColoring??!1),c.setActivityStyle(r.activityStyle??`flow`),c.setWires(r.wires,r.shouldFlow),c.setMeters(r.visibleCards))}function v(){let e=a.value?.parentElement;e&&(l=new ResizeObserver(()=>{if(!c)return;let{width:e,height:t}=d();c.resize(e,t,window.devicePixelRatio||1)}),l.observe(e))}return(0,n.watch)(()=>[r.panX,r.panY,r.zoom],([e,t,n])=>c?.setCamera(e,t,n)),(0,n.watch)(()=>r.wires,e=>c?.setWires(e,r.shouldFlow)),(0,n.watch)(()=>r.visibleCards,e=>c?.setMeters(e)),(0,n.watch)(()=>r.levelColoring,e=>c?.setLevelColoring(e??!1)),(0,n.watch)(()=>r.activityStyle,e=>c?.setActivityStyle(e??`flow`)),(0,n.watch)(()=>r.animateConnections,()=>c?.setWires(r.wires,r.shouldFlow)),(0,n.watch)(()=>r.background,e=>c?.setBackground(e)),(0,n.onMounted)(g),(0,n.onBeforeUnmount)(()=>{l?.disconnect(),c?.destroy(),c=null}),(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,null,[(0,n.createElementVNode)(`canvas`,{ref_key:`canvasRef`,ref:a,class:`nb-blueprint-pixi__canvas`},null,512),(0,n.createElementVNode)(`div`,{ref_key:`overlayRef`,ref:o,class:`nb-blueprint__canvas nb-blueprint-pixi__overlay`,style:(0,n.normalizeStyle)(u.value)},[((0,n.openBlock)(),(0,n.createElementBlock)(`svg`,f,[s.value?(0,n.createCommentVNode)(``,!0):((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,{key:0},(0,n.renderList)(e.wires,(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:`w-${t}`,d:e.path,fill:`none`,stroke:e.color,"stroke-width":`1.5`,class:(0,n.normalizeClass)([`nb-blueprint__wire`,{"nb-blueprint__wire--inactive":e.conn.active===!1}]),"pointer-events":`none`},null,10,p))),128)),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.wires,(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:`h-${t}`,d:e.path,fill:`none`,stroke:`transparent`,"stroke-width":`14`,class:`nb-blueprint__wire-hitregion`,"data-wire-index":t,onMousedown:t=>i(`wire-mousedown`,t,e.conn),onContextmenu:(0,n.withModifiers)(t=>i(`wire-contextmenu`,t,e.conn),[`prevent`]),onMousemove:t=>i(`wire-mousemove`,t,e.conn),onMouseleave:t=>i(`wire-mouseleave`,e.conn)},null,40,m))),128)),e.dragWire?((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:1,d:e.dragWire,fill:`none`,stroke:`var(--nb-c-primary)`,"stroke-width":`2`,"stroke-dasharray":`6 3`,opacity:`0.6`},null,8,h)):(0,n.createCommentVNode)(``,!0)])),e.windowed?((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,{key:0},(0,n.renderList)(e.visibleCards,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:e.id,class:`nb-blueprint__card-wrapper`,style:(0,n.normalizeStyle)({position:`absolute`,left:`${e.x}px`,top:`${e.y}px`})},[(0,n.renderSlot)(t.$slots,`card`,{card:e},void 0,!0)],4))),128)):(0,n.renderSlot)(t.$slots,`default`,{key:1},void 0,!0)],4)],64))}}),_=e.t(g,[[`__scopeId`,`data-v-6fdf251d`]]),v=class{values=new Map;epoch=0;onChange=void 0;set(e,t){this.values.set(e,t),this.epoch++,this.onChange?.()}setMany(e){for(let t in e)this.values.set(t,e[t]);this.epoch++,this.onChange?.()}replace(e){this.values.clear(),this.setMany(e)}get(e){return this.values.get(e)??0}clear(){this.values.size!==0&&(this.values.clear(),this.epoch++,this.onChange?.())}get size(){return this.values.size}get version(){return this.epoch}};function y(e,t,n={}){let r=n.originX??80,i=n.originY??80,a=n.colGap??420,o=n.rowGap??48,s=n.bandGap??90,c=n.defaultW??220,l=n.defaultH??140,u=new Map;if(!e.length)return u;let d=new Map(e.map(e=>[e.id,e])),f=e=>Math.max(c,d.get(e)?.w||c),p=e=>Math.max(l,d.get(e)?.h||l),m=new Map,h=new Map;for(let t of e)m.set(t.id,new Set),h.set(t.id,new Set);let g=[];for(let e of t)if(!(!d.has(e.from)||!d.has(e.to))&&e.kind!==`ignore`){if(e.kind===`control`){g.push({from:e.from,to:e.to});continue}m.get(e.to).add(e.from),h.get(e.from).add(e.to)}let _=e=>m.get(e).size,v=e=>h.get(e).size,y=e=>_(e)>=2,b=new Map,ee=(e,t=new Set)=>{let n=b.get(e);if(n!==void 0)return n;if(t.has(e))return 0;t.add(e);let r=0;for(let n of m.get(e))r=Math.max(r,ee(n,t)+1);return t.delete(e),b.set(e,r),r};for(let t of e)ee(t.id);let x,S=-1,te=-1;for(let t of e){if(!y(t.id)||v(t.id)===0)continue;let e=b.get(t.id),n=_(t.id);(e>S||e===S&&n>te)&&(S=e,te=n,x=t.id)}let C=new Set;if(x){let e=[x];for(;e.length;){let t=e.pop();if(!C.has(t)){C.add(t);for(let n of h.get(t))e.push(n)}}}let ne=e=>{let t=[...h.get(e)],n=new Set(t);for(;t.length;){let e=t.shift();if(y(e))return e;for(let r of h.get(e))n.has(r)||(n.add(r),t.push(r))}return null},re=e=>y(e)?e:ne(e),w=new Set;for(let t of e){if(_(t.id)!==0||v(t.id)<2)continue;let e=new Set;for(let n of h.get(t.id))e.add(re(n));e.size>1&&w.add(t.id)}let ie=`\0shared`,T=`\0trunk`,E=new Map;for(let t of e){let e=t.id;if(w.has(e)){E.set(e,ie);continue}if(C.has(e)){E.set(e,T);continue}let n=y(e)?e:ne(e);E.set(e,n&&n!==x?n:`direct:${e}`)}let D=e.map(e=>e.id).filter(e=>E.get(e)?.startsWith(`direct:`)),O=new Map(D.map(e=>[e,e])),k=e=>{let t=e;for(;O.get(t)!==t;)t=O.get(t);for(;O.get(e)!==t;){let n=O.get(e);O.set(e,t),e=n}return t};for(let e of t)e.kind===`signal`&&E.get(e.from)?.startsWith(`direct:`)&&E.get(e.to)?.startsWith(`direct:`)&&O.set(k(e.from),k(e.to));for(let e of D)E.set(e,`chain:${k(e)}`);for(let{from:e,to:t}of g){let n=E.get(t);n&&E.has(e)&&E.set(e,n)}for(let t of e)E.has(t.id)||E.set(t.id,`\0orphan`);let A=[...new Set(E.values())].filter(e=>e!==ie&&e!==T),j=t=>e.filter(e=>E.get(e.id)===t);A.sort((e,t)=>j(t).length-j(e).length);let M=new Map;for(let e of A)M.set(e,Math.max(0,...j(e).map(e=>b.get(e.id))));let N=Math.max(0,...M.values()),P=new Map;if(x){P.set(x,0);let e=[x];for(;e.length;){let t=e.shift(),n=P.get(t);for(let r of h.get(t))C.has(r)&&!P.has(r)&&(P.set(r,n+1),e.push(r))}}let F=e=>w.has(e)?-1:C.has(e)?N+1+(P.get(e)??0):N-(M.get(E.get(e))??0)+(b.get(e)??0),I=[...new Set(e.map(e=>F(e.id)))].sort((e,t)=>e-t),L=new Map;for(let t of I)L.set(t,Math.max(c,...e.filter(e=>F(e.id)===t).map(e=>f(e.id))));let ae=new Map,R=r;for(let e of I)ae.set(e,R),R+=L.get(e)+a;let z=new Map,B=e=>e.reduce((e,t)=>e+p(t)+o,0)-o,V=e=>{let t=[...m.get(e),...h.get(e)].map(e=>z.get(e)).filter(e=>e!=null).sort((e,t)=>e-t);return t.length?t[Math.floor(t.length/2)]:0},oe=(e,t)=>{let n=t;for(let t of e)z.set(t,n),n+=p(t)+o},se=e=>{let t=new Map;for(let n of e){let e=F(n);(t.get(e)??t.set(e,[]).get(e)).push(n)}return t},H=i;for(let e of A){let t=se(j(e).map(e=>e.id)),n=l;for(let e of t.values())n=Math.max(n,B(e));for(let[,e]of t)e.sort((e,t)=>V(e)-V(t)),oe(e,H+(n-B(e))/2);H+=n+s}let ce=(i+Math.max(i,H-s))/2;{let e=[...w];oe(e,ce-B(e)/2)}for(let[,e]of se([...C]))oe(e,ce-B(e)/2);for(let t of e)u.set(t.id,{x:ae.get(F(t.id)),y:z.get(t.id)??i});return u}var b={key:0,class:`nb-blueprint__background-slot`,"aria-hidden":`true`},ee={class:`nb-blueprint__chrome`},x=100,S=.2,te=3,C=4,ne=240,re=400,w=1.2,ie=40,T=(0,n.defineComponent)({__name:`Blueprint`,props:{connections:{default:()=>[]},density:{default:`default`},cards:{},cardSizeEstimate:{},animateConnections:{default:`never`},activityStyle:{},wheelMode:{default:`auto`},editable:{type:Boolean,default:!1},renderer:{default:`auto`},background:{default:`dots`},layoutEdgeKind:{}},emits:[`connect`,`disconnect`,`move`,`selection-change`,`focus`,`drop-on-wire`,`wire-hover`,`wire-mouseover`,`wire-mouseout`],setup(e,{expose:a,emit:o}){let s=e,c=(0,n.useSlots)(),l=(0,n.computed)(()=>c.background?`none`:s.background),u=(0,n.ref)(!1),f=(0,n.ref)(!1),p=(0,n.computed)(()=>s.renderer!==`dom`&&u.value&&!f.value?`pixi`:`dom`);function m(){try{let e=document.createElement(`canvas`);return!!(e.getContext(`webgl2`)||e.getContext(`webgl`)||e.getContext(`experimental-webgl`))}catch{return!1}}function h(e){s.renderer===`pixi`&&console.warn(`[NubiscoUI] Blueprint renderer="pixi" unavailable (${e}); using the DOM renderer.`)}(0,n.onMounted)(async()=>{if(!(s.renderer===`dom`||typeof window>`u`)){if(!m()){h(`no WebGL`);return}try{await import(`pixi.js`),u.value=!0}catch{h(`pixi.js not installed`)}}});function g(e){f.value=!0,h(e instanceof Error?e.message:`init failed`)}let T=o,E=(0,n.ref)(),D=(0,n.ref)(0),O=(0,n.ref)(0),k=(0,n.ref)(1),A=(0,n.ref)(0),j=new v,M=(0,n.ref)(!1),N;function P(){M.value=!0,N&&clearTimeout(N),N=setTimeout(()=>{M.value=!1},220)}let F=(0,n.ref)(0),I=(0,n.ref)(0),L=(0,n.ref)(1),ae=0;function R(){F.value=D.value,I.value=O.value,L.value=k.value,ae=performance.now()}(0,n.watch)([D,O,k],()=>{if(!M.value){R();return}performance.now()-ae>=x&&R()}),(0,n.watch)(M,e=>{e||R()});let z=(0,n.ref)({w:0,h:0}),B=r(()=>E.value),V=new Map;function oe(e){for(let[t,n]of V)n.cardId===e&&V.delete(t)}function se(){V.clear()}function H(e,t,n){let r=`${e}:${t}`,i=V.get(r);if(i)return{x:i.x,y:i.y};let a=B.get(e,t);if(!a)return null;let o=a.getBoundingClientRect(),s=(o.left+o.width/2-n.left-D.value)/k.value,c=(o.top+o.height/2-n.top-O.value)/k.value,l=a.closest(`[data-card-id]`)?.getAttribute(`data-card-id`)??``;return V.set(r,{cardId:l,x:s,y:c}),{x:s,y:c}}let ce={width:260,height:200},U=(0,n.ref)(new Set),le=(0,n.ref)(null);function ue(e){le.value=e,T(`focus`,e)}function W(e){U.value=new Set(e),T(`selection-change`,e)}function de(){if(s.cards){W(s.cards.map(e=>e.id));return}if(!E.value)return;let e=[];E.value.querySelectorAll(`[data-card-id]`).forEach(t=>{let n=t.dataset.cardId;n&&e.push(n)}),W(e)}function fe(){W([]),ue(null)}let pe=(0,n.ref)(!1);function me(){let e=document.activeElement;if(!e)return!1;let t=e.tagName;return t===`INPUT`||t===`TEXTAREA`?!0:e.isContentEditable===!0}function he(e){if(e.code===`Space`&&!e.repeat){if(me())return;pe.value=!0,e.preventDefault()}}function ge(e){e.code===`Space`&&(pe.value=!1)}let _e=!1,ve=0,ye=0,be=[`button`,`input`,`select`,`textarea`,`label`,`a[href]`,`[role="button"]`,`[role="slider"]`,`[contenteditable="true"]`,`[data-no-card-drag]`].join(`, `);function xe(e){return!!(e instanceof Element?e:null)?.closest(be)}let Se=[`[role="slider"]`,`[role="spinbutton"]`,`[role="listbox"]`,`[data-canvas-wheel-passthrough]`,`input[type="range"]`,`input[type="number"]`].join(`, `);function Ce(e){let t=e instanceof Element?e:null;if(!t)return!1;if(t.closest(Se))return!0;let n=t;for(;n&&n!==E.value;){let e=window.getComputedStyle(n),t=e.overflowY,r=e.overflowX,i=(t===`auto`||t===`scroll`||t===`overlay`)&&n.scrollHeight>n.clientHeight,a=(r===`auto`||r===`scroll`||r===`overlay`)&&n.scrollWidth>n.clientWidth;if(i||a)return!0;n=n.parentElement}return!1}function we(e){let t=e.target instanceof HTMLElement?e.target:null;if(t?.closest(`.nb-blueprint__chrome`)||t?.closest(`.nb-blueprint-card__port`))return;if(e.button===1){Te(e);return}if(pe.value){Te(e);return}let n=t?.closest(`.nb-blueprint-card`);if(n){Be(e,n,!xe(t));return}Ye(e)}function Te(e){_e=!0,ve=e.clientX-D.value,ye=e.clientY-O.value,document.addEventListener(`mousemove`,Ee),document.addEventListener(`mouseup`,De)}function Ee(e){_e&&(P(),D.value=e.clientX-ve,O.value=e.clientY-ye)}function De(){_e=!1,document.removeEventListener(`mousemove`,Ee),document.removeEventListener(`mouseup`,De)}function Oe(e,t,n){let r=E.value?.getBoundingClientRect();if(!r)return;let i=k.value,a=Math.max(S,Math.min(te,i*n));if(a===i)return;let o=e-r.left,s=t-r.top,c=(o-D.value)/i,l=(s-O.value)/i;D.value=o-c*a,O.value=s-l*a,k.value=a}function ke(e){let t=E.value?.getBoundingClientRect();t&&Oe(t.left+t.width/2,t.top+t.height/2,e)}function Ae(){ke(w)}function je(){ke(1/w)}function Me(e){if(!E.value?.getBoundingClientRect())return;let t=e.ctrlKey;if(!t&&Ce(e.target))return;e.preventDefault(),P();let n;if(n=t||s.wheelMode===`zoom`?`zoom`:(s.wheelMode,`pan`),n===`zoom`){let t=1-e.deltaY*.01;Oe(e.clientX,e.clientY,t)}else D.value-=e.deltaX,O.value-=e.deltaY}let Ne=!1,Pe=null,Fe=0,Ie=0,G=new Map,Le=!1;function Re(e){let t=e;for(;t?.parentElement;){if(t.parentElement.classList.contains(`nb-blueprint__canvas`))return t;t=t.parentElement}return e.parentElement}function K(e){let t=Re(e);if(!t)return{x:0,y:0};let n=parseFloat(t.style.left),r=parseFloat(t.style.top);if(!Number.isNaN(n)&&!Number.isNaN(r))return{x:n,y:r};let i=(t.style.transform||``).match(/translate\(([^,]+)px,\s*([^)]+)px\)/);return i?{x:parseFloat(i[1]),y:parseFloat(i[2])}:{x:t.offsetLeft,y:t.offsetTop}}function ze(e,t,n){let r=Re(e);r&&(r.style.left=`${t}px`,r.style.top=`${n}px`)}function Be(e,t,r=!0){let i=t.dataset.cardId;if(i){if(Fe=e.clientX,Ie=e.clientY,Le=!1,G=new Map,e.shiftKey){let e=new Set(U.value);e.has(i)?e.delete(i):e.add(i),W(Array.from(e))}else U.value.has(i)||W([i]),ue(i);(0,n.nextTick)(()=>{if(E.value)for(let e of U.value){let t=E.value.querySelector(`[data-card-id="${e}"]`);t&&G.set(e,K(t))}}),r&&(document.addEventListener(`mousemove`,He),document.addEventListener(`mouseup`,We))}}function Ve(){if(!E.value)return;let e=[];for(let t of G.keys()){let n=E.value.querySelector(`[data-card-id="${t}"]`);if(n){let r=K(n);e.push({id:t,x:Math.round(r.x),y:Math.round(r.y)})}}e.length&&T(`move`,e)}function He(e){let t=(e.clientX-Fe)/k.value,n=(e.clientY-Ie)/k.value;if(!(!Ne&&Math.abs(t*k.value)<C&&Math.abs(n*k.value)<C)&&(Ne=!0,Le=!0,E.value)){for(let[e,r]of G){let i=E.value.querySelector(`[data-card-id="${e}"]`);i&&ze(i,r.x+t,r.y+n)}if(Ve(),A.value++,G.size===1){let[t]=G.keys();if(t){let n=Ue(e.clientX,e.clientY),r=n?`${n.fromNode}/${n.fromPort}|${n.toNode}/${n.toPort}`:null;r!==Pe&&(Pe=r,T(`wire-hover`,t,n))}}}}function Ue(e,t){if(!E.value)return null;let n=E.value.querySelectorAll(`.nb-blueprint__wire-hitregion`);for(let r of n){let n=r.ownerSVGElement;if(!n)continue;let i=n.getScreenCTM();if(!i)continue;let a=i.inverse(),o=n.createSVGPoint();o.x=e,o.y=t;let s=o.matrixTransform(a);if(r.isPointInStroke(s)){let e=parseInt(r.getAttribute(`data-wire-index`)??`-1`,10),t=e>=0?yt.value[e]:void 0;if(t)return t.conn}}return null}function We(e){if(document.removeEventListener(`mousemove`,He),document.removeEventListener(`mouseup`,We),Le&&(Ve(),e&&G.size===1)){let[t]=G.keys();if(t){let n=Ue(e.clientX,e.clientY);n&&T(`drop-on-wire`,t,n)}}if(Ne=!1,Le=!1,G=new Map,Pe!==null){let[e]=G.keys();e&&T(`wire-hover`,e,null),Pe=null}}let q=(0,n.ref)(null),Ge=!1,Ke=(0,n.computed)(()=>{if(!q.value)return{};let{x1:e,y1:t,x2:n,y2:r}=q.value;return{left:`${Math.min(e,n)}px`,top:`${Math.min(t,r)}px`,width:`${Math.abs(n-e)}px`,height:`${Math.abs(r-t)}px`}}),qe=(0,n.ref)(null);function Je(){if(U.value.size<2||!E.value||q.value)return null;let e=E.value.getBoundingClientRect(),t=1/0,n=1/0,r=-1/0,i=-1/0;for(let a of U.value){let o=E.value.querySelector(`[data-card-id="${a}"]`);if(!o)continue;let s=o.getBoundingClientRect(),c=s.left-e.left,l=s.top-e.top;t=Math.min(t,c),n=Math.min(n,l),r=Math.max(r,c+s.width),i=Math.max(i,l+s.height)}return t===1/0?null:{left:`${t-8}px`,top:`${n-8}px`,width:`${r-t+16}px`,height:`${i-n+16}px`}}(0,n.watch)([D,O,k,A,U,q],()=>{qe.value=Je()},{flush:`post`,immediate:!0});function Ye(e){if(!E.value)return;let t=E.value.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;Ge=e.shiftKey,Ge||W([]),q.value={x1:n,y1:r,x2:n,y2:r},document.addEventListener(`mousemove`,Xe),document.addEventListener(`mouseup`,Ze)}function Xe(e){if(!q.value||!E.value)return;let t=E.value.getBoundingClientRect();q.value.x2=e.clientX-t.left,q.value.y2=e.clientY-t.top}function Ze(){if(document.removeEventListener(`mousemove`,Xe),document.removeEventListener(`mouseup`,Ze),!q.value||!E.value){q.value=null;return}let e=E.value.getBoundingClientRect(),{x1:t,y1:n,x2:r,y2:i}=q.value,a=Math.min(t,r),o=Math.min(n,i),s=Math.max(t,r),c=Math.max(n,i);if(Math.abs(r-t)<C&&Math.abs(i-n)<C){Ge||(W([]),ue(null)),q.value=null;return}let l=Ge?[...U.value]:[];E.value.querySelectorAll(`[data-card-id]`).forEach(t=>{let n=t.getBoundingClientRect(),r=n.left-e.left,i=n.top-e.top,u=r+n.width,d=i+n.height;if(r<s&&u>a&&i<c&&d>o){let e=t.dataset.cardId;e&&!l.includes(e)&&l.push(e)}}),W(l),q.value=null}let J=(0,n.ref)(null),Y=(0,n.ref)(null),X=(0,n.ref)(null);function Qe(e){Y.value=e,X.value=null,document.addEventListener(`mousemove`,ft),document.addEventListener(`mouseup`,pt)}function $e(e,t){if(e.button!==0||(e.stopPropagation(),!E.value))return;let n=E.value.getBoundingClientRect(),r=(e.clientX-n.left-D.value)/k.value,i=(e.clientY-n.top-O.value)/k.value,a=ut(t.fromNode,t.fromPort),o=ut(t.toNode,t.toPort);if(!a||!o)return;let s=a.getBoundingClientRect(),c=o.getBoundingClientRect(),l=(s.left+s.width/2-n.left-D.value)/k.value,u=(s.top+s.height/2-n.top-O.value)/k.value,d=(c.left+c.width/2-n.left-D.value)/k.value,f=(c.top+c.height/2-n.top-O.value)/k.value,p=Math.hypot(r-l,i-u),m=Math.hypot(r-d,i-f);if(Math.min(p,m)>ie)return;e.preventDefault();let h=p<m,g=h?o:a;Y.value=h?{nodeId:t.toNode,portId:t.toPort,type:`input`,dataType:dt(g)}:{nodeId:t.fromNode,portId:t.fromPort,type:`output`,dataType:dt(g)},X.value=t,document.addEventListener(`mousemove`,ft),document.addEventListener(`mouseup`,pt)}(0,n.provide)(t.t,{onPortDown:e=>Qe(e),onPortUp:e=>mt(e),dragOrigin:Y,density:(0,n.computed)(()=>s.density),nudge:et,cancelPortDrag:pt});function et(e,t,n){let r=E.value;if(!r)return;let i;if(U.value.has(e))i=Q();else{let t=r.querySelector(`[data-card-id="${e}"]`);if(!t)return;let n=K(t);i=[{id:e,el:t,x:n.x,y:n.y,w:t.offsetWidth,h:t.offsetHeight}]}i.length&&$(i.map(e=>({...e,x:e.x+t,y:e.y+n})))}function tt(e,t){let n=E.value?.getBoundingClientRect(),r=n?.left??0,i=n?.top??0;return{x:(e-r-D.value)/k.value,y:(t-i-O.value)/k.value}}function nt(e,t){let n=E.value?.getBoundingClientRect(),r=n?.left??0,i=n?.top??0;return{clientX:e*k.value+D.value+r,clientY:t*k.value+O.value+i}}(0,n.provide)(t.n,{panX:D,panY:O,zoom:k,selectedIds:U,focusedId:le,selectAll:de,deselectAll:fe,centerView:wt,fitToView:Tt,resetView:Et,getCamera:Dt,setCamera:Ot,zoomIn:Ae,zoomOut:je,alignLeft:kt,alignCenter:At,alignRight:jt,alignTop:Mt,alignMiddle:Nt,alignBottom:Pt,distributeHorizontally:Ft,distributeVertically:It,autoLayout:Lt,screenToCanvas:tt,canvasToScreen:nt,isEditMode:(0,n.computed)(()=>s.editable),viewportSize:z,isTransforming:M,live:j,onPortDown:e=>Qe(e),onPortUp:e=>mt(e)});let Z=(0,n.ref)(null);function rt(e,t){if(!E.value)return;let n=E.value.getBoundingClientRect();Z.value={x:e.clientX-n.left,y:e.clientY-n.top,conn:t}}function it(e,t){T(`wire-mouseover`,t,e.clientX,e.clientY)}function at(e){T(`wire-mouseout`,e)}function ot(){Z.value=null}function st(e){T(`disconnect`,e),ot()}function ct(e){Z.value&&(e.target.closest(`.nb-blueprint__wire-menu`)||ot())}function lt(e){e.key===`Escape`&&Z.value&&ot()}function ut(e,t){return B.get(e,t)}function dt(e){let t=e?.getAttribute(`data-port-data-type`);return t&&t!==`any`?t:void 0}function ft(e){let t=Y.value;if(!t||!E.value)return;let n=E.value.getBoundingClientRect(),r=(e.clientX-n.left-D.value)/k.value,i=(e.clientY-n.top-O.value)/k.value,a=ut(t.nodeId,t.portId);if(!a)return;let o=a.getBoundingClientRect(),s=(o.left+o.width/2-n.left-D.value)/k.value,c=(o.top+o.height/2-n.top-O.value)/k.value,l=Math.abs(r-s)*.5;J.value=`M ${s} ${c} C ${s+l} ${c}, ${r-l} ${i}, ${r} ${i}`}function pt(){Y.value=null,X.value=null,J.value=null,document.removeEventListener(`mousemove`,ft),document.removeEventListener(`mouseup`,pt)}function mt(e){let t=Y.value;if(!t||t.nodeId===e.nodeId||t.type===e.type)return;let n=t.type===`output`?t:e,r=t.type===`output`?e:t,i={fromNode:n.nodeId,fromPort:n.portId,toNode:r.nodeId,toPort:r.portId},a=X.value;a?a.fromNode===i.fromNode&&a.fromPort===i.fromPort&&a.toNode===i.toNode&&a.toPort===i.toPort||(T(`disconnect`,a),T(`connect`,i)):T(`connect`,i),Y.value=null,X.value=null,J.value=null}let ht=new WeakMap;function gt(e){let t=ht.get(e);if(t)return t;let n=e.closest(`.nb-blueprint-card`),r=`var(--nb-c-primary)`;if(n){let e=getComputedStyle(n).getPropertyValue(`--nb-card-color`).trim();e&&!e.startsWith(`var(`)&&(r=e)}return ht.set(e,r),r}function _t(e){let t=e.getAttribute(`data-port-data-type`)??``;return t===`midi`||t.startsWith(`midi:`)}function vt(e){let t=Math.max(0,Math.min(1,e)),n=[34,197,94],r=[250,204,21],i=[239,68,68],a,o,s;t<=.5?(a=n,o=r,s=t*2):(a=r,o=i,s=(t-.5)*2);let c=(e,t)=>Math.round(e+(t-e)*s);return`rgb(${c(a[0],o[0])}, ${c(a[1],o[1])}, ${c(a[2],o[2])})`}let yt=(0,n.computed)(()=>{if(A.value,!E.value)return[];let e=E.value.getBoundingClientRect(),t=L.value,n=ne/t,r=(0-F.value)/t-n,i=(e.width-F.value)/t+n,a=(0-I.value)/t-n,o=(e.height-I.value)/t+n,c=X.value;return s.connections.filter(e=>!c||e.fromNode!==c.fromNode||e.fromPort!==c.fromPort||e.toNode!==c.toNode||e.toPort!==c.toPort).map(t=>{let n=H(t.fromNode,t.fromPort,e),c=H(t.toNode,t.toPort,e);if(!n||!c)return null;let l=n.x,u=n.y,d=c.x,f=c.y,p=Math.abs(d-l)*.4,m=l+p,h=d-p;if(Math.max(l,m,h,d)<r||Math.min(l,m,h,d)>i||(u<f?f:u)<a||(u<f?u:f)>o)return null;let g=ut(t.fromNode,t.fromPort);if(!g)return null;let _=`M ${l} ${u} C ${m} ${u}, ${h} ${f}, ${d} ${f}`,v=gt(g),y=_t(g),b=v;return s.animateConnections===`levels`&&t.active!==!1&&!y&&typeof t.level==`number`&&(b=vt(t.level)),{path:_,conn:t,color:b,isMidi:y}}).filter(Boolean)}),bt=e=>{let t=s.cardSizeEstimate??ce;return{w:e.width??t.width,h:e.height??t.height}},xt=(0,n.computed)(()=>{let e=s.cards;if(!e||e.length===0)return[];let t=L.value,n=re/t,r=(0-F.value)/t-n,i=(z.value.w-F.value)/t+n,a=(0-I.value)/t-n,o=(z.value.h-I.value)/t+n,c=(e,t,n,s)=>n>=r&&e<=i&&s>=a&&t<=o,l=new Map,u=new Set;for(let t of e){l.set(t.id,t);let{w:e,h:n}=bt(t);c(t.x,t.y,t.x+e,t.y+n)&&u.add(t.id)}for(let e of s.connections){let t=l.get(e.fromNode),n=l.get(e.toNode);if(!t||!n||u.has(t.id)&&u.has(n.id))continue;let r=bt(t),i=bt(n),a=t.x+r.w,o=t.y+r.h/2,s=n.x,d=n.y+i.h/2,f=Math.abs(s-a)*.4,p=Math.min(a,a+f,s-f,s),m=Math.max(a,a+f,s-f,s);c(p,o<d?o:d,m,o<d?d:o)&&(u.add(t.id),u.add(n.id))}return e.filter(e=>u.has(e.id))});function St(e){return s.animateConnections===`never`?!1:s.animateConnections===`always`?!0:s.animateConnections===`levels`?!1:e.active!==!1}function Ct(e){let t=1/0,n=1/0,r=-1/0,i=-1/0,a=e&&e.length?new Set(e):null,o=0;if(s.cards){if(s.cards.length===0)return null;for(let e of s.cards){if(a&&!a.has(e.id))continue;let{w:s,h:c}=bt(e);t=Math.min(t,e.x),n=Math.min(n,e.y),r=Math.max(r,e.x+s),i=Math.max(i,e.y+c),o++}return o>0?{minX:t,minY:n,maxX:r,maxY:i}:null}if(!E.value)return null;let c=E.value.querySelectorAll(`[data-card-id]`);return c.length===0?null:(c.forEach(e=>{let s=e;if(a&&!a.has(s.getAttribute(`data-card-id`)??``))return;let c=K(s),l=s.offsetWidth,u=s.offsetHeight;t=Math.min(t,c.x),n=Math.min(n,c.y),r=Math.max(r,c.x+l),i=Math.max(i,c.y+u),o++}),o>0?{minX:t,minY:n,maxX:r,maxY:i}:null)}function wt(){if(k.value=1,!E.value)return;let e=Ct();if(!e){D.value=0,O.value=0;return}let t=E.value.getBoundingClientRect(),n=(e.minX+e.maxX)/2,r=(e.minY+e.maxY)/2;D.value=t.width/2-n,O.value=t.height/2-r}function Tt(e=40,t){if(!E.value)return;let n=Ct(t);if(!n){if(t&&t.length)return;Et();return}let r=E.value.getBoundingClientRect(),i=n.maxX-n.minX,a=n.maxY-n.minY;if(i<=0||a<=0){wt();return}let o=r.width-e*2,s=r.height-e*2,c=o/i,l=s/a,u=Math.max(S,Math.min(te,Math.min(c,l))),d=(n.minX+n.maxX)/2,f=(n.minY+n.maxY)/2;k.value=u,D.value=r.width/2-d*u,O.value=r.height/2-f*u}function Et(){D.value=0,O.value=0,k.value=1}function Dt(){return{panX:D.value,panY:O.value,zoom:k.value}}function Ot(e){typeof e.panX==`number`&&(D.value=e.panX),typeof e.panY==`number`&&(O.value=e.panY),typeof e.zoom==`number`&&(k.value=e.zoom)}function Q(){if(!E.value)return[];let e=[];for(let t of U.value){let n=E.value.querySelector(`[data-card-id="${t}"]`);if(!n)continue;let r=K(n);e.push({id:t,el:n,x:r.x,y:r.y,w:n.offsetWidth,h:n.offsetHeight})}return e}function $(e){let t=[];for(let n of e)n.el&&ze(n.el,n.x,n.y),t.push({id:n.id,x:Math.round(n.x),y:Math.round(n.y)});t.length&&(A.value++,T(`move`,t))}function kt(){let e=Q();if(e.length<2)return;let t=Math.min(...e.map(e=>e.x));e.forEach(e=>e.x=t),$(e)}function At(){let e=Q();if(e.length<2)return;let t=e.map(e=>e.x+e.w/2),n=t.reduce((e,t)=>e+t,0)/t.length;e.forEach(e=>e.x=n-e.w/2),$(e)}function jt(){let e=Q();if(e.length<2)return;let t=Math.max(...e.map(e=>e.x+e.w));e.forEach(e=>e.x=t-e.w),$(e)}function Mt(){let e=Q();if(e.length<2)return;let t=Math.min(...e.map(e=>e.y));e.forEach(e=>e.y=t),$(e)}function Nt(){let e=Q();if(e.length<2)return;let t=e.map(e=>e.y+e.h/2),n=t.reduce((e,t)=>e+t,0)/t.length;e.forEach(e=>e.y=n-e.h/2),$(e)}function Pt(){let e=Q();if(e.length<2)return;let t=Math.max(...e.map(e=>e.y+e.h));e.forEach(e=>e.y=t-e.h),$(e)}function Ft(){let e=Q();if(e.length<3)return;e.sort((e,t)=>e.x-t.x);let t=e[0],n=e[e.length-1],r=e.reduce((e,t)=>e+t.w,0),i=(n.x+n.w-t.x-r)/(e.length-1),a=t.x+t.w+i;for(let t=1;t<e.length-1;t++)e[t].x=a,a+=e[t].w+i;$(e)}function It(){let e=Q();if(e.length<3)return;e.sort((e,t)=>e.y-t.y);let t=e[0],n=e[e.length-1],r=e.reduce((e,t)=>e+t.h,0),i=(n.y+n.h-t.y-r)/(e.length-1),a=t.y+t.h+i;for(let t=1;t<e.length-1;t++)e[t].y=a,a+=e[t].h+i;$(e)}function Lt(e){if(!E.value)return;let t=e?.gapY??40,n=e?.padding??60,r=[];if(s.cards)for(let e of s.cards){let t=E.value.querySelector(`[data-card-id="${e.id}"]`),{w:n,h:i}=bt(e);r.push({id:e.id,el:t,x:e.x,y:e.y,w:e.width??t?.offsetWidth??n,h:e.height??t?.offsetHeight??i})}else E.value.querySelectorAll(`[data-card-id]`).forEach(e=>{let t=e,n=t.dataset.cardId;if(!n)return;let i=K(t);r.push({id:n,el:t,x:i.x,y:i.y,w:t.offsetWidth,h:t.offsetHeight})});if(!r.length)return;let i=new Map(r.map(e=>[e.id,e])),a=r.map(e=>({id:e.id,w:e.w,h:e.h})),o=s.layoutEdgeKind,c=[];for(let e of s.connections)!i.has(e.fromNode)||!i.has(e.toNode)||c.push({from:e.fromNode,to:e.toNode,kind:o?o(e):`signal`});let l=y(a,c,{colGap:e?.gapX,rowGap:t,originX:n,originY:n});for(let e of r){let t=l.get(e.id);t&&(e.x=t.x,e.y=t.y)}$(r)}let Rt=new MutationObserver(e=>{B.prune();let t=!1,n=!1;for(let r of e){if(r.type===`childList`){t=!0;continue}if(!i(r.target))continue;n=!0;let e=r.target.querySelector(`[data-card-id]`)?.getAttribute(`data-card-id`);e&&oe(e)}t&&se(),(t||n)&&A.value++}),zt=null;return(0,n.onMounted)(()=>{if(E.value){let e=E.value.getBoundingClientRect();z.value={w:e.width,h:e.height},typeof ResizeObserver<`u`&&(zt=new ResizeObserver(e=>{let t=e[0]?.contentRect;t&&(z.value={w:t.width,h:t.height})}),zt.observe(E.value)),Rt.observe(E.value,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[`style`]})}window.addEventListener(`keydown`,he),window.addEventListener(`keyup`,ge),document.addEventListener(`mousedown`,ct),document.addEventListener(`keydown`,lt),(0,n.nextTick)(()=>(0,n.nextTick)(Tt))}),(0,n.onBeforeUnmount)(()=>{Rt.disconnect(),zt?.disconnect(),N&&clearTimeout(N),window.removeEventListener(`keydown`,he),window.removeEventListener(`keyup`,ge),document.removeEventListener(`mousedown`,ct),document.removeEventListener(`keydown`,lt)}),a({centerView:wt,fitToView:Tt,resetView:Et,getCamera:Dt,setCamera:Ot,zoomIn:Ae,zoomOut:je,selectedIds:U,focusedId:le,selectAll:de,deselectAll:fe,alignLeft:kt,alignCenter:At,alignRight:jt,alignTop:Mt,alignMiddle:Nt,alignBottom:Pt,distributeHorizontally:Ft,distributeVertically:It,autoLayout:Lt,onPortMouseDown:Qe,onPortMouseUp:mt,panX:D,panY:O,zoom:k,isTransforming:M,live:j}),(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{ref_key:`containerRef`,ref:E,class:(0,n.normalizeClass)([`nb-blueprint`,{"is-panning":(0,n.unref)(_e),"is-space":pe.value}]),onMousedown:we,onWheel:Me},[r[4]||=(0,n.createElementVNode)(`div`,{class:`nb-blueprint__ambient`},null,-1),t.$slots.background?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,b,[(0,n.renderSlot)(t.$slots,`background`,{},void 0,!0)])):(0,n.createCommentVNode)(``,!0),p.value===`dom`?((0,n.openBlock)(),(0,n.createBlock)(d,{key:1,"pan-x":D.value,"pan-y":O.value,zoom:k.value,"is-transforming":M.value,wires:yt.value,windowed:!!s.cards,"visible-cards":xt.value,"drag-wire":J.value,"should-flow":St,"level-coloring":e.animateConnections===`levels`,"activity-style":e.activityStyle??`flow`,"animate-connections":e.animateConnections,background:l.value,onWireMousedown:$e,onWireContextmenu:rt,onWireMousemove:it,onWireMouseleave:at},{card:(0,n.withCtx)(({card:e})=>[(0,n.renderSlot)(t.$slots,`card`,{card:e},void 0,!0)]),default:(0,n.withCtx)(()=>[(0,n.renderSlot)(t.$slots,`default`,{},void 0,!0)]),_:3},8,[`pan-x`,`pan-y`,`zoom`,`is-transforming`,`wires`,`windowed`,`visible-cards`,`drag-wire`,`level-coloring`,`activity-style`,`animate-connections`,`background`])):((0,n.openBlock)(),(0,n.createBlock)(_,{key:2,"pan-x":D.value,"pan-y":O.value,zoom:k.value,"is-transforming":M.value,wires:yt.value,windowed:!!s.cards,"visible-cards":xt.value,"drag-wire":J.value,"should-flow":St,"level-coloring":e.animateConnections===`levels`,"activity-style":e.activityStyle??`flow`,"animate-connections":e.animateConnections,background:l.value,"live-data":(0,n.unref)(j),onWireMousedown:$e,onWireContextmenu:rt,onWireMousemove:it,onWireMouseleave:at,onUnavailable:g},{card:(0,n.withCtx)(({card:e})=>[(0,n.renderSlot)(t.$slots,`card`,{card:e},void 0,!0)]),default:(0,n.withCtx)(()=>[(0,n.renderSlot)(t.$slots,`default`,{},void 0,!0)]),_:3},8,[`pan-x`,`pan-y`,`zoom`,`is-transforming`,`wires`,`windowed`,`visible-cards`,`drag-wire`,`level-coloring`,`activity-style`,`animate-connections`,`background`,`live-data`])),q.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:3,class:`nb-blueprint__marquee nb-blueprint__marquee--dragging`,style:(0,n.normalizeStyle)(Ke.value)},null,4)):(0,n.createCommentVNode)(``,!0),qe.value?((0,n.openBlock)(),(0,n.createElementBlock)(`svg`,{key:4,class:`nb-blueprint__selection-box`,style:(0,n.normalizeStyle)(qe.value)},[...r[3]||=[(0,n.createElementVNode)(`rect`,{x:`0.75`,y:`0.75`,width:`calc(100% - 1.5px)`,height:`calc(100% - 1.5px)`,rx:`4`,ry:`4`,fill:`none`,stroke:`var(--nb-blueprint-marquee-border, var(--nb-c-primary, #6366f1))`,"stroke-width":`1.5`,"stroke-dasharray":`6 4`,class:`nb-blueprint__selection-ants`},null,-1)]],4)):(0,n.createCommentVNode)(``,!0),Z.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:5,class:`nb-blueprint__wire-menu`,style:(0,n.normalizeStyle)({left:`${Z.value.x}px`,top:`${Z.value.y}px`}),role:`menu`,onClick:r[1]||=(0,n.withModifiers)(()=>{},[`stop`]),onContextmenu:r[2]||=(0,n.withModifiers)(()=>{},[`prevent`])},[(0,n.renderSlot)(t.$slots,`wire-menu`,{connection:Z.value.conn,close:ot,disconnect:()=>st(Z.value.conn)},()=>[(0,n.createElementVNode)(`button`,{type:`button`,class:`nb-blueprint__wire-menu-item`,onClick:r[0]||=e=>st(Z.value.conn)},` Disconnect `)],!0)],36)):(0,n.createCommentVNode)(``,!0),(0,n.createElementVNode)(`div`,ee,[(0,n.renderSlot)(t.$slots,`chrome`,{},void 0,!0)])],34))}}),E=e.t(T,[[`__scopeId`,`data-v-16839f88`]]);Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return E}});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as e } from "./_plugin-vue_export-helper-O4QQSku4.js";
|
|
2
|
-
import { n as t, t as n } from "./Blueprint.context-
|
|
2
|
+
import { n as t, t as n } from "./Blueprint.context-C51gyX3c.js";
|
|
3
3
|
import { Fragment as r, computed as i, createBlock as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, defineComponent as l, nextTick as u, normalizeClass as d, normalizeStyle as f, onBeforeUnmount as p, onMounted as m, openBlock as h, provide as g, ref as _, renderList as v, renderSlot as y, unref as b, useSlots as x, vShow as S, watch as C, withCtx as w, withDirectives as T, withModifiers as E } from "vue";
|
|
4
4
|
//#region src/components/blueprint-port-cache.ts
|
|
5
5
|
function ee(e) {
|
|
@@ -181,7 +181,7 @@ var O = { class: "nb-blueprint__wires" }, k = [
|
|
|
181
181
|
async function T() {
|
|
182
182
|
let e = l.value, t = u.value;
|
|
183
183
|
if (!(!e || !t)) try {
|
|
184
|
-
let [r, { PixiScene: i }] = await Promise.all([import("pixi.js"), import("./pixi-scene-
|
|
184
|
+
let [r, { PixiScene: i }] = await Promise.all([import("pixi.js"), import("./pixi-scene-CjZJN5UI.js")]), { width: a, height: o } = w(), s = await i.create(r, {
|
|
185
185
|
canvas: e,
|
|
186
186
|
el: t,
|
|
187
187
|
width: a,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useReducedMotion as e } from "./composables/useReducedMotion.composable.mjs";
|
|
2
2
|
import { t } from "./_plugin-vue_export-helper-O4QQSku4.js";
|
|
3
|
-
import { t as n } from "./Blueprint.context-
|
|
3
|
+
import { t as n } from "./Blueprint.context-C51gyX3c.js";
|
|
4
4
|
import { Fragment as r, computed as i, createCommentVNode as a, createElementBlock as o, createElementVNode as s, createTextVNode as c, defineComponent as l, inject as u, normalizeClass as d, normalizeStyle as f, onScopeDispose as p, openBlock as m, ref as h, renderList as g, renderSlot as _, toDisplayString as v, watch as ee, withModifiers as y } from "vue";
|
|
5
5
|
//#region src/components/BlueprintCard.vue?vue&type=script&setup=true&lang.ts
|
|
6
6
|
var te = ["data-card-id", "aria-label"], ne = { class: "nb-blueprint-card__ports nb-blueprint-card__ports--left" }, re = ["title"], ie = [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`./chunk-D-qHiVGv.cjs`);const e=require(`./composables/useReducedMotion.composable.cjs`),t=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),n=require(`./Blueprint.context-C_y0TS6a.cjs`);let r=require(`vue`);var i=[`data-card-id`,`aria-label`],a={class:`nb-blueprint-card__ports nb-blueprint-card__ports--left`},o=[`title`],s=[`title`,`aria-label`,`onMousedown`,`onMouseup`,`onKeydown`],c=[`data-port`,`data-port-data-type`],l={key:0,class:`nb-blueprint-card__port-label`},u={class:`nb-blueprint-card__inner`},d={class:`nb-blueprint-card__body`},f={class:`nb-blueprint-card__header`},p=[`title`,`aria-label`,`aria-expanded`],m={class:`nb-blueprint-card__title-group`},h={class:`nb-blueprint-card__name`},g={key:0,class:`nb-blueprint-card__tag`},_=[`aria-label`],v=[`checked`,`aria-label`],ee=[`aria-label`],te={key:0,class:`nb-blueprint-card__preview`},ne={key:1,class:`nb-blueprint-card__params`},re={class:`nb-blueprint-card__row-label`},ie={class:`nb-blueprint-card__row-value`},ae={key:0,class:`nb-blueprint-card__row-unit`},oe={key:2,class:`nb-blueprint-card__content`},se={class:`nb-blueprint-card__ports nb-blueprint-card__ports--right`},ce=[`title`],le=[`title`,`aria-label`,`onMousedown`,`onMouseup`,`onKeydown`],ue=[`data-port`,`data-port-data-type`],de={key:0,class:`nb-blueprint-card__port-label`},fe=320,pe=1,me=10,y=(0,r.defineComponent)({__name:`BlueprintCard`,props:{id:{},title:{},color:{default:void 0},enabled:{type:Boolean,default:!0},selected:{type:Boolean,default:!1},category:{default:``},ports:{default:()=>[]},connectedPorts:{default:()=>[]},activePorts:{default:()=>[]},x:{default:0},y:{default:0},removable:{type:Boolean,default:!1},collapsed:{type:Boolean,default:!1},status:{default:`none`},preview:{default:``},parameters:{default:()=>[]},showPortLabels:{type:[String,Boolean],default:!1},portLevels:{default:()=>({})},density:{default:void 0}},emits:[`select`,`toggle`,`remove`,`toggle-collapse`,`port-mousedown`,`port-mouseup`],setup(t,{emit:y}){let b=t,x=y,S=(0,r.inject)(n.t,null);function C(e){x(`port-mousedown`,e),S?.onPortDown(e)}function w(e){x(`port-mouseup`,e),S?.onPortUp(e)}function T(e){S?.dragOrigin?.value?w(e):C(e)}function E(e,t){if(e.key===`Enter`||e.key===` `){e.preventDefault(),e.stopPropagation(),T(t);return}e.key===`Escape`&&S?.dragOrigin?.value&&(e.preventDefault(),e.stopPropagation(),S.cancelPortDrag?.())}let D=(0,r.computed)(()=>b.density??S?.density?.value??`default`),O=(0,r.computed)(()=>!!S?.dragOrigin?.value);function k(e,t){return!e||!t||e===`any`||t===`any`||e===t?!0:e.split(`:`)[0]===t.split(`:`)[0]}function A(e,t){let n=S?.dragOrigin?.value;return!n||n.nodeId===b.id&&n.portId===e.portId?!1:n.nodeId!==b.id&&n.type!==t&&k(n.dataType,e.port.dataType)?`nb-blueprint-card__port--target-valid`:`nb-blueprint-card__port--target-invalid`}let j=e.useReducedMotion(),M=(0,r.ref)(new Set),N=new Map;(0,r.watch)(()=>b.activePorts,(e,t)=>{if(j.value)return;let n=new Set(t??[]);for(let t of e??[])n.has(t)||(M.value=new Set(M.value).add(t),clearTimeout(N.get(t)),N.set(t,setTimeout(()=>{let e=new Set(M.value);e.delete(t),M.value=e,N.delete(t)},fe)))},{deep:!0}),(0,r.onScopeDispose)(()=>{for(let e of N.values())clearTimeout(e);N.clear()});function P(e){return typeof b.portLevels?.[e]==`number`}function F(e){let t={"--pin-color":Ee(e.port)},n=b.portLevels?.[e.portId];return typeof n==`number`&&(t[`--pin-level`]=`${(Math.max(0,Math.min(1,n))*100).toFixed(1)}%`),t}let I={valid:`Valid`,warning:`Warning`,error:`Error`};function L(e,t){let n=K(e.portId)?`connected`:`not connected`;return`${J(e)}, ${t}, ${n}`}let R=(0,r.computed)(()=>{let e=[b.title];return b.category&&e.push(b.category),b.status&&b.status!==`none`&&e.push(I[b.status]),e.push(b.enabled?`enabled`:`disabled`),e.join(`, `)}),z={ArrowLeft:[-1,0],ArrowRight:[1,0],ArrowUp:[0,-1],ArrowDown:[0,1]};function he(e){let t=z[e.key];if(!t||!S?.nudge)return;e.preventDefault();let n=e.shiftKey?me:pe;S.nudge(b.id,t[0]*n,t[1]*n)}function ge(e){return e.showLabel===void 0?b.showPortLabels===`both`?!0:b.showPortLabels===`left`?e.type===`input`:b.showPortLabels===`right`?e.type===`output`:!1:e.showLabel}function B(e){let t=[];for(let n of b.ports){if(n.type!==e)continue;let r=ge(n);if(n.channels&&n.channels.length>0)for(let e of n.channels)t.push({key:`${n.id}/${e.id}`,port:n,portId:`${n.id}/${e.id}`,channel:e,showLabel:r});else t.push({key:n.id,port:n,portId:n.id,showLabel:r})}return t}let V=(0,r.computed)(()=>B(`input`)),H=(0,r.computed)(()=>B(`output`)),_e=(0,r.computed)(()=>Math.max(V.value.length,H.value.length,1)),U=(0,r.computed)(()=>({left:V.value.some(e=>e.showLabel),right:H.value.some(e=>e.showLabel)})),ve=(0,r.computed)(()=>{let e=b.category||``;return!b.enabled&&e?`${e} · off`:e}),ye=(0,r.computed)(()=>{let e=b.color;if(!e||e.startsWith(`var(`))return`rgba(139, 124, 255, 0.18)`;if(e.startsWith(`#`)&&(e.length===7||e.length===4)){let t=e.length===4?`#${e[1]}${e[1]}${e[2]}${e[2]}${e[3]}${e[3]}`:e;return`rgba(${parseInt(t.slice(1,3),16)}, ${parseInt(t.slice(3,5),16)}, ${parseInt(t.slice(5,7),16)}, 0.18)`}return`rgba(139, 124, 255, 0.18)`}),W=(0,r.computed)(()=>new Set(b.connectedPorts)),G=(0,r.computed)(()=>new Set(b.activePorts));function K(e){return W.value.has(e)}function q(e){return G.value.has(e)}let be=(0,r.computed)(()=>V.value.some(e=>W.value.has(e.portId))),xe=(0,r.computed)(()=>V.value.some(e=>G.value.has(e.portId))),Se=(0,r.computed)(()=>H.value.some(e=>W.value.has(e.portId))),Ce=(0,r.computed)(()=>H.value.some(e=>G.value.has(e.portId)));function J(e){return e.channel?`${e.port.label} . ${e.channel.label}`:e.port.label}function Y(e){return e.channel?e.channel.label:e.port.label}let X={geometry:`#6366f1`,celestial:`#f97316`,lighting:`#f59e0b`,effect:`#a855f7`,surface:`#3b82f6`,audio:`#22c55e`,"audio:mono":`#22c55e`,"audio:stereo":`#10b981`,"audio:bus":`#059669`,midi:`#a855f7`,"midi:rechannelized":`#9333ea`,control:`#94a3b8`,entity:`#ec4899`,number:`#94a3b8`,vector3:`#38bdf8`,color:`#fb923c`,asset:`#a78bfa`,any:`#64748b`},we={geometry:`pill`,celestial:`pill`,lighting:`pill`,effect:`pill`,surface:`pill`,audio:`pill`,"audio:mono":`pill`,"audio:stereo":`pill`,"audio:bus":`pill`,midi:`pill`,"midi:rechannelized":`pill`,control:`pill`,entity:`pill`,number:`pill`,vector3:`pill`,color:`pill`,asset:`pill`,any:`pill`},Te={geometry:`analog`,celestial:`analog`,lighting:`analog`,effect:`analog`,surface:`analog`,audio:`analog`,"audio:mono":`analog`,"audio:stereo":`analog`,"audio:bus":`analog`,midi:`digital`,"midi:rechannelized":`digital`,control:`digital`,entity:`digital`,number:`analog`,vector3:`analog`,color:`digital`,asset:`digital`,any:`analog`};function Ee(e){return e.color??X[e.dataType??`any`]??X.any}function Z(e){return e.shape??we[e.dataType??`any`]??`pill`}function Q(e){return e.size??`md`}function $(e){return e.signal??Te[e.dataType??`any`]??`analog`}return(e,n)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{class:(0,r.normalizeClass)([`nb-blueprint-card`,[`nb-blueprint-card--density-${D.value}`,{"nb-blueprint-card--selected":t.selected,"nb-blueprint-card--disabled":!t.enabled,"nb-blueprint-card--collapsed":t.collapsed,"nb-blueprint-card--has-category":!!t.category,"nb-blueprint-card--has-port-labels-left":U.value.left,"nb-blueprint-card--has-port-labels-right":U.value.right,"nb-blueprint-card--dragging-wire":O.value}]]),"data-card-id":t.id,style:(0,r.normalizeStyle)({"--nb-card-color":t.color||`var(--nb-c-primary)`,"--nb-card-glow":ye.value,"--nb-blueprint-port-count":_e.value}),tabindex:`0`,role:`group`,"aria-roledescription":`Graph node`,"aria-label":R.value,onMousedown:n[7]||=n=>e.$emit(`select`,t.id),onFocus:n[8]||=n=>e.$emit(`select`,t.id),onKeydown:he},[(0,r.createElementVNode)(`div`,a,[t.collapsed&&V.value.length>0?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:0,class:(0,r.normalizeClass)([`nb-blueprint-card__port-combined nb-blueprint-card__port-combined--left`,{"nb-blueprint-card__port-combined--connected":be.value,"nb-blueprint-card__port-combined--active":xe.value}]),title:`${V.value.length} input${V.value.length===1?``:`s`}`},null,10,o)):(0,r.createCommentVNode)(``,!0),((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(V.value,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:e.key,class:`nb-blueprint-card__port-slot`},[(0,r.createElementVNode)(`button`,{type:`button`,class:`nb-blueprint-card__port-hit`,title:J(e),"aria-label":L(e,`input`),onMousedown:(0,r.withModifiers)(n=>C({nodeId:t.id,portId:e.portId,type:`input`,dataType:e.port.dataType}),[`stop`]),onMouseup:(0,r.withModifiers)(n=>w({nodeId:t.id,portId:e.portId,type:`input`,dataType:e.port.dataType}),[`stop`]),onKeydown:n=>E(n,{nodeId:t.id,portId:e.portId,type:`input`,dataType:e.port.dataType})},[(0,r.createElementVNode)(`span`,{"data-port":`${t.id}:${e.portId}`,"data-port-data-type":e.port.dataType??`any`,class:(0,r.normalizeClass)([`nb-blueprint-card__port nb-blueprint-card__port--left`,[`nb-blueprint-card__port--${Z(e.port)}`,`nb-blueprint-card__port--size-${Q(e.port)}`,`nb-blueprint-card__port--${$(e.port)}`,e.port.required?`nb-blueprint-card__port--required`:``,e.channel?`nb-blueprint-card__port--channel`:``,K(e.portId)?`nb-blueprint-card__port--connected`:``,q(e.portId)?`nb-blueprint-card__port--active`:``,P(e.portId)?`nb-blueprint-card__port--metered`:``,M.value.has(e.portId)?`nb-blueprint-card__port--ping`:``,A(e,`input`)]]),style:(0,r.normalizeStyle)(F(e))},null,14,c)],40,s),e.showLabel?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,l,(0,r.toDisplayString)(Y(e)),1)):(0,r.createCommentVNode)(``,!0)]))),128))]),(0,r.createElementVNode)(`div`,u,[(0,r.createElementVNode)(`div`,d,[(0,r.createElementVNode)(`div`,f,[(0,r.createElementVNode)(`button`,{type:`button`,class:`nb-blueprint-card__collapse`,title:t.collapsed?`Expand`:`Collapse`,"aria-label":`${t.collapsed?`Expand`:`Collapse`} ${t.title}`,"aria-expanded":!t.collapsed,onMousedown:n[0]||=(0,r.withModifiers)(()=>{},[`stop`]),onClick:n[1]||=(0,r.withModifiers)(n=>e.$emit(`toggle-collapse`,t.id),[`stop`])},[...n[9]||=[(0,r.createElementVNode)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 16 16`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},[(0,r.createElementVNode)(`polyline`,{points:`4 6 8 10 12 6`})],-1)]],40,p),(0,r.createElementVNode)(`div`,m,[(0,r.createElementVNode)(`span`,h,(0,r.toDisplayString)(t.title),1),t.category?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,g,(0,r.toDisplayString)(ve.value),1)):(0,r.createCommentVNode)(``,!0)]),t.status&&t.status!==`none`?((0,r.openBlock)(),(0,r.createElementBlock)(`svg`,{key:0,class:(0,r.normalizeClass)([`nb-blueprint-card__status`,`nb-blueprint-card__status--${t.status}`]),viewBox:`0 0 16 16`,width:`14`,height:`14`,role:`img`,"aria-label":I[t.status]},[(0,r.createElementVNode)(`title`,null,(0,r.toDisplayString)(I[t.status]),1),t.status===`valid`?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:0},[n[10]||=(0,r.createElementVNode)(`circle`,{cx:`8`,cy:`8`,r:`7`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},null,-1),n[11]||=(0,r.createElementVNode)(`polyline`,{points:`4.5 8.2 7 10.5 11.5 5.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},null,-1)],64)):t.status===`warning`?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:1},[n[12]||=(0,r.createElementVNode)(`path`,{d:`M8 1.5 15 14.5 1 14.5 Z`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linejoin":`round`},null,-1),n[13]||=(0,r.createElementVNode)(`line`,{x1:`8`,y1:`6`,x2:`8`,y2:`10`,stroke:`currentColor`,"stroke-width":`1.5`},null,-1),n[14]||=(0,r.createElementVNode)(`circle`,{cx:`8`,cy:`12.2`,r:`0.9`,fill:`currentColor`},null,-1)],64)):((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:2},[n[15]||=(0,r.createElementVNode)(`circle`,{cx:`8`,cy:`8`,r:`7`,fill:`currentColor`},null,-1),n[16]||=(0,r.createElementVNode)(`line`,{x1:`8`,y1:`4.5`,x2:`8`,y2:`9`,stroke:`var(--nb-c-surface)`,"stroke-width":`1.8`},null,-1),n[17]||=(0,r.createElementVNode)(`circle`,{cx:`8`,cy:`11.4`,r:`1`,fill:`var(--nb-c-surface)`},null,-1)],64))],10,_)):(0,r.createCommentVNode)(``,!0),t.enabled===void 0?(0,r.createCommentVNode)(``,!0):((0,r.openBlock)(),(0,r.createElementBlock)(`label`,{key:1,class:`nb-blueprint-card__toggle`,onMousedown:n[3]||=(0,r.withModifiers)(()=>{},[`stop`]),onClick:n[4]||=(0,r.withModifiers)(()=>{},[`stop`])},[(0,r.createElementVNode)(`input`,{type:`checkbox`,checked:t.enabled,"aria-label":`Enable ${t.title}`,onChange:n[2]||=n=>e.$emit(`toggle`,t.id,n.target.checked)},null,40,v),n[18]||=(0,r.createElementVNode)(`span`,{class:`nb-blueprint-card__toggle-track`},null,-1)],32)),t.removable?((0,r.openBlock)(),(0,r.createElementBlock)(`button`,{key:2,type:`button`,class:`nb-blueprint-card__remove`,title:`Remove`,"aria-label":`Remove ${t.title}`,onMousedown:n[5]||=(0,r.withModifiers)(()=>{},[`stop`]),onClick:n[6]||=(0,r.withModifiers)(n=>e.$emit(`remove`,t.id),[`stop`])},` × `,40,ee)):(0,r.createCommentVNode)(``,!0)]),t.collapsed?(0,r.createCommentVNode)(``,!0):((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:0},[t.preview?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,te,(0,r.toDisplayString)(t.preview),1)):(0,r.createCommentVNode)(``,!0),t.parameters&&t.parameters.length?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,ne,[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(t.parameters,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:e.label,class:`nb-blueprint-card__row`},[(0,r.createElementVNode)(`span`,re,(0,r.toDisplayString)(e.label),1),(0,r.createElementVNode)(`span`,ie,[(0,r.createTextVNode)((0,r.toDisplayString)(e.value)+` `,1),e.unit?((0,r.openBlock)(),(0,r.createElementBlock)(`em`,ae,(0,r.toDisplayString)(e.unit),1)):(0,r.createCommentVNode)(``,!0)]),e.bar===void 0?(0,r.createCommentVNode)(``,!0):((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:0,class:`nb-blueprint-card__row-bar`,style:(0,r.normalizeStyle)({"--bar-progress":`${e.bar}%`})},null,4))]))),128))])):(0,r.createCommentVNode)(``,!0),e.$slots.default?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,oe,[(0,r.renderSlot)(e.$slots,`default`,{},void 0,!0)])):(0,r.createCommentVNode)(``,!0)],64))])]),(0,r.createElementVNode)(`div`,se,[t.collapsed&&H.value.length>0?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:0,class:(0,r.normalizeClass)([`nb-blueprint-card__port-combined nb-blueprint-card__port-combined--right`,{"nb-blueprint-card__port-combined--connected":Se.value,"nb-blueprint-card__port-combined--active":Ce.value}]),title:`${H.value.length} output${H.value.length===1?``:`s`}`},null,10,ce)):(0,r.createCommentVNode)(``,!0),((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(H.value,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:e.key,class:`nb-blueprint-card__port-slot`},[(0,r.createElementVNode)(`button`,{type:`button`,class:`nb-blueprint-card__port-hit`,title:J(e),"aria-label":L(e,`output`),onMousedown:(0,r.withModifiers)(n=>C({nodeId:t.id,portId:e.portId,type:`output`,dataType:e.port.dataType}),[`stop`]),onMouseup:(0,r.withModifiers)(n=>w({nodeId:t.id,portId:e.portId,type:`output`,dataType:e.port.dataType}),[`stop`]),onKeydown:n=>E(n,{nodeId:t.id,portId:e.portId,type:`output`,dataType:e.port.dataType})},[(0,r.createElementVNode)(`span`,{"data-port":`${t.id}:${e.portId}`,"data-port-data-type":e.port.dataType??`any`,class:(0,r.normalizeClass)([`nb-blueprint-card__port nb-blueprint-card__port--right`,[`nb-blueprint-card__port--${Z(e.port)}`,`nb-blueprint-card__port--size-${Q(e.port)}`,`nb-blueprint-card__port--${$(e.port)}`,e.channel?`nb-blueprint-card__port--channel`:``,K(e.portId)?`nb-blueprint-card__port--connected`:``,q(e.portId)?`nb-blueprint-card__port--active`:``,P(e.portId)?`nb-blueprint-card__port--metered`:``,M.value.has(e.portId)?`nb-blueprint-card__port--ping`:``,A(e,`output`)]]),style:(0,r.normalizeStyle)(F(e))},null,14,ue)],40,le),e.showLabel?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,de,(0,r.toDisplayString)(Y(e)),1)):(0,r.createCommentVNode)(``,!0)]))),128))])],46,i))}}),b=t.t(y,[[`__scopeId`,`data-v-abebdb9e`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return b}});
|
|
1
|
+
require(`./chunk-D-qHiVGv.cjs`);const e=require(`./composables/useReducedMotion.composable.cjs`),t=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),n=require(`./Blueprint.context-DQAE9pH9.cjs`);let r=require(`vue`);var i=[`data-card-id`,`aria-label`],a={class:`nb-blueprint-card__ports nb-blueprint-card__ports--left`},o=[`title`],s=[`title`,`aria-label`,`onMousedown`,`onMouseup`,`onKeydown`],c=[`data-port`,`data-port-data-type`],l={key:0,class:`nb-blueprint-card__port-label`},u={class:`nb-blueprint-card__inner`},d={class:`nb-blueprint-card__body`},f={class:`nb-blueprint-card__header`},p=[`title`,`aria-label`,`aria-expanded`],m={class:`nb-blueprint-card__title-group`},h={class:`nb-blueprint-card__name`},g={key:0,class:`nb-blueprint-card__tag`},_=[`aria-label`],v=[`checked`,`aria-label`],ee=[`aria-label`],te={key:0,class:`nb-blueprint-card__preview`},ne={key:1,class:`nb-blueprint-card__params`},re={class:`nb-blueprint-card__row-label`},ie={class:`nb-blueprint-card__row-value`},ae={key:0,class:`nb-blueprint-card__row-unit`},oe={key:2,class:`nb-blueprint-card__content`},se={class:`nb-blueprint-card__ports nb-blueprint-card__ports--right`},ce=[`title`],le=[`title`,`aria-label`,`onMousedown`,`onMouseup`,`onKeydown`],ue=[`data-port`,`data-port-data-type`],de={key:0,class:`nb-blueprint-card__port-label`},fe=320,pe=1,me=10,y=(0,r.defineComponent)({__name:`BlueprintCard`,props:{id:{},title:{},color:{default:void 0},enabled:{type:Boolean,default:!0},selected:{type:Boolean,default:!1},category:{default:``},ports:{default:()=>[]},connectedPorts:{default:()=>[]},activePorts:{default:()=>[]},x:{default:0},y:{default:0},removable:{type:Boolean,default:!1},collapsed:{type:Boolean,default:!1},status:{default:`none`},preview:{default:``},parameters:{default:()=>[]},showPortLabels:{type:[String,Boolean],default:!1},portLevels:{default:()=>({})},density:{default:void 0}},emits:[`select`,`toggle`,`remove`,`toggle-collapse`,`port-mousedown`,`port-mouseup`],setup(t,{emit:y}){let b=t,x=y,S=(0,r.inject)(n.t,null);function C(e){x(`port-mousedown`,e),S?.onPortDown(e)}function w(e){x(`port-mouseup`,e),S?.onPortUp(e)}function T(e){S?.dragOrigin?.value?w(e):C(e)}function E(e,t){if(e.key===`Enter`||e.key===` `){e.preventDefault(),e.stopPropagation(),T(t);return}e.key===`Escape`&&S?.dragOrigin?.value&&(e.preventDefault(),e.stopPropagation(),S.cancelPortDrag?.())}let D=(0,r.computed)(()=>b.density??S?.density?.value??`default`),O=(0,r.computed)(()=>!!S?.dragOrigin?.value);function k(e,t){return!e||!t||e===`any`||t===`any`||e===t?!0:e.split(`:`)[0]===t.split(`:`)[0]}function A(e,t){let n=S?.dragOrigin?.value;return!n||n.nodeId===b.id&&n.portId===e.portId?!1:n.nodeId!==b.id&&n.type!==t&&k(n.dataType,e.port.dataType)?`nb-blueprint-card__port--target-valid`:`nb-blueprint-card__port--target-invalid`}let j=e.useReducedMotion(),M=(0,r.ref)(new Set),N=new Map;(0,r.watch)(()=>b.activePorts,(e,t)=>{if(j.value)return;let n=new Set(t??[]);for(let t of e??[])n.has(t)||(M.value=new Set(M.value).add(t),clearTimeout(N.get(t)),N.set(t,setTimeout(()=>{let e=new Set(M.value);e.delete(t),M.value=e,N.delete(t)},fe)))},{deep:!0}),(0,r.onScopeDispose)(()=>{for(let e of N.values())clearTimeout(e);N.clear()});function P(e){return typeof b.portLevels?.[e]==`number`}function F(e){let t={"--pin-color":Ee(e.port)},n=b.portLevels?.[e.portId];return typeof n==`number`&&(t[`--pin-level`]=`${(Math.max(0,Math.min(1,n))*100).toFixed(1)}%`),t}let I={valid:`Valid`,warning:`Warning`,error:`Error`};function L(e,t){let n=K(e.portId)?`connected`:`not connected`;return`${J(e)}, ${t}, ${n}`}let R=(0,r.computed)(()=>{let e=[b.title];return b.category&&e.push(b.category),b.status&&b.status!==`none`&&e.push(I[b.status]),e.push(b.enabled?`enabled`:`disabled`),e.join(`, `)}),z={ArrowLeft:[-1,0],ArrowRight:[1,0],ArrowUp:[0,-1],ArrowDown:[0,1]};function he(e){let t=z[e.key];if(!t||!S?.nudge)return;e.preventDefault();let n=e.shiftKey?me:pe;S.nudge(b.id,t[0]*n,t[1]*n)}function ge(e){return e.showLabel===void 0?b.showPortLabels===`both`?!0:b.showPortLabels===`left`?e.type===`input`:b.showPortLabels===`right`?e.type===`output`:!1:e.showLabel}function B(e){let t=[];for(let n of b.ports){if(n.type!==e)continue;let r=ge(n);if(n.channels&&n.channels.length>0)for(let e of n.channels)t.push({key:`${n.id}/${e.id}`,port:n,portId:`${n.id}/${e.id}`,channel:e,showLabel:r});else t.push({key:n.id,port:n,portId:n.id,showLabel:r})}return t}let V=(0,r.computed)(()=>B(`input`)),H=(0,r.computed)(()=>B(`output`)),_e=(0,r.computed)(()=>Math.max(V.value.length,H.value.length,1)),U=(0,r.computed)(()=>({left:V.value.some(e=>e.showLabel),right:H.value.some(e=>e.showLabel)})),ve=(0,r.computed)(()=>{let e=b.category||``;return!b.enabled&&e?`${e} · off`:e}),ye=(0,r.computed)(()=>{let e=b.color;if(!e||e.startsWith(`var(`))return`rgba(139, 124, 255, 0.18)`;if(e.startsWith(`#`)&&(e.length===7||e.length===4)){let t=e.length===4?`#${e[1]}${e[1]}${e[2]}${e[2]}${e[3]}${e[3]}`:e;return`rgba(${parseInt(t.slice(1,3),16)}, ${parseInt(t.slice(3,5),16)}, ${parseInt(t.slice(5,7),16)}, 0.18)`}return`rgba(139, 124, 255, 0.18)`}),W=(0,r.computed)(()=>new Set(b.connectedPorts)),G=(0,r.computed)(()=>new Set(b.activePorts));function K(e){return W.value.has(e)}function q(e){return G.value.has(e)}let be=(0,r.computed)(()=>V.value.some(e=>W.value.has(e.portId))),xe=(0,r.computed)(()=>V.value.some(e=>G.value.has(e.portId))),Se=(0,r.computed)(()=>H.value.some(e=>W.value.has(e.portId))),Ce=(0,r.computed)(()=>H.value.some(e=>G.value.has(e.portId)));function J(e){return e.channel?`${e.port.label} . ${e.channel.label}`:e.port.label}function Y(e){return e.channel?e.channel.label:e.port.label}let X={geometry:`#6366f1`,celestial:`#f97316`,lighting:`#f59e0b`,effect:`#a855f7`,surface:`#3b82f6`,audio:`#22c55e`,"audio:mono":`#22c55e`,"audio:stereo":`#10b981`,"audio:bus":`#059669`,midi:`#a855f7`,"midi:rechannelized":`#9333ea`,control:`#94a3b8`,entity:`#ec4899`,number:`#94a3b8`,vector3:`#38bdf8`,color:`#fb923c`,asset:`#a78bfa`,any:`#64748b`},we={geometry:`pill`,celestial:`pill`,lighting:`pill`,effect:`pill`,surface:`pill`,audio:`pill`,"audio:mono":`pill`,"audio:stereo":`pill`,"audio:bus":`pill`,midi:`pill`,"midi:rechannelized":`pill`,control:`pill`,entity:`pill`,number:`pill`,vector3:`pill`,color:`pill`,asset:`pill`,any:`pill`},Te={geometry:`analog`,celestial:`analog`,lighting:`analog`,effect:`analog`,surface:`analog`,audio:`analog`,"audio:mono":`analog`,"audio:stereo":`analog`,"audio:bus":`analog`,midi:`digital`,"midi:rechannelized":`digital`,control:`digital`,entity:`digital`,number:`analog`,vector3:`analog`,color:`digital`,asset:`digital`,any:`analog`};function Ee(e){return e.color??X[e.dataType??`any`]??X.any}function Z(e){return e.shape??we[e.dataType??`any`]??`pill`}function Q(e){return e.size??`md`}function $(e){return e.signal??Te[e.dataType??`any`]??`analog`}return(e,n)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{class:(0,r.normalizeClass)([`nb-blueprint-card`,[`nb-blueprint-card--density-${D.value}`,{"nb-blueprint-card--selected":t.selected,"nb-blueprint-card--disabled":!t.enabled,"nb-blueprint-card--collapsed":t.collapsed,"nb-blueprint-card--has-category":!!t.category,"nb-blueprint-card--has-port-labels-left":U.value.left,"nb-blueprint-card--has-port-labels-right":U.value.right,"nb-blueprint-card--dragging-wire":O.value}]]),"data-card-id":t.id,style:(0,r.normalizeStyle)({"--nb-card-color":t.color||`var(--nb-c-primary)`,"--nb-card-glow":ye.value,"--nb-blueprint-port-count":_e.value}),tabindex:`0`,role:`group`,"aria-roledescription":`Graph node`,"aria-label":R.value,onMousedown:n[7]||=n=>e.$emit(`select`,t.id),onFocus:n[8]||=n=>e.$emit(`select`,t.id),onKeydown:he},[(0,r.createElementVNode)(`div`,a,[t.collapsed&&V.value.length>0?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:0,class:(0,r.normalizeClass)([`nb-blueprint-card__port-combined nb-blueprint-card__port-combined--left`,{"nb-blueprint-card__port-combined--connected":be.value,"nb-blueprint-card__port-combined--active":xe.value}]),title:`${V.value.length} input${V.value.length===1?``:`s`}`},null,10,o)):(0,r.createCommentVNode)(``,!0),((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(V.value,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:e.key,class:`nb-blueprint-card__port-slot`},[(0,r.createElementVNode)(`button`,{type:`button`,class:`nb-blueprint-card__port-hit`,title:J(e),"aria-label":L(e,`input`),onMousedown:(0,r.withModifiers)(n=>C({nodeId:t.id,portId:e.portId,type:`input`,dataType:e.port.dataType}),[`stop`]),onMouseup:(0,r.withModifiers)(n=>w({nodeId:t.id,portId:e.portId,type:`input`,dataType:e.port.dataType}),[`stop`]),onKeydown:n=>E(n,{nodeId:t.id,portId:e.portId,type:`input`,dataType:e.port.dataType})},[(0,r.createElementVNode)(`span`,{"data-port":`${t.id}:${e.portId}`,"data-port-data-type":e.port.dataType??`any`,class:(0,r.normalizeClass)([`nb-blueprint-card__port nb-blueprint-card__port--left`,[`nb-blueprint-card__port--${Z(e.port)}`,`nb-blueprint-card__port--size-${Q(e.port)}`,`nb-blueprint-card__port--${$(e.port)}`,e.port.required?`nb-blueprint-card__port--required`:``,e.channel?`nb-blueprint-card__port--channel`:``,K(e.portId)?`nb-blueprint-card__port--connected`:``,q(e.portId)?`nb-blueprint-card__port--active`:``,P(e.portId)?`nb-blueprint-card__port--metered`:``,M.value.has(e.portId)?`nb-blueprint-card__port--ping`:``,A(e,`input`)]]),style:(0,r.normalizeStyle)(F(e))},null,14,c)],40,s),e.showLabel?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,l,(0,r.toDisplayString)(Y(e)),1)):(0,r.createCommentVNode)(``,!0)]))),128))]),(0,r.createElementVNode)(`div`,u,[(0,r.createElementVNode)(`div`,d,[(0,r.createElementVNode)(`div`,f,[(0,r.createElementVNode)(`button`,{type:`button`,class:`nb-blueprint-card__collapse`,title:t.collapsed?`Expand`:`Collapse`,"aria-label":`${t.collapsed?`Expand`:`Collapse`} ${t.title}`,"aria-expanded":!t.collapsed,onMousedown:n[0]||=(0,r.withModifiers)(()=>{},[`stop`]),onClick:n[1]||=(0,r.withModifiers)(n=>e.$emit(`toggle-collapse`,t.id),[`stop`])},[...n[9]||=[(0,r.createElementVNode)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 16 16`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},[(0,r.createElementVNode)(`polyline`,{points:`4 6 8 10 12 6`})],-1)]],40,p),(0,r.createElementVNode)(`div`,m,[(0,r.createElementVNode)(`span`,h,(0,r.toDisplayString)(t.title),1),t.category?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,g,(0,r.toDisplayString)(ve.value),1)):(0,r.createCommentVNode)(``,!0)]),t.status&&t.status!==`none`?((0,r.openBlock)(),(0,r.createElementBlock)(`svg`,{key:0,class:(0,r.normalizeClass)([`nb-blueprint-card__status`,`nb-blueprint-card__status--${t.status}`]),viewBox:`0 0 16 16`,width:`14`,height:`14`,role:`img`,"aria-label":I[t.status]},[(0,r.createElementVNode)(`title`,null,(0,r.toDisplayString)(I[t.status]),1),t.status===`valid`?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:0},[n[10]||=(0,r.createElementVNode)(`circle`,{cx:`8`,cy:`8`,r:`7`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},null,-1),n[11]||=(0,r.createElementVNode)(`polyline`,{points:`4.5 8.2 7 10.5 11.5 5.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},null,-1)],64)):t.status===`warning`?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:1},[n[12]||=(0,r.createElementVNode)(`path`,{d:`M8 1.5 15 14.5 1 14.5 Z`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linejoin":`round`},null,-1),n[13]||=(0,r.createElementVNode)(`line`,{x1:`8`,y1:`6`,x2:`8`,y2:`10`,stroke:`currentColor`,"stroke-width":`1.5`},null,-1),n[14]||=(0,r.createElementVNode)(`circle`,{cx:`8`,cy:`12.2`,r:`0.9`,fill:`currentColor`},null,-1)],64)):((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:2},[n[15]||=(0,r.createElementVNode)(`circle`,{cx:`8`,cy:`8`,r:`7`,fill:`currentColor`},null,-1),n[16]||=(0,r.createElementVNode)(`line`,{x1:`8`,y1:`4.5`,x2:`8`,y2:`9`,stroke:`var(--nb-c-surface)`,"stroke-width":`1.8`},null,-1),n[17]||=(0,r.createElementVNode)(`circle`,{cx:`8`,cy:`11.4`,r:`1`,fill:`var(--nb-c-surface)`},null,-1)],64))],10,_)):(0,r.createCommentVNode)(``,!0),t.enabled===void 0?(0,r.createCommentVNode)(``,!0):((0,r.openBlock)(),(0,r.createElementBlock)(`label`,{key:1,class:`nb-blueprint-card__toggle`,onMousedown:n[3]||=(0,r.withModifiers)(()=>{},[`stop`]),onClick:n[4]||=(0,r.withModifiers)(()=>{},[`stop`])},[(0,r.createElementVNode)(`input`,{type:`checkbox`,checked:t.enabled,"aria-label":`Enable ${t.title}`,onChange:n[2]||=n=>e.$emit(`toggle`,t.id,n.target.checked)},null,40,v),n[18]||=(0,r.createElementVNode)(`span`,{class:`nb-blueprint-card__toggle-track`},null,-1)],32)),t.removable?((0,r.openBlock)(),(0,r.createElementBlock)(`button`,{key:2,type:`button`,class:`nb-blueprint-card__remove`,title:`Remove`,"aria-label":`Remove ${t.title}`,onMousedown:n[5]||=(0,r.withModifiers)(()=>{},[`stop`]),onClick:n[6]||=(0,r.withModifiers)(n=>e.$emit(`remove`,t.id),[`stop`])},` × `,40,ee)):(0,r.createCommentVNode)(``,!0)]),t.collapsed?(0,r.createCommentVNode)(``,!0):((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:0},[t.preview?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,te,(0,r.toDisplayString)(t.preview),1)):(0,r.createCommentVNode)(``,!0),t.parameters&&t.parameters.length?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,ne,[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(t.parameters,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:e.label,class:`nb-blueprint-card__row`},[(0,r.createElementVNode)(`span`,re,(0,r.toDisplayString)(e.label),1),(0,r.createElementVNode)(`span`,ie,[(0,r.createTextVNode)((0,r.toDisplayString)(e.value)+` `,1),e.unit?((0,r.openBlock)(),(0,r.createElementBlock)(`em`,ae,(0,r.toDisplayString)(e.unit),1)):(0,r.createCommentVNode)(``,!0)]),e.bar===void 0?(0,r.createCommentVNode)(``,!0):((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:0,class:`nb-blueprint-card__row-bar`,style:(0,r.normalizeStyle)({"--bar-progress":`${e.bar}%`})},null,4))]))),128))])):(0,r.createCommentVNode)(``,!0),e.$slots.default?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,oe,[(0,r.renderSlot)(e.$slots,`default`,{},void 0,!0)])):(0,r.createCommentVNode)(``,!0)],64))])]),(0,r.createElementVNode)(`div`,se,[t.collapsed&&H.value.length>0?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:0,class:(0,r.normalizeClass)([`nb-blueprint-card__port-combined nb-blueprint-card__port-combined--right`,{"nb-blueprint-card__port-combined--connected":Se.value,"nb-blueprint-card__port-combined--active":Ce.value}]),title:`${H.value.length} output${H.value.length===1?``:`s`}`},null,10,ce)):(0,r.createCommentVNode)(``,!0),((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(H.value,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:e.key,class:`nb-blueprint-card__port-slot`},[(0,r.createElementVNode)(`button`,{type:`button`,class:`nb-blueprint-card__port-hit`,title:J(e),"aria-label":L(e,`output`),onMousedown:(0,r.withModifiers)(n=>C({nodeId:t.id,portId:e.portId,type:`output`,dataType:e.port.dataType}),[`stop`]),onMouseup:(0,r.withModifiers)(n=>w({nodeId:t.id,portId:e.portId,type:`output`,dataType:e.port.dataType}),[`stop`]),onKeydown:n=>E(n,{nodeId:t.id,portId:e.portId,type:`output`,dataType:e.port.dataType})},[(0,r.createElementVNode)(`span`,{"data-port":`${t.id}:${e.portId}`,"data-port-data-type":e.port.dataType??`any`,class:(0,r.normalizeClass)([`nb-blueprint-card__port nb-blueprint-card__port--right`,[`nb-blueprint-card__port--${Z(e.port)}`,`nb-blueprint-card__port--size-${Q(e.port)}`,`nb-blueprint-card__port--${$(e.port)}`,e.channel?`nb-blueprint-card__port--channel`:``,K(e.portId)?`nb-blueprint-card__port--connected`:``,q(e.portId)?`nb-blueprint-card__port--active`:``,P(e.portId)?`nb-blueprint-card__port--metered`:``,M.value.has(e.portId)?`nb-blueprint-card__port--ping`:``,A(e,`output`)]]),style:(0,r.normalizeStyle)(F(e))},null,14,ue)],40,le),e.showLabel?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,de,(0,r.toDisplayString)(Y(e)),1)):(0,r.createCommentVNode)(``,!0)]))),128))])],46,i))}}),b=t.t(y,[[`__scopeId`,`data-v-abebdb9e`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return b}});
|
|
@@ -3,7 +3,7 @@ import { t } from "./EmptyState-CwMG-NeI.js";
|
|
|
3
3
|
import { t as n } from "./Button-Cw4D6w9K.js";
|
|
4
4
|
import { t as r } from "./Spinner-DpldXeXq.js";
|
|
5
5
|
import { t as i } from "./Skeleton-3N9uC9k_.js";
|
|
6
|
-
import { t as a } from "./NotificationCenterItem-
|
|
6
|
+
import { t as a } from "./NotificationCenterItem-CknMkJUp.js";
|
|
7
7
|
import { Fragment as o, Teleport as s, Transition as c, computed as l, createBlock as u, createCommentVNode as d, createElementBlock as f, createElementVNode as p, createSlots as ee, createTextVNode as te, createVNode as m, defineComponent as h, mergeProps as ne, nextTick as g, normalizeClass as re, normalizeStyle as _, onBeforeUnmount as ie, openBlock as v, ref as y, renderList as ae, renderSlot as b, toDisplayString as x, unref as oe, useId as se, useSlots as ce, watch as S, withCtx as C } from "vue";
|
|
8
8
|
import { regular as le } from "@nubisco/ui/icons/warning-circle";
|
|
9
9
|
import * as ue from "@nubisco/ui/icons/bell";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`./chunk-D-qHiVGv.cjs`),t=require(`./Icon-C8R_r_In.cjs`),n=require(`./EmptyState-Cz91HAKF.cjs`),r=require(`./Button-D-XSNjSL.cjs`),i=require(`./Spinner-Cwlskvjj.cjs`),a=require(`./Skeleton-DEzKdU7W.cjs`),o=require(`./NotificationCenterItem-BXj2X04e.cjs`);let s=require(`vue`),c=require(`@nubisco/ui/icons/warning-circle`),l=require(`@nubisco/ui/icons/bell`);l=e.n(l);var u={key:0,class:`nb-notification-center__badge`,"aria-hidden":`true`},d=[`aria-describedby`,`aria-busy`],f={class:`nb-notification-center__header`},p={class:`nb-notification-center__sr`,role:`status`},ee={class:`nb-notification-center__stale-text`},te={class:`nb-notification-center__sr`},ne=[`tabindex`],re={key:4,class:`nb-notification-center__empty`},ie={key:5,class:`nb-notification-center__footer`},m=new Set,h=8,g=8,_=96,v=88,y=200;function ae(e,{align:t,width:n,maxHeight:r,viewport:i}){let a=t===`start`?e.left:e.left+e.width-n,o=Math.min(Math.max(a,g),Math.max(g,i.width-n-g)),s=e.top+e.height,c=i.height-s-h-g,l=e.top-h-g,u=c<y&&l>c?`top`:`bottom`,d=Math.max(v,u===`top`?l:c),f=Math.max(v,Math.min(r,d-_)),p=Math.min(r+_,d);return{top:u===`top`?Math.max(g,e.top-h-p):s+h,left:o,side:u,maxListHeight:f}}function oe(e,t){return e.left<=t.width&&e.left+e.width>=0&&e.top<=t.height&&e.top+e.height>=0}var b=(0,s.defineComponent)({__name:`NotificationCenter`,props:{items:{default:()=>[]},unreadCount:{default:void 0},itemCount:{default:void 0},open:{type:Boolean,default:void 0},label:{default:`Notifications`},markAllLabel:{default:`Mark all as read`},markAllPendingLabel:{default:`Marking all as read`},markAllPending:{type:Boolean,default:!1},emptyTitle:{default:`No notifications`},emptyDescription:{default:`New activity shows up here.`},loadingLabel:{default:`Loading notifications`},loading:{type:Boolean,default:!1},error:{type:Boolean,default:!1},errorTitle:{default:`Could not load notifications`},errorDescription:{default:`The request failed. Nothing has been lost.`},errorStaleLabel:{default:`These may be out of date.`},retryLabel:{default:`Try again`},showRetry:{type:Boolean,default:!0},maxCount:{default:99},width:{default:360},maxHeight:{default:384},align:{default:`end`},showMarkAll:{type:Boolean,default:!0},interactive:{type:Boolean,default:!0},closeOnSelect:{type:Boolean,default:!0},closeOnNavigate:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},icon:{default:void 0},locale:{default:void 0},unreadLabel:{default:`Unread`},readLabel:{default:`Read`},formatUnread:{type:Function,default:e=>e===1?`1 unread`:`${e} unread`}},emits:[`update:open`,`open`,`close`,`select`,`mark-all-read`,`retry`],setup(e,{expose:h,emit:g}){let _=e,v=(0,s.computed)(()=>_.icon??l),y=g,b=(0,s.useSlots)(),x=`nb-notification-center-${(0,s.useId)()}`,S=`${x}-title`,se=`${x}-trigger`,C=`${x}-error`,w=(0,s.ref)(null),ce=(0,s.ref)(null),T=(0,s.ref)(null),E=(0,s.ref)(null),le=(0,s.ref)(!1),D=(0,s.computed)(()=>_.open===void 0?le.value:_.open),O=(0,s.computed)(()=>typeof _.unreadCount==`number`?Math.max(0,_.unreadCount):_.items.filter(e=>!e.read).length),ue=(0,s.computed)(()=>O.value>_.maxCount?`${_.maxCount}+`:String(O.value)),de=(0,s.computed)(()=>O.value>0?`${_.label}, ${_.formatUnread(O.value)}`:_.label),fe=(0,s.computed)(()=>{if(typeof _.itemCount==`number`)return Math.max(0,_.itemCount);if(!b.default)return _.items.length}),pe=(0,s.computed)(()=>(fe.value??0)>0),k=(0,s.computed)(()=>{if(_.loading)return`loading`;let e=fe.value;return _.error&&(e===void 0||e===0)?`error`:e===void 0||e>0?`list`:`empty`}),A=(0,s.computed)(()=>_.error&&!_.loading&&k.value===`list`&&pe.value);(0,s.ref)(!1),(0,s.watch)(()=>[D.value,!!b.default,_.itemCount],([e,t,n])=>{},{immediate:!0});function j(){y(`retry`)}let M=(0,s.computed)(()=>({id:se,"aria-haspopup":`dialog`,"aria-expanded":D.value?`true`:`false`,"aria-controls":D.value?x:void 0,"aria-label":de.value,disabled:_.disabled||void 0})),N=(0,s.computed)(()=>({type:`button`,disabled:O.value===0&&!_.markAllPending,"aria-disabled":_.markAllPending?`true`:void 0,"aria-busy":_.markAllPending?`true`:void 0,onClick:Oe})),me=(0,s.computed)(()=>A.value||k.value===`error`?C:void 0);function P(e){if(!e){T.value=null;return}let t=e instanceof HTMLElement?e:e.$el;T.value=t instanceof HTMLElement?t:null}let F=(0,s.ref)({top:0,left:0,side:`bottom`,maxListHeight:_.maxHeight});function I(){return{width:window.innerWidth,height:window.innerHeight}}function L(){let e=w.value?.getBoundingClientRect();e&&(F.value=ae(e,{align:_.align,width:_.width,maxHeight:_.maxHeight,viewport:I()}))}let he=(0,s.computed)(()=>({top:`${Math.round(F.value.top)}px`,left:`${Math.round(F.value.left)}px`,width:`${_.width}px`})),R=(0,s.computed)(()=>({maxHeight:`${Math.round(F.value.maxListHeight)}px`})),ge=(0,s.computed)(()=>({"nb-notification-center__panel--start":_.align===`start`,"nb-notification-center__panel--above":F.value.side===`top`}));function z(e){_.open===void 0&&(le.value=e),y(`update:open`,e)}function B(){_.disabled||D.value||(L(),z(!0),y(`open`))}function V(e={}){if(!D.value)return;let t=E.value?.contains(document.activeElement);z(!1),y(`close`),(e.restoreFocus??t)&&(0,s.nextTick)(H)}function H(){let e=T.value;if(e?.isConnected){e.focus();return}(w.value?.querySelector(J))?.focus()}function U(){D.value?V({restoreFocus:!0}):B()}let W=(0,s.ref)(0),_e=new Set([`button`,`link`,`menuitem`,`option`]);function ve(e){if(e.tagName===`BUTTON`)return!e.hasAttribute(`disabled`);if(e.tagName===`A`)return e.hasAttribute(`href`);let t=e.getAttribute(`role`);return t!==null&&_e.has(t)}function G(){return E.value?Array.from(E.value.querySelectorAll(`[data-nb-notification-item]`)).filter(e=>!!ve(e)):[]}let ye=(0,s.ref)(void 0);function be(e){let t=ce.value;ye.value=t&&t.childElementCount>0&&e.length===0?0:void 0}function K(e){let t=G();be(t),t.length&&(W.value=Math.min(Math.max(e,0),t.length-1),t.forEach((e,t)=>{e.setAttribute(`tabindex`,t===W.value?`0`:`-1`)}))}function q(e){let t=G();if(!t.length)return!1;let n=Math.min(Math.max(e,0),t.length-1);return K(n),t[n]?.focus(),!0}function xe(e){let t=e.target?.closest(`[data-nb-notification-item]`);if(!t)return;let n=G().indexOf(t);n>=0&&K(n)}let J=`a[href]:not([tabindex="-1"]), button:not([disabled]):not([tabindex="-1"]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex="0"]`;function Se(e){return!!e?.closest?.(`input, textarea, select, [contenteditable=""], [contenteditable="true"]`)}function Ce(e){let t=G(),n=e.target?.closest(`[data-nb-notification-item]`),r=n?t.indexOf(n):-1;if(e.key===`Escape`){if(!we(e))return;e.preventDefault(),e.stopPropagation(),V({restoreFocus:!0});return}if(e.key===`Tab`){Te(e);return}if(!Se(e.target))switch(e.key){case`ArrowDown`:q(r<0?0:r+1)&&e.preventDefault();break;case`ArrowUp`:q(r<0?t.length-1:r-1)&&e.preventDefault();break;case`Home`:r>=0&&(e.preventDefault(),q(0));break;case`End`:r>=0&&(e.preventDefault(),q(t.length-1));break;default:break}}function we(e){if(e.defaultPrevented)return!1;let t=(e.target??document.activeElement)?.closest?.(`[aria-modal="true"]`);return!(t&&t!==E.value)}function Te(e){let t=E.value;if(!t)return;let n=Array.from(t.querySelectorAll(J)),r=document.activeElement,i=n[0],a=n[n.length-1],o=!n.length||r===i||!t.contains(r),c=!n.length||r===a;if(e.shiftKey?!o:!c)return;e.preventDefault();let l=e.shiftKey?T.value:Ee();V({restoreFocus:!1}),(0,s.nextTick)(()=>{l?.isConnected?l.focus():H()})}function Ee(){let e=T.value;if(!e)return null;let t=Array.from(document.querySelectorAll(J)).filter(e=>!E.value?.contains(e)).filter(e=>e.tabIndex>=0),n=t.indexOf(e);return n<0?null:t[n+1]??null}function De(e,t){y(`select`,e,t),_.closeOnSelect&&V({restoreFocus:!1})}function Y(e){if(!b.default)return;let t=e.target?.closest(`[data-nb-notification-item]`);if(t&&ve(t)){if(e.type===`keydown`){let n=e.key;if(n!==`Enter`&&n!==` `||t.tagName===`BUTTON`||t.tagName===`A`)return;e.preventDefault()}y(`select`,null,e),_.closeOnSelect&&V({restoreFocus:!1})}}function Oe(){_.markAllPending||y(`mark-all-read`)}function ke(e){let t=e.target;w.value?.contains(t)||E.value?.contains(t)||V({restoreFocus:!1})}function Ae(e){e.key===`Escape`&&(E.value?.contains(document.activeElement)||we(e)&&V({restoreFocus:w.value?.contains(document.activeElement)??!1}))}let X=0;function Z(){!D.value||X||(X=requestAnimationFrame(()=>{X=0,Me()}))}function je(){X&&=(cancelAnimationFrame(X),0)}function Me(){if(!D.value)return;let e=w.value?.getBoundingClientRect();if(e&&!oe(e,I())){V({restoreFocus:!1});return}L()}function Q(){_.closeOnNavigate&&V({restoreFocus:!1})}function Ne(){return window.navigation}function Pe(){document.addEventListener(`mousedown`,ke),document.addEventListener(`keydown`,Ae),window.addEventListener(`resize`,Z),window.addEventListener(`scroll`,Z,!0),window.addEventListener(`popstate`,Q),window.addEventListener(`hashchange`,Q),Ne()?.addEventListener(`navigate`,Q)}function Fe(){je(),document.removeEventListener(`mousedown`,ke),document.removeEventListener(`keydown`,Ae),window.removeEventListener(`resize`,Z),window.removeEventListener(`scroll`,Z,!0),window.removeEventListener(`popstate`,Q),window.removeEventListener(`hashchange`,Q),Ne()?.removeEventListener(`navigate`,Q)}let $=()=>V({restoreFocus:!1});return(0,s.watch)(D,e=>{if(e){for(let e of[...m])e!==$&&e();m.add($),Pe(),(0,s.nextTick)(()=>{L(),K(0),q(0)||E.value?.focus()})}else m.delete($),Fe(),W.value=0}),(0,s.watch)(()=>[_.items.length,k.value],()=>{D.value&&(0,s.nextTick)(()=>K(W.value))}),(0,s.onBeforeUnmount)(()=>{Fe(),m.delete($);let e=E.value;e?.isConnected&&e.remove()}),h({show:B,close:V,toggle:U,isOpen:D,unreadCount:O}),(l,m)=>((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{ref_key:`rootRef`,ref:w,class:`nb-notification-center`},[(0,s.renderSlot)(l.$slots,`trigger`,{open:D.value,toggle:U,show:B,close:V,unreadCount:O.value,badge:ue.value,panelId:x,triggerProps:M.value,setTriggerRef:P},()=>[(0,s.createElementVNode)(`button`,(0,s.mergeProps)({ref:P,type:`button`,class:[`nb-notification-center__trigger`,{"nb-notification-center__trigger--active":D.value}]},M.value,{onClick:U}),[(0,s.createVNode)(t.t,{name:v.value,size:18},null,8,[`name`]),O.value>0?((0,s.openBlock)(),(0,s.createElementBlock)(`span`,u,(0,s.toDisplayString)(ue.value),1)):(0,s.createCommentVNode)(``,!0)],16)]),((0,s.openBlock)(),(0,s.createBlock)(s.Teleport,{to:`body`},[(0,s.createVNode)(s.Transition,{name:`nb-notification-center-pop`},{default:(0,s.withCtx)(()=>[D.value?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{key:0,id:x,ref_key:`panelRef`,ref:E,class:(0,s.normalizeClass)([`nb-notification-center__panel`,ge.value]),style:(0,s.normalizeStyle)(he.value),role:`dialog`,tabindex:`-1`,"aria-labelledby":S,"aria-describedby":me.value,"aria-busy":e.loading?`true`:void 0,onKeydown:Ce,onFocusin:xe},[(0,s.createElementVNode)(`div`,f,[(0,s.createElementVNode)(`h2`,{id:S,class:`nb-notification-center__title`},(0,s.toDisplayString)(e.label),1),(0,s.renderSlot)(l.$slots,`header-start`,{close:V,unreadCount:O.value}),(0,s.renderSlot)(l.$slots,`header-actions`,{close:V,unreadCount:O.value,markAllRead:Oe,markAllPending:e.markAllPending,markAllProps:N.value,markAllText:e.markAllPending?e.markAllPendingLabel:e.markAllLabel},()=>[e.showMarkAll?((0,s.openBlock)(),(0,s.createElementBlock)(`button`,(0,s.mergeProps)({key:0,class:`nb-notification-center__mark-all`},N.value),[e.markAllPending?((0,s.openBlock)(),(0,s.createBlock)(i.t,{key:0,size:`xs`,tone:`inherit`,decorative:``})):(0,s.createCommentVNode)(``,!0),(0,s.createTextVNode)(` `+(0,s.toDisplayString)(e.markAllPending?e.markAllPendingLabel:e.markAllLabel),1)],16)):(0,s.createCommentVNode)(``,!0)])]),(0,s.createElementVNode)(`span`,p,(0,s.toDisplayString)(e.markAllPending?e.markAllPendingLabel:``),1),A.value?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{key:0,id:C,class:`nb-notification-center__stale`,role:`status`},[(0,s.createVNode)(t.t,{name:(0,s.unref)(c.regular),size:14,"aria-hidden":`true`},null,8,[`name`]),(0,s.createElementVNode)(`span`,ee,(0,s.toDisplayString)(e.errorStaleLabel),1),e.showRetry?((0,s.openBlock)(),(0,s.createElementBlock)(`button`,{key:0,type:`button`,class:`nb-notification-center__retry`,onClick:j},(0,s.toDisplayString)(e.retryLabel),1)):(0,s.createCommentVNode)(``,!0)])):(0,s.createCommentVNode)(``,!0),k.value===`loading`?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{key:1,class:`nb-notification-center__loading`,role:`status`,style:(0,s.normalizeStyle)(R.value)},[(0,s.createElementVNode)(`span`,te,(0,s.toDisplayString)(e.loadingLabel),1),((0,s.openBlock)(),(0,s.createElementBlock)(s.Fragment,null,(0,s.renderList)(3,e=>(0,s.createVNode)(a.t,{key:e,variant:`text`,type:`body-sm`,lines:2,"last-line-width":`60%`})),64))],4)):k.value===`error`?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{key:2,id:C,class:`nb-notification-center__error`,role:`alert`},[(0,s.renderSlot)(l.$slots,`error`,{retry:j},()=>[(0,s.createVNode)(n.t,{size:`sm`,kind:`error`,title:e.errorTitle,description:e.errorDescription},(0,s.createSlots)({_:2},[e.showRetry?{name:`actions`,fn:(0,s.withCtx)(()=>[(0,s.createVNode)(r.t,{size:`sm`,variant:`secondary`,onClick:j},{default:(0,s.withCtx)(()=>[(0,s.createTextVNode)((0,s.toDisplayString)(e.retryLabel),1)]),_:1})]),key:`0`}:void 0]),1032,[`title`,`description`])])])):k.value===`list`?((0,s.openBlock)(),(0,s.createElementBlock)(`ul`,{key:3,ref_key:`listRef`,ref:ce,class:`nb-notification-center__list`,role:`list`,tabindex:ye.value,style:(0,s.normalizeStyle)(R.value),onClick:Y,onKeydown:Y},[(0,s.renderSlot)(l.$slots,`default`,{close:V,items:e.items},()=>[((0,s.openBlock)(!0),(0,s.createElementBlock)(s.Fragment,null,(0,s.renderList)(e.items,t=>((0,s.openBlock)(),(0,s.createBlock)(o.t,{key:t.id,title:t.title,body:t.body,time:t.time,"time-label":t.timeLabel,read:t.read,variant:t.variant??`neutral`,icon:t.icon,href:t.href,interactive:t.interactive??e.interactive,locale:e.locale,"unread-label":e.unreadLabel,"read-label":e.readLabel,onSelect:e=>De(t,e)},null,8,[`title`,`body`,`time`,`time-label`,`read`,`variant`,`icon`,`href`,`interactive`,`locale`,`unread-label`,`read-label`,`onSelect`]))),128))])],44,ne)):k.value===`empty`?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,re,[(0,s.renderSlot)(l.$slots,`empty`,{},()=>[(0,s.createVNode)(n.t,{size:`sm`,icon:v.value,title:e.emptyTitle,description:e.emptyDescription},null,8,[`icon`,`title`,`description`])])])):(0,s.createCommentVNode)(``,!0),l.$slots.footer?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,ie,[(0,s.renderSlot)(l.$slots,`footer`,{close:V})])):(0,s.createCommentVNode)(``,!0)],46,d)):(0,s.createCommentVNode)(``,!0)]),_:3})]))],512))}});Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return b}});
|
|
1
|
+
const e=require(`./chunk-D-qHiVGv.cjs`),t=require(`./Icon-C8R_r_In.cjs`),n=require(`./EmptyState-Cz91HAKF.cjs`),r=require(`./Button-D-XSNjSL.cjs`),i=require(`./Spinner-Cwlskvjj.cjs`),a=require(`./Skeleton-DEzKdU7W.cjs`),o=require(`./NotificationCenterItem--dJsS8g2.cjs`);let s=require(`vue`),c=require(`@nubisco/ui/icons/warning-circle`),l=require(`@nubisco/ui/icons/bell`);l=e.n(l);var u={key:0,class:`nb-notification-center__badge`,"aria-hidden":`true`},d=[`aria-describedby`,`aria-busy`],f={class:`nb-notification-center__header`},p={class:`nb-notification-center__sr`,role:`status`},ee={class:`nb-notification-center__stale-text`},te={class:`nb-notification-center__sr`},ne=[`tabindex`],re={key:4,class:`nb-notification-center__empty`},ie={key:5,class:`nb-notification-center__footer`},m=new Set,h=8,g=8,_=96,v=88,y=200;function ae(e,{align:t,width:n,maxHeight:r,viewport:i}){let a=t===`start`?e.left:e.left+e.width-n,o=Math.min(Math.max(a,g),Math.max(g,i.width-n-g)),s=e.top+e.height,c=i.height-s-h-g,l=e.top-h-g,u=c<y&&l>c?`top`:`bottom`,d=Math.max(v,u===`top`?l:c),f=Math.max(v,Math.min(r,d-_)),p=Math.min(r+_,d);return{top:u===`top`?Math.max(g,e.top-h-p):s+h,left:o,side:u,maxListHeight:f}}function oe(e,t){return e.left<=t.width&&e.left+e.width>=0&&e.top<=t.height&&e.top+e.height>=0}var b=(0,s.defineComponent)({__name:`NotificationCenter`,props:{items:{default:()=>[]},unreadCount:{default:void 0},itemCount:{default:void 0},open:{type:Boolean,default:void 0},label:{default:`Notifications`},markAllLabel:{default:`Mark all as read`},markAllPendingLabel:{default:`Marking all as read`},markAllPending:{type:Boolean,default:!1},emptyTitle:{default:`No notifications`},emptyDescription:{default:`New activity shows up here.`},loadingLabel:{default:`Loading notifications`},loading:{type:Boolean,default:!1},error:{type:Boolean,default:!1},errorTitle:{default:`Could not load notifications`},errorDescription:{default:`The request failed. Nothing has been lost.`},errorStaleLabel:{default:`These may be out of date.`},retryLabel:{default:`Try again`},showRetry:{type:Boolean,default:!0},maxCount:{default:99},width:{default:360},maxHeight:{default:384},align:{default:`end`},showMarkAll:{type:Boolean,default:!0},interactive:{type:Boolean,default:!0},closeOnSelect:{type:Boolean,default:!0},closeOnNavigate:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},icon:{default:void 0},locale:{default:void 0},unreadLabel:{default:`Unread`},readLabel:{default:`Read`},formatUnread:{type:Function,default:e=>e===1?`1 unread`:`${e} unread`}},emits:[`update:open`,`open`,`close`,`select`,`mark-all-read`,`retry`],setup(e,{expose:h,emit:g}){let _=e,v=(0,s.computed)(()=>_.icon??l),y=g,b=(0,s.useSlots)(),x=`nb-notification-center-${(0,s.useId)()}`,S=`${x}-title`,se=`${x}-trigger`,C=`${x}-error`,w=(0,s.ref)(null),ce=(0,s.ref)(null),T=(0,s.ref)(null),E=(0,s.ref)(null),le=(0,s.ref)(!1),D=(0,s.computed)(()=>_.open===void 0?le.value:_.open),O=(0,s.computed)(()=>typeof _.unreadCount==`number`?Math.max(0,_.unreadCount):_.items.filter(e=>!e.read).length),ue=(0,s.computed)(()=>O.value>_.maxCount?`${_.maxCount}+`:String(O.value)),de=(0,s.computed)(()=>O.value>0?`${_.label}, ${_.formatUnread(O.value)}`:_.label),fe=(0,s.computed)(()=>{if(typeof _.itemCount==`number`)return Math.max(0,_.itemCount);if(!b.default)return _.items.length}),pe=(0,s.computed)(()=>(fe.value??0)>0),k=(0,s.computed)(()=>{if(_.loading)return`loading`;let e=fe.value;return _.error&&(e===void 0||e===0)?`error`:e===void 0||e>0?`list`:`empty`}),A=(0,s.computed)(()=>_.error&&!_.loading&&k.value===`list`&&pe.value);(0,s.ref)(!1),(0,s.watch)(()=>[D.value,!!b.default,_.itemCount],([e,t,n])=>{},{immediate:!0});function j(){y(`retry`)}let M=(0,s.computed)(()=>({id:se,"aria-haspopup":`dialog`,"aria-expanded":D.value?`true`:`false`,"aria-controls":D.value?x:void 0,"aria-label":de.value,disabled:_.disabled||void 0})),N=(0,s.computed)(()=>({type:`button`,disabled:O.value===0&&!_.markAllPending,"aria-disabled":_.markAllPending?`true`:void 0,"aria-busy":_.markAllPending?`true`:void 0,onClick:Oe})),me=(0,s.computed)(()=>A.value||k.value===`error`?C:void 0);function P(e){if(!e){T.value=null;return}let t=e instanceof HTMLElement?e:e.$el;T.value=t instanceof HTMLElement?t:null}let F=(0,s.ref)({top:0,left:0,side:`bottom`,maxListHeight:_.maxHeight});function I(){return{width:window.innerWidth,height:window.innerHeight}}function L(){let e=w.value?.getBoundingClientRect();e&&(F.value=ae(e,{align:_.align,width:_.width,maxHeight:_.maxHeight,viewport:I()}))}let he=(0,s.computed)(()=>({top:`${Math.round(F.value.top)}px`,left:`${Math.round(F.value.left)}px`,width:`${_.width}px`})),R=(0,s.computed)(()=>({maxHeight:`${Math.round(F.value.maxListHeight)}px`})),ge=(0,s.computed)(()=>({"nb-notification-center__panel--start":_.align===`start`,"nb-notification-center__panel--above":F.value.side===`top`}));function z(e){_.open===void 0&&(le.value=e),y(`update:open`,e)}function B(){_.disabled||D.value||(L(),z(!0),y(`open`))}function V(e={}){if(!D.value)return;let t=E.value?.contains(document.activeElement);z(!1),y(`close`),(e.restoreFocus??t)&&(0,s.nextTick)(H)}function H(){let e=T.value;if(e?.isConnected){e.focus();return}(w.value?.querySelector(J))?.focus()}function U(){D.value?V({restoreFocus:!0}):B()}let W=(0,s.ref)(0),_e=new Set([`button`,`link`,`menuitem`,`option`]);function ve(e){if(e.tagName===`BUTTON`)return!e.hasAttribute(`disabled`);if(e.tagName===`A`)return e.hasAttribute(`href`);let t=e.getAttribute(`role`);return t!==null&&_e.has(t)}function G(){return E.value?Array.from(E.value.querySelectorAll(`[data-nb-notification-item]`)).filter(e=>!!ve(e)):[]}let ye=(0,s.ref)(void 0);function be(e){let t=ce.value;ye.value=t&&t.childElementCount>0&&e.length===0?0:void 0}function K(e){let t=G();be(t),t.length&&(W.value=Math.min(Math.max(e,0),t.length-1),t.forEach((e,t)=>{e.setAttribute(`tabindex`,t===W.value?`0`:`-1`)}))}function q(e){let t=G();if(!t.length)return!1;let n=Math.min(Math.max(e,0),t.length-1);return K(n),t[n]?.focus(),!0}function xe(e){let t=e.target?.closest(`[data-nb-notification-item]`);if(!t)return;let n=G().indexOf(t);n>=0&&K(n)}let J=`a[href]:not([tabindex="-1"]), button:not([disabled]):not([tabindex="-1"]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex="0"]`;function Se(e){return!!e?.closest?.(`input, textarea, select, [contenteditable=""], [contenteditable="true"]`)}function Ce(e){let t=G(),n=e.target?.closest(`[data-nb-notification-item]`),r=n?t.indexOf(n):-1;if(e.key===`Escape`){if(!we(e))return;e.preventDefault(),e.stopPropagation(),V({restoreFocus:!0});return}if(e.key===`Tab`){Te(e);return}if(!Se(e.target))switch(e.key){case`ArrowDown`:q(r<0?0:r+1)&&e.preventDefault();break;case`ArrowUp`:q(r<0?t.length-1:r-1)&&e.preventDefault();break;case`Home`:r>=0&&(e.preventDefault(),q(0));break;case`End`:r>=0&&(e.preventDefault(),q(t.length-1));break;default:break}}function we(e){if(e.defaultPrevented)return!1;let t=(e.target??document.activeElement)?.closest?.(`[aria-modal="true"]`);return!(t&&t!==E.value)}function Te(e){let t=E.value;if(!t)return;let n=Array.from(t.querySelectorAll(J)),r=document.activeElement,i=n[0],a=n[n.length-1],o=!n.length||r===i||!t.contains(r),c=!n.length||r===a;if(e.shiftKey?!o:!c)return;e.preventDefault();let l=e.shiftKey?T.value:Ee();V({restoreFocus:!1}),(0,s.nextTick)(()=>{l?.isConnected?l.focus():H()})}function Ee(){let e=T.value;if(!e)return null;let t=Array.from(document.querySelectorAll(J)).filter(e=>!E.value?.contains(e)).filter(e=>e.tabIndex>=0),n=t.indexOf(e);return n<0?null:t[n+1]??null}function De(e,t){y(`select`,e,t),_.closeOnSelect&&V({restoreFocus:!1})}function Y(e){if(!b.default)return;let t=e.target?.closest(`[data-nb-notification-item]`);if(t&&ve(t)){if(e.type===`keydown`){let n=e.key;if(n!==`Enter`&&n!==` `||t.tagName===`BUTTON`||t.tagName===`A`)return;e.preventDefault()}y(`select`,null,e),_.closeOnSelect&&V({restoreFocus:!1})}}function Oe(){_.markAllPending||y(`mark-all-read`)}function ke(e){let t=e.target;w.value?.contains(t)||E.value?.contains(t)||V({restoreFocus:!1})}function Ae(e){e.key===`Escape`&&(E.value?.contains(document.activeElement)||we(e)&&V({restoreFocus:w.value?.contains(document.activeElement)??!1}))}let X=0;function Z(){!D.value||X||(X=requestAnimationFrame(()=>{X=0,Me()}))}function je(){X&&=(cancelAnimationFrame(X),0)}function Me(){if(!D.value)return;let e=w.value?.getBoundingClientRect();if(e&&!oe(e,I())){V({restoreFocus:!1});return}L()}function Q(){_.closeOnNavigate&&V({restoreFocus:!1})}function Ne(){return window.navigation}function Pe(){document.addEventListener(`mousedown`,ke),document.addEventListener(`keydown`,Ae),window.addEventListener(`resize`,Z),window.addEventListener(`scroll`,Z,!0),window.addEventListener(`popstate`,Q),window.addEventListener(`hashchange`,Q),Ne()?.addEventListener(`navigate`,Q)}function Fe(){je(),document.removeEventListener(`mousedown`,ke),document.removeEventListener(`keydown`,Ae),window.removeEventListener(`resize`,Z),window.removeEventListener(`scroll`,Z,!0),window.removeEventListener(`popstate`,Q),window.removeEventListener(`hashchange`,Q),Ne()?.removeEventListener(`navigate`,Q)}let $=()=>V({restoreFocus:!1});return(0,s.watch)(D,e=>{if(e){for(let e of[...m])e!==$&&e();m.add($),Pe(),(0,s.nextTick)(()=>{L(),K(0),q(0)||E.value?.focus()})}else m.delete($),Fe(),W.value=0}),(0,s.watch)(()=>[_.items.length,k.value],()=>{D.value&&(0,s.nextTick)(()=>K(W.value))}),(0,s.onBeforeUnmount)(()=>{Fe(),m.delete($);let e=E.value;e?.isConnected&&e.remove()}),h({show:B,close:V,toggle:U,isOpen:D,unreadCount:O}),(l,m)=>((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{ref_key:`rootRef`,ref:w,class:`nb-notification-center`},[(0,s.renderSlot)(l.$slots,`trigger`,{open:D.value,toggle:U,show:B,close:V,unreadCount:O.value,badge:ue.value,panelId:x,triggerProps:M.value,setTriggerRef:P},()=>[(0,s.createElementVNode)(`button`,(0,s.mergeProps)({ref:P,type:`button`,class:[`nb-notification-center__trigger`,{"nb-notification-center__trigger--active":D.value}]},M.value,{onClick:U}),[(0,s.createVNode)(t.t,{name:v.value,size:18},null,8,[`name`]),O.value>0?((0,s.openBlock)(),(0,s.createElementBlock)(`span`,u,(0,s.toDisplayString)(ue.value),1)):(0,s.createCommentVNode)(``,!0)],16)]),((0,s.openBlock)(),(0,s.createBlock)(s.Teleport,{to:`body`},[(0,s.createVNode)(s.Transition,{name:`nb-notification-center-pop`},{default:(0,s.withCtx)(()=>[D.value?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{key:0,id:x,ref_key:`panelRef`,ref:E,class:(0,s.normalizeClass)([`nb-notification-center__panel`,ge.value]),style:(0,s.normalizeStyle)(he.value),role:`dialog`,tabindex:`-1`,"aria-labelledby":S,"aria-describedby":me.value,"aria-busy":e.loading?`true`:void 0,onKeydown:Ce,onFocusin:xe},[(0,s.createElementVNode)(`div`,f,[(0,s.createElementVNode)(`h2`,{id:S,class:`nb-notification-center__title`},(0,s.toDisplayString)(e.label),1),(0,s.renderSlot)(l.$slots,`header-start`,{close:V,unreadCount:O.value}),(0,s.renderSlot)(l.$slots,`header-actions`,{close:V,unreadCount:O.value,markAllRead:Oe,markAllPending:e.markAllPending,markAllProps:N.value,markAllText:e.markAllPending?e.markAllPendingLabel:e.markAllLabel},()=>[e.showMarkAll?((0,s.openBlock)(),(0,s.createElementBlock)(`button`,(0,s.mergeProps)({key:0,class:`nb-notification-center__mark-all`},N.value),[e.markAllPending?((0,s.openBlock)(),(0,s.createBlock)(i.t,{key:0,size:`xs`,tone:`inherit`,decorative:``})):(0,s.createCommentVNode)(``,!0),(0,s.createTextVNode)(` `+(0,s.toDisplayString)(e.markAllPending?e.markAllPendingLabel:e.markAllLabel),1)],16)):(0,s.createCommentVNode)(``,!0)])]),(0,s.createElementVNode)(`span`,p,(0,s.toDisplayString)(e.markAllPending?e.markAllPendingLabel:``),1),A.value?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{key:0,id:C,class:`nb-notification-center__stale`,role:`status`},[(0,s.createVNode)(t.t,{name:(0,s.unref)(c.regular),size:14,"aria-hidden":`true`},null,8,[`name`]),(0,s.createElementVNode)(`span`,ee,(0,s.toDisplayString)(e.errorStaleLabel),1),e.showRetry?((0,s.openBlock)(),(0,s.createElementBlock)(`button`,{key:0,type:`button`,class:`nb-notification-center__retry`,onClick:j},(0,s.toDisplayString)(e.retryLabel),1)):(0,s.createCommentVNode)(``,!0)])):(0,s.createCommentVNode)(``,!0),k.value===`loading`?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{key:1,class:`nb-notification-center__loading`,role:`status`,style:(0,s.normalizeStyle)(R.value)},[(0,s.createElementVNode)(`span`,te,(0,s.toDisplayString)(e.loadingLabel),1),((0,s.openBlock)(),(0,s.createElementBlock)(s.Fragment,null,(0,s.renderList)(3,e=>(0,s.createVNode)(a.t,{key:e,variant:`text`,type:`body-sm`,lines:2,"last-line-width":`60%`})),64))],4)):k.value===`error`?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{key:2,id:C,class:`nb-notification-center__error`,role:`alert`},[(0,s.renderSlot)(l.$slots,`error`,{retry:j},()=>[(0,s.createVNode)(n.t,{size:`sm`,kind:`error`,title:e.errorTitle,description:e.errorDescription},(0,s.createSlots)({_:2},[e.showRetry?{name:`actions`,fn:(0,s.withCtx)(()=>[(0,s.createVNode)(r.t,{size:`sm`,variant:`secondary`,onClick:j},{default:(0,s.withCtx)(()=>[(0,s.createTextVNode)((0,s.toDisplayString)(e.retryLabel),1)]),_:1})]),key:`0`}:void 0]),1032,[`title`,`description`])])])):k.value===`list`?((0,s.openBlock)(),(0,s.createElementBlock)(`ul`,{key:3,ref_key:`listRef`,ref:ce,class:`nb-notification-center__list`,role:`list`,tabindex:ye.value,style:(0,s.normalizeStyle)(R.value),onClick:Y,onKeydown:Y},[(0,s.renderSlot)(l.$slots,`default`,{close:V,items:e.items},()=>[((0,s.openBlock)(!0),(0,s.createElementBlock)(s.Fragment,null,(0,s.renderList)(e.items,t=>((0,s.openBlock)(),(0,s.createBlock)(o.t,{key:t.id,title:t.title,body:t.body,time:t.time,"time-label":t.timeLabel,read:t.read,variant:t.variant??`neutral`,icon:t.icon,href:t.href,interactive:t.interactive??e.interactive,locale:e.locale,"unread-label":e.unreadLabel,"read-label":e.readLabel,onSelect:e=>De(t,e)},null,8,[`title`,`body`,`time`,`time-label`,`read`,`variant`,`icon`,`href`,`interactive`,`locale`,`unread-label`,`read-label`,`onSelect`]))),128))])],44,ne)):k.value===`empty`?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,re,[(0,s.renderSlot)(l.$slots,`empty`,{},()=>[(0,s.createVNode)(n.t,{size:`sm`,icon:v.value,title:e.emptyTitle,description:e.emptyDescription},null,8,[`icon`,`title`,`description`])])])):(0,s.createCommentVNode)(``,!0),l.$slots.footer?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,ie,[(0,s.renderSlot)(l.$slots,`footer`,{close:V})])):(0,s.createCommentVNode)(``,!0)],46,d)):(0,s.createCommentVNode)(``,!0)]),_:3})]))],512))}});Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return b}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./Size.d-GBIblj2D.cjs`),n=require(`./Label-DtXh4XR5.cjs`),r=require(`./Message-D8ZE4uGZ.cjs`),i=require(`./Grid-DTZTlxd_.cjs`),a=require(`./NumberInput-
|
|
1
|
+
require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./Size.d-GBIblj2D.cjs`),n=require(`./Label-DtXh4XR5.cjs`),r=require(`./Message-D8ZE4uGZ.cjs`),i=require(`./Grid-DTZTlxd_.cjs`),a=require(`./NumberInput-qBJbdvfP.cjs`);let o=require(`vue`);var s={class:`nb-slider__field-box`},c={key:0,class:`nb-slider__inner-header`},l={class:`nb-slider__inner-label`},u={class:`nb-slider__track-row`},d={key:0,class:`nb-slider__track-label`},f={key:1,class:`nb-slider__track-label`},p=(0,o.defineComponent)({__name:`Slider`,props:{modelValue:{},min:{default:0},max:{default:100},step:{default:1},range:{type:Boolean,default:!1},showInput:{type:Boolean,default:!0},showBounds:{type:Boolean,default:!0},name:{},disabled:{type:Boolean,default:!1},required:{type:Boolean},id:{},label:{},error:{},warning:{},helper:{},variant:{default:`default`},size:{default:t.r.Medium}},emits:[`update:modelValue`,`change`],setup(e,{emit:t}){let p=e,m=t,h=(0,o.ref)(null),g=(0,o.ref)(null),_=(0,o.computed)(()=>p.range||p.modelValue===null||p.modelValue===void 0?p.min??0:Array.isArray(p.modelValue)?p.modelValue[0]??p.min??0:p.modelValue),v=(0,o.computed)(()=>!p.range||!Array.isArray(p.modelValue)?p.min??0:p.modelValue[0]??p.min??0),y=(0,o.computed)(()=>!p.range||!Array.isArray(p.modelValue)?p.max??100:p.modelValue[1]??p.max??100),b=(0,o.computed)(()=>{let e=p.step??1;if(!isFinite(e)||e<=0)return 0;let t=String(e),n=t.indexOf(`.`);return n===-1?0:t.length-n-1});function x(e){let t=b.value;return t>0?Number(e.toFixed(t)):Math.round(e)}let S=(0,o.computed)(()=>x(p.range?y.value:_.value));function C(e){let t=p.min??0,n=p.max??100;return n===t?0:(e-t)/(n-t)*100}function w(e){let t=p.min??0,n=p.max??100,r=p.step??1,i=t+e/100*(n-t),a=Math.round(i/r)*r;return Math.max(t,Math.min(n,a))}function T(e){if(!h.value)return 0;let t=h.value.getBoundingClientRect(),n=`touches`in e?e.touches[0].clientX:e.clientX;return Math.max(0,Math.min(100,(n-t.left)/t.width*100))}let E=(0,o.computed)(()=>{if(!p.range)return{left:`0%`,width:`${C(_.value)}%`};let e=C(v.value),t=C(y.value);return{left:`${e}%`,width:`${t-e}%`}});function D(e){m(`update:modelValue`,e)}function O(e,t){m(`update:modelValue`,[e,t])}function k(e){if(e===null)return;let t=p.min??0,n=p.max??100;D(Math.max(t,Math.min(n,e)))}function A(e){if(e===null)return;let t=p.min??0;O(Math.max(t,Math.min(y.value,e)),y.value)}function j(e){if(e===null)return;let t=p.max??100,n=Math.max(v.value,Math.min(t,e));O(v.value,n)}function M(e){if(!p.range)return null;let t=C(v.value),n=C(y.value);return Math.abs(e-t)<=Math.abs(e-n)?`low`:`high`}function N(e){let t=w(e);if(!p.range){D(t);return}if(g.value===`low`)O(Math.min(t,y.value),y.value);else{let e=Math.max(t,v.value);O(v.value,e)}}function P(e){p.disabled||N(T(e))}function F(e){p.disabled||(m(`change`,p.range?[v.value,y.value]:_.value),N(T(e))),z()}function I(e){p.disabled||N(T(e))}function L(e){p.disabled||(m(`change`,p.range?[v.value,y.value]:_.value),N(T(e))),V()}function R(){document.addEventListener(`mousemove`,P),document.addEventListener(`mouseup`,F)}function z(){g.value=null,document.removeEventListener(`mousemove`,P),document.removeEventListener(`mouseup`,F)}function B(){document.addEventListener(`touchmove`,I,{passive:!0}),document.addEventListener(`touchend`,L)}function V(){g.value=null,document.removeEventListener(`touchmove`,I),document.removeEventListener(`touchend`,L)}function H(e){if(p.disabled)return;let t=T(e);g.value=M(t),N(t),R()}function U(e){if(p.disabled)return;let t=T(e);g.value=M(t),N(t),B()}function W(e,t){p.disabled||(g.value=p.range?e:null,R())}function G(e,t){p.disabled||(g.value=p.range?e:null,B())}(0,o.onBeforeUnmount)(()=>{z(),V()});let K=(0,o.computed)(()=>[`nb-slider`,`nb-slider--${p.size}`,`nb-slider--${p.variant}`,{"nb-slider--range":p.range,"nb-slider--disabled":p.disabled,"nb-slider--error":!!p.error,"nb-slider--warning":!p.error&&!!p.warning}]),q=(0,o.computed)(()=>({"nb-slider__track-area--error":!!p.error,"nb-slider__track-area--warning":!p.error&&!!p.warning}));return(t,p)=>((0,o.openBlock)(),(0,o.createElementBlock)(`div`,{class:(0,o.normalizeClass)(K.value)},[e.variant===`default`&&e.label?((0,o.openBlock)(),(0,o.createBlock)(n.t,{key:0,class:`nb-slider__label`},{default:(0,o.withCtx)(()=>[(0,o.createTextVNode)((0,o.toDisplayString)(e.label),1)]),_:1})):(0,o.createCommentVNode)(``,!0),(0,o.createElementVNode)(`div`,s,[e.variant===`fluid`&&e.label?((0,o.openBlock)(),(0,o.createElementBlock)(`div`,c,[(0,o.createElementVNode)(`label`,l,(0,o.toDisplayString)(e.label),1)])):(0,o.createCommentVNode)(``,!0),(0,o.createVNode)(i.t,{dir:`row`,align:`center`,gap:`sm`,class:`nb-slider__row`},{default:(0,o.withCtx)(()=>[e.range&&e.showInput?((0,o.openBlock)(),(0,o.createBlock)(a.t,{key:0,size:e.variant===`fluid`?`sm`:e.size,"model-value":v.value,min:e.min,max:y.value,step:e.step,disabled:e.disabled,class:`nb-slider__input`,"onUpdate:modelValue":A,onChange:A},null,8,[`size`,`model-value`,`min`,`max`,`step`,`disabled`])):(0,o.createCommentVNode)(``,!0),(0,o.createVNode)(i.t,{dir:`col`,justify:`end`,gap:`xs`,class:(0,o.normalizeClass)([`nb-slider__track-area`,q.value]),grow:``},{default:(0,o.withCtx)(()=>[(0,o.createElementVNode)(`div`,u,[e.showBounds?((0,o.openBlock)(),(0,o.createElementBlock)(`span`,d,(0,o.toDisplayString)(e.min),1)):(0,o.createCommentVNode)(``,!0),(0,o.createElementVNode)(`div`,{ref_key:`trackRef`,ref:h,class:`nb-slider__track`,onMousedown:H,onTouchstartPassive:U},[(0,o.createElementVNode)(`div`,{class:`nb-slider__track__fill`,style:(0,o.normalizeStyle)(E.value)},null,4),e.range?((0,o.openBlock)(),(0,o.createElementBlock)(o.Fragment,{key:1},[(0,o.createElementVNode)(`div`,{class:`nb-slider__track__handle nb-slider__track__handle--low`,style:(0,o.normalizeStyle)({left:`${C(v.value)}%`}),onMousedown:p[2]||=(0,o.withModifiers)(e=>W(`low`,e),[`stop`]),onTouchstartPassive:p[3]||=(0,o.withModifiers)(e=>G(`low`,e),[`stop`])},null,36),(0,o.createElementVNode)(`div`,{class:`nb-slider__track__handle nb-slider__track__handle--high`,style:(0,o.normalizeStyle)({left:`${C(y.value)}%`}),onMousedown:p[4]||=(0,o.withModifiers)(e=>W(`high`,e),[`stop`]),onTouchstartPassive:p[5]||=(0,o.withModifiers)(e=>G(`high`,e),[`stop`])},null,36),p[8]||=(0,o.createElementVNode)(`div`,{class:`nb-slider__tick`},null,-1)],64)):((0,o.openBlock)(),(0,o.createElementBlock)(`div`,{key:0,class:`nb-slider__track__handle`,style:(0,o.normalizeStyle)({left:`${C(_.value)}%`}),onMousedown:p[0]||=(0,o.withModifiers)(e=>W(null,e),[`stop`]),onTouchstartPassive:p[1]||=(0,o.withModifiers)(e=>G(null,e),[`stop`])},null,36))],544),e.showBounds?((0,o.openBlock)(),(0,o.createElementBlock)(`span`,f,(0,o.toDisplayString)(e.max),1)):(0,o.createCommentVNode)(``,!0)])]),_:1},8,[`class`]),e.showInput?((0,o.openBlock)(),(0,o.createBlock)(a.t,{key:1,size:e.variant===`fluid`?`sm`:e.size,"model-value":S.value,min:e.range?v.value:e.min,max:e.max,step:e.step,disabled:e.disabled,class:`nb-slider__input`,"onUpdate:modelValue":p[6]||=t=>e.range?j(t):k(t),onChange:p[7]||=t=>e.range?j(t):k(t)},null,8,[`size`,`model-value`,`min`,`max`,`step`,`disabled`])):(0,o.createCommentVNode)(``,!0)]),_:1})]),e.error?((0,o.openBlock)(),(0,o.createBlock)(r.t,{key:1,variant:`error`,class:`nb-slider__message`},{default:(0,o.withCtx)(()=>[(0,o.createTextVNode)((0,o.toDisplayString)(e.error),1)]),_:1})):e.warning?((0,o.openBlock)(),(0,o.createBlock)(r.t,{key:2,variant:`warning`,class:`nb-slider__message`},{default:(0,o.withCtx)(()=>[(0,o.createTextVNode)((0,o.toDisplayString)(e.warning),1)]),_:1})):e.helper?((0,o.openBlock)(),(0,o.createBlock)(r.t,{key:3,variant:`helper`,class:`nb-slider__message`},{default:(0,o.withCtx)(()=>[(0,o.createTextVNode)((0,o.toDisplayString)(e.helper),1)]),_:1})):(0,o.createCommentVNode)(``,!0)],2))}}),m=e.t(p,[[`__scopeId`,`data-v-2eeb00d6`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return m}});
|
|
@@ -3,7 +3,7 @@ import { r as t } from "./Size.d-Bah6vMl3.js";
|
|
|
3
3
|
import { t as n } from "./Label-glcQoGCr.js";
|
|
4
4
|
import { t as r } from "./Message-Ciyc2nN6.js";
|
|
5
5
|
import { t as i } from "./Grid-CgUyhsw4.js";
|
|
6
|
-
import { t as a } from "./NumberInput-
|
|
6
|
+
import { t as a } from "./NumberInput-Bnd9zGie.js";
|
|
7
7
|
import { Fragment as ee, computed as o, createBlock as s, createCommentVNode as c, createElementBlock as l, createElementVNode as u, createTextVNode as d, createVNode as f, defineComponent as p, normalizeClass as m, normalizeStyle as h, onBeforeUnmount as g, openBlock as _, ref as v, toDisplayString as y, withCtx as b, withModifiers as x } from "vue";
|
|
8
8
|
//#region src/components/Slider.vue?vue&type=script&setup=true&lang.ts
|
|
9
9
|
var S = { class: "nb-slider__field-box" }, C = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./composables/useStableId.composable.cjs`),n=require(`./Stepper.context-
|
|
1
|
+
require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./composables/useStableId.composable.cjs`),n=require(`./Stepper.context-OTxRDrqb.cjs`);let r=require(`vue`);var i=[`id`],a=[`aria-label`],o={class:`nb-stepper__announcement`,role:`status`,"aria-live":`polite`},s=(0,r.defineComponent)({__name:`Stepper`,props:{modelValue:{default:void 0},orientation:{default:n.r.Horizontal},size:{default:n.i.Medium},navigable:{type:Boolean,default:!1},furthest:{default:void 0},ariaLabel:{default:void 0},labels:{default:void 0},announce:{type:Boolean,default:!0},id:{default:void 0}},emits:[`update:modelValue`,`change`],setup(e,{emit:s}){let c=e,l=s,u=t.useStableId(c),d=(0,r.ref)(null),f={progress:`Progress`,announcement:`Step {step} of {total}: {label}`,complete:`Complete`,current:`Current step`,incomplete:`Not started`,disabled:`Unavailable`,invalid:`Needs attention`},p=(0,r.computed)(()=>({...f,...c.labels??{}})),m=(0,r.ref)(c.modelValue??0),h=(0,r.computed)(()=>c.modelValue===void 0?m.value:c.modelValue),g=(0,r.ref)(h.value);(0,r.watch)(h,e=>{e>g.value&&(g.value=e)});let _=(0,r.computed)(()=>c.furthest??g.value),v=[],y=(0,r.ref)([]);function b(){let e=v.map((e,t)=>({uid:e.uid,node:e.el(),at:t}));e.sort((e,t)=>!e.node||!t.node?e.at-t.at:e.node.compareDocumentPosition(t.node)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1);let t=e.map(e=>e.uid);(t.length!==y.value.length||t.some((e,t)=>e!==y.value[t]))&&(y.value=t)}function x(e){return v.push(e),b(),()=>{let t=v.findIndex(t=>t.uid===e.uid);t>=0&&v.splice(t,1),b()}}(0,r.onMounted)(b),(0,r.onUpdated)(b);let S=e=>{let t=y.value[e];return v.find(e=>e.uid===t)?.disabled.value??!1};function C(e,t){return!c.navigable||t||e<0||e===h.value?!1:e<=_.value}let w=(0,r.ref)(-1),T=(0,r.computed)(()=>w.value>=0&&C(w.value,S(w.value))?w.value:y.value.findIndex((e,t)=>C(t,S(t)))),E=(0,r.ref)(null);function D(e){let t=e.target;E.value=t;let n=(t?.closest?.(`[data-nb-step]`))?.dataset?.nbStep;if(!n)return;let r=y.value.indexOf(n);r>=0&&(w.value=r)}function O(e){let t=e.relatedTarget;if(t&&d.value?.contains(t))return;if(t){E.value=null;return}let n=e.target;n&&!d.value?.contains(n)&&(E.value=null)}async function k(){let e=E.value;if(!e)return;await(0,r.nextTick)();let t=d.value;if(!t)return;let n=document.activeElement;if(n&&n!==document.body&&t.contains(n))return;if(e.isConnected&&t.contains(e)&&e.matches(`[data-nb-stepper-button]`)){e.focus();return}let i=N();if(!i.length){E.value=null;return}let a=y.value[T.value],o=i.find(e=>e.closest(`[data-nb-step]`)?.dataset.nbStep===a)??i[0];o.focus(),E.value=o}function A(e,t){C(e,t)&&(c.modelValue===void 0&&(m.value=e),l(`update:modelValue`,e),l(`change`,e))}(0,r.provide)(n.t,{current:h,furthest:_,orientation:(0,r.toRef)(c,`orientation`),size:(0,r.toRef)(c,`size`),navigable:(0,r.toRef)(c,`navigable`),labels:p,order:y,tabbable:T,register:x,clickable:C,select:A});let j=(0,r.computed)(()=>[`nb-stepper`,`nb-stepper--${c.orientation}`,`nb-stepper--${c.size}`,{"nb-stepper--navigable":c.navigable}]),M=(0,r.ref)(``);(0,r.watch)(h,e=>{let t=y.value[e],n=v.find(e=>e.uid===t)?.el()??null;if(c.announce){let t=n?.querySelector(`.nb-stepper__label`)?.textContent?.trim()??``;M.value=p.value.announcement.replace(`{step}`,String(e+1)).replace(`{total}`,String(y.value.length)).replace(`{label}`,t).replace(/[:,\-\s]+$/,``)}k();let r=d.value;r&&n&&r.scrollWidth>r.clientWidth&&n.scrollIntoView?.({block:`nearest`,inline:`nearest`})});function N(){return Array.from(d.value?.querySelectorAll(`[data-nb-stepper-button]`)??[])}function P(e){let t=N();if(!t.length)return;let n=t.indexOf(document.activeElement);t[((n<0?0:n+e)+t.length)%t.length]?.focus()}function F(e){let t=N();t.length&&(e===`first`?t[0]:t[t.length-1]).focus()}function I(e){let t=c.orientation===n.r.Horizontal;switch(e.key){case`ArrowRight`:if(!t)return;P(1);break;case`ArrowLeft`:if(!t)return;P(-1);break;case`ArrowDown`:if(t)return;P(1);break;case`ArrowUp`:if(t)return;P(-1);break;case`Home`:F(`first`);break;case`End`:F(`last`);break;default:return}e.preventDefault()}return(t,n)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{id:(0,r.unref)(u),class:(0,r.normalizeClass)(j.value)},[(0,r.createElementVNode)(`ol`,{ref_key:`listRef`,ref:d,class:`nb-stepper__list`,role:`list`,"aria-label":e.ariaLabel||p.value.progress,onKeydown:I,onFocusin:D,onFocusout:O},[(0,r.renderSlot)(t.$slots,`default`,{},void 0,!0)],40,a),(0,r.createElementVNode)(`p`,o,(0,r.toDisplayString)(M.value),1)],10,i))}}),c=e.t(s,[[`__scopeId`,`data-v-40496e58`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return c}});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as e } from "./_plugin-vue_export-helper-O4QQSku4.js";
|
|
2
2
|
import { useStableId as t } from "./composables/useStableId.composable.mjs";
|
|
3
|
-
import { i as n, r, t as i } from "./Stepper.context-
|
|
3
|
+
import { i as n, r, t as i } from "./Stepper.context-DtdxFiTP.js";
|
|
4
4
|
import { computed as a, createElementBlock as o, createElementVNode as s, defineComponent as c, nextTick as l, normalizeClass as u, onMounted as d, onUpdated as f, openBlock as p, provide as m, ref as h, renderSlot as g, toDisplayString as _, toRef as v, unref as y, watch as b } from "vue";
|
|
5
5
|
//#region src/components/Stepper.vue?vue&type=script&setup=true&lang.ts
|
|
6
6
|
var x = ["id"], S = ["aria-label"], C = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`./chunk-D-qHiVGv.cjs`),t=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),n=require(`./Icon-C8R_r_In.cjs`),r=require(`./composables/useStableId.composable.cjs`),i=require(`./Stepper.context-
|
|
1
|
+
const e=require(`./chunk-D-qHiVGv.cjs`),t=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),n=require(`./Icon-C8R_r_In.cjs`),r=require(`./composables/useStableId.composable.cjs`),i=require(`./Stepper.context-OTxRDrqb.cjs`);let a=require(`vue`),o=require(`@nubisco/ui/icons/warning`);o=e.n(o);let s=require(`@nubisco/ui/icons/check`);s=e.n(s);var c=[`data-nb-step`,`data-status`,`data-orientation`,`aria-current`],l={class:`nb-stepper__marker`,"aria-hidden":`true`},u={class:`nb-stepper__text`},d=[`id`],f=[`id`],p=[`id`],m=(0,a.defineComponent)({__name:`StepperStep`,props:{label:{default:``},description:{default:void 0},complete:{type:Boolean,default:!1},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},id:{default:void 0}},setup(e){let t=e,m=r.useStableId(t),h=(0,a.useSlots)(),g=(0,a.inject)(i.t,null),_=(0,a.ref)(null),v=(0,a.computed)(()=>t.disabled),y=g?.register({uid:m,disabled:v,el:()=>_.value});(0,a.onUnmounted)(()=>y?.());let b=(0,a.computed)(()=>g?.order.value.indexOf(m)??-1),x=(0,a.computed)(()=>b.value===g?.current.value),S=(0,a.computed)(()=>b.value<0?1:b.value+1),C=(0,a.computed)(()=>t.disabled?i.n.Disabled:t.invalid?i.n.Invalid:x.value?i.n.Current:t.complete||b.value>=0&&b.value<(g?.current.value??0)?i.n.Complete:i.n.Incomplete),w=(0,a.computed)(()=>g?.labels.value[C.value]??``),T=(0,a.computed)(()=>`${m}-label`),E=(0,a.computed)(()=>`${m}-description`),D=(0,a.computed)(()=>`${m}-status`),O=(0,a.computed)(()=>!!t.description||!!h.description),k=(0,a.computed)(()=>[O.value?E.value:null,D.value].filter(Boolean).join(` `)),A=(0,a.computed)(()=>g?.tabbable.value??-1),j=(0,a.computed)(()=>g?.clickable(b.value,t.disabled)??!1),M=(0,a.computed)(()=>C.value===i.n.Complete?s:C.value===i.n.Invalid?o:null),N=(0,a.computed)(()=>g?.size.value===`sm`?12:14),P=(0,a.computed)(()=>g?.orientation.value??`horizontal`);function F(){g?.select(b.value,t.disabled)}return(t,r)=>((0,a.openBlock)(),(0,a.createElementBlock)(`li`,{ref_key:`rootEl`,ref:_,class:(0,a.normalizeClass)([`nb-stepper__step`,[`nb-stepper__step--${C.value}`,{"nb-stepper__step--clickable":j.value}]]),"data-nb-step":(0,a.unref)(m),"data-status":C.value,"data-orientation":P.value,"aria-current":x.value?`step`:void 0},[((0,a.openBlock)(),(0,a.createBlock)((0,a.resolveDynamicComponent)(j.value?`button`:`div`),(0,a.mergeProps)({id:(0,a.unref)(m),class:`nb-stepper__body`},j.value?{type:`button`,"data-nb-stepper-button":``,tabindex:b.value===A.value?0:-1,"aria-labelledby":T.value,"aria-describedby":k.value}:{},{onClick:F}),{default:(0,a.withCtx)(()=>[(0,a.createElementVNode)(`span`,l,[M.value?((0,a.openBlock)(),(0,a.createBlock)(n.t,{key:0,name:M.value,size:N.value},null,8,[`name`,`size`])):((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:1},[(0,a.createTextVNode)((0,a.toDisplayString)(S.value),1)],64))]),(0,a.createElementVNode)(`span`,u,[(0,a.createElementVNode)(`span`,{id:T.value,class:`nb-stepper__label`},[(0,a.renderSlot)(t.$slots,`label`,{},()=>[(0,a.createTextVNode)((0,a.toDisplayString)(e.label),1)],!0)],8,d),e.description||t.$slots.description?((0,a.openBlock)(),(0,a.createElementBlock)(`span`,{key:0,id:E.value,class:`nb-stepper__description`},[(0,a.renderSlot)(t.$slots,`description`,{},()=>[(0,a.createTextVNode)((0,a.toDisplayString)(e.description),1)],!0)],8,f)):(0,a.createCommentVNode)(``,!0),(0,a.createElementVNode)(`span`,{id:D.value,class:`nb-stepper__status`},(0,a.toDisplayString)(w.value),9,p)])]),_:3},16,[`id`])),r[0]||=(0,a.createElementVNode)(`span`,{class:`nb-stepper__line`,"aria-hidden":`true`},null,-1)],10,c))}}),h=t.t(m,[[`__scopeId`,`data-v-ff8a033d`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return h}});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as e } from "./_plugin-vue_export-helper-O4QQSku4.js";
|
|
2
2
|
import { t } from "./Icon-rREAqsu0.js";
|
|
3
3
|
import { useStableId as n } from "./composables/useStableId.composable.mjs";
|
|
4
|
-
import { n as r, t as i } from "./Stepper.context-
|
|
4
|
+
import { n as r, t as i } from "./Stepper.context-DtdxFiTP.js";
|
|
5
5
|
import { Fragment as a, computed as o, createBlock as s, createCommentVNode as c, createElementBlock as l, createElementVNode as u, createTextVNode as d, defineComponent as f, inject as p, mergeProps as m, normalizeClass as h, onUnmounted as g, openBlock as _, ref as v, renderSlot as y, resolveDynamicComponent as b, toDisplayString as x, unref as S, useSlots as C, withCtx as w } from "vue";
|
|
6
6
|
import * as T from "@nubisco/ui/icons/warning";
|
|
7
7
|
import * as E from "@nubisco/ui/icons/check";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as e } from "./_plugin-vue_export-helper-O4QQSku4.js";
|
|
2
|
-
import { r as t } from "./TreeContext-
|
|
2
|
+
import { r as t } from "./TreeContext-CN8Jmm3J.js";
|
|
3
3
|
import { createElementBlock as n, defineComponent as r, normalizeClass as i, openBlock as a, provide as o, reactive as s, ref as c, renderSlot as l } from "vue";
|
|
4
4
|
//#endregion
|
|
5
5
|
//#region src/components/Tree.vue
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./TreeContext-
|
|
1
|
+
require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./TreeContext-CRgX277A.cjs`);let n=require(`vue`);var r=(0,n.defineComponent)({__name:`Tree`,props:{modelValue:{default:null},compact:{type:Boolean,default:!1},size:{default:`md`},draggable:{type:Boolean,default:!1}},emits:[`update:modelValue`,`select`,`toggle`,`drop`],setup(e,{expose:r,emit:i}){let a=e,o=i,s=(0,n.reactive)(new Set),c=(0,n.ref)(),l=(0,n.reactive)({dragId:null,dropTargetId:null,dropPosition:null});function u(e){o(`update:modelValue`,e),o(`select`,e)}function d(e){s.has(e)?(s.delete(e),o(`toggle`,e,!1)):(s.add(e),o(`toggle`,e,!0))}function f(e,t){}function p(e){}function m(e){l.dragId=e}function h(e,t){e!==l.dragId&&(l.dropTargetId=e,l.dropPosition=t)}function g(e){l.dropTargetId===e&&(l.dropTargetId=null,l.dropPosition=null)}function _(){l.dragId&&l.dropTargetId&&l.dropPosition&&o(`drop`,{sourceId:l.dragId,targetId:l.dropTargetId,position:l.dropPosition}),y()}function v(){y()}function y(){l.dragId=null,l.dropTargetId=null,l.dropPosition=null}function b(e){for(let t of e)s.add(t)}function x(){s.clear()}(0,n.provide)(t.r,(0,n.reactive)({get selectedId(){return a.modelValue??null},select:u,toggle:d,expandedIds:s,get compact(){return a.compact||a.size===`sm`},get draggable(){return a.draggable},drag:l,onDragStart:m,onDragOver:h,onDragLeave:g,onDrop:_,onDragEnd:v,registerNode:f,unregisterNode:p}));function S(){return c.value?Array.from(c.value.querySelectorAll(`[role="treeitem"]`)):[]}function C(e){let t=S();if(t.length===0)return;let n=document.activeElement,r=t.indexOf(n);switch(e.key){case`ArrowDown`:e.preventDefault(),r<t.length-1?t[r+1].focus():r===-1&&t[0].focus();break;case`ArrowUp`:e.preventDefault(),r>0&&t[r-1].focus();break;case`Home`:e.preventDefault(),t[0]?.focus();break;case`End`:e.preventDefault(),t[t.length-1]?.focus();break}}return r({expandIds:b,collapseAll:x}),(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(`ul`,{ref_key:`treeRef`,ref:c,role:`tree`,class:(0,n.normalizeClass)([`nb-tree`,{"nb-tree--compact":e.compact||e.size===`sm`}]),onKeydown:C},[(0,n.renderSlot)(t.$slots,`default`,{},void 0,!0)],34))}}),i=e.t(r,[[`__scopeId`,`data-v-f91fb593`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return i}});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as e } from "./_plugin-vue_export-helper-O4QQSku4.js";
|
|
2
2
|
import { t } from "./Icon-rREAqsu0.js";
|
|
3
|
-
import { n, r, t as i } from "./TreeContext-
|
|
3
|
+
import { n, r, t as i } from "./TreeContext-CN8Jmm3J.js";
|
|
4
4
|
import { Comment as a, Fragment as o, Text as s, computed as c, createBlock as ee, createCommentVNode as l, createElementBlock as u, createElementVNode as d, createTextVNode as f, createVNode as p, defineComponent as m, inject as h, normalizeClass as g, normalizeStyle as _, onBeforeMount as v, onBeforeUpdate as y, openBlock as b, provide as x, renderSlot as S, toDisplayString as C, unref as w, useSlots as T, withModifiers as E } from "vue";
|
|
5
5
|
import { regular as D } from "@nubisco/ui/icons/caret-right";
|
|
6
6
|
//#region src/components/TreeNode.vue?vue&type=script&setup=true&lang.ts
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./Icon-C8R_r_In.cjs`),n=require(`./TreeContext-
|
|
1
|
+
require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./Icon-C8R_r_In.cjs`),n=require(`./TreeContext-CRgX277A.cjs`);let r=require(`vue`),i=require(`@nubisco/ui/icons/caret-right`);var a=[`draggable`,`aria-expanded`,`aria-selected`,`aria-disabled`,`aria-grabbed`],o={key:1,class:`nb-tree-node__toggle-spacer`},s={class:`nb-tree-node__label-text`},c={key:3,class:`nb-tree-node__meta`},l={key:4,class:`nb-tree-node__actions`},u={key:0,role:`group`,class:`nb-tree-node__children`},d=(0,r.defineComponent)({__name:`TreeNode`,props:{id:{},label:{},icon:{default:void 0},disabled:{type:Boolean,default:!1},depth:{default:null},draggable:{type:[Boolean,null],default:null},expandable:{type:[Boolean,null],default:null},droppable:{type:[Boolean,null],default:null}},emits:[`select`,`toggle`,`contextmenu`,`dblclick`],setup(e,{emit:d}){let f=e,p=d,m=(0,r.useSlots)(),h=(0,r.inject)(n.r),g=(0,r.inject)(n.n,0),_=(0,r.computed)(()=>f.depth??g);(0,r.provide)(n.n,_.value+1);let v=(0,r.inject)(n.t,[]);(0,r.provide)(n.t,[...v,f.id]);function y(){let e=h?.drag.dragId;return!!e&&(e===f.id||v.includes(e))}let b=0,x=-1,S=!1;(0,r.onBeforeMount)(()=>b++),(0,r.onBeforeUpdate)(()=>b++);function C(e){return!!e?.some(e=>e.type===r.Comment?!1:e.type===r.Fragment?C(e.children):e.type===r.Text?String(e.children??``).trim()!==``:!0)}function w(){return x!==b&&(x=b,S=C(m.default?.())),S}function T(){return f.expandable??w()}function E(){return f.droppable??!0}let D=(0,r.computed)(()=>h?.expandedIds.has(f.id)??!1),O=(0,r.computed)(()=>h?.selectedId===f.id),k=(0,r.computed)(()=>h?.compact??!1),A=(0,r.computed)(()=>k.value?`24px`:`32px`),j=(0,r.computed)(()=>`${16+_.value*16}px`),M=(0,r.computed)(()=>f.disabled?!1:f.draggable===null?h?.draggable??!1:f.draggable),N=(0,r.computed)(()=>h?.drag.dragId===f.id),P=(0,r.computed)(()=>h?.drag.dropTargetId===f.id),F=(0,r.computed)(()=>P.value?h?.drag.dropPosition:null);function I(){f.disabled||!h||(h.select(f.id),p(`select`,f.id),T()&&(h.toggle(f.id),p(`toggle`,f.id,!D.value)))}function L(e){e.stopPropagation(),!(f.disabled||!h)&&(h.toggle(f.id),p(`toggle`,f.id,!D.value))}function R(){f.disabled||(T()&&h&&h.toggle(f.id),p(`dblclick`,f.id))}function z(e){p(`contextmenu`,e,f.id)}function B(e){e.target?.closest?.(`.nb-tree-node`)===e.currentTarget&&(!M.value||!h||!e.dataTransfer||(e.dataTransfer.effectAllowed=`move`,e.dataTransfer.setData(`text/plain`,f.id),h.onDragStart(f.id)))}function V(e,t){let n=t.getBoundingClientRect(),r=e.clientY-n.top,i=n.height;return r<i*.25?`before`:r>i*.75?`after`:E()?`inside`:r<i*.5?`before`:`after`}function H(e){if(!h||f.disabled||y())return;e.preventDefault(),e.stopPropagation(),e.dataTransfer&&(e.dataTransfer.dropEffect=`move`);let t=e.currentTarget.querySelector(`.nb-tree-node__label`);t&&h.onDragOver(f.id,V(e,t))}function U(e){if(!h)return;let t=e.relatedTarget,n=e.currentTarget;(!t||!n.contains(t))&&h.onDragLeave(f.id)}function W(e){!h||y()||(e.preventDefault(),e.stopPropagation(),h.onDrop())}function G(){h&&h.onDragEnd()}function K(e){h&&(e.key===`Enter`?(e.preventDefault(),I()):e.key===`ArrowRight`&&T()?(e.preventDefault(),D.value||(h.toggle(f.id),p(`toggle`,f.id,!0))):e.key===`ArrowLeft`?(e.preventDefault(),D.value&&(h.toggle(f.id),p(`toggle`,f.id,!1))):e.key===`F2`&&(e.preventDefault(),p(`dblclick`,f.id)))}return(n,d)=>((0,r.openBlock)(),(0,r.createElementBlock)(`li`,{role:`treeitem`,tabindex:`-1`,draggable:M.value||void 0,"aria-expanded":T()?D.value:void 0,"aria-selected":O.value,"aria-disabled":e.disabled||void 0,"aria-grabbed":M.value?N.value:void 0,class:(0,r.normalizeClass)([`nb-tree-node`,{"nb-tree-node--selected":O.value,"nb-tree-node--disabled":e.disabled,"nb-tree-node--branch":T(),"nb-tree-node--leaf":!T(),"nb-tree-node--dragging":N.value,"nb-tree-node--drop-before":F.value===`before`,"nb-tree-node--drop-after":F.value===`after`,"nb-tree-node--drop-inside":F.value===`inside`}]),onClick:(0,r.withModifiers)(I,[`stop`]),onDblclick:(0,r.withModifiers)(R,[`stop`]),onContextmenu:(0,r.withModifiers)(z,[`prevent`]),onKeydown:K,onDragstart:B,onDragover:H,onDragleave:U,onDrop:W,onDragend:G},[(0,r.createElementVNode)(`div`,{class:`nb-tree-node__label`,style:(0,r.normalizeStyle)({minHeight:A.value,paddingInlineStart:j.value})},[T()?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,{key:0,class:`nb-tree-node__toggle`,onClick:L},[(0,r.createVNode)(t.t,{name:(0,r.unref)(i.regular),size:`xs`,class:(0,r.normalizeClass)([`nb-tree-node__toggle-icon`,{"nb-tree-node__toggle-icon--expanded":D.value}])},null,8,[`name`,`class`])])):((0,r.openBlock)(),(0,r.createElementBlock)(`span`,o)),e.icon?((0,r.openBlock)(),(0,r.createBlock)(t.t,{key:2,name:e.icon,size:`sm`,class:`nb-tree-node__icon`},null,8,[`name`])):(0,r.createCommentVNode)(``,!0),(0,r.createElementVNode)(`span`,s,[(0,r.renderSlot)(n.$slots,`label`,{},()=>[(0,r.createTextVNode)((0,r.toDisplayString)(e.label),1)],!0)]),n.$slots.meta?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,c,[(0,r.renderSlot)(n.$slots,`meta`,{},void 0,!0)])):(0,r.createCommentVNode)(``,!0),n.$slots.actions?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,l,[(0,r.renderSlot)(n.$slots,`actions`,{},void 0,!0)])):(0,r.createCommentVNode)(``,!0)],4),T()&&D.value?((0,r.openBlock)(),(0,r.createElementBlock)(`ul`,u,[(0,r.renderSlot)(n.$slots,`default`,{},void 0,!0)])):(0,r.createCommentVNode)(``,!0)],42,a))}}),f=e.t(d,[[`__scopeId`,`data-v-a830979d`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return f}});
|