initial commit

This commit is contained in:
tyler committed 2025-08-19 09:13:22 -07:00
1 parent 28464811d6
commit 0977a3e14d
820 files changed
+1003358 -2

No files matched your search

+8
View File
@@ -0,0 +1,8 @@
# Authors: The MNE-Python contributors.
# License: BSD-3-Clause
# Copyright the MNE-Python contributors.
"""Report-generation functions and classes."""
import lazy_loader as lazy
(__getattr__, __dir__, __all__) = lazy.attach_stub(__name__, __file__)
+2
View File
@@ -0,0 +1,2 @@
__all__ = ["Report", "_ReportScraper", "open_report"]
from .report import Report, _ReportScraper, open_report
@@ -0,0 +1 @@
@font-face{font-family:"bootstrap-icons";src:url(data:font/woff2;charset=utf-8;base64,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 truncated
@@ -0,0 +1,10 @@
/**
* bootstrap-table - An extended table to integration with some of the most widely used CSS frameworks. (Supports Bootstrap, Semantic UI, Bulma, Material Design, Foundation)
*
* @version v1.19.1
* @homepage https://bootstrap-table.com
* @author wenzhixin <wenzhixin2010@gmail.com> (http://wenzhixin.net.cn/)
* @license MIT
*/
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(require("jquery")):"function"==typeof define&&define.amd?define(["jquery"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).jQuery)}(this,(function(t){"use strict";function e(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var n=e(t);function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function i(t){return(i=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function u(t,e){return(u=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function c(t,e){return!e||"object"!=typeof e&&"function"!=typeof e?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):e}function a(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,r=i(t);if(e){var o=i(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return c(this,n)}}function f(t,e,n){return(f="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){var r=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=i(t)););return t}(t,e);if(r){var o=Object.getOwnPropertyDescriptor(r,e);return o.get?o.get.call(n):o.value}})(t,e,n||t)}var l="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function s(t,e){return t(e={exports:{}},e.exports),e.exports}var p=function(t){return t&&t.Math==Math&&t},y=p("object"==typeof globalThis&&globalThis)||p("object"==typeof window&&window)||p("object"==typeof self&&self)||p("object"==typeof l&&l)||function(){return this}()||Function("return this")(),d=function(t){try{return!!t()}catch(t){return!0}},h=!d((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),b={}.propertyIsEnumerable,v=Object.getOwnPropertyDescriptor,g={f:v&&!b.call({1:2},1)?function(t){var e=v(this,t);return!!e&&e.enumerable}:b},m=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},w={}.toString,O=function(t){return w.call(t).slice(8,-1)},j="".split,S=d((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==O(t)?j.call(t,""):Object(t)}:Object,T=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t},C=function(t){return S(T(t))},P=function(t){return"object"==typeof t?null!==t:"function"==typeof t},x=function(t,e){if(!P(t))return t;var n,r;if(e&&"function"==typeof(n=t.toString)&&!P(r=n.call(t)))return r;if("function"==typeof(n=t.valueOf)&&!P(r=n.call(t)))return r;if(!e&&"function"==typeof(n=t.toString)&&!P(r=n.call(t)))return r;throw TypeError("Can't convert object to primitive value")},E={}.hasOwnProperty,R=function(t,e){return E.call(t,e)},_=y.document,A=P(_)&&P(_.createElement),k=function(t){return A?_.createElement(t):{}},B=!h&&!d((function(){return 7!=Object.defineProperty(k("div"),"a",{get:function(){return 7}}).a})),F=Object.getOwnPropertyDescriptor,M={f:h?F:function(t,e){if(t=C(t),e=x(e,!0),B)try{return F(t,e)}catch(t){}if(R(t,e))return m(!g.f.call(t,e),t[e])}},I=function(t){if(!P(t))throw TypeError(String(t)+" is not an object");return t},D=Object.defineProperty,N={f:h?D:function(t,e,n){if(I(t),e=x(e,!0),I(n),B)try{return D(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t}},W=h?function(t,e,n){return N.f(t,e,m(1,n))}:function(t,e,n){return t[e]=n,t},q=function(t,e){try{W(y,t,e)}catch(n){y[t]=e}return e},L="__core-js_shared__",z=y[L]||q(L,{}),$=Function.toString;"function"!=typeof z.inspectSource&&(z.inspectSource=function(t){return $.call(t)});var H,G,V,K=z.inspectSource,Q=y.WeakMap,X="function"==typeof Q&&/native code/.test(K(Q)),Y=s((function(t){(t.exports=function(t,e){return z[t]||(z[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.10.1",mode:"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"})})),J=0,U=Math.random(),Z=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++J+U).toString(36)},tt=Y("keys"),et=function(t){return tt[t]||(tt[t]=Z(t))},nt={},rt=y.WeakMap;if(X){var ot=z.state||(z.state=new rt),it=ot.get,ut=ot.has,ct=ot.set;H=function(t,e){return e.facade=t,ct.call(ot,t,e),e},G=function(t){return it.call(ot,t)||{}},V=function(t){return ut.call(ot,t)}}else{var at=et("state");nt[at]=!0,H=function(t,e){return e.facade=t,W(t,at,e),e},G=function(t){return R(t,at)?t[at]:{}},V=function(t){return R(t,at)}}var ft={set:H,get:G,has:V,enforce:function(tLine truncated
@@ -0,0 +1,10 @@
/**
* bootstrap-table - An extended table to integration with some of the most widely used CSS frameworks. (Supports Bootstrap, Semantic UI, Bulma, Material Design, Foundation)
*
* @version v1.19.1
* @homepage https://bootstrap-table.com
* @author wenzhixin <wenzhixin2010@gmail.com> (http://wenzhixin.net.cn/)
* @license MIT
*/
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(require("jquery")):"function"==typeof define&&define.amd?define(["jquery"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).jQuery)}(this,(function(t){"use strict";function e(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var n=e(t);function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function i(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function a(t){return(a=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function c(t,e){return(c=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function l(t,e){return!e||"object"!=typeof e&&"function"!=typeof e?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):e}function u(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,r=a(t);if(e){var o=a(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return l(this,n)}}function f(t,e,n){return(f="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){var r=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=a(t)););return t}(t,e);if(r){var o=Object.getOwnPropertyDescriptor(r,e);return o.get?o.get.call(n):o.value}})(t,e,n||t)}function s(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function p(t,e){var n;if("undefined"==typeof Symbol||null==t[Symbol.iterator]){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return s(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?s(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,c=!1;return{s:function(){n=t[Symbol.iterator]()},n:function(){var t=n.next();return a=t.done,t},e:function(t){c=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(c)throw i}}}}var d="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function h(t,e){return t(e={exports:{}},e.exports),e.exports}var g=function(t){return t&&t.Math==Math&&t},v=g("object"==typeof globalThis&&globalThis)||g("object"==typeof window&&window)||g("object"==typeof self&&self)||g("object"==typeof d&&d)||function(){return this}()||Function("return this")(),y=function(t){try{return!!t()}catch(t){return!0}},b=!y((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),x={}.propertyIsEnumerable,m=Object.getOwnPropertyDescriptor,E={f:m&&!x.call({1:2},1)?function(t){var e=m(this,t);return!!e&&e.enumerable}:x},w=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},S={}.toString,T=function(t){return S.call(t).slice(8,-1)},O="".split,j=y((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==T(t)?O.call(t,""):Object(t)}:Object,P=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t},A=function(t){return j(P(t))},R=function(t){return"object"==typeof t?null!==t:"function"==typeof t},C=function(t,e){if(!R(t))return t;var n,r;if(e&&"function"==typeof(n=t.toString)&&!R(r=n.call(t)))return r;if("function"==typeof(n=t.valueOf)&&!R(r=n.call(t)))return r;if(!e&&"function"==typeof(n=t.toString)&&!R(r=n.call(t)))return r;throw TypeError("Can't convert object to primitive value")},I={}.hasOwnProperty,L=function(t,e){return I.call(t,e)},M=v.document,D=R(M)&&R(M.createElement),_=function(t){return D?M.createElement(t):{}},$=!b&&!y((function(){return 7!=Object.defineProperty(_("div"),"a",{get:function(){return 7}}).a})),k=Object.getOwnPropertyDescriptor,N={f:b?k:function(t,e){if(t=A(t),e=C(e,!0),$)try{return k(t,e)}catch(t){}if(L(t,e))return w(!E.f.call(t,e),t[e])}},F=function(t){if(!R(t))throw TypeError(String(t)+" is not an object");return t},B=Object.defineProperty,V={f:b?B:function(t,e,n){if(F(t),e=C(e,!0),F(n),$)try{return B(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"vaLine truncated
@@ -0,0 +1,10 @@
/**
* bootstrap-table - An extended table to integration with some of the most widely used CSS frameworks. (Supports Bootstrap, Semantic UI, Bulma, Material Design, Foundation)
*
* @version v1.19.1
* @homepage https://bootstrap-table.com
* @author wenzhixin <wenzhixin2010@gmail.com> (http://wenzhixin.net.cn/)
* @license MIT
*/
.bootstrap-table .fixed-table-toolbar::after{content:"";display:block;clear:both}.bootstrap-table .fixed-table-toolbar .bs-bars,.bootstrap-table .fixed-table-toolbar .columns,.bootstrap-table .fixed-table-toolbar .search{position:relative;margin-top:10px;margin-bottom:10px}.bootstrap-table .fixed-table-toolbar .columns .btn-group>.btn-group{display:inline-block;margin-left:-1px!important}.bootstrap-table .fixed-table-toolbar .columns .btn-group>.btn-group>.btn{border-radius:0}.bootstrap-table .fixed-table-toolbar .columns .btn-group>.btn-group:first-child>.btn{border-top-left-radius:4px;border-bottom-left-radius:4px}.bootstrap-table .fixed-table-toolbar .columns .btn-group>.btn-group:last-child>.btn{border-top-right-radius:4px;border-bottom-right-radius:4px}.bootstrap-table .fixed-table-toolbar .columns .dropdown-menu{text-align:left;max-height:300px;overflow:auto;-ms-overflow-style:scrollbar;z-index:1001}.bootstrap-table .fixed-table-toolbar .columns label{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.428571429}.bootstrap-table .fixed-table-toolbar .columns-left{margin-right:5px}.bootstrap-table .fixed-table-toolbar .columns-right{margin-left:5px}.bootstrap-table .fixed-table-toolbar .pull-right .dropdown-menu{right:0;left:auto}.bootstrap-table .fixed-table-container{position:relative;clear:both}.bootstrap-table .fixed-table-container .table{width:100%;margin-bottom:0!important}.bootstrap-table .fixed-table-container .table td,.bootstrap-table .fixed-table-container .table th{vertical-align:middle;box-sizing:border-box}.bootstrap-table .fixed-table-container .table thead th{vertical-align:bottom;padding:0;margin:0}.bootstrap-table .fixed-table-container .table thead th:focus{outline:0 solid transparent}.bootstrap-table .fixed-table-container .table thead th.detail{width:30px}.bootstrap-table .fixed-table-container .table thead th .th-inner{padding:.75rem;vertical-align:bottom;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bootstrap-table .fixed-table-container .table thead th .sortable{cursor:pointer;background-position:right;background-repeat:no-repeat;padding-right:30px!important}.bootstrap-table .fixed-table-container .table thead th .both{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAQAAADYWf5HAAAAkElEQVQoz7X QMQ5AQBCF4dWQSJxC5wwax1Cq1e7BAdxD5SL+Tq/QCM1oNiJidwox0355mXnG/DrEtIQ6azioNZQxI0ykPhTQIwhCR+BmBYtlK7kLJYwWCcJA9M4qdrZrd8pPjZWPtOqdRQy320YSV17OatFC4euts6z39GYMKRPCTKY9UnPQ6P+GtMRfGtPnBCiqhAeJPmkqAAAAAElFTkSuQmCC")}.bootstrap-table .fixed-table-container .table thead th .asc{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAZ0lEQVQ4y2NgGLKgquEuFxBPAGI2ahhWCsS/gDibUoO0gPgxEP8H4ttArEyuQYxAPBdqEAxPBImTY5gjEL9DM+wTENuQahAvEO9DMwiGdwAxOymGJQLxTyD+jgWDxCMZRsEoGAVoAADeemwtPcZI2wAAAABJRU5ErkJggg==")}.bootstrap-table .fixed-table-container .table thead th .desc{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAZUlEQVQ4y2NgGAWjYBSggaqGu5FA/BOIv2PBIPFEUgxjB+IdQPwfC94HxLykus4GiD+hGfQOiB3J8SojEE9EM2wuSJzcsFMG4ttQgx4DsRalkZENxL+AuJQaMcsGxBOAmGvopk8AVz1sLZgg0bsAAAAASUVORK5CYII= ")}.bootstrap-table .fixed-table-container .table tbody tr.selected td{background-color:rgba(0,0,0,.075)}.bootstrap-table .fixed-table-container .table tbody tr.no-records-found td{text-align:center}.bootstrap-table .fixed-table-container .table tbody tr .card-view{display:flex}.bootstrap-table .fixed-table-container .table tbody tr .card-view .card-view-title{font-weight:700;display:inline-block;min-width:30%;width:auto!important;text-align:left!important}.bootstrap-table .fixed-table-container .table tbody tr .card-view .card-view-value{width:100%!important}.bootstrap-table .fixed-table-container .table .bs-checkbox{text-align:center}.bootstrap-table .fixed-table-container .table .bs-checkbox label{margin-bottom:0}.bootstrap-table .fixed-table-container .table .bs-checkbox label input[type=checkbox],.bootstrap-table .fixed-table-container .table .bs-checkbox label input[type=radio]{margin:0 auto!important}.bootstrap-table .fixed-table-container .table.table-sm .th-inner{padding:.3rem}.bootstrap-table .fixed-table-container.fixed-height:not(.has-footer){border-bottom:1px solid #dee2e6}.bootstrap-table .fixed-table-container.fixed-height.has-card-view{border-top:1px solid #dee2e6;border-bottom:1px solid #dee2e6}.bootstrap-table .fixed-table-container.fixed-height .fixed-table-border{border-left:1px solid #dee2e6;border-right:1px solid #dee2e6}.bootstrap-table .fixed-table-container.fixed-height .table thead th{border-bottom:1px solid #dee2e6}.bootstrap-table .fixed-table-container.fixed-height .table-dark thead th{border-bottom:1px solid #32383e}.bootstrap-table .fixed-table-container .fixed-table-header{overflow:hidden}.bootstrap-table .fixed-table-container .fixed-table-body{overflow-x:auto;overflow-y:auto;height:100%}.bootstrap-table .fixed-table-container .fixed-table-body .fixed-tableLine truncated
@@ -0,0 +1,10 @@
/**
* bootstrap-table - An extended table to integration with some of the most widely used CSS frameworks. (Supports Bootstrap, Semantic UI, Bulma, Material Design, Foundation)
*
* @version v1.19.1
* @homepage https://bootstrap-table.com
* @author wenzhixin <wenzhixin2010@gmail.com> (http://wenzhixin.net.cn/)
* @license MIT
*/
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("jquery")):"function"==typeof define&&define.amd?define(["jquery"],e):(t="undefined"!=typeof globalThis?globalThis:t||self).BootstrapTable=e(t.jQuery)}(this,(function(t){"use strict";function e(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var i=e(t);function n(t){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function a(t,e){for(var i=0;i<e.length;i++){var n=e[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}function s(t,e,i){return e&&a(t.prototype,e),i&&a(t,i),t}function r(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(t)))return;var i=[],n=!0,o=!1,a=void 0;try{for(var s,r=t[Symbol.iterator]();!(n=(s=r.next()).done)&&(i.push(s.value),!e||i.length!==e);n=!0);}catch(t){o=!0,a=t}finally{try{n||null==r.return||r.return()}finally{if(o)throw a}}return i}(t,e)||c(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function l(t){return function(t){if(Array.isArray(t))return h(t)}(t)||function(t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t))return Array.from(t)}(t)||c(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(t,e){if(t){if("string"==typeof t)return h(t,e);var i=Object.prototype.toString.call(t).slice(8,-1);return"Object"===i&&t.constructor&&(i=t.constructor.name),"Map"===i||"Set"===i?Array.from(t):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?h(t,e):void 0}}function h(t,e){(null==e||e>t.length)&&(e=t.length);for(var i=0,n=new Array(e);i<e;i++)n[i]=t[i];return n}function u(t,e){var i;if("undefined"==typeof Symbol||null==t[Symbol.iterator]){if(Array.isArray(t)||(i=c(t))||e&&t&&"number"==typeof t.length){i&&(t=i);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,r=!1;return{s:function(){i=t[Symbol.iterator]()},n:function(){var t=i.next();return s=t.done,t},e:function(t){r=!0,a=t},f:function(){try{s||null==i.return||i.return()}finally{if(r)throw a}}}}var d="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function f(t,e){return t(e={exports:{}},e.exports),e.exports}var p=function(t){return t&&t.Math==Math&&t},g=p("object"==typeof globalThis&&globalThis)||p("object"==typeof window&&window)||p("object"==typeof self&&self)||p("object"==typeof d&&d)||function(){return this}()||Function("return this")(),v=function(t){try{return!!t()}catch(t){return!0}},b=!v((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),m={}.propertyIsEnumerable,y=Object.getOwnPropertyDescriptor,w={f:y&&!m.call({1:2},1)?function(t){var e=y(this,t);return!!e&&e.enumerable}:m},S=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},x={}.toString,k=function(t){return x.call(t).slice(8,-1)},O="".split,C=v((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==k(t)?O.call(t,""):Object(t)}:Object,T=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t},P=function(t){return C(T(t))},I=function(t){return"object"==typeof t?null!==t:"function"==typeof t},A=function(t,e){if(!I(t))return t;var i,n;if(e&&"function"==typeof(i=t.toString)&&!I(n=i.call(t)))return n;if("function"==typeof(i=t.valueOf)&&!I(n=i.call(t)))return n;if(!e&&"function"==typeof(i=t.toString)&&!I(n=i.call(t)))return n;throw TypeError("Can't convert object to primitive value")},$={}.hasOwnProperty,E=function(t,e){return $.call(t,e)},R=g.document,j=I(R)&&I(R.createElement),_=function(t){return j?R.createElement(t):{}},N=!b&&!v((function(){return 7!=Object.defineProperty(_("div"),"a",{get:function(){return 7}}).a})),F=Object.getOwnPropertyDescriptor,D={f:b?F:function(t,e){if(t=P(t),e=A(e,!0),N)try{return F(t,e)}catch(t){}if(E(t,e))return S(!w.f.call(t,e),t[e])}},V=function(t){if(!I(t))throw TypeError(String(t)+" is not an object");return t},B=Object.defineProperty,L={f:b?B:function(t,e,i){if(V(t),e=A(e,!0),V(i),N)try{return B(t,e,i)}catch(t){}if("get"in i||"set"in i)throw TypeError("Accessors not supported");return"value"in i&&(t[e]=i.valueLine truncated
@@ -0,0 +1,13 @@
/**
* @preserve tableExport.jquery.plugin
*
* Version 1.21.0
*
* Copyright (c) 2015-2021 hhurz,
* https://github.com/hhurz/tableExport.jquery.plugin
*
* Based on https://github.com/kayalshri/tableExport.jquery.plugin
*
* Licensed under the MIT License
**/
"use strict";(function($){$.fn.tableExport=function(options){let docData;const defaults={csvEnclosure:'"',csvSeparator:",",csvUseBOM:true,date:{html:"dd/mm/yyyy"},displayTableName:false,escape:false,exportHiddenCells:false,fileName:"tableExport",htmlContent:false,htmlHyperlink:"content",ignoreColumn:[],ignoreRow:[],jsonScope:"all",jspdf:{orientation:"p",unit:"pt",format:"a4",margins:{left:20,right:10,top:10,bottom:10},onDocCreated:null,autotable:{styles:{cellPadding:2,rowHeight:12,fontSize:8,fillColor:255,textColor:50,fontStyle:"normal",overflow:"ellipsize",halign:"inherit",valign:"middle"},headerStyles:{fillColor:[52,73,94],textColor:255,fontStyle:"bold",halign:"inherit",valign:"middle"},alternateRowStyles:{fillColor:245},tableExport:{doc:null,onAfterAutotable:null,onBeforeAutotable:null,onAutotableText:null,onTable:null,outputImages:true}}},mso:{fileFormat:"xlshtml",onMsoNumberFormat:null,pageFormat:"a4",pageOrientation:"portrait",rtl:false,styles:[],worksheetName:"",xlsx:{formatId:{date:14,numbers:2},onHyperlink:null}},numbers:{html:{decimalMark:".",thousandsSeparator:","},output:{decimalMark:".",thousandsSeparator:","}},onAfterSaveToFile:null,onBeforeSaveToFile:null,onCellData:null,onCellHtmlData:null,onCellHtmlHyperlink:null,onIgnoreRow:null,onTableExportBegin:null,onTableExportEnd:null,outputMode:"file",pdfmake:{enabled:false,docDefinition:{pageSize:"A4",pageOrientation:"portrait",styles:{header:{background:"#34495E",color:"#FFFFFF",bold:true,alignment:"center",fillColor:"#34495E"},alternateRow:{fillColor:"#f5f5f5"}},defaultStyle:{color:"#000000",fontSize:8,font:"Roboto"}},fonts:{}},preserve:{leadingWS:false,trailingWS:false},preventInjection:true,sql:{tableEnclosure:"`",columnEnclosure:"`"},tbodySelector:"tr",tfootSelector:"tr",theadSelector:"tr",tableName:"Table",type:"csv"};const pageFormats={a0:[2383.94,3370.39],a1:[1683.78,2383.94],a2:[1190.55,1683.78],a3:[841.89,1190.55],a4:[595.28,841.89],a5:[419.53,595.28],a6:[297.64,419.53],a7:[209.76,297.64],a8:[147.4,209.76],a9:[104.88,147.4],a10:[73.7,104.88],b0:[2834.65,4008.19],b1:[2004.09,2834.65],b2:[1417.32,2004.09],b3:[1000.63,1417.32],b4:[708.66,1000.63],b5:[498.9,708.66],b6:[354.33,498.9],b7:[249.45,354.33],b8:[175.75,249.45],b9:[124.72,175.75],b10:[87.87,124.72],c0:[2599.37,3676.54],c1:[1836.85,2599.37],c2:[1298.27,1836.85],c3:[918.43,1298.27],c4:[649.13,918.43],c5:[459.21,649.13],c6:[323.15,459.21],c7:[229.61,323.15],c8:[161.57,229.61],c9:[113.39,161.57],c10:[79.37,113.39],dl:[311.81,623.62],letter:[612,792],"government-letter":[576,756],legal:[612,1008],"junior-legal":[576,360],ledger:[1224,792],tabloid:[792,1224],"credit-card":[153,243]};const jsPdfThemes={striped:{table:{fillColor:255,textColor:80,fontStyle:"normal",fillStyle:"F"},header:{textColor:255,fillColor:[41,128,185],rowHeight:23,fontStyle:"bold"},body:{},alternateRow:{fillColor:245}},grid:{table:{fillColor:255,textColor:80,fontStyle:"normal",lineWidth:.1,fillStyle:"DF"},header:{textColor:255,fillColor:[26,188,156],rowHeight:23,fillStyle:"F",fontStyle:"bold"},body:{},alternateRow:{}},plain:{header:{fontStyle:"bold"}}};const jsPdfDefaultStyles={cellPadding:5,fontSize:10,font:"helvetica",lineColor:200,lineWidth:.1,fontStyle:"normal",overflow:"ellipsize",fillColor:255,textColor:20,halign:"left",valign:"top",fillStyle:"F",rowHeight:20,columnWidth:"auto"};const FONT_ROW_RATIO=1.15;const el=this;let DownloadEvt=null;let $head_rows=[];let $rows=[];let rowIndex=0;let trData="";let colNames=[];let ranges=[];let blob;let $hiddenTableElements=[];let checkCellVisibility=false;$.extend(true,defaults,options);if(defaults.type==="xlsx"){defaults.mso.fileFormat=defaults.type;defaults.type="excel"}if(typeof defaults.excelFileFormat!=="undefined"&&typeof defaults.mso.fileFormat==="undefined")defaults.mso.fileFormat=defaults.excelFileFormat;if(typeof defaults.excelPageFormat!=="undefined"&&typeof defaults.mso.pageFormat==="undefined")defaults.mso.pageFormat=defaults.excelPageFormat;if(typeof defaults.excelPageOrientation!=="undefined"&&typeof defaults.mso.pageOrientation==="undefined")defaults.mso.pageOrientation=defaults.excelPageOrientation;if(typeof defaults.excelRTL!=="undefined"&&typeof defaults.mso.rtl==="undefined")defaults.mso.rtl=defaults.excelRTL;if(typeof defaults.excelstyles!=="undefined"&&typeof defaults.mso.styles==="undefined")defaults.mso.styles=defaults.excelstyles;if(typeof defaults.onMsoNumberFormat!=="undefined"&&typeof defaults.mso.onMsoNumberFormat==="undefined")defaults.mso.onMsoNumberFormat=defaults.onMsoNumberFormat;if(typeof defaults.worksheetName!=="undefined"&&typeof defaults.mso.worksheetName==="undefined")defaults.mso.worksheetName=defaults.worksheetName;if(typeof defaults.mso.xslx!=="undefined"&&typeof defaults.mso.xlsx==="undefined")defaults.mso.xlsx=defaults.mso.xslx;defaults.mso.pageOrientation=defaults.mso.pageOrientation.substr(0,1)==="l"?"landscape":"portrait";defaults.date.html=defaults.date.html||"";if(defaults.date.html.length){const patt=[];patt["dd"]="(3[01]|[12Line truncated
+7
View File
@@ -0,0 +1,7 @@
/*!
* Bootstrap v5.1.1 (https://getbootstrap.com/)
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
*/
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).bootstrap=e()}(this,(function(){"use strict";const t=t=>{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let i=t.getAttribute("href");if(!i||!i.includes("#")&&!i.startsWith("."))return null;i.includes("#")&&!i.startsWith("#")&&(i="#"+i.split("#")[1]),e=i&&"#"!==i?i.trim():null}return e},e=e=>{const i=t(e);return i&&document.querySelector(i)?i:null},i=e=>{const i=t(e);return i?document.querySelector(i):null},n=t=>{t.dispatchEvent(new Event("transitionend"))},s=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),o=t=>s(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?document.querySelector(t):null,r=(t,e,i)=>{Object.keys(i).forEach(n=>{const o=i[n],r=e[n],a=r&&s(r)?"element":null==(l=r)?""+l:{}.toString.call(l).match(/\s([a-z]+)/i)[1].toLowerCase();var l;if(!new RegExp(o).test(a))throw new TypeError(`${t.toUpperCase()}: Option "${n}" provided type "${a}" but expected type "${o}".`)})},a=t=>!(!s(t)||0===t.getClientRects().length)&&"visible"===getComputedStyle(t).getPropertyValue("visibility"),l=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),c=t=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof t.getRootNode){const e=t.getRootNode();return e instanceof ShadowRoot?e:null}return t instanceof ShadowRoot?t:t.parentNode?c(t.parentNode):null},h=()=>{},d=t=>{t.offsetHeight},u=()=>{const{jQuery:t}=window;return t&&!document.body.hasAttribute("data-bs-no-jquery")?t:null},f=[],p=()=>"rtl"===document.documentElement.dir,m=t=>{var e;e=()=>{const e=u();if(e){const i=t.NAME,n=e.fn[i];e.fn[i]=t.jQueryInterface,e.fn[i].Constructor=t,e.fn[i].noConflict=()=>(e.fn[i]=n,t.jQueryInterface)}},"loading"===document.readyState?(f.length||document.addEventListener("DOMContentLoaded",()=>{f.forEach(t=>t())}),f.push(e)):e()},g=t=>{"function"==typeof t&&t()},_=(t,e,i=!0)=>{if(!i)return void g(t);const s=(t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:i}=window.getComputedStyle(t);const n=Number.parseFloat(e),s=Number.parseFloat(i);return n||s?(e=e.split(",")[0],i=i.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(i))):0})(e)+5;let o=!1;const r=({target:i})=>{i===e&&(o=!0,e.removeEventListener("transitionend",r),g(t))};e.addEventListener("transitionend",r),setTimeout(()=>{o||n(e)},s)},b=(t,e,i,n)=>{let s=t.indexOf(e);if(-1===s)return t[!i&&n?t.length-1:0];const o=t.length;return s+=i?1:-1,n&&(s=(s+o)%o),t[Math.max(0,Math.min(s,o-1))]},v=/[^.]*(?=\..*)\.|.*/,y=/\..*/,w=/::\d+$/,E={};let A=1;const T={mouseenter:"mouseover",mouseleave:"mouseout"},O=/^(mouseenter|mouseleave)/i,C=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function k(t,e){return e&&`${e}::${A++}`||t.uidEvent||A++}function L(t){const e=k(t);return t.uidEvent=e,E[e]=E[e]||{},E[e]}function x(t,e,i=null){const n=Object.keys(t);for(let s=0,o=n.length;s<o;s++){const o=t[n[s]];if(o.originalHandler===e&&o.delegationSelector===i)return o}return null}function D(t,e,i){const n="string"==typeof e,s=n?i:e;let o=I(t);return C.has(o)||(o=t),[n,s,o]}function S(t,e,i,n,s){if("string"!=typeof e||!t)return;if(i||(i=n,n=null),O.test(e)){const t=t=>function(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};n?n=t(n):i=t(i)}const[o,r,a]=D(e,i,n),l=L(t),c=l[a]||(l[a]={}),h=x(c,r,o?i:null);if(h)return void(h.oneOff=h.oneOff&&s);const d=k(r,e.replace(v,"")),u=o?function(t,e,i){return function n(s){const o=t.querySelectorAll(e);for(let{target:r}=s;r&&r!==this;r=r.parentNode)for(let a=o.length;a--;)if(o[a]===r)return s.delegateTarget=r,n.oneOff&&P.off(t,s.type,e,i),i.apply(r,[s]);return null}}(t,i,n):function(t,e){return function i(n){return n.delegateTarget=t,i.oneOff&&P.off(t,n.type,e),e.apply(t,[n])}}(t,i);u.delegationSelector=o?i:null,u.originalHandler=r,u.oneOff=s,u.uidEvent=d,c[d]=u,t.addEventListener(a,u,o)}function N(t,e,i,n,s){const o=x(e[i],n,s);o&&(t.removeEventListener(i,o,Boolean(s)),delete e[i][o.uidEvent])}function I(t){return t=t.replace(y,""),T[t]||t}const P={on(t,e,i,n){S(t,e,i,n,!1)},one(t,e,i,n){S(t,e,i,n,!0)},off(t,e,i,n){if("string"!=typeof e||!t)return;const[s,o,r]=D(e,i,n),a=r!==e,l=L(t),c=e.startsWith(".");if(voidLine truncated
//# sourceMappingURL=bootstrap.bundle.min.js.map
+7
View File
@@ -0,0 +1,7 @@
@charset "UTF-8";/*!
* Bootstrap v5.1.1 (https://getbootstrap.com/)
* Copyright 2011-2021 The Bootstrap Authors
* Copyright 2011-2021 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
*/:root{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-body-color-rgb:33,37,41;--bs-body-bg-rgb:255,255,255;--bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-bg:#fff}*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;background-color:currentColor;border:0;opacity:.25}hr:not([size]){height:1px}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2}.h1,h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){.h1,h1{font-size:2.5rem}}.h2,h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){.h2,h2{font-size:2rem}}.h3,h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){.h3,h3{font-size:1.75rem}}.h4,h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){.h4,h4{font-size:1.5rem}}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[data-bs-original-title],abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}.small,small{font-size:.875em}.mark,mark{padding:.2em;background-color:#fcf8e3}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#0d6efd;text-decoration:underline}a:hover{color:#0a58ca}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--bs-font-monospace);font-size:1em;direction:ltr;unicode-bidi:bidi-override}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:#d63384;word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:.875em;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:1em;font-weight:700}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#6c757d;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]::-webkit-calendar-picker-indicator{display:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:iLine truncated
/*# sourceMappingURL=bootstrap.min.css.map */
@@ -0,0 +1 @@
pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-keyword,.hljs-operator,.hljs-pattern-match{color:#f92672}.hljs-function,.hljs-pattern-match .hljs-constructor{color:#61aeee}.hljs-function .hljs-params{color:#a6e22e}.hljs-function .hljs-params .hljs-typing{color:#fd971f}.hljs-module-access .hljs-module{color:#7e57c2}.hljs-constructor{color:#e2b93d}.hljs-constructor .hljs-string{color:#9ccc65}.hljs-comment,.hljs-quote{color:#b18eb1;font-style:italic}.hljs-doctag,.hljs-formula{color:#c678dd}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#98c379}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#e6c07b}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#d19a66}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#61aeee}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}
@@ -0,0 +1 @@
pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#383a42;background:#fafafa}.hljs-comment,.hljs-quote{color:#a0a1a7;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#a626a4}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e45649}.hljs-literal{color:#0184bb}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#50a14f}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#986801}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#4078f2}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#c18401}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}
+9
View File
@@ -0,0 +1,9 @@
/*!
Theme: Default
Description: Original highlight.js style
Author: (c) Ivan Sagalaev <maniac@softwaremaniacs.org>
Maintainer: @highlightjs/core-team
Website: https://highlightjs.org/
License: see project LICENSE
Touched: 2021
*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#f0f0f0;color:#444}.hljs-comment{color:#888}.hljs-punctuation,.hljs-tag{color:#444a}.hljs-tag .hljs-attr,.hljs-tag .hljs-name{color:#444}.hljs-attribute,.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-name,.hljs-selector-tag{font-weight:700}.hljs-deletion,.hljs-number,.hljs-quote,.hljs-selector-class,.hljs-selector-id,.hljs-string,.hljs-template-tag,.hljs-type{color:#800}.hljs-section,.hljs-title{color:#800;font-weight:700}.hljs-link,.hljs-operator,.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#bc6060}.hljs-literal{color:#78a960}.hljs-addition,.hljs-built_in,.hljs-bullet,.hljs-code{color:#397300}.hljs-meta{color:#1f7199}.hljs-meta .hljs-string{color:#4d99bf}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}
File diff suppressed because it is too large. Load diff
+2
View File
@@ -0,0 +1,2 @@
/*! jQuery v3.6.0 | (c) OpenJS Foundation and other contributors | jquery.org/license */
!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.6.0",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}S.fn=S.prototype={jquery:f,constructor:S,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=S.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return S.each(this,e)},map:function(n){return this.pushStack(S.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(S.grep(this,function(e,t){return(t+1)%2}))},odd:function(){return this.pushStack(S.grep(this,function(e,t){return t%2}))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:t.sort,splice:t.splice},S.extend=S.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(S.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||S.isPlainObject(n)?n:{},i=!1,a[t]=S.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},S.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=v.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){b(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(p(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(p(Object(e))?S.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(p(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return g(a)},guid:1,support:y}),"function"==typeof Symbol&&(S.fn[Symbol.iterator]=t[Symbol.iterator]),S.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var d=function(n){var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,S="sizzle"+1*new Date,p=n.document,k=0,r=0,m=ue(),x=ue(),A=ue(),N=ue(),j=function(e,t){return e===t&&(l=!0),0},D={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,O=t.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",I="(?:\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",W="\\["+M+"*("+I+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+M+"*\\]",F=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+W+")*)|.*)\\)|)",B=new RegExp(M+"+","g"),$=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),_=new RegExp("^"+M+"*,"+M+"*"),z=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^Line truncated
+19
View File
@@ -0,0 +1,19 @@
#container {
position: relative;
padding-bottom: 8rem;
}
#content {
margin-top: 90px;
scroll-behavior: smooth;
position: relative; /* for scrollspy */
}
#toc {
margin-top: 90px;
padding-bottom: 8rem;
}
footer {
margin-top: 8rem;
}
+269
View File
@@ -0,0 +1,269 @@
/* We need to refresh the scroll spy after (un)hiding elements */
const refreshScrollSpy = () =>{
const dataSpyList = [].slice.call(document.querySelectorAll('[data-bs-spy="scroll"]'));
dataSpyList.forEach((dataSpyEl) => {
bootstrap.ScrollSpy.getInstance(dataSpyEl)
.refresh()
})
}
const propagateScrollSpyURL = () => {
window.addEventListener('activate.bs.scrollspy', (e) => {
history.replaceState({}, "", e.relatedTarget);
});
}
/* Show or hide elements based on their tag */
const toggleTagVisibility = (tagName) => {
const tag = tags.find((element) => {
return element.name === tagName;
});
tag.visible = !tag.visible;
const hiddenTagNames = tags.map((tag) => {
if (tag.visible) {
return
} else {
return tag.name
}
});
const elements = $(`[data-mne-tags~="${tagName}"]`);
elements.each((i) => {
const currentElement = elements[i];
const tagValuesOfCurrentElement = currentElement.getAttribute('data-mne-tags');
// TODO This can probably be refactored to not use a Set.
const tagNamesOfCurrentElement = new Set(tagValuesOfCurrentElement.match(/\S+/g)); // non-whitespace
const visibleTagNamesOfCurrentElement = new Set(
[...tagNamesOfCurrentElement].filter(e => !hiddenTagNames.includes(e))
);
if (visibleTagNamesOfCurrentElement.size === 0) { // hide
$(currentElement).slideToggle('fast', () => {
currentElement.classList.add('d-none');
});
} else if ($(currentElement).hasClass('d-none')) { // show
currentElement.classList.remove('d-none');
$(currentElement).slideToggle('fast');
}
})
const tagBadgeElements = document.querySelectorAll(`span.badge[data-mne-tag~="${tagName}"]`);
tagBadgeElements.forEach((badgeElement) => {
if (tag.visible) {
badgeElement.removeAttribute('data-mne-tag-hidden');
badgeElement.classList.remove('bg-secondary');
badgeElement.classList.add('bg-primary');
} else {
badgeElement.setAttribute('data-mne-tag-hidden', true);
badgeElement.classList.remove('bg-primary');
badgeElement.classList.add('bg-secondary');
}
})
refreshScrollSpy();
}
/* Gather all available tags and expose them in the global namespace */
let tags = []; // array of objects
const gatherTags = () => {
// only consider top-level elements
const taggedElements = document.querySelectorAll("#content > div[data-mne-tags]");
taggedElements.forEach((element) => {
const value = element.getAttribute('data-mne-tags');
const tagNames = value.match(/\S+/g); // non-whitespace
tagNames.forEach((tagName) => {
const existingTag = tags.find((element) => {
return element.name === tagName;
})
if (existingTag === undefined) {
const tag = {
name : tagName,
visible: true,
count: 1
};
tags.push(tag);
} else {
existingTag.count = existingTag.count + 1;
}
})
})
}
/* Badges do display the tag count */
const updateTagCountBadges = () => {
const menuEntries = document
.querySelectorAll("#filter-by-tags-dropdown-menu > ul > li > label[data-mne-tag]")
menuEntries.forEach((menuEntry) => {
const tagName = menuEntry.getAttribute('data-mne-tag');
const tag = tags.find((tag) => {
return tag.name === tagName;
})
const tagCount = tag.count;
const tagCountBadge = menuEntry.querySelector('span.badge');
tagCountBadge.innerHTML = tagCount.toString();
});
}
const addFilterByTagsCheckboxEventHandlers = () => {
// "Filter by tag" checkbox event handling
const selectAllTagsCheckboxLabel = document
.querySelector('#selectAllTagsCheckboxLabel');
const filterByTagsDropdownMenuLabels = document
.querySelectorAll("#filter-by-tags-dropdown-menu > ul > li > label[data-mne-tag]")
filterByTagsDropdownMenuLabels.forEach((label) => {
// Prevent dropdown menu from closing when clicking on a tag checkbox label
label.addEventListener("click", (e) => {
e.stopPropagation();
})
// Show / hide content if a tag checkbox value has changed
const tagName = label.getAttribute("data-mne-tag");
const checkbox = label.querySelector("input");
checkbox.addEventListener("change", () => {
toggleTagVisibility(tagName);
})
})
// "Select all" checkbox
selectAllTagsCheckboxLabel.addEventListener("click", (e) => {
e.stopPropagation();
})
const selectAllTagsCheckbox = selectAllTagsCheckboxLabel.querySelector('input');
selectAllTagsCheckbox.addEventListener("change", (e) => {
const selectAllCheckboxStatus = e.target.checked;
filterByTagsDropdownMenuLabels.forEach((element) => {
const checkbox = element.querySelector('input');
if (checkbox.checked !== selectAllCheckboxStatus) {
checkbox.checked = selectAllCheckboxStatus
// we need to manually trigger the change event
const changeEvent = new Event('change');
checkbox.dispatchEvent(changeEvent);
}
})
});
}
/* Avoid top of content getting hidden behind navbar after clicking on a TOC
link */
const _handleTocLinkClick = (e) => {
e.preventDefault();
const topBarHeight = document.querySelector('#top-bar').scrollHeight
const margin = 30 + topBarHeight;
const tocLinkElement = e.target;
const targetDomId = tocLinkElement.getAttribute('href');
const targetElement = document.querySelector(targetDomId);
const top = targetElement.getBoundingClientRect().top + window.scrollY;
// Update URL to reflect the current scroll position.
// We use history.pushState to change the URL without causing the browser to scroll.
history.pushState(null, "", targetDomId);
// Now scroll to the correct position.
window.scrollTo(0, top - margin);
}
const fixScrollingForTocLinks = () => {
const tocLinkElements = document.querySelectorAll('#toc-navbar > a');
tocLinkElements.forEach((element) => {
element.removeEventListener('click', _handleTocLinkClick)
element.addEventListener('click', _handleTocLinkClick)
})
}
const addSliderEventHandlers = () => {
const accordionElementsWithSlider = document.querySelectorAll('div.accordion-item.slider');
accordionElementsWithSlider.forEach((el) => {
const accordionElement = el.querySelector('div.accordion-body');
const slider = accordionElement.querySelector('input');
// const sliderLabel = accordionElement.querySelector('label');
const carousel = accordionElement.querySelector('div.carousel');
slider.addEventListener('input', (e) => {
const sliderValue = parseInt(e.target.value);
$(carousel).carousel(sliderValue);
})
// Allow focussing the slider with a click on the slider or carousel, so keyboard
// controls (left / right arrow) can be enabled.
// This also appears to be the only way to focus the slider in Safari:
// https://itnext.io/fixing-focus-for-safari-b5916fef1064?gi=c1b8b043fa9b
slider.addEventListener('click', () => {
slider.focus({preventScroll: true})
})
carousel.addEventListener('click', () => {
slider.focus({preventScroll: true})
})
})
}
/* Avoid top of content gets hidden behind the top navbar */
const fixTopMargin = () => {
const topBarHeight = document.querySelector('#top-bar').scrollHeight
const margin = 30 + topBarHeight;
document.getElementById('content').style.marginTop = `${margin}px`;
document.getElementById('toc').style.marginTop = `${margin}px`;
}
/* Show / hide all tags on keypress */
const _globalKeyHandler = (e) => {
if (e.code === "KeyT") {
const selectAllTagsCheckbox = document
.querySelector('#selectAllTagsCheckboxLabel > input');
selectAllTagsCheckbox.checked = !selectAllTagsCheckbox.checked;
// we need to manually trigger the change event
const changeEvent = new Event('change');
selectAllTagsCheckbox.dispatchEvent(changeEvent);
}
}
const enableGlobalKeyHandler = () => {
window.onkeydown = (e) => _globalKeyHandler(e);
}
const disableGlobalKeyHandler = () => {
window.onkeydown = null;
}
/* Disable processing global key events when a search box is active */
const disableGlobalKeysInSearchBox = () => {
const searchBoxElements = document.querySelectorAll('input.search-input');
searchBoxElements.forEach((el) => {
el.addEventListener('focus', () => disableGlobalKeyHandler());
el.addEventListener('blur', () => enableGlobalKeyHandler());
})
}
/* Run once all content is fully loaded. */
window.addEventListener('load', () => {
gatherTags();
updateTagCountBadges();
addFilterByTagsCheckboxEventHandlers();
addSliderEventHandlers();
fixTopMargin();
fixScrollingForTocLinks();
hljs.highlightAll(); // enable highlight.js
disableGlobalKeysInSearchBox();
enableGlobalKeyHandler();
propagateScrollSpyURL();
});
/* Resizing the window throws off the scroll spy and top-margin handling. */
window.onresize = () => {
fixTopMargin();
refreshScrollSpy();
};
+4588
View File
File diff suppressed because it is too large. Load diff