@svgrid/enterprise 2.3.0 → 2.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/svgrid-enterprise.svelte-external.js +6885 -3504
- package/dist/designer/assets/GridMenus-BtWVk9Ab.js +7 -0
- package/dist/designer/assets/SvGridChartPanel-DWlBO2SD.js +10 -0
- package/dist/designer/assets/SvGridChartView-8c8Mb4j8.js +1 -0
- package/dist/designer/assets/SvGridChartView-DX9HfkBR.css +1 -0
- package/dist/designer/assets/index-DsDgp9Xq.js +78758 -0
- package/dist/designer/assets/index-tTY_Dx4P.css +1 -0
- package/dist/designer/assets/jszip.min-fkJdmAmj.js +2 -0
- package/dist/designer/assets/pdfmake-DeCsnyl9.js +242 -0
- package/dist/designer/assets/smart.export-BZlSCE8T.js +35 -0
- package/dist/designer/assets/vfs_fonts-eX2NpmfX.js +1 -0
- package/dist/designer/index.html +13 -0
- package/dist/node/studio.js +5660 -1747
- package/package.json +8 -5
- package/src/SvGridBoard.svelte +4 -1
- package/src/SvGridScheduler.svelte +114 -90
- package/src/ai-export-pdf.dom.test.ts +77 -77
- package/src/ai-export-xlsx.dom.test.ts +90 -90
- package/src/ai-export.dom.test.ts +114 -114
- package/src/export-ooxml.ts +4 -0
- package/src/export-xls.ts +3 -0
- package/src/expressions/evaluate.ts +9 -0
- package/src/import.test.ts +1 -1
- package/src/import.ts +1 -1
- package/src/index.ts +12 -0
- package/src/pivot.test.ts +0 -1
- package/src/schema-designer.ts +1 -1
- package/src/studio/emit-project.test.ts +298 -7
- package/src/studio/emit-project.ts +483 -29
- package/src/studio/emit-schema.ts +20 -10
- package/src/studio/index.ts +34 -0
- package/src/studio/init-flow.test.ts +239 -0
- package/src/studio/init-flow.ts +358 -0
- package/src/studio/project.test.ts +0 -1
- package/src/studio/project.ts +109 -2
- package/src/studio/samples/datasets.test.ts +84 -0
- package/src/studio/samples/datasets.ts +340 -0
- package/src/studio/samples/live-data.test.ts +1 -1
- package/src/studio/samples/samples.test.ts +268 -268
- package/src/studio/samples/shared.ts +7 -150
- package/src/studio/screen-suites.test.ts +226 -0
- package/src/studio/screen-suites.ts +445 -0
- package/src/studio/ui-components-surface.test.ts +2 -2
- package/src/studio/ui-components.generated.ts +1643 -106
- package/src/studio/ui-components.ts +742 -641
- package/src/sveltekit/index.ts +1 -0
- package/src/sveltekit/sql-source.ts +1 -1
- package/src/sveltekit/transport-scope.test.ts +125 -0
- package/src/sveltekit/transport.ts +76 -2
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
(()=>{var e=`\r
|
|
2
|
+
`;function t(e,t,n){if(!t&&t!==``&&t!==0)return``;let r=t;return typeof t==`boolean`&&n&&(r=n(t)),` ${e}="${r}"`}var n=class{static createHeader(e={}){let t=[`version`];return e.version||=`1.0`,e.encoding&&t.push(`encoding`),e.standalone&&t.push(`standalone`),`<?xml ${t.map((t=>`${t}="${e[t]}"`)).join(` `)} ?>`}static createXml(n,r){let i=``;n.properties&&(n.properties.prefixedAttributes&&n.properties.prefixedAttributes.forEach((e=>{Object.keys(e.map).forEach((n=>{i+=t(e.prefix+n,e.map[n],r)}))})),n.properties.rawMap&&Object.keys(n.properties.rawMap).forEach((e=>{i+=t(e,n.properties.rawMap[e],r)})));let a=`<`+n.name+i;return n.children||n.textNode!=null?n.textNode==null?(a+=`>\r
|
|
3
|
+
`,n.children&&n.children.forEach((e=>{a+=this.createXml(e,r)})),a+`</`+n.name+`>`+e):a+`>`+n.textNode+`</`+n.name+`>`+e:a+`/>`+e}};Smart.Utilities.Assign(`DataExporter`,class{constructor(e,t,n,r){let i=this;e||={},i.style=e.style,i.header=e.header,i.exportHeader=e.exportHeader===void 0||e.exportHeader,i.hierarchical=e.hierarchical,i.expandChar=e.expandChar||`+`,i.collapseChar=e.collapseChar||`-`,i.pageOrientation=e.pageOrientation,i.allowNull=e.allowNull||!1,i.spreadsheets=e.spreadsheets||null,i.protectSheet=e.protectSheet||null,i._media=[],!i.hierarchical&&t&&t.length>0?i.groupBy=t:i.mergedCells=e.mergedCells,!i.groupBy&&n&&Object.keys(n).length>0&&(i.filterBy=n),r&&(i.conditionalFormatting=r),i.timeBetween1900And1970=new Date(1970,0,1,0,0,0).getTime()-new Date(1900,0,1,0,0,0).getTime()}downloadFile(e,t,n){let r;if(!n)return e;if(r=e instanceof Blob?e:new Blob([e],{type:t}),window.navigator.msSaveOrOpenBlob)window.navigator.msSaveOrOpenBlob(r,n);else{let e=document.createElement(`a`),t=URL.createObjectURL(r);e.href=t,e.download=n,e.style.position=`absolute`,e.style.visibility=`hidden`,document.body.appendChild(e),e.click(),setTimeout((function(){document.body.removeChild(e),window.URL.revokeObjectURL(t)}),100)}}exportData(e,t,n,r){let i=this;if(i.actualHierarchy=i.hierarchical,t=t.toLowerCase(),i.exportHeader&&(i.header?((e=e.slice(0)).length===0&&(i.actualHierarchy=!1),i.processComplexHeader(i.header,e,t)):e.length===1&&(i.actualHierarchy=!1)),e.length===0)return void console.warn(`No data to export.`);if(t===`xlsx`){i.xlsxStartIndex=i.complexHeader?i.complexHeader.length:+i.exportHeader;let e=i.headerContent?i.headerContent.length:0;i.xlsxStartIndex+=e}i.actualHierarchy&&(e=i.processHierarchicalData(e,t)),i.getDatafields(e),n&&n.slice(n.length-t.length-1,n.length)!==`.`+t&&(n+=`.`+t);let a=null;switch(t){case`csv`:a=i.exportToCSVAndTSV(e,{delimiter:`, `,MIME:`text/csv;charset=utf-8;`,toRemove:2},n);break;case`html`:a=i.exportToHTML(e,n);break;case`jpeg`:case`png`:i.exportToImage(e,n,t,r);break;case`json`:a=i.exportToJSON(e,n);break;case`pdf`:a=i.exportToPDF(e,n);break;case`tsv`:a=i.exportToCSVAndTSV(e,{delimiter:` `,MIME:`text/tab-separated-values`,toRemove:1},n);break;case`xlsx`:a=i.exportToXLSX(e,n,r);break;case`xml`:a=i.exportToXML(e,n);break;case`md`:a=i.exportToMD(e,n)}return r&&a&&r(a),delete i.complexHeader,a}exportToCSVAndTSV(e,t,n){let r=this,i=r.datafields,a=``;for(let n=0;n<e.length;n++){let o=e[n],s=``;for(let e=0;e<i.length;e++)r.actualHierarchy&&e===0?s+=(`""`+t.delimiter).repeat(o._level-1)+`"`+o[i[e]]+`"`+t.delimiter+(`""`+t.delimiter).repeat(r.maxLevel-o._level):s+=`"`+o[i[e]]+`"`+t.delimiter;s=s.slice(0,s.length-t.toRemove)+`
|
|
4
|
+
`,a+=s}if(!n)return a;let o=``+a;return this.downloadFile(o,t.MIME,n)}exportToHTML(e,t){let n=this,r=n.datafields,i=n.style,a=``,o=0,s=``;e=n.processGroupingInformation(e),n.data=e,n.exportHeader&&(a=n.getHTMLHeader(r,e),o=1),arguments[2]&&(s=`<script type="text/javascript" src="${Array.from(document.getElementsByTagName(`script`)).find((e=>e.src.indexOf(`html2canvas`)!==-1)).src}"><\/script>`);let c=`<!DOCTYPE html>\n<html>\n<head>\n <meta charset="UTF-8">\n <style type="text/css">\n${n.getRowStyle()}${n.getColumnStyle()}\n </style>${s}${n.toggleableFunctionality()}\n</head>\n<body>\n <table${n.getTableStyle()}>${a}\n <tbody>\n`,l={},u={},d=[];n.getMergedCellsInfo(l,u);e:for(let a=o;a<e.length;a++){let s=e[a],f=a-o,p=n.getAlternationIndex(f,` rowN`),m=``,h=``,g=``,_=0;if(n.actualHierarchy)s._collapsed&&(m=` collapsed`),h=` level="${s._level}"`;else if(n.groupBy)for(let e=0;e<n.groupBy.length;e++){let t=n.groupBy[e],r=s[t],i=n.groups[t][r];if(g+=r,d.indexOf(g)===-1){c+=` <tr class="row">\n <td class="column group" style="padding-left: ${25*_}px;" colspan="${n.datafields.length}">${i}</td>\n </tr>`,d.push(g),a--;continue e}_++}let v=` <tr class="row row${f}${p}${m}"${h}`;t||(v+=` style="page-break-inside: avoid;"`),v+=`>
|
|
5
|
+
`;for(let e=0;e<r.length;e++){let t=e+`,`+f,a=1,o=1;if(l[t])a=l[t].colspan,o=l[t].rowspan;else if(u[t])continue;let c=r[e],d=s[c],p=``;if(n.actualHierarchy&&e===0){let e=``;s._expanded?e=n.collapseChar:!1===s._expanded&&(e=n.expandChar),p=`<div class="toggle-element" style="margin-left: ${25*(s._level-1)+5}px;" expanded>${e}</div>`}d=n.getFormattedValue(d,c),typeof d==`string`&&(d.indexOf(`base64`)>=0||d.indexOf(`.png`)>=0||d.indexOf(`.jpeg`)>=0)&&(d=`<img height="30" src="${d}"/>`);let m=``;if(i&&i.columns&&i.columns[c]&&i.columns[c][f]){let e=i.columns[c][f];m+=`border-color: ${e.border}; background-color: ${e.background}; color: ${e.color};"`}e===0&&_>1&&(m+=`padding-left: ${25*(_-1)}px;"`),m&&=` style="${m}"`,v+=` <td class="column column${c}"${m} colspan="${a}" rowspan="${o}">${p+d}</td>\n`}c+=v+` </tr>
|
|
6
|
+
`}return c+=` </tbody>
|
|
7
|
+
</table>
|
|
8
|
+
</body>
|
|
9
|
+
</html>`,arguments[2]?c:this.downloadFile(c,`text/html`,t)}exportToImage(e,t,n,r){try{html2canvas}catch{throw Error(`smart-grid: Missing reference to 'html2canvas.min.js'.`)}let i=null,a=this.exportToHTML(e,t,!0),o=document.createElement(`iframe`);return o.style.position=`absolute`,o.style.top=0,o.style.left=0,o.style.border=`none`,o.style.width=`100%`,o.style.height=`100%`,o.style.opacity=0,o.style.pointerEvents=`none`,document.body.appendChild(o),o.contentDocument.write(a),function e(){o.contentDocument.body&&o.contentDocument.body.firstElementChild?o.contentWindow.html2canvas(o.contentDocument.body.firstElementChild).then((e=>{let a=new Smart.Utilities.Draw(document.createElement(`div`));i=e.toDataURL(`image/png`),r?r(i):(document.body.appendChild(e),a.exportImage(void 0,e,n,t)),o.remove(),e.remove()})):requestAnimationFrame(e)}(),i}getMergedCellsInfo(e,t,n){let r=this;if(!r.mergedCells)return;let i=n&&n[r.datafields.length-1]!==0;r.mergedCellsPDF=r.mergedCells.slice(0);for(let a=0;a<r.mergedCellsPDF.length;a++){let o=r.mergedCellsPDF[a],s=o.colspan,c=o.rowspan;if(c<2&&s<2)continue;let l=o.cell[1],u=o.cell[0];if(i&&s>1){let e=n[u],t=n[u+s-1],i=[];if(t>e){let a=e,o=u,d=0;e:for(let r=e;r<=t;r++){let e=o,t=0;for(;n[o]===a;)if(o++,d++,t++,d===s){i.push({start:e,span:t});break e}i.push({start:e,span:t}),a=n[o]}s=i[0].span;for(let e=1;e<i.length;e++)r.mergedCellsPDF.push({cell:[i[e].start,l],colspan:i[e].span,rowspan:c,originalCell:u})}}for(let n=u;n<u+s;n++)for(let r=l;r<l+c;r++){let i=n+`,`+r;n!==u||r!==l?t[i]=!0:e[i]={colspan:s,rowspan:c,originalCell:o.originalCell}}}}getAlternationIndex(e,t){if(!this.style)return``;let n=this.style.rows;return n&&n.alternationCount&&((n.alternationStart===void 0||e>=n.alternationStart)&&(n.alternationEnd===void 0||e<=n.alternationEnd)||n.alternationStart===n.alternationEnd)?t+e%n.alternationCount:``}getFormattedValue(e,t){let n=this,r=n.style;if(e===null)return n.allowNull?`null`:``;if(t&&r&&r.columns&&r.columns[t]&&r.columns[t].format){if(typeof e==`number`)return n.formatNumber(e,r.columns[t].format);if(e instanceof Date)return n.formatDate(e,r.columns[t].format)}else if(e instanceof Date)return n.formatDate(e,`d`);return e}exportToJSON(e,t){return this.downloadFile(JSON.stringify(e,this.datafields.concat(`rows`)),`application/json`,t)}exportToMD(e,t){let n=this.datafields,r=``;for(let t=0,i=e.length;t<i;t+=1)for(let i=0,a=n.length;i<a;i+=1){let a=e[t][n[i]];typeof a==`string`&&(r+=a)}return this.downloadFile(r,`application/text`,t)}exportToPDF(e,t){try{pdfMake}catch{throw Error(`Missing reference to 'pdfmake.min.js'.`)}let n,r=this,i=r.datafields,a=+r.exportHeader,o=[],s={},c={},l={},u=a?r.complexHeader?r.complexHeader.length:1:0,d={pageOrientation:r.pageOrientation||`portrait`},f=[],p=[];function m(){let e=[];for(let t=0;t<n.length;t++)e.push([]);return e}e=r.processGroupingInformation(e),r.data=e;let h=[];if(r.headerContent){let e=r.headerContent,t=[];for(let n=0;n<e.length;n++){let i=e[n].cells,a={};for(let e=0;e<r.datafields.length;e++){let t=r.datafields[e];i[t]?a[t]=i[t]:a[t]=null}t.push(a)}h=t}if(r.footerContent){let t=r.footerContent,n=[];for(let e=0;e<t.length;e++){let i=t[e].cells,a={};for(let e=0;e<r.datafields.length;e++){let t=r.datafields[e];i[t]?a[t]=i[t]:a[t]=null}n.push(a)}e=[...e,...n]}r.headerRows=u,r.getPDFStyle();let g=r.styleInfo;n=g?r.wrapPDFColumns(d,l):[{body:f,datafields:i}],a&&(f=r.getPDFHeader(i,n,l));let _=[];if(h.length>0)for(let e=0;e<h.length;e++){let t=h[e],o=m(),u=e-a,d=r.getAlternationIndex(u,``);for(let e=0;e<i.length;e++){let n=i[e],a={style:[`row`,`row`+u,`cell`,`cell`+n]},f=l[e]||0;if(d!==void 0&&a.style.splice(1,0,`rowN`+d),r.mergedCellsPDF){let t=e+`,`+u,n=s[t];if(n){if(a.colSpan=n.colspan,a.rowSpan=n.rowspan,n.originalCell!==void 0){a.text=``,a.style[a.style.length-1]=`cell`+i[n.originalCell],o[f].push(a);continue}}else if(c[t]){o[f].push({});continue}}let p=r.getFormattedValue(t[n],n);typeof p==`string`&&(p.indexOf(`base64`)>=0||p.indexOf(`.png`)>=0||p.indexOf(`.jpeg`)>=0)?(a.image=p,a.width=100):p&&Array.isArray(p)&&p[0]&&p[0].indexOf(`base64`)>=0?(a.image=p[0],a.width=100,g&&g.widths[e]&&(a.width=parseInt(g.widths[e],10)-10)):a.text=p.toString(),r.getUniqueStylePDF(a,n,u),r.setIndentation(a,{j:e,currentRecord:t,value:p,outlineLevel:0}),o[f].push(a)}for(let e=0;e<n.length;e++)_.push(o[e])}r.getMergedCellsInfo(s,c,l);e:for(let t=a;t<e.length;t++){let u=e[t],d=``,f=0;if(r.groupBy)for(let e=0;e<r.groupBy.length;e++){let i=r.groupBy[e],a=u[i],s=r.groups[i][a];if(d+=a,o.indexOf(d)===-1){r.createGroupHeaderRow(n,{text:s,style:[`row`,`cell`,`group`],marginLeft:7.5*f}),o.push(d),t--;continue e}f++}let p=m(),h=t-a,_=r.getAlternationIndex(h,``);for(let e=0;e<i.length;e++){let t=i[e],n={style:[`row`,`row`+h,`cell`,`cell`+t]},a=l[e]||0;if(_!==void 0&&n.style.splice(1,0,`rowN`+_),r.mergedCellsPDF){let t=e+`,`+h,r=s[t];if(r){if(n.colSpan=r.colspan,n.rowSpan=r.rowspan,r.originalCell!==void 0){n.text=``,n.style[n.style.length-1]=`cell`+i[r.originalCell],p[a].push(n);continue}}else if(c[t]){p[a].push({});continue}}let o=r.getFormattedValue(u[t],t);typeof o==`string`&&(o.indexOf(`base64`)>=0||o.indexOf(`.png`)>=0||o.indexOf(`.jpeg`)>=0)?(n.image=o,n.width=100):o&&Array.isArray(o)&&o[0]&&o[0].indexOf(`base64`)>=0?(n.image=o[0],n.width=100,g&&g.widths[e]&&(n.width=parseInt(g.widths[e],10)-10)):n.text=o.toString(),r.getUniqueStylePDF(n,t,h),r.setIndentation(n,{j:e,currentRecord:u,value:o,outlineLevel:f}),p[a].push(n)}for(let e=0;e<n.length;e++)n[e].body.push(p[e])}if(g){for(let e=0;e<n.length;e++){let t=n[e].body;for(let n=u-1;n>=0;n--)t.unshift(f[e][n]);if(_.length>0)for(let e=_.length-1;e>=0;e--)t.unshift(_[e]);p.push({table:{headerRows:u,widths:n[e].widths,heights:function(e){return g.heights[e]?g.heights[e]:g.defaultHeight?g.defaultHeight:void 0},body:t},pageBreak:`after`})}delete p[n.length-1].pageBreak,d.styles=g.styles}else{let e=n[0].body;for(let t=u-1;t>=0;t--)e.unshift(f[0][t]);if(_.length>0)for(let t=_.length-1;t>=0;t--)e.unshift(_[t]);p=[{table:{headerRows:u,body:e}}],d.styles={header:{bold:!0},group:{bold:!0}}}if(d.content=p,!t){let e=pdfMake.createPdf(d);return delete r.mergedCellsPDF,delete r.styleInfo,e}pdfMake.createPdf(d).download(t),delete r.mergedCellsPDF,delete r.styleInfo}getPDFStyle(){let e=this,t=e.style;if(!t)return``;let n=e.data[0],r=t.header,i=t.columns,a=t.rows,o={heights:[],widths:Array(e.datafields.length).fill(`*`),styles:{header:{},row:{},cell:{},group:{fillColor:`#FFFFFF`,color:`#000000`,bold:!0}}};function s(t,r){if(t){for(let i in t)if(Object.prototype.hasOwnProperty.call(t,i))if(n[i]===void 0)if(i===`height`&&r===`header`)for(let n=0;n<e.headerRows;n++)o.heights[n]=parseInt(t[i],10)/e.headerRows/1.4;else e.storePDFStyle({prop:i,value:t[i],toUpdate:r});else for(let n in t[i]){if(!isNaN(n)||!Object.prototype.hasOwnProperty.call(t[i],n))continue;let a=t[i][n],s=e.datafields.indexOf(i);n===`width`&&o.widths[s]===`*`?o.widths[s]=a:e.storePDFStyle({prop:n,value:a,toUpdate:r+i})}}}if(e.styleInfo=o,s(r,`header`),s(i,`cell`),a){for(let t in a){if(!Object.prototype.hasOwnProperty.call(a,t)||t.indexOf(`alt`)!==-1)continue;let n=a[t];if(isNaN(t))t===`height`?o.defaultHeight=parseFloat(n)/1.4:e.storePDFStyle({prop:t,value:n,toUpdate:`row`});else for(let r in n)Object.prototype.hasOwnProperty.call(n,r)&&(r===`height`?o.heights[parseFloat(t)+e.headerRows]=parseFloat(n[r])/1.4:e.storePDFStyle({prop:r,value:n[r],toUpdate:`row`+t}))}if(a.alternationCount)for(let e=0;e<a.alternationCount;e++){let t={};a[`alternationIndex${e}Color`]&&(t.color=a[`alternationIndex${e}Color`]),a[`alternationIndex${e}BackgroundColor`]&&(t.fillColor=a[`alternationIndex${e}BackgroundColor`]),o.styles[`rowN`+e]=t}}}storePDFStyle(e){let t=this,n=t.styleInfo.styles[e.toUpdate];n||(n={},t.styleInfo.styles[e.toUpdate]=n);let r=e.value;switch(e.prop){case`backgroundColor`:n.fillColor=r;break;case`color`:n.color=r;break;case`fontSize`:n.fontSize=parseFloat(r);break;case`fontStyle`:r===`italic`&&(n.italics=!0);break;case`fontWeight`:r===`bold`&&(n.bold=!0);break;case`textAlign`:n.alignment=r}}wrapPDFColumns(e,t){let n=this,r=this.styleInfo,i=e.pageOrientation===`portrait`?655:1155,a=[],o=0;for(let e=0;e<r.widths.length;e++){let s,c=r.widths[e];if(c===`*`?s=i/6:typeof c==`string`&&c.indexOf(`%`)!==-1?(s=Math.min(i,Math.floor(parseFloat(c)/100*i)),s===i&&(c=`*`)):(c=parseFloat(c),c>=i?(s=i,c=`*`):(s=c,c/=1.4)),a[o]===void 0){a[o]={body:[],width:s,widths:[c],datafields:[n.datafields[e]]},t[e]=o;continue}let l=a[o];l.width+s>i?(o++,e--):(t[e]=o,l.width+=s,l.widths.push(c),l.datafields.push(n.datafields[e]))}return a}getPDFHeader(e,t,n){let r=this,i=[],a=r.headerRows,o=[],s=[],c,l,u=[];r.complexHeader?(c=r.complexHeader,l=r.complexDataFieldsHeader):(c=[Object.values(r.data[0])],l=c);for(let e=0;e<a;e++){let t=c[e],r=l[e];for(let i=0;i<t.length;i++){let a=n[i]||0;o[a]||(o[a]=[],s[a]=[]),o[a][e]||(o[a][e]=[],s[a][e]=[]),o[a][e].push(t[i]),s[a][e].push(r[i])}}function d(e,t,n,r){for(let i=0;i<a;i++){let o=e[i],s=t[i],c=[];for(let e=0;e<o.length;e++){let n=s[e],l=1,u=1;if(s[e-1]&&s[e-1]===n||t[i-1]&&t[i-1][e]===n){c.push({});continue}let d=e+1;for(;s[d]&&s[d]===s[d-1];)l++,d++;for(d=i+1;t[d]&&t[d][e]===n;)u++,d++;let f=i===a-1||u+i===a?r.datafields[e]:null,p={text:o[e],colSpan:l,rowSpan:u};f?p.style=[`header`,`header`+f]:(p.alignment=`center`,p.style=`header`),c.push(p)}n.push(c)}}for(let e=0;e<t.length;e++)u=[],d(o[e],s[e],u,t[e]),i.push(u);return i}createGroupHeaderRow(e,t){for(let n=0;n<e.length;n++){let r=Object.assign({},t),i=e[n].datafields.length,a=[r];r.colSpan=i,a.length=i,a.fill({},1,i-1),e[n].body.push(a)}}getUniqueStylePDF(e,t,n){let r=this.style;if(!r||!r.columns||!r.columns[t])return;let i=r.columns[t][n];i&&(e.fillColor=function(e){let t=/rgba\((\d+),(\d+),(\d+)\,(\d*.\d+|\d+)\)/gi.exec(e.replace(/\s/g,``));if(t===null)return e;let n=parseFloat(t[1]).toString(16).toUpperCase(),r=parseFloat(t[2]).toString(16).toUpperCase(),i=parseFloat(t[3]).toString(16).toUpperCase();return`#`+`0`.repeat(2-n.length)+n+`0`.repeat(2-r.length)+r+`0`.repeat(2-i.length)+i}(i.background),e.color=i.color.toLowerCase())}setIndentation(e,t){if(t.j!==0)return;let n=this;if(n.actualHierarchy){let r=t.currentRecord;r._expanded===void 0?e.marginLeft=25*(r._level-1)+6:(e.marginLeft=25*(r._level-1),e.text=n.collapseChar+` `+t.value)}else t.outlineLevel>1&&(e.marginLeft=7.5*(t.outlineLevel-1))}addBodyImageToMap(e,t,n,r){let{row:i,column:a}=e.position||{},o=e;r&&(t===null||n===null||i&&a||(e.position||={},e.position=Object.assign({},e.position,{row:t,column:r.indexOf(n)+1})),o.totalWidth=o.width,o.totalHeight=o.height),this.buildImageMap({imageToAdd:o,idx:1});let s=this.worksheetImageIds.get(1);s||(s=new Map,this.worksheetImageIds.set(1,s));let c=this.worksheetImages.get(1);c?c.push(o):this.worksheetImages.set(1,[o]),s.get(e.id)||s.set(e.id,{index:s.size,type:e.imageType})}buildImageMap(e){let{imageToAdd:t,idx:n}=e,r=this.images.get(t.id);if(r){let e=r.find((e=>e.sheetId===n));e?e.image.push(t):r.push({sheetId:n,image:[t]})}else this.images.set(t.id,[{sheetId:n,image:[t]}]),this.workbookImageIds.set(t.id,{type:t.imageType,index:this.workbookImageIds.size})}createXmlPart(e,t){let r=n.createHeader({encoding:`UTF-8`,standalone:`yes`}),i=n.createXml(e);return t?i:`${r}${i}`}generateWorksheetImages(e,t,n){let r=this;this.images=new Map,this.worksheetImages=new Map,this.worksheetHeaderFooterImages=new Map,this.workbookImageIds=new Map,this.worksheetImageIds=new Map;let i=0,a=0,o=0;if(r.addImageToCell){for(let e=1+(r.headerContent?r.headerContent.length:0);e<n.length;e++){let t=n[e];for(let n=0;n<r.datafields.length;n++){let i=r.datafields[n],a=t[i];if(a&&Array.isArray(a)){for(let n=0;n<a.length;n++){let s=r.addImageToCell(e+ o++,i,a[n],a,t,n);s&&(t[i]=``,this.addBodyImageToMap(s.image,1+e,i,r.datafields))}continue}let s=r.addImageToCell(e+ o++,i,a,a,t,0);s&&(t[i]=``,s.value&&s.value!==a&&(t[i]=s.value),this.addBodyImageToMap(s.image,1+e,i,r.datafields))}}if(r.headerContent)for(let e=0;e<r.headerContent.length;e++){let t=n[e];for(let n=0;n<r.datafields.length;n++){let i=r.datafields[n],a=t[i],o=r.addImageToCell(e+1,i,a,a,t,0);o&&(t[i]=``,this.addBodyImageToMap(o.image,1+e,i,r.datafields))}}this.images.forEach((t=>{let{base64:n,imageType:r}=t[0].image[0],i=r===`jpg`?`jpeg`:r,o=(e,t)=>{e||=``;let n=atob(e),r=Array(n.length);for(let e=0;e<n.length;e++)r[e]=n.charCodeAt(e);let i=new Uint8Array(r);return new Blob([i],{type:t})},s;s=o(n&&Array.isArray(n)?n[0].split(`,`)[1]:n.split(`,`)[1],`image/`+i),e.file(`xl/media/image${++a}.${i}`,s,!0)}))}let s=0;var c=e=>Math.ceil(9525*e),l=(e,t,n,r)=>({name:`xdr:pic`,children:[p(e,t+1),u(e,n+1),d(e,r)]}),u=(e,t)=>{let n;if(e.transparency){let t=Math.min(Math.max(e.transparency,0),100);n=[{name:`a:alphaModFix`,properties:{rawMap:{amt:1e5-Math.round(1e3*t)}}}]}if(e.recolor)switch(n||=[],e.recolor.toLocaleLowerCase()){case`grayscale`:n.push({name:`a:grayscl`});break;case`sepia`:n.push(getDuoTone({color:`black`},{color:`D9C3A5`,tint:50,saturation:180}));break;case`washout`:n.push({name:`a:lum`,properties:{rawMap:{bright:`70000`,contrast:`-70000`}}})}return{name:`xdr:blipFill`,children:[{name:`a:blip`,properties:{rawMap:{cstate:`print`,"r:embed":`rId${t}`,"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`}},children:n},{name:`a:stretch`,children:[{name:`a:fillRect`}]}]}},d=(e,t)=>{let n={name:`a:xfrm`,children:[{name:`a:off`,properties:{rawMap:{x:0,y:0}}},{name:`a:ext`,properties:{rawMap:{cx:t.width,cy:t.height}}}]};if(e.rotation){let t=e.rotation;n.properties={rawMap:{rot:6e4*Math.min(Math.max(t,0),360)}}}return{name:`xdr:spPr`,children:[n,{name:`a:prstGeom`,properties:{rawMap:{prst:`rect`}},children:[{name:`a:avLst`}]}]}},f=e=>{let t=[{name:`a:ext`,properties:{rawMap:{uri:`{FF2B5EF4-FFF2-40B4-BE49-F238E27FC236}`}},children:[{name:`a16:creationId`,properties:{rawMap:{id:`{822E6D20-D7BC-2841-A643-D49A6EF008A2}`,"xmlns:a16":`http://schemas.microsoft.com/office/drawing/2014/main`}}}]}];switch(e.recolor&&e.recolor.toLowerCase()){case`grayscale`:case`sepia`:case`washout`:t.push({name:`a:ext`,properties:{rawMap:{uri:`{C183D7F6-B498-43B3-948B-1728B52AA6E4}`}},children:[{name:`adec:decorative`,properties:{rawMap:{val:`0`,"xmlns:adec":`http://schemas.microsoft.com/office/drawing/2017/decorative`}}}]})}return{name:`a:extLst`,children:t}},p=(e,t)=>({name:`xdr:nvPicPr`,children:[{name:`xdr:cNvPr`,properties:{rawMap:{id:t,name:e.id,descr:e.altText==null?void 0:e.altText}},children:[f(e)]},{name:`xdr:cNvPicPr`,properties:{rawMap:{preferRelativeResize:`0`}},children:[{name:`a:picLocks`}]}]}),m=(e,t)=>({name:`xdr:${e}`,children:[{name:`xdr:col`,textNode:t.col.toString()},{name:`xdr:colOff`,textNode:t.offsetX.toString()},{name:`xdr:row`,textNode:t.row.toString()},{name:`xdr:rowOff`,textNode:t.offsetY.toString()}]}),h={getTemplate(e){let{sheetIndex:t}=e,n=r.worksheetImages.get(t),i=r.worksheetImageIds.get(t);return{name:`xdr:wsDr`,properties:{rawMap:{"xmlns:xdr":`http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing`,"xmlns:a":`http://schemas.openxmlformats.org/drawingml/2006/main`}},children:n.map(((e,t)=>{let n=(e=>{e.fitCell=!!e.fitCell||!e.width||!e.height;let{position:t={},fitCell:n,width:r=0,height:i=0,totalHeight:a,totalWidth:o}=e,{offsetX:s=0,offsetY:l=0,row:u=1,rowSpan:d=1,column:f=1,colSpan:p=1}=t;return{from:{row:u-1,col:f-1,offsetX:c(s),offsetY:c(l)},to:{row:u-1+(n?1:d-1),col:f-1+(n?1:p-1),offsetX:c(r+s),offsetY:c(i+l)},height:c(a||i),width:c(o||r)}})(e);return{name:`xdr:twoCellAnchor`,properties:{rawMap:{editAs:`absolute`}},children:[m(`from`,n.from),m(`to`,n.to),l(e,t,i.get(e.id).index,n),{name:`xdr:clientData`}]}}))}}};let g=e=>this.createXmlPart(h.getTemplate({sheetIndex:e}));var _={getTemplate(e){let{Id:t,Type:n,Target:r}=e;return{name:`Relationship`,properties:{rawMap:{Id:t,Type:n,Target:r}}}}},v={getTemplate:e=>({name:`Relationships`,properties:{rawMap:{xmlns:`http://schemas.openxmlformats.org/package/2006/relationships`}},children:e.map((e=>_.getTemplate(e)))})},y=v;let b=e=>{let t=this.worksheetImageIds.get(e)||[],n=[];for(let[e,r]of t)n.push({Id:`rId${r.index+1}`,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/image`,Target:`../media/image${this.workbookImageIds.get(e).index+1}.${r.type}`});return this.createXmlPart(v.getTemplate(n))};var x=(t,n)=>{let r=`xl/drawings/drawing${n+1}.xml`,i=`xl/drawings/_rels/drawing${n+1}.xml.rels`;e.file(i,b(t)),e.file(r,g(t))};for(let e=1;e<n.length;e++)this.worksheetImages.has(e)&&(x(e,s),i=s,s++);var S=+!!this.exportAsTable;e.file(`xl/worksheets/_rels/sheet1.xml.rels`,(({drawingIndex:e,tableIndex:t}={})=>{if(e===void 0&&t===void 0)return``;let n=[];e!==null&&a>0&&n.push({Id:`rId${n.length+1}`,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing`,Target:`../drawings/drawing${e+1}.xml`}),t!==null&&n.push({Id:`rId${n.length+1}`,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/table`,Target:`../tables/table1.xml`});let r=y.getTemplate(n);return this.createXmlPart(r)})({tableIndex:S,drawingIndex:i}))}exportToXLSX(e,t,n){try{JSZip}catch{throw Error(`Missing reference to 'jszip.min.js'.`)}let r=this,i=r.style;if(e=r.processGroupingInformation(e,!0),r.data=e,r.getColumnsArray(),r.complexHeaderMergedCells=[],r.complexHeaderMergeInfo){for(let e in r.complexHeaderMergeInfo)if(Object.prototype.hasOwnProperty.call(r.complexHeaderMergeInfo,e)){let t=r.complexHeaderMergeInfo[e];if(t.from[0]===t.to[0]&&t.from[1]===t.to[1])continue;r.complexHeaderMergedCells.push({from:r.columnsArray[t.from[1]]+(t.from[0]+1),to:r.columnsArray[t.to[1]]+(t.to[0]+1)})}}r.getConditionalFormatting(),i||=r.generateDefaultStyle(e);let a=new JSZip,o=a.folder(`_rels`),s=a.folder(`docProps`),c=a.folder(`xl`);if(r.headerContent){let t=r.headerContent,n=[];for(let e=0;e<t.length;e++){let i=t[e].cells,a={};for(let e=0;e<r.datafields.length;e++){let t=r.datafields[e];i[t]?a[t]=i[t]:a[t]=null}n.push(a)}e=[...n,...e]}if(r.footerContent){let t=r.footerContent,n=[];for(let e=0;e<t.length;e++){let i=t[e].cells,a={};for(let e=0;e<r.datafields.length;e++){let t=r.datafields[e];i[t]?a[t]=i[t]:a[t]=null}n.push(a)}e=[...e,...n]}this.generateWorksheetImages(a,c,e);let l=r.generateSharedStrings(e),u=l.collection,d=l.xml,f=r.generateStyles(i),p=r.groupBy?r.generateSheet1WithGrouping(e,u):r.generateSheet1(e,u,r.datafields,r.columnsArray),m=r.generateAuxiliaryFiles(),h=!1,g=this.worksheetImages.get(1);g&&g.length&&(h=!0);let _=c.folder(`_rels`),v=c.folder(`theme`),y=c.folder(`worksheets`);if(h&&(c.folder(`media`),c.folder(`drawings`),c.folder(`drawings/_rels`)),o.file(`.rels`,m._relsRels),s.file(`app.xml`,m.docPropsAppXml),s.file(`core.xml`,m.docPropsCoreXml),_.file(`workbook.xml.rels`,m.xl_relsWorkbookXmlRels),v.file(`theme1.xml`,m.xlThemeTheme1Xml),y.file(`sheet1.xml`,p),c.file(`sharedStrings.xml`,d),c.file(`styles.xml`,f),c.file(`workbook.xml`,m.xlWorkbookXml),a.file(`[Content_Types].xml`,m.Content_TypesXml),this.spreadsheets){let e=2;for(let t=0;t<this.spreadsheets.length;t++){let n=this.spreadsheets[t],i=n.dataFields,a=[...n.dataSource],o=[];for(let e=0;e<n.columns.length;e++){let t=n.columns[e];typeof t==`string`?o[t]=t:o[t.dataField]=t.label}a.splice(0,0,o);let s=r.generateSheet1(a,u,i,r.getColumnsArrayFromDataFields(i),e);y.file(`sheet`+ e+++`.xml`,s)}}if(this.exportAsTable){let t=Object.values(r.data[0]),n=r.groupBy&&r.groupBy.length?r.groupDimensionEnd:r.columnsArray[r.columnsArray.length-1]+(e.length-1),i=`<table xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision" xmlns:xr3="http://schemas.microsoft.com/office/spreadsheetml/2016/revision3" mc:Ignorable="xr xr3" id="1" name="Table1" displayName="Table1" ref="A${this.xlsxStartIndex}:${n}" totalsRowShown="0">\n<autoFilter ref="A${this.xlsxStartIndex}:${n}">`;for(let e=0;e<t.length;e++)i+=`<filterColumn colId="${e}" hiddenButton="0"/>\n`;i+=`</autoFilter>`;let a=`\n<tableColumns count="${t.length}">`;for(let e=0;e<t.length;e++)a+=`<tableColumn id="${e+1}" name="${t[e]}" dataCellStyle="Normal"/>\n`;a+=`
|
|
10
|
+
</tableColumns>`,i+=a,i+=`
|
|
11
|
+
<tableStyleInfo name="TableStyleLight1" showFirstColumn="0" showLastColumn="0" showRowStripes="1" showColumnStripes="0"/>
|
|
12
|
+
</table>`,c.folder(`tables`).file(`table1.xml`,i)}a.generateAsync({type:`blob`,mimeType:`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`}).then((function(e){return!t&&n&&n(e),r.downloadFile(e,`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`,t)})),delete r.conditionalFormattingXLSX,delete r.complexHeaderMergeInfo,delete r.defaultRowHeight,delete r.rowHeight}processGroupingInformation(e,t){let n=this;if(!n.groupBy)return e;let r;if(e=e.slice(0),n.exportHeader&&(t&&n.complexHeader?(r=e.slice(0,n.complexHeader.length),e.splice(0,n.complexHeader.length)):(r=[e[0]],e.splice(0,1))),e.length>1){let t=function(e,t){let n;switch(t||typeof e){case`string`:n=new Intl.Collator().compare;break;case`number`:n=function(e,t){return e-t};break;case`boolean`:case`bool`:n=function(e,t){return e===t?0:!1===e?-1:1};break;case`date`:case`time`:case`dateTime`:e instanceof Date?n=function(e,t){return e.getTime()-t.getTime()}:(e instanceof Smart.Utilities.DateTime||e instanceof Smart.Utilities.BigNumber)&&(n=function(e,t){return e.compare(t)});break;case`object`:if(e instanceof Date)n=function(e,t){return e.getTime()-t.getTime()};else if(e instanceof Smart.Utilities.DateTime||e instanceof Smart.Utilities.BigNumber)n=function(e,t){return e.compare(t)};else if(e instanceof Smart.Utilities.Complex||window.NIComplex&&e instanceof window.NIComplex){let e=new Smart.Utilities.ComplexNumericProcessor;n=function(t,n){return e.compareComplexNumbers(t,n)}}}return n};(function(e,n,r,i){if(!e||!Array.isArray(e)||e.length===0||!n||Array.isArray(n)&&n.length===0)return;typeof n==`string`&&(n=[n]);let a=[],o=[];r===void 0&&(r=[]);for(let i=0;i<n.length;i++)r[i]===void 0||r[i]===`asc`||r[i]===`ascending`?a[i]=1:a[i]=-1,o[i]=t(e[0][n[i]]);i?i(e,n,r,o):e.sort((function(e,t){for(let r=0;r<n.length;r++){let i=o[r](e[n[r]],t[n[r]]);if(i===0){if(n[r+1])continue;return e._index===void 0?0:(e._index-t._index)*a[r]}return i*a[r]}}))})(e,n.groupBy)}return r&&(e=r.concat(e)),n.getGroupLabels(e),e}exportToXML(e,t){let n=this.datafields.slice(0),r=`<?xml version="1.0" encoding="UTF-8" ?>
|
|
13
|
+
<table>
|
|
14
|
+
`;return n.indexOf(`rows`)===-1&&n.push(`rows`),r+=function e(t,r){let i=``;for(let a=0;a<t.length;a++){let o=t[a];i+=r+`<row>
|
|
15
|
+
`;for(let t=0;t<n.length;t++){let a=n[t];if(a!==`rows`)i+=r+` <${a}>${o[a]}</${a}>\n`;else{if(!o.rows)continue;i+=`${r} <rows>\n${e(o.rows,r+` `)}${r} </rows>\n`}}i+=r+`</row>
|
|
16
|
+
`}return i}(e,` `)+`</table>`,t?this.downloadFile(r,`application/xml`,t):r}formatDate(e,t){if(!Smart.Utilities.DateTime)return e;try{return new Smart.Utilities.DateTime(e).toString(t)}catch{return e}}formatNumber(e,t){if(!Smart.Utilities.NumberRenderer)return e;let n=new Smart.Utilities.NumberRenderer().formatNumber(e,t);return n===void 0?e:n}generateAuxiliaryFiles(){let e=new Date().toISOString(),t=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<cp:coreProperties xmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core-properties" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:dcmitype="http://purl.org/dc/dcmitype/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><dc:creator>Smart HTML Elements</dc:creator><cp:lastModifiedBy>Smart HTML Elements</cp:lastModifiedBy><dcterms:created xsi:type="dcterms:W3CDTF">${e}</dcterms:created><dcterms:modified xsi:type="dcterms:W3CDTF">${e}</dcterms:modified></cp:coreProperties>`,n=`<Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet" Target="worksheets/sheet1.xml"/>`,r=1;if(this.spreadsheets)for(let e=0;e<this.spreadsheets.length;e++){let t=2+e;r++,n+=`<Relationship Id="rId${t}" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet" Target="worksheets/sheet${t}.xml"/>`}let i=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">${n}<Relationship Id="rId${++r}" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme" Target="theme/theme1.xml"/><Relationship Id="rId${++r}" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml"/><Relationship Id="rId${++r}" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings" Target="sharedStrings.xml"/></Relationships>`,a=`<sheet name="Sheet1" sheetId="1" r:id="rId1"/>`;if(this.spreadsheets)for(let e=0;e<this.spreadsheets.length;e++){let t=2+e;a+=`<sheet name="${this.spreadsheets[e].label}" sheetId="${t}" r:id="rId${t}"/>`}let o=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<workbook xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x15 xr xr6 xr10 xr2" xmlns:x15="http://schemas.microsoft.com/office/spreadsheetml/2010/11/main" xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision" xmlns:xr6="http://schemas.microsoft.com/office/spreadsheetml/2016/revision6" xmlns:xr10="http://schemas.microsoft.com/office/spreadsheetml/2016/revision10" xmlns:xr2="http://schemas.microsoft.com/office/spreadsheetml/2015/revision2"><fileVersion appName="xl" lastEdited="7" lowestEdited="7" rupBuild="20325"/><workbookPr defaultThemeVersion="166925"/><mc:AlternateContent xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"><mc:Choice Requires="x15"><x15ac:absPath url="C:UsersjqwidgetsDesktop" xmlns:x15ac="http://schemas.microsoft.com/office/spreadsheetml/2010/11/ac"/></mc:Choice></mc:AlternateContent><xr:revisionPtr revIDLastSave="0" documentId="13_ncr:1_{0DEDCB6D-5403-4CD8-AAA5-59B6D238A8B6}" xr6:coauthVersionLast="34" xr6:coauthVersionMax="34" xr10:uidLastSave="{00000000-0000-0000-0000-000000000000}"/><bookViews><workbookView xWindow="0" yWindow="0" windowWidth="19200" windowHeight="6950" xr2:uid="{0CB664E6-3800-4A88-B158-B46A682E7484}"/></bookViews><sheets>${a}</sheets><calcPr calcId="179021"/><extLst><ext uri="{140A7094-0E35-4892-8432-C4D2E57EDEB5}" xmlns:x15="http://schemas.microsoft.com/office/spreadsheetml/2010/11/main"><x15:workbookPr chartTrackingRefBase="1"/></ext></extLst></workbook>`,s=this.worksheetImages.get(1),c=``;s&&s.length&&(c=`<Override PartName="/xl/drawings/drawing1.xml" ContentType="application/vnd.openxmlformats-officedocument.drawing+xml"/>`);let l=``;this.exportAsTable&&(l=`<Override PartName="/xl/tables/table1.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml"/>`);let u=`<Override PartName = "/xl/worksheets/sheet1.xml" ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml" />`;if(this.spreadsheets)for(let e=0;e<this.spreadsheets.length;e++)u+=`<Override PartName = "/xl/worksheets/sheet${e+2}.xml" ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml" />`;return{_relsRels:`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
17
|
+
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties" Target="docProps/app.xml"/><Relationship Id="rId2" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties" Target="docProps/core.xml"/><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="xl/workbook.xml"/></Relationships>`,docPropsAppXml:`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
18
|
+
<Properties xmlns="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties" xmlns:vt="http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes"><Application>Microsoft Excel</Application><DocSecurity>0</DocSecurity><ScaleCrop>false</ScaleCrop><HeadingPairs><vt:vector size="2" baseType="variant"><vt:variant><vt:lpstr>Worksheets</vt:lpstr></vt:variant><vt:variant><vt:i4>1</vt:i4></vt:variant></vt:vector></HeadingPairs><TitlesOfParts><vt:vector size="1" baseType="lpstr"><vt:lpstr>Sheet1</vt:lpstr></vt:vector></TitlesOfParts><Company></Company><LinksUpToDate>false</LinksUpToDate><SharedDoc>false</SharedDoc><HyperlinksChanged>false</HyperlinksChanged><AppVersion>16.0300</AppVersion></Properties>`,docPropsCoreXml:t,xl_relsWorkbookXmlRels:i,xlThemeTheme1Xml:`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
19
|
+
<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"><a:themeElements><a:clrScheme name="Office"><a:dk1><a:sysClr val="windowText" lastClr="000000"/></a:dk1><a:lt1><a:sysClr val="window" lastClr="FFFFFF"/></a:lt1><a:dk2><a:srgbClr val="44546A"/></a:dk2><a:lt2><a:srgbClr val="E7E6E6"/></a:lt2><a:accent1><a:srgbClr val="4472C4"/></a:accent1><a:accent2><a:srgbClr val="ED7D31"/></a:accent2><a:accent3><a:srgbClr val="A5A5A5"/></a:accent3><a:accent4><a:srgbClr val="FFC000"/></a:accent4><a:accent5><a:srgbClr val="5B9BD5"/></a:accent5><a:accent6><a:srgbClr val="70AD47"/></a:accent6><a:hlink><a:srgbClr val="0563C1"/></a:hlink><a:folHlink><a:srgbClr val="954F72"/></a:folHlink></a:clrScheme><a:fontScheme name="Office"><a:majorFont><a:latin typeface="Calibri Light" panose="020F0302020204030204"/><a:ea typeface=""/><a:cs typeface=""/></a:majorFont><a:minorFont><a:latin typeface="Calibri" panose="020F0502020204030204"/><a:ea typeface=""/><a:cs typeface=""/></a:minorFont></a:fontScheme><a:fmtScheme name="Office"><a:fillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:lumMod val="110000"/><a:satMod val="105000"/><a:tint val="67000"/></a:schemeClr></a:gs><a:gs pos="50000"><a:schemeClr val="phClr"><a:lumMod val="105000"/><a:satMod val="103000"/><a:tint val="73000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:lumMod val="105000"/><a:satMod val="109000"/><a:tint val="81000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="5400000" scaled="0"/></a:gradFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:satMod val="103000"/><a:lumMod val="102000"/><a:tint val="94000"/></a:schemeClr></a:gs><a:gs pos="50000"><a:schemeClr val="phClr"><a:satMod val="110000"/><a:lumMod val="100000"/><a:shade val="100000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:lumMod val="99000"/><a:satMod val="120000"/><a:shade val="78000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="5400000" scaled="0"/></a:gradFill></a:fillStyleLst><a:lnStyleLst><a:ln w="6350" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/><a:miter lim="800000"/></a:ln><a:ln w="12700" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/><a:miter lim="800000"/></a:ln><a:ln w="19050" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/><a:miter lim="800000"/></a:ln></a:lnStyleLst><a:effectStyleLst><a:effectStyle><a:effectLst/></a:effectStyle><a:effectStyle><a:effectLst/></a:effectStyle><a:effectStyle><a:effectLst><a:outerShdw blurRad="57150" dist="19050" dir="5400000" algn="ctr" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="63000"/></a:srgbClr></a:outerShdw></a:effectLst></a:effectStyle></a:effectStyleLst><a:bgFillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:solidFill><a:schemeClr val="phClr"><a:tint val="95000"/><a:satMod val="170000"/></a:schemeClr></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="93000"/><a:satMod val="150000"/><a:shade val="98000"/><a:lumMod val="102000"/></a:schemeClr></a:gs><a:gs pos="50000"><a:schemeClr val="phClr"><a:tint val="98000"/><a:satMod val="130000"/><a:shade val="90000"/><a:lumMod val="103000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="63000"/><a:satMod val="120000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="5400000" scaled="0"/></a:gradFill></a:bgFillStyleLst></a:fmtScheme></a:themeElements><a:objectDefaults/><a:extraClrSchemeLst/><a:extLst><a:ext uri="{05A4C25C-085E-4340-85A3-A5531E510DB2}"><thm15:themeFamily xmlns:thm15="http://schemas.microsoft.com/office/thememl/2012/main" name="Office Theme" id="{62F939B6-93AF-4DB8-9C6B-D6C7DFDC589F}" vid="{4A3C46E8-61CC-4603-A589-7422A47A8E4A}"/></a:ext></a:extLst></a:theme>`,xlWorkbookXml:o,Content_TypesXml:`<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types"><Default Extension="bin" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings"/><Default Extension="jpeg" ContentType="image/jpeg"/><Default Extension="png" ContentType="image/png"/><Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/><Default Extension="xml" ContentType="application/xml"/><Override PartName="/xl/workbook.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"/>${u}<Override PartName="/xl/theme/theme1.xml" ContentType="application/vnd.openxmlformats-officedocument.theme+xml"/><Override PartName="/xl/styles.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml"/><Override PartName="/xl/sharedStrings.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml"/>${l}${c}<Override PartName="/docProps/core.xml" ContentType="application/vnd.openxmlformats-package.core-properties+xml"/><Override PartName="/docProps/app.xml" ContentType="application/vnd.openxmlformats-officedocument.extended-properties+xml"/></Types>`}}generateDefaultStyle(e){let t=this,n={},r=t.datafields,i=t.complexHeader?e[t.complexHeader.length]:e[+t.exportHeader];if(!i)return n;for(let e=0;e<r.length;e++)i[r[e]]instanceof Date&&(n.columns||=[],n.columns[r[e]]={format:`d`});return n}generateGroupRow(e){let t=e.rowNumber,n=`A`+t,r=` <row r="${t}" outlineLevel="${e.outlineLevel}" spans="1:${e.numberOfColumns}"${this.getCustomRowHeight(t-1)} x14ac:dyDescent="0.45">\n <c r="${n}" t="s" s="0">\n <v>${e.sharedStringIndex}</v>\n </c>\n </row>\n`;return e.mergedCells.push({from:n,to:this.columnsArray[e.numberOfColumns-1]+t}),r}generateSharedStrings(e){let t=this,n=t.datafields,r=[],i=``,a=0,o=0;function s(e){a++,r.indexOf(e)===-1&&(o++,r.push(e),e=(e=(e=(e=(e=e.replace(/&(?!amp;)/g,`&`)).replace(/'/g,`'`)).replace(/"/g,`"`)).replace(/>/g,`>`)).replace(/</g,`<`),i+=`<si><t>${e}</t></si>`)}let c=(e,n)=>{for(let r=0;r<e.length;r++){let i=e[r];for(let e=0;e<n.length;e++){let r=i[n[e]];r!==null||t.allowNull||(r=``),typeof r==`string`&&s(r)}}};if(c(e,n),t.spreadsheets)for(let e=0;e<t.spreadsheets.length;e++){let n=t.spreadsheets[e],r=n.dataFields,i=[...n.dataSource],a=[];for(let e=0;e<n.columns.length;e++){let t=n.columns[e];typeof t==`string`?a[t]=t:a[t.dataField]=t.label}i.splice(0,0,a),c(i,r)}if(t.groupLabels)for(let e=0;e<t.groupLabels.length;e++)s(t.groupLabels[e]);return i=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<sst xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" count="${a}" uniqueCount="${o}">${i}</sst>`,{collection:r,xml:i}}generateSheet1(e,t,n,r,i){let a=this,o=r.length,s=e.length,c=r[o-1]+s,l=a.getFilters(),u=[].concat(a.complexHeaderMergedCells),d=0,f=a.freezeHeader?`<sheetView rightToLeft="0" workbookViewId="0">\n <pane state="frozen" topLeftCell="A${a.xlsxStartIndex+1}" ySplit="${a.xlsxStartIndex}"/>\n </sheetView>`:``,p=a.getCustomColumnWidths(r);if(i>1){let e=`<cols>`;for(let t=0;t<r.length;t++)e+=`<col min="1" max="1" width="25" hidden="0" bestFit="0" customWidth="1"/>`;e+=`</cols>`,p=e}let m=a.protectSheet?`<sheetProtection sheet="1"/>`:``;a.protectSheet&&a.protectSheet.password&&(m=`<sheetProtection sheet="1" password="${function(e){let t=e.length;if(!t)return``;let n=Array(t+1);n[0]=t;for(let r=1;r<=t;r++)n[r]=255&e.charCodeAt(r-1);let r=0;for(let e=n.length-1;e>=0;e--)r=((16384&r?1:0)|r<<1&32767)^n[e];return(52811^r).toString(16).toUpperCase().padStart(4,`0`)}(a.protectSheet.password)}"/>`);let h=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac xr xr2 xr3" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac" xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision" xmlns:xr2="http://schemas.microsoft.com/office/spreadsheetml/2015/revision2" xmlns:xr3="http://schemas.microsoft.com/office/spreadsheetml/2016/revision3" xr:uid="{7F25248B-C640-4C64-AD47-C0EA0E5D90D0}">\n <sheetPr filterMode="${l!==``}" />\n <dimension ref="A1:${c}" />\n <sheetViews>\n <sheetView ${i<=1?`tabSelected="1"`:``} workbookViewId="0" />\n ${a.freezeColumnsCount>0?`\n<sheetView rightToLeft="0" workbookViewId="0">\n<pane state="frozen" topLeftCell="B1" xSplit="${a.freezeColumnsCount}"/>\n</sheetView>\n`:``}\n ${f}\n </sheetViews>\n <sheetFormatPr defaultRowHeight="14.5" x14ac:dyDescent="0.35" />${p}\n <sheetData>\n`;function g(e,t){return r[e]+t}for(let r=0;r<=e.length;r++){let i=e[r],s=r+1,c=``;if(a.actualHierarchy){let t=e[r-1];t&&t._collapsed&&(!i||t._level>i._level)&&(c=` collapsed="true"`)}if(r===e.length){c&&(h+=` <row r="${s}" outlineLevel="${Math.max(e[r-1]._level-2,0)}" hidden="false" collapsed="true" />\n`);break}let l=` <row r="${s}"${a.getOutlineLevel(i)} hidden="${i._hidden||i._collapsed||!1}"${c} spans="1:${o}"${a.getCustomRowHeight(s-1)} customHeight="1" x14ac:dyDescent="0.45">\n`;for(let e=0;e<n.length;e++){let r=a.getXLSXCellStyle(g(e,s));l+=a.getActualCellData(i[n[e]],{r:g(e,s),s:r},t,s,n[e])}l+=` </row>
|
|
20
|
+
`,h+=l}if(a.headerContent)for(let e=0;e<a.headerContent.length;e++){let t=a.headerContent[e];t.style&&t.style.mergeAcross&&u.push({from:`A`+(e+1),to:r[o-1]+(e+1)})}if(a.footerContent)for(let t=0;t<a.footerContent.length;t++){let n=a.footerContent[t];n.style&&n.style.mergeAcross&&u.push({from:`A`+(e.length-t),to:r[o-1]+(e.length-t)})}return h+=` </sheetData>${a.conditionalFormattingXLSX.conditions}${l}${a.getMergedCells(u)}\n ${m}\n <pageMargins left="0.7" right="0.7" top="0.75" bottom="0.75" header="0.3" footer="0.3" />\n <pageSetup paperSize="9" orientation="portrait" r:id="rId1" />\n ${(e=>{let t=``,n=this.worksheetImages.get(e);return n&&n.length&&(t+=`<drawing r:id="rId${++d}"/>`),t})(1)}\n ${a.exportAsTable?`<tableParts count="1">\n <tablePart r:id="rId${++d}"/>\n </tableParts>`:``}\n</worksheet>`,h}generateSheet1WithGrouping(e,t){let n=this,r=n.columnsArray.length,i=e.length,a=n.columnsArray[r-1]+i,o=n.datafields,s=[].concat(n.complexHeaderMergedCells),c=0,l=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac xr xr2 xr3" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac" xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision" xmlns:xr2="http://schemas.microsoft.com/office/spreadsheetml/2015/revision2" xmlns:xr3="http://schemas.microsoft.com/office/spreadsheetml/2016/revision3" xr:uid="{7F25248B-C640-4C64-AD47-C0EA0E5D90D0}">\n <dimension ref="A1:${a}" />\n <sheetViews>\n <sheetView tabSelected="1" workbookViewId="0" />\n ${n.freezeHeader?`<sheetView rightToLeft="0" workbookViewId="0">\n <pane state="frozen" topLeftCell="A${n.xlsxStartIndex+1}" ySplit="${n.xlsxStartIndex}"/>\n </sheetView>`:``}\n </sheetViews>\n <sheetFormatPr defaultRowHeight="14.5" x14ac:dyDescent="0.35" />${n.getCustomColumnWidths()}\n <sheetData>\n`,u=0,d=[];function f(e,t){return n.columnsArray[e]+t}e:for(let i=0;i<e.length;i++){let a=e[i],c=i+1+u,p=0,m=``;if(!n.exportHeader||!n.complexHeader&&i!==0||n.complexHeader&&i>=n.complexHeader.length){let e=``;for(let o=0;o<n.groupBy.length;o++){let f=n.groupBy[o],m=a[f],h=n.groups[f][m];if(e+=m,d.indexOf(e)===-1){let a=t.indexOf(h);l+=n.generateGroupRow({rowNumber:c,outlineLevel:p,numberOfColumns:r,sharedStringIndex:a,mergedCells:s}),d.push(e),i--,u++;continue e}p++}m=` outlineLevel="${p}"`}let h=` <row r="${c}"${m} spans="1:${r}"${n.getCustomRowHeight(c-1)} customHeight="1" x14ac:dyDescent="0.45">\n`;for(let e=0;e<o.length;e++){let r=n.getXLSXCellStyle(f(e,i+1));h+=n.getActualCellData(a[o[e]],{r:f(e,c),s:r},t,c,o[e])}h+=` </row>
|
|
21
|
+
`,l+=h}return l+=` </sheetData>${n.exportAsTable?``:n.getMergedCells(s)}\n <pageMargins left="0.7" right="0.7" top="0.75" bottom="0.75" header="0.3" footer="0.3" />\n <pageSetup paperSize="9" orientation="portrait" r:id="rId1" />\n ${(e=>{let t=``,n=this.worksheetImages.get(e);return n&&n.length&&(t+=`<drawing r:id="rId${++c}"/>`),t})(1)}\n ${n.exportAsTable?`<tableParts count="1">\n <tablePart r:id="rId${++c}"/>\n </tableParts>`:``}\n</worksheet>`,n.groupDimensionEnd=n.columnsArray[r-1]+(i+u),n.groupRowsCount=i+u,l}isFormula(e){return e!==null&&this.autoConvertFormulas&&e.toString().startsWith(`=`)}getActualCellData(e,t,n){let r=t.r,i=t.s||` s="0"`;return e!==null||this.allowNull||(e=``),e&&this.isFormula(e)?` <c r="${r}" t="s"${i}>\n <f>${e.slice(1)}</f>\n </c>\n`:typeof e==`string`?` <c r="${r}" t="s"${i}>\n <v>${n.indexOf(e)}</v>\n </c>\n`:typeof e==`boolean`?` <c r="${r}" t="b"${i}>\n <v>${+e}</v>\n </c>\n`:e instanceof Date?` <c r="${r}"${i}>\n <v>${2+Math.round(this.timeBetween1900And1970/864e5)+(e.getTime()-60*e.getTimezoneOffset()*1e3)/864e5}</v>\n </c>\n`:` <c r="${r}"${i}>\n <v>${e}</v>\n </c>\n`}getColumnsArray(){let e=this.datafields.length,t=[];function n(e){return e<26?``:String.fromCharCode(64+Math.floor(e/26))}for(let r=0;r<e;r++)t.push(n(r)+String.fromCharCode(65+(r<26?r:r%26)));this.columnsArray=t}getColumnsArrayFromDataFields(e){let t=e.length,n=[];function r(e){return e<26?``:String.fromCharCode(64+Math.floor(e/26))}for(let e=0;e<t;e++)n.push(r(e)+String.fromCharCode(65+(e<26?e:e%26)));return n}getColumnStyle(){let e=this,t=e.style;if(!t)return` .header { border: 1px solid black; padding: 5px; }
|
|
22
|
+
.column { border: 1px solid black; padding: 5px; }
|
|
23
|
+
.group { background-color: #FFFFFF; color: #000000; font-weight: bold; }`;let n;n=t.removeDefault?{header:``,column:``,group:``}:{header:`border: 1px solid black; padding: 5px; `,column:`overflow: hidden; border: 1px solid black; padding: 5px; `,group:`background-color: #FFFFFF; color: #000000; font-weight: bold; `};let r=e.data[0],i=``,a=t.header||{};for(let t in a){if(!Object.prototype.hasOwnProperty.call(a,t))continue;let i=a[t];if(r[t]){n[`header`+t]||(n[`header`+t]=``);for(let e in i)if(Object.prototype.hasOwnProperty.call(i,e)){let r=Smart.Utilities.Core.toDash(e)+`: `+i[e]+`; `;n[`header`+t]+=r,e===`width`&&(n[`column`+t]||(n[`column`+t]=``),n[`column`+t]+=r)}}else t===`height`&&e.complexHeader?n.header+=`height: `+parseInt(a[t],10)/e.complexHeader.length+`px; `:n.header+=Smart.Utilities.Core.toDash(t)+`: `+a[t]+`; `}let o=t.columns||{};for(let e in o){if(!Object.prototype.hasOwnProperty.call(o,e))continue;let t=o[e];if(r[e]){n[`column`+e]||(n[`column`+e]=``);for(let r in t)isNaN(r)&&Object.prototype.hasOwnProperty.call(t,r)&&r!==`format`&&(n[`column`+e]+=Smart.Utilities.Core.toDash(r)+`: `+t[r]+`; `)}else n.column+=Smart.Utilities.Core.toDash(e)+`: `+t+`; `}for(let e in n)Object.prototype.hasOwnProperty.call(n,e)&&(i+=` .${e} { ${n[e]}}\n`);return t.custom&&(i+=`${t.custom}\n`),i}getCustomColumnWidths(e){let t=this;if(e!==t.columnsArray||!t.style||!t.columnWidth||t.columnWidth.length===0)return``;let n=`
|
|
24
|
+
<cols>
|
|
25
|
+
`;for(let e=0;e<t.columnWidth.length;e++){let r=t.columnWidth[e];r!==void 0&&(r=Math.round(parseFloat(r))/7,n+=` <col min="${e+1}" max="${e+1}" width="${r}" customWidth="1" />\n`)}return n+=` </cols>`,n}getCustomFilter(e,t){let n,r=`equal`;switch(e instanceof Date&&(e=(e.getTime()+this.timeBetween1900And1970)/864e5+2),t=t.toUpperCase()){case`EMPTY`:n=``;break;case`NOT_EMPTY`:n=``,r=`notEqual`;break;case`CONTAINS`:case`CONTAINS_CASE_SENSITIVE`:n=`*${e}*`;break;case`DOES_NOT_CONTAIN`:case`DOES_NOT_CONTAIN_CASE_SENSITIVE`:n=`*${e}*`,r=`notEqual`;break;case`STARTS_WITH`:case`STARTS_WITH_CASE_SENSITIVE`:n=`${e}*`;break;case`ENDS_WITH`:case`ENDS_WITH_CASE_SENSITIVE`:n=`*${e}`;break;case`EQUAL`:case`EQUAL_CASE_SENSITIVE`:n=e;break;case`NULL`:n=null;break;case`NOT_NULL`:n=null,r=`notEqual`;break;case`NOT_EQUAL`:n=e,r=`notEqual`;break;case`LESS_THAN`:n=e,r=`lessThan`;break;case`LESS_THAN_OR_EQUAL`:n=e,r=`lessThanOrEqual`;break;case`GREATER_THAN`:n=e,r=`greaterThan`;break;case`GREATER_THAN_OR_EQUAL`:n=e,r=`greaterThanOrEqual`}return` <customFilter val="${n}" operator="${r}"/>\n`}getCustomRowHeight(e){let t=this;return t.style&&(t.rowHeight[e]||t.defaultRowHeight)||``}getDatafields(e){let t=e[0],n=[];for(let e in t)Object.prototype.hasOwnProperty.call(t,e)&&e.charAt(0)!==`_`&&n.push(e);this.datafields=n}getFilters(){let e=this,t=e.filterBy;if(!t)return``;let n=``;for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){let i=e.datafields.indexOf(r);if(i===-1)continue;let a=t[r],o=a.filters;n+=` <filterColumn colId="${i}">\n <customFilters and="${!a.operator}">\n`;for(let t=0;t<o.length;t++)n+=e.getCustomFilter(o[t].value,o[t].condition);n+=` </customFilters>
|
|
26
|
+
</filterColumn>`}return n?(n=`\n <autoFilter ref="A1:${e.columnsArray[e.columnsArray.length-1]+e.data.length}">\n${n}\n </autoFilter>`,n):``}getGroupLabels(e){let t=this,n=t.xlsxStartIndex===void 0?+t.exportHeader:t.xlsxStartIndex,r={},i=[];for(let a=n;a<e.length;a++){let o=e[a];for(let a=0;a<t.groupBy.length;a++){let s=t.groupBy[a],c=o[s],l=r[s];l===void 0&&(r[s]={},l=r[s]),l[c]===void 0&&(l[c]=(t.exportHeader?e[n-1][s]:s)+`: `+c,i.push(l[c]))}}t.groups=r,t.groupLabels=i}getHTMLHeader(e,t){let n=this,r=`
|
|
27
|
+
<thead>
|
|
28
|
+
`;if(!n.complexHeader){r+=` <tr>
|
|
29
|
+
`;for(let n=0;n<e.length;n++){let i=e[n];r+=` <th class="header header${i}">${t[0][i]}</th>\n`}return r+=` </tr>
|
|
30
|
+
</thead>`,r}for(let t=0;t<n.complexDataFieldsHeader.length;t++){let i=n.complexDataFieldsHeader[t];r+=` <tr>
|
|
31
|
+
`;for(let a=0;a<i.length;a++){let o=i[a],s=1,c=1;if(i[a-1]&&i[a-1]===o||n.complexDataFieldsHeader[t-1]&&n.complexDataFieldsHeader[t-1][a]===o)continue;let l=a+1;for(;i[l]&&i[l]===i[l-1];)s++,l++;for(l=t+1;n.complexDataFieldsHeader[l]&&n.complexDataFieldsHeader[l][a]===o;)c++,l++;r+=` <th class="header${t===n.complexHeader.length-1||c+t===n.complexHeader.length?` header`+e[a]:``}" colspan="${s}" rowspan="${c}">${n.complexHeader[t][a]}</th>\n`}r+=` </tr>
|
|
32
|
+
`}return r+=` </thead>`,r}getConditionalFormatting(){let e=this,t=e.conditionalFormatting;if(!t)return void(e.conditionalFormattingXLSX={conditions:``,styles:``});let n=[],r=``,i=``;for(let a=t.length-1;a>=0;a--){let o=t[a],s=e.columnsArray[e.datafields.indexOf(o.column)],c=s+(e.xlsxStartIndex+1),l=c+`:`+s+e.data.length,u=o.background+o.color,d=e.getConditionalAttributes(o,c),f=n.indexOf(u);f===-1&&(i+=` <dxf>\n <font>\n <b val="0"/>\n <i val="0"/>\n <color rgb="${o.color===`White`?`FFFFFFFF`:`FF000000`}"/>\n <sz val="10"/>\n </font>\n <fill>\n <patternFill>\n <bgColor rgb="${e.toARGB(o.background)}"/>\n </patternFill>\n </fill>\n </dxf>\n`,f=n.length,n.push(u)),r+=` <conditionalFormatting sqref="${l}">\n <cfRule dxfId="${f}" text="${d.text}" rank="${d.rank}" percent="${d.percent}" bottom="${d.bottom}" equalAverage="${d.equalAverage}" aboveAverage="${d.aboveAverage}"${d.operator}${d.timePeriod} priority="${a+2}" type="${d.type}">\n${d.formula} </cfRule>\n </conditionalFormatting>\n`}i=` <dxfs count="${n.length}">\n${i} </dxfs>`,e.conditionalFormattingXLSX={conditions:r,styles:i}}getConditionalAttributes(e,t){let n=e.condition,r=e.comparator,i=``,a=0,o=0,s=0,c=0,l=``,u=``,d=``,f=``;switch(n){case`equal`:l=`equal`,d=`cellIs`,f=` <formula>${r}</formula>\n`;break;case`lessThan`:l=`lessThan`,d=`cellIs`,f=` <formula>${r}</formula>\n`;break;case`greaterThan`:l=`greaterThan`,d=`cellIs`,f=` <formula>${r}</formula>\n`;break;case`notEqual`:l=`notEqual`,d=`cellIs`,f=` <formula>${r}</formula>\n`;break;case`between`:l=`between`,d=`cellIs`,f=` <formula>${e.min}</formula>\n <formula>${e.max}</formula>\n`;break;case`duplicate`:d=`duplicateValues`,f=` <formula>0</formula>
|
|
33
|
+
`;break;case`topNItems`:a=r,d=`top10`;break;case`bottomNItems`:a=r,s=1,d=`top10`;break;case`topNPercent`:a=r,o=1,d=`top10`;break;case`bottomNPercent`:a=r,o=1,s=1,d=`top10`;break;case`aboveAverage`:c=1,d=`aboveAverage`,f=` <formula>0</formula>
|
|
34
|
+
`;break;case`belowAverage`:d=`aboveAverage`,f=` <formula>0</formula>
|
|
35
|
+
`;break;case`contains`:i=r,l=`containsText`,d=`containsText`,f=` <formula>NOT(ISERROR(SEARCH("${r}",${t})))</formula>\n`;break;case`doesNotContain`:i=r,l=`notContains`,d=`notContainsText`,f=` <formula>ISERROR(SEARCH("${r}",${t}))</formula>\n`;break;case`dateOccur`:u=` timePeriod="${r}"`,d=`timePeriod`}return l&&=` operator="${l}" `,{text:i,rank:a,percent:o,bottom:s,equalAverage:0,aboveAverage:c,operator:l,timePeriod:u,type:d,formula:f}}getMergedCells(e){let t=this,n=``;for(let t=0;t<e.length;t++)e[t].from!==e[t].to&&(n+=`\n <mergeCell ref="${e[t].from}:${e[t].to}" />\n`);if(t.mergedCells)for(let e=0;e<t.mergedCells.length;e++){let r=t.mergedCells[e];r.rowspan<2&&r.colspan<2||(n+=`\n <mergeCell ref="${t.columnsArray[r.cell[0]]+(r.cell[1]+t.xlsxStartIndex+1)}:${t.columnsArray[r.cell[0]+r.colspan-1]+(r.cell[1]+t.xlsxStartIndex+r.rowspan)}" />\n`)}return n&&=`\n <mergeCells count="${e.length}">${n} </mergeCells>`,n}getNumFmtIndex(e,t){let n=t.collection.indexOf(e);return n===-1?(n=t.collection.length+100,t.collection.push(e),t.xml+=`<numFmt numFmtId="${n}" formatCode="${e}"/>`):n+=100,n}getOutlineLevel(e){return this.actualHierarchy&&e._level!==1?` outlineLevel="${e._level-1}"`:``}getRowStyle(){let e=this.style;if(!e)return``;let t=e.rows;if(!t)return``;let n={row:``},r=``;for(let e in t){if(!Object.prototype.hasOwnProperty.call(t,e)||e===`alternationCount`||e===`alternationStart`||e===`alternationEnd`)continue;let r=t[e];if(e.indexOf(`alt`)===-1)if(isNaN(e))n.row+=Smart.Utilities.Core.toDash(e)+`: `+t[e]+`; `;else{n[`row`+e]||(n[`row`+e]=``);for(let t in r)Object.prototype.hasOwnProperty.call(r,t)&&(n[`row`+e]+=Smart.Utilities.Core.toDash(t)+`: `+r[t]+`; `)}else{let t=e.slice(16,17),i=e.slice(17);n[`rowN`+t]||(n[`rowN`+t]=``),n[`rowN`+t]+=i===`Color`?`color : `+r+`; `:i===`BorderColor`?`border-color : `+r+`; `:`background-color : `+r+`; `}}let i=Object.keys(n);i.sort((function(e,t){if(e===`row`)return-1;if(t===`row`)return 1;let n=!isNaN(e.slice(3)),r=!isNaN(t.slice(3));return n&&!r?1:!n&&r?-1:+(e<t)}));for(let e=0;e<i.length;e++)r+=` .${i[e]} { ${n[i[e]]}}\n`;return r}getTableStyle(){let e=this.style;if(!e)return` style="table-layout: fixed; border: 1px solid black; border-collapse: collapse;"`;let t=`table-layout: fixed; `;for(let n in e)Object.prototype.hasOwnProperty.call(e,n)&&[`header`,`columns`,`rows`,`removeDefault`,`custom`].indexOf(n)===-1&&(t+=Smart.Utilities.Core.toDash(n)+`: `+e[n]+`; `);return t&&=` style="`+t+`"`,t}getXLSXCellStyle(e){let t=this;return t.cellStyleMapping[e]===void 0?``:` s="${t.cellStyleMapping[e]}"`}getXLSXFormat(e,t){if(typeof t==`number`){let t=`$`;if(e&&typeof e==`string`&&e.indexOf(`c`)>=0&&e.indexOf(`x`)>=0&&(t=e.substring(0,e.indexOf(`x`)),e=e.substring(1+e.indexOf(`x`))),!/^([a-zA-Z]\d*)$/g.test(e))return e;let n=parseFloat(e.slice(1))||0,r=n>0?`.`+`0`.repeat(n):``;switch(e=e.slice(0,1)){case`C`:case`c`:return t===`$`?t+`#,0`+r:`#,0`+r+` `+t;case`D`:case`d`:return n?`#,0`+r:`0`;case`E`:case`e`:return`0`+r+e+`000`;case`F`:case`f`:return`0`+r;case`N`:case`n`:return`#,0`+r;case`P`:case`p`:return`#,0`+r+` %`;default:return}}else if(t instanceof Date){switch(e){case`d`:return`m/d/yyyy`;case`D`:return`nnnnmmmm dd, yyyy`;case`t`:return`h:m AM/PM`;case`T`:return`h:mm:ss AM/PM`;case`f`:return`nnnnmmmm dd, yyyy h:m AM/PM`;case`F`:return`nnnnmmmm dd, yyyy h:mm:ss AM/PM`;case`M`:return`mmmm d`;case`Y`:return`yyyy mmmm`;case`FP`:case`PP`:return`yyyy-mm-dd hh:mm:ss`;case`FT`:case`PT`:return`hh:mm:ss`}return e=(e=(e=(e=e.replace(/f|u|n|p|e|a|x|o/gi,``)).replace(/tt/gi,`AM/PM`)).replace(/:{2,}|:\s|:$|\.$/g,``)).trim()}}processColumnStyle(e){let t=this,n=e.header,r=e.columns,i=t.data[0],a=t.xlsxStartIndex;if(t.columnWidth=[],a&&n)for(let e=0;e<t.columnsArray.length;e++){let r=t.columnsArray[e],o=r+a,s=n[t.datafields[e]];for(let e in n)if(Object.prototype.hasOwnProperty.call(n,e)&&i[e]===void 0)if(t.complexHeader)for(let i=0;i<t.complexHeader.length;i++)e===`height`?t.rowHeight[i]=` ht="${parseFloat(n.height)/t.complexHeader.length/2}"`:t.storeCellStyle(r+(i+1),e,n[e]);else{if(e===`height`){t.rowHeight[a-1]=` ht="${parseFloat(n.height)/2}"`;continue}t.storeCellStyle(o,e,n[e])}if(s){for(let n in s)if(Object.prototype.hasOwnProperty.call(s,n)){if(n===`width`){t.columnWidth[e]=s.width;continue}t.storeCellStyle(o,n,s[n])}}}else if(n)for(let e=0;e<t.columnsArray.length;e++){let r=n[t.datafields[e]];r&&r.width!==void 0&&(t.columnWidth[e]=r.width)}if(!r)return``;for(let e=a;e<t.data.length;e++)for(let n=0;n<t.columnsArray.length;n++){let a=t.columnsArray[n]+(e+1),o=t.datafields[n],s=r[o];for(let e in r)Object.prototype.hasOwnProperty.call(r,e)&&i[e]===void 0&&t.storeCellStyle(a,e,r[e]);if(s){for(let n in s)isNaN(n)&&Object.prototype.hasOwnProperty.call(s,n)&&t.storeCellStyle(a,n,s[n],t.data[e][o]);if(s[e]){let n=s[e];for(let r in n)isNaN(r)&&Object.prototype.hasOwnProperty.call(n,r)&&n[r]&&t.storeCellStyle(a,r,n[r],t.data[e][o])}}}if(t.headerContent&&t.headerContent.length)for(let e=0;e<t.headerContent.length;e++){let n=(e,n,r)=>{for(let i=0;i<t.columnsArray.length;i++){let a=t.columnsArray[i]+e;t.storeCellStyle(a,n,r)}},r=e+1;if(t.headerContent[e].style){let i=t.headerContent[e].style,a=[`0`,`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`,`a`,`b`,`c`,`d`,`e`,`f`],o=e=>isNaN(e)?`00`:a[(e-e%16)/16]+a[e%16],s=e=>e.startsWith(`#`)?e.toUpperCase():(e=e.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/))?`#`+o(e[1])+o(e[2])+o(e[3]).toUpperCase():null;for(let e in i){let a=i[e];e===`height`?t.rowHeight[r-1]=` ht="${parseFloat(a)}"`:(e!==`color`&&e!==`backgroundColor`||(a=s(a)),n(r,e,a))}}}if(t.footerContent&&t.footerContent.length)for(let e=0;e<t.footerContent.length;e++){let n=(e,n,r)=>{for(let i=0;i<t.columnsArray.length;i++){let a=t.columnsArray[i]+e;t.storeCellStyle(a,n,r)}},r=t.headerContent&&t.headerContent.length?t.headerContent.length:0,i=1+t.data.length+e+r;if(t.footerContent[e].style){let r=t.footerContent[e].style,a=[`0`,`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`,`a`,`b`,`c`,`d`,`e`,`f`],o=e=>isNaN(e)?`00`:a[(e-e%16)/16]+a[e%16],s=e=>e.startsWith(`#`)?e.toUpperCase():(e=e.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/))?`#`+o(e[1])+o(e[2])+o(e[3]).toUpperCase():null;for(let e in r){let a=r[e];e===`height`?t.rowHeight[i-1]=` ht="${parseFloat(a)}"`:(e!==`color`&&e!==`backgroundColor`||(a=s(a)),n(i,e,a))}}}}processComplexHeader(e,t,n){let r=this,i={},a=[`html`,`jpeg`,`pdf`,`png`,`xlsx`].indexOf(n)!==-1&&e.columngroups,o=[],s={},c={},l=[],u=[],d=0;function f(t){for(let n=0;n<e.columngroups.length;n++){let r=e.columngroups[n];if(r.name===t)return r}}function p(e,t){let n=[];for(;e;){if(n.unshift(e[t]),!e.parentGroup)return n;e=f(e.parentGroup)}}if(a){for(let t=0;t<e.columngroups.length;t++){let n=e.columngroups[t],r=p(n,`label`);s[n.name]=r,c[n.name]=p(n,`name`),d=Math.max(d,r.length)}d++;for(let e=0;e<d;e++)l[e]=[],u[e]=[]}for(let t=0;t<e.columns.length;t++){let n=e.columns[t];if(i[n.dataField]=n.label,!a||(o[t]=n.dataField,l[d-1][t]=n.label,u[d-1][t]=n.dataField,!n.columnGroup))continue;let r=s[n.columnGroup],f=c[n.columnGroup];if(r)for(let e=0;e<r.length;e++)l[e][t]=r[e],u[e][t]=f[e]}if(l.length>1){let e=Object.keys(i).length;for(let r=0;r<d-1;r++){let i={};for(let t=0;t<e;t++){if(l[r][t]===void 0){let e=r+1;for(;l[e][t]===void 0;)e++;l[r][t]=l[e][t],u[r][t]=u[e][t]}i[o[t]]=l[r][t]}n===`xlsx`&&t.splice(r,0,i)}if(r.complexHeader=l,r.complexDataFieldsHeader=u,n!==`xlsx`)t.unshift(i);else{t.splice(d-1,0,i);let n={};for(let t=0;t<d;t++)for(let r=0;r<e;r++){let e=u[t][r];if(n[e]){let i=n[e].to;if(t-i[0]>1||r-i[1]>1){n[e+Math.random().toString(36)]=n[e],n[e]={from:[t,r],to:[t,r]};continue}n[e].to=[t,r]}else n[e]={from:[t,r]},n[e].to=n[e].from}r.complexHeaderMergeInfo=n}}else t.unshift(i)}processHierarchicalData(e,t){let n=this,r=t===`xlsx`?n.xlsxStartIndex:+n.exportHeader,i={},a=[],o=0,s=!1;if(e[r]._keyDataField===void 0)return n.processNestedData(e,t,r);for(let t=r;t<e.length;t++){let n=Object.assign({},e[t]),r=n._parentDataField;r===void 0&&(r=null),i[r]===void 0?i[r]=[n]:i[r].push(n)}if(r)for(let n=0;n<r;n++)a.push(Object.assign({},e[n])),[`json`,`pdf`,`xml`].indexOf(t)===-1&&(a[n]._level=1);return t!==`json`&&t!==`xml`?function e(t,n,r){let c=i[t];if(o=Math.max(o,n),c!==void 0)for(let t=0;t<c.length;t++){let o=c[t],l=o._keyDataField;o._collapsed=r,o._level=n,a.push(o),i[l]&&(s=!0,o._expanded=o._expanded===void 0||o._expanded,e(l,n+1,r||!o._expanded))}}(null,1,!1):function e(n,r,a){let c=i[n];if(o=Math.max(o,r),c!==void 0)for(let n=0;n<c.length;n++){let o=c[n],l=o._keyDataField,u;if(t===`json`){u={};for(let e in o)Object.prototype.hasOwnProperty.call(o,e)&&e.charAt(0)!==`_`&&(u[e]=o[e])}else u=Object.assign({},o);a.push(u),i[l]&&(s=!0,u.rows=[],e(l,r+1,u.rows))}}(null,1,a),s||(n.actualHierarchy=!1),n.maxLevel=o,a}processNestedData(e,t,n){let r=this,i=[],a=0,o=!1;if(n)for(let r=0;r<n;r++)i.push(Object.assign({},e[r])),[`json`,`pdf`,`xml`].indexOf(t)===-1&&(i[r]._level=1);return t!==`json`&&t!==`xml`?function e(t,n,r,s){a=Math.max(a,r);for(let a=t;a<n.length;a++){let t=Object.assign({},n[a]);t._collapsed=s,t._level=r,i.push(t),t.children&&t.children.length>0&&(o=!0,t._expanded=t._expanded===void 0||t._expanded,e(0,t.children,r+1,s||!t._expanded)),delete t.children}}(n,e,1,!1):function e(t,n,r,s){a=Math.max(a,s);for(let a=t;a<n.length;a++){let t=Object.assign({},n[a]);s===1?i[a]=t:r[a]=t,t.children&&t.children.length>0&&(o=!0,t.rows=[],e(0,t.children,t.rows,s+1)),delete t.children}}(n,e,void 0,1),o||(r.actualHierarchy=!1),r.maxLevel=a,i}processRowStyle(e){let t=this,n=e.rows;if(t.rowHeight=[],!n)return;let r=t.xlsxStartIndex;function i(e,n,i){for(let a=0;a<t.columnsArray.length;a++){let o=t.columnsArray[a]+(e+1+r);t.storeCellStyle(o,n,i)}}n.height&&(n.height||=15,t.defaultRowHeight=` ht="${parseFloat(n.height)/2}"`);for(let e=r;e<t.data.length;e++){let a=e-r;for(let e in n)Object.prototype.hasOwnProperty.call(n,e)&&e.indexOf(`alt`)===-1&&isNaN(e)&&e!==`height`&&i(a,e,n[e]);if(n.alternationCount&&((n.alternationStart===void 0||a>=n.alternationStart)&&(n.alternationEnd===void 0||a<=n.alternationEnd)||n.alternationStart===n.alternationEnd)){let e=(a-(n.alternationStart||0))%n.alternationCount;n[`alternationIndex${e}Color`]&&i(a,`color`,n[`alternationIndex${e}Color`]),n[`alternationIndex${e}BorderColor`]&&i(a,`borderColor`,n[`alternationIndex${e}BorderColor`]),n[`alternationIndex${e}BackgroundColor`]&&i(a,`backgroundColor`,n[`alternationIndex${e}BackgroundColor`])}if(t.setRowHeight){let n=t.setRowHeight(a);if(n){t.rowHeight[e]=` ht="${parseFloat(n)}"`;continue}}if(n[a]){for(let o in n[a])if(Object.prototype.hasOwnProperty.call(n[a],o)){if(o===`height`){t.rowHeight[e]=` ht="${parseFloat(n[a].height)/2}"`;continue}if(t.data[e]&&t.data[e][o]){function e(e,n,i,a){let o=t.datafields?t.datafields.indexOf(a):-1;if(o>=0){let a=t.columnsArray[o]+(e+1+r);t.storeCellStyle(a,n,i)}}for(let t in n[a][o])e(a,t,n[a][o][t],o);continue}i(a,o,n[a][o])}}}}storeCellStyle(e,t,n){let r=this.styleMap[e];switch(t){case`backgroundColor`:r.fills.fgColor=n;break;case`color`:r.fonts.color=n;break;case`fontFamily`:r.fonts.name=n.replace(/"/g,`'`);break;case`fontSize`:r.fonts.sz=Math.round(parseFloat(n)/(96/72));break;case`fontStyle`:n===`italic`?r.fonts.i=!0:delete r.fonts.i;break;case`fontWeight`:n===`bold`?r.fonts.b=!0:delete r.fonts.b;break;case`numFmt`:r.numFmt=n;break;case`textAlign`:r.alignment.horizontal=n;break;case`textDecoration`:n===`underline`?r.fonts.u=!0:delete r.fonts.u;break;case`verticalAlign`:n===`middle`&&(n=`center`),r.alignment.vertical=n}}toARGB(e){e||=`#FFFFFF`,e=e.replace(/\s/g,``);let t=/rgb\((\d+),(\d+),(\d+)\)/gi.exec(e);if(t!==null){let e=parseFloat(t[1]).toString(16).toUpperCase(),n=parseFloat(t[2]).toString(16).toUpperCase(),r=parseFloat(t[3]).toString(16).toUpperCase();return`FF`+`0`.repeat(2-e.length)+e+`0`.repeat(2-n.length)+n+`0`.repeat(2-r.length)+r}let n=/rgba\((\d+),(\d+),(\d+)\,(\d*.\d+|\d+)\)/gi.exec(e);if(n!==null){let e=Math.round(255*parseFloat(n[4])).toString(16).toUpperCase(),t=parseFloat(n[1]).toString(16).toUpperCase(),r=parseFloat(n[2]).toString(16).toUpperCase(),i=parseFloat(n[3]).toString(16).toUpperCase();return`0`.repeat(2-e.length)+e+`0`.repeat(2-t.length)+t+`0`.repeat(2-r.length)+r+`0`.repeat(2-i.length)+i}let r=/^#(.)(.)(.)$/gi.exec(e);if(r!==null){let e=r[1].toUpperCase(),t=r[2].toUpperCase(),n=r[3].toUpperCase();return`FF`+e+e+t+t+n+n}return`FF`+e.toUpperCase().slice(1)}toggleableFunctionality(){let e=this;return e.actualHierarchy?`\n <style type="text/css">\n .toggle-element {\n width: 5px;\n height: 1px;\n padding-right: 5px;\n float: left;\n text-align: right;\n cursor: pointer;\n user-select: none;\n }\n\n .collapsed {\n display: none;\n }\n </style>\n <script type="text/javascript">\n window.onload = function () {\n var expandChar = '${e.expandChar}',\n collapseChar = '${e.collapseChar}',\n toggleElements = document.getElementsByClassName('toggle-element');\n\n function getParent(child) {\n var prevSibling = child.previousElementSibling;\n\n while (prevSibling) {\n if (child.getAttribute('level') > prevSibling.getAttribute('level')) {\n return prevSibling;\n }\n\n prevSibling = prevSibling.previousElementSibling;\n }\n\n }\n\n function getFirstCollapsedAncestor(child) {\n var parent = getParent(child);\n\n while (parent) {\n if (parent.firstElementChild.firstElementChild.innerHTML === expandChar) {\n return parent;\n }\n\n parent = getParent(parent);\n }\n }\n\n for (var i = 0; i < toggleElements.length; i++) {\n toggleElements[i].addEventListener('click', function (event) {\n var expanded = this.innerHTML === collapseChar,\n row = this.parentElement.parentElement,\n sibling = row.nextElementSibling;\n\n if (expanded) {\n this.innerHTML = expandChar;\n }\n else {\n this.innerHTML = collapseChar;\n }\n\n while (sibling && row.getAttribute('level') < sibling.getAttribute('level')) {\n if (expanded) {\n sibling.style.display = 'none';\n }\n else {\n var firstCollapsedAncestor = getFirstCollapsedAncestor(sibling);\n\n if (!firstCollapsedAncestor || firstCollapsedAncestor === row) {\n sibling.classList.remove('collapsed');\n sibling.style.display = null;\n }\n\n }\n\n sibling = sibling.nextElementSibling;\n }\n });\n }\n }\n <\/script>`:``}generateStyles(e){let t=this;if(t.cellStyleMapping={},Object.keys(e).length===0&&!t.complexHeader)return`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<styleSheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac x16r2 xr" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac" xmlns:x16r2="http://schemas.microsoft.com/office/spreadsheetml/2015/02/main" xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision"><fonts count="1" x14ac:knownFonts="1"><font><sz val="11"/><color theme="1"/><name val="Calibri"/><family val="2"/><charset val="204"/><scheme val="minor"/></font></fonts><fills count="2"><fill><patternFill patternType="none"/></fill><fill><patternFill patternType="gray125"/></fill></fills><borders count="1"><border><left/><right/><top/><bottom/><diagonal/></border></borders><cellStyleXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0"/></cellStyleXfs><cellXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0" xfId="0"/></cellXfs><cellStyles count="1"><cellStyle name="Normal" xfId="0" builtinId="0"/></cellStyles>${t.conditionalFormattingXLSX.styles||`<dxfs count="0"/>`}<tableStyles count="0" defaultTableStyle="TableStyleMedium2" defaultPivotStyle="PivotStyleLight16"/><extLst><ext uri="{EB79DEF2-80B8-43e5-95BD-54CBDDF9020C}" xmlns:x14="http://schemas.microsoft.com/office/spreadsheetml/2009/9/main"><x14:slicerStyles defaultSlicerStyle="SlicerStyleLight1"/></ext><ext uri="{9260A510-F301-46a8-8635-F512D64BE5F5}" xmlns:x15="http://schemas.microsoft.com/office/spreadsheetml/2010/11/main"><x15:timelineStyles defaultTimelineStyle="TimeSlicerStyleLight1"/></ext></extLst></styleSheet>`;t.styleMap={};let n=t.headerContent?t.headerContent.length:0;n+=t.footerContent?t.footerContent.length:0;let r=t.data.length+n;t.groupBy&&t.groupBy.length&&(r+=50);for(let e=0;e<r;e++)for(let n=0;n<t.columnsArray.length;n++)t.styleMap[t.columnsArray[n]+(e+1)]={numFmts:{},fonts:{},fills:{},borders:{},alignment:{}};if(e&&e.columns)for(let n=0;n<t.columnsArray.length;n++){let r=t.datafields[n];if(!e.columns[r]||!e.columns[r].format)continue;let i=t.getXLSXFormat(e.columns[r].format,t.data[1][r]),a=t.getXLSXFormat(e.columns[r].format,t.data[t.data.length-1][r]);if(a)e.columns[r].numFmt=a;else if(i)e.columns[r].numFmt=i;else if(e.columns[r].format&&(r.toLowerCase().indexOf(`date`)>=0||e.columns[r].format.indexOf(`d/`)>=0)){let t=e.columns[r].format;switch(t){case`d`:t=`m/d/yyyy`;break;case`D`:t=`nnnnmmmm dd, yyyy`;break;case`t`:t=`h:m AM/PM`;break;case`T`:t=`h:mm:ss AM/PM`;break;case`f`:t=`nnnnmmmm dd, yyyy h:m AM/PM`;break;case`F`:t=`nnnnmmmm dd, yyyy h:mm:ss AM/PM`;break;case`M`:t=`mmmm d`;break;case`Y`:t=`yyyy mmmm`;break;case`FP`:case`PP`:t=`yyyy-mm-dd hh:mm:ss`;break;case`FT`:case`PT`:t=`hh:mm:ss`}t=t.replace(/f|u|n|p|e|a|x|o/gi,``),t=t.replace(/tt/gi,`AM/PM`),t=t.replace(/:{2,}|:\s|:$|\.$/g,``),t=t.trim(),e.columns[r].numFmt=t}}t.processRowStyle(e),t.processColumnStyle(e);let i={};for(let e=0;e<t.complexHeaderMergedCells.length;e++){let n=t.complexHeaderMergedCells[e];parseFloat(n.to[1])===t.complexHeader.length?i[n.to]=n.from:(t.styleMap[n.from].alignment.horizontal=`center`,t.styleMap[n.from].alignment.vertical=`center`)}let a={xml:`<font><sz val="11" /><color theme="1" /><name val="Calibri" /><family val="2" /><charset val="204" /><scheme val="minor" /></font>`,collection:[`default`]},o={xml:`<fill><patternFill patternType="none" /></fill><fill><patternFill patternType="gray125" /></fill>`,collection:[`default`,`gray125`]},s={xml:``,collection:[]},c={xml:`<xf fontId="0" fillId="0" borderId="1"/>`,collection:[`default`]};for(let e=0;e<r;e++)for(let n=0;n<t.columnsArray.length;n++){let r=t.columnsArray[n]+(e+1),l=t.styleMap[r],u=``,d=``,f=``,p=[],m=[],h=[],g=[];for(let e in l.fonts)if(Object.prototype.hasOwnProperty.call(l.fonts,e)){let n=l.fonts[e];switch(e){case`color`:p[0]=n,u+=n?`<color rgb="${t.toARGB(n)}" />`:`<color rgb="${t.toARGB(`#333333`)}" />`;break;case`name`:p[1]=n,u+=`<name val="${n}" />`;break;case`sz`:p[2]=n,u+=`<sz val="${n}" />`;break;case`i`:p[3]=n,u+=`<i />`;break;case`b`:p[4]=n,u+=`<b />`;break;case`u`:p[5]=n,u+=`<u />`}}for(let e in l.fills)if(Object.prototype.hasOwnProperty.call(l.fills,e)){let n=l.fills[e];switch(e){case`fgColor`:m[0]=n,d+=`<fgColor rgb="${t.toARGB(n)}" />`}}for(let e in l.alignment)if(Object.prototype.hasOwnProperty.call(l.alignment,e)){let t=l.alignment[e];switch(e){case`horizontal`:h[0]=t,f+=`horizontal="${t}" `;break;case`vertical`:h[1]=t,f+=`vertical="${t}" `}}if(p=p.toString(),m=m.toString(),u!==``){let e=a.collection.indexOf(p);e===-1&&(e=a.collection.length,a.xml+=`<font>`+u+`</font>`,a.collection.push(p)),g[0]=e}if(d!==``){let e=o.collection.indexOf(m);e===-1&&(e=o.collection.length,o.xml+=`<fill><patternFill patternType="solid">`+d+`</patternFill></fill>`,o.collection.push(m)),g[1]=e}h.length>0&&(g[2]=f),l.numFmt!==void 0&&(g[3]=t.getNumFmtIndex(l.numFmt,s));let _=g.toString();if(_!==``){let e=c.collection.indexOf(_);if(e===-1){let t=`<xf `;e=c.collection.length,g[0]!==void 0&&(t+=`fontId="${g[0]}" `),g[1]!==void 0&&(t+=`fillId="${g[1]}" `),g[3]!==void 0&&(t+=`numFmtId="${g[3]}" `),g[2]===void 0?t+=` borderId="1"/>`:t+=`applyAlignment="1" borderId="1"><alignment ${f}/></xf>`,c.xml+=t,c.collection.push(_)}t.cellStyleMapping[i[r]||r]=e}}return s.collection.length&&(s.xml=`<numFmts count="${s.collection.length}">${s.xml}</numFmts>`),`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<styleSheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac x16r2 xr" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac" xmlns:x16r2="http://schemas.microsoft.com/office/spreadsheetml/2015/02/main" xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision">${s.xml}<fonts count="${a.collection.length}" x14ac:knownFonts="1">${a.xml}</fonts><fills count="${o.collection.length}">${o.xml}</fills><borders count="2"><border><left/><right/><top/><bottom/></border><border><left style="hair"/><right style="hair"/><top style="hair"/><bottom style="hair"/><diagonal/></border></borders><cellStyleXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0"/></cellStyleXfs><cellXfs count="${c.collection.length}">${c.xml}</cellXfs><cellStyles count="1"><cellStyle name="Normal" xfId="0" builtinId="0"/></cellStyles>${t.conditionalFormattingXLSX.styles}<dxfs count="0"/><tableStyles count="0" defaultTableStyle="TableStyleMedium2" defaultPivotStyle="PivotStyleLight16"/><extLst><ext uri="{EB79DEF2-80B8-43e5-95BD-54CBDDF9020C}" xmlns:x14="http://schemas.microsoft.com/office/spreadsheetml/2009/9/main"><x14:slicerStyles defaultSlicerStyle="SlicerStyleLight1"/></ext><ext uri="{9260A510-F301-46a8-8635-F512D64BE5F5}" xmlns:x15="http://schemas.microsoft.com/office/spreadsheetml/2010/11/main"><x15:timelineStyles defaultTimelineStyle="TimeSlicerStyleLight1"/></ext></extLst></styleSheet>`}})})();
|