@stonecrop/atable 0.2.65 → 0.2.67

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.
@@ -1,3 +1,3 @@
1
- (function(k,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("pinia")):typeof define=="function"&&define.amd?define(["exports","vue","pinia"],t):(k=typeof globalThis<"u"?globalThis:k||self,t(k["@stonecrop/atable"]={},k.Vue,k.pinia))})(this,function(k,t,Ce){"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}.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}.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);border-left:4px solid var(--sc-row-border-color);display:flex}.expanded-row{border-bottom:1px solid var(--sc-row-border-color);border-top:1px solid var(--sc-row-border-color)}.expanded-row-content{border-bottom:1px solid var(--sc-row-border-color);border-top:1px solid var(--sc-row-border-color);padding:1.5rem}.table-row{border-top:1px solid var(--sc-row-border-color);display:flex;background-color:#fff}.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-header-row{display:flex}.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)}#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-modified: #ffffb1;--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: 5px;--sc-atable-row-height: 1.5em;--sc-atable-cell-border-width: 2px;--sc-btn-border: #cccccc;--sc-btn-color: white;--sc-btn-hover: #f2f2f2;--sc-btn-label-color: black}.amodal{position:fixed;background-color:var(--sc-row-color-zebra-dark);z-index:100}.sticky-index{position:sticky;left:0;z-index:1;order:0}.sticky-column,th.sticky-column,td.sticky-column,th.sticky-index,td.sticky-index{position:sticky;z-index:1;order:0;background:#fff}.sticky-column-edge,.atable th.sticky-column-edge{border-right:1px solid var(--sc-row-border-color);border-right-width:1px}[data-v-20244978]: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-modified: #ffffb1;--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: 5px;--sc-atable-row-height: 1.5em;--sc-atable-cell-border-width: 2px;--sc-btn-border: #cccccc;--sc-btn-color: white;--sc-btn-hover: #f2f2f2;--sc-btn-label-color: black}.atable[data-v-20244978]{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}.atable th[data-v-20244978]{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-20244978]:focus{outline:none}
2
- /*$vite$:1*/`,document.head.appendChild(te);function oe(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function V(e){return typeof e=="function"?e():t.unref(e)}const Se=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Ae=e=>e!=null,Ie=Object.prototype.toString,Te=e=>Ie.call(e)==="[object Object]",$e=()=>{},$=Se?window:void 0;function M(e){var o;const n=V(e);return(o=n==null?void 0:n.$el)!=null?o:n}function O(...e){let o,n,r,a;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,r,a]=e,o=$):[o,n,r,a]=e,!o)return $e;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const i=[],l=()=>{i.forEach(u=>u()),i.length=0},d=(u,m,c,p)=>(u.addEventListener(m,c,p),()=>u.removeEventListener(m,c,p)),s=t.watch(()=>[M(o),V(a)],([u,m])=>{if(l(),!u)return;const c=Te(m)?{...m}:m;i.push(...n.flatMap(p=>r.map(b=>d(u,p,b,c))))},{immediate:!0,flush:"post"}),f=()=>{s(),l()};return oe(f),f}function Me(){const e=t.ref(!1),o=t.getCurrentInstance();return o&&t.onMounted(()=>{e.value=!0},o),e}function Oe(e){const o=Me();return t.computed(()=>(o.value,!!e()))}function Be(e,o,n={}){const{window:r=$,...a}=n;let i;const l=Oe(()=>r&&"MutationObserver"in r),d=()=>{i&&(i.disconnect(),i=void 0)},s=t.computed(()=>{const c=V(e),p=(Array.isArray(c)?c:[c]).map(M).filter(Ae);return new Set(p)}),f=t.watch(()=>s.value,c=>{d(),l.value&&c.size&&(i=new MutationObserver(o),c.forEach(p=>i.observe(p,a)))},{immediate:!0,flush:"post"}),u=()=>i==null?void 0:i.takeRecords(),m=()=>{f(),d()};return oe(m),{isSupported:l,stop:m,takeRecords:u}}function Re(e={}){var o;const{window:n=$,deep:r=!0,triggerOnRemoval:a=!1}=e,i=(o=e.document)!=null?o:n==null?void 0:n.document,l=()=>{var f;let u=i==null?void 0:i.activeElement;if(r)for(;u!=null&&u.shadowRoot;)u=(f=u==null?void 0:u.shadowRoot)==null?void 0:f.activeElement;return u},d=t.ref(),s=()=>{d.value=l()};return n&&(O(n,"blur",f=>{f.relatedTarget===null&&s()},!0),O(n,"focus",s,!0)),a&&Be(i,f=>{f.filter(u=>u.removedNodes.length).map(u=>Array.from(u.removedNodes)).flat().forEach(u=>{u===d.value&&s()})},{childList:!0,subtree:!0}),s(),d}const De="focusin",Le="focusout";function ze(e,o={}){const{window:n=$}=o,r=t.computed(()=>M(e)),a=t.ref(!1),i=t.computed(()=>a.value),l=Re(o);return!n||!l.value?{focused:i}:(O(r,De,()=>a.value=!0),O(r,Le,()=>a.value=!1),{focused:i})}function Pe(e,{window:o=$,scrollTarget:n}={}){const r=t.ref(!1),a=()=>{if(!o)return;const i=o.document,l=M(e);if(!l)r.value=!1;else{const d=l.getBoundingClientRect();r.value=d.top<=(o.innerHeight||i.documentElement.clientHeight)&&d.left<=(o.innerWidth||i.documentElement.clientWidth)&&d.bottom>=0&&d.right>=0}};return t.watch(()=>M(e),()=>a(),{immediate:!0,flush:"post"}),o&&O(n||o,"scroll",a,{capture:!1,passive:!0}),r}const A=e=>{let o=Pe(e).value;return o=o&&e.offsetHeight>0,o},I=e=>e.tabIndex>=0,ne=e=>{const o=e.target;return W(o)},W=e=>{var o;let n;if(e instanceof HTMLTableCellElement){const r=(o=e.parentElement)==null?void 0:o.previousElementSibling;if(r){const a=Array.from(r.children)[e.cellIndex];a&&(n=a)}}else if(e instanceof HTMLTableRowElement){const r=e.previousElementSibling;r&&(n=r)}return n&&(!I(n)||!A(n))?W(n):n},Ne=e=>{var o;const n=e.target;let r;if(n instanceof HTMLTableCellElement){const a=(o=n.parentElement)==null?void 0:o.parentElement;if(a){const i=a.firstElementChild.children[n.cellIndex];i&&(r=i)}}else if(n instanceof HTMLTableRowElement){const a=n.parentElement;if(a){const i=a.firstElementChild;i&&(r=i)}}return r&&(!I(r)||!A(r))?H(r):r},re=e=>{const o=e.target;return H(o)},H=e=>{var o;let n;if(e instanceof HTMLTableCellElement){const r=(o=e.parentElement)==null?void 0:o.nextElementSibling;if(r){const a=Array.from(r.children)[e.cellIndex];a&&(n=a)}}else if(e instanceof HTMLTableRowElement){const r=e.nextElementSibling;r&&(n=r)}return n&&(!I(n)||!A(n))?H(n):n},Ve=e=>{var o;const n=e.target;let r;if(n instanceof HTMLTableCellElement){const a=(o=n.parentElement)==null?void 0:o.parentElement;if(a){const i=a.lastElementChild.children[n.cellIndex];i&&(r=i)}}else if(n instanceof HTMLTableRowElement){const a=n.parentElement;if(a){const i=a.lastElementChild;i&&(r=i)}}return r&&(!I(r)||!A(r))?W(r):r},le=e=>{const o=e.target;return j(o)},j=e=>{var o;let n;if(e.previousElementSibling)n=e.previousElementSibling;else{const r=(o=e.parentElement)==null?void 0:o.previousElementSibling;n=r==null?void 0:r.lastElementChild}return n&&(!I(n)||!A(n))?j(n):n},ae=e=>{const o=e.target;return F(o)},F=e=>{var o;let n;if(e.nextElementSibling)n=e.nextElementSibling;else{const r=(o=e.parentElement)==null?void 0:o.nextElementSibling;n=r==null?void 0:r.firstElementChild}return n&&(!I(n)||!A(n))?F(n):n},se=e=>{const o=e.target.parentElement.firstElementChild;return o&&(!I(o)||!A(o))?F(o):o},ce=e=>{const o=e.target.parentElement.lastElementChild;return o&&(!I(o)||!A(o))?j(o):o},z=["alt","control","shift","meta"],We={ArrowUp:"up",ArrowDown:"down",ArrowLeft:"left",ArrowRight:"right"},q={"keydown.up":e=>{const o=ne(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.down":e=>{const o=re(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.left":e=>{const o=le(e);e.preventDefault(),e.stopPropagation(),o&&o.focus()},"keydown.right":e=>{const o=ae(e);e.preventDefault(),e.stopPropagation(),o&&o.focus()},"keydown.control.up":e=>{const o=Ne(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.control.down":e=>{const o=Ve(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.control.left":e=>{const o=se(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.control.right":e=>{const o=ce(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.end":e=>{const o=ce(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.enter":e=>{if(e.target instanceof HTMLTableCellElement){e.preventDefault(),e.stopPropagation();const o=re(e);o&&o.focus()}},"keydown.shift.enter":e=>{if(e.target instanceof HTMLTableCellElement){e.preventDefault(),e.stopPropagation();const o=ne(e);o&&o.focus()}},"keydown.home":e=>{const o=se(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.tab":e=>{const o=ae(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.shift.tab":e=>{const o=le(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())}};function U(e){const o=l=>{let d=null;return l.parent&&(typeof l.parent=="string"?d=document.querySelector(l.parent):l.parent instanceof HTMLElement?d=l.parent:d=l.parent.value),d},n=l=>{const d=o(l);let s=[];if(typeof l.selectors=="string")s=d?Array.from(d.querySelectorAll(l.selectors)):Array.from(document.querySelectorAll(l.selectors));else if(Array.isArray(l.selectors))for(const f of l.selectors)f instanceof HTMLElement?s.push(f):s.push(f.$el);else if(l.selectors instanceof HTMLElement)s.push(l.selectors);else if(Array.isArray(l.selectors.value))for(const f of l.selectors.value)f instanceof HTMLElement?s.push(f):s.push(f.$el);else s.push(l.selectors.value);return s},r=l=>{const d=o(l);let s=[];return l.selectors?s=n(l):d&&(s=Array.from(d.children).filter(f=>I(f)&&A(f))),s},a=l=>d=>{const s=We[d.key]||d.key.toLowerCase();if(z.includes(s))return;const f=l.handlers||q;for(const u of Object.keys(f)){const[m,...c]=u.split(".");if(m==="keydown"&&c.includes(s)){const p=f[u],b=c.filter(y=>z.includes(y)),x=z.some(y=>{const g=y.charAt(0).toUpperCase()+y.slice(1);return d.getModifierState(g)});if(b.length>0){if(x){for(const y of z)if(c.includes(y)){const g=y.charAt(0).toUpperCase()+y.slice(1);d.getModifierState(g)&&p(d)}}}else x||p(d)}}},i=[];t.onMounted(()=>{for(const l of e){const d=o(l),s=r(l),f=a(l),u=d?[d]:s;for(const m of u){const{focused:c}=ze(t.ref(m)),p=t.watch(c,b=>{b?m.addEventListener("keydown",f):m.removeEventListener("keydown",f)});i.push(p)}}}),t.onBeforeUnmount(()=>{for(const l of i)l()})}function ie(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function B(e){return typeof e=="function"?e():t.unref(e)}const de=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const He=Object.prototype.toString,je=e=>He.call(e)==="[object Object]",R=()=>{},G=Fe();function Fe(){var e,o;return de&&((e=window==null?void 0:window.navigator)==null?void 0:e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((o=window==null?void 0:window.navigator)==null?void 0:o.maxTouchPoints)>2&&/iPad|Macintosh/.test(window==null?void 0:window.navigator.userAgent))}const fe={mounted:"mounted",updated:"updated",unmounted:"unmounted"};function qe(...e){if(e.length!==1)return t.toRef(...e);const o=e[0];return typeof o=="function"?t.readonly(t.customRef(()=>({get:o,set:R}))):t.ref(o)}function D(e){var o;const n=B(e);return(o=n==null?void 0:n.$el)!=null?o:n}const ue=de?window:void 0;function P(...e){let o,n,r,a;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,r,a]=e,o=ue):[o,n,r,a]=e,!o)return R;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const i=[],l=()=>{i.forEach(u=>u()),i.length=0},d=(u,m,c,p)=>(u.addEventListener(m,c,p),()=>u.removeEventListener(m,c,p)),s=t.watch(()=>[D(o),B(a)],([u,m])=>{if(l(),!u)return;const c=je(m)?{...m}:m;i.push(...n.flatMap(p=>r.map(b=>d(u,p,b,c))))},{immediate:!0,flush:"post"}),f=()=>{s(),l()};return ie(f),f}let pe=!1;function me(e,o,n={}){const{window:r=ue,ignore:a=[],capture:i=!0,detectIframe:l=!1}=n;if(!r)return R;G&&!pe&&(pe=!0,Array.from(r.document.body.children).forEach(c=>c.addEventListener("click",R)),r.document.documentElement.addEventListener("click",R));let d=!0;const s=c=>a.some(p=>{if(typeof p=="string")return Array.from(r.document.querySelectorAll(p)).some(b=>b===c.target||c.composedPath().includes(b));{const b=D(p);return b&&(c.target===b||c.composedPath().includes(b))}}),u=[P(r,"click",c=>{const p=D(e);if(!(!p||p===c.target||c.composedPath().includes(p))){if(c.detail===0&&(d=!s(c)),!d){d=!0;return}o(c)}},{passive:!0,capture:i}),P(r,"pointerdown",c=>{const p=D(e);d=!s(c)&&!!(p&&!c.composedPath().includes(p))},{passive:!0}),l&&P(r,"blur",c=>{setTimeout(()=>{var p;const b=D(e);((p=r.document.activeElement)==null?void 0:p.tagName)==="IFRAME"&&!(b!=null&&b.contains(r.document.activeElement))&&o(c)},0)})].filter(Boolean);return()=>u.forEach(c=>c())}const Ue={[fe.mounted](e,o){const n=!o.modifiers.bubble;if(typeof o.value=="function")e.__onClickOutside_stop=me(e,o.value,{capture:n});else{const[r,a]=o.value;e.__onClickOutside_stop=me(e,r,Object.assign({capture:n},a))}},[fe.unmounted](e){e.__onClickOutside_stop()}};function Y(e){return typeof Window<"u"&&e instanceof Window?e.document.documentElement:typeof Document<"u"&&e instanceof Document?e.documentElement:e}function be(e){const o=window.getComputedStyle(e);if(o.overflowX==="scroll"||o.overflowY==="scroll"||o.overflowX==="auto"&&e.clientWidth<e.scrollWidth||o.overflowY==="auto"&&e.clientHeight<e.scrollHeight)return!0;{const n=e.parentNode;return!n||n.tagName==="BODY"?!1:be(n)}}function Ge(e){const o=e||window.event,n=o.target;return be(n)?!1:o.touches.length>1?!0:(o.preventDefault&&o.preventDefault(),!1)}const X=new WeakMap;function Ye(e,o=!1){const n=t.ref(o);let r=null,a="";t.watch(qe(e),d=>{const s=Y(B(d));if(s){const f=s;if(X.get(f)||X.set(f,f.style.overflow),f.style.overflow!=="hidden"&&(a=f.style.overflow),f.style.overflow==="hidden")return n.value=!0;if(n.value)return f.style.overflow="hidden"}},{immediate:!0});const i=()=>{const d=Y(B(e));!d||n.value||(G&&(r=P(d,"touchmove",s=>{Ge(s)},{passive:!1})),d.style.overflow="hidden",n.value=!0)},l=()=>{const d=Y(B(e));!d||!n.value||(G&&(r==null||r()),d.style.overflow=a,X.delete(d),n.value=!1)};return ie(l),t.computed({get(){return n.value},set(d){d?i():l()}})}function Xe(){let e=!1;const o=t.ref(!1);return(n,r)=>{if(o.value=r.value,e)return;e=!0;const a=Ye(n,r.value);t.watch(o,i=>a.value=i)}}Xe();function J(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function N(e){return typeof e=="function"?e():t.unref(e)}const Je=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Qe=e=>e!=null,Ze=Object.prototype.toString,Ke=e=>Ze.call(e)==="[object Object]",_e=()=>{};function et(e){return t.getCurrentInstance()}function tt(e,o=!0,n){et()?t.onMounted(e,n):o?e():t.nextTick(e)}const Q=Je?window:void 0;function T(e){var o;const n=N(e);return(o=n==null?void 0:n.$el)!=null?o:n}function we(...e){let o,n,r,a;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,r,a]=e,o=Q):[o,n,r,a]=e,!o)return _e;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const i=[],l=()=>{i.forEach(u=>u()),i.length=0},d=(u,m,c,p)=>(u.addEventListener(m,c,p),()=>u.removeEventListener(m,c,p)),s=t.watch(()=>[T(o),N(a)],([u,m])=>{if(l(),!u)return;const c=Ke(m)?{...m}:m;i.push(...n.flatMap(p=>r.map(b=>d(u,p,b,c))))},{immediate:!0,flush:"post"}),f=()=>{s(),l()};return J(f),f}function ot(){const e=t.ref(!1),o=t.getCurrentInstance();return o&&t.onMounted(()=>{e.value=!0},o),e}function ge(e){const o=ot();return t.computed(()=>(o.value,!!e()))}function he(e,o,n={}){const{window:r=Q,...a}=n;let i;const l=ge(()=>r&&"MutationObserver"in r),d=()=>{i&&(i.disconnect(),i=void 0)},s=t.computed(()=>{const c=N(e),p=(Array.isArray(c)?c:[c]).map(T).filter(Qe);return new Set(p)}),f=t.watch(()=>s.value,c=>{d(),l.value&&c.size&&(i=new MutationObserver(o),c.forEach(p=>i.observe(p,a)))},{immediate:!0,flush:"post"}),u=()=>i==null?void 0:i.takeRecords(),m=()=>{f(),d()};return J(m),{isSupported:l,stop:m,takeRecords:u}}function nt(e,o,n={}){const{window:r=Q,...a}=n;let i;const l=ge(()=>r&&"ResizeObserver"in r),d=()=>{i&&(i.disconnect(),i=void 0)},s=t.computed(()=>{const m=N(e);return Array.isArray(m)?m.map(c=>T(c)):[T(m)]}),f=t.watch(s,m=>{if(d(),l.value&&r){i=new ResizeObserver(o);for(const c of m)c&&i.observe(c,a)}},{immediate:!0,flush:"post"}),u=()=>{d(),f()};return J(u),{isSupported:l,stop:u}}function rt(e,o={}){const{reset:n=!0,windowResize:r=!0,windowScroll:a=!0,immediate:i=!0,updateTiming:l="sync"}=o,d=t.ref(0),s=t.ref(0),f=t.ref(0),u=t.ref(0),m=t.ref(0),c=t.ref(0),p=t.ref(0),b=t.ref(0);function x(){const g=T(e);if(!g){n&&(d.value=0,s.value=0,f.value=0,u.value=0,m.value=0,c.value=0,p.value=0,b.value=0);return}const S=g.getBoundingClientRect();d.value=S.height,s.value=S.bottom,f.value=S.left,u.value=S.right,m.value=S.top,c.value=S.width,p.value=S.x,b.value=S.y}function y(){l==="sync"?x():l==="next-frame"&&requestAnimationFrame(()=>x())}return nt(e,y),t.watch(()=>T(e),g=>!g&&y()),he(e,y,{attributeFilter:["style","class"]}),a&&we("scroll",y,{capture:!0,passive:!0}),r&&we("resize",y,{passive:!0}),tt(()=>{i&&y()}),{height:d,bottom:s,left:f,right:u,top:m,width:c,x:p,y:b,update:y}}const lt=e=>{const o=new DOMParser().parseFromString(e,"text/html");return Array.from(o.body.childNodes).some(n=>n.nodeType===1)},at=["data-colindex","data-rowindex","data-editable","contenteditable","tabindex"],st=["innerHTML"],ct={key:2},Z=t.defineComponent({__name:"ACell",props:{colIndex:{},rowIndex:{},store:{},addNavigation:{type:[Boolean,Object],default:!0},tabIndex:{default:0},pinned:{type:Boolean}},setup(e){const o=t.useTemplateRef("cell"),{bottom:n,left:r}=rt(o),a=e.store.getCellData(e.colIndex,e.rowIndex),i=e.store.getCellDisplayValue(e.colIndex,e.rowIndex),l=t.ref(""),d=t.ref(!1),s=e.store.columns[e.colIndex],f=e.store.rows[e.rowIndex],u=s.align||"center",m=s.width||"40ch",c=t.computed(()=>typeof i=="string"?lt(i):!1),p=t.computed(()=>{var g;return{textAlign:u,width:m,backgroundColor:d.value?"var(--sc-cell-modified)":"inherit",fontWeight:d.value?"bold":"inherit",paddingLeft:e.store.getIndent(e.colIndex,(g=e.store.display[e.rowIndex])==null?void 0:g.indent)}}),b=()=>{s.mask,s.modalComponent&&e.store.$patch(g=>{g.modal.visible=!0,g.modal.colIndex=e.colIndex,g.modal.rowIndex=e.rowIndex,g.modal.parent=o.value,g.modal.top=n.value,g.modal.left=r.value,g.modal.width=m,typeof s.modalComponent=="function"?g.modal.component=s.modalComponent({table:g.table,row:f,column:s}):g.modal.component=s.modalComponent,g.modal.componentProps=s.modalComponentExtraProps})};if(e.addNavigation){let g={...q,"keydown.f2":b,"keydown.alt.up":b,"keydown.alt.down":b,"keydown.alt.left":b,"keydown.alt.right":b};typeof e.addNavigation=="object"&&(g={...g,...e.addNavigation}),U([{selectors:o,handlers:g}])}const x=()=>{o.value&&(l.value=o.value.textContent)},y=()=>{o.value&&(s.format?d.value=o.value.textContent!==e.store.getFormattedValue(e.colIndex,e.rowIndex,a):d.value=o.value.textContent!==a,o.value.textContent!==l.value&&(l.value=o.value.textContent,o.value.dispatchEvent(new Event("change")),s.format||e.store.setCellData(e.colIndex,e.rowIndex,l.value)))};return(g,S)=>t.withDirectives((t.openBlock(),t.createElementBlock("td",{ref:"cell","data-colindex":g.colIndex,"data-rowindex":g.rowIndex,"data-editable":t.unref(s).edit,contenteditable:t.unref(s).edit,tabindex:g.tabIndex,spellcheck:!1,style:t.normalizeStyle(p.value),onFocus:x,onPaste:y,onBlur:y,onInput:y,onClick:b,class:t.normalizeClass(["atable-cell",g.pinned?"sticky-column":""])},[t.unref(s).cellComponent?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(s).cellComponent),t.mergeProps({key:0,value:t.unref(i)},t.unref(s).cellComponentProps),null,16,["value"])):c.value?(t.openBlock(),t.createElementBlock("span",{key:1,innerHTML:t.unref(i)},null,8,st)):(t.openBlock(),t.createElementBlock("span",ct,t.toDisplayString(t.unref(i)),1))],46,at)),[[t.unref(Ue),g.store.closeModal]])}}),it=["tabindex"],dt=["tabindex"],ft=["colspan"],ye=t.defineComponent({__name:"AExpansionRow",props:{rowIndex:{},store:{},tabIndex:{default:()=>-1},addNavigation:{type:[Boolean,Object]}},setup(e){const o=t.useTemplateRef("rowEl"),n=t.computed(()=>e.store.display[e.rowIndex].expanded?"▼":"►");if(e.addNavigation){const r={"keydown.control.g":a=>{a.stopPropagation(),a.preventDefault(),e.store.toggleRowExpand(e.rowIndex)}};typeof e.addNavigation=="object"&&Object.assign(r,e.addNavigation),U([{selectors:o,handlers:r}])}return(r,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("tr",t.mergeProps(r.$attrs,{ref:"rowEl",tabindex:r.tabIndex,class:"expandable-row"}),[t.createElementVNode("td",{tabIndex:-1,onClick:a[0]||(a[0]=i=>r.store.toggleRowExpand(r.rowIndex)),class:"row-index"},t.toDisplayString(n.value),1),t.renderSlot(r.$slots,"row")],16,it),r.store.display[r.rowIndex].expanded?(t.openBlock(),t.createElementBlock("tr",{key:0,ref:"rowExpanded",tabindex:r.tabIndex,class:"expanded-row"},[t.createElementVNode("td",{tabIndex:-1,colspan:r.store.columns.length+1,class:"expanded-row-content"},[t.renderSlot(r.$slots,"content")],8,ft)],8,dt)):t.createCommentVNode("",!0)],64))}}),ut=["tabindex"],K=t.defineComponent({__name:"ARow",props:{rowIndex:{},store:{},tabIndex:{default:()=>-1},addNavigation:{type:[Boolean,Object],default:!1}},setup(e){const o=t.useTemplateRef("rowEl"),n=e.store.isRowVisible(e.rowIndex),r=e.store.getRowExpandSymbol(e.rowIndex);if(e.addNavigation){let a=q;typeof e.addNavigation=="object"&&(a={...a,...e.addNavigation}),U([{selectors:o,handlers:a}])}return(a,i)=>t.withDirectives((t.openBlock(),t.createElementBlock("tr",{ref:"rowEl",tabindex:a.tabIndex,class:"table-row"},[a.store.config.view!=="uncounted"?t.renderSlot(a.$slots,"index",{key:0},()=>[a.store.config.view==="list"?(t.openBlock(),t.createElementBlock("td",{key:0,tabIndex:-1,class:t.normalizeClass(["list-index",a.store.hasPinnedColumns?"sticky-index":""])},t.toDisplayString(a.rowIndex+1),3)):a.store.config.view==="tree"?(t.openBlock(),t.createElementBlock("td",{key:1,tabIndex:-1,class:t.normalizeClass(["tree-index",a.store.hasPinnedColumns?"sticky-index":""]),onClick:i[0]||(i[0]=l=>a.store.toggleRowExpand(a.rowIndex))},t.toDisplayString(t.unref(r)),3)):t.createCommentVNode("",!0)]):t.createCommentVNode("",!0),t.renderSlot(a.$slots,"default")],8,ut)),[[t.vShow,t.unref(n)]])}}),pt={key:0,id:"resizable"},mt={class:"atable-header-row",tabindex:"-1"},_=t.defineComponent({__name:"ATableHeader",props:{columns:{},store:{}},setup(e){return(o,n)=>o.columns.length?(t.openBlock(),t.createElementBlock("thead",pt,[t.createElementVNode("tr",mt,[o.store.zeroColumn?(t.openBlock(),t.createElementBlock("th",{key:0,id:"header-index",class:t.normalizeClass([[o.store.hasPinnedColumns?"sticky-index":"",o.store.config.view==="tree"?"tree-index":"",o.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(o.columns,(r,a)=>(t.openBlock(),t.createElementBlock("th",{key:r.name,tabindex:"-1",style:t.normalizeStyle(o.store.getHeaderCellStyle(r)),class:t.normalizeClass(r.pinned?"sticky-column":"")},[t.renderSlot(o.$slots,"default",{},()=>[t.createTextVNode(t.toDisplayString(r.label||String.fromCharCode(a+97).toUpperCase()),1)])],6))),128))])])):t.createCommentVNode("",!0)}}),ee=t.defineComponent({__name:"ATableModal",props:{colIndex:{},rowIndex:{},store:{}},setup(e){const o=n=>{n.stopPropagation()};return(n,r)=>(t.openBlock(),t.createElementBlock("div",{class:"amodal",tabindex:"-1",onClick:o,onInput:o},[t.renderSlot(n.$slots,"default")],32))}}),xe=e=>{const o=e.id||crypto.randomUUID();return Ce.defineStore(`table-${o}`,()=>{const r=()=>{const w={};for(const[h,v]of i.value.entries())for(const[C,E]of l.value.entries())w[`${h}:${C}`]=E[v.name];return w},a=w=>{const h=[Object.assign({},{rowModified:!1})];if(w&&"0:0"in w)return w;const v=new Set;for(let C=l.value.length-1;C>=0;C--){const E=l.value[C];E.parent&&v.add(E.parent),h[C]={childrenOpen:!1,expanded:!1,indent:E.indent||null,isParent:v.has(C),isRoot:E.parent===null||E.parent===void 0,rowModified:!1,open:E.parent===null||E.parent===void 0,parent:E.parent}}return h},i=t.ref(e.columns),l=t.ref(e.rows),d=t.ref(e.config||{}),s=t.ref(e.table||r()),f=t.ref(a(e.display)),u=t.ref(e.modal||{visible:!1}),m=t.computed(()=>i.value.some(w=>w.pinned)),c=t.computed(()=>`${Math.ceil(l.value.length/100+1)}ch`),p=t.computed(()=>["list","tree","list-expansion"].includes(d.value.view)),b=(w,h)=>s.value[`${w}:${h}`],x=(w,h,v)=>{const C=`${w}:${h}`,E=i.value[w];s.value[C]!==v&&(f.value[h].rowModified=!0),s.value[C]=v,l.value[h][E.name]=v},y=w=>({minWidth:w.width||"40ch",textAlign:w.align||"center",width:d.value.fullWidth?"auto":null}),g=w=>d.value.view!=="tree"||f.value[w].isRoot||f.value[w].open,S=w=>d.value.view!=="tree"?"":f.value[w].isRoot||f.value[w].isParent?f.value[w].childrenOpen?"-":"+":"",ve=w=>{if(d.value.view==="tree"){f.value[w].childrenOpen=!f.value[w].childrenOpen;for(let h=l.value.length-1;h>=0;h--)f.value[h].parent===w&&(f.value[h].open=!f.value[h].open,f.value[h].childrenOpen&&ve(h))}else d.value.view==="list-expansion"&&(f.value[w].expanded=!f.value[w].expanded)},wt=(w,h)=>{const v=b(w,h);return Ee(w,h,v)},Ee=(w,h,v)=>{const C=i.value[w],E=l.value[h],L=C.format;return L?typeof L=="function"?L(v,{table:s.value,row:E,column:C}):typeof L=="string"?Function(`"use strict";return (${L})`)()(v,{table:s.value,row:E,column:C}):v:v};return{columns:i,rows:l,config:d,table:s,display:f,modal:u,hasPinnedColumns:m,numberedRowWidth:c,zeroColumn:p,closeModal:w=>{var h;w.target instanceof Node&&(h=u.value.parent)!=null&&h.contains(w.target)||u.value.visible&&(u.value.visible=!1)},getCellData:b,getCellDisplayValue:wt,getFormattedValue:Ee,getHeaderCellStyle:y,getIndent:(w,h)=>h&&w===0&&h>0?`${h}ch`:"inherit",getRowExpandSymbol:S,isRowVisible:g,setCellData:x,toggleRowExpand:ve}})()},ke=((e,o)=>{const n=e.__vccOpts||e;for(const[r,a]of o)n[r]=a;return n})(t.defineComponent({__name:"ATable",props:{id:{},modelValue:{},columns:{},rows:{default:()=>[]},config:{default:()=>new Object}},emits:["update:modelValue","cellUpdate"],setup(e,{expose:o,emit:n}){const r=n,a=t.useTemplateRef("table"),i=e.modelValue?e.modelValue:e.rows,l=xe({columns:e.columns,rows:i,id:e.id,config:e.config});l.$onAction(({name:s,store:f,args:u})=>{if(s==="setCellData"){const[m,c,p]=u,b=f.getCellData(m,c);r("cellUpdate",[m,c,p,b])}}),t.watch(()=>l.rows,s=>{r("update:modelValue",s)},{deep:!0}),t.onMounted(()=>{e.columns.some(s=>s.pinned)&&(d(),l.config.view==="tree"&&he(a,d,{childList:!0,subtree:!0}))});const d=()=>{const s=a.value,f=s.rows[0],u=s.rows[1],m=f?Array.from(f.cells):[];for(const[c,p]of m.entries()){const b=u.cells[c];b&&(p.style.width=`${b.offsetWidth}px`)}for(const c of s.rows){let p=0;const b=[];for(const x of c.cells)(x.classList.contains("sticky-column")||x.classList.contains("sticky-index"))&&(x.style.left=`${p}px`,p+=x.offsetWidth,b.push(x));b.length>0&&b[b.length-1].classList.add("sticky-column-edge")}};return window.addEventListener("keydown",s=>{if(s.key==="Escape"&&l.modal.visible){l.modal.visible=!1;const f=l.modal.parent;f&&t.nextTick().then(()=>{f.focus()})}}),o({store:l}),(s,f)=>(t.openBlock(),t.createElementBlock("table",{ref:"table",class:"atable",style:t.normalizeStyle({width:t.unref(l).config.fullWidth?"100%":"auto"})},[t.renderSlot(s.$slots,"header",{data:t.unref(l)},()=>[t.createVNode(_,{columns:t.unref(l).columns,store:t.unref(l)},null,8,["columns","store"])],!0),t.createElementVNode("tbody",null,[t.renderSlot(s.$slots,"body",{data:t.unref(l)},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l).rows,(u,m)=>(t.openBlock(),t.createBlock(K,{key:u.id,row:u,rowIndex:m,store:t.unref(l)},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l).columns,(c,p)=>(t.openBlock(),t.createBlock(Z,{key:c.name,store:t.unref(l),col:c,spellcheck:"false",pinned:c.pinned,rowIndex:m,colIndex:p,component:c.cellComponent,style:t.normalizeStyle({textAlign:(c==null?void 0:c.align)||"center",minWidth:(c==null?void 0:c.width)||"40ch",width:t.unref(l).config.fullWidth?"auto":null})},null,8,["store","col","pinned","rowIndex","colIndex","component","style"]))),128))]),_:2},1032,["row","rowIndex","store"]))),128))],!0)]),t.renderSlot(s.$slots,"footer",{data:t.unref(l)},void 0,!0),t.renderSlot(s.$slots,"modal",{data:t.unref(l)},()=>[t.withDirectives(t.createVNode(ee,{colIndex:t.unref(l).modal.colIndex,rowIndex:t.unref(l).modal.rowIndex,store:t.unref(l),style:t.normalizeStyle({left:t.unref(l).modal.left+"px",top:t.unref(l).modal.top+"px",maxWidth:t.unref(l).modal.width+"px"})},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(l).modal.component),t.mergeProps({key:`${t.unref(l).modal.rowIndex}:${t.unref(l).modal.colIndex}`,colIndex:t.unref(l).modal.colIndex,rowIndex:t.unref(l).modal.rowIndex,store:t.unref(l)},t.unref(l).modal.componentProps),null,16,["colIndex","rowIndex","store"]))]),_:1},8,["colIndex","rowIndex","store","style"]),[[t.vShow,t.unref(l).modal.visible]])],!0)],4))}}),[["__scopeId","data-v-20244978"]]);function bt(e){e.component("ACell",Z),e.component("AExpansionRow",ye),e.component("ARow",K),e.component("ATable",ke),e.component("ATableHeader",_),e.component("ATableModal",ee)}k.ACell=Z,k.AExpansionRow=ye,k.ARow=K,k.ATable=ke,k.ATableHeader=_,k.ATableModal=ee,k.createTableStore=xe,k.install=bt,Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})});
1
+ (function(k,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("pinia")):typeof define=="function"&&define.amd?define(["exports","vue","pinia"],t):(k=typeof globalThis<"u"?globalThis:k||self,t(k["@stonecrop/atable"]={},k.Vue,k.pinia))})(this,function(k,t,Ce){"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}.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}.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);display:flex}.expandable-row>td:first-child{border-left:4px solid var(--sc-row-border-color)}.expanded-row{display:flex;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}.table-row{border-top:1px solid var(--sc-row-border-color);display:flex;background-color:#fff}.table-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-header-row{display:flex}.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)}#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-20);--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-btn-border: #cccccc;--sc-btn-color: white;--sc-btn-hover: #f2f2f2;--sc-btn-label-color: black}.amodal{position:fixed;background-color:var(--sc-row-color-zebra-dark);z-index:100}.sticky-index{position:sticky;left:0;z-index:1;order:0}.sticky-column,th.sticky-column,td.sticky-column,th.sticky-index,td.sticky-index{position:sticky;z-index:1;order:0;background:#fff}.sticky-column-edge,.atable th.sticky-column-edge{border-right:1px solid var(--sc-row-border-color);border-right-width:1px}[data-v-930d16dc]: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-20);--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-btn-border: #cccccc;--sc-btn-color: white;--sc-btn-hover: #f2f2f2;--sc-btn-label-color: black}.atable[data-v-930d16dc]{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}.atable th[data-v-930d16dc]{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-930d16dc]:focus{outline:none}
2
+ /*$vite$:1*/`,document.head.appendChild(te);function oe(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function V(e){return typeof e=="function"?e():t.unref(e)}const Se=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Ae=e=>e!=null,Ie=Object.prototype.toString,Te=e=>Ie.call(e)==="[object Object]",$e=()=>{},$=Se?window:void 0;function M(e){var o;const n=V(e);return(o=n==null?void 0:n.$el)!=null?o:n}function O(...e){let o,n,r,a;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,r,a]=e,o=$):[o,n,r,a]=e,!o)return $e;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const i=[],l=()=>{i.forEach(u=>u()),i.length=0},d=(u,m,c,p)=>(u.addEventListener(m,c,p),()=>u.removeEventListener(m,c,p)),s=t.watch(()=>[M(o),V(a)],([u,m])=>{if(l(),!u)return;const c=Te(m)?{...m}:m;i.push(...n.flatMap(p=>r.map(b=>d(u,p,b,c))))},{immediate:!0,flush:"post"}),f=()=>{s(),l()};return oe(f),f}function Me(){const e=t.ref(!1),o=t.getCurrentInstance();return o&&t.onMounted(()=>{e.value=!0},o),e}function Oe(e){const o=Me();return t.computed(()=>(o.value,!!e()))}function Be(e,o,n={}){const{window:r=$,...a}=n;let i;const l=Oe(()=>r&&"MutationObserver"in r),d=()=>{i&&(i.disconnect(),i=void 0)},s=t.computed(()=>{const c=V(e),p=(Array.isArray(c)?c:[c]).map(M).filter(Ae);return new Set(p)}),f=t.watch(()=>s.value,c=>{d(),l.value&&c.size&&(i=new MutationObserver(o),c.forEach(p=>i.observe(p,a)))},{immediate:!0,flush:"post"}),u=()=>i==null?void 0:i.takeRecords(),m=()=>{f(),d()};return oe(m),{isSupported:l,stop:m,takeRecords:u}}function Re(e={}){var o;const{window:n=$,deep:r=!0,triggerOnRemoval:a=!1}=e,i=(o=e.document)!=null?o:n==null?void 0:n.document,l=()=>{var f;let u=i==null?void 0:i.activeElement;if(r)for(;u!=null&&u.shadowRoot;)u=(f=u==null?void 0:u.shadowRoot)==null?void 0:f.activeElement;return u},d=t.ref(),s=()=>{d.value=l()};return n&&(O(n,"blur",f=>{f.relatedTarget===null&&s()},!0),O(n,"focus",s,!0)),a&&Be(i,f=>{f.filter(u=>u.removedNodes.length).map(u=>Array.from(u.removedNodes)).flat().forEach(u=>{u===d.value&&s()})},{childList:!0,subtree:!0}),s(),d}const De="focusin",Le="focusout";function ze(e,o={}){const{window:n=$}=o,r=t.computed(()=>M(e)),a=t.ref(!1),i=t.computed(()=>a.value),l=Re(o);return!n||!l.value?{focused:i}:(O(r,De,()=>a.value=!0),O(r,Le,()=>a.value=!1),{focused:i})}function Pe(e,{window:o=$,scrollTarget:n}={}){const r=t.ref(!1),a=()=>{if(!o)return;const i=o.document,l=M(e);if(!l)r.value=!1;else{const d=l.getBoundingClientRect();r.value=d.top<=(o.innerHeight||i.documentElement.clientHeight)&&d.left<=(o.innerWidth||i.documentElement.clientWidth)&&d.bottom>=0&&d.right>=0}};return t.watch(()=>M(e),()=>a(),{immediate:!0,flush:"post"}),o&&O(n||o,"scroll",a,{capture:!1,passive:!0}),r}const A=e=>{let o=Pe(e).value;return o=o&&e.offsetHeight>0,o},I=e=>e.tabIndex>=0,ne=e=>{const o=e.target;return W(o)},W=e=>{var o;let n;if(e instanceof HTMLTableCellElement){const r=(o=e.parentElement)==null?void 0:o.previousElementSibling;if(r){const a=Array.from(r.children)[e.cellIndex];a&&(n=a)}}else if(e instanceof HTMLTableRowElement){const r=e.previousElementSibling;r&&(n=r)}return n&&(!I(n)||!A(n))?W(n):n},Ne=e=>{var o;const n=e.target;let r;if(n instanceof HTMLTableCellElement){const a=(o=n.parentElement)==null?void 0:o.parentElement;if(a){const i=a.firstElementChild.children[n.cellIndex];i&&(r=i)}}else if(n instanceof HTMLTableRowElement){const a=n.parentElement;if(a){const i=a.firstElementChild;i&&(r=i)}}return r&&(!I(r)||!A(r))?H(r):r},re=e=>{const o=e.target;return H(o)},H=e=>{var o;let n;if(e instanceof HTMLTableCellElement){const r=(o=e.parentElement)==null?void 0:o.nextElementSibling;if(r){const a=Array.from(r.children)[e.cellIndex];a&&(n=a)}}else if(e instanceof HTMLTableRowElement){const r=e.nextElementSibling;r&&(n=r)}return n&&(!I(n)||!A(n))?H(n):n},Ve=e=>{var o;const n=e.target;let r;if(n instanceof HTMLTableCellElement){const a=(o=n.parentElement)==null?void 0:o.parentElement;if(a){const i=a.lastElementChild.children[n.cellIndex];i&&(r=i)}}else if(n instanceof HTMLTableRowElement){const a=n.parentElement;if(a){const i=a.lastElementChild;i&&(r=i)}}return r&&(!I(r)||!A(r))?W(r):r},le=e=>{const o=e.target;return j(o)},j=e=>{var o;let n;if(e.previousElementSibling)n=e.previousElementSibling;else{const r=(o=e.parentElement)==null?void 0:o.previousElementSibling;n=r==null?void 0:r.lastElementChild}return n&&(!I(n)||!A(n))?j(n):n},ae=e=>{const o=e.target;return F(o)},F=e=>{var o;let n;if(e.nextElementSibling)n=e.nextElementSibling;else{const r=(o=e.parentElement)==null?void 0:o.nextElementSibling;n=r==null?void 0:r.firstElementChild}return n&&(!I(n)||!A(n))?F(n):n},se=e=>{const o=e.target.parentElement.firstElementChild;return o&&(!I(o)||!A(o))?F(o):o},ce=e=>{const o=e.target.parentElement.lastElementChild;return o&&(!I(o)||!A(o))?j(o):o},z=["alt","control","shift","meta"],We={ArrowUp:"up",ArrowDown:"down",ArrowLeft:"left",ArrowRight:"right"},q={"keydown.up":e=>{const o=ne(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.down":e=>{const o=re(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.left":e=>{const o=le(e);e.preventDefault(),e.stopPropagation(),o&&o.focus()},"keydown.right":e=>{const o=ae(e);e.preventDefault(),e.stopPropagation(),o&&o.focus()},"keydown.control.up":e=>{const o=Ne(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.control.down":e=>{const o=Ve(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.control.left":e=>{const o=se(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.control.right":e=>{const o=ce(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.end":e=>{const o=ce(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.enter":e=>{if(e.target instanceof HTMLTableCellElement){e.preventDefault(),e.stopPropagation();const o=re(e);o&&o.focus()}},"keydown.shift.enter":e=>{if(e.target instanceof HTMLTableCellElement){e.preventDefault(),e.stopPropagation();const o=ne(e);o&&o.focus()}},"keydown.home":e=>{const o=se(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.tab":e=>{const o=ae(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())},"keydown.shift.tab":e=>{const o=le(e);o&&(e.preventDefault(),e.stopPropagation(),o.focus())}};function U(e){const o=l=>{let d=null;return l.parent&&(typeof l.parent=="string"?d=document.querySelector(l.parent):l.parent instanceof HTMLElement?d=l.parent:d=l.parent.value),d},n=l=>{const d=o(l);let s=[];if(typeof l.selectors=="string")s=d?Array.from(d.querySelectorAll(l.selectors)):Array.from(document.querySelectorAll(l.selectors));else if(Array.isArray(l.selectors))for(const f of l.selectors)f instanceof HTMLElement?s.push(f):s.push(f.$el);else if(l.selectors instanceof HTMLElement)s.push(l.selectors);else if(Array.isArray(l.selectors.value))for(const f of l.selectors.value)f instanceof HTMLElement?s.push(f):s.push(f.$el);else s.push(l.selectors.value);return s},r=l=>{const d=o(l);let s=[];return l.selectors?s=n(l):d&&(s=Array.from(d.children).filter(f=>I(f)&&A(f))),s},a=l=>d=>{const s=We[d.key]||d.key.toLowerCase();if(z.includes(s))return;const f=l.handlers||q;for(const u of Object.keys(f)){const[m,...c]=u.split(".");if(m==="keydown"&&c.includes(s)){const p=f[u],b=c.filter(y=>z.includes(y)),x=z.some(y=>{const g=y.charAt(0).toUpperCase()+y.slice(1);return d.getModifierState(g)});if(b.length>0){if(x){for(const y of z)if(c.includes(y)){const g=y.charAt(0).toUpperCase()+y.slice(1);d.getModifierState(g)&&p(d)}}}else x||p(d)}}},i=[];t.onMounted(()=>{for(const l of e){const d=o(l),s=r(l),f=a(l),u=d?[d]:s;for(const m of u){const{focused:c}=ze(t.ref(m)),p=t.watch(c,b=>{b?m.addEventListener("keydown",f):m.removeEventListener("keydown",f)});i.push(p)}}}),t.onBeforeUnmount(()=>{for(const l of i)l()})}function ie(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function B(e){return typeof e=="function"?e():t.unref(e)}const de=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const He=Object.prototype.toString,je=e=>He.call(e)==="[object Object]",R=()=>{},G=Fe();function Fe(){var e,o;return de&&((e=window==null?void 0:window.navigator)==null?void 0:e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((o=window==null?void 0:window.navigator)==null?void 0:o.maxTouchPoints)>2&&/iPad|Macintosh/.test(window==null?void 0:window.navigator.userAgent))}const fe={mounted:"mounted",updated:"updated",unmounted:"unmounted"};function qe(...e){if(e.length!==1)return t.toRef(...e);const o=e[0];return typeof o=="function"?t.readonly(t.customRef(()=>({get:o,set:R}))):t.ref(o)}function D(e){var o;const n=B(e);return(o=n==null?void 0:n.$el)!=null?o:n}const ue=de?window:void 0;function P(...e){let o,n,r,a;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,r,a]=e,o=ue):[o,n,r,a]=e,!o)return R;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const i=[],l=()=>{i.forEach(u=>u()),i.length=0},d=(u,m,c,p)=>(u.addEventListener(m,c,p),()=>u.removeEventListener(m,c,p)),s=t.watch(()=>[D(o),B(a)],([u,m])=>{if(l(),!u)return;const c=je(m)?{...m}:m;i.push(...n.flatMap(p=>r.map(b=>d(u,p,b,c))))},{immediate:!0,flush:"post"}),f=()=>{s(),l()};return ie(f),f}let pe=!1;function me(e,o,n={}){const{window:r=ue,ignore:a=[],capture:i=!0,detectIframe:l=!1}=n;if(!r)return R;G&&!pe&&(pe=!0,Array.from(r.document.body.children).forEach(c=>c.addEventListener("click",R)),r.document.documentElement.addEventListener("click",R));let d=!0;const s=c=>a.some(p=>{if(typeof p=="string")return Array.from(r.document.querySelectorAll(p)).some(b=>b===c.target||c.composedPath().includes(b));{const b=D(p);return b&&(c.target===b||c.composedPath().includes(b))}}),u=[P(r,"click",c=>{const p=D(e);if(!(!p||p===c.target||c.composedPath().includes(p))){if(c.detail===0&&(d=!s(c)),!d){d=!0;return}o(c)}},{passive:!0,capture:i}),P(r,"pointerdown",c=>{const p=D(e);d=!s(c)&&!!(p&&!c.composedPath().includes(p))},{passive:!0}),l&&P(r,"blur",c=>{setTimeout(()=>{var p;const b=D(e);((p=r.document.activeElement)==null?void 0:p.tagName)==="IFRAME"&&!(b!=null&&b.contains(r.document.activeElement))&&o(c)},0)})].filter(Boolean);return()=>u.forEach(c=>c())}const Ue={[fe.mounted](e,o){const n=!o.modifiers.bubble;if(typeof o.value=="function")e.__onClickOutside_stop=me(e,o.value,{capture:n});else{const[r,a]=o.value;e.__onClickOutside_stop=me(e,r,Object.assign({capture:n},a))}},[fe.unmounted](e){e.__onClickOutside_stop()}};function Y(e){return typeof Window<"u"&&e instanceof Window?e.document.documentElement:typeof Document<"u"&&e instanceof Document?e.documentElement:e}function be(e){const o=window.getComputedStyle(e);if(o.overflowX==="scroll"||o.overflowY==="scroll"||o.overflowX==="auto"&&e.clientWidth<e.scrollWidth||o.overflowY==="auto"&&e.clientHeight<e.scrollHeight)return!0;{const n=e.parentNode;return!n||n.tagName==="BODY"?!1:be(n)}}function Ge(e){const o=e||window.event,n=o.target;return be(n)?!1:o.touches.length>1?!0:(o.preventDefault&&o.preventDefault(),!1)}const X=new WeakMap;function Ye(e,o=!1){const n=t.ref(o);let r=null,a="";t.watch(qe(e),d=>{const s=Y(B(d));if(s){const f=s;if(X.get(f)||X.set(f,f.style.overflow),f.style.overflow!=="hidden"&&(a=f.style.overflow),f.style.overflow==="hidden")return n.value=!0;if(n.value)return f.style.overflow="hidden"}},{immediate:!0});const i=()=>{const d=Y(B(e));!d||n.value||(G&&(r=P(d,"touchmove",s=>{Ge(s)},{passive:!1})),d.style.overflow="hidden",n.value=!0)},l=()=>{const d=Y(B(e));!d||!n.value||(G&&(r==null||r()),d.style.overflow=a,X.delete(d),n.value=!1)};return ie(l),t.computed({get(){return n.value},set(d){d?i():l()}})}function Xe(){let e=!1;const o=t.ref(!1);return(n,r)=>{if(o.value=r.value,e)return;e=!0;const a=Ye(n,r.value);t.watch(o,i=>a.value=i)}}Xe();function J(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function N(e){return typeof e=="function"?e():t.unref(e)}const Je=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Qe=e=>e!=null,Ze=Object.prototype.toString,Ke=e=>Ze.call(e)==="[object Object]",_e=()=>{};function et(e){return t.getCurrentInstance()}function tt(e,o=!0,n){et()?t.onMounted(e,n):o?e():t.nextTick(e)}const Q=Je?window:void 0;function T(e){var o;const n=N(e);return(o=n==null?void 0:n.$el)!=null?o:n}function we(...e){let o,n,r,a;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,r,a]=e,o=Q):[o,n,r,a]=e,!o)return _e;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const i=[],l=()=>{i.forEach(u=>u()),i.length=0},d=(u,m,c,p)=>(u.addEventListener(m,c,p),()=>u.removeEventListener(m,c,p)),s=t.watch(()=>[T(o),N(a)],([u,m])=>{if(l(),!u)return;const c=Ke(m)?{...m}:m;i.push(...n.flatMap(p=>r.map(b=>d(u,p,b,c))))},{immediate:!0,flush:"post"}),f=()=>{s(),l()};return J(f),f}function ot(){const e=t.ref(!1),o=t.getCurrentInstance();return o&&t.onMounted(()=>{e.value=!0},o),e}function ge(e){const o=ot();return t.computed(()=>(o.value,!!e()))}function he(e,o,n={}){const{window:r=Q,...a}=n;let i;const l=ge(()=>r&&"MutationObserver"in r),d=()=>{i&&(i.disconnect(),i=void 0)},s=t.computed(()=>{const c=N(e),p=(Array.isArray(c)?c:[c]).map(T).filter(Qe);return new Set(p)}),f=t.watch(()=>s.value,c=>{d(),l.value&&c.size&&(i=new MutationObserver(o),c.forEach(p=>i.observe(p,a)))},{immediate:!0,flush:"post"}),u=()=>i==null?void 0:i.takeRecords(),m=()=>{f(),d()};return J(m),{isSupported:l,stop:m,takeRecords:u}}function nt(e,o,n={}){const{window:r=Q,...a}=n;let i;const l=ge(()=>r&&"ResizeObserver"in r),d=()=>{i&&(i.disconnect(),i=void 0)},s=t.computed(()=>{const m=N(e);return Array.isArray(m)?m.map(c=>T(c)):[T(m)]}),f=t.watch(s,m=>{if(d(),l.value&&r){i=new ResizeObserver(o);for(const c of m)c&&i.observe(c,a)}},{immediate:!0,flush:"post"}),u=()=>{d(),f()};return J(u),{isSupported:l,stop:u}}function rt(e,o={}){const{reset:n=!0,windowResize:r=!0,windowScroll:a=!0,immediate:i=!0,updateTiming:l="sync"}=o,d=t.ref(0),s=t.ref(0),f=t.ref(0),u=t.ref(0),m=t.ref(0),c=t.ref(0),p=t.ref(0),b=t.ref(0);function x(){const g=T(e);if(!g){n&&(d.value=0,s.value=0,f.value=0,u.value=0,m.value=0,c.value=0,p.value=0,b.value=0);return}const S=g.getBoundingClientRect();d.value=S.height,s.value=S.bottom,f.value=S.left,u.value=S.right,m.value=S.top,c.value=S.width,p.value=S.x,b.value=S.y}function y(){l==="sync"?x():l==="next-frame"&&requestAnimationFrame(()=>x())}return nt(e,y),t.watch(()=>T(e),g=>!g&&y()),he(e,y,{attributeFilter:["style","class"]}),a&&we("scroll",y,{capture:!0,passive:!0}),r&&we("resize",y,{passive:!0}),tt(()=>{i&&y()}),{height:d,bottom:s,left:f,right:u,top:m,width:c,x:p,y:b,update:y}}const lt=e=>{const o=new DOMParser().parseFromString(e,"text/html");return Array.from(o.body.childNodes).some(n=>n.nodeType===1)},at=["data-colindex","data-rowindex","data-editable","contenteditable","tabindex"],st=["innerHTML"],ct={key:2},Z=t.defineComponent({__name:"ACell",props:{colIndex:{},rowIndex:{},store:{},addNavigation:{type:[Boolean,Object],default:!0},tabIndex:{default:0},pinned:{type:Boolean}},setup(e){const o=t.useTemplateRef("cell"),{bottom:n,left:r}=rt(o),a=e.store.getCellData(e.colIndex,e.rowIndex),i=e.store.getCellDisplayValue(e.colIndex,e.rowIndex),l=t.ref(""),d=t.ref(!1),s=e.store.columns[e.colIndex],f=e.store.rows[e.rowIndex],u=s.align||"center",m=s.width||"40ch",c=t.computed(()=>typeof i=="string"?lt(i):!1),p=t.computed(()=>{var g;return{textAlign:u,width:m,backgroundColor:d.value?"var(--sc-cell-changed-color)":"inherit",fontWeight:d.value?"bold":"inherit",paddingLeft:e.store.getIndent(e.colIndex,(g=e.store.display[e.rowIndex])==null?void 0:g.indent)}}),b=()=>{s.mask,s.modalComponent&&e.store.$patch(g=>{g.modal.visible=!0,g.modal.colIndex=e.colIndex,g.modal.rowIndex=e.rowIndex,g.modal.parent=o.value,g.modal.top=n.value,g.modal.left=r.value,g.modal.width=m,typeof s.modalComponent=="function"?g.modal.component=s.modalComponent({table:g.table,row:f,column:s}):g.modal.component=s.modalComponent,g.modal.componentProps=s.modalComponentExtraProps})};if(e.addNavigation){let g={...q,"keydown.f2":b,"keydown.alt.up":b,"keydown.alt.down":b,"keydown.alt.left":b,"keydown.alt.right":b};typeof e.addNavigation=="object"&&(g={...g,...e.addNavigation}),U([{selectors:o,handlers:g}])}const x=()=>{o.value&&(l.value=o.value.textContent)},y=()=>{o.value&&(s.format?d.value=o.value.textContent!==e.store.getFormattedValue(e.colIndex,e.rowIndex,a):d.value=o.value.textContent!==a,o.value.textContent!==l.value&&(l.value=o.value.textContent,o.value.dispatchEvent(new Event("change")),s.format||e.store.setCellData(e.colIndex,e.rowIndex,l.value)))};return(g,S)=>t.withDirectives((t.openBlock(),t.createElementBlock("td",{ref:"cell","data-colindex":g.colIndex,"data-rowindex":g.rowIndex,"data-editable":t.unref(s).edit,contenteditable:t.unref(s).edit,tabindex:g.tabIndex,spellcheck:!1,style:t.normalizeStyle(p.value),onFocus:x,onPaste:y,onBlur:y,onInput:y,onClick:b,class:t.normalizeClass(["atable-cell",g.pinned?"sticky-column":""])},[t.unref(s).cellComponent?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(s).cellComponent),t.mergeProps({key:0,value:t.unref(i)},t.unref(s).cellComponentProps),null,16,["value"])):c.value?(t.openBlock(),t.createElementBlock("span",{key:1,innerHTML:t.unref(i)},null,8,st)):(t.openBlock(),t.createElementBlock("span",ct,t.toDisplayString(t.unref(i)),1))],46,at)),[[t.unref(Ue),g.store.closeModal]])}}),it=["tabindex"],dt=["tabindex"],ft=["colspan"],ye=t.defineComponent({__name:"AExpansionRow",props:{rowIndex:{},store:{},tabIndex:{default:()=>-1},addNavigation:{type:[Boolean,Object]}},setup(e){const o=t.useTemplateRef("rowEl"),n=t.computed(()=>e.store.display[e.rowIndex].expanded?"▼":"►");if(e.addNavigation){const r={"keydown.control.g":a=>{a.stopPropagation(),a.preventDefault(),e.store.toggleRowExpand(e.rowIndex)}};typeof e.addNavigation=="object"&&Object.assign(r,e.addNavigation),U([{selectors:o,handlers:r}])}return(r,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("tr",t.mergeProps(r.$attrs,{ref:"rowEl",tabindex:r.tabIndex,class:"expandable-row"}),[t.createElementVNode("td",{tabIndex:-1,onClick:a[0]||(a[0]=i=>r.store.toggleRowExpand(r.rowIndex)),class:"row-index"},t.toDisplayString(n.value),1),t.renderSlot(r.$slots,"row")],16,it),r.store.display[r.rowIndex].expanded?(t.openBlock(),t.createElementBlock("tr",{key:0,ref:"rowExpanded",tabindex:r.tabIndex,class:"expanded-row"},[t.createElementVNode("td",{tabIndex:-1,colspan:r.store.columns.length+1,class:"expanded-row-content"},[t.renderSlot(r.$slots,"content")],8,ft)],8,dt)):t.createCommentVNode("",!0)],64))}}),ut=["tabindex"],K=t.defineComponent({__name:"ARow",props:{rowIndex:{},store:{},tabIndex:{default:()=>-1},addNavigation:{type:[Boolean,Object],default:!1}},setup(e){const o=t.useTemplateRef("rowEl"),n=e.store.isRowVisible(e.rowIndex),r=e.store.getRowExpandSymbol(e.rowIndex);if(e.addNavigation){let a=q;typeof e.addNavigation=="object"&&(a={...a,...e.addNavigation}),U([{selectors:o,handlers:a}])}return(a,i)=>t.withDirectives((t.openBlock(),t.createElementBlock("tr",{ref:"rowEl",tabindex:a.tabIndex,class:"table-row"},[a.store.config.view!=="uncounted"?t.renderSlot(a.$slots,"index",{key:0},()=>[a.store.config.view==="list"?(t.openBlock(),t.createElementBlock("td",{key:0,tabIndex:-1,class:t.normalizeClass(["list-index",a.store.hasPinnedColumns?"sticky-index":""])},t.toDisplayString(a.rowIndex+1),3)):a.store.config.view==="tree"?(t.openBlock(),t.createElementBlock("td",{key:1,tabIndex:-1,class:t.normalizeClass(["tree-index",a.store.hasPinnedColumns?"sticky-index":""]),onClick:i[0]||(i[0]=l=>a.store.toggleRowExpand(a.rowIndex))},t.toDisplayString(t.unref(r)),3)):t.createCommentVNode("",!0)]):t.createCommentVNode("",!0),t.renderSlot(a.$slots,"default")],8,ut)),[[t.vShow,t.unref(n)]])}}),pt={key:0,id:"resizable"},mt={class:"atable-header-row",tabindex:"-1"},_=t.defineComponent({__name:"ATableHeader",props:{columns:{},store:{}},setup(e){return(o,n)=>o.columns.length?(t.openBlock(),t.createElementBlock("thead",pt,[t.createElementVNode("tr",mt,[o.store.zeroColumn?(t.openBlock(),t.createElementBlock("th",{key:0,id:"header-index",class:t.normalizeClass([[o.store.hasPinnedColumns?"sticky-index":"",o.store.config.view==="tree"?"tree-index":"",o.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(o.columns,(r,a)=>(t.openBlock(),t.createElementBlock("th",{key:r.name,tabindex:"-1",style:t.normalizeStyle(o.store.getHeaderCellStyle(r)),class:t.normalizeClass(r.pinned?"sticky-column":"")},[t.renderSlot(o.$slots,"default",{},()=>[t.createTextVNode(t.toDisplayString(r.label||String.fromCharCode(a+97).toUpperCase()),1)])],6))),128))])])):t.createCommentVNode("",!0)}}),ee=t.defineComponent({__name:"ATableModal",props:{colIndex:{},rowIndex:{},store:{}},setup(e){const o=n=>{n.stopPropagation()};return(n,r)=>(t.openBlock(),t.createElementBlock("div",{class:"amodal",tabindex:"-1",onClick:o,onInput:o},[t.renderSlot(n.$slots,"default")],32))}}),xe=e=>{const o=e.id||crypto.randomUUID();return Ce.defineStore(`table-${o}`,()=>{const r=()=>{const w={};for(const[h,v]of i.value.entries())for(const[C,E]of l.value.entries())w[`${h}:${C}`]=E[v.name];return w},a=w=>{const h=[Object.assign({},{rowModified:!1})];if(w&&"0:0"in w)return w;const v=new Set;for(let C=l.value.length-1;C>=0;C--){const E=l.value[C];E.parent&&v.add(E.parent),h[C]={childrenOpen:!1,expanded:!1,indent:E.indent||null,isParent:v.has(C),isRoot:E.parent===null||E.parent===void 0,rowModified:!1,open:E.parent===null||E.parent===void 0,parent:E.parent}}return h},i=t.ref(e.columns),l=t.ref(e.rows),d=t.ref(e.config||{}),s=t.ref(e.table||r()),f=t.ref(a(e.display)),u=t.ref(e.modal||{visible:!1}),m=t.computed(()=>i.value.some(w=>w.pinned)),c=t.computed(()=>`${Math.ceil(l.value.length/100+1)}ch`),p=t.computed(()=>["list","tree","list-expansion"].includes(d.value.view)),b=(w,h)=>s.value[`${w}:${h}`],x=(w,h,v)=>{const C=`${w}:${h}`,E=i.value[w];s.value[C]!==v&&(f.value[h].rowModified=!0),s.value[C]=v,l.value[h][E.name]=v},y=w=>({minWidth:w.width||"40ch",textAlign:w.align||"center",width:d.value.fullWidth?"auto":null}),g=w=>d.value.view!=="tree"||f.value[w].isRoot||f.value[w].open,S=w=>d.value.view!=="tree"?"":f.value[w].isRoot||f.value[w].isParent?f.value[w].childrenOpen?"-":"+":"",ve=w=>{if(d.value.view==="tree"){f.value[w].childrenOpen=!f.value[w].childrenOpen;for(let h=l.value.length-1;h>=0;h--)f.value[h].parent===w&&(f.value[h].open=!f.value[h].open,f.value[h].childrenOpen&&ve(h))}else d.value.view==="list-expansion"&&(f.value[w].expanded=!f.value[w].expanded)},wt=(w,h)=>{const v=b(w,h);return Ee(w,h,v)},Ee=(w,h,v)=>{const C=i.value[w],E=l.value[h],L=C.format;return L?typeof L=="function"?L(v,{table:s.value,row:E,column:C}):typeof L=="string"?Function(`"use strict";return (${L})`)()(v,{table:s.value,row:E,column:C}):v:v};return{columns:i,rows:l,config:d,table:s,display:f,modal:u,hasPinnedColumns:m,numberedRowWidth:c,zeroColumn:p,closeModal:w=>{var h;w.target instanceof Node&&(h=u.value.parent)!=null&&h.contains(w.target)||u.value.visible&&(u.value.visible=!1)},getCellData:b,getCellDisplayValue:wt,getFormattedValue:Ee,getHeaderCellStyle:y,getIndent:(w,h)=>h&&w===0&&h>0?`${h}ch`:"inherit",getRowExpandSymbol:S,isRowVisible:g,setCellData:x,toggleRowExpand:ve}})()},ke=((e,o)=>{const n=e.__vccOpts||e;for(const[r,a]of o)n[r]=a;return n})(t.defineComponent({__name:"ATable",props:{id:{},modelValue:{},columns:{},rows:{default:()=>[]},config:{default:()=>new Object}},emits:["update:modelValue","cellUpdate"],setup(e,{expose:o,emit:n}){const r=n,a=t.useTemplateRef("table"),i=e.modelValue?e.modelValue:e.rows,l=xe({columns:e.columns,rows:i,id:e.id,config:e.config});l.$onAction(({name:s,store:f,args:u})=>{if(s==="setCellData"){const[m,c,p]=u,b=f.getCellData(m,c);r("cellUpdate",[m,c,p,b])}}),t.watch(()=>l.rows,s=>{r("update:modelValue",s)},{deep:!0}),t.onMounted(()=>{e.columns.some(s=>s.pinned)&&(d(),l.config.view==="tree"&&he(a,d,{childList:!0,subtree:!0}))});const d=()=>{const s=a.value,f=s.rows[0],u=s.rows[1],m=f?Array.from(f.cells):[];for(const[c,p]of m.entries()){const b=u.cells[c];b&&(p.style.width=`${b.offsetWidth}px`)}for(const c of s.rows){let p=0;const b=[];for(const x of c.cells)(x.classList.contains("sticky-column")||x.classList.contains("sticky-index"))&&(x.style.left=`${p}px`,p+=x.offsetWidth,b.push(x));b.length>0&&b[b.length-1].classList.add("sticky-column-edge")}};return window.addEventListener("keydown",s=>{if(s.key==="Escape"&&l.modal.visible){l.modal.visible=!1;const f=l.modal.parent;f&&t.nextTick().then(()=>{f.focus()})}}),o({store:l}),(s,f)=>(t.openBlock(),t.createElementBlock("table",{ref:"table",class:"atable",style:t.normalizeStyle({width:t.unref(l).config.fullWidth?"100%":"auto"})},[t.renderSlot(s.$slots,"header",{data:t.unref(l)},()=>[t.createVNode(_,{columns:t.unref(l).columns,store:t.unref(l)},null,8,["columns","store"])],!0),t.createElementVNode("tbody",null,[t.renderSlot(s.$slots,"body",{data:t.unref(l)},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l).rows,(u,m)=>(t.openBlock(),t.createBlock(K,{key:u.id,row:u,rowIndex:m,store:t.unref(l)},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l).columns,(c,p)=>(t.openBlock(),t.createBlock(Z,{key:c.name,store:t.unref(l),col:c,spellcheck:"false",pinned:c.pinned,rowIndex:m,colIndex:p,component:c.cellComponent,style:t.normalizeStyle({textAlign:(c==null?void 0:c.align)||"center",minWidth:(c==null?void 0:c.width)||"40ch",width:t.unref(l).config.fullWidth?"auto":null})},null,8,["store","col","pinned","rowIndex","colIndex","component","style"]))),128))]),_:2},1032,["row","rowIndex","store"]))),128))],!0)]),t.renderSlot(s.$slots,"footer",{data:t.unref(l)},void 0,!0),t.renderSlot(s.$slots,"modal",{data:t.unref(l)},()=>[t.withDirectives(t.createVNode(ee,{colIndex:t.unref(l).modal.colIndex,rowIndex:t.unref(l).modal.rowIndex,store:t.unref(l),style:t.normalizeStyle({left:t.unref(l).modal.left+"px",top:t.unref(l).modal.top+"px",maxWidth:t.unref(l).modal.width+"px"})},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(l).modal.component),t.mergeProps({key:`${t.unref(l).modal.rowIndex}:${t.unref(l).modal.colIndex}`,colIndex:t.unref(l).modal.colIndex,rowIndex:t.unref(l).modal.rowIndex,store:t.unref(l)},t.unref(l).modal.componentProps),null,16,["colIndex","rowIndex","store"]))]),_:1},8,["colIndex","rowIndex","store","style"]),[[t.vShow,t.unref(l).modal.visible]])],!0)],4))}}),[["__scopeId","data-v-930d16dc"]]);function bt(e){e.component("ACell",Z),e.component("AExpansionRow",ye),e.component("ARow",K),e.component("ATable",ke),e.component("ATableHeader",_),e.component("ATableModal",ee)}k.ACell=Z,k.AExpansionRow=ye,k.ARow=K,k.ATable=ke,k.ATableHeader=_,k.ATableModal=ee,k.createTableStore=xe,k.install=bt,Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})});
3
3
  //# sourceMappingURL=atable.umd.cjs.map