@stonecrop/atable 0.4.36 → 0.5.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/assets/index.css +1 -1
- package/dist/atable.d.ts +5 -0
- package/dist/atable.js +1142 -1335
- package/dist/atable.js.map +1 -1
- package/dist/atable.umd.cjs +2 -2
- package/dist/atable.umd.cjs.map +1 -1
- package/dist/src/types/index.d.ts +5 -0
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/stores/table.js +1 -1
- package/package.json +18 -18
- package/src/components/ACell.vue +9 -9
- package/src/components/AExpansionRow.vue +3 -3
- package/src/components/AGanttCell.vue +8 -8
- package/src/components/AGanttConnection.vue +2 -2
- package/src/components/ARow.vue +2 -2
- package/src/components/ATable.vue +14 -14
- package/src/components/ATableHeader.vue +1 -1
- package/src/components/ATableModal.vue +6 -5
- package/src/stores/table.ts +1 -1
- package/src/types/index.ts +6 -0
package/dist/atable.umd.cjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
(function(O,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("pinia")):typeof define=="function"&&define.amd?define(["exports","vue","pinia"],t):(O=typeof globalThis<"u"?globalThis:O||self,t(O["@stonecrop/atable"]={},O.Vue,O.pinia))})(this,(function(O,t,rt){"use strict";var Te=document.createElement("style");Te.textContent=`@import"https://fonts.googleapis.com/css2?family=Arimo:ital,wght@0,400..700;1,400..700&display=swap";.atable-cell{border-radius:0;box-sizing:border-box;margin:0;outline:none;box-shadow:none;color:var(--sc-cell-text-color);padding-left:.5ch!important;padding-right:.5ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);border-spacing:0px;border-collapse:collapse;overflow:hidden;text-overflow:ellipsis;order:1;white-space:nowrap;max-width:40ch;border-top:1px solid var(--sc-row-border-color)}.atable-cell a{color:var(--sc-cell-text-color);text-decoration:none}.atable-cell:focus,.atable-cell:focus-within{background-color:var(--sc-focus-cell-background);outline-width:var(--sc-atable-cell-border-width);outline-style:solid;outline-offset:calc(var(--sc-atable-cell-border-width) * -1);outline-color:var(--sc-focus-cell-outline);box-shadow:none;overflow:hidden;text-wrap:nowrap;box-sizing:border-box}.cell-modified{font-weight:700;font-style:italic}.cell-modified-highlight{background-color:var(--sc-cell-changed-color)}.row-index{color:var(--sc-header-text-color);font-weight:700;text-align:center;-webkit-user-select:none;user-select:none;width:2ch;display:flex;align-items:center;justify-content:center}.expandable-row{border-top:1px solid var(--sc-row-border-color);height:var(--sc-atable-row-height)}.expandable-row>td:first-child{border-left:4px solid var(--sc-row-border-color)}.expanded-row{border-left:2px solid var(--sc-row-border-color)}.expandable-row:last-child{border-bottom:1px solid var(--sc-row-border-color)}.expanded-row-content{border-top:1px solid var(--sc-row-border-color);padding:1.5rem}.expandable-row.changed-row-gradient[data-v-5ad4bb41]:has(td.cell-modified){--cell-color-start: color-mix(in srgb, var(--sc-cell-changed-color), #fff 20%);--cell-color-end: color-mix(in srgb, var(--sc-cell-changed-color), #fff 60%);background:linear-gradient(90deg,var(--cell-color-start),var(--cell-color-end))}.aganttcell[data-v-52febd32]{background-color:#f9f9f9;width:100%;padding:0;height:100%}.gantt-container[data-v-52febd32]{position:relative;height:100%;background-color:#f0f0f0;border-radius:4px;overflow:visible}.gantt-bar[data-v-52febd32]{position:absolute;border-radius:4px;display:flex;align-items:center;justify-content:space-between;cursor:grab;box-sizing:border-box;border:1px solid rgba(0,0,0,.5);transition:left .1s ease-out,width .1s ease-out;height:80%;top:50%;z-index:2;transform:translateY(-50%)}.gantt-bar[data-v-52febd32]:active{cursor:grabbing}.gantt-bar.is-dragging[data-v-52febd32]{z-index:10}.gantt-label[data-v-52febd32]{flex:1;text-align:center;font-size:12px;color:#aaa;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 8px;-webkit-user-select:none;user-select:none}.resize-handle[data-v-52febd32]{position:relative;width:12px;height:100%;cursor:ew-resize;display:flex;align-items:center;justify-content:center;z-index:0;background:#00000040}.left-resize-handle[data-v-52febd32]{border-right:1px solid rgba(0,0,0,.5)}.right-resize-handle[data-v-52febd32]{border-left:1px solid rgba(0,0,0,.5)}.handle-grip[data-v-52febd32]{width:4px;height:12px;border-radius:2px;background:#000c}.resize-handle[data-v-52febd32]:hover{background-color:#ffffff80}.vertical-indicator[data-v-52febd32]{position:absolute;width:2px;opacity:0;pointer-events:none;transition:opacity .2s ease;top:-100vh;height:100vh;z-index:5;background-color:var(--v17bc2643)}.left-indicator[data-v-52febd32]{left:50%;transform:translate(-50%)}.right-indicator[data-v-52febd32]{right:50%;transform:translate(50%)}.resize-handle.is-dragging .vertical-indicator[data-v-52febd32]{opacity:.7}.gantt-container[data-v-52febd32]:after{content:"";position:absolute;inset:0;background-size:calc(100% / var(--v0a8a9192)) 100%;background-image:linear-gradient(to right,rgba(0,0,0,.1) 1px,transparent 1px);pointer-events:none;z-index:1}.connection-handle[data-v-52febd32]{position:absolute;top:50%;transform:translateY(-50%);width:16px;height:16px;opacity:0;transition:opacity .2s ease;cursor:crosshair;z-index:15;display:flex;align-items:center;justify-content:center}.connection-handle.visible[data-v-52febd32]{opacity:1}.left-connection-handle[data-v-52febd32]{left:-16px}.right-connection-handle[data-v-52febd32]{right:-16px}.connection-dot[data-v-52febd32]{width:8px;height:8px;border-radius:50%;background-color:#2196f3;border:2px solid white;box-shadow:0 1px 3px #0000004d}.connection-handle:hover .connection-dot[data-v-52febd32]{background-color:#1976d2;transform:scale(1.2)}.connection-handle.is-dragging[data-v-52febd32]{opacity:1!important}.connection-handle.is-dragging .connection-dot[data-v-52febd32]{background-color:#1976d2;transform:scale(1.3);box-shadow:0 2px 8px #2196f366}.atable-row{background-color:#fff}.atable-row>td:first-child{border-left:4px solid var(--sc-row-border-color)}.list-index{color:var(--sc-header-text-color);font-weight:700;padding-left:var(--sc-atable-row-padding);padding-right:.5em;text-align:left;-webkit-user-select:none;user-select:none;width:7ch;text-overflow:ellipsis;overflow:hidden;box-sizing:border-box;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding)}.tree-index{color:var(--sc-header-text-color);font-weight:700;text-align:center;-webkit-user-select:none;user-select:none;width:2ch;box-sizing:border-box;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding)}.atable-row:has(td.cell-modified)>td.sticky-column,.atable-row:has(td.cell-modified)>th.sticky-column,.atable-row:has(td.cell-modified)>td.sticky-index,.atable-row:has(td.cell-modified)>th.sticky-index{background:var(--sc-cell-changed-color)}.atable-row.changed-row-gradient[data-v-c554ee0f]:has(td.cell-modified){--cell-color-start: color-mix(in srgb, var(--sc-cell-changed-color), #fff 20%);--cell-color-end: color-mix(in srgb, var(--sc-cell-changed-color), #fff 60%);background:linear-gradient(90deg,var(--cell-color-start),var(--cell-color-end))}.gantt-connection-overlay[data-v-955111b6]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.connection-path[data-v-955111b6]{transition:stroke-width .2s ease;pointer-events:auto;cursor:pointer;stroke-dasharray:5px;stroke:var(--sc-cell-text-color)}#arrowhead-marker polygon[data-v-955111b6]{fill:var(--sc-cell-text-color)}.animated-path[data-v-955111b6]{animation:animated-dash-955111b6 infinite 1.5s linear}.connection-path[data-v-955111b6]:hover{stroke-width:3px}.connection-hitbox[data-v-955111b6]{pointer-events:auto;cursor:pointer}@keyframes animated-dash-955111b6{0%{stroke-dashoffset:0px}to{stroke-dashoffset:-10px}}.atable-header-row th{padding-left:.5ch!important;font-weight:700;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);box-sizing:border-box;color:var(--sc-header-text-color);position:relative}#header-index{padding-left:var(--sc-atable-row-padding);box-sizing:border-box}.tree-index{padding-right:0}th{order:1}.list-expansion-index{width:2ch;margin-left:5px}:root{--sc-primary-color: #0098c9;--sc-primary-text-color: #ffffff;--sc-brand-color: #202a44;--sc-gray-5: #f2f2f2;--sc-gray-10: #e6e6e6;--sc-gray-20: #cccccc;--sc-gray-50: #808080;--sc-gray-60: #666666;--sc-gray-80: #333333;--sc-brand-danger: #e63c28;--sc-brand-success: #155724;--sc-brand-warning: #b99d3e;--sc-active-cell-background: #ffffff;--sc-active-cell-outline: #e6a92d;--sc-cell-border-color: #ffffff;--sc-cell-text-color: #3a3c41;--sc-focus-cell-background: #ffffff;--sc-focus-cell-outline: #000000;--sc-header-border-color: #ffffff;--sc-header-text-color: var(--sc-gray-20);--sc-row-border-color: var(--sc-gray-20);--sc-row-color-zebra-dark: #dddddd;--sc-row-color-zebra-light: #eeeeee;--sc-row-number-background-color: #ffffff;--sc-input-active-border-color: #000000;--sc-input-active-label-color: #000000;--sc-input-border-color: var(--sc-gray-20);--sc-input-label-color: var(--sc-gray-60);--sc-required-border: #e63c28;--sc-cell-changed-color: #d8edff;--sc-form-border: var(--sc-gray-5);--sc-form-background: #ffffff;--sc-input-field-background: #ffffff;--sc-input-field-disabled-background: var(--sc-gray-5);--sc-font-size: 10px;--sc-font-family: Arimo, Arial, sans-serif;--sc-table-font-size: 16px;--sc-atable-font-family: "Arimo", sans-serif;--sc-atable-row-padding: .125rem;--sc-atable-row-height: 1.5em;--sc-atable-cell-border-width: 2px;--sc-table-loading-color: 204, 204, 204;--sc-btn-border: #cccccc;--sc-btn-color: white;--sc-btn-hover: #f2f2f2;--sc-btn-label-color: black}.amodal{position:absolute;background-color:var(--sc-row-color-zebra-dark);z-index:5}.atable-container{position:relative}.sticky-index{position:sticky;left:0;z-index:10;order:0}.sticky-column,th.sticky-column,td.sticky-column,th.sticky-index,td.sticky-index{position:sticky;z-index:10;order:0;background:#fff}.sticky-column-edge,.atable th.sticky-column-edge{border-right:1px solid var(--sc-row-border-color)}[data-v-51a03d16]:root{--sc-primary-color: #0098c9;--sc-primary-text-color: #ffffff;--sc-brand-color: #202a44;--sc-gray-5: #f2f2f2;--sc-gray-10: #e6e6e6;--sc-gray-20: #cccccc;--sc-gray-50: #808080;--sc-gray-60: #666666;--sc-gray-80: #333333;--sc-brand-danger: #e63c28;--sc-brand-success: #155724;--sc-brand-warning: #b99d3e;--sc-active-cell-background: #ffffff;--sc-active-cell-outline: #e6a92d;--sc-cell-border-color: #ffffff;--sc-cell-text-color: #3a3c41;--sc-focus-cell-background: #ffffff;--sc-focus-cell-outline: #000000;--sc-header-border-color: #ffffff;--sc-header-text-color: var(--sc-gray-20);--sc-row-border-color: var(--sc-gray-20);--sc-row-color-zebra-dark: #dddddd;--sc-row-color-zebra-light: #eeeeee;--sc-row-number-background-color: #ffffff;--sc-input-active-border-color: #000000;--sc-input-active-label-color: #000000;--sc-input-border-color: var(--sc-gray-20);--sc-input-label-color: var(--sc-gray-60);--sc-required-border: #e63c28;--sc-cell-changed-color: #d8edff;--sc-form-border: var(--sc-gray-5);--sc-form-background: #ffffff;--sc-input-field-background: #ffffff;--sc-input-field-disabled-background: var(--sc-gray-5);--sc-font-size: 10px;--sc-font-family: Arimo, Arial, sans-serif;--sc-table-font-size: 16px;--sc-atable-font-family: "Arimo", sans-serif;--sc-atable-row-padding: .125rem;--sc-atable-row-height: 1.5em;--sc-atable-cell-border-width: 2px;--sc-table-loading-color: 204, 204, 204;--sc-btn-border: #cccccc;--sc-btn-color: white;--sc-btn-hover: #f2f2f2;--sc-btn-label-color: black}.atable[data-v-51a03d16]{position:relative;font-family:var(--sc-atable-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--sc-table-font-size);border-collapse:collapse;box-sizing:border-box;table-layout:auto;width:auto;overflow:clip;height:1px}.atable th[data-v-51a03d16]{border-width:0px;border-style:solid;border-radius:0;padding-left:.5ch;padding-right:.5ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);color:var(--sc-gray-60);height:var(--sc-atable-row-height);font-weight:300;letter-spacing:.05rem;order:1;box-sizing:border-box}.atable th[data-v-51a03d16]:focus{outline:none}.atable[data-v-51a03d16]:tbody{overflow:hidden;position:relative}.atable[data-v-51a03d16]:tbody:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background-color:transparent;z-index:100}.aloading[data-v-a930a25b]{width:100%;border-top:1px solid var(--sc-row-border-color);border-bottom:1px solid var(--sc-row-border-color);display:flex;background-color:#fff;border-left:4px solid var(--sc-row-border-color);padding-left:.5ch!important;padding-right:.5ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);align-items:center;box-sizing:border-box;background:var(--sc-focus-cell-background);overflow:hidden;position:relative}.aloading-bar[data-v-a930a25b]{width:100%;height:100%;position:absolute;left:-100%;top:0;background:linear-gradient(90deg,rgba(var(--sc-table-loading-color),0),rgba(var(--sc-table-loading-color),1),rgba(var(--sc-table-loading-color),0));animation:gradient-a930a25b infinite 2s;z-index:0}.aloading-header[data-v-a930a25b]{color:var(--sc-cell-text-color);font-family:var(--sc-atable-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--sc-table-font-size);padding:0;margin:0;font-weight:400;z-index:1}.aloading-header[data-v-a930a25b]:after{content:"...";animation:ellipse-a930a25b 2s;animation-iteration-count:infinite}@keyframes gradient-a930a25b{0%{left:-100%}to{left:100%}}@keyframes ellipse-a930a25b{0%{content:""}20%{content:""}40%{content:"."}60%{content:".."}80%{content:"..."}}.aloading[data-v-e1165876]{width:100%;border-top:1px solid var(--sc-row-border-color);border-bottom:1px solid var(--sc-row-border-color);display:flex;background-color:#fff;border-left:4px solid var(--sc-row-border-color);padding-left:.5ch!important;padding-right:.5ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);align-items:center;box-sizing:border-box;background:var(--sc-focus-cell-background);overflow:hidden;position:relative}.aloading-bar[data-v-e1165876]{width:50%;height:3px;position:absolute;left:-100%;bottom:0;background:var(--sc-row-border-color);animation:bar-left-e1165876 infinite 2s;z-index:0}.aloading-header[data-v-e1165876]{color:var(--sc-cell-text-color);font-family:var(--sc-atable-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--sc-table-font-size);padding:0;margin:0;font-weight:400;z-index:1}.aloading-header[data-v-e1165876]:after{content:"...";animation:ellipse-e1165876 2s;animation-iteration-count:infinite}@keyframes bar-left-e1165876{0%{left:-50%}to{left:100%}}@keyframes ellipse-e1165876{0%{content:""}20%{content:""}40%{content:"."}60%{content:".."}80%{content:"..."}}
|
|
2
|
-
/*$vite$:1*/`,document.head.appendChild(Te);function fe(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}const it=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const st=e=>e!=null,ct=Object.prototype.toString,dt=e=>ct.call(e)==="[object Object]",ft=()=>{};function te(e){return Array.isArray(e)?e:[e]}function ut(e,n,a){return t.watch(e,n,{...a,immediate:!0})}const q=it?window:void 0;function J(e){var n;const a=t.toValue(e);return(n=a?.$el)!=null?n:a}function K(...e){const n=[],a=()=>{n.forEach(o=>o()),n.length=0},s=(o,l,u,g)=>(o.addEventListener(l,u,g),()=>o.removeEventListener(l,u,g)),d=t.computed(()=>{const o=te(t.toValue(e[0])).filter(l=>l!=null);return o.every(l=>typeof l!="string")?o:void 0}),c=ut(()=>{var o,l;return[(l=(o=d.value)==null?void 0:o.map(u=>J(u)))!=null?l:[q].filter(u=>u!=null),te(t.toValue(d.value?e[1]:e[0])),te(t.unref(d.value?e[2]:e[1])),t.toValue(d.value?e[3]:e[2])]},([o,l,u,g])=>{if(a(),!o?.length||!l?.length||!u?.length)return;const w=dt(g)?{...g}:g;n.push(...o.flatMap(y=>l.flatMap(h=>u.map(E=>s(y,h,E,w)))))},{flush:"post"}),i=()=>{c(),a()};return fe(a),i}function gt(){const e=t.shallowRef(!1),n=t.getCurrentInstance();return n&&t.onMounted(()=>{e.value=!0},n),e}function mt(e){const n=gt();return t.computed(()=>(n.value,!!e()))}function ht(e,n,a={}){const{window:s=q,...d}=a;let c;const i=mt(()=>s&&"MutationObserver"in s),o=()=>{c&&(c.disconnect(),c=void 0)},l=t.computed(()=>{const y=t.toValue(e),h=te(y).map(J).filter(st);return new Set(h)}),u=t.watch(()=>l.value,y=>{o(),i.value&&y.size&&(c=new MutationObserver(n),y.forEach(h=>c.observe(h,d)))},{immediate:!0,flush:"post"}),g=()=>c?.takeRecords(),w=()=>{u(),o()};return fe(w),{isSupported:i,stop:w,takeRecords:g}}function pt(e,n,a={}){const{window:s=q,document:d=s?.document,flush:c="sync"}=a;if(!s||!d)return ft;let i;const o=g=>{i?.(),i=g},l=t.watchEffect(()=>{const g=J(e);if(g){const{stop:w}=ht(d,y=>{y.map(h=>[...h.removedNodes]).flat().some(h=>h===g||h.contains(g))&&n(y)},{window:s,childList:!0,subtree:!0});o(w)}},{flush:c}),u=()=>{l(),o()};return fe(u),u}function bt(e={}){var n;const{window:a=q,deep:s=!0,triggerOnRemoval:d=!1}=e,c=(n=e.document)!=null?n:a?.document,i=()=>{var u;let g=c?.activeElement;if(s)for(;g?.shadowRoot;)g=(u=g?.shadowRoot)==null?void 0:u.activeElement;return g},o=t.shallowRef(),l=()=>{o.value=i()};if(a){const u={capture:!0,passive:!0};K(a,"blur",g=>{g.relatedTarget===null&&l()},u),K(a,"focus",l,u)}return d&&pt(o,l,{document:c}),l(),o}const wt="focusin",xt="focusout",vt=":focus-within";function yt(e,n={}){const{window:a=q}=n,s=t.computed(()=>J(e)),d=t.shallowRef(!1),c=t.computed(()=>d.value);if(!a||!bt(n).value)return{focused:c};const i={passive:!0};return K(s,wt,()=>d.value=!0,i),K(s,xt,()=>{var o,l,u;return d.value=(u=(l=(o=s.value)==null?void 0:o.matches)==null?void 0:l.call(o,vt))!=null?u:!1},i),{focused:c}}function kt(e,{window:n=q,scrollTarget:a}={}){const s=t.ref(!1),d=()=>{if(!n)return;const c=n.document,i=J(e);if(!i)s.value=!1;else{const o=i.getBoundingClientRect();s.value=o.top<=(n.innerHeight||c.documentElement.clientHeight)&&o.left<=(n.innerWidth||c.documentElement.clientWidth)&&o.bottom>=0&&o.right>=0}};return t.watch(()=>J(e),()=>d(),{immediate:!0,flush:"post"}),n&&K(a||n,"scroll",d,{capture:!1,passive:!0}),s}const H=e=>{let n=kt(e).value;return n=n&&e.offsetHeight>0,n},L=e=>e.tabIndex>=0,Ae=e=>{const n=e.target;return ue(n)},ue=e=>{let n;if(e instanceof HTMLTableCellElement){const a=e.parentElement?.previousElementSibling;if(a){const s=Array.from(a.children)[e.cellIndex];s&&(n=s)}}else if(e instanceof HTMLTableRowElement){const a=e.previousElementSibling;a&&(n=a)}return n&&(!L(n)||!H(n))?ue(n):n},Ct=e=>{const n=e.target;let a;if(n instanceof HTMLTableCellElement){const s=n.parentElement?.parentElement;if(s){const d=s.firstElementChild?.children[n.cellIndex];d&&(a=d)}}else if(n instanceof HTMLTableRowElement){const s=n.parentElement;if(s){const d=s.firstElementChild;d&&(a=d)}}return a&&(!L(a)||!H(a))?ge(a):a},Ve=e=>{const n=e.target;return ge(n)},ge=e=>{let n;if(e instanceof HTMLTableCellElement){const a=e.parentElement?.nextElementSibling;if(a){const s=Array.from(a.children)[e.cellIndex];s&&(n=s)}}else if(e instanceof HTMLTableRowElement){const a=e.nextElementSibling;a&&(n=a)}return n&&(!L(n)||!H(n))?ge(n):n},Et=e=>{const n=e.target;let a;if(n instanceof HTMLTableCellElement){const s=n.parentElement?.parentElement;if(s){const d=s.lastElementChild?.children[n.cellIndex];d&&(a=d)}}else if(n instanceof HTMLTableRowElement){const s=n.parentElement;if(s){const d=s.lastElementChild;d&&(a=d)}}return a&&(!L(a)||!H(a))?ue(a):a},De=e=>{const n=e.target;return me(n)},me=e=>{let n;return e.previousElementSibling?n=e.previousElementSibling:n=e.parentElement?.previousElementSibling?.lastElementChild,n&&(!L(n)||!H(n))?me(n):n},Oe=e=>{const n=e.target;return he(n)},he=e=>{let n;return e.nextElementSibling?n=e.nextElementSibling:n=e.parentElement?.nextElementSibling?.firstElementChild,n&&(!L(n)||!H(n))?he(n):n},Ne=e=>{const n=e.target.parentElement?.firstElementChild;return n&&(!L(n)||!H(n))?he(n):n},Pe=e=>{const n=e.target.parentElement?.lastElementChild;return n&&(!L(n)||!H(n))?me(n):n},ne=["alt","control","shift","meta"],It={ArrowUp:"up",ArrowDown:"down",ArrowLeft:"left",ArrowRight:"right"},pe={"keydown.up":e=>{const n=Ae(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.down":e=>{const n=Ve(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.left":e=>{const n=De(e);e.preventDefault(),e.stopPropagation(),n&&n.focus()},"keydown.right":e=>{const n=Oe(e);e.preventDefault(),e.stopPropagation(),n&&n.focus()},"keydown.control.up":e=>{const n=Ct(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.control.down":e=>{const n=Et(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.control.left":e=>{const n=Ne(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.control.right":e=>{const n=Pe(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.end":e=>{const n=Pe(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.enter":e=>{if(e.target instanceof HTMLTableCellElement){e.preventDefault(),e.stopPropagation();const n=Ve(e);n&&n.focus()}},"keydown.shift.enter":e=>{if(e.target instanceof HTMLTableCellElement){e.preventDefault(),e.stopPropagation();const n=Ae(e);n&&n.focus()}},"keydown.home":e=>{const n=Ne(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.tab":e=>{const n=Oe(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.shift.tab":e=>{const n=De(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())}};function be(e){const n=i=>{let o=null;return i.parent&&(typeof i.parent=="string"?o=document.querySelector(i.parent):i.parent instanceof HTMLElement?o=i.parent:o=i.parent.value),o},a=i=>{const o=n(i);let l=[];if(typeof i.selectors=="string")l=o?Array.from(o.querySelectorAll(i.selectors)):Array.from(document.querySelectorAll(i.selectors));else if(Array.isArray(i.selectors))for(const u of i.selectors)u instanceof HTMLElement?l.push(u):l.push(u.$el);else if(i.selectors instanceof HTMLElement)l.push(i.selectors);else if(i.selectors?.value)if(Array.isArray(i.selectors.value))for(const u of i.selectors.value)u instanceof HTMLElement?l.push(u):l.push(u.$el);else l.push(i.selectors.value);return l},s=i=>{const o=n(i);let l=[];return i.selectors?l=a(i):o&&(l=Array.from(o.children).filter(u=>L(u)&&H(u))),l},d=i=>o=>{const l=It[o.key]||o.key.toLowerCase();if(ne.includes(l))return;const u=i.handlers||pe;for(const g of Object.keys(u)){const[w,...y]=g.split(".");if(w==="keydown"&&y.includes(l)){const h=u[g],E=y.filter(m=>ne.includes(m)),x=ne.some(m=>{const p=m.charAt(0).toUpperCase()+m.slice(1);return o.getModifierState(p)});if(E.length>0){if(x){for(const m of ne)if(y.includes(m)){const p=m.charAt(0).toUpperCase()+m.slice(1);o.getModifierState(p)&&h(o)}}}else x||h(o)}}},c=[];t.onMounted(()=>{for(const i of e){const o=n(i),l=s(i),u=d(i),g=o?[o]:l;for(const w of g){const{focused:y}=yt(t.ref(w)),h=t.watch(y,E=>{E?w.addEventListener("keydown",u):w.removeEventListener("keydown",u)});c.push(h)}}}),t.onBeforeUnmount(()=>{for(const i of c)i()})}function Z(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}const oe=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const St=e=>e!=null,Rt=Object.prototype.toString,He=e=>Rt.call(e)==="[object Object]",W=()=>{},we=Bt();function Bt(){var e,n;return oe&&((e=window?.navigator)==null?void 0:e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((n=window?.navigator)==null?void 0:n.maxTouchPoints)>2&&/iPad|Macintosh/.test(window?.navigator.userAgent))}function $t(...e){if(e.length!==1)return t.toRef(...e);const n=e[0];return typeof n=="function"?t.readonly(t.customRef(()=>({get:n,set:W}))):t.ref(n)}function zt(e,n){function a(...s){return new Promise((d,c)=>{Promise.resolve(e(()=>n.apply(this,s),{fn:n,thisArg:this,args:s})).then(d).catch(c)})}return a}function Mt(e,n={}){let a,s,d=W;const c=l=>{clearTimeout(l),d(),d=W};let i;return l=>{const u=t.toValue(e),g=t.toValue(n.maxWait);return a&&c(a),u<=0||g!==void 0&&g<=0?(s&&(c(s),s=void 0),Promise.resolve(l())):new Promise((w,y)=>{d=n.rejectOnCancel?y:w,i=l,g&&!s&&(s=setTimeout(()=>{a&&c(a),s=void 0,w(i())},g)),a=setTimeout(()=>{s&&c(s),s=void 0,w(l())},u)})}}function G(e){return Array.isArray(e)?e:[e]}function Tt(e){return t.getCurrentInstance()}function At(e,n=200,a={}){return zt(Mt(n,a),e)}function Vt(e,n={}){if(!t.isRef(e))return t.toRefs(e);const a=Array.isArray(e.value)?Array.from({length:e.value.length}):{};for(const s in e.value)a[s]=t.customRef(()=>({get(){return e.value[s]},set(d){var c;if((c=t.toValue(n.replaceRef))!=null?c:!0)if(Array.isArray(e.value)){const o=[...e.value];o[s]=d,e.value=o}else{const o={...e.value,[s]:d};Object.setPrototypeOf(o,Object.getPrototypeOf(e.value)),e.value=o}else e.value[s]=d}}));return a}function Dt(e,n=!0,a){Tt()?t.onMounted(e,a):n?e():t.nextTick(e)}function Le(e,n,a){return t.watch(e,n,{...a,immediate:!0})}const ae=oe?window:void 0;function Q(e){var n;const a=t.toValue(e);return(n=a?.$el)!=null?n:a}function _(...e){const n=[],a=()=>{n.forEach(o=>o()),n.length=0},s=(o,l,u,g)=>(o.addEventListener(l,u,g),()=>o.removeEventListener(l,u,g)),d=t.computed(()=>{const o=G(t.toValue(e[0])).filter(l=>l!=null);return o.every(l=>typeof l!="string")?o:void 0}),c=Le(()=>{var o,l;return[(l=(o=d.value)==null?void 0:o.map(u=>Q(u)))!=null?l:[ae].filter(u=>u!=null),G(t.toValue(d.value?e[1]:e[0])),G(t.unref(d.value?e[2]:e[1])),t.toValue(d.value?e[3]:e[2])]},([o,l,u,g])=>{if(a(),!o?.length||!l?.length||!u?.length)return;const w=He(g)?{...g}:g;n.push(...o.flatMap(y=>l.flatMap(h=>u.map(E=>s(y,h,E,w)))))},{flush:"post"}),i=()=>{c(),a()};return Z(a),i}function Ot(){const e=t.shallowRef(!1),n=t.getCurrentInstance();return n&&t.onMounted(()=>{e.value=!0},n),e}function We(e){const n=Ot();return t.computed(()=>(n.value,!!e()))}function Xe(e,n,a={}){const{window:s=ae,...d}=a;let c;const i=We(()=>s&&"MutationObserver"in s),o=()=>{c&&(c.disconnect(),c=void 0)},l=t.computed(()=>{const y=t.toValue(e),h=G(y).map(Q).filter(St);return new Set(h)}),u=t.watch(()=>l.value,y=>{o(),i.value&&y.size&&(c=new MutationObserver(n),y.forEach(h=>c.observe(h,d)))},{immediate:!0,flush:"post"}),g=()=>c?.takeRecords(),w=()=>{u(),o()};return Z(w),{isSupported:i,stop:w,takeRecords:g}}function xe(e,n={}){var a;const{pointerTypes:s,preventDefault:d,stopPropagation:c,exact:i,onMove:o,onEnd:l,onStart:u,initialValue:g,axis:w="both",draggingElement:y=ae,containerElement:h,handle:E=e,buttons:x=[0]}=n,m=t.ref((a=t.toValue(g))!=null?a:{x:0,y:0}),p=t.ref(),k=v=>s?s.includes(v.pointerType):!0,T=v=>{t.toValue(d)&&v.preventDefault(),t.toValue(c)&&v.stopPropagation()},A=v=>{var R;if(!t.toValue(x).includes(v.button)||t.toValue(n.disabled)||!k(v)||t.toValue(i)&&v.target!==t.toValue(e))return;const D=t.toValue(h),V=(R=D?.getBoundingClientRect)==null?void 0:R.call(D),z=t.toValue(e).getBoundingClientRect(),P={x:v.clientX-(D?z.left-V.left+D.scrollLeft:z.left),y:v.clientY-(D?z.top-V.top+D.scrollTop:z.top)};u?.(P,v)!==!1&&(p.value=P,T(v))},N=v=>{if(t.toValue(n.disabled)||!k(v)||!p.value)return;const R=t.toValue(h),D=t.toValue(e).getBoundingClientRect();let{x:V,y:z}=m.value;(w==="x"||w==="both")&&(V=v.clientX-p.value.x,R&&(V=Math.min(Math.max(0,V),R.scrollWidth-D.width))),(w==="y"||w==="both")&&(z=v.clientY-p.value.y,R&&(z=Math.min(Math.max(0,z),R.scrollHeight-D.height))),m.value={x:V,y:z},o?.(m.value,v),T(v)},B=v=>{t.toValue(n.disabled)||!k(v)||p.value&&(p.value=void 0,l?.(m.value,v),T(v))};if(oe){const v=()=>{var R;return{capture:(R=n.capture)!=null?R:!0,passive:!t.toValue(d)}};_(E,"pointerdown",A,v),_(y,"pointermove",N,v),_(y,"pointerup",B,v)}return{...Vt(m),position:m,isDragging:t.computed(()=>!!p.value),style:t.computed(()=>`left:${m.value.x}px;top:${m.value.y}px;`)}}function Nt(e,n,a={}){const{window:s=ae,...d}=a;let c;const i=We(()=>s&&"ResizeObserver"in s),o=()=>{c&&(c.disconnect(),c=void 0)},l=t.computed(()=>{const w=t.toValue(e);return Array.isArray(w)?w.map(y=>Q(y)):[Q(w)]}),u=t.watch(l,w=>{if(o(),i.value&&s){c=new ResizeObserver(n);for(const y of w)y&&c.observe(y,d)}},{immediate:!0,flush:"post"}),g=()=>{o(),u()};return Z(g),{isSupported:i,stop:g}}function F(e,n={}){const{reset:a=!0,windowResize:s=!0,windowScroll:d=!0,immediate:c=!0,updateTiming:i="sync"}=n,o=t.shallowRef(0),l=t.shallowRef(0),u=t.shallowRef(0),g=t.shallowRef(0),w=t.shallowRef(0),y=t.shallowRef(0),h=t.shallowRef(0),E=t.shallowRef(0);function x(){const p=Q(e);if(!p){a&&(o.value=0,l.value=0,u.value=0,g.value=0,w.value=0,y.value=0,h.value=0,E.value=0);return}const k=p.getBoundingClientRect();o.value=k.height,l.value=k.bottom,u.value=k.left,g.value=k.right,w.value=k.top,y.value=k.width,h.value=k.x,E.value=k.y}function m(){i==="sync"?x():i==="next-frame"&&requestAnimationFrame(()=>x())}return Nt(e,m),t.watch(()=>Q(e),p=>!p&&m()),Xe(e,m,{attributeFilter:["style","class"]}),d&&_("scroll",m,{capture:!0,passive:!0}),s&&_("resize",m,{passive:!0}),Dt(()=>{c&&m()}),{height:o,bottom:l,left:u,right:g,top:w,width:y,x:h,y:E,update:m}}const Pt=e=>{const n=new DOMParser().parseFromString(e,"text/html");return Array.from(n.body.childNodes).some(a=>a.nodeType===1)},Ht=(e=8)=>Array.from({length:e},()=>Math.floor(Math.random()*16).toString(16)).join(""),Lt=["data-colindex","data-rowindex","data-editable","contenteditable","tabindex"],Wt=["innerHTML"],Xt={key:2},Ge=t.defineComponent({__name:"ACell",props:{colIndex:{},rowIndex:{},store:{},addNavigation:{type:[Boolean,Object],default:!0},tabIndex:{default:0},pinned:{type:Boolean,default:!1},debounce:{default:300}},setup(e,{expose:n}){const a=t.useTemplateRef("cell"),s=e.store.getCellData(e.colIndex,e.rowIndex),d=t.ref(""),c=t.ref(!1),i=e.store.columns[e.colIndex],o=e.store.rows[e.rowIndex],l=i.align||"center",u=i.width||"40ch",g=t.computed(()=>e.store.getCellDisplayValue(e.colIndex,e.rowIndex)),w=t.computed(()=>typeof g.value=="string"?Pt(g.value):!1),y=t.computed(()=>({textAlign:l,width:u,fontWeight:c.value?"bold":"inherit",paddingLeft:e.store.getIndent(e.colIndex,e.store.display[e.rowIndex]?.indent)})),h=t.computed(()=>({"sticky-column":e.pinned,"cell-modified":c.value})),E=()=>{m(),x()},x=()=>{const{left:B,bottom:v,width:R,height:D}=F(a);i.mask,i.modalComponent&&e.store.$patch(V=>{V.modal.visible=!0,V.modal.colIndex=e.colIndex,V.modal.rowIndex=e.rowIndex,V.modal.left=B,V.modal.bottom=v,V.modal.width=R,V.modal.height=D,V.modal.cell=a.value,typeof i.modalComponent=="function"?V.modal.component=i.modalComponent({table:V.table,row:o,column:i}):V.modal.component=i.modalComponent,V.modal.componentProps=i.modalComponentExtraProps})};if(e.addNavigation){let B={...pe,"keydown.f2":x,"keydown.alt.up":x,"keydown.alt.down":x,"keydown.alt.left":x,"keydown.alt.right":x};typeof e.addNavigation=="object"&&(B={...B,...e.addNavigation}),be([{selectors:a,handlers:B}])}const m=()=>{if(a.value&&i.edit){const B=window.getSelection();if(B)try{const v=document.createRange();v.selectNodeContents&&(v.selectNodeContents(a.value),B.removeAllRanges(),B.addRange(v))}catch{}}},p=()=>{a.value&&(d.value=a.value.textContent,m())},k=()=>{try{const B=window.getSelection();if(B&&B.rangeCount>0&&a.value){const v=B.getRangeAt(0),R=v.cloneRange();if(R.selectNodeContents&&R.setEnd)return R.selectNodeContents(a.value),R.setEnd(v.endContainer,v.endOffset),R.toString().length}}catch{}return 0},T=B=>{if(a.value)try{const v=window.getSelection();if(!v)return;let R=0;const D=document.createTreeWalker?document.createTreeWalker(a.value,NodeFilter.SHOW_TEXT,null):null;if(!D)return;let V,z=null;for(;V=D.nextNode();){const P=V,X=R+P.textContent.length;if(B<=X&&(z=document.createRange(),z.setStart&&z.setEnd)){z.setStart(P,B-R),z.setEnd(P,B-R);break}R=X}z&&v.removeAllRanges&&v.addRange&&(v.removeAllRanges(),v.addRange(z))}catch{}},A=B=>{if(!i.edit)return;const v=B.target;if(v.textContent===d.value)return;const R=k();d.value=v.textContent,i.format?(c.value=v.textContent!==e.store.getFormattedValue(e.colIndex,e.rowIndex,s),e.store.setCellText(e.colIndex,e.rowIndex,v.textContent)):(c.value=v.textContent!==s,e.store.setCellData(e.colIndex,e.rowIndex,v.textContent)),t.nextTick().then(()=>{T(R)})},N=At(A,e.debounce);return n({currentData:d}),(B,v)=>(t.openBlock(),t.createElementBlock("td",{ref:"cell","data-colindex":e.colIndex,"data-rowindex":e.rowIndex,"data-editable":t.unref(i).edit,contenteditable:t.unref(i).edit,tabindex:e.tabIndex,spellcheck:!1,style:t.normalizeStyle(y.value),onFocus:p,onPaste:A,onInput:v[0]||(v[0]=(...R)=>t.unref(N)&&t.unref(N)(...R)),onClick:E,class:t.normalizeClass(["atable-cell",h.value])},[t.unref(i).cellComponent?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(i).cellComponent),t.mergeProps({key:0,value:g.value},t.unref(i).cellComponentProps),null,16,["value"])):w.value?(t.openBlock(),t.createElementBlock("span",{key:1,innerHTML:g.value},null,8,Wt)):(t.openBlock(),t.createElementBlock("span",Xt,t.toDisplayString(g.value),1))],46,Lt))}}),Gt=["tabindex"],Ft=["tabindex"],Yt=["colspan"],jt=t.defineComponent({__name:"AExpansionRow",props:{rowIndex:{},store:{},tabIndex:{default:()=>-1},addNavigation:{type:[Boolean,Object]}},setup(e){const n=t.useTemplateRef("rowEl"),a=t.computed(()=>e.store.display[e.rowIndex].expanded?"▼":"►");if(e.addNavigation){const s={"keydown.control.g":d=>{d.stopPropagation(),d.preventDefault(),e.store.toggleRowExpand(e.rowIndex)}};typeof e.addNavigation=="object"&&Object.assign(s,e.addNavigation),be([{selectors:n,handlers:s}])}return(s,d)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("tr",t.mergeProps(s.$attrs,{ref:"rowEl",tabindex:e.tabIndex,class:"expandable-row"}),[t.createElementVNode("td",{tabIndex:-1,onClick:d[0]||(d[0]=c=>e.store.toggleRowExpand(e.rowIndex)),class:"row-index"},t.toDisplayString(a.value),1),t.renderSlot(s.$slots,"row",{},void 0,!0)],16,Gt),e.store.display[e.rowIndex].expanded?(t.openBlock(),t.createElementBlock("tr",{key:0,ref:"rowExpanded",tabindex:e.tabIndex,class:"expanded-row"},[t.createElementVNode("td",{tabIndex:-1,colspan:e.store.columns.length+1,class:"expanded-row-content"},[t.renderSlot(s.$slots,"content",{},void 0,!0)],8,Yt)],8,Ft)):t.createCommentVNode("",!0)],64))}}),Y=(e,n)=>{const a=e.__vccOpts||e;for(const[s,d]of n)a[s]=d;return a},Fe=Y(jt,[["__scopeId","data-v-5ad4bb41"]]),Ut=["colspan"],qt={ref:"container",class:"gantt-container"},Jt=["data-rowindex","data-colindex"],Zt={key:2,class:"gantt-label"},Qt=["x1","y1","x2","y2"],Ye=Y(t.defineComponent({__name:"AGanttCell",props:{store:{},columnsCount:{},rowIndex:{},colIndex:{},start:{default:0},end:{},colspan:{default:1},label:{},color:{default:"#cccccc"}},emits:["connection:create"],setup(e,{expose:n,emit:a}){t.useCssVars(I=>({v17bc2643:d.value,v0a8a9192:I.colspan}));const s=a,d=t.ref(e.color.length>=6?e.color:"#cccccc"),c=`gantt-bar-row-${e.rowIndex}-col-${e.colIndex}`,i=t.useTemplateRef("container"),o=t.useTemplateRef("bar"),l=t.useTemplateRef("leftResizeHandle"),u=t.useTemplateRef("rightResizeHandle"),g=t.useTemplateRef("leftConnectionHandle"),w=t.useTemplateRef("rightConnectionHandle"),{width:y}=F(i),{left:h,right:E}=F(o),x=t.ref(e.start),m=t.ref(e.end||x.value+e.colspan),p=t.ref(!1),k=t.ref(!1),T=t.ref(!1),A=t.ref(!1),N=t.ref(!1),B=t.ref({startX:0,startY:0,endX:0,endY:0}),v=t.computed(()=>ie.value||P.value||X.value),R=t.computed(()=>e.colspan>0?y.value/e.colspan:0),D=t.computed(()=>{const I=x.value/e.colspan*100,r=m.value/e.colspan*100;return{left:`${I}%`,width:`${r-I}%`,backgroundColor:d.value}}),V=t.computed(()=>({position:"fixed",top:0,left:0,width:"100vw",height:"100vh",pointerEvents:"none",zIndex:1e3})),z=t.ref({startX:0,startPos:0}),{isDragging:P}=xe(l,{axis:"x",onStart:()=>ee(h.value,x.value),onMove:({x:I})=>se(I),onEnd:({x:I})=>Re(I)}),{isDragging:X}=xe(u,{axis:"x",onStart:()=>ee(E.value,m.value),onMove:({x:I})=>ce(I),onEnd:({x:I})=>et(I)}),{isDragging:ie}=xe(o,{exact:!0,axis:"x",onStart:()=>ee(h.value,x.value),onMove:({x:I})=>tt(I),onEnd:({x:I})=>nt(I)});t.onMounted(()=>{ot()}),t.onUnmounted(()=>{at()});function ee(I,r){o.value&&(o.value.style.transition="none"),z.value={startX:I,startPos:r}}function se(I){if(!P.value||!o.value)return;const f=(I-z.value.startX)/R.value,b=Math.max(0,Math.min(m.value-1,z.value.startPos+f));o.value.style.left=`${b/e.colspan*100}%`,o.value.style.width=`${(m.value-b)/e.colspan*100}%`}function Re(I){if(!o.value)return;const r=I-z.value.startX,f=Math.round(r/R.value),b=x.value,C=Math.max(0,Math.min(m.value-1,z.value.startPos+f));x.value=C,e.store.updateGanttBar({rowIndex:e.rowIndex,colIndex:e.colIndex,type:"resize",edge:"start",oldStart:b,newStart:C,end:m.value,delta:f,oldColspan:m.value-b,newColspan:m.value-C})}function ce(I){if(!X.value||!o.value)return;const f=(I-z.value.startX)/R.value,b=Math.max(x.value+1,Math.min(e.columnsCount,z.value.startPos+f));o.value.style.width=`${(b-x.value)/e.colspan*100}%`}function et(I){if(!o.value)return;const r=I-z.value.startX,f=Math.round(r/R.value),b=m.value,C=Math.max(x.value+1,Math.min(e.columnsCount,z.value.startPos+f));m.value=C,e.store.updateGanttBar({rowIndex:e.rowIndex,colIndex:e.colIndex,type:"resize",edge:"end",oldEnd:b,newEnd:C,start:x.value,delta:f,oldColspan:b-x.value,newColspan:C-x.value})}function tt(I){if(!ie.value||!o.value)return;const f=(I-z.value.startX)/R.value,b=m.value-x.value,C=Math.max(0,Math.min(z.value.startPos+f,e.columnsCount-b));o.value.style.left=`${C/e.colspan*100}%`}function nt(I){if(!o.value)return;const r=I-z.value.startX,f=Math.round(r/R.value),b=m.value-x.value,C=x.value,M=m.value;let S=z.value.startPos+f,$=S+b;S<0?(S=0,$=b):$>e.columnsCount&&($=e.columnsCount,S=$-b),x.value=S,m.value=$,e.store.updateGanttBar({rowIndex:e.rowIndex,colIndex:e.colIndex,type:"bar",oldStart:C,oldEnd:M,newStart:S,newEnd:$,delta:f,colspan:$-S})}function ot(){const{x:I,y:r}=F(o),{x:f,y:b}=F(g),{x:C,y:M}=F(w);e.store.registerGanttBar({id:c,rowIndex:e.rowIndex,colIndex:e.colIndex,startIndex:x,endIndex:m,color:d,label:e.label,position:{x:I,y:r}}),e.store.isDependencyGraphEnabled&&(e.store.registerConnectionHandle({id:`${c}-connection-left`,rowIndex:e.rowIndex,colIndex:e.colIndex,side:"left",position:{x:f,y:b},visible:p,barId:c}),e.store.registerConnectionHandle({id:`${c}-connection-right`,rowIndex:e.rowIndex,colIndex:e.colIndex,side:"right",position:{x:C,y:M},visible:k,barId:c}))}function at(){e.store.unregisterGanttBar(c),e.store.isDependencyGraphEnabled&&(e.store.unregisterConnectionHandle(`${c}-connection-left`),e.store.unregisterConnectionHandle(`${c}-connection-right`))}function lt(){e.store.isDependencyGraphEnabled&&(p.value=!0,k.value=!0)}function Be(){!T.value&&!A.value&&(p.value=!1,k.value=!1)}function $e(I,r){r.preventDefault(),r.stopPropagation(),N.value=!0,I==="left"?T.value=!0:A.value=!0;const f=I==="left"?g.value:w.value;if(f){const M=f.getBoundingClientRect(),S=M.left+M.width/2,$=M.top+M.height/2;B.value={startX:S,startY:$,endX:S,endY:$}}const b=M=>{B.value.endX=M.clientX,B.value.endY=M.clientY},C=M=>{ze(M,I),Me(b,C)};document.addEventListener("mousemove",b),document.addEventListener("mouseup",C)}function ze(I,r){const b=document.elementFromPoint(I.clientX,I.clientY)?.closest(".connection-handle");if(b&&b!==(r==="left"?g.value:w.value)){const C=b.closest(".gantt-bar");if(C){const M=parseInt(C.getAttribute("data-rowindex")||"0"),S=parseInt(C.getAttribute("data-colindex")||"0"),$=b.classList.contains("left-connection-handle")?"left":"right",U=`gantt-bar-row-${M}-col-${S}`,de=e.store.createConnection(`${c}-connection-${r}`,`${U}-connection-${$}`);de&&s("connection:create",de)}}}function Me(I,r){N.value=!1,T.value=!1,A.value=!1,document.removeEventListener("mousemove",I),document.removeEventListener("mouseup",r),o.value?.matches(":hover")||Be()}return n({barStyle:D,cleanupConnectionDrag:Me,currentEnd:m,handleConnectionDrop:ze,isLeftConnectionDragging:T,isLeftConnectionVisible:p,isRightConnectionDragging:A,isRightConnectionVisible:k,showDragPreview:N}),(I,r)=>(t.openBlock(),t.createElementBlock("td",{class:"aganttcell",colspan:e.colspan},[t.createElementVNode("div",qt,[t.createElementVNode("div",{ref:"bar","data-rowindex":e.rowIndex,"data-colindex":e.colIndex,class:t.normalizeClass(["gantt-bar",{"is-dragging":v.value}]),style:t.normalizeStyle(D.value),onMouseenter:lt,onMouseleave:Be},[e.store.isDependencyGraphEnabled?(t.openBlock(),t.createElementBlock("div",{key:0,ref:"leftConnectionHandle",class:t.normalizeClass(["connection-handle left-connection-handle",{visible:p.value,"is-dragging":T.value}]),onMousedown:r[0]||(r[0]=t.withModifiers(f=>$e("left",f),["stop"]))},[...r[2]||(r[2]=[t.createElementVNode("div",{class:"connection-dot"},null,-1)])],34)):t.createCommentVNode("",!0),e.store.isDependencyGraphEnabled?(t.openBlock(),t.createElementBlock("div",{key:1,ref:"rightConnectionHandle",class:t.normalizeClass(["connection-handle right-connection-handle",{visible:k.value,"is-dragging":A.value}]),onMousedown:r[1]||(r[1]=t.withModifiers(f=>$e("right",f),["stop"]))},[...r[3]||(r[3]=[t.createElementVNode("div",{class:"connection-dot"},null,-1)])],34)):t.createCommentVNode("",!0),t.createElementVNode("div",{ref:"leftResizeHandle",class:t.normalizeClass(["resize-handle left-resize-handle",{"is-dragging":t.unref(P)}])},[...r[4]||(r[4]=[t.createElementVNode("div",{class:"handle-grip"},null,-1),t.createElementVNode("div",{class:"vertical-indicator left-indicator"},null,-1)])],2),e.label?(t.openBlock(),t.createElementBlock("label",Zt,t.toDisplayString(e.label),1)):t.createCommentVNode("",!0),t.createElementVNode("div",{ref:"rightResizeHandle",class:t.normalizeClass(["resize-handle right-resize-handle",{"is-dragging":t.unref(X)}])},[...r[5]||(r[5]=[t.createElementVNode("div",{class:"handle-grip"},null,-1),t.createElementVNode("div",{class:"vertical-indicator right-indicator"},null,-1)])],2)],46,Jt)],512),e.store.isDependencyGraphEnabled&&N.value?(t.openBlock(),t.createElementBlock("svg",{key:0,style:t.normalizeStyle(V.value)},[t.createElementVNode("line",{x1:B.value.startX,y1:B.value.startY,x2:B.value.endX,y2:B.value.endY,stroke:"#2196f3","stroke-width":"2","stroke-dasharray":"5,5"},null,8,Qt)],4)):t.createCommentVNode("",!0)],8,Ut))}}),[["__scopeId","data-v-52febd32"]]),Kt=["tabindex"],ve=Y(t.defineComponent({__name:"ARow",props:{rowIndex:{},store:{},tabIndex:{default:()=>-1},addNavigation:{type:[Boolean,Object],default:!1}},setup(e){const n=t.useTemplateRef("rowEl"),a=t.computed(()=>e.store.isRowVisible(e.rowIndex)),s=t.computed(()=>e.store.getRowExpandSymbol(e.rowIndex));if(e.addNavigation){let d=pe;typeof e.addNavigation=="object"&&(d={...d,...e.addNavigation}),be([{selectors:n,handlers:d}])}return(d,c)=>t.withDirectives((t.openBlock(),t.createElementBlock("tr",{ref:"rowEl",tabindex:e.tabIndex,class:"atable-row"},[e.store.config.view!=="uncounted"?t.renderSlot(d.$slots,"index",{key:0},()=>[e.store.config.view==="list"?(t.openBlock(),t.createElementBlock("td",{key:0,tabIndex:-1,class:t.normalizeClass(["list-index",e.store.hasPinnedColumns?"sticky-index":""])},t.toDisplayString(e.rowIndex+1),3)):e.store.isTreeView?(t.openBlock(),t.createElementBlock("td",{key:1,tabIndex:-1,class:t.normalizeClass(["tree-index",e.store.hasPinnedColumns?"sticky-index":""]),onClick:c[0]||(c[0]=i=>e.store.toggleRowExpand(e.rowIndex))},t.toDisplayString(s.value),3)):t.createCommentVNode("",!0)],!0):t.createCommentVNode("",!0),t.renderSlot(d.$slots,"default",{},void 0,!0)],8,Kt)),[[t.vShow,a.value]])}}),[["__scopeId","data-v-c554ee0f"]]),ye=oe?window:void 0;function j(e){var n;const a=t.toValue(e);return(n=a?.$el)!=null?n:a}function le(...e){const n=[],a=()=>{n.forEach(o=>o()),n.length=0},s=(o,l,u,g)=>(o.addEventListener(l,u,g),()=>o.removeEventListener(l,u,g)),d=t.computed(()=>{const o=G(t.toValue(e[0])).filter(l=>l!=null);return o.every(l=>typeof l!="string")?o:void 0}),c=Le(()=>{var o,l;return[(l=(o=d.value)==null?void 0:o.map(u=>j(u)))!=null?l:[ye].filter(u=>u!=null),G(t.toValue(d.value?e[1]:e[0])),G(t.unref(d.value?e[2]:e[1])),t.toValue(d.value?e[3]:e[2])]},([o,l,u,g])=>{if(a(),!o?.length||!l?.length||!u?.length)return;const w=He(g)?{...g}:g;n.push(...o.flatMap(y=>l.flatMap(h=>u.map(E=>s(y,h,E,w)))))},{flush:"post"}),i=()=>{c(),a()};return Z(a),i}let je=!1;function Ue(e,n,a={}){const{window:s=ye,ignore:d=[],capture:c=!0,detectIframe:i=!1,controls:o=!1}=a;if(!s)return o?{stop:W,cancel:W,trigger:W}:W;if(we&&!je){je=!0;const m={passive:!0};Array.from(s.document.body.children).forEach(p=>p.addEventListener("click",W,m)),s.document.documentElement.addEventListener("click",W,m)}let l=!0;const u=m=>t.toValue(d).some(p=>{if(typeof p=="string")return Array.from(s.document.querySelectorAll(p)).some(k=>k===m.target||m.composedPath().includes(k));{const k=j(p);return k&&(m.target===k||m.composedPath().includes(k))}});function g(m){const p=t.toValue(m);return p&&p.$.subTree.shapeFlag===16}function w(m,p){const k=t.toValue(m),T=k.$.subTree&&k.$.subTree.children;return T==null||!Array.isArray(T)?!1:T.some(A=>A.el===p.target||p.composedPath().includes(A.el))}const y=m=>{const p=j(e);if(m.target!=null&&!(!(p instanceof Element)&&g(e)&&w(e,m))&&!(!p||p===m.target||m.composedPath().includes(p))){if("detail"in m&&m.detail===0&&(l=!u(m)),!l){l=!0;return}n(m)}};let h=!1;const E=[le(s,"click",m=>{h||(h=!0,setTimeout(()=>{h=!1},0),y(m))},{passive:!0,capture:c}),le(s,"pointerdown",m=>{const p=j(e);l=!u(m)&&!!(p&&!m.composedPath().includes(p))},{passive:!0}),i&&le(s,"blur",m=>{setTimeout(()=>{var p;const k=j(e);((p=s.document.activeElement)==null?void 0:p.tagName)==="IFRAME"&&!k?.contains(s.document.activeElement)&&n(m)},0)},{passive:!0})].filter(Boolean),x=()=>E.forEach(m=>m());return o?{stop:x,cancel:()=>{l=!1},trigger:m=>{l=!0,y(m),l=!1}}:x}const ke=new WeakMap,_t={mounted(e,n){const a=!n.modifiers.bubble;let s;if(typeof n.value=="function")s=Ue(e,n.value,{capture:a});else{const[d,c]=n.value;s=Ue(e,d,Object.assign({capture:a},c))}ke.set(e,s)},unmounted(e){const n=ke.get(e);n&&typeof n=="function"?n():n?.stop(),ke.delete(e)}};function en(){const e=t.shallowRef(!1),n=t.getCurrentInstance();return n&&t.onMounted(()=>{e.value=!0},n),e}function tn(e){const n=en();return t.computed(()=>(n.value,!!e()))}function qe(e,n,a={}){const{window:s=ye,...d}=a;let c;const i=tn(()=>s&&"ResizeObserver"in s),o=()=>{c&&(c.disconnect(),c=void 0)},l=t.computed(()=>{const w=t.toValue(e);return Array.isArray(w)?w.map(y=>j(y)):[j(w)]}),u=t.watch(l,w=>{if(o(),i.value&&s){c=new ResizeObserver(n);for(const y of w)y&&c.observe(y,d)}},{immediate:!0,flush:"post"}),g=()=>{o(),u()};return Z(g),{isSupported:i,stop:g}}function Ce(e){return typeof Window<"u"&&e instanceof Window?e.document.documentElement:typeof Document<"u"&&e instanceof Document?e.documentElement:e}const nn={mounted(e,n){typeof n.value=="function"?qe(e,n.value):qe(e,...n.value)}};function Je(e){const n=window.getComputedStyle(e);if(n.overflowX==="scroll"||n.overflowY==="scroll"||n.overflowX==="auto"&&e.clientWidth<e.scrollWidth||n.overflowY==="auto"&&e.clientHeight<e.scrollHeight)return!0;{const a=e.parentNode;return!a||a.tagName==="BODY"?!1:Je(a)}}function on(e){const n=e||window.event,a=n.target;return Je(a)?!1:n.touches.length>1?!0:(n.preventDefault&&n.preventDefault(),!1)}const Ee=new WeakMap;function an(e,n=!1){const a=t.shallowRef(n);let s=null,d="";t.watch($t(e),o=>{const l=Ce(t.toValue(o));if(l){const u=l;if(Ee.get(u)||Ee.set(u,u.style.overflow),u.style.overflow!=="hidden"&&(d=u.style.overflow),u.style.overflow==="hidden")return a.value=!0;if(a.value)return u.style.overflow="hidden"}},{immediate:!0});const c=()=>{const o=Ce(t.toValue(e));!o||a.value||(we&&(s=le(o,"touchmove",l=>{on(l)},{passive:!1})),o.style.overflow="hidden",a.value=!0)},i=()=>{const o=Ce(t.toValue(e));!o||!a.value||(we&&s?.(),o.style.overflow=d,Ee.delete(o),a.value=!1)};return Z(i),t.computed({get(){return a.value},set(o){o?c():i()}})}function ln(){let e=!1;const n=t.shallowRef(!1);return(a,s)=>{if(n.value=s.value,e)return;e=!0;const d=an(a,s.value);t.watch(n,c=>d.value=c)}}ln();const rn={class:"gantt-connection-overlay"},sn={class:"connection-svg",style:{position:"absolute",top:0,left:0,width:"100%",height:"100%",pointerEvents:"none",zIndex:1}},cn=["d","stroke-width","onDblclick"],dn=["d","stroke","stroke-width","id","onDblclick"],fn=.25,re=16,un=Y(t.defineComponent({__name:"AGanttConnection",props:{store:{}},emits:["connection:delete"],setup(e,{emit:n}){const a=n,s=t.computed(()=>e.store.connectionPaths.filter(i=>{const o=e.store.ganttBars.find(u=>u.id===i.from.barId),l=e.store.ganttBars.find(u=>u.id===i.to.barId);return o&&l})),d=(i,o=!1)=>{const l=e.store.connectionHandles.find(R=>R.barId===i.from.barId&&R.side===i.from.side),u=e.store.connectionHandles.find(R=>R.barId===i.to.barId&&R.side===i.to.side);if(!l||!u)return"";const g=l.position.x+re/2,w=l.position.y+re/2,y=u.position.x+re/2,h=u.position.y+re/2,E=Math.abs(y-g),x=Math.max(E*fn,50),m=g+(i.from.side==="left"?-x:x),p=y+(i.to.side==="left"?-x:x),k={x:.5*g+.5*m,y:.5*w+.5*w},T={x:.5*m+.5*p,y:.5*w+.5*h},A={x:.5*p+.5*y,y:.5*h+.5*h},N={x:.5*k.x+.5*T.x,y:.5*k.y+.5*T.y},B={x:.5*T.x+.5*A.x,y:.5*T.y+.5*A.y},v={x:.5*N.x+.5*B.x,y:.5*N.y+.5*B.y};return`M ${g} ${w} Q ${m} ${w}, ${v.x} ${v.y} Q ${p} ${h}, ${y} ${h}`},c=i=>{e.store.deleteConnection(i.id)&&a("connection:delete",i)};return(i,o)=>(t.openBlock(),t.createElementBlock("div",rn,[(t.openBlock(),t.createElementBlock("svg",sn,[o[0]||(o[0]=t.createElementVNode("defs",null,[t.createElementVNode("path",{id:"arrowhead",d:"M 0 -7 L 20 0 L 0 7Z",stroke:"black","stroke-width":"1",fill:"currentColor"}),t.createElementVNode("marker",{id:"arrowhead-marker",markerWidth:"10",markerHeight:"7",refX:"5",refY:"3.5",orient:"auto",markerUnits:"strokeWidth"},[t.createElementVNode("polygon",{points:"0 0, 10 3.5, 0 7",fill:"currentColor"})])],-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,l=>(t.openBlock(),t.createElementBlock("path",{key:`${l.id}-hitbox`,d:d(l),stroke:"transparent","stroke-width":(l.style?.width||2)+10,fill:"none",class:"connection-hitbox",onDblclick:u=>c(l)},null,40,cn))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,l=>(t.openBlock(),t.createElementBlock("path",{key:l.id,d:d(l),stroke:l.style?.color||"#666","stroke-width":l.style?.width||2,fill:"none","marker-mid":"url(#arrowhead-marker)",id:l.id,class:"connection-path animated-path",onDblclick:u=>c(l)},null,40,dn))),128))]))]))}}),[["__scopeId","data-v-955111b6"]]),gn={key:0},mn={class:"atable-header-row",tabindex:"-1"},hn=["data-colindex"],Ie=t.defineComponent({__name:"ATableHeader",props:{columns:{},store:{}},setup(e){const n=a=>{for(const s of a){if(s.borderBoxSize.length===0)continue;const c=s.borderBoxSize[0].inlineSize,i=Number(s.target.dataset.colindex),o=e.store.columns[i]?.width;typeof o=="number"&&o!==c&&e.store.resizeColumn(i,c)}};return(a,s)=>e.columns.length?(t.openBlock(),t.createElementBlock("thead",gn,[t.createElementVNode("tr",mn,[e.store.zeroColumn?(t.openBlock(),t.createElementBlock("th",{key:0,id:"header-index",class:t.normalizeClass([[e.store.hasPinnedColumns?"sticky-index":"",e.store.isTreeView?"tree-index":"",e.store.config.view==="list-expansion"?"list-expansion-index":""],"list-index"])},null,2)):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.columns,(d,c)=>t.withDirectives((t.openBlock(),t.createElementBlock("th",{key:d.name,"data-colindex":c,tabindex:"-1",style:t.normalizeStyle(e.store.getHeaderCellStyle(d)),class:t.normalizeClass(d.pinned?"sticky-column":"")},[t.renderSlot(a.$slots,"default",{},()=>[t.createTextVNode(t.toDisplayString(d.label||String.fromCharCode(c+97).toUpperCase()),1)])],14,hn)),[[t.unref(nn),n]])),128))])])):t.createCommentVNode("",!0)}}),Se=t.defineComponent({__name:"ATableModal",props:{store:{}},setup(e){const n=t.useTemplateRef("amodal"),{width:a,height:s}=F(n),d=t.computed(()=>{if(!(e.store.modal.height&&e.store.modal.width&&e.store.modal.left&&e.store.modal.bottom))return;const c=e.store.modal.cell?.closest("table"),i=c.offsetHeight||0,o=c.offsetWidth||0;let l=e.store.modal.cell?.offsetTop||0;const u=c.querySelector("thead")?.offsetHeight||0;l+=u,l=l+s.value<i?l:l-(s.value+e.store.modal.height);let g=e.store.modal.cell?.offsetLeft||0;return g=g+a.value<=o?g:g-(a.value-e.store.modal.width),{left:`${g}px`,top:`${l}px`}});return(c,i)=>(t.openBlock(),t.createElementBlock("div",{class:"amodal",ref:"amodal",tabindex:"-1",onClick:i[0]||(i[0]=t.withModifiers(()=>{},["stop"])),onInput:i[1]||(i[1]=t.withModifiers(()=>{},["stop"])),style:t.normalizeStyle(d.value)},[t.renderSlot(c.$slots,"default")],36))}}),Ze=e=>{const n=e.id||Ht();return rt.defineStore(`table-${n}`,()=>{const s=()=>{const r=[Object.assign({},{rowModified:!1})],f=new Set;for(let S=0;S<c.value.length;S++){const $=c.value[S];$.parent!==null&&$.parent!==void 0&&f.add($.parent)}const b=S=>c.value[S]?.gantt!==void 0,C=S=>{for(let $=0;$<c.value.length;$++)if(c.value[$].parent===S&&(b($)||C($)))return!0;return!1},M=S=>{const $=i.value,U=$.view==="tree"||$.view==="tree-gantt"?$.defaultTreeExpansion:void 0;if(!U)return!0;switch(U){case"root":return!1;case"branch":return C(S);case"leaf":return!0;default:return!0}};for(let S=0;S<c.value.length;S++){const $=c.value[S],U=$.parent===null||$.parent===void 0,de=f.has(S);r[S]={childrenOpen:M(S),expanded:!1,indent:$.indent||0,isParent:de,isRoot:U,rowModified:!1,open:U,parent:$.parent}}return r},d=t.ref(e.columns),c=t.ref(e.rows),i=t.ref(e.config||{}),o=t.ref({}),l=t.ref({}),u=t.computed(()=>{const r={};for(const[f,b]of d.value.entries())for(const[C,M]of c.value.entries())r[`${f}:${C}`]=M[b.name];return r}),g=t.computed({get:()=>{const r=s();for(let f=0;f<r.length;f++)o.value[f]&&(r[f].rowModified=o.value[f]),l.value[f]&&(l.value[f].childrenOpen!==void 0&&(r[f].childrenOpen=l.value[f].childrenOpen),l.value[f].expanded!==void 0&&(r[f].expanded=l.value[f].expanded));if(k.value){const f=(b,C)=>{const M=C[b];if(M.isRoot||M.parent===null||M.parent===void 0)return!0;const S=M.parent;return S<0||S>=C.length?!1:(C[S].childrenOpen||!1)&&f(S,C)};for(let b=0;b<r.length;b++)r[b].isRoot||(r[b].open=f(b,r))}return r},set:r=>{JSON.stringify(r)!==JSON.stringify(g.value)&&(g.value=r)}}),w=t.ref(e.modal||{visible:!1}),y=t.ref({}),h=t.ref([]),E=t.ref([]),x=t.ref([]),m=t.computed(()=>d.value.some(r=>r.pinned)),p=t.computed(()=>i.value.view==="gantt"||i.value.view==="tree-gantt"),k=t.computed(()=>i.value.view==="tree"||i.value.view==="tree-gantt"),T=t.computed(()=>{const r=i.value;return r.view==="gantt"||r.view==="tree-gantt"?r.dependencyGraph!==!1:!0}),A=t.computed(()=>`${Math.ceil(c.value.length/100+1)}ch`),N=t.computed(()=>i.value.view?["list","tree","tree-gantt","list-expansion"].includes(i.value.view):!1),B=(r,f)=>u.value[`${r}:${f}`],v=(r,f,b)=>{const C=`${r}:${f}`,M=d.value[r];u.value[C]!==b&&(o.value[f]=!0),u.value[C]=b,c.value[f]={...c.value[f],[M.name]:b}},R=r=>{c.value=r},D=(r,f,b)=>{const C=`${r}:${f}`;u.value[C]!==b&&(o.value[f]=!0,y.value[C]=b)},V=r=>{const f=d.value.indexOf(r)===d.value.length-1,b=i.value.fullWidth?r.resizable&&!f:r.resizable;return{width:r.width||"40ch",textAlign:r.align||"center",...b&&{resize:"horizontal",overflow:"hidden",whiteSpace:"nowrap"}}},z=(r,f)=>{if(r<0||r>=d.value.length)return;const C=Math.max(f,40);d.value[r]={...d.value[r],width:`${C}px`}},P=r=>{const f=c.value[r];return p.value&&f.gantt!==void 0},X=r=>!k.value||g.value[r].isRoot||g.value[r].open,ie=r=>!k.value&&i.value.view!=="list-expansion"?"":k.value&&(g.value[r].isRoot||g.value[r].isParent)?g.value[r].childrenOpen?"▼":"►":i.value.view==="list-expansion"?g.value[r].expanded?"▼":"►":"",ee=r=>{if(k.value){const f=l.value[r]||{},C=!(f.childrenOpen??g.value[r].childrenOpen);l.value[r]={...f,childrenOpen:C},C||se(r)}else if(i.value.view==="list-expansion"){const f=l.value[r]||{},b=f.expanded??g.value[r].expanded;l.value[r]={...f,expanded:!b}}},se=r=>{for(let f=0;f<c.value.length;f++)if(g.value[f].parent===r){const b=l.value[f]||{};l.value[f]={...b,childrenOpen:!1},se(f)}},Re=(r,f)=>{const b=B(r,f);return ce(r,f,b)},ce=(r,f,b)=>{const C=d.value[r],M=c.value[f],S=C.format;return S?typeof S=="function"?S(b,{table:u.value,row:M,column:C}):typeof S=="string"?Function(`"use strict";return (${S})`)()(b,{table:u.value,row:M,column:C}):b:b};return{columns:d,config:i,connectionHandles:E,connectionPaths:x,display:g,ganttBars:h,modal:w,rows:c,table:u,updates:y,hasPinnedColumns:m,isGanttView:p,isTreeView:k,isDependencyGraphEnabled:T,numberedRowWidth:A,zeroColumn:N,closeModal:r=>{r.target instanceof Node&&w.value.parent?.contains(r.target)||w.value.visible&&(w.value.visible=!1)},createConnection:(r,f,b)=>{const C=E.value.find($=>$.id===r),M=E.value.find($=>$.id===f);if(!C||!M)return console.warn("Cannot create connection: handle not found"),null;const S={id:`connection-${r}-${f}`,from:{barId:C.barId,side:C.side},to:{barId:M.barId,side:M.side},style:b?.style,label:b?.label};return x.value.push(S),S},deleteConnection:r=>{const f=x.value.findIndex(b=>b.id===r);return f>=0?(x.value.splice(f,1),!0):!1},getCellData:B,getCellDisplayValue:Re,getConnectionsForBar:r=>x.value.filter(f=>f.from.barId===r||f.to.barId===r),getFormattedValue:ce,getHandlesForBar:r=>E.value.filter(f=>f.barId===r),getHeaderCellStyle:V,getIndent:(r,f)=>f&&r===0&&f>0?`${f}ch`:"inherit",getRowExpandSymbol:ie,isRowGantt:P,isRowVisible:X,registerConnectionHandle:r=>{const f=E.value.findIndex(b=>b.id===r.id);f>=0?E.value[f]=r:E.value.push(r)},registerGanttBar:r=>{const f=h.value.findIndex(b=>b.id===r.id);f>=0?h.value[f]=r:h.value.push(r)},resizeColumn:z,setCellData:v,setCellText:D,toggleRowExpand:ee,unregisterConnectionHandle:r=>{const f=E.value.findIndex(b=>b.id===r);f>=0&&E.value.splice(f,1)},unregisterGanttBar:r=>{const f=h.value.findIndex(b=>b.id===r);f>=0&&h.value.splice(f,1)},updateGanttBar:r=>{const f=c.value[r.rowIndex]?.gantt;f&&(r.type==="resize"?r.edge==="start"?(f.startIndex=r.newStart,f.endIndex=r.end,f.colspan=f.endIndex-f.startIndex):r.edge==="end"&&(f.startIndex=r.start,f.endIndex=r.newEnd,f.colspan=f.endIndex-f.startIndex):r.type==="bar"&&(f.startIndex=r.newStart,f.endIndex=r.newEnd,f.colspan=f.endIndex-f.startIndex))},updateRows:R}})()},pn={class:"atable-container",style:{position:"relative"}},Qe=Y(t.defineComponent({__name:"ATable",props:t.mergeModels({id:{},config:{default:()=>new Object}},{rows:{required:!0},rowsModifiers:{},columns:{required:!0},columnsModifiers:{}}),emits:t.mergeModels(["cellUpdate","gantt:drag","connection:event","columns:update"],["update:rows","update:columns"]),setup(e,{expose:n,emit:a}){const s=t.useModel(e,"rows"),d=t.useModel(e,"columns"),c=a,i=t.useTemplateRef("table"),o=Ze({columns:d.value,rows:s.value,id:e.id,config:e.config});o.$onAction(({name:h,store:E,args:x,after:m})=>{if(h==="setCellData"||h==="setCellText"){const[p,k,T]=x,A=E.getCellData(p,k);m(()=>{s.value=[...E.rows],c("cellUpdate",{colIndex:p,rowIndex:k,newValue:T,oldValue:A})})}else if(h==="updateGanttBar"){const[p]=x;let k=!1;p.type==="resize"?k=p.oldColspan!==p.newColspan:p.type==="bar"&&(k=p.oldStart!==p.newStart||p.oldEnd!==p.newEnd),k&&m(()=>{c("gantt:drag",p)})}else h==="resizeColumn"&&m(()=>{d.value=[...E.columns],c("columns:update",[...E.columns])})}),t.watch(()=>s.value,h=>{JSON.stringify(h)!==JSON.stringify(o.rows)&&(o.rows=[...h])},{deep:!0}),t.watch(d,h=>{JSON.stringify(h)!==JSON.stringify(o.columns)&&(o.columns=[...h],c("columns:update",[...h]))},{deep:!0}),t.onMounted(()=>{d.value.some(h=>h.pinned)&&(u(),o.isTreeView&&Xe(i,u,{childList:!0,subtree:!0}))});const l=t.computed(()=>o.columns.filter(h=>h.pinned).length),u=()=>{const h=i.value,E=h?.rows[0],x=h?.rows[1],m=E?Array.from(E.cells):[];for(const[p,k]of m.entries()){const T=x?.cells[p];T&&(k.style.width=`${T.offsetWidth}px`)}for(const p of h?.rows||[]){let k=0;const T=[];for(const A of p.cells)(A.classList.contains("sticky-column")||A.classList.contains("sticky-index"))&&(A.style.left=`${k}px`,k+=A.offsetWidth,T.push(A));T.length>0&&T[T.length-1].classList.add("sticky-column-edge")}};window.addEventListener("keydown",h=>{if(h.key==="Escape"&&o.modal.visible){o.modal.visible=!1;const E=o.modal.parent;E&&t.nextTick().then(()=>{E.focus()})}});const g=h=>{if(!h.gantt||l.value===0)return o.columns;const E=[];for(let x=0;x<l.value;x++){const m={...o.columns[x]};m.originalIndex=x,E.push(m)}return E.push({...o.columns[l.value],isGantt:!0,colspan:h.gantt?.colspan||o.columns.length-l.value,originalIndex:l.value,width:"auto"}),E},w=h=>{c("connection:event",{type:"create",connection:h})},y=h=>{c("connection:event",{type:"delete",connection:h})};return n({store:o,createConnection:o.createConnection,deleteConnection:o.deleteConnection,getConnectionsForBar:o.getConnectionsForBar,getHandlesForBar:o.getHandlesForBar}),(h,E)=>(t.openBlock(),t.createElementBlock("div",pn,[t.withDirectives((t.openBlock(),t.createElementBlock("table",{ref:"table",class:"atable",style:t.normalizeStyle({width:t.unref(o).config.fullWidth?"100%":"auto"})},[t.renderSlot(h.$slots,"header",{data:t.unref(o)},()=>[t.createVNode(Ie,{columns:t.unref(o).columns,store:t.unref(o)},null,8,["columns","store"])],!0),t.createElementVNode("tbody",null,[t.renderSlot(h.$slots,"body",{data:t.unref(o)},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(o).rows,(x,m)=>(t.openBlock(),t.createBlock(ve,{key:x.id,row:x,rowIndex:m,store:t.unref(o)},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(g(x),(p,k)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:p.name},[p.isGantt?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(p.ganttComponent||"AGanttCell"),{key:0,store:t.unref(o),columnsCount:t.unref(o).columns.length-l.value,color:x.gantt?.color,start:x.gantt?.startIndex,end:x.gantt?.endIndex,colspan:p.colspan,pinned:p.pinned,rowIndex:m,colIndex:p.originalIndex??k,style:t.normalizeStyle({textAlign:p?.align||"center",minWidth:p?.width||"40ch",width:t.unref(o).config.fullWidth?"auto":null}),"onConnection:create":w},null,40,["store","columnsCount","color","start","end","colspan","pinned","rowIndex","colIndex","style"])):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(p.cellComponent||"ACell"),{key:1,store:t.unref(o),pinned:p.pinned,rowIndex:m,colIndex:k,style:t.normalizeStyle({textAlign:p?.align||"center",width:t.unref(o).config.fullWidth?"auto":null}),spellcheck:"false"},null,8,["store","pinned","rowIndex","colIndex","style"]))],64))),128))]),_:2},1032,["row","rowIndex","store"]))),128))],!0)]),t.renderSlot(h.$slots,"footer",{data:t.unref(o)},void 0,!0),t.renderSlot(h.$slots,"modal",{data:t.unref(o)},()=>[t.withDirectives(t.createVNode(Se,{store:t.unref(o)},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(o).modal.component),t.mergeProps({key:`${t.unref(o).modal.rowIndex}:${t.unref(o).modal.colIndex}`,colIndex:t.unref(o).modal.colIndex,rowIndex:t.unref(o).modal.rowIndex,store:t.unref(o)},t.unref(o).modal.componentProps),null,16,["colIndex","rowIndex","store"]))]),_:1},8,["store"]),[[t.vShow,t.unref(o).modal.visible]])],!0)],4)),[[t.unref(_t),t.unref(o).closeModal]]),t.unref(o).isGanttView&&t.unref(o).isDependencyGraphEnabled?(t.openBlock(),t.createBlock(un,{key:0,store:t.unref(o),"onConnection:delete":y},null,8,["store"])):t.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-51a03d16"]]),bn={},wn={class:"aloading"},xn={class:"aloading-header"};function vn(e,n){return t.openBlock(),t.createElementBlock("div",wn,[t.createElementVNode("h2",xn,[t.renderSlot(e.$slots,"default",{},void 0,!0)]),n[0]||(n[0]=t.createElementVNode("div",{class:"aloading-bar"},null,-1))])}const Ke=Y(bn,[["render",vn],["__scopeId","data-v-a930a25b"]]),yn={},kn={class:"aloading"},Cn={class:"aloading-header"};function En(e,n){return t.openBlock(),t.createElementBlock("div",kn,[t.createElementVNode("h2",Cn,[t.renderSlot(e.$slots,"default",{},void 0,!0)]),n[0]||(n[0]=t.createElementVNode("div",{class:"aloading-bar"},null,-1))])}const _e=Y(yn,[["render",En],["__scopeId","data-v-e1165876"]]);function In(e){e.component("ACell",Ge),e.component("AExpansionRow",Fe),e.component("AGanttCell",Ye),e.component("ARow",ve),e.component("ATable",Qe),e.component("ATableHeader",Ie),e.component("ATableLoading",Ke),e.component("ATableLoadingBar",_e),e.component("ATableModal",Se)}O.ACell=Ge,O.AExpansionRow=Fe,O.AGanttCell=Ye,O.ARow=ve,O.ATable=Qe,O.ATableHeader=Ie,O.ATableLoading=Ke,O.ATableLoadingBar=_e,O.ATableModal=Se,O.createTableStore=Ze,O.install=In,Object.defineProperty(O,Symbol.toStringTag,{value:"Module"})}));
|
|
1
|
+
(function(N,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("pinia")):typeof define=="function"&&define.amd?define(["exports","vue","pinia"],t):(N=typeof globalThis<"u"?globalThis:N||self,t(N["@stonecrop/atable"]={},N.Vue,N.pinia))})(this,(function(N,t,Ke){"use strict";var Re=document.createElement("style");Re.textContent=`@import"https://fonts.googleapis.com/css2?family=Arimo:ital,wght@0,400..700;1,400..700&display=swap";.atable-cell{border-radius:0;box-sizing:border-box;margin:0;outline:none;box-shadow:none;color:var(--sc-cell-text-color);padding-left:.5ch!important;padding-right:.5ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);border-spacing:0px;border-collapse:collapse;overflow:hidden;text-overflow:ellipsis;order:1;white-space:nowrap;max-width:40ch;border-top:1px solid var(--sc-row-border-color)}.atable-cell a{color:var(--sc-cell-text-color);text-decoration:none}.atable-cell:focus,.atable-cell:focus-within{background-color:var(--sc-focus-cell-background);outline-width:var(--sc-atable-cell-border-width);outline-style:solid;outline-offset:calc(var(--sc-atable-cell-border-width) * -1);outline-color:var(--sc-focus-cell-outline);box-shadow:none;overflow:hidden;text-wrap:nowrap;box-sizing:border-box}.cell-modified{font-weight:700;font-style:italic}.cell-modified-highlight{background-color:var(--sc-cell-changed-color)}.row-index{color:var(--sc-header-text-color);font-weight:700;text-align:center;-webkit-user-select:none;user-select:none;width:2ch;display:flex;align-items:center;justify-content:center}.expandable-row{border-top:1px solid var(--sc-row-border-color);height:var(--sc-atable-row-height)}.expandable-row>td:first-child{border-left:4px solid var(--sc-row-border-color)}.expanded-row{border-left:2px solid var(--sc-row-border-color)}.expandable-row:last-child{border-bottom:1px solid var(--sc-row-border-color)}.expanded-row-content{border-top:1px solid var(--sc-row-border-color);padding:1.5rem}.expandable-row.changed-row-gradient[data-v-a42297c7]:has(td.cell-modified){--cell-color-start: color-mix(in srgb, var(--sc-cell-changed-color), #fff 20%);--cell-color-end: color-mix(in srgb, var(--sc-cell-changed-color), #fff 60%);background:linear-gradient(90deg,var(--cell-color-start),var(--cell-color-end))}.aganttcell[data-v-8917a8a3]{background-color:#f9f9f9;width:100%;padding:0;height:100%}.gantt-container[data-v-8917a8a3]{position:relative;height:100%;background-color:#f0f0f0;border-radius:4px;overflow:visible}.gantt-bar[data-v-8917a8a3]{position:absolute;border-radius:4px;display:flex;align-items:center;justify-content:space-between;cursor:grab;box-sizing:border-box;border:1px solid rgba(0,0,0,.5);transition:left .1s ease-out,width .1s ease-out;height:80%;top:50%;z-index:2;transform:translateY(-50%)}.gantt-bar[data-v-8917a8a3]:active{cursor:grabbing}.gantt-bar.is-dragging[data-v-8917a8a3]{z-index:10}.gantt-label[data-v-8917a8a3]{flex:1;text-align:center;font-size:12px;color:#aaa;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 8px;-webkit-user-select:none;user-select:none}.resize-handle[data-v-8917a8a3]{position:relative;width:12px;height:100%;cursor:ew-resize;display:flex;align-items:center;justify-content:center;z-index:0;background:#00000040}.left-resize-handle[data-v-8917a8a3]{border-right:1px solid rgba(0,0,0,.5)}.right-resize-handle[data-v-8917a8a3]{border-left:1px solid rgba(0,0,0,.5)}.handle-grip[data-v-8917a8a3]{width:4px;height:12px;border-radius:2px;background:#000c}.resize-handle[data-v-8917a8a3]:hover{background-color:#ffffff80}.vertical-indicator[data-v-8917a8a3]{position:absolute;width:2px;opacity:0;pointer-events:none;transition:opacity .2s ease;top:-100vh;height:100vh;z-index:5;background-color:var(--v6d722296)}.left-indicator[data-v-8917a8a3]{left:50%;transform:translate(-50%)}.right-indicator[data-v-8917a8a3]{right:50%;transform:translate(50%)}.resize-handle.is-dragging .vertical-indicator[data-v-8917a8a3]{opacity:.7}.gantt-container[data-v-8917a8a3]:after{content:"";position:absolute;inset:0;background-size:calc(100% / var(--v260b36f8)) 100%;background-image:linear-gradient(to right,rgba(0,0,0,.1) 1px,transparent 1px);pointer-events:none;z-index:1}.connection-handle[data-v-8917a8a3]{position:absolute;top:50%;transform:translateY(-50%);width:16px;height:16px;opacity:0;transition:opacity .2s ease;cursor:crosshair;z-index:15;display:flex;align-items:center;justify-content:center}.connection-handle.visible[data-v-8917a8a3]{opacity:1}.left-connection-handle[data-v-8917a8a3]{left:-16px}.right-connection-handle[data-v-8917a8a3]{right:-16px}.connection-dot[data-v-8917a8a3]{width:8px;height:8px;border-radius:50%;background-color:#2196f3;border:2px solid white;box-shadow:0 1px 3px #0000004d}.connection-handle:hover .connection-dot[data-v-8917a8a3]{background-color:#1976d2;transform:scale(1.2)}.connection-handle.is-dragging[data-v-8917a8a3]{opacity:1!important}.connection-handle.is-dragging .connection-dot[data-v-8917a8a3]{background-color:#1976d2;transform:scale(1.3);box-shadow:0 2px 8px #2196f366}.atable-row{background-color:#fff}.atable-row>td:first-child{border-left:4px solid var(--sc-row-border-color)}.list-index{color:var(--sc-header-text-color);font-weight:700;padding-left:var(--sc-atable-row-padding);padding-right:.5em;text-align:left;-webkit-user-select:none;user-select:none;width:7ch;text-overflow:ellipsis;overflow:hidden;box-sizing:border-box;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding)}.tree-index{color:var(--sc-header-text-color);font-weight:700;text-align:center;-webkit-user-select:none;user-select:none;width:2ch;box-sizing:border-box;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding)}.atable-row:has(td.cell-modified)>td.sticky-column,.atable-row:has(td.cell-modified)>th.sticky-column,.atable-row:has(td.cell-modified)>td.sticky-index,.atable-row:has(td.cell-modified)>th.sticky-index{background:var(--sc-cell-changed-color)}.atable-row.changed-row-gradient[data-v-0fa91f83]:has(td.cell-modified){--cell-color-start: color-mix(in srgb, var(--sc-cell-changed-color), #fff 20%);--cell-color-end: color-mix(in srgb, var(--sc-cell-changed-color), #fff 60%);background:linear-gradient(90deg,var(--cell-color-start),var(--cell-color-end))}.gantt-connection-overlay[data-v-71911260]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.connection-path[data-v-71911260]{transition:stroke-width .2s ease;pointer-events:auto;cursor:pointer;stroke-dasharray:5px;stroke:var(--sc-cell-text-color)}#arrowhead-marker polygon[data-v-71911260]{fill:var(--sc-cell-text-color)}.animated-path[data-v-71911260]{animation:animated-dash-71911260 infinite 1.5s linear}.connection-path[data-v-71911260]:hover{stroke-width:3px}.connection-hitbox[data-v-71911260]{pointer-events:auto;cursor:pointer}@keyframes animated-dash-71911260{0%{stroke-dashoffset:0px}to{stroke-dashoffset:-10px}}.atable-header-row th{padding-left:.5ch!important;font-weight:700;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);box-sizing:border-box;color:var(--sc-header-text-color);position:relative}#header-index{padding-left:var(--sc-atable-row-padding);box-sizing:border-box}.tree-index{padding-right:0}th{order:1}.list-expansion-index{width:2ch;margin-left:5px}:root{--sc-primary-color: #0098c9;--sc-primary-text-color: #ffffff;--sc-brand-color: #202a44;--sc-gray-5: #f2f2f2;--sc-gray-10: #e6e6e6;--sc-gray-20: #cccccc;--sc-gray-50: #808080;--sc-gray-60: #666666;--sc-gray-80: #333333;--sc-brand-danger: #e63c28;--sc-brand-success: #155724;--sc-brand-warning: #b99d3e;--sc-active-cell-background: #ffffff;--sc-active-cell-outline: #e6a92d;--sc-cell-border-color: #ffffff;--sc-cell-text-color: #3a3c41;--sc-focus-cell-background: #ffffff;--sc-focus-cell-outline: #000000;--sc-header-border-color: #ffffff;--sc-header-text-color: var(--sc-gray-20);--sc-row-border-color: var(--sc-gray-20);--sc-row-color-zebra-dark: #dddddd;--sc-row-color-zebra-light: #eeeeee;--sc-row-number-background-color: #ffffff;--sc-input-active-border-color: #000000;--sc-input-active-label-color: #000000;--sc-input-border-color: var(--sc-gray-20);--sc-input-label-color: var(--sc-gray-60);--sc-required-border: #e63c28;--sc-cell-changed-color: #d8edff;--sc-form-border: var(--sc-gray-5);--sc-form-background: #ffffff;--sc-input-field-background: #ffffff;--sc-input-field-disabled-background: var(--sc-gray-5);--sc-font-size: 10px;--sc-font-family: Arimo, Arial, sans-serif;--sc-table-font-size: 16px;--sc-atable-font-family: "Arimo", sans-serif;--sc-atable-row-padding: .125rem;--sc-atable-row-height: 1.5em;--sc-atable-cell-border-width: 2px;--sc-table-loading-color: 204, 204, 204;--sc-btn-border: #cccccc;--sc-btn-color: white;--sc-btn-hover: #f2f2f2;--sc-btn-label-color: black}.amodal{position:absolute;background-color:var(--sc-row-color-zebra-dark);z-index:5}.atable-container{position:relative}.sticky-index{position:sticky;left:0;z-index:10;order:0}.sticky-column,th.sticky-column,td.sticky-column,th.sticky-index,td.sticky-index{position:sticky;z-index:10;order:0;background:#fff}.sticky-column-edge,.atable th.sticky-column-edge{border-right:1px solid var(--sc-row-border-color)}[data-v-50e8e2bf]:root{--sc-primary-color: #0098c9;--sc-primary-text-color: #ffffff;--sc-brand-color: #202a44;--sc-gray-5: #f2f2f2;--sc-gray-10: #e6e6e6;--sc-gray-20: #cccccc;--sc-gray-50: #808080;--sc-gray-60: #666666;--sc-gray-80: #333333;--sc-brand-danger: #e63c28;--sc-brand-success: #155724;--sc-brand-warning: #b99d3e;--sc-active-cell-background: #ffffff;--sc-active-cell-outline: #e6a92d;--sc-cell-border-color: #ffffff;--sc-cell-text-color: #3a3c41;--sc-focus-cell-background: #ffffff;--sc-focus-cell-outline: #000000;--sc-header-border-color: #ffffff;--sc-header-text-color: var(--sc-gray-20);--sc-row-border-color: var(--sc-gray-20);--sc-row-color-zebra-dark: #dddddd;--sc-row-color-zebra-light: #eeeeee;--sc-row-number-background-color: #ffffff;--sc-input-active-border-color: #000000;--sc-input-active-label-color: #000000;--sc-input-border-color: var(--sc-gray-20);--sc-input-label-color: var(--sc-gray-60);--sc-required-border: #e63c28;--sc-cell-changed-color: #d8edff;--sc-form-border: var(--sc-gray-5);--sc-form-background: #ffffff;--sc-input-field-background: #ffffff;--sc-input-field-disabled-background: var(--sc-gray-5);--sc-font-size: 10px;--sc-font-family: Arimo, Arial, sans-serif;--sc-table-font-size: 16px;--sc-atable-font-family: "Arimo", sans-serif;--sc-atable-row-padding: .125rem;--sc-atable-row-height: 1.5em;--sc-atable-cell-border-width: 2px;--sc-table-loading-color: 204, 204, 204;--sc-btn-border: #cccccc;--sc-btn-color: white;--sc-btn-hover: #f2f2f2;--sc-btn-label-color: black}.atable[data-v-50e8e2bf]{position:relative;font-family:var(--sc-atable-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--sc-table-font-size);border-collapse:collapse;box-sizing:border-box;table-layout:auto;width:auto;overflow:clip;height:1px}.atable th[data-v-50e8e2bf]{border-width:0px;border-style:solid;border-radius:0;padding-left:.5ch;padding-right:.5ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);color:var(--sc-gray-60);height:var(--sc-atable-row-height);font-weight:300;letter-spacing:.05rem;order:1;box-sizing:border-box}.atable th[data-v-50e8e2bf]:focus{outline:none}.atable[data-v-50e8e2bf]:tbody{overflow:hidden;position:relative}.atable[data-v-50e8e2bf]:tbody:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background-color:transparent;z-index:100}.aloading[data-v-a930a25b]{width:100%;border-top:1px solid var(--sc-row-border-color);border-bottom:1px solid var(--sc-row-border-color);display:flex;background-color:#fff;border-left:4px solid var(--sc-row-border-color);padding-left:.5ch!important;padding-right:.5ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);align-items:center;box-sizing:border-box;background:var(--sc-focus-cell-background);overflow:hidden;position:relative}.aloading-bar[data-v-a930a25b]{width:100%;height:100%;position:absolute;left:-100%;top:0;background:linear-gradient(90deg,rgba(var(--sc-table-loading-color),0),rgba(var(--sc-table-loading-color),1),rgba(var(--sc-table-loading-color),0));animation:gradient-a930a25b infinite 2s;z-index:0}.aloading-header[data-v-a930a25b]{color:var(--sc-cell-text-color);font-family:var(--sc-atable-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--sc-table-font-size);padding:0;margin:0;font-weight:400;z-index:1}.aloading-header[data-v-a930a25b]:after{content:"...";animation:ellipse-a930a25b 2s;animation-iteration-count:infinite}@keyframes gradient-a930a25b{0%{left:-100%}to{left:100%}}@keyframes ellipse-a930a25b{0%{content:""}20%{content:""}40%{content:"."}60%{content:".."}80%{content:"..."}}.aloading[data-v-e1165876]{width:100%;border-top:1px solid var(--sc-row-border-color);border-bottom:1px solid var(--sc-row-border-color);display:flex;background-color:#fff;border-left:4px solid var(--sc-row-border-color);padding-left:.5ch!important;padding-right:.5ch;padding-top:var(--sc-atable-row-padding);padding-bottom:var(--sc-atable-row-padding);align-items:center;box-sizing:border-box;background:var(--sc-focus-cell-background);overflow:hidden;position:relative}.aloading-bar[data-v-e1165876]{width:50%;height:3px;position:absolute;left:-100%;bottom:0;background:var(--sc-row-border-color);animation:bar-left-e1165876 infinite 2s;z-index:0}.aloading-header[data-v-e1165876]{color:var(--sc-cell-text-color);font-family:var(--sc-atable-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--sc-table-font-size);padding:0;margin:0;font-weight:400;z-index:1}.aloading-header[data-v-e1165876]:after{content:"...";animation:ellipse-e1165876 2s;animation-iteration-count:infinite}@keyframes bar-left-e1165876{0%{left:-50%}to{left:100%}}@keyframes ellipse-e1165876{0%{content:""}20%{content:""}40%{content:"."}60%{content:".."}80%{content:"..."}}
|
|
2
|
+
/*$vite$:1*/`,document.head.appendChild(Re);function ce(e,n){return t.getCurrentScope()?(t.onScopeDispose(e,n),!0):!1}const _e=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const et=e=>e!=null,tt=Object.prototype.toString,nt=e=>tt.call(e)==="[object Object]",ot=()=>{};function _(e){return Array.isArray(e)?e:[e]}function at(e,n,i){return t.watch(e,n,{...i,immediate:!0})}const q=_e?window:void 0;function J(e){var n;const i=t.toValue(e);return(n=i?.$el)!==null&&n!==void 0?n:i}function Z(...e){const n=[],i=()=>{n.forEach(o=>o()),n.length=0},d=(o,r,u,m)=>(o.addEventListener(r,u,m),()=>o.removeEventListener(r,u,m)),f=t.computed(()=>{const o=_(t.toValue(e[0])).filter(r=>r!=null);return o.every(r=>typeof r!="string")?o:void 0}),s=at(()=>{var o,r;return[(o=(r=f.value)===null||r===void 0?void 0:r.map(u=>J(u)))!==null&&o!==void 0?o:[q].filter(u=>u!=null),_(t.toValue(f.value?e[1]:e[0])),_(t.unref(f.value?e[2]:e[1])),t.toValue(f.value?e[3]:e[2])]},([o,r,u,m])=>{if(i(),!o?.length||!r?.length||!u?.length)return;const v=nt(m)?{...m}:m;n.push(...o.flatMap(E=>r.flatMap(b=>u.map(k=>d(E,b,k,v)))))},{flush:"post"}),l=()=>{s(),i()};return ce(i),l}function lt(){const e=t.shallowRef(!1),n=t.getCurrentInstance();return n&&t.onMounted(()=>{e.value=!0},n),e}function rt(e){const n=lt();return t.computed(()=>(n.value,!!e()))}function it(e,n,i={}){const{window:d=q,...f}=i;let s;const l=rt(()=>d&&"MutationObserver"in d),o=()=>{s&&(s.disconnect(),s=void 0)},r=t.watch(t.computed(()=>{const v=_(t.toValue(e)).map(J).filter(et);return new Set(v)}),v=>{o(),l.value&&v.size&&(s=new MutationObserver(n),v.forEach(E=>s.observe(E,f)))},{immediate:!0,flush:"post"}),u=()=>s?.takeRecords(),m=()=>{r(),o()};return ce(m),{isSupported:l,stop:m,takeRecords:u}}function st(e,n,i={}){const{window:d=q,document:f=d?.document,flush:s="sync"}=i;if(!d||!f)return ot;let l;const o=m=>{l?.(),l=m},r=t.watchEffect(()=>{const m=J(e);if(m){const{stop:v}=it(f,E=>{E.map(b=>[...b.removedNodes]).flat().some(b=>b===m||b.contains(m))&&n(E)},{window:d,childList:!0,subtree:!0});o(v)}},{flush:s}),u=()=>{r(),o()};return ce(u),u}function ct(e={}){var n;const{window:i=q,deep:d=!0,triggerOnRemoval:f=!1}=e,s=(n=e.document)!==null&&n!==void 0?n:i?.document,l=()=>{let u=s?.activeElement;if(d)for(var m;u?.shadowRoot;)u=u==null||(m=u.shadowRoot)===null||m===void 0?void 0:m.activeElement;return u},o=t.shallowRef(),r=()=>{o.value=l()};if(i){const u={capture:!0,passive:!0};Z(i,"blur",m=>{m.relatedTarget===null&&r()},u),Z(i,"focus",r,u)}return f&&st(o,r,{document:s}),r(),o}const dt="focusin",ft="focusout",ut=":focus-within";function gt(e,n={}){const{window:i=q}=n,d=t.computed(()=>J(e)),f=t.shallowRef(!1),s=t.computed(()=>f.value);if(!i||!ct(n).value)return{focused:s};const l={passive:!0};return Z(d,dt,()=>f.value=!0,l),Z(d,ft,()=>{var o,r,u;return f.value=(o=(r=d.value)===null||r===void 0||(u=r.matches)===null||u===void 0?void 0:u.call(r,ut))!==null&&o!==void 0?o:!1},l),{focused:s}}function mt(e,{window:n=q,scrollTarget:i}={}){const d=t.ref(!1),f=()=>{if(!n)return;const s=n.document,l=J(e);if(!l)d.value=!1;else{const o=l.getBoundingClientRect();d.value=o.top<=(n.innerHeight||s.documentElement.clientHeight)&&o.left<=(n.innerWidth||s.documentElement.clientWidth)&&o.bottom>=0&&o.right>=0}};return t.watch(()=>J(e),()=>f(),{immediate:!0,flush:"post"}),n&&Z(i||n,"scroll",f,{capture:!1,passive:!0}),d}const L=e=>{let n=mt(e).value;return n=n&&e.offsetHeight>0,n},W=e=>e.tabIndex>=0,$e=e=>{const n=e.target;return de(n)},de=e=>{let n;if(e instanceof HTMLTableCellElement){const i=e.parentElement?.previousElementSibling;if(i){const d=Array.from(i.children)[e.cellIndex];d&&(n=d)}}else if(e instanceof HTMLTableRowElement){const i=e.previousElementSibling;i&&(n=i)}return n&&(!W(n)||!L(n))?de(n):n},ht=e=>{const n=e.target;let i;if(n instanceof HTMLTableCellElement){const d=n.parentElement?.parentElement;if(d){const f=d.firstElementChild?.children[n.cellIndex];f&&(i=f)}}else if(n instanceof HTMLTableRowElement){const d=n.parentElement;if(d){const f=d.firstElementChild;f&&(i=f)}}return i&&(!W(i)||!L(i))?fe(i):i},ze=e=>{const n=e.target;return fe(n)},fe=e=>{let n;if(e instanceof HTMLTableCellElement){const i=e.parentElement?.nextElementSibling;if(i){const d=Array.from(i.children)[e.cellIndex];d&&(n=d)}}else if(e instanceof HTMLTableRowElement){const i=e.nextElementSibling;i&&(n=i)}return n&&(!W(n)||!L(n))?fe(n):n},pt=e=>{const n=e.target;let i;if(n instanceof HTMLTableCellElement){const d=n.parentElement?.parentElement;if(d){const f=d.lastElementChild?.children[n.cellIndex];f&&(i=f)}}else if(n instanceof HTMLTableRowElement){const d=n.parentElement;if(d){const f=d.lastElementChild;f&&(i=f)}}return i&&(!W(i)||!L(i))?de(i):i},Me=e=>{const n=e.target;return ue(n)},ue=e=>{let n;return e.previousElementSibling?n=e.previousElementSibling:n=e.parentElement?.previousElementSibling?.lastElementChild,n&&(!W(n)||!L(n))?ue(n):n},Te=e=>{const n=e.target;return ge(n)},ge=e=>{let n;return e.nextElementSibling?n=e.nextElementSibling:n=e.parentElement?.nextElementSibling?.firstElementChild,n&&(!W(n)||!L(n))?ge(n):n},Ae=e=>{const n=e.target.parentElement?.firstElementChild;return n&&(!W(n)||!L(n))?ge(n):n},Ve=e=>{const n=e.target.parentElement?.lastElementChild;return n&&(!W(n)||!L(n))?ue(n):n},ee=["alt","control","shift","meta"],bt={ArrowUp:"up",ArrowDown:"down",ArrowLeft:"left",ArrowRight:"right"},te={"keydown.up":e=>{const n=$e(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.down":e=>{const n=ze(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.left":e=>{const n=Me(e);e.preventDefault(),e.stopPropagation(),n&&n.focus()},"keydown.right":e=>{const n=Te(e);e.preventDefault(),e.stopPropagation(),n&&n.focus()},"keydown.control.up":e=>{const n=ht(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.control.down":e=>{const n=pt(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.control.left":e=>{const n=Ae(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.control.right":e=>{const n=Ve(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.end":e=>{const n=Ve(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.enter":e=>{if(e.target instanceof HTMLTableCellElement){e.preventDefault(),e.stopPropagation();const n=ze(e);n&&n.focus()}},"keydown.shift.enter":e=>{if(e.target instanceof HTMLTableCellElement){e.preventDefault(),e.stopPropagation();const n=$e(e);n&&n.focus()}},"keydown.home":e=>{const n=Ae(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.tab":e=>{const n=Te(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())},"keydown.shift.tab":e=>{const n=Me(e);n&&(e.preventDefault(),e.stopPropagation(),n.focus())}};function me(e){const n=l=>{let o=null;return l.parent&&(typeof l.parent=="string"?o=document.querySelector(l.parent):l.parent instanceof HTMLElement?o=l.parent:o=l.parent.value),o},i=l=>{const o=n(l);let r=[];if(typeof l.selectors=="string")r=o?Array.from(o.querySelectorAll(l.selectors)):Array.from(document.querySelectorAll(l.selectors));else if(Array.isArray(l.selectors))for(const u of l.selectors)u instanceof HTMLElement?r.push(u):r.push(u.$el);else if(l.selectors instanceof HTMLElement)r.push(l.selectors);else if(l.selectors?.value)if(Array.isArray(l.selectors.value))for(const u of l.selectors.value)u instanceof HTMLElement?r.push(u):r.push(u.$el);else r.push(l.selectors.value);return r},d=l=>{const o=n(l);let r=[];return l.selectors?r=i(l):o&&(r=Array.from(o.children).filter(u=>W(u)&&L(u))),r},f=l=>o=>{const r=bt[o.key]||o.key.toLowerCase();if(ee.includes(r))return;const u=l.handlers||te;for(const m of Object.keys(u)){const[v,...E]=m.split(".");if(v==="keydown"&&E.includes(r)){const b=u[m],k=E.filter(g=>ee.includes(g)),w=ee.some(g=>{const h=g.charAt(0).toUpperCase()+g.slice(1);return o.getModifierState(h)});if(k.length>0){if(w){for(const g of ee)if(E.includes(g)){const h=g.charAt(0).toUpperCase()+g.slice(1);o.getModifierState(h)&&b(o)}}}else w||b(o)}}},s=[];t.onMounted(()=>{for(const l of e){const o=n(l),r=d(l),u=f(l),m=o?[o]:r;for(const v of m){const{focused:E}=gt(t.ref(v)),b=t.watch(E,k=>{k?v.addEventListener("keydown",u):v.removeEventListener("keydown",u)});s.push(b)}}}),t.onBeforeUnmount(()=>{for(const l of s)l()})}function ne(e,n){return t.getCurrentScope()?(t.onScopeDispose(e,n),!0):!1}const De=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const wt=e=>e!=null,xt=Object.prototype.toString,vt=e=>xt.call(e)==="[object Object]",F=()=>{};function yt(...e){if(e.length!==1)return t.toRef(...e);const n=e[0];return typeof n=="function"?t.readonly(t.customRef(()=>({get:n,set:F}))):t.ref(n)}function kt(e,n){function i(...d){return new Promise((f,s)=>{Promise.resolve(e(()=>n.apply(this,d),{fn:n,thisArg:this,args:d})).then(f).catch(s)})}return i}function Ct(e,n={}){let i,d,f=F;const s=r=>{clearTimeout(r),f(),f=F};let l;return r=>{const u=t.toValue(e),m=t.toValue(n.maxWait);return i&&s(i),u<=0||m!==void 0&&m<=0?(d&&(s(d),d=void 0),Promise.resolve(r())):new Promise((v,E)=>{f=n.rejectOnCancel?E:v,l=r,m&&!d&&(d=setTimeout(()=>{i&&s(i),d=void 0,v(l())},m)),i=setTimeout(()=>{d&&s(d),d=void 0,v(r())},u)})}}function oe(e){return Array.isArray(e)?e:[e]}function Et(e){return t.getCurrentInstance()}function It(e,n=200,i={}){return kt(Ct(n,i),e)}function St(e,n={}){if(!t.isRef(e))return t.toRefs(e);const i=Array.isArray(e.value)?Array.from({length:e.value.length}):{};for(const d in e.value)i[d]=t.customRef(()=>({get(){return e.value[d]},set(f){var s;if(!((s=t.toValue(n.replaceRef))!==null&&s!==void 0)||s)if(Array.isArray(e.value)){const l=[...e.value];l[d]=f,e.value=l}else{const l={...e.value,[d]:f};Object.setPrototypeOf(l,Object.getPrototypeOf(e.value)),e.value=l}else e.value[d]=f}}));return i}function Bt(e,n=!0,i){Et()?t.onMounted(e,i):n?e():t.nextTick(e)}function Rt(e,n,i){return t.watch(e,n,{...i,immediate:!0})}const Q=De?window:void 0;function H(e){var n;const i=t.toValue(e);return(n=i?.$el)!==null&&n!==void 0?n:i}function G(...e){const n=[],i=()=>{n.forEach(o=>o()),n.length=0},d=(o,r,u,m)=>(o.addEventListener(r,u,m),()=>o.removeEventListener(r,u,m)),f=t.computed(()=>{const o=oe(t.toValue(e[0])).filter(r=>r!=null);return o.every(r=>typeof r!="string")?o:void 0}),s=Rt(()=>{var o,r;return[(o=(r=f.value)===null||r===void 0?void 0:r.map(u=>H(u)))!==null&&o!==void 0?o:[Q].filter(u=>u!=null),oe(t.toValue(f.value?e[1]:e[0])),oe(t.unref(f.value?e[2]:e[1])),t.toValue(f.value?e[3]:e[2])]},([o,r,u,m])=>{if(i(),!o?.length||!r?.length||!u?.length)return;const v=vt(m)?{...m}:m;n.push(...o.flatMap(E=>r.flatMap(b=>u.map(k=>d(E,b,k,v)))))},{flush:"post"}),l=()=>{s(),i()};return ne(i),l}function Ne(e,n,i={}){const{window:d=Q,ignore:f=[],capture:s=!0,detectIframe:l=!1,controls:o=!1}=i;if(!d)return o?{stop:F,cancel:F,trigger:F}:F;let r=!0;const u=g=>t.toValue(f).some(h=>{if(typeof h=="string")return Array.from(d.document.querySelectorAll(h)).some(y=>y===g.target||g.composedPath().includes(y));{const y=H(h);return y&&(g.target===y||g.composedPath().includes(y))}});function m(g){const h=t.toValue(g);return h&&h.$.subTree.shapeFlag===16}function v(g,h){const y=t.toValue(g),T=y.$.subTree&&y.$.subTree.children;return T==null||!Array.isArray(T)?!1:T.some(A=>A.el===h.target||h.composedPath().includes(A.el))}const E=g=>{const h=H(e);if(g.target!=null&&!(!(h instanceof Element)&&m(e)&&v(e,g))&&!(!h||h===g.target||g.composedPath().includes(h))){if("detail"in g&&g.detail===0&&(r=!u(g)),!r){r=!0;return}n(g)}};let b=!1;const k=[G(d,"click",g=>{b||(b=!0,setTimeout(()=>{b=!1},0),E(g))},{passive:!0,capture:s}),G(d,"pointerdown",g=>{const h=H(e);r=!u(g)&&!!(h&&!g.composedPath().includes(h))},{passive:!0}),l&&G(d,"blur",g=>{setTimeout(()=>{var h;const y=H(e);((h=d.document.activeElement)===null||h===void 0?void 0:h.tagName)==="IFRAME"&&!y?.contains(d.document.activeElement)&&n(g)},0)},{passive:!0})].filter(Boolean),w=()=>k.forEach(g=>g());return o?{stop:w,cancel:()=>{r=!1},trigger:g=>{r=!0,E(g),r=!1}}:w}function $t(){const e=t.shallowRef(!1),n=t.getCurrentInstance();return n&&t.onMounted(()=>{e.value=!0},n),e}function Oe(e){const n=$t();return t.computed(()=>(n.value,!!e()))}function Pe(e,n,i={}){const{window:d=Q,...f}=i;let s;const l=Oe(()=>d&&"MutationObserver"in d),o=()=>{s&&(s.disconnect(),s=void 0)},r=t.watch(t.computed(()=>{const v=oe(t.toValue(e)).map(H).filter(wt);return new Set(v)}),v=>{o(),l.value&&v.size&&(s=new MutationObserver(n),v.forEach(E=>s.observe(E,f)))},{immediate:!0,flush:"post"}),u=()=>s?.takeRecords(),m=()=>{r(),o()};return ne(m),{isSupported:l,stop:m,takeRecords:u}}function he(e,n={}){var i;const{pointerTypes:d,preventDefault:f,stopPropagation:s,exact:l,onMove:o,onEnd:r,onStart:u,initialValue:m,axis:v="both",draggingElement:E=Q,containerElement:b,handle:k=e,buttons:w=[0]}=n,g=t.ref((i=t.toValue(m))!==null&&i!==void 0?i:{x:0,y:0}),h=t.ref(),y=x=>d?d.includes(x.pointerType):!0,T=x=>{t.toValue(f)&&x.preventDefault(),t.toValue(s)&&x.stopPropagation()},A=x=>{var B;if(!t.toValue(w).includes(x.button)||t.toValue(n.disabled)||!y(x)||t.toValue(l)&&x.target!==t.toValue(e))return;const D=t.toValue(b),V=D==null||(B=D.getBoundingClientRect)===null||B===void 0?void 0:B.call(D),z=t.toValue(e).getBoundingClientRect(),P={x:x.clientX-(D?z.left-V.left+D.scrollLeft:z.left),y:x.clientY-(D?z.top-V.top+D.scrollTop:z.top)};u?.(P,x)!==!1&&(h.value=P,T(x))},O=x=>{if(t.toValue(n.disabled)||!y(x)||!h.value)return;const B=t.toValue(b),D=t.toValue(e).getBoundingClientRect();let{x:V,y:z}=g.value;(v==="x"||v==="both")&&(V=x.clientX-h.value.x,B&&(V=Math.min(Math.max(0,V),B.scrollWidth-D.width))),(v==="y"||v==="both")&&(z=x.clientY-h.value.y,B&&(z=Math.min(Math.max(0,z),B.scrollHeight-D.height))),g.value={x:V,y:z},o?.(g.value,x),T(x)},$=x=>{t.toValue(n.disabled)||!y(x)||h.value&&(h.value=void 0,r?.(g.value,x),T(x))};if(De){const x=()=>{var B;return{capture:(B=n.capture)!==null&&B!==void 0?B:!0,passive:!t.toValue(f)}};G(k,"pointerdown",A,x),G(E,"pointermove",O,x),G(E,"pointerup",$,x)}return{...St(g),position:g,isDragging:t.computed(()=>!!h.value),style:t.computed(()=>`left:${g.value.x}px;top:${g.value.y}px;`)}}function pe(e,n,i={}){const{window:d=Q,...f}=i;let s;const l=Oe(()=>d&&"ResizeObserver"in d),o=()=>{s&&(s.disconnect(),s=void 0)},r=t.watch(t.computed(()=>{const m=t.toValue(e);return Array.isArray(m)?m.map(v=>H(v)):[H(m)]}),m=>{if(o(),l.value&&d){s=new ResizeObserver(n);for(const v of m)v&&s.observe(v,f)}},{immediate:!0,flush:"post"}),u=()=>{o(),r()};return ne(u),{isSupported:l,stop:u}}function Y(e,n={}){const{reset:i=!0,windowResize:d=!0,windowScroll:f=!0,immediate:s=!0,updateTiming:l="sync"}=n,o=t.shallowRef(0),r=t.shallowRef(0),u=t.shallowRef(0),m=t.shallowRef(0),v=t.shallowRef(0),E=t.shallowRef(0),b=t.shallowRef(0),k=t.shallowRef(0);function w(){const h=H(e);if(!h){i&&(o.value=0,r.value=0,u.value=0,m.value=0,v.value=0,E.value=0,b.value=0,k.value=0);return}const y=h.getBoundingClientRect();o.value=y.height,r.value=y.bottom,u.value=y.left,m.value=y.right,v.value=y.top,E.value=y.width,b.value=y.x,k.value=y.y}function g(){l==="sync"?w():l==="next-frame"&&requestAnimationFrame(()=>w())}return pe(e,g),t.watch(()=>H(e),h=>!h&&g()),Pe(e,g,{attributeFilter:["style","class"]}),f&&G("scroll",g,{capture:!0,passive:!0}),d&&G("resize",g,{passive:!0}),Bt(()=>{s&&g()}),{height:o,bottom:r,left:u,right:m,top:v,width:E,x:b,y:k,update:g}}function be(e){return typeof Window<"u"&&e instanceof Window?e.document.documentElement:typeof Document<"u"&&e instanceof Document?e.documentElement:e}const we=new WeakMap;function zt(e,n=!1){const i=t.shallowRef(n);let d="";t.watch(yt(e),l=>{const o=be(t.toValue(l));if(o){const r=o;if(we.get(r)||we.set(r,r.style.overflow),r.style.overflow!=="hidden"&&(d=r.style.overflow),r.style.overflow==="hidden")return i.value=!0;if(i.value)return r.style.overflow="hidden"}},{immediate:!0});const f=()=>{const l=be(t.toValue(e));!l||i.value||(l.style.overflow="hidden",i.value=!0)},s=()=>{const l=be(t.toValue(e));!l||!i.value||(l.style.overflow=d,we.delete(l),i.value=!1)};return ne(s),t.computed({get(){return i.value},set(l){l?f():s()}})}const Mt=e=>{const n=new DOMParser().parseFromString(e,"text/html");return Array.from(n.body.childNodes).some(i=>i.nodeType===1)},Tt=(e=8)=>Array.from({length:e},()=>Math.floor(Math.random()*16).toString(16)).join(""),At=["data-colindex","data-rowindex","data-editable","contenteditable","tabindex"],Vt=["innerHTML"],Dt={key:2},He=t.defineComponent({__name:"ACell",props:{colIndex:{},rowIndex:{},store:{},addNavigation:{type:[Boolean,Object],default:!0},tabIndex:{default:0},pinned:{type:Boolean,default:!1},debounce:{default:300}},setup(e,{expose:n}){const i=t.useTemplateRef("cell"),d=e.store.getCellData(e.colIndex,e.rowIndex),f=t.ref(""),s=t.ref(!1),l=e.store.columns[e.colIndex],o=e.store.rows[e.rowIndex],r=l.align||"center",u=l.width||"40ch",m=t.computed(()=>e.store.getCellDisplayValue(e.colIndex,e.rowIndex)),v=t.computed(()=>typeof m.value=="string"?Mt(m.value):!1),E=t.computed(()=>({textAlign:r,width:u,fontWeight:s.value?"bold":"inherit",paddingLeft:e.store.getIndent(e.colIndex,e.store.display[e.rowIndex]?.indent)})),b=t.computed(()=>({"sticky-column":e.pinned,"cell-modified":s.value})),k=()=>{g(),w()},w=()=>{const{left:$,bottom:x,width:B,height:D}=Y(i);l.mask,l.modalComponent&&e.store.$patch(V=>{V.modal.visible=!0,V.modal.colIndex=e.colIndex,V.modal.rowIndex=e.rowIndex,V.modal.left=$,V.modal.bottom=x,V.modal.width=B,V.modal.height=D,V.modal.cell=i.value,typeof l.modalComponent=="function"?V.modal.component=l.modalComponent({table:V.table,row:o,column:l}):V.modal.component=l.modalComponent,V.modal.componentProps=l.modalComponentExtraProps})};if(e.addNavigation){let $={...te,"keydown.f2":w,"keydown.alt.up":w,"keydown.alt.down":w,"keydown.alt.left":w,"keydown.alt.right":w};typeof e.addNavigation=="object"&&($={...$,...e.addNavigation}),me([{selectors:i,handlers:$}])}const g=()=>{if(i.value&&l.edit){const $=window.getSelection();if($)try{const x=document.createRange();x.selectNodeContents&&(x.selectNodeContents(i.value),$.removeAllRanges(),$.addRange(x))}catch{}}},h=()=>{i.value&&(f.value=i.value.textContent,g())},y=()=>{try{const $=window.getSelection();if($&&$.rangeCount>0&&i.value){const x=$.getRangeAt(0),B=x.cloneRange();if(B.selectNodeContents&&B.setEnd)return B.selectNodeContents(i.value),B.setEnd(x.endContainer,x.endOffset),B.toString().length}}catch{}return 0},T=$=>{if(i.value)try{const x=window.getSelection();if(!x)return;let B=0;const D=document.createTreeWalker?document.createTreeWalker(i.value,NodeFilter.SHOW_TEXT,null):null;if(!D)return;let V,z=null;for(;V=D.nextNode();){const P=V,X=B+P.textContent.length;if($<=X&&(z=document.createRange(),z.setStart&&z.setEnd)){z.setStart(P,$-B),z.setEnd(P,$-B);break}B=X}z&&x.removeAllRanges&&x.addRange&&(x.removeAllRanges(),x.addRange(z))}catch{}},A=$=>{if(!l.edit)return;const x=$.target;if(x.textContent===f.value)return;const B=y();f.value=x.textContent,l.format?(s.value=x.textContent!==e.store.getFormattedValue(e.colIndex,e.rowIndex,d),e.store.setCellText(e.colIndex,e.rowIndex,x.textContent)):(s.value=x.textContent!==d,e.store.setCellData(e.colIndex,e.rowIndex,x.textContent)),t.nextTick().then(()=>{T(B)})},O=It(A,e.debounce);return n({currentData:f}),($,x)=>(t.openBlock(),t.createElementBlock("td",{ref:"cell","data-colindex":e.colIndex,"data-rowindex":e.rowIndex,"data-editable":t.unref(l).edit,contenteditable:t.unref(l).edit,tabindex:e.tabIndex,spellcheck:!1,style:t.normalizeStyle(E.value),class:t.normalizeClass(["atable-cell",b.value]),onFocus:h,onPaste:A,onInput:x[0]||(x[0]=(...B)=>t.unref(O)&&t.unref(O)(...B)),onClick:k},[t.unref(l).cellComponent?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(l).cellComponent),t.mergeProps({key:0,value:m.value},t.unref(l).cellComponentProps),null,16,["value"])):v.value?(t.openBlock(),t.createElementBlock("span",{key:1,innerHTML:m.value},null,8,Vt)):(t.openBlock(),t.createElementBlock("span",Dt,t.toDisplayString(m.value),1))],46,At))}}),Nt=["tabindex"],Ot=["tabindex"],Pt=["colspan"],Ht=t.defineComponent({__name:"AExpansionRow",props:{rowIndex:{},store:{},tabIndex:{default:()=>-1},addNavigation:{type:[Boolean,Object],default:()=>te}},setup(e){const n=t.useTemplateRef("rowEl"),i=t.computed(()=>e.store.display[e.rowIndex].expanded?"▼":"►");if(e.addNavigation){const d={"keydown.control.g":f=>{f.stopPropagation(),f.preventDefault(),e.store.toggleRowExpand(e.rowIndex)}};typeof e.addNavigation=="object"&&Object.assign(d,e.addNavigation),me([{selectors:n,handlers:d}])}return(d,f)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("tr",t.mergeProps(d.$attrs,{ref:"rowEl",tabindex:e.tabIndex,class:"expandable-row"}),[t.createElementVNode("td",{tabIndex:-1,class:"row-index",onClick:f[0]||(f[0]=s=>e.store.toggleRowExpand(e.rowIndex))},t.toDisplayString(i.value),1),t.renderSlot(d.$slots,"row",{},void 0,!0)],16,Nt),e.store.display[e.rowIndex].expanded?(t.openBlock(),t.createElementBlock("tr",{key:0,ref:"rowExpanded",tabindex:e.tabIndex,class:"expanded-row"},[t.createElementVNode("td",{tabIndex:-1,colspan:e.store.columns.length+1,class:"expanded-row-content"},[t.renderSlot(d.$slots,"content",{},void 0,!0)],8,Pt)],8,Ot)):t.createCommentVNode("",!0)],64))}}),j=(e,n)=>{const i=e.__vccOpts||e;for(const[d,f]of n)i[d]=f;return i},Le=j(Ht,[["__scopeId","data-v-a42297c7"]]),Lt=["colspan"],Wt={ref:"container",class:"gantt-container"},Gt=["data-rowindex","data-colindex"],Xt={key:2,class:"gantt-label"},Ft=["x1","y1","x2","y2"],We=j(t.defineComponent({__name:"AGanttCell",props:{store:{},columnsCount:{},rowIndex:{},colIndex:{},start:{default:0},end:{default:0},colspan:{default:1},label:{default:""},color:{default:"#cccccc"}},emits:["connection:create"],setup(e,{expose:n,emit:i}){t.useCssVars(I=>({v6d722296:f.value,v260b36f8:I.colspan}));const d=i,f=t.ref(e.color.length>=6?e.color:"#cccccc"),s=`gantt-bar-row-${e.rowIndex}-col-${e.colIndex}`,l=t.useTemplateRef("container"),o=t.useTemplateRef("bar"),r=t.useTemplateRef("leftResizeHandle"),u=t.useTemplateRef("rightResizeHandle"),m=t.useTemplateRef("leftConnectionHandle"),v=t.useTemplateRef("rightConnectionHandle"),{width:E}=Y(l),{left:b,right:k}=Y(o),w=t.ref(e.start),g=t.ref(e.end||w.value+e.colspan),h=t.ref(!1),y=t.ref(!1),T=t.ref(!1),A=t.ref(!1),O=t.ref(!1),$=t.ref({startX:0,startY:0,endX:0,endY:0}),x=t.computed(()=>le.value||P.value||X.value),B=t.computed(()=>e.colspan>0?E.value/e.colspan:0),D=t.computed(()=>{const I=w.value/e.colspan*100,a=g.value/e.colspan*100;return{left:`${I}%`,width:`${a-I}%`,backgroundColor:f.value}}),V=t.computed(()=>({position:"fixed",top:0,left:0,width:"100vw",height:"100vh",pointerEvents:"none",zIndex:1e3})),z=t.ref({startX:0,startPos:0}),{isDragging:P}=he(r,{axis:"x",onStart:()=>K(b.value,w.value),onMove:({x:I})=>re(I),onEnd:({x:I})=>Ce(I)}),{isDragging:X}=he(u,{axis:"x",onStart:()=>K(k.value,g.value),onMove:({x:I})=>ie(I),onEnd:({x:I})=>je(I)}),{isDragging:le}=he(o,{exact:!0,axis:"x",onStart:()=>K(b.value,w.value),onMove:({x:I})=>Ue(I),onEnd:({x:I})=>qe(I)});t.onMounted(()=>{Je()}),t.onUnmounted(()=>{Ze()});function K(I,a){o.value&&(o.value.style.transition="none"),z.value={startX:I,startPos:a}}function re(I){if(!P.value||!o.value)return;const c=(I-z.value.startX)/B.value,p=Math.max(0,Math.min(g.value-1,z.value.startPos+c));o.value.style.left=`${p/e.colspan*100}%`,o.value.style.width=`${(g.value-p)/e.colspan*100}%`}function Ce(I){if(!o.value)return;const a=I-z.value.startX,c=Math.round(a/B.value),p=w.value,C=Math.max(0,Math.min(g.value-1,z.value.startPos+c));w.value=C,e.store.updateGanttBar({rowIndex:e.rowIndex,colIndex:e.colIndex,type:"resize",edge:"start",oldStart:p,newStart:C,end:g.value,delta:c,oldColspan:g.value-p,newColspan:g.value-C})}function ie(I){if(!X.value||!o.value)return;const c=(I-z.value.startX)/B.value,p=Math.max(w.value+1,Math.min(e.columnsCount,z.value.startPos+c));o.value.style.width=`${(p-w.value)/e.colspan*100}%`}function je(I){if(!o.value)return;const a=I-z.value.startX,c=Math.round(a/B.value),p=g.value,C=Math.max(w.value+1,Math.min(e.columnsCount,z.value.startPos+c));g.value=C,e.store.updateGanttBar({rowIndex:e.rowIndex,colIndex:e.colIndex,type:"resize",edge:"end",oldEnd:p,newEnd:C,start:w.value,delta:c,oldColspan:p-w.value,newColspan:C-w.value})}function Ue(I){if(!le.value||!o.value)return;const c=(I-z.value.startX)/B.value,p=g.value-w.value,C=Math.max(0,Math.min(z.value.startPos+c,e.columnsCount-p));o.value.style.left=`${C/e.colspan*100}%`}function qe(I){if(!o.value)return;const a=I-z.value.startX,c=Math.round(a/B.value),p=g.value-w.value,C=w.value,M=g.value;let S=z.value.startPos+c,R=S+p;S<0?(S=0,R=p):R>e.columnsCount&&(R=e.columnsCount,S=R-p),w.value=S,g.value=R,e.store.updateGanttBar({rowIndex:e.rowIndex,colIndex:e.colIndex,type:"bar",oldStart:C,oldEnd:M,newStart:S,newEnd:R,delta:c,colspan:R-S})}function Je(){const{x:I,y:a}=Y(o),{x:c,y:p}=Y(m),{x:C,y:M}=Y(v);e.store.registerGanttBar({id:s,rowIndex:e.rowIndex,colIndex:e.colIndex,startIndex:w,endIndex:g,color:f,label:e.label,position:{x:I,y:a}}),e.store.isDependencyGraphEnabled&&(e.store.registerConnectionHandle({id:`${s}-connection-left`,rowIndex:e.rowIndex,colIndex:e.colIndex,side:"left",position:{x:c,y:p},visible:h,barId:s}),e.store.registerConnectionHandle({id:`${s}-connection-right`,rowIndex:e.rowIndex,colIndex:e.colIndex,side:"right",position:{x:C,y:M},visible:y,barId:s}))}function Ze(){e.store.unregisterGanttBar(s),e.store.isDependencyGraphEnabled&&(e.store.unregisterConnectionHandle(`${s}-connection-left`),e.store.unregisterConnectionHandle(`${s}-connection-right`))}function Qe(){e.store.isDependencyGraphEnabled&&(h.value=!0,y.value=!0)}function Ee(){!T.value&&!A.value&&(h.value=!1,y.value=!1)}function Ie(I,a){a.preventDefault(),a.stopPropagation(),O.value=!0,I==="left"?T.value=!0:A.value=!0;const c=I==="left"?m.value:v.value;if(c){const M=c.getBoundingClientRect(),S=M.left+M.width/2,R=M.top+M.height/2;$.value={startX:S,startY:R,endX:S,endY:R}}const p=M=>{$.value.endX=M.clientX,$.value.endY=M.clientY},C=M=>{Se(M,I),Be(p,C)};document.addEventListener("mousemove",p),document.addEventListener("mouseup",C)}function Se(I,a){const p=document.elementFromPoint(I.clientX,I.clientY)?.closest(".connection-handle");if(p&&p!==(a==="left"?m.value:v.value)){const C=p.closest(".gantt-bar");if(C){const M=parseInt(C.getAttribute("data-rowindex")||"0"),S=parseInt(C.getAttribute("data-colindex")||"0"),R=p.classList.contains("left-connection-handle")?"left":"right",U=`gantt-bar-row-${M}-col-${S}`,se=e.store.createConnection(`${s}-connection-${a}`,`${U}-connection-${R}`);se&&d("connection:create",se)}}}function Be(I,a){O.value=!1,T.value=!1,A.value=!1,document.removeEventListener("mousemove",I),document.removeEventListener("mouseup",a),o.value?.matches(":hover")||Ee()}return n({barStyle:D,cleanupConnectionDrag:Be,currentEnd:g,handleConnectionDrop:Se,isLeftConnectionDragging:T,isLeftConnectionVisible:h,isRightConnectionDragging:A,isRightConnectionVisible:y,showDragPreview:O}),(I,a)=>(t.openBlock(),t.createElementBlock("td",{class:"aganttcell",colspan:e.colspan},[t.createElementVNode("div",Wt,[t.createElementVNode("div",{ref:"bar","data-rowindex":e.rowIndex,"data-colindex":e.colIndex,class:t.normalizeClass(["gantt-bar",{"is-dragging":x.value}]),style:t.normalizeStyle(D.value),onMouseenter:Qe,onMouseleave:Ee},[e.store.isDependencyGraphEnabled?(t.openBlock(),t.createElementBlock("div",{key:0,ref:"leftConnectionHandle",class:t.normalizeClass(["connection-handle left-connection-handle",{visible:h.value,"is-dragging":T.value}]),onMousedown:a[0]||(a[0]=t.withModifiers(c=>Ie("left",c),["stop"]))},[...a[2]||(a[2]=[t.createElementVNode("div",{class:"connection-dot"},null,-1)])],34)):t.createCommentVNode("",!0),e.store.isDependencyGraphEnabled?(t.openBlock(),t.createElementBlock("div",{key:1,ref:"rightConnectionHandle",class:t.normalizeClass(["connection-handle right-connection-handle",{visible:y.value,"is-dragging":A.value}]),onMousedown:a[1]||(a[1]=t.withModifiers(c=>Ie("right",c),["stop"]))},[...a[3]||(a[3]=[t.createElementVNode("div",{class:"connection-dot"},null,-1)])],34)):t.createCommentVNode("",!0),t.createElementVNode("div",{ref:"leftResizeHandle",class:t.normalizeClass(["resize-handle left-resize-handle",{"is-dragging":t.unref(P)}])},[...a[4]||(a[4]=[t.createElementVNode("div",{class:"handle-grip"},null,-1),t.createElementVNode("div",{class:"vertical-indicator left-indicator"},null,-1)])],2),e.label?(t.openBlock(),t.createElementBlock("label",Xt,t.toDisplayString(e.label),1)):t.createCommentVNode("",!0),t.createElementVNode("div",{ref:"rightResizeHandle",class:t.normalizeClass(["resize-handle right-resize-handle",{"is-dragging":t.unref(X)}])},[...a[5]||(a[5]=[t.createElementVNode("div",{class:"handle-grip"},null,-1),t.createElementVNode("div",{class:"vertical-indicator right-indicator"},null,-1)])],2)],46,Gt)],512),e.store.isDependencyGraphEnabled&&O.value?(t.openBlock(),t.createElementBlock("svg",{key:0,style:t.normalizeStyle(V.value)},[t.createElementVNode("line",{x1:$.value.startX,y1:$.value.startY,x2:$.value.endX,y2:$.value.endY,stroke:"#2196f3","stroke-width":"2","stroke-dasharray":"5,5"},null,8,Ft)],4)):t.createCommentVNode("",!0)],8,Lt))}}),[["__scopeId","data-v-8917a8a3"]]),Yt=["tabindex"],xe=j(t.defineComponent({__name:"ARow",props:{rowIndex:{},store:{},tabIndex:{default:()=>-1},addNavigation:{type:[Boolean,Object],default:!1}},setup(e){const n=t.useTemplateRef("rowEl"),i=t.computed(()=>e.store.isRowVisible(e.rowIndex)),d=t.computed(()=>e.store.getRowExpandSymbol(e.rowIndex));if(e.addNavigation){let f=te;typeof e.addNavigation=="object"&&(f={...f,...e.addNavigation}),me([{selectors:n,handlers:f}])}return(f,s)=>t.withDirectives((t.openBlock(),t.createElementBlock("tr",{ref:"rowEl",tabindex:e.tabIndex,class:"atable-row"},[e.store.config.view!=="uncounted"?t.renderSlot(f.$slots,"index",{key:0},()=>[e.store.config.view==="list"?(t.openBlock(),t.createElementBlock("td",{key:0,tabIndex:-1,class:t.normalizeClass(["list-index",e.store.hasPinnedColumns?"sticky-index":""])},t.toDisplayString(e.rowIndex+1),3)):e.store.isTreeView?(t.openBlock(),t.createElementBlock("td",{key:1,tabIndex:-1,class:t.normalizeClass(["tree-index",e.store.hasPinnedColumns?"sticky-index":""]),onClick:s[0]||(s[0]=l=>e.store.toggleRowExpand(e.rowIndex))},t.toDisplayString(d.value),3)):t.createCommentVNode("",!0)],!0):t.createCommentVNode("",!0),t.renderSlot(f.$slots,"default",{},void 0,!0)],8,Yt)),[[t.vShow,i.value]])}}),[["__scopeId","data-v-0fa91f83"]]),ve=new WeakMap,jt={mounted(e,n){const i=!n.modifiers.bubble;let d;if(typeof n.value=="function")d=Ne(e,n.value,{capture:i});else{const[f,s]=n.value;d=Ne(e,f,Object.assign({capture:i},s))}ve.set(e,d)},unmounted(e){const n=ve.get(e);n&&typeof n=="function"?n():n?.stop(),ve.delete(e)}},Ut={mounted(e,n){typeof n.value=="function"?pe(e,n.value):pe(e,...n.value)}};function qt(){let e=!1;const n=t.shallowRef(!1);return(i,d)=>{if(n.value=d.value,e)return;e=!0;const f=zt(i,d.value);t.watch(n,s=>f.value=s)}}qt();const Jt={class:"gantt-connection-overlay"},Zt={class:"connection-svg",style:{position:"absolute",top:0,left:0,width:"100%",height:"100%",pointerEvents:"none",zIndex:1}},Qt=["d","stroke-width","onDblclick"],Kt=["id","d","stroke","stroke-width","onDblclick"],_t=.25,ae=16,en=j(t.defineComponent({__name:"AGanttConnection",props:{store:{}},emits:["connection:delete"],setup(e,{emit:n}){const i=n,d=t.computed(()=>e.store.connectionPaths.filter(l=>{const o=e.store.ganttBars.find(u=>u.id===l.from.barId),r=e.store.ganttBars.find(u=>u.id===l.to.barId);return o&&r})),f=l=>{const o=e.store.connectionHandles.find(x=>x.barId===l.from.barId&&x.side===l.from.side),r=e.store.connectionHandles.find(x=>x.barId===l.to.barId&&x.side===l.to.side);if(!o||!r)return"";const u=o.position.x+ae/2,m=o.position.y+ae/2,v=r.position.x+ae/2,E=r.position.y+ae/2,b=Math.abs(v-u),k=Math.max(b*_t,50),w=u+(l.from.side==="left"?-k:k),g=v+(l.to.side==="left"?-k:k),h={x:.5*u+.5*w,y:.5*m+.5*m},y={x:.5*w+.5*g,y:.5*m+.5*E},T={x:.5*g+.5*v,y:.5*E+.5*E},A={x:.5*h.x+.5*y.x,y:.5*h.y+.5*y.y},O={x:.5*y.x+.5*T.x,y:.5*y.y+.5*T.y},$={x:.5*A.x+.5*O.x,y:.5*A.y+.5*O.y};return`M ${u} ${m} Q ${w} ${m}, ${$.x} ${$.y} Q ${g} ${E}, ${v} ${E}`},s=l=>{e.store.deleteConnection(l.id)&&i("connection:delete",l)};return(l,o)=>(t.openBlock(),t.createElementBlock("div",Jt,[(t.openBlock(),t.createElementBlock("svg",Zt,[o[0]||(o[0]=t.createElementVNode("defs",null,[t.createElementVNode("path",{id:"arrowhead",d:"M 0 -7 L 20 0 L 0 7Z",stroke:"black","stroke-width":"1",fill:"currentColor"}),t.createElementVNode("marker",{id:"arrowhead-marker",markerWidth:"10",markerHeight:"7",refX:"5",refY:"3.5",orient:"auto",markerUnits:"strokeWidth"},[t.createElementVNode("polygon",{points:"0 0, 10 3.5, 0 7",fill:"currentColor"})])],-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,r=>(t.openBlock(),t.createElementBlock("path",{key:`${r.id}-hitbox`,d:f(r),stroke:"transparent","stroke-width":(r.style?.width||2)+10,fill:"none",class:"connection-hitbox",onDblclick:u=>s(r)},null,40,Qt))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,r=>(t.openBlock(),t.createElementBlock("path",{id:r.id,key:r.id,d:f(r),stroke:r.style?.color||"#666","stroke-width":r.style?.width||2,fill:"none","marker-mid":"url(#arrowhead-marker)",class:"connection-path animated-path",onDblclick:u=>s(r)},null,40,Kt))),128))]))]))}}),[["__scopeId","data-v-71911260"]]),tn={key:0},nn={class:"atable-header-row",tabindex:"-1"},on=["data-colindex"],ye=t.defineComponent({__name:"ATableHeader",props:{columns:{},store:{}},setup(e){const n=i=>{for(const d of i){if(d.borderBoxSize.length===0)continue;const s=d.borderBoxSize[0].inlineSize,l=Number(d.target.dataset.colindex),o=e.store.columns[l]?.width;typeof o=="number"&&o!==s&&e.store.resizeColumn(l,s)}};return(i,d)=>e.columns.length?(t.openBlock(),t.createElementBlock("thead",tn,[t.createElementVNode("tr",nn,[e.store.zeroColumn?(t.openBlock(),t.createElementBlock("th",{key:0,id:"header-index",class:t.normalizeClass([[e.store.hasPinnedColumns?"sticky-index":"",e.store.isTreeView?"tree-index":"",e.store.config.view==="list-expansion"?"list-expansion-index":""],"list-index"])},null,2)):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.columns,(f,s)=>t.withDirectives((t.openBlock(),t.createElementBlock("th",{key:f.name,"data-colindex":s,tabindex:"-1",style:t.normalizeStyle(e.store.getHeaderCellStyle(f)),class:t.normalizeClass(f.pinned?"sticky-column":"")},[t.renderSlot(i.$slots,"default",{},()=>[t.createTextVNode(t.toDisplayString(f.label||String.fromCharCode(s+97).toUpperCase()),1)])],14,on)),[[t.unref(Ut),n]])),128))])])):t.createCommentVNode("",!0)}}),ke=t.defineComponent({__name:"ATableModal",props:{store:{}},setup(e){const n=t.useTemplateRef("amodal"),{width:i,height:d}=Y(n),f=t.computed(()=>{if(!(e.store.modal.height&&e.store.modal.width&&e.store.modal.left&&e.store.modal.bottom))return;const s=e.store.modal.cell?.closest("table");if(!s)return{};const l=s.offsetHeight||0,o=s.offsetWidth||0;let r=e.store.modal.cell?.offsetTop||0;const u=s.querySelector("thead")?.offsetHeight||0;r+=u,r=r+d.value<l?r:r-(d.value+e.store.modal.height);let m=e.store.modal.cell?.offsetLeft||0;return m=m+i.value<=o?m:m-(i.value-e.store.modal.width),{left:`${m}px`,top:`${r}px`}});return(s,l)=>(t.openBlock(),t.createElementBlock("div",{ref:"amodal",class:"amodal",tabindex:"-1",style:t.normalizeStyle(f.value),onClick:l[0]||(l[0]=t.withModifiers(()=>{},["stop"])),onInput:l[1]||(l[1]=t.withModifiers(()=>{},["stop"]))},[t.renderSlot(s.$slots,"default")],36))}}),Ge=e=>{const n=e.id||Tt();return Ke.defineStore(`table-${n}`,()=>{const d=()=>{const a=[Object.assign({},{rowModified:!1})],c=new Set;for(let S=0;S<s.value.length;S++){const R=s.value[S];R.parent!==null&&R.parent!==void 0&&c.add(R.parent)}const p=S=>s.value[S]?.gantt!==void 0,C=S=>{for(let R=0;R<s.value.length;R++)if(s.value[R].parent===S&&(p(R)||C(R)))return!0;return!1},M=S=>{const R=l.value,U=R.view==="tree"||R.view==="tree-gantt"?R.defaultTreeExpansion:void 0;if(!U)return!0;switch(U){case"root":return!1;case"branch":return C(S);case"leaf":return!0;default:return!0}};for(let S=0;S<s.value.length;S++){const R=s.value[S],U=R.parent===null||R.parent===void 0,se=c.has(S);a[S]={childrenOpen:M(S),expanded:!1,indent:R.indent||0,isParent:se,isRoot:U,rowModified:!1,open:U,parent:R.parent}}return a},f=t.ref(e.columns),s=t.ref(e.rows),l=t.ref(e.config||{}),o=t.ref({}),r=t.ref({}),u=t.computed(()=>{const a={};for(const[c,p]of f.value.entries())for(const[C,M]of s.value.entries())a[`${c}:${C}`]=M[p.name];return a}),m=t.computed({get:()=>{const a=d();for(let c=0;c<a.length;c++)o.value[c]&&(a[c].rowModified=o.value[c]),r.value[c]&&(r.value[c].childrenOpen!==void 0&&(a[c].childrenOpen=r.value[c].childrenOpen),r.value[c].expanded!==void 0&&(a[c].expanded=r.value[c].expanded));if(y.value){const c=(p,C)=>{const M=C[p];if(M.isRoot||M.parent===null||M.parent===void 0)return!0;const S=M.parent;return S<0||S>=C.length?!1:(C[S].childrenOpen||!1)&&c(S,C)};for(let p=0;p<a.length;p++)a[p].isRoot||(a[p].open=c(p,a))}return a},set:a=>{JSON.stringify(a)!==JSON.stringify(m.value)&&(m.value=a)}}),v=t.ref(e.modal||{visible:!1}),E=t.ref({}),b=t.ref([]),k=t.ref([]),w=t.ref([]),g=t.computed(()=>f.value.some(a=>a.pinned)),h=t.computed(()=>l.value.view==="gantt"||l.value.view==="tree-gantt"),y=t.computed(()=>l.value.view==="tree"||l.value.view==="tree-gantt"),T=t.computed(()=>{const a=l.value;return a.view==="gantt"||a.view==="tree-gantt"?a.dependencyGraph!==!1:!0}),A=t.computed(()=>`${Math.ceil(s.value.length/100+1)}ch`),O=t.computed(()=>l.value.view?["list","tree","tree-gantt","list-expansion"].includes(l.value.view):!1),$=(a,c)=>u.value[`${a}:${c}`],x=(a,c,p)=>{const C=`${a}:${c}`,M=f.value[a];u.value[C]!==p&&(o.value[c]=!0),u.value[C]=p,s.value[c]={...s.value[c],[M.name]:p}},B=a=>{s.value=a},D=(a,c,p)=>{const C=`${a}:${c}`;u.value[C]!==p&&(o.value[c]=!0,E.value[C]=p)},V=a=>{const c=f.value.indexOf(a)===f.value.length-1,p=l.value.fullWidth?a.resizable&&!c:a.resizable;return{width:a.width||"40ch",textAlign:a.align||"center",...p&&{resize:"horizontal",overflow:"hidden",whiteSpace:"nowrap"}}},z=(a,c)=>{if(a<0||a>=f.value.length)return;const C=Math.max(c,40);f.value[a]={...f.value[a],width:`${C}px`}},P=a=>{const c=s.value[a];return h.value&&c.gantt!==void 0},X=a=>!y.value||m.value[a].isRoot||m.value[a].open,le=a=>!y.value&&l.value.view!=="list-expansion"?"":y.value&&(m.value[a].isRoot||m.value[a].isParent)?m.value[a].childrenOpen?"▼":"►":l.value.view==="list-expansion"?m.value[a].expanded?"▼":"►":"",K=a=>{if(y.value){const c=r.value[a]||{},C=!(c.childrenOpen??m.value[a].childrenOpen);r.value[a]={...c,childrenOpen:C},C||re(a)}else if(l.value.view==="list-expansion"){const c=r.value[a]||{},p=c.expanded??m.value[a].expanded;r.value[a]={...c,expanded:!p}}},re=a=>{for(let c=0;c<s.value.length;c++)if(m.value[c].parent===a){const p=r.value[c]||{};r.value[c]={...p,childrenOpen:!1},re(c)}},Ce=(a,c)=>{const p=$(a,c);return ie(a,c,p)},ie=(a,c,p)=>{const C=f.value[a],M=s.value[c],S=C.format;return S?typeof S=="function"?S(p,{table:u.value,row:M,column:C}):typeof S=="string"?Function(`"use strict";return (${S})`)()(p,{table:u.value,row:M,column:C}):p:p};return{columns:f,config:l,connectionHandles:k,connectionPaths:w,display:m,ganttBars:b,modal:v,rows:s,table:u,updates:E,hasPinnedColumns:g,isGanttView:h,isTreeView:y,isDependencyGraphEnabled:T,numberedRowWidth:A,zeroColumn:O,closeModal:a=>{a.target instanceof Node&&v.value.parent?.contains(a.target)||v.value.visible&&(v.value.visible=!1)},createConnection:(a,c,p)=>{const C=k.value.find(R=>R.id===a),M=k.value.find(R=>R.id===c);if(!C||!M)return console.warn("Cannot create connection: handle not found"),null;const S={id:`connection-${a}-${c}`,from:{barId:C.barId,side:C.side},to:{barId:M.barId,side:M.side},style:p?.style,label:p?.label};return w.value.push(S),S},deleteConnection:a=>{const c=w.value.findIndex(p=>p.id===a);return c>=0?(w.value.splice(c,1),!0):!1},getCellData:$,getCellDisplayValue:Ce,getConnectionsForBar:a=>w.value.filter(c=>c.from.barId===a||c.to.barId===a),getFormattedValue:ie,getHandlesForBar:a=>k.value.filter(c=>c.barId===a),getHeaderCellStyle:V,getIndent:(a,c)=>c&&a===0&&c>0?`${c}ch`:"inherit",getRowExpandSymbol:le,isRowGantt:P,isRowVisible:X,registerConnectionHandle:a=>{const c=k.value.findIndex(p=>p.id===a.id);c>=0?k.value[c]=a:k.value.push(a)},registerGanttBar:a=>{const c=b.value.findIndex(p=>p.id===a.id);c>=0?b.value[c]=a:b.value.push(a)},resizeColumn:z,setCellData:x,setCellText:D,toggleRowExpand:K,unregisterConnectionHandle:a=>{const c=k.value.findIndex(p=>p.id===a);c>=0&&k.value.splice(c,1)},unregisterGanttBar:a=>{const c=b.value.findIndex(p=>p.id===a);c>=0&&b.value.splice(c,1)},updateGanttBar:a=>{const c=s.value[a.rowIndex]?.gantt;c&&(a.type==="resize"?a.edge==="start"?(c.startIndex=a.newStart,c.endIndex=a.end,c.colspan=c.endIndex-c.startIndex):a.edge==="end"&&(c.startIndex=a.start,c.endIndex=a.newEnd,c.colspan=c.endIndex-c.startIndex):a.type==="bar"&&(c.startIndex=a.newStart,c.endIndex=a.newEnd,c.colspan=c.endIndex-c.startIndex))},updateRows:B}})()},an={class:"atable-container",style:{position:"relative"}},Xe=j(t.defineComponent({__name:"ATable",props:t.mergeModels({id:{default:""},config:{default:()=>new Object}},{rows:{required:!0},rowsModifiers:{},columns:{required:!0},columnsModifiers:{}}),emits:t.mergeModels(["cellUpdate","gantt:drag","connection:event","columns:update"],["update:rows","update:columns"]),setup(e,{expose:n,emit:i}){const d=t.useModel(e,"rows"),f=t.useModel(e,"columns"),s=i,l=t.useTemplateRef("table"),o=Ge({columns:f.value,rows:d.value,id:e.id,config:e.config});o.$onAction(({name:b,store:k,args:w,after:g})=>{if(b==="setCellData"||b==="setCellText"){const[h,y,T]=w,A=k.getCellData(h,y);g(()=>{d.value=[...k.rows],s("cellUpdate",{colIndex:h,rowIndex:y,newValue:T,oldValue:A})})}else if(b==="updateGanttBar"){const[h]=w;let y=!1;h.type==="resize"?y=h.oldColspan!==h.newColspan:h.type==="bar"&&(y=h.oldStart!==h.newStart||h.oldEnd!==h.newEnd),y&&g(()=>{s("gantt:drag",h)})}else b==="resizeColumn"&&g(()=>{f.value=[...k.columns],s("columns:update",[...k.columns])})}),t.watch(()=>d.value,b=>{JSON.stringify(b)!==JSON.stringify(o.rows)&&(o.rows=[...b])},{deep:!0}),t.watch(f,b=>{JSON.stringify(b)!==JSON.stringify(o.columns)&&(o.columns=[...b],s("columns:update",[...b]))},{deep:!0}),t.onMounted(()=>{f.value.some(b=>b.pinned)&&(u(),o.isTreeView&&Pe(l,u,{childList:!0,subtree:!0}))});const r=t.computed(()=>o.columns.filter(b=>b.pinned).length),u=()=>{const b=l.value,k=b?.rows[0],w=b?.rows[1],g=k?Array.from(k.cells):[];for(const[h,y]of g.entries()){const T=w?.cells[h];T&&(y.style.width=`${T.offsetWidth}px`)}for(const h of b?.rows||[]){let y=0;const T=[];for(const A of h.cells)(A.classList.contains("sticky-column")||A.classList.contains("sticky-index"))&&(A.style.left=`${y}px`,y+=A.offsetWidth,T.push(A));T.length>0&&T[T.length-1].classList.add("sticky-column-edge")}};window.addEventListener("keydown",b=>{if(b.key==="Escape"&&o.modal.visible){o.modal.visible=!1;const k=o.modal.parent;k&&t.nextTick().then(()=>{k.focus()})}});const m=b=>{if(!b.gantt||r.value===0)return o.columns;const k=[];for(let w=0;w<r.value;w++){const g={...o.columns[w]};g.originalIndex=w,k.push(g)}return k.push({...o.columns[r.value],isGantt:!0,colspan:b.gantt?.colspan||o.columns.length-r.value,originalIndex:r.value,width:"auto"}),k},v=b=>{s("connection:event",{type:"create",connection:b})},E=b=>{s("connection:event",{type:"delete",connection:b})};return n({store:o,createConnection:o.createConnection,deleteConnection:o.deleteConnection,getConnectionsForBar:o.getConnectionsForBar,getHandlesForBar:o.getHandlesForBar}),(b,k)=>(t.openBlock(),t.createElementBlock("div",an,[t.withDirectives((t.openBlock(),t.createElementBlock("table",{ref:"table",class:"atable",style:t.normalizeStyle({width:t.unref(o).config.fullWidth?"100%":"auto"})},[t.renderSlot(b.$slots,"header",{data:t.unref(o)},()=>[t.createVNode(ye,{columns:t.unref(o).columns,store:t.unref(o)},null,8,["columns","store"])],!0),t.createElementVNode("tbody",null,[t.renderSlot(b.$slots,"body",{data:t.unref(o)},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(o).rows,(w,g)=>(t.openBlock(),t.createBlock(xe,{key:w.id,row:w,"row-index":g,store:t.unref(o)},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(m(w),(h,y)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:h.name},[h.isGantt?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(h.ganttComponent||"AGanttCell"),{key:0,store:t.unref(o),"columns-count":t.unref(o).columns.length-r.value,color:w.gantt?.color,start:w.gantt?.startIndex,end:w.gantt?.endIndex,colspan:h.colspan,pinned:h.pinned,"row-index":g,"col-index":h.originalIndex??y,style:t.normalizeStyle({textAlign:h?.align||"center",minWidth:h?.width||"40ch",width:t.unref(o).config.fullWidth?"auto":null}),"onConnection:create":v},null,40,["store","columns-count","color","start","end","colspan","pinned","row-index","col-index","style"])):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(h.cellComponent||"ACell"),{key:1,store:t.unref(o),pinned:h.pinned,"row-index":g,"col-index":y,style:t.normalizeStyle({textAlign:h?.align||"center",width:t.unref(o).config.fullWidth?"auto":null}),spellcheck:"false"},null,8,["store","pinned","row-index","col-index","style"]))],64))),128))]),_:2},1032,["row","row-index","store"]))),128))],!0)]),t.renderSlot(b.$slots,"footer",{data:t.unref(o)},void 0,!0),t.renderSlot(b.$slots,"modal",{data:t.unref(o)},()=>[t.withDirectives(t.createVNode(ke,{store:t.unref(o)},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(o).modal.component),t.mergeProps({key:`${t.unref(o).modal.rowIndex}:${t.unref(o).modal.colIndex}`,"col-index":t.unref(o).modal.colIndex,"row-index":t.unref(o).modal.rowIndex,store:t.unref(o)},t.unref(o).modal.componentProps),null,16,["col-index","row-index","store"]))]),_:1},8,["store"]),[[t.vShow,t.unref(o).modal.visible]])],!0)],4)),[[t.unref(jt),t.unref(o).closeModal]]),t.unref(o).isGanttView&&t.unref(o).isDependencyGraphEnabled?(t.openBlock(),t.createBlock(en,{key:0,store:t.unref(o),"onConnection:delete":E},null,8,["store"])):t.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-50e8e2bf"]]),ln={},rn={class:"aloading"},sn={class:"aloading-header"};function cn(e,n){return t.openBlock(),t.createElementBlock("div",rn,[t.createElementVNode("h2",sn,[t.renderSlot(e.$slots,"default",{},void 0,!0)]),n[0]||(n[0]=t.createElementVNode("div",{class:"aloading-bar"},null,-1))])}const Fe=j(ln,[["render",cn],["__scopeId","data-v-a930a25b"]]),dn={},fn={class:"aloading"},un={class:"aloading-header"};function gn(e,n){return t.openBlock(),t.createElementBlock("div",fn,[t.createElementVNode("h2",un,[t.renderSlot(e.$slots,"default",{},void 0,!0)]),n[0]||(n[0]=t.createElementVNode("div",{class:"aloading-bar"},null,-1))])}const Ye=j(dn,[["render",gn],["__scopeId","data-v-e1165876"]]);function mn(e){e.component("ACell",He),e.component("AExpansionRow",Le),e.component("AGanttCell",We),e.component("ARow",xe),e.component("ATable",Xe),e.component("ATableHeader",ye),e.component("ATableLoading",Fe),e.component("ATableLoadingBar",Ye),e.component("ATableModal",ke)}N.ACell=He,N.AExpansionRow=Le,N.AGanttCell=We,N.ARow=xe,N.ATable=Xe,N.ATableHeader=ye,N.ATableLoading=Fe,N.ATableLoadingBar=Ye,N.ATableModal=ke,N.createTableStore=Ge,N.install=mn,Object.defineProperty(N,Symbol.toStringTag,{value:"Module"})}));
|
|
3
3
|
//# sourceMappingURL=atable.umd.cjs.map
|