@ninebone/table 0.0.456 → 0.0.458
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/nine-table.umd.js
CHANGED
|
@@ -352,7 +352,7 @@
|
|
|
352
352
|
<nine-table-analysis></nine-table-analysis>
|
|
353
353
|
</nine-table-body>
|
|
354
354
|
<nine-table-footer></nine-table-footer>
|
|
355
|
-
`;const a=t(this,_).shadowRoot.querySelectorAll("nine-table-sheet");a==null||a.forEach((h,l)=>{e[l]&&setTimeout(()=>{h.generate(e[l]),s&&t(this,Tt).call(this)})})},"#render"));b(this,_,i),t(this,Qt).call(this)}};_=new WeakMap,Qt=new WeakMap,Tt=new WeakMap,te=new WeakMap,c(ke,"LayoutManager");let fe=ke;const Te=class Te{constructor(i){d(this,Ct);d(this,ft,-1);A(this,"count",c(()=>t(this,Ct).rawRecords.length,"count"));b(this,Ct,i)}get at(){return t(this,ft)}set at(i){b(this,ft,parseInt(i,10)),body&&!body.querySelector(`tbody.bindable tr[data-row="${t(this,ft)}"]`)&&setTimeout(()=>{})}};Ct=new WeakMap,ft=new WeakMap,c(Te,"ngRow");let ue=Te;const O=class O{constructor(i,e){d(this,N);d(this,C);d(this,W,[]);d(this,ut,[]);d(this,ee,0);d(this,X,[]);d(this,se,c(()=>{b(this,X,[]);const i=t(this,N).template||[];Array.from(i).forEach(e=>{var s;t(this,X).push(((s=e.getBoundingClientRect)==null?void 0:s.call(e).height)||24)}),(t(this,C).rawRecords||[]).forEach(e=>{e.__ng||(e.__ng=t(this,Lt).call(this)),e.__ng.height=t(this,X).slice()})},"#initialize"));d(this,nt,c(()=>{t(this,N).shadowRoot.querySelectorAll("nine-table-sheet").forEach(i=>{i.invalidate()})},"#invalidate"));A(this,"get",c((i,e)=>{var r;const s=this.getValidData();if(!s||s.length<=0)return;if(i==null)return t(this,gt).call(this,s);if(i<0||i>=s.length)return null;const n=typeof((r=t(this,N).fields)==null?void 0:r.get)=="function"?t(this,N).fields.get():[];if(e!=null){const o=n.indexOf(e);return o>=0?s[i].v[o]:null}return t(this,gt).call(this,s[i])},"get"));A(this,"set",c(i=>{this.clear(),this.add(i,!1),t(this,nt).call(this)},"set"));d(this,Lt,c(()=>({rowState:O.ROW_STATE.EMPTY,deleted:!1,filtered:!1,height:t(this,X).slice(),o:{},c:{},_:[0,0,0,0,O.ROW_STATE.EMPTY,!1,!1,!0,!1,!0,!0,!1,t(this,X).slice(),-1,{},{}]}),"#getDefaultMeta"));A(this,"reset",c(()=>{b(this,W,[]),b(this,ut,[]),t(this,nt).call(this)},"reset"));A(this,"clear",c(()=>{var i;t(this,C).rawRecords=[],b(this,W,[]),b(this,ut,[]),(i=t(this,C).viewRecords)!=null&&i.reset&&t(this,C).viewRecords.reset()},"clear"));d(this,ie,c(i=>{var n;Array.isArray(i)||(i=[i]);const e=typeof((n=t(this,N).fields)==null?void 0:n.get)=="function"?t(this,N).fields.get():Object.keys(i[0]||{}),s=[];return i.forEach(r=>{const o={v:[]};e.forEach(a=>{o.v.push(r[a]!==void 0&&r[a]!==null?r[a]:"")}),s.push(o)}),s},"#json2Array"));d(this,ne,c(i=>(Array.isArray(i)||(i=[i]),i.forEach(e=>{e.__ng=t(this,Lt).call(this),e.__ng.rowid=this.nextId,e.__ng.rowState=O.ROW_STATE.INSERT,e.__ng._[0]=e.__ng.rowid}),i),"#defaultInsert"));A(this,"add",c((i,e=!0)=>{i===void 0&&(i={});const s=t(this,ie).call(this,i);t(this,C).rawRecords=t(this,C).rawRecords.concat(t(this,ne).call(this,s)),this.resetRecords();const n=this.count()-1;return e||s.forEach((r,o)=>{const a=t(this,C).rawRecords[n-o];a&&(a.__ng.rowState=O.ROW_STATE.EMPTY)}),t(this,nt).call(this),n},"add"));A(this,"delete",c(i=>{let e=[];Array.isArray(i)?e=i:typeof i>"u"?e=[t(this,C).host.row.at]:e=[parseInt(i,10)],e.sort((s,n)=>n-s).forEach(s=>{if(t(this,W)[s]){const n=t(this,W)[s].__ng.rowid;t(this,W)[s].__ng.rowState===O.ROW_STATE.INSERT?t(this,C).rawRecords=t(this,C).rawRecords.filter(r=>r.__ng.rowid!==n):t(this,C).rawRecords.forEach(r=>{r.__ng.rowid===n&&(r.__ng.deleted=!0,r.__ng.rowState=O.ROW_STATE.DELETE)})}}),this.resetRecords(),t(this,nt).call(this)},"delete"));A(this,"setValue",c((i,e,s)=>{var h;i=parseInt(i,10);const r=(typeof((h=t(this,N).fields)==null?void 0:h.get)=="function"?t(this,N).fields.get():[]).indexOf(e);if(r<0)return;const o=this.getValidData()[i];if(!o)return;const a=o.v[r];a!==s&&o.__ng.rowState!==O.ROW_STATE.INSERT&&(o.__ng.o.hasOwnProperty(e)||(o.__ng.o[e]=a),o.__ng.rowState=O.ROW_STATE.UPDATE),o.v[r]=s},"setValue"));A(this,"resetRecords",c(()=>{b(this,ut,t(this,C).rawRecords.filter(i=>!i.__ng.deleted)),b(this,W,t(this,C).rawRecords.filter(i=>!i.__ng.deleted&&!i.__ng.filtered)),t(this,C).rawRecords.forEach((i,e)=>{i.__ng.rowidx=e}),t(this,W).forEach((i,e)=>{i.__ng.i=e})},"resetRecords"));A(this,"getValidData",c(()=>(t(this,W).length===0&&t(this,C).rawRecords.length>0&&this.resetRecords(),t(this,W)),"getValidData"));d(this,gt,c(i=>{var o;if(!i)return i;const e=!Array.isArray(i),s=e?[i]:i,n=typeof((o=t(this,N).fields)==null?void 0:o.get)=="function"?t(this,N).fields.get():[],r=s.filter(a=>!a.__ng.deleted).map(a=>{const h={};return n.forEach((l,f)=>{h[l]=a.v?a.v[f]:a[l]}),h.__ng=a.__ng,h});return e?r[0]:r},"#conv"));A(this,"count",c(()=>this.getValidData().length,"count"));b(this,N,i),b(this,C,e),t(this,se).call(this)}get source(){return t(this,gt).call(this,t(this,C).rawRecords)}set source(i){this.clear(),this.add(i,!1)}get nextId(){return++Ve(this,ee)._}get length(){return t(this,W).length}getRowCount(){return this.length}};N=new WeakMap,C=new WeakMap,W=new WeakMap,ut=new WeakMap,ee=new WeakMap,X=new WeakMap,se=new WeakMap,nt=new WeakMap,Lt=new WeakMap,ie=new WeakMap,ne=new WeakMap,gt=new WeakMap,c(O,"ngData"),A(O,"ROW_STATE",{EMPTY:"EMPTY",NORMAL:"NORMAL",INSERT:"INSERT",UPDATE:"UPDATE",DELETE:"DELETE"});let ge=O;const Ce=class Ce{constructor(i){d(this,rt);b(this,rt,i),this.row=new ue(this),this.data=new ge(t(this,rt),this),this.rawRecords=[],this.viewRecords=[],this.delRecords=[],this.pageCnt=25,this.viewRecords.reset=()=>{var e;(e=t(this,rt).view)!=null&&e.redraw&&t(this,rt).view.redraw()},this.setDataSource=e=>{this.data&&this.data.reset(),this.rawRecords=[],this.viewRecords=[],this.delRecords=[],this.data.set(e||[])},this.getRowState=e=>{var n,r;const s=parseInt(e,10);if(!(s>=this.data.count()))return(r=(n=this.data.getValidData()[s])==null?void 0:n.__ng)==null?void 0:r.rowState},this.getRowPosition=()=>this.row.at,this.setRowPosition=e=>{this.row.at=e},this.scrollTo_V1=e=>(e<0&&(e=0),e>=this.rawRecords.length&&(e=this.rawRecords.length-1),this.viewRecords.rawIndex=e,this.viewRecords.reset&&this.viewRecords.reset(),!(e<=0||e>=this.rawRecords.length-1)),this.getColumn=(e,s)=>this.data.get(e,s),this.setColumn=(e,s,n)=>{e=parseInt(e,10),this.data.setValue(e,s,n)},this.setDataSource([])}};rt=new WeakMap,c(Ce,"ngDataManager");let be=Ce;const Le=class Le{constructor(i){d(this,bt);d(this,H,[]);A(this,"add",c((i,e="string")=>{i.forEach(s=>{t(this,H).some(n=>n.name===s)||t(this,H).push({name:s,type:e})}),t(this,Ht).call(this)},"add"));d(this,Ht,c(()=>{const i=new Map;t(this,H).forEach(e=>{i.set(e.name,e.type)}),b(this,H,Array.from(i,([e,s])=>({name:e,type:s}))),b(this,H,t(this,H).filter(e=>e.name!==""&&e.name!=="__ng")),t(this,H).sort((e,s)=>e.name.length<s.name.length?1:-1)},"#adjust"));d(this,re,c(()=>{b(this,H,[]),k.log(t(this,bt).querySelectorAll("table"));const i=Array.from(t(this,bt).querySelectorAll("table"));if(!(!i||i.length===0)){for(const e of i)k.log(e),$("[data-bind]",e).each((s,n)=>{const r=n.dataset.bind,o=n.getAttribute("data-type")||"string";r&&t(this,H).push({name:r,type:o})}),["data-expr","background-color","color","tooltip","visible","readonly","enable-button","enable-check","class-expr","icon-color","icon-src"].forEach(s=>{$(`[${s}]`,e).each((n,r)=>{var o=r.getAttribute(s);if(o.indexOf("data.")<0){const a=o.search(/[(]/g);if(a>0)try{o=String(window[o.substring(0,a).trim()])}catch{o=""}}o.split("data.").forEach(a=>{if(a.trim()!=""){const h=a.search(/[^_A-Za-z0-9]/g);let l="";h>=0?l=a.substring(0,h):o.startsWith("data.")&&(l=a.replace("data.","")),l&&t(this,H).push({name:l,type:"string"})}})})});t(this,Ht).call(this)}},"#init"));b(this,bt,i),t(this,re).call(this)}get(){return t(this,H).map(i=>i.name)}getFields(){return t(this,H)}getType(i){const e=t(this,H).find(s=>s.name===i);return e?e.type:"string"}indexOf(i){return t(this,H).findIndex(e=>e.name===i)}includes(i){return t(this,H).some(e=>e.name===i)}};bt=new WeakMap,H=new WeakMap,Ht=new WeakMap,re=new WeakMap,c(Le,"ngFields");let pe=Le;const He=class He extends HTMLElement{constructor(){super();d(this,ot);d(this,oe);d(this,ae,c(()=>{this.fields=new pe(this),b(this,oe,new fe(this)),k.log("NineTable connected."),this.dispatchEvent(new CustomEvent("load",{bubbles:!0,detail:{target:this}}))},"#init"));this.attachShadow({mode:"open"}),b(this,ot,new be(this))}connectedCallback(){t(this,ae).call(this)}disconnectedCallback(){k.log("NineTable disconnected.")}get data(){return t(this,ot).data}get row(){return t(this,ot).row}get dataManager(){return t(this,ot)}};ot=new WeakMap,oe=new WeakMap,ae=new WeakMap,c(He,"NineTable");let ye=He;customElements.get("nine-table")||customElements.define("nine-table",ye);const $t=class $t extends HTMLElement{constructor(){super()}applyBaseStyle(){this.constructor.name}connectedCallback(){}};c($t,"BasicCellElement"),A($t,"_styleCache",new Map),A($t,"_customStyleCache",new Map);let me=$t;const We=class We extends me{constructor(){super();d(this,L);d(this,Mt);d(this,y);d(this,$e);d(this,Me);d(this,Ie);d(this,_e);A(this,"getDisplayText",c(e=>{if(t(this,y))if(t(this,y).closest("tbody")){const s=t(this,y).closest("tr").data,n=parseInt(t(this,y).dataset.row);if(!s)return"";if(ninegrid.isNull(t(this,y).dataset.expr)){if(!ninegrid.isNull(t(this,y).dataset.bind))return s[t(this,y).dataset.bind]||ninegrid.nvl(e,"")}else try{return this.getExprValue(t(this,y).dataset.expr,s,n,t(this,y))}catch{console.error(t(this,y).dataset.expr,s,t(this,y).dataset.row)}return ninegrid.nvl(e,"")}else try{return t(this,L).exprFunction(t(this,y).dataset.expr).call(this,null,-1,t(this,L).data)}catch{}},"getDisplayText"));A(this,"reset",c(()=>{k.log("super reset"),parseInt(t(this,y).dataset.row);const e=t(this,Mt).data;k.log(e)},"reset"));d(this,Ne,c(()=>{if(!(!t(this,L)||!t(this,L).template||!t(this,y).closest("tbody.bindable"))){var e=ninegrid.j.querySelectorAll(t(this,y)).attr("suppress");if(e&&(e=parseInt(e)),e&&!isNaN(e)){var s=t(this,y).closest("tr"),n=[];$("th,td",s).each((x,B)=>{var M=ninegrid.j.querySelectorAll(B).attr("suppress");M&&B.dataset.row&&(M=parseInt(M),!isNaN(M)&&M<=e&&n.push(M))}),n.sort();var r=!1;if(parseInt(s.sectionRowIndex/t(this,L).template.length)>0)for(var o of n){if(o>e)break;var a=parseInt(t(this,y).dataset.row),h=a-1,l=t(this,y).closest("tr").data,f=t(this,L).data.get(h);t(this,y).dataset.matrixRow;var u=t(this,L).body.querySelector(`tbody.bindable [suppress="${o}"][data-matrix-row="${t(this,y).dataset.matrixRow}"]`),p=u.dataset.expr?this.getExprValue(u.dataset.expr,l,a):l[u.dataset.bind],g=u.dataset.expr?this.getExprValue(u.dataset.expr,f,h):f[u.dataset.bind];if(p!=g){r=!0;break}}else r=!0;r?ninegrid.j.querySelectorAll(t(this,y)).removeClass("suppress"):ninegrid.j.querySelectorAll(t(this,y)).addClass("suppress"),ninegrid.j.querySelectorAll(t(this,y)).hasClass("hidden")||(r?ninegrid.j.querySelectorAll(t(this,y)).removeClass("hidden"):ninegrid.j.querySelectorAll(t(this,y)).addClass("hidden"));var m=parseInt(t(this,y).dataset.matrixRow),v=m-1,q=t(this,L).body.querySelector(`tbody.bindable [data-col="${t(this,y).dataset.col}"][data-matrix-row="${v}"]`);$(q).hasClass("suppress")&&!ninegrid.j.querySelectorAll(t(this,y)).hasClass("suppress")?ninegrid.j.querySelectorAll(q).removeClass("last-none-suppress").addClass("last-suppress"):!$(q).hasClass("suppress")&&ninegrid.j.querySelectorAll(t(this,y)).hasClass("suppress")?ninegrid.j.querySelectorAll(q).removeClass("last-suppress").addClass("last-none-suppress"):ninegrid.j.querySelectorAll(q).removeClass("last-none-suppress").removeClass("last-suppress")}}},"#resetSuppress"));A(this,"getExprValue",c((e,s,n,r)=>{if(typeof e<"u")try{n=parseInt(n);const o=e.replace("()","");return t(this,L)[o]?t(this,L)[o].call(this,s,n,t(this,y)):t(this,L).exprFunction(e).call(this,s,n,t(this,L).data)}catch{return["NG-COMBO"].includes(this.tagName)?"":e}else return e},"getExprValue"))}connectedCallback(){super.connectedCallback(),b(this,L,this.getRootNode().host),b(this,y,this.closest("th,td")),b(this,Mt,t(this,y).closest("tr"))}get value(){var e=!t(this,L)||!t(this,L).dataManager||!t(this,y)||!t(this,y).dataset||!t(this,y).dataset.row||!t(this,y).dataset.bind?"":t(this,y).closest("tr").data[t(this,y).dataset.bind];return e??""}set value(e){var s=parseInt(t(this,y).dataset.row);const n=this.getAttribute("update-row-state")!="false";s<0?t(this,L).data.setValueNF(parseInt(t(this,y).dataset.index),t(this,y).dataset.bind,e,n):t(this,L).data.setValue(s,t(this,y).dataset.bind,e,n)}get row(){return parseInt(t(this,y).dataset.row)}get data(){return t(this,y).closest("tr").data}};L=new WeakMap,Mt=new WeakMap,y=new WeakMap,$e=new WeakMap,Me=new WeakMap,Ie=new WeakMap,_e=new WeakMap,Ne=new WeakMap,c(We,"CellElement");let xe=We;const Oe=class Oe extends xe{constructor(){super();A(this,"reset",c(()=>{k.log("editable reset"),super.reset()},"reset"))}connectedCallback(){super.connectedCallback()}};c(Oe,"EditableCellElement");let ve=Oe;const De=class De extends ve{constructor(){super();d(this,Be);d(this,at);d(this,pt);d(this,yt);d(this,le);d(this,K);A(this,"reset",c(()=>{super.reset(),trace.log("input reset")},"reset"));d(this,ze,c(e=>{if(!["Escape","Enter","Tab","Home","End","ArrowLeft","ArrowRight","PageUp","PageDown","Backspace","Delete"].includes(e.code)){if(t(this,at)=="number"){let r=[];if(t(this,K)&&Number(t(this,K))>0&&r.push("."),t(this,yt)&&Number(t(this,yt))>=0&&r.push("-"),!(e.keyCode>=48&&e.keyCode<=57||e.keyCode>=96&&e.keyCode<=105)&&!r.includes(e.key)&&e.preventDefault(),t(this,K)&&(e.keyCode>=48&&e.keyCode<=57||e.keyCode>=96&&e.keyCode<=105)&&e.target.selectionStart==e.target.selectionEnd){var s=e.target.value,n=s.indexOf(".");if(n>=0){var s=s.substr(n+1,s.length);s.length>=Number(t(this,K))&&e.preventDefault()}}}t(this,pt)&&ninegrid.getByteLength(e.target.value)>=Number(t(this,pt))&&e.target.selectionStart==e.target.selectionEnd&&e.preventDefault()}},"#onKeyDown"));if(this.applyBaseStyle(),b(this,at,this.getAttribute("type")||"text"),b(this,pt,this.getAttribute("maxbyte")),b(this,yt,this.getAttribute("min")),b(this,le,this.getAttribute("max")),b(this,K,this.getAttribute("scale")),!["text","number"].includes(t(this,at)))throw`invalid type : ${t(this,at)}`}connectedCallback(){for(var e=[],s=0;s<this.attributes.length;s++)["type","maxlength","maxbyte","min","max","step","scale","text-align"].includes(this.attributes[s].name)&&e.push(`${this.attributes[s].name}="${this.attributes[s].value}"`);this.innerHTML=`
|
|
355
|
+
`;const a=t(this,_).shadowRoot.querySelectorAll("nine-table-sheet");a==null||a.forEach((h,l)=>{e[l]&&setTimeout(()=>{h.generate(e[l]),s&&t(this,Tt).call(this)})})},"#render"));b(this,_,i),t(this,Qt).call(this)}};_=new WeakMap,Qt=new WeakMap,Tt=new WeakMap,te=new WeakMap,c(ke,"LayoutManager");let fe=ke;const Te=class Te{constructor(i){d(this,Ct);d(this,ft,-1);A(this,"count",c(()=>t(this,Ct).rawRecords.length,"count"));b(this,Ct,i)}get at(){return t(this,ft)}set at(i){b(this,ft,parseInt(i,10)),body&&!body.querySelector(`tbody.bindable tr[data-row="${t(this,ft)}"]`)&&setTimeout(()=>{})}};Ct=new WeakMap,ft=new WeakMap,c(Te,"ngRow");let ue=Te;const O=class O{constructor(i,e){d(this,N);d(this,C);d(this,W,[]);d(this,ut,[]);d(this,ee,0);d(this,X,[]);d(this,se,c(()=>{b(this,X,[]);const i=t(this,N).template||[];Array.from(i).forEach(e=>{var s;t(this,X).push(((s=e.getBoundingClientRect)==null?void 0:s.call(e).height)||24)}),(t(this,C).rawRecords||[]).forEach(e=>{e.__ng||(e.__ng=t(this,Lt).call(this)),e.__ng.height=t(this,X).slice()})},"#initialize"));d(this,nt,c(()=>{t(this,N).shadowRoot.querySelectorAll("nine-table-sheet").forEach(i=>{i.invalidate()})},"#invalidate"));A(this,"get",c((i,e)=>{var r;const s=this.getValidData();if(!s||s.length<=0)return;if(i==null)return t(this,gt).call(this,s);if(i<0||i>=s.length)return null;const n=typeof((r=t(this,N).fields)==null?void 0:r.get)=="function"?t(this,N).fields.get():[];if(e!=null){const o=n.indexOf(e);return o>=0?s[i].v[o]:null}return t(this,gt).call(this,s[i])},"get"));A(this,"set",c(i=>{this.clear(),this.add(i,!1),t(this,nt).call(this)},"set"));d(this,Lt,c(()=>({rowState:O.ROW_STATE.EMPTY,deleted:!1,filtered:!1,height:t(this,X).slice(),o:{},c:{},_:[0,0,0,0,O.ROW_STATE.EMPTY,!1,!1,!0,!1,!0,!0,!1,t(this,X).slice(),-1,{},{}]}),"#getDefaultMeta"));A(this,"reset",c(()=>{b(this,W,[]),b(this,ut,[]),t(this,nt).call(this)},"reset"));A(this,"clear",c(()=>{var i;t(this,C).rawRecords=[],b(this,W,[]),b(this,ut,[]),(i=t(this,C).viewRecords)!=null&&i.reset&&t(this,C).viewRecords.reset()},"clear"));d(this,ie,c(i=>{var n;Array.isArray(i)||(i=[i]);const e=typeof((n=t(this,N).fields)==null?void 0:n.get)=="function"?t(this,N).fields.get():Object.keys(i[0]||{}),s=[];return i.forEach(r=>{const o={v:[]};e.forEach(a=>{o.v.push(r[a]!==void 0&&r[a]!==null?r[a]:"")}),s.push(o)}),s},"#json2Array"));d(this,ne,c(i=>(Array.isArray(i)||(i=[i]),i.forEach(e=>{e.__ng=t(this,Lt).call(this),e.__ng.rowid=this.nextId,e.__ng.rowState=O.ROW_STATE.INSERT,e.__ng._[0]=e.__ng.rowid}),i),"#defaultInsert"));A(this,"add",c((i,e=!0)=>{i===void 0&&(i={});const s=t(this,ie).call(this,i);t(this,C).rawRecords=t(this,C).rawRecords.concat(t(this,ne).call(this,s)),this.resetRecords();const n=this.count()-1;return e||s.forEach((r,o)=>{const a=t(this,C).rawRecords[n-o];a&&(a.__ng.rowState=O.ROW_STATE.EMPTY)}),t(this,nt).call(this),n},"add"));A(this,"delete",c(i=>{let e=[];Array.isArray(i)?e=i:typeof i>"u"?e=[t(this,C).host.row.at]:e=[parseInt(i,10)],e.sort((s,n)=>n-s).forEach(s=>{if(t(this,W)[s]){const n=t(this,W)[s].__ng.rowid;t(this,W)[s].__ng.rowState===O.ROW_STATE.INSERT?t(this,C).rawRecords=t(this,C).rawRecords.filter(r=>r.__ng.rowid!==n):t(this,C).rawRecords.forEach(r=>{r.__ng.rowid===n&&(r.__ng.deleted=!0,r.__ng.rowState=O.ROW_STATE.DELETE)})}}),this.resetRecords(),t(this,nt).call(this)},"delete"));A(this,"setValue",c((i,e,s)=>{var h;i=parseInt(i,10);const r=(typeof((h=t(this,N).fields)==null?void 0:h.get)=="function"?t(this,N).fields.get():[]).indexOf(e);if(r<0)return;const o=this.getValidData()[i];if(!o)return;const a=o.v[r];a!==s&&o.__ng.rowState!==O.ROW_STATE.INSERT&&(o.__ng.o.hasOwnProperty(e)||(o.__ng.o[e]=a),o.__ng.rowState=O.ROW_STATE.UPDATE),o.v[r]=s},"setValue"));A(this,"resetRecords",c(()=>{b(this,ut,t(this,C).rawRecords.filter(i=>!i.__ng.deleted)),b(this,W,t(this,C).rawRecords.filter(i=>!i.__ng.deleted&&!i.__ng.filtered)),t(this,C).rawRecords.forEach((i,e)=>{i.__ng.rowidx=e}),t(this,W).forEach((i,e)=>{i.__ng.i=e})},"resetRecords"));A(this,"getValidData",c(()=>(t(this,W).length===0&&t(this,C).rawRecords.length>0&&this.resetRecords(),t(this,W)),"getValidData"));d(this,gt,c(i=>{var o;if(!i)return i;const e=!Array.isArray(i),s=e?[i]:i,n=typeof((o=t(this,N).fields)==null?void 0:o.get)=="function"?t(this,N).fields.get():[],r=s.filter(a=>!a.__ng.deleted).map(a=>{const h={};return n.forEach((l,f)=>{h[l]=a.v?a.v[f]:a[l]}),h.__ng=a.__ng,h});return e?r[0]:r},"#conv"));A(this,"count",c(()=>this.getValidData().length,"count"));b(this,N,i),b(this,C,e),t(this,se).call(this)}get source(){return t(this,gt).call(this,t(this,C).rawRecords)}set source(i){this.clear(),this.add(i,!1)}get nextId(){return++Ve(this,ee)._}get length(){return t(this,W).length}getRowCount(){return this.length}};N=new WeakMap,C=new WeakMap,W=new WeakMap,ut=new WeakMap,ee=new WeakMap,X=new WeakMap,se=new WeakMap,nt=new WeakMap,Lt=new WeakMap,ie=new WeakMap,ne=new WeakMap,gt=new WeakMap,c(O,"ngData"),A(O,"ROW_STATE",{EMPTY:"EMPTY",NORMAL:"NORMAL",INSERT:"INSERT",UPDATE:"UPDATE",DELETE:"DELETE"});let ge=O;const Ce=class Ce{constructor(i){d(this,rt);b(this,rt,i),this.row=new ue(this),this.data=new ge(t(this,rt),this),this.rawRecords=[],this.viewRecords=[],this.delRecords=[],this.pageCnt=25,this.viewRecords.reset=()=>{var e;(e=t(this,rt).view)!=null&&e.redraw&&t(this,rt).view.redraw()},this.setDataSource=e=>{this.data&&this.data.reset(),this.rawRecords=[],this.viewRecords=[],this.delRecords=[],this.data.set(e||[])},this.getRowState=e=>{var n,r;const s=parseInt(e,10);if(!(s>=this.data.count()))return(r=(n=this.data.getValidData()[s])==null?void 0:n.__ng)==null?void 0:r.rowState},this.getRowPosition=()=>this.row.at,this.setRowPosition=e=>{this.row.at=e},this.scrollTo_V1=e=>(e<0&&(e=0),e>=this.rawRecords.length&&(e=this.rawRecords.length-1),this.viewRecords.rawIndex=e,this.viewRecords.reset&&this.viewRecords.reset(),!(e<=0||e>=this.rawRecords.length-1)),this.getColumn=(e,s)=>this.data.get(e,s),this.setColumn=(e,s,n)=>{e=parseInt(e,10),this.data.setValue(e,s,n)},this.setDataSource([])}};rt=new WeakMap,c(Ce,"ngDataManager");let be=Ce;const Le=class Le{constructor(i){d(this,bt);d(this,H,[]);A(this,"add",c((i,e="string")=>{i.forEach(s=>{t(this,H).some(n=>n.name===s)||t(this,H).push({name:s,type:e})}),t(this,Ht).call(this)},"add"));d(this,Ht,c(()=>{const i=new Map;t(this,H).forEach(e=>{i.set(e.name,e.type)}),b(this,H,Array.from(i,([e,s])=>({name:e,type:s}))),b(this,H,t(this,H).filter(e=>e.name!==""&&e.name!=="__ng")),t(this,H).sort((e,s)=>e.name.length<s.name.length?1:-1)},"#adjust"));d(this,re,c(()=>{b(this,H,[]),k.log(t(this,bt).querySelectorAll("table"));const i=Array.from(t(this,bt).querySelectorAll("table"));if(!(!i||i.length===0)){for(const e of i)k.log(e),$("[data-bind]",e).each((s,n)=>{const r=n.dataset.bind,o=n.getAttribute("data-type")||"string";r&&t(this,H).push({name:r,type:o})}),["data-expr","background-color","color","tooltip","visible","readonly","enable-button","enable-check","class-expr","icon-color","icon-src"].forEach(s=>{$(`[${s}]`,e).each((n,r)=>{var o=r.getAttribute(s);if(o.indexOf("data.")<0){const a=o.search(/[(]/g);if(a>0)try{o=String(window[o.substring(0,a).trim()])}catch{o=""}}o.split("data.").forEach(a=>{if(a.trim()!=""){const h=a.search(/[^_A-Za-z0-9]/g);let l="";h>=0?l=a.substring(0,h):o.startsWith("data.")&&(l=a.replace("data.","")),l&&t(this,H).push({name:l,type:"string"})}})})});t(this,Ht).call(this)}},"#init"));b(this,bt,i),t(this,re).call(this)}get(){return t(this,H).map(i=>i.name)}getFields(){return t(this,H)}getType(i){const e=t(this,H).find(s=>s.name===i);return e?e.type:"string"}indexOf(i){return t(this,H).findIndex(e=>e.name===i)}includes(i){return t(this,H).some(e=>e.name===i)}};bt=new WeakMap,H=new WeakMap,Ht=new WeakMap,re=new WeakMap,c(Le,"ngFields");let pe=Le;const He=class He extends HTMLElement{constructor(){super();d(this,ot);d(this,oe);d(this,ae,c(()=>{this.fields=new pe(this),b(this,oe,new fe(this)),k.log("NineTable connected."),this.dispatchEvent(new CustomEvent("load",{bubbles:!0,detail:{target:this}}))},"#init"));this.attachShadow({mode:"open"}),b(this,ot,new be(this))}connectedCallback(){t(this,ae).call(this)}disconnectedCallback(){k.log("NineTable disconnected.")}get data(){return t(this,ot).data}get row(){return t(this,ot).row}get dataManager(){return t(this,ot)}};ot=new WeakMap,oe=new WeakMap,ae=new WeakMap,c(He,"NineTable");let ye=He;customElements.get("nine-table")||customElements.define("nine-table",ye);const $t=class $t extends HTMLElement{constructor(){super()}applyBaseStyle(){this.constructor.name}connectedCallback(){}};c($t,"BasicCellElement"),A($t,"_styleCache",new Map),A($t,"_customStyleCache",new Map);let me=$t;const We=class We extends me{constructor(){super();d(this,L);d(this,Mt);d(this,y);d(this,$e);d(this,Me);d(this,Ie);d(this,_e);A(this,"getDisplayText",c(e=>{if(t(this,y))if(t(this,y).closest("tbody")){const s=t(this,y).closest("tr").data,n=parseInt(t(this,y).dataset.row);if(!s)return"";if(ninegrid.isNull(t(this,y).dataset.expr)){if(!ninegrid.isNull(t(this,y).dataset.bind))return s[t(this,y).dataset.bind]||ninegrid.nvl(e,"")}else try{return this.getExprValue(t(this,y).dataset.expr,s,n,t(this,y))}catch{console.error(t(this,y).dataset.expr,s,t(this,y).dataset.row)}return ninegrid.nvl(e,"")}else try{return t(this,L).exprFunction(t(this,y).dataset.expr).call(this,null,-1,t(this,L).data)}catch{}},"getDisplayText"));A(this,"reset",c(()=>{k.log("super reset"),parseInt(t(this,y).dataset.row);const e=t(this,Mt).data;k.log(e)},"reset"));d(this,Ne,c(()=>{if(!(!t(this,L)||!t(this,L).template||!t(this,y).closest("tbody.bindable"))){var e=ninegrid.j.querySelectorAll(t(this,y)).attr("suppress");if(e&&(e=parseInt(e)),e&&!isNaN(e)){var s=t(this,y).closest("tr"),n=[];$("th,td",s).each((x,B)=>{var M=ninegrid.j.querySelectorAll(B).attr("suppress");M&&B.dataset.row&&(M=parseInt(M),!isNaN(M)&&M<=e&&n.push(M))}),n.sort();var r=!1;if(parseInt(s.sectionRowIndex/t(this,L).template.length)>0)for(var o of n){if(o>e)break;var a=parseInt(t(this,y).dataset.row),h=a-1,l=t(this,y).closest("tr").data,f=t(this,L).data.get(h);t(this,y).dataset.matrixRow;var u=t(this,L).body.querySelector(`tbody.bindable [suppress="${o}"][data-matrix-row="${t(this,y).dataset.matrixRow}"]`),p=u.dataset.expr?this.getExprValue(u.dataset.expr,l,a):l[u.dataset.bind],g=u.dataset.expr?this.getExprValue(u.dataset.expr,f,h):f[u.dataset.bind];if(p!=g){r=!0;break}}else r=!0;r?ninegrid.j.querySelectorAll(t(this,y)).removeClass("suppress"):ninegrid.j.querySelectorAll(t(this,y)).addClass("suppress"),ninegrid.j.querySelectorAll(t(this,y)).hasClass("hidden")||(r?ninegrid.j.querySelectorAll(t(this,y)).removeClass("hidden"):ninegrid.j.querySelectorAll(t(this,y)).addClass("hidden"));var m=parseInt(t(this,y).dataset.matrixRow),v=m-1,q=t(this,L).body.querySelector(`tbody.bindable [data-col="${t(this,y).dataset.col}"][data-matrix-row="${v}"]`);$(q).hasClass("suppress")&&!ninegrid.j.querySelectorAll(t(this,y)).hasClass("suppress")?ninegrid.j.querySelectorAll(q).removeClass("last-none-suppress").addClass("last-suppress"):!$(q).hasClass("suppress")&&ninegrid.j.querySelectorAll(t(this,y)).hasClass("suppress")?ninegrid.j.querySelectorAll(q).removeClass("last-suppress").addClass("last-none-suppress"):ninegrid.j.querySelectorAll(q).removeClass("last-none-suppress").removeClass("last-suppress")}}},"#resetSuppress"));A(this,"getExprValue",c((e,s,n,r)=>{if(typeof e<"u")try{n=parseInt(n);const o=e.replace("()","");return t(this,L)[o]?t(this,L)[o].call(this,s,n,t(this,y)):t(this,L).exprFunction(e).call(this,s,n,t(this,L).data)}catch{return["NG-COMBO"].includes(this.tagName)?"":e}else return e},"getExprValue"))}connectedCallback(){super.connectedCallback(),b(this,L,this.getRootNode().host),b(this,y,this.closest("th,td")),b(this,Mt,t(this,y).closest("tr"))}get value(){var e=!t(this,L)||!t(this,L).dataManager||!t(this,y)||!t(this,y).dataset||!t(this,y).dataset.row||!t(this,y).dataset.bind?"":t(this,y).closest("tr").data[t(this,y).dataset.bind];return e??""}set value(e){var s=parseInt(t(this,y).dataset.row);const n=this.getAttribute("update-row-state")!="false";s<0?t(this,L).data.setValueNF(parseInt(t(this,y).dataset.index),t(this,y).dataset.bind,e,n):t(this,L).data.setValue(s,t(this,y).dataset.bind,e,n)}get row(){return parseInt(t(this,y).dataset.row)}get data(){return t(this,y).closest("tr").data}};L=new WeakMap,Mt=new WeakMap,y=new WeakMap,$e=new WeakMap,Me=new WeakMap,Ie=new WeakMap,_e=new WeakMap,Ne=new WeakMap,c(We,"CellElement");let xe=We;const Oe=class Oe extends xe{constructor(){super();A(this,"reset",c(()=>{k.log("editable reset"),super.reset()},"reset"))}connectedCallback(){super.connectedCallback()}};c(Oe,"EditableCellElement");let ve=Oe;const De=class De extends ve{constructor(){super();d(this,Be);d(this,at);d(this,pt);d(this,yt);d(this,le);d(this,K);A(this,"reset",c(()=>{trace.log("==============="),super.reset(),trace.log("input reset")},"reset"));d(this,ze,c(e=>{if(!["Escape","Enter","Tab","Home","End","ArrowLeft","ArrowRight","PageUp","PageDown","Backspace","Delete"].includes(e.code)){if(t(this,at)=="number"){let r=[];if(t(this,K)&&Number(t(this,K))>0&&r.push("."),t(this,yt)&&Number(t(this,yt))>=0&&r.push("-"),!(e.keyCode>=48&&e.keyCode<=57||e.keyCode>=96&&e.keyCode<=105)&&!r.includes(e.key)&&e.preventDefault(),t(this,K)&&(e.keyCode>=48&&e.keyCode<=57||e.keyCode>=96&&e.keyCode<=105)&&e.target.selectionStart==e.target.selectionEnd){var s=e.target.value,n=s.indexOf(".");if(n>=0){var s=s.substr(n+1,s.length);s.length>=Number(t(this,K))&&e.preventDefault()}}}t(this,pt)&&ninegrid.getByteLength(e.target.value)>=Number(t(this,pt))&&e.target.selectionStart==e.target.selectionEnd&&e.preventDefault()}},"#onKeyDown"));if(this.applyBaseStyle(),b(this,at,this.getAttribute("type")||"text"),b(this,pt,this.getAttribute("maxbyte")),b(this,yt,this.getAttribute("min")),b(this,le,this.getAttribute("max")),b(this,K,this.getAttribute("scale")),!["text","number"].includes(t(this,at)))throw`invalid type : ${t(this,at)}`}connectedCallback(){for(var e=[],s=0;s<this.attributes.length;s++)["type","maxlength","maxbyte","min","max","step","scale","text-align"].includes(this.attributes[s].name)&&e.push(`${this.attributes[s].name}="${this.attributes[s].value}"`);this.innerHTML=`
|
|
356
356
|
<input type="text"
|
|
357
357
|
${e.join(" ")}
|
|
358
358
|
ondragstart="return false;"
|