{"version":3,"file":"scripts.min.js","mappings":"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AAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,GAAG,EAAE,IAAI,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,EAAE,IAAI,KAAK,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,GAAG,EAAE,IAAI,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,IAAI,GAAG,EAAE,IAAI,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,EAAE,IAAI,KAAK,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,EAAE,IAAI,KAAK,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,EAAE,IAAI,KAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,EAAE,IAAI,KAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,EAAE,IAAI,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,EAAE,IAAI,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,EAAE,IAAI,KAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,EAAE,IAAI,KAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,EAAE,IAAI,KAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,EAAE,IAAI,KAAK,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,EAAE,IAAI,KAAK,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,GAAG,IAAI,KAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,EAAE,IAAI,KAAK,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,GAAG,IAAI,KAAK,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,EAAE,IAAI,KAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,EAAE,IAAI,KAAK,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,E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","sources":["webpack://app-school-sys-edu/./node_modules/qrcode-svg/lib/qrcode.js","webpack://app-school-sys-edu/./node_modules/slidetoggle/dist/config.js","webpack://app-school-sys-edu/./node_modules/slidetoggle/dist/utils/validator.js","webpack://app-school-sys-edu/./node_modules/slidetoggle/dist/lib/show.js","webpack://app-school-sys-edu/./node_modules/slidetoggle/dist/lib/hide.js","webpack://app-school-sys-edu/./node_modules/slidetoggle/dist/lib/toggle.js","webpack://app-school-sys-edu/./node_modules/tablesort/src/tablesort.js","webpack://app-school-sys-edu/./src/ts/copy-clipboard.ts","webpack://app-school-sys-edu/./src/ts/google-maps.ts","webpack://app-school-sys-edu/./src/ts/hover-text.ts","webpack://app-school-sys-edu/./src/ts/lib-2sxc-accordion.ts","webpack://app-school-sys-edu/./src/ts/lib-2sxc-fancybox.ts","webpack://app-school-sys-edu/./src/ts/manage.ts","webpack://app-school-sys-edu/./src/ts/organization-language-links.ts","webpack://app-school-sys-edu/./src/ts/prepare.ts","webpack://app-school-sys-edu/./src/ts/qr-code.ts","webpack://app-school-sys-edu/./src/ts/tablesort.ts","webpack://app-school-sys-edu/./node_modules/@googlemaps/js-api-loader/dist/index.mjs","webpack://app-school-sys-edu/webpack/bootstrap","webpack://app-school-sys-edu/webpack/runtime/define property getters","webpack://app-school-sys-edu/webpack/runtime/hasOwnProperty shorthand","webpack://app-school-sys-edu/webpack/runtime/make namespace object","webpack://app-school-sys-edu/./src/ts/index.ts"],"sourcesContent":["/**\n * @fileoverview\n * - modified davidshimjs/qrcodejs library for use in node.js\n * - Using the 'QRCode for Javascript library'\n * - Fixed dataset of 'QRCode for Javascript library' for support full-spec.\n * - this library has no dependencies.\n *\n * @version 0.9.1 (2016-02-12)\n * @author davidshimjs, papnkukn\n * @see http://www.d-project.com/\n * @see http://jeromeetienne.github.com/jquery-qrcode/\n * @see https://github.com/davidshimjs/qrcodejs\n */\n\n//---------------------------------------------------------------------\n// QRCode for JavaScript\n//\n// Copyright (c) 2009 Kazuhiko Arase\n//\n// URL: http://www.d-project.com/\n//\n// Licensed under the MIT license:\n// http://www.opensource.org/licenses/mit-license.php\n//\n// The word \"QR Code\" is registered trademark of \n// DENSO WAVE INCORPORATED\n// http://www.denso-wave.com/qrcode/faqpatent-e.html\n//\n//---------------------------------------------------------------------\nfunction QR8bitByte(data) {\n this.mode = QRMode.MODE_8BIT_BYTE;\n this.data = data;\n this.parsedData = [];\n\n // Added to support UTF-8 Characters\n for (var i = 0, l = this.data.length; i < l; i++) {\n var byteArray = [];\n var code = this.data.charCodeAt(i);\n\n if (code > 0x10000) {\n byteArray[0] = 0xF0 | ((code & 0x1C0000) >>> 18);\n byteArray[1] = 0x80 | ((code & 0x3F000) >>> 12);\n byteArray[2] = 0x80 | ((code & 0xFC0) >>> 6);\n byteArray[3] = 0x80 | (code & 0x3F);\n } else if (code > 0x800) {\n byteArray[0] = 0xE0 | ((code & 0xF000) >>> 12);\n byteArray[1] = 0x80 | ((code & 0xFC0) >>> 6);\n byteArray[2] = 0x80 | (code & 0x3F);\n } else if (code > 0x80) {\n byteArray[0] = 0xC0 | ((code & 0x7C0) >>> 6);\n byteArray[1] = 0x80 | (code & 0x3F);\n } else {\n byteArray[0] = code;\n }\n\n this.parsedData.push(byteArray);\n }\n\n this.parsedData = Array.prototype.concat.apply([], this.parsedData);\n\n if (this.parsedData.length != this.data.length) {\n this.parsedData.unshift(191);\n this.parsedData.unshift(187);\n this.parsedData.unshift(239);\n }\n}\n\nQR8bitByte.prototype = {\n getLength: function (buffer) {\n return this.parsedData.length;\n },\n write: function (buffer) {\n for (var i = 0, l = this.parsedData.length; i < l; i++) {\n buffer.put(this.parsedData[i], 8);\n }\n }\n};\n\nfunction QRCodeModel(typeNumber, errorCorrectLevel) {\n this.typeNumber = typeNumber;\n this.errorCorrectLevel = errorCorrectLevel;\n this.modules = null;\n this.moduleCount = 0;\n this.dataCache = null;\n this.dataList = [];\n}\n\nQRCodeModel.prototype={addData:function(data){var newData=new QR8bitByte(data);this.dataList.push(newData);this.dataCache=null;},isDark:function(row,col){if(row<0||this.moduleCount<=row||col<0||this.moduleCount<=col){throw new Error(row+\",\"+col);}\nreturn this.modules[row][col];},getModuleCount:function(){return this.moduleCount;},make:function(){this.makeImpl(false,this.getBestMaskPattern());},makeImpl:function(test,maskPattern){this.moduleCount=this.typeNumber*4+17;this.modules=new Array(this.moduleCount);for(var row=0;row=7){this.setupTypeNumber(test);}\nif(this.dataCache==null){this.dataCache=QRCodeModel.createData(this.typeNumber,this.errorCorrectLevel,this.dataList);}\nthis.mapData(this.dataCache,maskPattern);},setupPositionProbePattern:function(row,col){for(var r=-1;r<=7;r++){if(row+r<=-1||this.moduleCount<=row+r)continue;for(var c=-1;c<=7;c++){if(col+c<=-1||this.moduleCount<=col+c)continue;if((0<=r&&r<=6&&(c==0||c==6))||(0<=c&&c<=6&&(r==0||r==6))||(2<=r&&r<=4&&2<=c&&c<=4)){this.modules[row+r][col+c]=true;}else{this.modules[row+r][col+c]=false;}}}},getBestMaskPattern:function(){var minLostPoint=0;var pattern=0;for(var i=0;i<8;i++){this.makeImpl(true,i);var lostPoint=QRUtil.getLostPoint(this);if(i==0||minLostPoint>lostPoint){minLostPoint=lostPoint;pattern=i;}}\nreturn pattern;},createMovieClip:function(target_mc,instance_name,depth){var qr_mc=target_mc.createEmptyMovieClip(instance_name,depth);var cs=1;this.make();for(var row=0;row>i)&1)==1);this.modules[Math.floor(i/3)][i%3+this.moduleCount-8-3]=mod;}\nfor(var i=0;i<18;i++){var mod=(!test&&((bits>>i)&1)==1);this.modules[i%3+this.moduleCount-8-3][Math.floor(i/3)]=mod;}},setupTypeInfo:function(test,maskPattern){var data=(this.errorCorrectLevel<<3)|maskPattern;var bits=QRUtil.getBCHTypeInfo(data);for(var i=0;i<15;i++){var mod=(!test&&((bits>>i)&1)==1);if(i<6){this.modules[i][8]=mod;}else if(i<8){this.modules[i+1][8]=mod;}else{this.modules[this.moduleCount-15+i][8]=mod;}}\nfor(var i=0;i<15;i++){var mod=(!test&&((bits>>i)&1)==1);if(i<8){this.modules[8][this.moduleCount-i-1]=mod;}else if(i<9){this.modules[8][15-i-1+1]=mod;}else{this.modules[8][15-i-1]=mod;}}\nthis.modules[this.moduleCount-8][8]=(!test);},mapData:function(data,maskPattern){var inc=-1;var row=this.moduleCount-1;var bitIndex=7;var byteIndex=0;for(var col=this.moduleCount-1;col>0;col-=2){if(col==6)col--;while(true){for(var c=0;c<2;c++){if(this.modules[row][col-c]==null){var dark=false;if(byteIndex>>bitIndex)&1)==1);}\nvar mask=QRUtil.getMask(maskPattern,row,col-c);if(mask){dark=!dark;}\nthis.modules[row][col-c]=dark;bitIndex--;if(bitIndex==-1){byteIndex++;bitIndex=7;}}}\nrow+=inc;if(row<0||this.moduleCount<=row){row-=inc;inc=-inc;break;}}}}};QRCodeModel.PAD0=0xEC;QRCodeModel.PAD1=0x11;QRCodeModel.createData=function(typeNumber,errorCorrectLevel,dataList){var rsBlocks=QRRSBlock.getRSBlocks(typeNumber,errorCorrectLevel);var buffer=new QRBitBuffer();for(var i=0;itotalDataCount*8){throw new Error(\"code length overflow. (\"\n+buffer.getLengthInBits()\n+\">\"\n+totalDataCount*8\n+\")\");}\nif(buffer.getLengthInBits()+4<=totalDataCount*8){buffer.put(0,4);}\nwhile(buffer.getLengthInBits()%8!=0){buffer.putBit(false);}\nwhile(true){if(buffer.getLengthInBits()>=totalDataCount*8){break;}\nbuffer.put(QRCodeModel.PAD0,8);if(buffer.getLengthInBits()>=totalDataCount*8){break;}\nbuffer.put(QRCodeModel.PAD1,8);}\nreturn QRCodeModel.createBytes(buffer,rsBlocks);};QRCodeModel.createBytes=function(buffer,rsBlocks){var offset=0;var maxDcCount=0;var maxEcCount=0;var dcdata=new Array(rsBlocks.length);var ecdata=new Array(rsBlocks.length);for(var r=0;r=0)?modPoly.get(modIndex):0;}}\nvar totalCodeCount=0;for(var i=0;i=0){d^=(QRUtil.G15<<(QRUtil.getBCHDigit(d)-QRUtil.getBCHDigit(QRUtil.G15)));}\nreturn((data<<10)|d)^QRUtil.G15_MASK;},getBCHTypeNumber:function(data){var d=data<<12;while(QRUtil.getBCHDigit(d)-QRUtil.getBCHDigit(QRUtil.G18)>=0){d^=(QRUtil.G18<<(QRUtil.getBCHDigit(d)-QRUtil.getBCHDigit(QRUtil.G18)));}\nreturn(data<<12)|d;},getBCHDigit:function(data){var digit=0;while(data!=0){digit++;data>>>=1;}\nreturn digit;},getPatternPosition:function(typeNumber){return QRUtil.PATTERN_POSITION_TABLE[typeNumber-1];},getMask:function(maskPattern,i,j){switch(maskPattern){case QRMaskPattern.PATTERN000:return(i+j)%2==0;case QRMaskPattern.PATTERN001:return i%2==0;case QRMaskPattern.PATTERN010:return j%3==0;case QRMaskPattern.PATTERN011:return(i+j)%3==0;case QRMaskPattern.PATTERN100:return(Math.floor(i/2)+Math.floor(j/3))%2==0;case QRMaskPattern.PATTERN101:return(i*j)%2+(i*j)%3==0;case QRMaskPattern.PATTERN110:return((i*j)%2+(i*j)%3)%2==0;case QRMaskPattern.PATTERN111:return((i*j)%3+(i+j)%2)%2==0;default:throw new Error(\"bad maskPattern:\"+maskPattern);}},getErrorCorrectPolynomial:function(errorCorrectLength){var a=new QRPolynomial([1],0);for(var i=0;i5){lostPoint+=(3+sameCount-5);}}}\nfor(var row=0;row=256){n-=255;}\nreturn QRMath.EXP_TABLE[n];},EXP_TABLE:new Array(256),LOG_TABLE:new Array(256)};for(var i=0;i<8;i++){QRMath.EXP_TABLE[i]=1<>>(7-index%8))&1)==1;},put:function(num,length){for(var i=0;i>>(length-i-1))&1)==1);}},getLengthInBits:function(){return this.length;},putBit:function(bit){var bufIndex=Math.floor(this.length/8);if(this.buffer.length<=bufIndex){this.buffer.push(0);}\nif(bit){this.buffer[bufIndex]|=(0x80>>>(this.length%8));}\nthis.length++;}};var QRCodeLimitLength=[[17,14,11,7],[32,26,20,14],[53,42,32,24],[78,62,46,34],[106,84,60,44],[134,106,74,58],[154,122,86,64],[192,152,108,84],[230,180,130,98],[271,213,151,119],[321,251,177,137],[367,287,203,155],[425,331,241,177],[458,362,258,194],[520,412,292,220],[586,450,322,250],[644,504,364,280],[718,560,394,310],[792,624,442,338],[858,666,482,382],[929,711,509,403],[1003,779,565,439],[1091,857,611,461],[1171,911,661,511],[1273,997,715,535],[1367,1059,751,593],[1465,1125,805,625],[1528,1190,868,658],[1628,1264,908,698],[1732,1370,982,742],[1840,1452,1030,790],[1952,1538,1112,842],[2068,1628,1168,898],[2188,1722,1228,958],[2303,1809,1283,983],[2431,1911,1351,1051],[2563,1989,1423,1093],[2699,2099,1499,1139],[2809,2213,1579,1219],[2953,2331,1663,1273]];\n\n\n/** Constructor */\nfunction QRCode(options) {\n var instance = this;\n \n //Default options\n this.options = {\n padding: 4,\n width: 256, \n height: 256,\n typeNumber: 4,\n color: \"#000000\",\n background: \"#ffffff\",\n ecl: \"M\"\n };\n \n //In case the options is string\n if (typeof options === 'string') {\n options = {\n content: options\n };\n }\n \n //Merge options\n if (options) {\n for (var i in options) {\n this.options[i] = options[i];\n }\n }\n \n if (typeof this.options.content !== 'string') {\n throw new Error(\"Expected 'content' as string!\");\n }\n \n if (this.options.content.length === 0 /* || this.options.content.length > 7089 */) {\n throw new Error(\"Expected 'content' to be non-empty!\");\n }\n \n if (!(this.options.padding >= 0)) {\n throw new Error(\"Expected 'padding' value to be non-negative!\");\n }\n \n if (!(this.options.width > 0) || !(this.options.height > 0)) {\n throw new Error(\"Expected 'width' or 'height' value to be higher than zero!\");\n }\n \n //Gets the error correction level\n function _getErrorCorrectLevel(ecl) {\n switch (ecl) {\n case \"L\":\n return QRErrorCorrectLevel.L;\n \n case \"M\":\n return QRErrorCorrectLevel.M;\n \n case \"Q\":\n return QRErrorCorrectLevel.Q;\n \n case \"H\":\n return QRErrorCorrectLevel.H;\n \n default:\n throw new Error(\"Unknwon error correction level: \" + ecl);\n }\n }\n \n //Get type number\n function _getTypeNumber(content, ecl) { \n var length = _getUTF8Length(content);\n \n var type = 1;\n var limit = 0;\n for (var i = 0, len = QRCodeLimitLength.length; i <= len; i++) {\n var table = QRCodeLimitLength[i];\n if (!table) {\n throw new Error(\"Content too long: expected \" + limit + \" but got \" + length);\n }\n \n switch (ecl) {\n case \"L\":\n limit = table[0];\n break;\n \n case \"M\":\n limit = table[1];\n break;\n \n case \"Q\":\n limit = table[2];\n break;\n \n case \"H\":\n limit = table[3];\n break;\n \n default:\n throw new Error(\"Unknwon error correction level: \" + ecl);\n }\n \n if (length <= limit) {\n break;\n }\n \n type++;\n }\n \n if (type > QRCodeLimitLength.length) {\n throw new Error(\"Content too long\");\n }\n \n return type;\n }\n\n //Gets text length\n function _getUTF8Length(content) {\n var result = encodeURI(content).toString().replace(/\\%[0-9a-fA-F]{2}/g, 'a');\n return result.length + (result.length != content ? 3 : 0);\n }\n \n //Generate QR Code matrix\n var content = this.options.content;\n var type = _getTypeNumber(content, this.options.ecl);\n var ecl = _getErrorCorrectLevel(this.options.ecl);\n this.qrcode = new QRCodeModel(type, ecl);\n this.qrcode.addData(content);\n this.qrcode.make();\n}\n\n/** Generates QR Code as SVG image */\nQRCode.prototype.svg = function(opt) {\n var options = this.options || { };\n var modules = this.qrcode.modules;\n \n if (typeof opt == \"undefined\") {\n opt = { container: options.container || \"svg\" };\n }\n \n //Apply new lines and indents in SVG?\n var pretty = typeof options.pretty != \"undefined\" ? !!options.pretty : true;\n \n var indent = pretty ? ' ' : '';\n var EOL = pretty ? '\\r\\n' : '';\n var width = options.width;\n var height = options.height;\n var length = modules.length;\n var xsize = width / (length + 2 * options.padding);\n var ysize = height / (length + 2 * options.padding);\n \n //Join (union, merge) rectangles into one shape?\n var join = typeof options.join != \"undefined\" ? !!options.join : false;\n \n //Swap the X and Y modules, pull request #2\n var swap = typeof options.swap != \"undefined\" ? !!options.swap : false;\n \n //Apply declaration in SVG?\n var xmlDeclaration = typeof options.xmlDeclaration != \"undefined\" ? !!options.xmlDeclaration : true;\n \n //Populate with predefined shape instead of \"rect\" elements, thanks to @kkocdko\n var predefined = typeof options.predefined != \"undefined\" ? !!options.predefined : false;\n var defs = predefined ? indent + '' + EOL : '';\n \n //Background rectangle\n var bgrect = indent + '' + EOL;\n \n //Rectangles representing modules\n var modrect = '';\n var pathdata = '';\n\n for (var y = 0; y < length; y++) {\n for (var x = 0; x < length; x++) {\n var module = modules[x][y];\n if (module) {\n \n var px = (x * xsize + options.padding * xsize);\n var py = (y * ysize + options.padding * ysize);\n \n //Some users have had issues with the QR Code, thanks to @danioso for the solution\n if (swap) {\n var t = px;\n px = py;\n py = t;\n }\n \n if (join) {\n //Module as a part of svg path data, thanks to @danioso\n var w = xsize + px\n var h = ysize + py\n\n px = (Number.isInteger(px))? Number(px): px.toFixed(2);\n py = (Number.isInteger(py))? Number(py): py.toFixed(2);\n w = (Number.isInteger(w))? Number(w): w.toFixed(2);\n h = (Number.isInteger(h))? Number(h): h.toFixed(2);\n\n pathdata += ('M' + px + ',' + py + ' V' + h + ' H' + w + ' V' + py + ' H' + px + ' Z ');\n }\n else if (predefined) {\n //Module as a predefined shape, thanks to @kkocdko\n modrect += indent + '' + EOL;\n }\n else {\n //Module as rectangle element\n modrect += indent + '' + EOL;\n }\n }\n }\n }\n \n if (join) {\n modrect = indent + '';\n }\n\n var svg = \"\";\n switch (opt.container) {\n //Wrapped in SVG document\n case \"svg\":\n if (xmlDeclaration) {\n svg += '' + EOL;\n }\n svg += '';\n break;\n \n //Viewbox for responsive use in a browser, thanks to @danioso\n case \"svg-viewbox\":\n if (xmlDeclaration) {\n svg += '' + EOL;\n }\n svg += '';\n break;\n \n \n //Wrapped in group element \n case \"g\":\n svg += '' + EOL;\n svg += defs + bgrect + modrect;\n svg += '';\n break;\n \n //Without a container\n default:\n svg += (defs + bgrect + modrect).replace(/^\\s+/, \"\"); //Clear indents on each line\n break;\n }\n \n return svg;\n};\n\n/** Writes QR Code image to a file */\nQRCode.prototype.save = function(file, callback) {\n var data = this.svg();\n if (typeof callback != \"function\") {\n callback = function(error, result) { };\n }\n try {\n //Package 'fs' is available in node.js but not in a web browser\n var fs = require('fs');\n fs.writeFile(file, data, callback);\n }\n catch (e) {\n //Sorry, 'fs' is not available\n callback(e);\n }\n};\n\nif (typeof module != \"undefined\") {\n module.exports = QRCode;\n}\n","export var libConfig = {\n tag: 'data-slide-toggle',\n values: {\n hidden: 'hidden',\n visible: 'shown',\n },\n};\n//# sourceMappingURL=config.js.map","import { libConfig } from '../config';\nexport var validators = {\n isHidden: function (element) { return element.getAttribute(libConfig.tag) === libConfig.values.hidden; },\n isVisible: function (element) { return element.getAttribute(libConfig.tag) === libConfig.values.visible; },\n hasTagDefined: function (element) { return !!element.getAttribute(libConfig.tag); },\n};\n//# sourceMappingURL=validator.js.map","import { libConfig } from '../config';\nimport { validators } from '../utils/validator';\nexport var show = function (element, _a) {\n var _b = _a.miliseconds, miliseconds = _b === void 0 ? 1000 : _b, onAnimationEnd = _a.onAnimationEnd, onAnimationStart = _a.onAnimationStart, _c = _a.elementDisplayStyle, elementDisplayStyle = _c === void 0 ? 'block' : _c;\n if (validators.isVisible(element)) {\n return;\n }\n element.setAttribute(libConfig.tag, libConfig.values.visible);\n onAnimationStart === null || onAnimationStart === void 0 ? void 0 : onAnimationStart(element);\n element.style.height = 'auto';\n element.style.overflow = 'hidden';\n element.style.display = elementDisplayStyle;\n var animationRef = element.animate([{ height: '0px' }, { height: \"\".concat(element.offsetHeight, \"px\") }], { duration: miliseconds });\n animationRef.addEventListener('finish', function () {\n element.style.height = '';\n element.style.overflow = '';\n onAnimationEnd === null || onAnimationEnd === void 0 ? void 0 : onAnimationEnd(element);\n });\n};\n//# sourceMappingURL=show.js.map","import { libConfig } from '../config';\nimport { validators } from '../utils/validator';\nexport var hide = function (element, _a) {\n var _b = _a.miliseconds, miliseconds = _b === void 0 ? 1000 : _b, onAnimationStart = _a.onAnimationStart, onAnimationEnd = _a.onAnimationEnd;\n if (validators.isHidden(element)) {\n return;\n }\n element.setAttribute(libConfig.tag, libConfig.values.hidden);\n onAnimationStart === null || onAnimationStart === void 0 ? void 0 : onAnimationStart(element);\n element.style.overflow = 'hidden';\n var animationRef = element.animate([{ height: \"\".concat(element.offsetHeight, \"px\") }, { height: '0px' }], { duration: miliseconds });\n animationRef.addEventListener('finish', function () {\n element.style.overflow = '';\n element.style.display = 'none';\n onAnimationEnd === null || onAnimationEnd === void 0 ? void 0 : onAnimationEnd(element);\n });\n};\n//# sourceMappingURL=hide.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nimport { hide } from './hide';\nimport { show } from './show';\nimport { validators } from '../utils/validator';\nexport var toggle = function (element, options) {\n if (validators.hasTagDefined(element)) {\n if (validators.isVisible(element)) {\n var onAnimationEnd_1 = options.onAnimationEnd, onClose_1 = options.onClose;\n hide(element, __assign(__assign({}, options), { onAnimationEnd: function (elementRef) {\n onClose_1 === null || onClose_1 === void 0 ? void 0 : onClose_1(elementRef);\n onAnimationEnd_1 === null || onAnimationEnd_1 === void 0 ? void 0 : onAnimationEnd_1(elementRef);\n } }));\n }\n else {\n var onAnimationEnd_2 = options.onAnimationEnd, onOpen_1 = options.onOpen;\n show(element, __assign(__assign({}, options), { onAnimationEnd: function (elementRef) {\n onOpen_1 === null || onOpen_1 === void 0 ? void 0 : onOpen_1(elementRef);\n onAnimationEnd_2 === null || onAnimationEnd_2 === void 0 ? void 0 : onAnimationEnd_2(elementRef);\n } }));\n }\n }\n else {\n if (element.offsetHeight === 0) {\n var onAnimationEnd_3 = options.onAnimationEnd, onOpen_2 = options.onOpen;\n show(element, __assign(__assign({}, options), { onAnimationEnd: function (elementRef) {\n onOpen_2 === null || onOpen_2 === void 0 ? void 0 : onOpen_2(elementRef);\n onAnimationEnd_3 === null || onAnimationEnd_3 === void 0 ? void 0 : onAnimationEnd_3(elementRef);\n } }));\n }\n else {\n var onAnimationEnd_4 = options.onAnimationEnd, onClose_2 = options.onClose;\n hide(element, __assign(__assign({}, options), { onAnimationEnd: function (elementRef) {\n onClose_2 === null || onClose_2 === void 0 ? void 0 : onClose_2(elementRef);\n onAnimationEnd_4 === null || onAnimationEnd_4 === void 0 ? void 0 : onAnimationEnd_4(elementRef);\n } }));\n }\n }\n};\n//# sourceMappingURL=toggle.js.map",";(function() {\n function Tablesort(el, options) {\n if (!(this instanceof Tablesort)) return new Tablesort(el, options);\n\n if (!el || el.tagName !== 'TABLE') {\n throw new Error('Element must be a table');\n }\n this.init(el, options || {});\n }\n\n var sortOptions = [];\n\n var createEvent = function(name) {\n var evt;\n\n if (!window.CustomEvent || typeof window.CustomEvent !== 'function') {\n evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(name, false, false, undefined);\n } else {\n evt = new CustomEvent(name);\n }\n\n return evt;\n };\n\n var getInnerText = function(el,options) {\n return el.getAttribute(options.sortAttribute || 'data-sort') || el.textContent || el.innerText || '';\n };\n\n // Default sort method if no better sort method is found\n var caseInsensitiveSort = function(a, b) {\n a = a.trim().toLowerCase();\n b = b.trim().toLowerCase();\n\n if (a === b) return 0;\n if (a < b) return 1;\n\n return -1;\n };\n\n var getCellByKey = function(cells, key) {\n return [].slice.call(cells).find(function(cell) {\n return cell.getAttribute('data-sort-column-key') === key;\n });\n };\n\n // Stable sort function\n // If two elements are equal under the original sort function,\n // then there relative order is reversed\n var stabilize = function(sort, antiStabilize) {\n return function(a, b) {\n var unstableResult = sort(a.td, b.td);\n\n if (unstableResult === 0) {\n if (antiStabilize) return b.index - a.index;\n return a.index - b.index;\n }\n\n return unstableResult;\n };\n };\n\n Tablesort.extend = function(name, pattern, sort) {\n if (typeof pattern !== 'function' || typeof sort !== 'function') {\n throw new Error('Pattern and sort must be a function');\n }\n\n sortOptions.push({\n name: name,\n pattern: pattern,\n sort: sort\n });\n };\n\n Tablesort.prototype = {\n\n init: function(el, options) {\n var that = this,\n firstRow,\n defaultSort,\n i,\n cell;\n\n that.table = el;\n that.thead = false;\n that.options = options;\n\n if (el.rows && el.rows.length > 0) {\n if (el.tHead && el.tHead.rows.length > 0) {\n for (i = 0; i < el.tHead.rows.length; i++) {\n if (el.tHead.rows[i].getAttribute('data-sort-method') === 'thead') {\n firstRow = el.tHead.rows[i];\n break;\n }\n }\n if (!firstRow) {\n firstRow = el.tHead.rows[el.tHead.rows.length - 1];\n }\n that.thead = true;\n } else {\n firstRow = el.rows[0];\n }\n }\n\n if (!firstRow) return;\n\n var onClick = function() {\n if (that.current && that.current !== this) {\n that.current.removeAttribute('aria-sort');\n }\n\n that.current = this;\n that.sortTable(this);\n };\n\n // Assume first row is the header and attach a click handler to each.\n for (i = 0; i < firstRow.cells.length; i++) {\n cell = firstRow.cells[i];\n cell.setAttribute('role','columnheader');\n if (cell.getAttribute('data-sort-method') !== 'none') {\n cell.tabindex = 0;\n cell.addEventListener('click', onClick, false);\n\n if (cell.getAttribute('data-sort-default') !== null) {\n defaultSort = cell;\n }\n }\n }\n\n if (defaultSort) {\n that.current = defaultSort;\n that.sortTable(defaultSort);\n }\n },\n\n sortTable: function(header, update) {\n var that = this,\n columnKey = header.getAttribute('data-sort-column-key'),\n column = header.cellIndex,\n sortFunction = caseInsensitiveSort,\n item = '',\n items = [],\n i = that.thead ? 0 : 1,\n sortMethod = header.getAttribute('data-sort-method'),\n sortOrder = header.getAttribute('aria-sort');\n\n that.table.dispatchEvent(createEvent('beforeSort'));\n\n // If updating an existing sort, direction should remain unchanged.\n if (!update) {\n if (sortOrder === 'ascending') {\n sortOrder = 'descending';\n } else if (sortOrder === 'descending') {\n sortOrder = 'ascending';\n } else {\n sortOrder = that.options.descending ? 'descending' : 'ascending';\n }\n\n header.setAttribute('aria-sort', sortOrder);\n }\n\n if (that.table.rows.length < 2) return;\n\n // If we force a sort method, it is not necessary to check rows\n if (!sortMethod) {\n var cell;\n while (items.length < 3 && i < that.table.tBodies[0].rows.length) {\n if(columnKey) {\n cell = getCellByKey(that.table.tBodies[0].rows[i].cells, columnKey);\n } else {\n cell = that.table.tBodies[0].rows[i].cells[column];\n }\n\n // Treat missing cells as empty cells\n item = cell ? getInnerText(cell,that.options) : \"\";\n\n item = item.trim();\n\n if (item.length > 0) {\n items.push(item);\n }\n\n i++;\n }\n\n if (!items) return;\n }\n\n for (i = 0; i < sortOptions.length; i++) {\n item = sortOptions[i];\n\n if (sortMethod) {\n if (item.name === sortMethod) {\n sortFunction = item.sort;\n break;\n }\n } else if (items.every(item.pattern)) {\n sortFunction = item.sort;\n break;\n }\n }\n\n that.col = column;\n\n for (i = 0; i < that.table.tBodies.length; i++) {\n var newRows = [],\n noSorts = {},\n j,\n totalRows = 0,\n noSortsSoFar = 0;\n\n if (that.table.tBodies[i].rows.length < 2) continue;\n\n for (j = 0; j < that.table.tBodies[i].rows.length; j++) {\n var cell;\n\n item = that.table.tBodies[i].rows[j];\n if (item.getAttribute('data-sort-method') === 'none') {\n // keep no-sorts in separate list to be able to insert\n // them back at their original position later\n noSorts[totalRows] = item;\n } else {\n if (columnKey) {\n cell = getCellByKey(item.cells, columnKey);\n } else {\n cell = item.cells[that.col];\n }\n // Save the index for stable sorting\n newRows.push({\n tr: item,\n td: cell ? getInnerText(cell,that.options) : '',\n index: totalRows\n });\n }\n totalRows++;\n }\n // Before we append should we reverse the new array or not?\n // If we reverse, the sort needs to be `anti-stable` so that\n // the double negatives cancel out\n if (sortOrder === 'descending') {\n newRows.sort(stabilize(sortFunction, true));\n } else {\n newRows.sort(stabilize(sortFunction, false));\n newRows.reverse();\n }\n\n // append rows that already exist rather than creating new ones\n for (j = 0; j < totalRows; j++) {\n if (noSorts[j]) {\n // We have a no-sort row for this position, insert it here.\n item = noSorts[j];\n noSortsSoFar++;\n } else {\n item = newRows[j - noSortsSoFar].tr;\n }\n\n // appendChild(x) moves x if already present somewhere else in the DOM\n that.table.tBodies[i].appendChild(item);\n }\n }\n\n that.table.dispatchEvent(createEvent('afterSort'));\n },\n\n refresh: function() {\n if (this.current !== undefined) {\n this.sortTable(this.current, true);\n }\n }\n };\n\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = Tablesort;\n } else {\n window.Tablesort = Tablesort;\n }\n})();\n","export function initCopyClipboard() {\r\n document.querySelectorAll(\"[app-schoolsys-copy-clipboard]\")\r\n .forEach((input: HTMLInputElement) => {\r\n input.addEventListener(\"click\", () => {\r\n input.select();\r\n input.setSelectionRange(0, 99999); // For mobile devices\r\n \r\n // Copy the text inside the text field\r\n navigator.clipboard.writeText(input.value);\r\n })\r\n })\r\n}\r\n","import { Loader } from '@googlemaps/js-api-loader';\r\nimport { GoogleMapsOptions } from './lib-2sxc-google-maps-options';\r\n\r\nvar winAny = window as any\r\nconst debug = false;\r\n\r\nexport function activeGoogleMaps({ apiKey, domId, zoom, lat, lng }: GoogleMapsOptions) {\r\n if (debug) console.log('build map', arguments);\r\n\r\n const loader = new Loader({\r\n apiKey: apiKey,\r\n version: \"weekly\",\r\n libraries: [\"places\"]\r\n });\r\n\r\n const mapOptions = {\r\n center: {\r\n lat: lat,\r\n lng: lng\r\n },\r\n zoom: zoom,\r\n mapTypeControl: true,\r\n zoomControl: true,\r\n scaleControl: true,\r\n scrollwheel: false,\r\n mapTypeId: 'roadmap',\r\n styles: [\r\n {\r\n featureType: \"poi.business\",\r\n stylers: [{ visibility: \"off\" }],\r\n },\r\n {\r\n featureType: \"transit\",\r\n elementType: \"labels.icon\",\r\n stylers: [{ visibility: \"off\" }],\r\n },\r\n ]\r\n };\r\n\r\n loader.load().then((google) => {\r\n if (!winAny.appSwissSchoolSystem.googleMaps) {\r\n winAny.appSwissSchoolSystem.googleMaps = [];\r\n }\r\n\r\n const mapIndex = winAny.appSwissSchoolSystem.googleMaps.findIndex((m: any) => m.id == domId);\r\n const newMap = new google.maps.Map(document.getElementById(domId), mapOptions);\r\n\r\n if (mapIndex == -1) {\r\n winAny.appSwissSchoolSystem.googleMaps = [...winAny.appSwissSchoolSystem.googleMaps, { id: domId, map: newMap }];\r\n } else {\r\n winAny.appSwissSchoolSystem.googleMaps[mapIndex].map = newMap;\r\n }\r\n\r\n winAny.appSwissSchoolSystem.google ??= google\r\n if (debug) console.log('map loaded');\r\n });\r\n}\r\n\r\nexport function addGoogleMapsMarker({ domId, lat, lng, path, infoWindowContent = null }: { domId: string, lat: string, lng: string, path: string, infoWindowContent?: string }) {\r\n const map = winAny.appSwissSchoolSystem.googleMaps.find((m: any) => m.id == domId).map;\r\n\r\n const marker = new winAny.appSwissSchoolSystem.google.maps.Marker({\r\n position: {\r\n lat: parseFloat(lat),\r\n lng: parseFloat(lng)\r\n },\r\n map\r\n });\r\n\r\n // Add click event listener\r\n winAny.appSwissSchoolSystem.google.maps.event.addListener(marker, 'click', function () {\r\n window.location.href = path\r\n });\r\n\r\n if (infoWindowContent) {\r\n const infowindow = new winAny.appSwissSchoolSystem.google.maps.InfoWindow({\r\n content: infoWindowContent,\r\n });\r\n\r\n // Add click event listener\r\n winAny.appSwissSchoolSystem.google.maps.event.addListener(marker, 'mouseover', function () {\r\n infowindow.open({\r\n anchor: marker,\r\n map\r\n });\r\n });\r\n\r\n winAny.appSwissSchoolSystem.google.maps.event.addListener(marker, 'mouseout', function () {\r\n infowindow.close();\r\n });\r\n }\r\n}\r\n\r\n// custom\r\nexport function addGoogleMapsMarkers({ markers }: { markers: { domId: string, lat: string, lng: string, path: string, infoWindowContent?: string }[] }) {\r\n markers.forEach(m => {\r\n addGoogleMapsMarker(m)\r\n })\r\n}","export function initHoverText() {\r\n document.querySelectorAll(\"[app-schoolsys-hover]\")\r\n .forEach((d) => {\r\n var hoverText = d.getAttribute(\"app-schoolsys-hover\");\r\n var defaultText = d.textContent;\r\n d.addEventListener(\"mouseover\", () => {\r\n d.textContent = hoverText;\r\n });\r\n d.addEventListener(\"mouseout\", () => {\r\n d.textContent = defaultText;\r\n });\r\n })\r\n}\r\n","import { hide, show, toggle } from 'slidetoggle';\nimport { AccordionOptions } from './lib-2sxc-accordion-options';\n\n/*\n This is a shared code used in various 2sxc apps. Make sure that they are in sync, so if you improve it, improve all 2sxc apps which use this. \n ATM they are:\n - Accordion\n - FAQ\n - App School System\n\n The master with the newest / best version must always be the Accordion, the others should then get a fresh copy.\n Because this is shared, all parameters like DOM-IDs etc. must be provided in the Init-call that it can work across apps\n*/ \n\n// THIS CODE HAS MODIFICATIONS\n\nexport function initAccordion({ domId, options, autoExpand } : { domId: string, options: AccordionOptions, autoExpand: boolean }) {\n\n // get navHight for correct scrollposition\n var nav = (document.getElementsByTagName(options.tagStickyHeader)[0] as HTMLElement);\n var navHeight = (nav != null ? nav.offsetHeight : 0);\n\n // attach click to all accordions when loading\n var accordionOpener = document.querySelectorAll(`[${options.attrParent}]`);\n\n accordionOpener.forEach((elem: HTMLElement, index) => {\t\n const currentElem = elem;\n const parent = currentElem.parentElement;\t\n const hash = currentElem.dataset.accordionParent;\n const targetOpenElem = document.querySelector(`[${options.attrChild}=\"${hash}\"]`) as HTMLElement;\t\t\n\n if (autoExpand) {\n parent.classList.toggle(`${options.classIsExpanded}`);\n toggle(targetOpenElem, {});\n }\n\n elem.addEventListener('click', (event) => {\n console.log('click', event);\n console.log('options', options.classIsExpanded);\n event.preventDefault();\n // add hash to url\n location.hash = hash;\n\n // open / close mechanic for slide\n toggle(targetOpenElem, {\n miliseconds: 300,\n });\n parent.classList.toggle(`${options.classIsExpanded}`);\n })\n });\n\n // get hash from url and open specific item\n if(window.location.hash){\n const hash = window.location.hash.replace('#', '');\n const targetHashElem = document.querySelector(`[${options.attrChild}=\"${hash}\"]`);\n \n // if target element exists scroll to element and open it\n if(targetHashElem){\n const elemOffsetX = targetHashElem.getBoundingClientRect().top + window.scrollY - navHeight;\n const targetOpenElem = document.querySelector(`[${options.attrChild}=\"${hash}\"]`) as HTMLElement;\t\t\n\n targetHashElem.parentElement.classList.add(`${options.classIsExpanded}`);\n\n // open accordion\n show(targetOpenElem, {\n onAnimationEnd: () => {\n // scroll to element which should open then\n window.scrollTo({\n top: elemOffsetX,\n left: 0,\n behavior: 'smooth'\n });\n }\n });\n }\n }\n}","declare let Fancybox: any;\r\nimport { FancyboxOptions } from './lib-2sxc-fancybox-options';\r\n\r\n/*\r\n This is a shared code used in various 2sxc apps. Make sure that they are in sync, so if you improve it, improve all 2sxc apps which use this. \r\n ATM they are:\r\n - Gallery7\r\n - Content\r\n The master with the newest / best version must always be the Gallery7, the others should then get a fresh copy.\r\n Because this is shared, all parameters like DOM-IDs etc. must be provided in the Init-call that it can work across apps\r\n*/ \r\n\r\nexport function initFancybox({ attribute, options } : { attribute: string, options: FancyboxOptions }) {\r\n Fancybox.bind(`[${attribute}]`, options);\r\n}","// require('../../node_modules/micromodal');\r\n\r\ndeclare let $2sxc: any;\r\nlet orgSvc: any = null;\r\nlet eduQualityReportSvc: any = null;\r\nlet orgTimelineSvc: any = null;\r\nlet orgTimelineQuery: any = null;\r\ndeclare let MicroModal: any;\r\n\r\nexport function initManage({ moduleId }: { moduleId: string }) {\r\n orgSvc = $2sxc(moduleId).data(\"Organization\");\r\n eduQualityReportSvc = $2sxc(moduleId).data(\"EduQualityReport\");\r\n orgTimelineSvc = $2sxc(moduleId).data(\"OrgTimeline\");\r\n orgTimelineQuery = $2sxc(moduleId).query(\"TimelineEntries\");\r\n\r\n document\r\n .querySelectorAll(\"[school-sys-prev-unit-id]\")\r\n .forEach((button: HTMLButtonElement) => {\r\n if (button.disabled) return;\r\n button.addEventListener(\"click\", () => onPreviousUnitClick(button));\r\n });\r\n\r\n document\r\n .querySelectorAll(\"[school-sys-next-unit-id]\")\r\n .forEach((button: HTMLButtonElement) => {\r\n if (button.disabled) return;\r\n button.addEventListener(\"click\", () => onNextUnitClick(button));\r\n });\r\n\r\n document\r\n .querySelectorAll(\"[vacation-mode]\")\r\n .forEach((button: HTMLButtonElement) => {\r\n if (button.disabled) return;\r\n button.addEventListener(\"click\", () => onVacationToggle(button));\r\n });\r\n\r\n // document\r\n // .querySelectorAll(\"[school-sys-review-id]\")\r\n // .forEach((button: HTMLButtonElement) =>\r\n // button.addEventListener(\"click\", () => onReviewToggle(button))\r\n // );\r\n\r\n // MicroModal.init({ awaitCloseAnimation: true });\r\n}\r\n\r\nfunction onVacationToggle(button: HTMLButtonElement) {\r\n const orgId = button.getAttribute(\"school-sys-org-id\");\r\n const hasVacation = button.getAttribute(\"vacation-mode\") == \"true\";\r\n orgSvc.update(orgId, { VacationEnabled: !hasVacation }).then(() => {\r\n orgTimelineQuery.getStream(\"Default\", { orgId }).then((results: any[]) => {\r\n let today = new Date();\r\n let entriesToday = results.filter(\r\n (r) =>\r\n r.Mode == \"vacation\" &&\r\n new Date(r.Start) >\r\n new Date(today.getFullYear(), today.getMonth(), today.getDate())\r\n );\r\n let lastEntryId =\r\n entriesToday.length == 0\r\n ? -1\r\n : entriesToday[entriesToday.length - 1].Id;\r\n\r\n const timelineEntry = {\r\n Start: new Date().toUTCString(),\r\n Organization: [{ id: orgId }],\r\n Mode: hasVacation ? \"unit\" : \"vacation\",\r\n };\r\n\r\n let request =\r\n lastEntryId == -1\r\n ? orgTimelineSvc.create(timelineEntry)\r\n : orgTimelineSvc.delete(lastEntryId);\r\n\r\n request.then(() => location.reload());\r\n });\r\n });\r\n}\r\n\r\nfunction onNextUnitClick(button: HTMLButtonElement) {\r\n const orgId = button.getAttribute(\"school-sys-org-id\");\r\n const nextUnitId = button.getAttribute(\"school-sys-next-unit-id\");\r\n if (button.disabled) {\r\n return;\r\n }\r\n\r\n orgSvc.update(orgId, { CurrentUnit: [{ id: nextUnitId }] }).then(() => {\r\n const newTimelineEntry = {\r\n Start: new Date().toUTCString(),\r\n Organization: [{ id: orgId }],\r\n Mode: \"unit\",\r\n Unit: [{ id: nextUnitId }],\r\n };\r\n\r\n let request = orgTimelineSvc.create(newTimelineEntry);\r\n\r\n request.then(() => location.reload());\r\n });\r\n}\r\n\r\nfunction onPreviousUnitClick(button: HTMLButtonElement) {\r\n const orgId = button.getAttribute(\"school-sys-org-id\");\r\n const prevUnitId = button.getAttribute(\"school-sys-prev-unit-id\");\r\n\r\n if (button.disabled) {\r\n return;\r\n }\r\n\r\n orgSvc.update(orgId, { CurrentUnit: [{ id: prevUnitId }] }).then(() => {\r\n const newTimelineEntry = {\r\n Start: new Date().toUTCString(),\r\n Organization: [{ id: orgId }],\r\n Mode: \"unit\",\r\n Unit: [{ id: prevUnitId }],\r\n };\r\n\r\n let request = orgTimelineSvc.create(newTimelineEntry);\r\n\r\n request.then(() => location.reload());\r\n });\r\n}\r\n\r\nexport function initReview({\r\n reportId,\r\n organizationId,\r\n reviewJson,\r\n currentUnit,\r\n coachBy,\r\n redirectUri,\r\n}: {\r\n reportId: string;\r\n organizationId: string;\r\n reviewJson: any;\r\n currentUnit: string;\r\n coachBy: string;\r\n redirectUri: string;\r\n}) {\r\n let reviewDataWrapper = document.querySelector(\r\n `[review-data-wrapper='${organizationId}']`\r\n );\r\n let submitButton = reviewDataWrapper.querySelector(\"[school-sys-submit='']\");\r\n const coachEscalateCheckbox = reviewDataWrapper.querySelector(\r\n 'input[name=\"coachEscalate\"]'\r\n ) as HTMLInputElement;\r\n const coachNotesTextarea = reviewDataWrapper.querySelector(\r\n 'textarea[name=\"coachNotes\"]'\r\n ) as HTMLInputElement;\r\n let reviewLessons = reviewDataWrapper.querySelectorAll(\r\n \"[school-sys-review-lesson]\"\r\n );\r\n let commentsRequired = reviewDataWrapper.querySelector(\r\n \"[review-comments-required]\"\r\n );\r\n const reportedParts = reviewDataWrapper.querySelector(\r\n 'div[name=\"reportedParts\"]'\r\n ) as HTMLDivElement;\r\n\r\n function checkEscalate() {\r\n if (coachEscalateCheckbox.checked) {\r\n commentsRequired.classList.remove(\"d-none\");\r\n coachNotesTextarea.required = true;\r\n } else {\r\n commentsRequired.classList.add(\"d-none\");\r\n coachNotesTextarea.required = false;\r\n }\r\n }\r\n\r\n checkEscalate();\r\n\r\n coachEscalateCheckbox.addEventListener(\"change\", checkEscalate);\r\n\r\n function getReportCount() {\r\n let checkedCount = 0;\r\n\r\n reviewLessons.forEach((lc: HTMLInputElement) => {\r\n if (lc.checked) {\r\n checkedCount++;\r\n }\r\n });\r\n\r\n return checkedCount;\r\n }\r\n\r\n function checkCriteriaWrapper(lessonCheckbox: HTMLInputElement) {\r\n let id = lessonCheckbox.getAttribute(\"school-sys-review-lesson\");\r\n let isChecked = lessonCheckbox.checked;\r\n let criteriaWrapper = reviewDataWrapper.querySelector(\r\n `[school-sys-review-lesson-criteria='${id}']`\r\n );\r\n\r\n if (isChecked && criteriaWrapper.classList.contains(\"d-none\")) {\r\n criteriaWrapper.classList.remove(\"d-none\");\r\n } else if (!isChecked && !criteriaWrapper.classList.contains(\"d-none\")) {\r\n criteriaWrapper.classList.add(\"d-none\");\r\n }\r\n }\r\n\r\n reviewLessons.forEach((lessonCheckbox: HTMLInputElement) => {\r\n checkCriteriaWrapper(lessonCheckbox);\r\n\r\n lessonCheckbox.addEventListener(\"change\", () => {\r\n checkCriteriaWrapper(lessonCheckbox);\r\n reportedParts.innerText = getReportCount().toString();\r\n });\r\n });\r\n\r\n reportedParts.innerText = getReportCount().toString();\r\n\r\n function onSubmit() {\r\n let lessonCheckboxes = reviewDataWrapper.querySelectorAll(\r\n \"[school-sys-review-lesson]\"\r\n );\r\n lessonCheckboxes.forEach((lessonCheckbox: HTMLInputElement) => {\r\n const lessonId = lessonCheckbox.getAttribute(\"school-sys-review-lesson\");\r\n const lessonValue = lessonCheckbox.checked;\r\n\r\n let lessonIndex = reviewJson.lessons.findIndex(\r\n (l: any) => l.id.toString() == lessonId.toString()\r\n );\r\n reviewJson.lessons[lessonIndex].checked = lessonValue;\r\n\r\n // Colleck criteria checks\r\n reviewDataWrapper\r\n .querySelectorAll(\r\n `[school-sys-review-lesson-criteria-item=\"${reviewJson.lessons[lessonIndex].id}\"]`\r\n )\r\n .forEach((criteriaInput: HTMLInputElement, index: number) => {\r\n reviewJson.lessons[lessonIndex].criteria[index] = {\r\n ...reviewJson.lessons[lessonIndex].criteria[index],\r\n checked: criteriaInput.checked,\r\n };\r\n });\r\n });\r\n\r\n const coachEscalate = (\r\n reviewDataWrapper.querySelector(\r\n 'input[name=\"coachEscalate\"]'\r\n ) as HTMLInputElement\r\n ).checked;\r\n const coachAllOk = (\r\n reviewDataWrapper.querySelector(\r\n 'input[name=\"coachAllOk\"]'\r\n ) as HTMLInputElement\r\n ).checked;\r\n const coachNotes = reviewDataWrapper.querySelector(\r\n 'textarea[name=\"coachNotes\"]'\r\n ) as HTMLInputElement;\r\n\r\n if (coachNotes.required && !coachNotes.value) {\r\n return;\r\n }\r\n\r\n orgTimelineQuery\r\n .getStream(\"Default\", { orgId: organizationId })\r\n .then((results: any[]) => {\r\n if (!results.length) {\r\n const timelineEntry = {\r\n Start: new Date().toUTCString(),\r\n Organization: [{ id: organizationId }],\r\n Unit: [{ id: currentUnit }],\r\n Mode: \"unit\",\r\n };\r\n\r\n orgTimelineSvc.create(timelineEntry).then(() => {})\r\n }\r\n });\r\n\r\n const qualityReport = {\r\n Title: \"\",\r\n Organization: [{ id: organizationId }],\r\n Unit: [{ id: currentUnit }],\r\n Reports: getReportCount(),\r\n ReviewJson: JSON.stringify(reviewJson),\r\n CoachBy: coachBy,\r\n ReviewWhen: new Date().toUTCString(),\r\n CoachAllOk: coachAllOk,\r\n CoachEscalate: coachEscalate,\r\n CoachNotes: coachNotes.value,\r\n };\r\n\r\n let request =\r\n reportId == \"new\"\r\n ? eduQualityReportSvc.create(qualityReport)\r\n : eduQualityReportSvc.update(reportId, qualityReport);\r\n\r\n request.then(() => (location.href = redirectUri));\r\n }\r\n\r\n if (submitButton) {\r\n submitButton.addEventListener(\"click\", () => onSubmit());\r\n }\r\n}\r\n\r\nexport function initAudit({\r\n reportId,\r\n auditBy,\r\n redirectUri,\r\n}: {\r\n reportId: string;\r\n auditBy: string;\r\n redirectUri: string;\r\n}) {\r\n let auditDataWrapper = document.querySelector(\r\n `[audit-data-wrapper='${reportId}']`\r\n );\r\n let submitButton = auditDataWrapper.querySelector(\"[school-sys-submit='']\");\r\n\r\n submitButton.addEventListener(\"click\", () => {\r\n const reportedParts = (\r\n auditDataWrapper.querySelector(\r\n 'input[name=\"reportedParts\"]'\r\n ) as HTMLInputElement\r\n ).value;\r\n const auditEscalate = (\r\n auditDataWrapper.querySelector(\r\n 'input[name=\"auditEscalate\"]'\r\n ) as HTMLInputElement\r\n ).checked;\r\n const auditAllOk = (\r\n auditDataWrapper.querySelector(\r\n 'input[name=\"auditAllOk\"]'\r\n ) as HTMLInputElement\r\n ).checked;\r\n const auditNotes = auditDataWrapper.querySelector(\r\n 'textarea[name=\"auditNotes\"]'\r\n ) as HTMLInputElement;\r\n\r\n const updatedQualityReport = {\r\n Reports: Number(reportedParts),\r\n AuditBy: auditBy,\r\n AuditWhen: new Date().toUTCString(),\r\n AuditAllOk: auditAllOk,\r\n AuditEscalate: auditEscalate,\r\n AuditNotes: auditNotes.value,\r\n };\r\n\r\n let request = eduQualityReportSvc.update(reportId, updatedQualityReport);\r\n request.then(() => (location.href = redirectUri));\r\n });\r\n}\r\n\r\n// ?v2023-12-04","export function initLanguageLinks({ domAttribute }: { domAttribute: string }) {\r\n let linkLanguageSelect: HTMLSelectElement = document.querySelector(`[app-schoolsys-links-language-select=\"${domAttribute}\"]`);\r\n linkLanguageSelect.addEventListener(\"change\", () => {\r\n document.querySelectorAll(`[app-schoolsys-links-language-token-input=\"${domAttribute}\"]`)\r\n .forEach((inputEl: HTMLInputElement) => {\r\n inputEl.value = inputEl.getAttribute(\"app-schoolsys-links-language-base\").replace(\"[languageToken]\", linkLanguageSelect.value);\r\n })\r\n\r\n document.querySelectorAll(`[app-schoolsys-links-language-token-href=\"${domAttribute}\"]`)\r\n .forEach((anchor: HTMLDivElement) => {\r\n anchor.setAttribute(\"href\", anchor.getAttribute(\"app-schoolsys-links-language-base\").replace(\"[languageToken]\", linkLanguageSelect.value));\r\n })\r\n });\r\n}\r\n","export function initPrepare() {\r\n document.querySelectorAll('[school-sys-class-info-toggle]')\r\n .forEach((button: HTMLButtonElement) => button.addEventListener('click', () => {\r\n document.querySelector(`[school-sys-class-info=\"${button.getAttribute('school-sys-class-info-toggle')}\"]`).classList.toggle('d-none')\r\n }));\r\n}\r\n","let QRCode = require('../../node_modules/qrcode-svg');\n\nvar winAny = window as any;\n\ninterface QrCodeOptions {\n color: string;\n height?: number;\n width?: number;\n /** added 2024-06-24 2dm */\n classes?: string;\n}\n\nexport function initQrCode({ domAttribute, options }: { domAttribute: string, options: QrCodeOptions }) {\n let qrDomObject = document.querySelector(`[${domAttribute}]`);\n setQrCode({ qrDomObject, options })\n\n var observer = new MutationObserver(function (mutations) {\n mutations.forEach(function (mutation) {\n if (mutation.type === \"attributes\" && mutation.attributeName == \"href\") {\n setQrCode({ qrDomObject, options })\n }\n });\n });\n\n observer.observe(qrDomObject, {\n attributes: true //configure it to listen to attribute changes\n });\n\n winAny.status = \"print\";\n}\n\nfunction setQrCode({ qrDomObject, options }: { qrDomObject: Element, options: QrCodeOptions }) {\n let qrCode = new QRCode({\n content: qrDomObject.getAttribute(\"href\"),\n color: options.color,\n width: options.width,\n height: options.height,\n join: true,\n ecl: \"L\",\n padding: 0,\n });\n qrDomObject.innerHTML = qrCode.svg();\n}\n\n// replaces object with matching attribute and value by qr-code with href value\nexport function replaceQrObject({ selectorAttribute, selectorValue, href, options }: { selectorAttribute: string, selectorValue: string, href: string, options: QrCodeOptions }) {\n \n let qrDomObjects = document.querySelectorAll(`[${selectorAttribute}*=\"${selectorValue}\"]`);\n\n qrDomObjects.forEach((qrDomObject) => {\n let qrCode = new QRCode({\n content: href,\n color: options.color,\n width: options?.width ?? qrDomObject.clientWidth,\n height: options?.height ?? qrDomObject.clientHeight,\n join: true,\n ecl: \"L\",\n padding: 0,\n });\n\n let newQrObject = document.createElement(\"div\");\n newQrObject.setAttribute(\"style\", qrDomObject.getAttribute(\"style\"));\n\n newQrObject.innerHTML = qrCode.svg();\n qrDomObject.replaceWith(newQrObject);\n })\n winAny.status = \"print\";\n}","let tablesort = require('tablesort');\r\n\r\nexport function initTablesort({ domAttribute }: { domAttribute: string }) {\r\n let table = document.querySelector(`[${domAttribute}]`);\r\n tablesort(table)\r\n}","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\n\r\nfunction __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\ntypeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\n\nfunction getDefaultExportFromCjs (x) {\n\treturn x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;\n}\n\n// do not edit .js files directly - edit src/index.jst\n\n\n\nvar fastDeepEqual = function equal(a, b) {\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n\n for (i = length; i-- !== 0;) {\n var key = keys[i];\n\n if (!equal(a[key], b[key])) return false;\n }\n\n return true;\n }\n\n // true if both NaN, false otherwise\n return a!==a && b!==b;\n};\n\nvar isEqual = /*@__PURE__*/getDefaultExportFromCjs(fastDeepEqual);\n\n/**\n * Copyright 2019 Google LLC. All Rights Reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at.\n *\n * Http://www.apache.org/licenses/LICENSE-2.0.\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nconst DEFAULT_ID = \"__googleMapsScriptId\";\n/**\n * The status of the [[Loader]].\n */\nvar LoaderStatus;\n(function (LoaderStatus) {\n LoaderStatus[LoaderStatus[\"INITIALIZED\"] = 0] = \"INITIALIZED\";\n LoaderStatus[LoaderStatus[\"LOADING\"] = 1] = \"LOADING\";\n LoaderStatus[LoaderStatus[\"SUCCESS\"] = 2] = \"SUCCESS\";\n LoaderStatus[LoaderStatus[\"FAILURE\"] = 3] = \"FAILURE\";\n})(LoaderStatus || (LoaderStatus = {}));\n/**\n * [[Loader]] makes it easier to add Google Maps JavaScript API to your application\n * dynamically using\n * [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise).\n * It works by dynamically creating and appending a script node to the the\n * document head and wrapping the callback function so as to return a promise.\n *\n * ```\n * const loader = new Loader({\n * apiKey: \"\",\n * version: \"weekly\",\n * libraries: [\"places\"]\n * });\n *\n * loader.load().then((google) => {\n * const map = new google.maps.Map(...)\n * })\n * ```\n */\nclass Loader {\n /**\n * Creates an instance of Loader using [[LoaderOptions]]. No defaults are set\n * using this library, instead the defaults are set by the Google Maps\n * JavaScript API server.\n *\n * ```\n * const loader = Loader({apiKey, version: 'weekly', libraries: ['places']});\n * ```\n */\n constructor({ apiKey, authReferrerPolicy, channel, client, id = DEFAULT_ID, language, libraries = [], mapIds, nonce, region, retries = 3, url = \"https://maps.googleapis.com/maps/api/js\", version, }) {\n this.callbacks = [];\n this.done = false;\n this.loading = false;\n this.errors = [];\n this.apiKey = apiKey;\n this.authReferrerPolicy = authReferrerPolicy;\n this.channel = channel;\n this.client = client;\n this.id = id || DEFAULT_ID; // Do not allow empty string\n this.language = language;\n this.libraries = libraries;\n this.mapIds = mapIds;\n this.nonce = nonce;\n this.region = region;\n this.retries = retries;\n this.url = url;\n this.version = version;\n if (Loader.instance) {\n if (!isEqual(this.options, Loader.instance.options)) {\n throw new Error(`Loader must not be called again with different options. ${JSON.stringify(this.options)} !== ${JSON.stringify(Loader.instance.options)}`);\n }\n return Loader.instance;\n }\n Loader.instance = this;\n }\n get options() {\n return {\n version: this.version,\n apiKey: this.apiKey,\n channel: this.channel,\n client: this.client,\n id: this.id,\n libraries: this.libraries,\n language: this.language,\n region: this.region,\n mapIds: this.mapIds,\n nonce: this.nonce,\n url: this.url,\n authReferrerPolicy: this.authReferrerPolicy,\n };\n }\n get status() {\n if (this.errors.length) {\n return LoaderStatus.FAILURE;\n }\n if (this.done) {\n return LoaderStatus.SUCCESS;\n }\n if (this.loading) {\n return LoaderStatus.LOADING;\n }\n return LoaderStatus.INITIALIZED;\n }\n get failed() {\n return this.done && !this.loading && this.errors.length >= this.retries + 1;\n }\n /**\n * CreateUrl returns the Google Maps JavaScript API script url given the [[LoaderOptions]].\n *\n * @ignore\n * @deprecated\n */\n createUrl() {\n let url = this.url;\n url += `?callback=__googleMapsCallback&loading=async`;\n if (this.apiKey) {\n url += `&key=${this.apiKey}`;\n }\n if (this.channel) {\n url += `&channel=${this.channel}`;\n }\n if (this.client) {\n url += `&client=${this.client}`;\n }\n if (this.libraries.length > 0) {\n url += `&libraries=${this.libraries.join(\",\")}`;\n }\n if (this.language) {\n url += `&language=${this.language}`;\n }\n if (this.region) {\n url += `®ion=${this.region}`;\n }\n if (this.version) {\n url += `&v=${this.version}`;\n }\n if (this.mapIds) {\n url += `&map_ids=${this.mapIds.join(\",\")}`;\n }\n if (this.authReferrerPolicy) {\n url += `&auth_referrer_policy=${this.authReferrerPolicy}`;\n }\n return url;\n }\n deleteScript() {\n const script = document.getElementById(this.id);\n if (script) {\n script.remove();\n }\n }\n /**\n * Load the Google Maps JavaScript API script and return a Promise.\n * @deprecated, use importLibrary() instead.\n */\n load() {\n return this.loadPromise();\n }\n /**\n * Load the Google Maps JavaScript API script and return a Promise.\n *\n * @ignore\n * @deprecated, use importLibrary() instead.\n */\n loadPromise() {\n return new Promise((resolve, reject) => {\n this.loadCallback((err) => {\n if (!err) {\n resolve(window.google);\n }\n else {\n reject(err.error);\n }\n });\n });\n }\n importLibrary(name) {\n this.execute();\n return google.maps.importLibrary(name);\n }\n /**\n * Load the Google Maps JavaScript API script with a callback.\n * @deprecated, use importLibrary() instead.\n */\n loadCallback(fn) {\n this.callbacks.push(fn);\n this.execute();\n }\n /**\n * Set the script on document.\n */\n setScript() {\n var _a, _b;\n if (document.getElementById(this.id)) {\n // TODO wrap onerror callback for cases where the script was loaded elsewhere\n this.callback();\n return;\n }\n const params = {\n key: this.apiKey,\n channel: this.channel,\n client: this.client,\n libraries: this.libraries.length && this.libraries,\n v: this.version,\n mapIds: this.mapIds,\n language: this.language,\n region: this.region,\n authReferrerPolicy: this.authReferrerPolicy,\n };\n // keep the URL minimal:\n Object.keys(params).forEach(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (key) => !params[key] && delete params[key]);\n if (!((_b = (_a = window === null || window === void 0 ? void 0 : window.google) === null || _a === void 0 ? void 0 : _a.maps) === null || _b === void 0 ? void 0 : _b.importLibrary)) {\n // tweaked copy of https://developers.google.com/maps/documentation/javascript/load-maps-js-api#dynamic-library-import\n // which also sets the base url, the id, and the nonce\n /* eslint-disable */\n ((g) => {\n // @ts-ignore\n let h, a, k, p = \"The Google Maps JavaScript API\", c = \"google\", l = \"importLibrary\", q = \"__ib__\", m = document, b = window;\n // @ts-ignore\n b = b[c] || (b[c] = {});\n // @ts-ignore\n const d = b.maps || (b.maps = {}), r = new Set(), e = new URLSearchParams(), u = () => \n // @ts-ignore\n h || (h = new Promise((f, n) => __awaiter(this, void 0, void 0, function* () {\n var _a;\n yield (a = m.createElement(\"script\"));\n a.id = this.id;\n e.set(\"libraries\", [...r] + \"\");\n // @ts-ignore\n for (k in g)\n e.set(k.replace(/[A-Z]/g, (t) => \"_\" + t[0].toLowerCase()), g[k]);\n e.set(\"callback\", c + \".maps.\" + q);\n a.src = this.url + `?` + e;\n d[q] = f;\n a.onerror = () => (h = n(Error(p + \" could not load.\")));\n // @ts-ignore\n a.nonce = this.nonce || ((_a = m.querySelector(\"script[nonce]\")) === null || _a === void 0 ? void 0 : _a.nonce) || \"\";\n m.head.append(a);\n })));\n // @ts-ignore\n d[l] ? console.warn(p + \" only loads once. Ignoring:\", g) : (d[l] = (f, ...n) => r.add(f) && u().then(() => d[l](f, ...n)));\n })(params);\n /* eslint-enable */\n }\n // While most libraries populate the global namespace when loaded via bootstrap params,\n // this is not the case for \"marker\" when used with the inline bootstrap loader\n // (and maybe others in the future). So ensure there is an importLibrary for each:\n const libraryPromises = this.libraries.map((library) => this.importLibrary(library));\n // ensure at least one library, to kick off loading...\n if (!libraryPromises.length) {\n libraryPromises.push(this.importLibrary(\"core\"));\n }\n Promise.all(libraryPromises).then(() => this.callback(), (error) => {\n const event = new ErrorEvent(\"error\", { error }); // for backwards compat\n this.loadErrorCallback(event);\n });\n }\n /**\n * Reset the loader state.\n */\n reset() {\n this.deleteScript();\n this.done = false;\n this.loading = false;\n this.errors = [];\n this.onerrorEvent = null;\n }\n resetIfRetryingFailed() {\n if (this.failed) {\n this.reset();\n }\n }\n loadErrorCallback(e) {\n this.errors.push(e);\n if (this.errors.length <= this.retries) {\n const delay = this.errors.length * Math.pow(2, this.errors.length);\n console.error(`Failed to load Google Maps script, retrying in ${delay} ms.`);\n setTimeout(() => {\n this.deleteScript();\n this.setScript();\n }, delay);\n }\n else {\n this.onerrorEvent = e;\n this.callback();\n }\n }\n callback() {\n this.done = true;\n this.loading = false;\n this.callbacks.forEach((cb) => {\n cb(this.onerrorEvent);\n });\n this.callbacks = [];\n }\n execute() {\n this.resetIfRetryingFailed();\n if (this.done) {\n this.callback();\n }\n else {\n // short circuit and warn if google.maps is already loaded\n if (window.google && window.google.maps && window.google.maps.version) {\n console.warn(\"Google Maps already loaded outside @googlemaps/js-api-loader.\" +\n \"This may result in undesirable behavior as options and script parameters may not match.\");\n this.callback();\n return;\n }\n if (this.loading) ;\n else {\n this.loading = true;\n this.setScript();\n }\n }\n }\n}\n\nexport { DEFAULT_ID, Loader, LoaderStatus };\n//# sourceMappingURL=index.mjs.map\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { initAccordion } from './lib-2sxc-accordion';\nimport { activeGoogleMaps, addGoogleMapsMarker, addGoogleMapsMarkers } from './google-maps';\nimport { initFancybox } from './lib-2sxc-fancybox';\nimport { initQrCode, replaceQrObject } from './qr-code';\nimport { initAudit, initManage, initReview } from './manage';\nimport { initPrepare } from './prepare';\nimport { initTablesort } from './tablesort';\nimport { initHoverText } from './hover-text';\nimport { initCopyClipboard } from './copy-clipboard';\nimport { initLanguageLinks } from './organization-language-links';\n\nvar winAny = window as any;\nwinAny.appSwissSchoolSystem ??= {};\nwinAny.appSwissSchoolSystem.initAccordion ??= initAccordion;\nwinAny.appSwissSchoolSystem.activeGoogleMaps ??= activeGoogleMaps;\nwinAny.appSwissSchoolSystem.addGoogleMapsMarker ??= addGoogleMapsMarker;\nwinAny.appSwissSchoolSystem.addGoogleMapsMarkers ??= addGoogleMapsMarkers;\nwinAny.appSwissSchoolSystem.initFancybox ??= initFancybox;\nwinAny.appSwissSchoolSystem.initQrCode ??= initQrCode;\nwinAny.appSwissSchoolSystem.replaceQrObject ??= replaceQrObject;\nwinAny.appSwissSchoolSystem.initManage ??= initManage;\nwinAny.appSwissSchoolSystem.initPrepare ??= initPrepare;\nwinAny.appSwissSchoolSystem.initTablesort ??= initTablesort;\nwinAny.appSwissSchoolSystem.initHoverText ??= initHoverText;\nwinAny.appSwissSchoolSystem.initCopyClipboard ??= initCopyClipboard;\nwinAny.appSwissSchoolSystem.initLanguageLinks ??= initLanguageLinks;\nwinAny.appSwissSchoolSystem.initReview ??= initReview;\nwinAny.appSwissSchoolSystem.initAudit ??= initAudit;"],"names":["QR8bitByte","data","this","mode","QRMode","MODE_8BIT_BYTE","parsedData","i","l","length","byteArray","code","charCodeAt","push","Array","prototype","concat","apply","unshift","QRCodeModel","typeNumber","errorCorrectLevel","modules","moduleCount","dataCache","dataList","getLength","buffer","write","put","addData","newData","isDark","row","col","Error","getModuleCount","make","makeImpl","getBestMaskPattern","test","maskPattern","setupPositionProbePattern","setupPositionAdjustPattern","setupTimingPattern","setupTypeInfo","setupTypeNumber","createData","mapData","r","c","minLostPoint","pattern","lostPoint","QRUtil","getLostPoint","createMovieClip","target_mc","instance_name","depth","qr_mc","createEmptyMovieClip","y","x","beginFill","moveTo","lineTo","endFill","pos","getPatternPosition","j","bits","getBCHTypeNumber","mod","Math","floor","getBCHTypeInfo","inc","bitIndex","byteIndex","dark","getMask","PAD0","PAD1","rsBlocks","QRRSBlock","getRSBlocks","QRBitBuffer","getLengthInBits","totalDataCount","dataCount","putBit","createBytes","offset","maxDcCount","maxEcCount","dcdata","ecdata","dcCount","ecCount","totalCount","max","rsPoly","getErrorCorrectPolynomial","modPoly","QRPolynomial","modIndex","get","totalCodeCount","index","MODE_NUMBER","MODE_ALPHA_NUM","MODE_KANJI","PATTERN_POSITION_TABLE","G15","G18","G15_MASK","d","getBCHDigit","digit","errorCorrectLength","a","multiply","QRMath","gexp","type","qrCode","sameCount","count","darkCount","abs","glog","n","LOG_TABLE","EXP_TABLE","num","shift","undefined","e","ratio","RS_BLOCK_TABLE","rsBlock","getRsBlockTable","list","bufIndex","bit","QRCodeLimitLength","QRCode","options","padding","width","height","color","background","ecl","content","result","encodeURI","toString","replace","_getUTF8Length","limit","len","table","_getTypeNumber","_getErrorCorrectLevel","qrcode","svg","opt","container","pretty","indent","EOL","xsize","ysize","join","swap","xmlDeclaration","predefined","defs","bgrect","modrect","pathdata","px","py","t","w","h","Number","isInteger","toFixed","save","file","callback","error","writeFile","module","exports","libConfig","validators","element","getAttribute","show","_a","_b","miliseconds","onAnimationEnd","onAnimationStart","_c","elementDisplayStyle","setAttribute","style","overflow","display","animate","offsetHeight","duration","addEventListener","hide","__assign","Object","assign","s","arguments","p","hasOwnProperty","call","toggle","onAnimationEnd_1","onClose_1","onClose","elementRef","onAnimationEnd_2","onOpen_1","onOpen","onAnimationEnd_3","onOpen_2","onAnimationEnd_4","onClose_2","Tablesort","el","tagName","init","sortOptions","createEvent","name","evt","window","CustomEvent","document","initCustomEvent","getInnerText","sortAttribute","textContent","innerText","caseInsensitiveSort","b","trim","toLowerCase","getCellByKey","cells","key","slice","find","cell","stabilize","sort","antiStabilize","unstableResult","td","extend","firstRow","defaultSort","that","thead","rows","tHead","onClick","current","removeAttribute","sortTable","tabindex","header","update","columnKey","column","cellIndex","sortFunction","item","items","sortMethod","sortOrder","dispatchEvent","descending","tBodies","every","newRows","noSorts","totalRows","noSortsSoFar","tr","reverse","appendChild","refresh","querySelectorAll","forEach","input","select","setSelectionRange","navigator","clipboard","writeText","value","winAny","addGoogleMapsMarker","domId","lat","lng","path","infoWindowContent","map","appSwissSchoolSystem","googleMaps","m","id","marker","google","maps","Marker","position","parseFloat","event","addListener","location","href","InfoWindow","open","anchor","close","apiKey","zoom","loader","Loader","version","libraries","mapOptions","center","mapTypeControl","zoomControl","scaleControl","scrollwheel","mapTypeId","styles","featureType","stylers","visibility","elementType","load","then","mapIndex","findIndex","newMap","Map","getElementById","hoverText","defaultText","autoExpand","nav","getElementsByTagName","tagStickyHeader","navHeight","attrParent","elem","currentElem","parent","parentElement","hash","dataset","accordionParent","targetOpenElem","querySelector","attrChild","classList","classIsExpanded","console","log","preventDefault","targetHashElem","getBoundingClientRect","top","scrollY","add","scrollTo","left","behavior","attribute","Fancybox","bind","orgSvc","eduQualityReportSvc","orgTimelineSvc","orgTimelineQuery","moduleId","$2sxc","query","button","disabled","orgId","prevUnitId","CurrentUnit","newTimelineEntry","Start","Date","toUTCString","Organization","Mode","Unit","create","reload","onPreviousUnitClick","nextUnitId","onNextUnitClick","hasVacation","VacationEnabled","getStream","results","today","entriesToday","filter","getFullYear","getMonth","getDate","lastEntryId","Id","timelineEntry","delete","onVacationToggle","reportId","organizationId","reviewJson","currentUnit","coachBy","redirectUri","reviewDataWrapper","submitButton","coachEscalateCheckbox","coachNotesTextarea","reviewLessons","commentsRequired","reportedParts","checkEscalate","checked","remove","required","getReportCount","checkedCount","lc","checkCriteriaWrapper","lessonCheckbox","isChecked","criteriaWrapper","contains","lessonId","lessonValue","lessonIndex","lessons","criteriaInput","criteria","coachEscalate","coachAllOk","coachNotes","qualityReport","Title","Reports","ReviewJson","JSON","stringify","CoachBy","ReviewWhen","CoachAllOk","CoachEscalate","CoachNotes","onSubmit","auditBy","auditDataWrapper","auditEscalate","auditAllOk","auditNotes","updatedQualityReport","AuditBy","AuditWhen","AuditAllOk","AuditEscalate","AuditNotes","domAttribute","linkLanguageSelect","inputEl","setQrCode","qrDomObject","innerHTML","MutationObserver","mutations","mutation","attributeName","observe","attributes","status","selectorAttribute","selectorValue","clientWidth","clientHeight","newQrObject","createElement","replaceWith","tablesort","getDefaultExportFromCjs","__esModule","SuppressedError","isEqual","equal","constructor","keys","isArray","RegExp","source","flags","valueOf","DEFAULT_ID","LoaderStatus","authReferrerPolicy","channel","client","language","mapIds","nonce","region","retries","url","callbacks","done","loading","errors","instance","FAILURE","SUCCESS","LOADING","INITIALIZED","failed","createUrl","deleteScript","script","loadPromise","Promise","resolve","reject","loadCallback","err","importLibrary","execute","fn","setScript","params","v","g","k","q","Set","URLSearchParams","u","f","__awaiter","thisArg","_arguments","generator","set","src","onerror","head","append","P","fulfilled","step","next","rejected","warn","libraryPromises","library","all","ErrorEvent","loadErrorCallback","reset","onerrorEvent","resetIfRetryingFailed","delay","pow","setTimeout","cb","__webpack_module_cache__","__webpack_require__","cachedModule","__webpack_modules__","definition","o","defineProperty","enumerable","obj","prop","Symbol","toStringTag","initAccordion","activeGoogleMaps","addGoogleMapsMarkers","initFancybox","initQrCode","replaceQrObject","initManage","initPrepare","initTablesort","initHoverText","initCopyClipboard","initLanguageLinks","initReview","initAudit"],"sourceRoot":""}