/*! Buttons for DataTables 2.3.5
* ©2016-2023 SpryMedia Ltd - datatables.net/license
*/
import $ from"jquery";import DataTable from"datatables.net";var _instCounter=0,_buttonCounter=0,_dtButtons=DataTable.ext.buttons;function _fadeIn(t,n,e){$.fn.animate?t.stop().fadeIn(n,e):(t.css("display","block"),e&&e.call(t))}function _fadeOut(t,n,e){$.fn.animate?t.stop().fadeOut(n,e):(t.css("display","none"),e&&e.call(t))}var _infoTimer,Buttons=function(n,t){if(!(this instanceof Buttons))return function(t){return new Buttons(t,n).container()};!0===(t=void 0===t?{}:t)&&(t={}),Array.isArray(t)&&(t={buttons:t}),this.c=$.extend(!0,{},Buttons.defaults,t),t.buttons&&(this.c.buttons=t.buttons),this.s={dt:new DataTable.Api(n),buttons:[],listenKeys:"",namespace:"dtb"+_instCounter++},this.dom={container:$("<"+this.c.dom.container.tag+"/>").addClass(this.c.dom.container.className)},this._constructor()},_filename=($.extend(Buttons.prototype,{action:function(t,n){t=this._nodeToButton(t);return void 0===n?t.conf.action:(t.conf.action=n,this)},active:function(t,n){var t=this._nodeToButton(t),e=this.c.dom.button.active,t=$(t.node);return void 0===n?t.hasClass(e):(t.toggleClass(e,void 0===n||n),this)},add:function(t,n,e){var o=this.s.buttons;if("string"==typeof n){for(var i=n.split("-"),s=this.s,a=0,r=i.length-1;a"),p.conf._collection=p.collection,p.conf.split)for(var b=0;b
'+this.c.dom.splitDropdown.text+""));this._expandButton(p.buttons,p.conf.buttons,p.conf.split,!l,l,s,p.conf)}p.conf.parent=a,f.init&&f.init.call(r.button(p.node),r,$(p.node),f),0}}}},_buildButton:function(n,t,e,o){function i(t){return"function"==typeof t?t(b,l,n):t}var s,a,r,l,u=this.c.dom.button,c=this.c.dom.buttonLiner,d=this.c.dom.collection,f=(this.c.dom.split,this.c.dom.splitCollection),p=this.c.dom.splitDropdownButton,b=this.s.dt;if(n.spacer)return a=$("").addClass("dt-button-spacer "+n.style+" "+u.spacerClass).html(i(n.text)),{conf:n,node:a,inserter:a,buttons:[],inCollection:t,isSplit:e,inSplit:o,collection:null};if(!e&&o&&f?u=p:!e&&t&&d.button&&(u=d.button),!e&&o&&f.buttonLiner?c=f.buttonLiner:!e&&t&&d.buttonLiner&&(c=d.buttonLiner),n.available&&!n.available(b,n)&&!n.hasOwnProperty("html"))return!1;n.hasOwnProperty("html")?l=$(n.html):(s=function(t,n,e,o){o.action.call(n.button(e),t,n,e,o),$(n.table().node()).triggerHandler("buttons-action.dt",[n.button(e),n,e,o])},a=n.tag||u.tag,r=void 0===n.clickBlurs||n.clickBlurs,l=$("<"+a+"/>").addClass(u.className).addClass(o?this.c.dom.splitDropdownButton.className:"").attr("tabindex",this.s.dt.settings()[0].iTabIndex).attr("aria-controls",this.s.dt.table().node().id).on("click.dtb",function(t){t.preventDefault(),!l.hasClass(u.disabled)&&n.action&&s(t,b,l,n),r&&l.trigger("blur")}).on("keypress.dtb",function(t){13===t.keyCode&&(t.preventDefault(),!l.hasClass(u.disabled))&&n.action&&s(t,b,l,n)}),"a"===a.toLowerCase()&&l.attr("href","#"),"button"===a.toLowerCase()&&l.attr("type","button"),c.tag?(p=$("<"+c.tag+"/>").html(i(n.text)).addClass(c.className),"a"===c.tag.toLowerCase()&&p.attr("href","#"),l.append(p)):l.html(i(n.text)),!1===n.enabled&&l.addClass(u.disabled),n.className&&l.addClass(n.className),n.titleAttr&&l.attr("title",i(n.titleAttr)),n.attr&&l.attr(n.attr),n.namespace||(n.namespace=".dt-button-"+_buttonCounter++),void 0!==n.config&&n.config.split&&(n.split=n.config.split));var h,g,m,v,f=this.c.dom.buttonContainer,d=f&&f.tag?$("<"+f.tag+"/>").addClass(f.className).append(l):l;return this._addKey(n),this.c.buttonCreated&&(d=this.c.buttonCreated(n,d)),e&&((h=$("").addClass(this.c.dom.splitWrapper.className)).append(l),g=$.extend(n,{text:this.c.dom.splitDropdown.text,className:this.c.dom.splitDropdown.className,closeButton:!1,attr:{"aria-haspopup":"dialog","aria-expanded":!1},align:this.c.dom.splitDropdown.align,splitAlignClass:this.c.dom.splitDropdown.splitAlignClass}),this._addKey(g),m=function(t,n,e,o){_dtButtons.split.action.call(n.button(h),t,n,e,o),$(n.table().node()).triggerHandler("buttons-action.dt",[n.button(e),n,e,o]),e.attr("aria-expanded",!0)},v=$('").on("click.dtb",function(t){t.preventDefault(),t.stopPropagation(),v.hasClass(u.disabled)||m(t,b,v,g),r&&v.trigger("blur")}).on("keypress.dtb",function(t){13===t.keyCode&&(t.preventDefault(),v.hasClass(u.disabled)||m(t,b,v,g))}),0===n.split.length&&v.addClass("dtb-hide-drop"),h.append(v).attr(g.attr)),{conf:n,node:(e?h:l).get(0),inserter:e?h:d,buttons:[],inCollection:t,isSplit:e,inSplit:o,collection:null}},_nodeToButton:function(t,n){for(var e=0,o=(n=n||this.s.buttons).length;e").addClass("dt-button-collection").addClass(h.collectionLayout).addClass(h.splitAlignClass).addClass(p).css("display","none").attr({"aria-modal":!0,role:"dialog"}),o=$(o).addClass(h.contentClassName).attr("role","menu").appendTo(s),g.attr("aria-expanded","true"),g.parents("body")[0]!==document.body&&(g=document.body.lastChild),h.popoverTitle?s.prepend(''+h.popoverTitle+"
"):h.collectionTitle&&s.prepend(''+h.collectionTitle+"
"),h.closeButton&&s.prepend('x
').addClass("dtb-collection-closeable"),_fadeIn(s.insertAfter(g),h.fade),n=$(t.table().container()),d=s.css("position"),"container"!==h.span&&"dt-container"!==h.align||(g=g.parent(),s.css("width",n.width())),"absolute"===d?(p=$(g[0].offsetParent),t=g.position(),n=g.offset(),a=p.offset(),r=p.position(),l=window.getComputedStyle(p[0]),a.height=p.outerHeight(),a.width=p.width()+parseFloat(l.paddingLeft),a.right=a.left+a.width,a.bottom=a.top+a.height,p=t.top+g.outerHeight(),u=t.left,s.css({top:p,left:u}),l=window.getComputedStyle(s[0]),(c=s.offset()).height=s.outerHeight(),c.width=s.outerWidth(),c.right=c.left+c.width,c.bottom=c.top+c.height,c.marginTop=parseFloat(l.marginTop),c.marginBottom=parseFloat(l.marginBottom),h.dropup&&(p=t.top-c.height-c.marginTop-c.marginBottom),"button-right"!==h.align&&!s.hasClass(h.rightAlignClassName)||(u=t.left-c.width+g.outerWidth()),"dt-container"!==h.align&&"container"!==h.align||(u=ua.width&&(u=a.width-c.width),r.left+u+c.width>$(window).width()&&(u=$(window).width()-c.width-r.left),n.left+u<0&&(u=-n.left),r.top+p+c.height>$(window).height()+$(window).scrollTop()&&(p=t.top-c.height-c.marginTop-c.marginBottom),r.top+p<$(window).scrollTop()&&(p=t.top+g.outerHeight()),s.css({top:p,left:u})):((d=function(){var t=$(window).height()/2,n=s.height()/2;s.css("marginTop",-1*(n=t").addClass(n).css("display","none").insertAfter(o),e):_fadeOut($("div."+n),e,function(){$(this).removeClass(n).remove()})},Buttons.instanceSelector=function(t,i){var s,a,r;return null==t?$.map(i,function(t){return t.inst}):(s=[],a=$.map(i,function(t){return t.name}),(r=function(t){var n;if(Array.isArray(t))for(var e=0,o=t.length;e)<[^<]*)*<\/script>/gi,"")).replace(//g,""),n&&!n.stripHtml||(t=t.replace(/<[^>]*>/g,"")),n&&!n.trim||(t=t.replace(/^\s+|\s+$/g,"")),n&&!n.stripNewlines||(t=t.replace(/\n/g," ")),!n||n.decodeEntities)&&(_exportTextarea.innerHTML=t,t=_exportTextarea.value),t},Buttons.defaults={buttons:["copy","excel","csv","pdf","print"],name:"main",tabIndex:0,dom:{container:{tag:"div",className:"dt-buttons"},collection:{tag:"div",className:""},button:{tag:"button",className:"dt-button",active:"active",disabled:"disabled",spacerClass:""},buttonLiner:{tag:"span",className:""},split:{tag:"div",className:"dt-button-split"},splitWrapper:{tag:"div",className:"dt-btn-split-wrapper"},splitDropdown:{tag:"button",text:"▼",className:"dt-btn-split-drop",align:"split-right",splitAlignClass:"dt-button-split-left"},splitDropdownButton:{tag:"button",className:"dt-btn-split-drop-button dt-button"},splitCollection:{tag:"div",className:"dt-button-split-collection"}}},Buttons.version="2.3.5",$.extend(_dtButtons,{collection:{text:function(t){return t.i18n("buttons.collection","Collection")},className:"buttons-collection",closeButton:!1,init:function(t,n,e){n.attr("aria-expanded",!1)},action:function(t,n,e,o){o._collection.parents("body").length?this.popover(!1,o):this.popover(o._collection,o),"keypress"===t.type&&$("a, button",o._collection).eq(0).focus()},attr:{"aria-haspopup":"dialog"}},split:{text:function(t){return t.i18n("buttons.split","Split")},className:"buttons-split",closeButton:!1,init:function(t,n,e){return n.attr("aria-expanded",!1)},action:function(t,n,e,o){this.popover(o._collection,o)},attr:{"aria-haspopup":"dialog"}},copy:function(t,n){if(_dtButtons.copyHtml5)return"copyHtml5"},csv:function(t,n){if(_dtButtons.csvHtml5&&_dtButtons.csvHtml5.available(t,n))return"csvHtml5"},excel:function(t,n){if(_dtButtons.excelHtml5&&_dtButtons.excelHtml5.available(t,n))return"excelHtml5"},pdf:function(t,n){if(_dtButtons.pdfHtml5&&_dtButtons.pdfHtml5.available(t,n))return"pdfHtml5"},pageLength:function(t){var n=t.settings()[0].aLengthMenu,e=[],o=[];if(Array.isArray(n[0]))e=n[0],o=n[1];else for(var i=0;i"+t+"":"",_fadeIn($('').html(t).append($("")["string"==typeof n?"html":"append"](n)).css("display","none").appendTo("body")),void 0!==e&&0!==e&&(_infoTimer=setTimeout(function(){o.buttons.info(!1)},e)),this.on("destroy.btn-info",function(){o.buttons.info(!1)})),this}),DataTable.Api.register("buttons.exportData()",function(t){if(this.context.length)return _exportData(new DataTable.Api(this.context[0]),t)}),DataTable.Api.register("buttons.exportInfo()",function(t){return{filename:_filename(t=t||{}),title:_title(t),messageTop:_message(this,t.message||t.messageTop,"top"),messageBottom:_message(this,t.messageBottom,"bottom")}}),function(t){var n;return null==(n="function"==typeof(n="*"===t.filename&&"*"!==t.title&&void 0!==t.title&&null!==t.title&&""!==t.title?t.title:t.filename)?n():n)?null:(n=(n=-1!==n.indexOf("*")?n.replace("*",$("head > title").text()).trim():n).replace(/[^a-zA-Z0-9_\u00A1-\uFFFF\.,\-_ !\(\)]/g,""))+(_stringOrFunction(t.extension)||"")}),_stringOrFunction=function(t){return null==t?null:"function"==typeof t?t():t},_title=function(t){t=_stringOrFunction(t.title);return null===t?null:-1!==t.indexOf("*")?t.replace("*",$("head > title").text()||"Exported data"):t},_message=function(t,n,e){n=_stringOrFunction(n);return null===n?null:(t=$("caption",t.table().container()).eq(0),"*"===n?t.css("caption-side")!==e?null:t.length?t.text():"":n)},_exportTextarea=$("")[0],_exportData=function(e,t){for(var o=$.extend(!0,{},{rows:null,columns:"",modifier:{search:"applied",order:"applied"},orthogonal:"display",stripHtml:!0,stripNewlines:!0,decodeEntities:!0,trim:!0,format:{header:function(t){return Buttons.stripData(t,o)},footer:function(t){return Buttons.stripData(t,o)},body:function(t){return Buttons.stripData(t,o)}},customizeData:null},t),t=e.columns(o.columns).indexes().map(function(t){var n=e.column(t).header();return o.format.header(n.innerHTML,t,n)}).toArray(),n=e.table().footer()?e.columns(o.columns).indexes().map(function(t){var n=e.column(t).footer();return o.format.footer(n?n.innerHTML:"",t,n)}).toArray():null,i=$.extend({},o.modifier),i=(e.select&&"function"==typeof e.select.info&&void 0===i.selected&&e.rows(o.rows,$.extend({selected:!0},i)).any()&&$.extend(i,{selected:!0}),e.rows(o.rows,i).indexes().toArray()),i=e.cells(i,o.columns),s=i.render(o.orthogonal).toArray(),a=i.nodes().toArray(),r=t.length,l=[],u=0,c=0,d=0