{"version":3,"sources":["_globals.ts"],"names":["String","prototype","copyToClipboard","input","document","createElement","style","position","left","top","body","appendChild","textContent","this","currentFocus","activeElement","focus","setSelectionRange","value","length","execCommand","e","$","removeChild","format","args","arguments","replace","match","number","toString","formatProperty","arg","matches","str","i","prop","substr","formats","joinFromArray","paramArray","isArray","sep","display","forEach","jsonObj","index","removeNonWordCharacters","toPropertyName","capitalText","letter","toUpperCase","result","lastCharWasUpperCase","c","toLocaleLowerCase","test","Date","toTicks","getTime","getDateStringWithLeadingZero","getDayMonthWithLeadingZero","getFullYear","leadingZero","num","lz","getDate","getMonth","setTimeOfDateToZero","setHours","setMinutes","setSeconds","setMilliseconds","formatString","addPadding","negative","zeros","Math","abs","slice","replacements","date","[object Object]","getMonthName","getMonthNameShort","getDayName","getDayNameShort","getDateSuffix","getHours","hour","getMinutes","getSeconds","getMilliseconds","floor","getTimezoneOffset","getMeridiem","Array","temp","exec","push","substring","tempStr","foundMatch","join","getDayDifferenceToTargetDate","targetDate","thisTime","targetTime","round","asUTC","localDay","localMonth","localYear","localHour","localMinute","localSecond","UTC","window","openCentered","url","title","w","h","dualScreenLeft","undefined","screenLeft","screen","dualScreenTop","screenTop","innerWidth","documentElement","clientWidth","width","innerHeight","clientHeight","height","newWindow","open","find","Object","defineProperty","predicate","TypeError","o","len","thisArg","k","kValue","call","configurable","writable","findIndex","from","toStr","isCallable","fn","maxSafeInteger","pow","toLength","Number","isNaN","isFinite","toInteger","min","max","arrayLike","items","T","mapFn","A"],"mappings":"AAAKA,OAAOC,UAAUC,kBAClBF,OAAOC,UAAUC,gBAAkB,WAC/B,IAAIC,EAAQC,SAASC,cAAc,YACnCF,EAAMG,MAAMC,SAAW,WACvBJ,EAAMG,MAAME,KAAO,UACnBL,EAAMG,MAAMG,IAAM,IAClBL,SAASM,KAAKC,YAAYR,GAC1BA,EAAMS,YAAcC,KACpB,IAAIC,EAAeV,SAASW,cAC5BZ,EAAMa,QACNb,EAAMc,kBAAkB,EAAGd,EAAMe,MAAMC,QAEvC,IACcf,SAASgB,YAAY,QAEnC,MAAOC,IACO,EAEVP,GACAQ,EAAER,GAAcE,QAEpBZ,SAASM,KAAKa,YAAYpB,KAG7BH,OAAOC,UAAUuB,SAClBxB,OAAOC,UAAUuB,OAAS,WACtB,IAAIC,EAAOC,UACX,OAAOb,KAAKc,QAAQ,WAAY,CAACC,EAAOC,SAAoC,IAAjBJ,EAAKI,IAA4C,OAAjBJ,EAAKI,GAC1FJ,EAAKI,GAAQC,WACbF,KAGT5B,OAAOC,UAAU8B,iBAClB/B,OAAOC,UAAU8B,eAAiB,SAAUC,GACxC,IAAIC,EAAUpB,KAAKe,MAAM,YACrBM,EAAMrB,KACV,GAAIoB,EACA,IAAK,IAAIE,EAAI,EAAGA,EAAIF,EAAQd,OAAQgB,IAAK,CACrC,IAAIP,EAAQK,EAAQE,GAChBC,EAAOR,EAAMS,OAAO,EAAGT,EAAMT,OAAS,GAC1Ce,EAAMA,EAAIP,QAAQC,OAA4B,IAAdI,EAAII,IAAuC,OAAdJ,EAAII,GAAiBJ,EAAII,GAAMN,WAAaM,GAEjH,OAAOF,IAGVlC,OAAOC,UAAUqC,UAClBtC,OAAOC,UAAUqC,QAAU,WACvB,IAAIb,EAAOC,UAAU,GACrB,OAAOb,KAAKc,QAAQ,WAAY,CAACC,EAAOC,SAAoC,IAAjBJ,EAAKI,IAA4C,OAAjBJ,EAAKI,GAC1FJ,EAAKI,GAAQC,WACbF,KAGT5B,OAAOuC,gBACRvC,OAAOuC,cAAgB,WACnB,IAAIC,EAAad,UAAU,GAC3B,IAAKJ,EAAEmB,QAAQD,IAAqC,IAAtBA,EAAWrB,OACrC,MAAO,GACX,IAAIiB,EAAOV,UAAUP,OAAS,EAAIO,UAAU,GAAK,KAC7CgB,EAAMhB,UAAUP,OAAS,EAAIO,UAAU,GAAK,KAC5CiB,EAAU,GAWd,OAVAH,EAAWI,QAAQ,CAACC,EAASC,KAErBH,GADmB,iBAAZE,GAAwBT,EACpBS,EAAQT,GAGRS,EAEXC,IAAUN,EAAWrB,OAAS,IAC9BwB,GAAWD,KAEZC,IAGV3C,OAAOC,UAAU8C,0BAClB/C,OAAOC,UAAU8C,wBAA0B,WACvC,OAAOlC,KAAKc,QAAQ,QAAS,MAGhC3B,OAAOC,UAAU+C,iBAClBhD,OAAOC,UAAU+C,eAAiB,WAI9B,IAHA,IAAIC,EAAcpC,KAAKc,QAAQ,WAAYuB,GAAUA,EAAOC,eACxDC,EAAS,GACTC,GAAuB,EAClBlB,EAAI,EAAGA,EAAIc,EAAY9B,OAAQgB,IAAK,CACzC,IAAImB,EAAIL,EAAYd,GAChBkB,GAAwBC,EAAEH,gBAAkBG,EAC5CF,GAAUE,EAAEC,oBAEZH,GAAUE,EAEdD,EAAuB,QAAQG,KAAKF,GAIxC,OADAF,EAASA,EAAOL,4BAInBU,KAAKxD,UAAUyD,UAChBD,KAAKxD,UAAUyD,QAAU,WAGrB,OAF6B,IAAjB7C,KAAK8C,UACQ,cAI5BF,KAAKxD,UAAU2D,+BAChBH,KAAKxD,UAAU2D,6BAA+B,WAC1C,OAAO/C,KAAKgD,6BAA+BhD,KAAKiD,cAAchC,WAAWO,OAAO,EAAG,KAGtFoB,KAAKxD,UAAU4D,6BAChBJ,KAAKxD,UAAU4D,2BAA6B,WACxC,IAAIE,EAAeC,IACf,IAAIC,EAAKD,EAAIlC,WAIb,OAHkB,IAAdmC,EAAG9C,SACH8C,EAAK,IAAMA,GAERA,GAEX,OAAOF,EAAYlD,KAAKqD,WAAa,IAAMH,EAAYlD,KAAKsD,WAAa,GAAK,MAGjFV,KAAKxD,UAAUmE,sBAChBX,KAAKxD,UAAUmE,oBAAsB,WAKjC,OAJAvD,KAAKwD,SAAS,GACdxD,KAAKyD,WAAW,GAChBzD,KAAK0D,WAAW,GAChB1D,KAAK2D,gBAAgB,GACd3D,OAGV4C,KAAKxD,UAAUuB,SAChBiC,KAAKxD,UAAUuB,OAAS,SAAUiD,GA+G9B,IA9GA,IAAIC,EAAa,CAACxD,EAAOC,KAGrB,IAFA,IAAIwD,EAAazD,EAAQ,EAAK,IAAM,GAChC0D,EAAQ,IACHzC,EAAI,EAAGA,EAAIhB,EAAQgB,IACxByC,GAAS,IAEb,OAAOD,GAAYC,EAAQC,KAAKC,IAAI5D,GAAOY,YAAYiD,OAAO5D,IAE9D6D,EAAe,CACfC,KAAMpE,KACNqE,OACI,OAAOrE,KAAKoE,KAAKnB,eAErBoB,KACI,OAAOrE,KAAKoE,KAAKnB,cAAgB,KAErCoB,OACI,OAAOrE,KAAKoE,KAAKE,gBAErBD,MACI,OAAOrE,KAAKoE,KAAKG,qBAErBF,KACI,OAAOR,EAAY7D,KAAKoE,KAAKd,WAAa,EAAI,IAElDe,IACI,OAAOrE,KAAKoE,KAAKd,WAAa,GAElCe,OACI,OAAOrE,KAAKoE,KAAKI,cAErBH,MACI,OAAOrE,KAAKoE,KAAKK,mBAErBJ,KACI,OAAOR,EAAW7D,KAAKoE,KAAKf,UAAW,IAE3CgB,IACI,OAAOrE,KAAKoE,KAAKf,WAErBgB,IACI,OAAOrE,KAAKoE,KAAKM,iBAErBL,KACI,OAAOR,EAAW7D,KAAKoE,KAAKO,WAAY,IAE5CN,IACI,OAAOrE,KAAKoE,KAAKO,YAErBN,KACI,IAAIO,EAAO5E,KAAKoE,KAAKO,WAOrB,OANIC,EAAO,GACPA,GAAQ,GAEHA,EAAO,IACZA,EAAO,IAEJf,EAAWe,EAAM,IAE5BP,IACI,IAAIO,EAAO5E,KAAKoE,KAAKO,WAOrB,OANIC,EAAO,GACPA,GAAQ,GAEHA,EAAO,IACZA,EAAO,IAEJA,GAEXP,KACI,OAAOR,EAAW7D,KAAKoE,KAAKS,aAAc,IAE9CR,IACI,OAAOrE,KAAKoE,KAAKS,cAErBR,KACI,OAAOR,EAAW7D,KAAKoE,KAAKU,aAAc,IAE9CT,IACI,OAAOrE,KAAKoE,KAAKU,cAErBT,MACI,OAAOR,EAAW7D,KAAKoE,KAAKW,kBAAmB,IAEnDV,KACI,OAAOR,EAAWG,KAAKgB,MAAMhF,KAAKoE,KAAKW,kBAAoB,IAAK,IAEpEV,IACI,OAAOL,KAAKgB,MAAMhF,KAAKoE,KAAKW,kBAAoB,MAEpDV,OACI,OAAOR,EAAWG,KAAKgB,OAAOhF,KAAKoE,KAAKa,oBAAsB,IAAK,GAAK,IAAMpB,GAAY7D,KAAKoE,KAAKa,oBAAsB,GAAI,IAElIZ,MACI,OAAOL,KAAKgB,OAAOhF,KAAKoE,KAAKa,oBAAsB,IAAM,IAAMpB,GAAY7D,KAAKoE,KAAKa,oBAAsB,GAAI,IAEnHZ,KACI,OAAOR,EAAWG,KAAKgB,OAAOhF,KAAKoE,KAAKa,oBAAsB,IAAK,IAEvEZ,IACI,OAAOL,KAAKgB,OAAOhF,KAAKoE,KAAKa,oBAAsB,KAEvDZ,KACI,OAAOrE,KAAKoE,KAAKc,aAAY,IAEjCb,KACI,OAAOrE,KAAKoE,KAAKc,aAAY,KAGjCzD,EAAU,IAAI0D,MACXvB,EAAatD,OAAS,GAAG,CAC5B,GAAwB,MAApBsD,EAAa,GAEb,GAAa,QADTwB,EAAO,WAAWC,KAAKzB,IAEvBnC,EAAQ6D,KAAK1B,EAAa2B,UAAU,IACpC3B,EAAe,OAEd,CACD,IAAI4B,EAAUJ,EAAK,GAAGG,UAAU,EAAGH,EAAK,GAAG9E,OAAS,GACpDmB,EAAQ6D,KAAKE,GACb5B,EAAeA,EAAa2B,UAAUC,EAAQlF,OAAS,QAG1D,GAAwB,MAApBsD,EAAa,GAAY,CAC9B,IAAIwB,EACJ,GAAa,QADTA,EAAO,WAAWC,KAAKzB,IAEvBnC,EAAQ6D,KAAK1B,EAAa2B,UAAU,IACpC3B,EAAe,OAEd,CACG4B,EAAUJ,EAAK,GAAGG,UAAU,EAAGH,EAAK,GAAG9E,OAAS,GACpDmB,EAAQ6D,KAAKE,GACb5B,EAAeA,EAAa2B,UAAUC,EAAQlF,OAAS,SAG1D,GAAwB,OAApBsD,EAAa,GACdA,EAAatD,OAAS,GACtBmB,EAAQ6D,KAAK1B,EAAa2B,UAAU,EAAG,IACvC3B,EAAeA,EAAa2B,UAAU,KAGtC9D,EAAQ6D,KAAK,MACb1B,EAAe,QAGlB,CAED,IADA,IAAI6B,GAAa,EACRnE,EAAIsC,EAAatD,OAAQgB,EAAI,EAAGA,IACrC,GAAIsC,EAAa2B,UAAU,EAAGjE,KAAM6C,EAAc,CAC9C1C,EAAQ6D,KAAKnB,EAAaP,EAAa2B,UAAU,EAAGjE,OACpDsC,EAAeA,EAAa2B,UAAUjE,GACtCmE,GAAa,EACb,MAGHA,IACDhE,EAAQ6D,KAAK1B,EAAa,IAC1BA,EAAeA,EAAa2B,UAAU,KAIlD,OAAO9D,EAAQiE,KAAK,MAGvB9C,KAAKxD,UAAUuG,+BAChB/C,KAAKxD,UAAUuG,6BAA+B,SAAUC,GACpD,IACIC,EAAW7F,KAAK8C,UAChBgD,OAAoC,IAAfF,EAA8BA,EAAW9C,WAAY,IAAKF,MAAQE,UAC3F,OAAOkB,KAAK+B,OAAOF,EAAWC,GAHjB,SAMhBlD,KAAKxD,UAAU4G,QAChBpD,KAAKxD,UAAU4G,MAAQ,WACnB,IAAIC,EAAWjG,KAAKqD,UAChB6C,EAAalG,KAAKsD,WAClB6C,EAAYnG,KAAKiD,cACjBmD,EAAYpG,KAAK2E,WACjB0B,EAAcrG,KAAK6E,aACnByB,EAActG,KAAK8E,aACvB,OAAO,IAAIlC,KAAKA,KAAK2D,IAAIJ,EAAWD,EAAYD,EAAUG,EAAWC,EAAaC,MAGrFE,OAAOC,eACRD,OAAOC,aAAe,EAACC,EAAKC,EAAOC,EAAGC,KAClC,IAAIC,EAAsCC,MAArBP,OAAOQ,WAA0BR,OAAOQ,WAAaR,OAAOS,OAAOtH,KACpFuH,EAAoCH,MAApBP,OAAOW,UAAyBX,OAAOW,UAAYF,OAAOrH,IAG1ED,GAFQ6G,OAAOY,WAAaZ,OAAOY,WAAa7H,SAAS8H,gBAAgBC,YAAc/H,SAAS8H,gBAAgBC,YAAcL,OAAOM,OAEpH,EAAMX,EAAI,EAAME,EACjClH,GAFS4G,OAAOgB,YAAchB,OAAOgB,YAAcjI,SAAS8H,gBAAgBI,aAAelI,SAAS8H,gBAAgBI,aAAeR,OAAOS,QAEzH,EAAMb,EAAI,EAAMK,EACjCS,EAAYnB,OAAOoB,KAAKlB,EAAKC,EAAO,gHAAgHhG,OAAOiG,EAAGC,EAAGjH,EAAKD,IACtK6G,OAAOrG,OACPwH,EAAUxH,WAIjBgF,MAAM/F,UAAUyI,MACjBC,OAAOC,eAAe5C,MAAM/F,UAAW,OAAQ,CAC3CiB,MAAO,SAAU2H,GACb,GAAY,MAARhI,KACA,MAAM,IAAIiI,UAAU,iCAExB,IAAIC,EAAIJ,OAAO9H,MACXmI,EAAMD,EAAE5H,SAAW,EACvB,GAAyB,mBAAd0H,EACP,MAAM,IAAIC,UAAU,gCAIxB,IAFA,IAAIG,EAAUvH,UAAU,GACpBwH,EAAI,EACDA,EAAIF,GAAK,CACZ,IAAIG,EAASJ,EAAEG,GACf,GAAIL,EAAUO,KAAKH,EAASE,EAAQD,EAAGH,GACnC,OAAOI,EAEXD,MAIRG,cAAc,EACdC,UAAU,IAGbtD,MAAM/F,UAAUsJ,WACjBZ,OAAOC,eAAe5C,MAAM/F,UAAW,YAAa,CAChDiB,MAAO,SAAU2H,GACb,GAAY,MAARhI,KACA,MAAM,IAAIiI,UAAU,iCAExB,IAAIC,EAAIJ,OAAO9H,MACXmI,EAAMD,EAAE5H,SAAW,EACvB,GAAyB,mBAAd0H,EACP,MAAM,IAAIC,UAAU,gCAIxB,IAFA,IAAIG,EAAUvH,UAAU,GACpBwH,EAAI,EACDA,EAAIF,GAAK,CACZ,IAAIG,EAASJ,EAAEG,GACf,GAAIL,EAAUO,KAAKH,EAASE,EAAQD,EAAGH,GACnC,OAAOG,EAEXA,IAEJ,OAAQ,GAEZG,cAAc,EACdC,UAAU,IAGbtD,MAAMwD,OACPxD,MAAMwD,KAAQ,WACV,IAAIC,EAAQd,OAAO1I,UAAU6B,SACzB4H,EAAa,SAAUC,GACvB,MAAqB,mBAAPA,GAAwC,sBAAnBF,EAAML,KAAKO,IAY9CC,EAAiB/E,KAAKgF,IAAI,EAAG,IAAM,EACnCC,EAAW,SAAU5I,GACrB,IAAI8H,EAZQ,SAAU9H,GACtB,IAAIW,EAASkI,OAAO7I,GACpB,OAAI8I,MAAMnI,GACC,EAEI,IAAXA,GAAiBoI,SAASpI,IAGtBA,EAAS,EAAI,GAAK,GAAKgD,KAAKgB,MAAMhB,KAAKC,IAAIjD,IAFxCA,EAMDqI,CAAUhJ,GACpB,OAAO2D,KAAKsF,IAAItF,KAAKuF,IAAIpB,EAAK,GAAIY,IAEtC,OAAO,SAAcS,GACjB,IACIC,EAAQ3B,OAAO0B,GACnB,GAAiB,MAAbA,EACA,MAAM,IAAIvB,UAAU,oEAExB,IACIyB,EADAC,EAAQ9I,UAAUP,OAAS,EAAIO,UAAU,QAAK,EAElD,QAAqB,IAAV8I,EAAuB,CAC9B,IAAKd,EAAWc,GACZ,MAAM,IAAI1B,UAAU,qEAEpBpH,UAAUP,OAAS,IACnBoJ,EAAI7I,UAAU,IAOtB,IAJA,IAGIyH,EAHAH,EAAMc,EAASQ,EAAMnJ,QACrBsJ,EAAIf,EAhBA7I,MAgBgB8H,OAAO,IAhBvB9H,KAgB6BmI,IAAQ,IAAIhD,MAAMgD,GACnDE,EAAI,EAEDA,EAAIF,GACPG,EAASmB,EAAMpB,GAEXuB,EAAEvB,GADFsB,OACoB,IAAND,EAAoBC,EAAMrB,EAAQD,GAAKsB,EAAMpB,KAAKmB,EAAGpB,EAAQD,GAGpEC,EAEXD,GAAK,EAGT,OADAuB,EAAEtJ,OAAS6H,EACJyB,GAnDF","sourcesContent":["interface String {\r\n format(...replacements: any[]): string;\r\n formats(replacements: any[]): string;\r\n formatProperty(jObject: any): string;\r\n removeNonWordCharacters(): string;\r\n /** SOME text -> SomeText */\r\n toPropertyName(): string;\r\n copyToClipboard(): any;\r\n}\r\n\r\ninterface StringConstructor {\r\n /**\r\n * Joined die Member (prop) eines JSON-Objects zu einem sep(\",\")-getrennten string.\r\n * @param jObject \r\n * @param prop \r\n * @param sep \r\n * @returns string \r\n */\r\n joinFromArray(jObject: any, prop: string, sep: string): string;\r\n}\r\n\r\nif (!String.prototype.copyToClipboard) {\r\n String.prototype.copyToClipboard = function () {\r\n //create hidden input element\r\n var input = document.createElement(\"textarea\");\r\n input.style.position = \"absolute\";\r\n input.style.left = \"-9999px\";\r\n input.style.top = \"0\";\r\n document.body.appendChild(input);\r\n //set content to link\r\n input.textContent = this;\r\n // select the content\r\n var currentFocus = document.activeElement;\r\n input.focus();\r\n input.setSelectionRange(0, input.value.length);\r\n // copy the selection\r\n var succeed;\r\n try {\r\n succeed = document.execCommand(\"copy\");\r\n } catch (e) {\r\n succeed = false;\r\n }\r\n // restore original focus\r\n if (currentFocus) {\r\n $(currentFocus).focus();\r\n }\r\n //remove input element\r\n document.body.removeChild(input);\r\n };\r\n}\r\n\r\nif (!String.prototype.format) {\r\n String.prototype.format = function () {\r\n var args = arguments;\r\n return this.replace(/{(\\d+)}/g, (match, number) => (typeof args[number] !== \"undefined\" && args[number] !== null\r\n ? args[number].toString()\r\n : match));\r\n };\r\n}\r\n\r\nif (!String.prototype.formatProperty) {\r\n String.prototype.formatProperty = function (arg: any) {\r\n var matches = this.match(/{(\\w+)}/g);\r\n var str = this;\r\n if (matches)\r\n for (var i = 0; i < matches.length; i++) {\r\n var match = matches[i];\r\n var prop = match.substr(1, match.length - 2);\r\n str = str.replace(match, typeof arg[prop] !== \"undefined\" && arg[prop] !== null ? arg[prop].toString() : prop);\r\n }\r\n return str;\r\n };\r\n}\r\n\r\nif (!String.prototype.formats) {\r\n String.prototype.formats = function () {\r\n var args = arguments[0];\r\n return this.replace(/{(\\d+)}/g, (match, number) => (typeof args[number] !== \"undefined\" && args[number] !== null\r\n ? args[number].toString()\r\n : match));\r\n };\r\n}\r\n\r\nif (!String.joinFromArray) {\r\n String.joinFromArray = function () {\r\n var paramArray = arguments[0];\r\n if (!$.isArray(paramArray) || paramArray.length === 0)\r\n return \"\";\r\n var prop = arguments.length > 1 ? arguments[1] : null;\r\n var sep = arguments.length > 2 ? arguments[2] : \", \";\r\n\r\n var display = \"\";\r\n paramArray.forEach((jsonObj: any, index: number) => {\r\n if (typeof jsonObj === \"object\" && prop) {\r\n display += jsonObj[prop];\r\n } else {\r\n display += jsonObj;\r\n }\r\n if (index !== paramArray.length - 1)\r\n display += sep;\r\n });\r\n\r\n return display;\r\n };\r\n}\r\n\r\nif (!String.prototype.removeNonWordCharacters) {\r\n String.prototype.removeNonWordCharacters = function () {\r\n return this.replace(/[\\W]/g, \"\");\r\n };\r\n}\r\n\r\n\r\nif (!String.prototype.toPropertyName) {\r\n String.prototype.toPropertyName = function () {\r\n var capitalText = this.replace(/\\b[a-z]/g, letter => letter.toUpperCase());\r\n var result = \"\";\r\n var lastCharWasUpperCase = false;\r\n for (var i = 0; i < capitalText.length; i++) {\r\n var c = capitalText[i];\r\n if (lastCharWasUpperCase && c.toUpperCase() === c)\r\n result += c.toLocaleLowerCase();\r\n else {\r\n result += c;\r\n }\r\n lastCharWasUpperCase = /[A-Z]/.test(c);\r\n };\r\n result = result.removeNonWordCharacters();\r\n return result;\r\n };\r\n}\r\n\r\ninterface Date {\r\n toTicks(): number;\r\n asUTC(): Date;\r\n /*\r\n getWochentagShort(): string;\r\n getWochentagFull(): string;\r\n getMonat(): string;\r\n */\r\n getDateStringWithLeadingZero(): string;\r\n getDayMonthWithLeadingZero(): string;\r\n setTimeOfDateToZero(): Date;\r\n format(formatStr: string): string;\r\n getDayDifferenceToTargetDate(targetDate?: Date): number;\r\n}\r\n\r\n\r\nif (!Date.prototype.toTicks) {\r\n Date.prototype.toTicks = function () {\r\n //time is in microtime; convert to nanotime\r\n var ticks = this.getTime() * 10000;\r\n //ticks are recorded from 1/1/1; get microtime difference from 1/1/1/ to 1/1/1970\r\n var epochMicrotimeDiff = 621355968000000000;\r\n\r\n return ticks + epochMicrotimeDiff;\r\n };\r\n}\r\n\r\n/*\r\nif (!Date.prototype.getWochentagShort) {\r\n Date.prototype.getWochentagShort = function () {\r\n var wochentage = [\"So\", \"Mo\", \"Di\", \"Mi\", \"Do\", \"Fr\", \"Sa\"];\r\n return wochentage[this.getDay()];\r\n }\r\n}\r\n\r\nif (!Date.prototype.getWochentagFull) {\r\n Date.prototype.getWochentagFull = function () {\r\n var wochentage = [\"Sonntag\", \"Montag\", \"Dienstag\", \"Mittwoch\", \"Donnerstag\", \"Freitag\", \"Samstag\"];\r\n return wochentage[this.getDay()];\r\n }\r\n}\r\n\r\nif (!Date.prototype.getMonat) {\r\n Date.prototype.getMonat = function () {\r\n var monate = [\"Januar\", \"Februar\", \"März\", \"April\", \"Mai\", \"Juni\", \"Juli\", \"August\", \"September\", \"Oktober\", \"November\", \"Dezember\"];\r\n return monate[this.getMonth()];\r\n }\r\n}\r\n*/\r\n\r\nif (!Date.prototype.getDateStringWithLeadingZero) {\r\n Date.prototype.getDateStringWithLeadingZero = function () {\r\n return this.getDayMonthWithLeadingZero() + this.getFullYear().toString().substr(2, 2);\r\n }\r\n}\r\n\r\nif (!Date.prototype.getDayMonthWithLeadingZero) {\r\n Date.prototype.getDayMonthWithLeadingZero = function () {\r\n var leadingZero = (num: number) => {\r\n var lz = num.toString();\r\n if (lz.length === 1) {\r\n lz = \"0\" + lz;\r\n }\r\n return lz;\r\n }\r\n return leadingZero(this.getDate()) + \".\" + leadingZero(this.getMonth() + 1) + \".\";\r\n }\r\n}\r\n\r\nif (!Date.prototype.setTimeOfDateToZero) {\r\n Date.prototype.setTimeOfDateToZero = function () {\r\n this.setHours(0);\r\n this.setMinutes(0);\r\n this.setSeconds(0);\r\n this.setMilliseconds(0);\r\n\r\n return this;\r\n }\r\n}\r\n\r\n/* from https://raw.githubusercontent.com/UziTech/js-date-format/master/js-date-format.js */\r\nif (!Date.prototype.format) {\r\n Date.prototype.format = function (formatString: string) {\r\n\r\n var addPadding = (value: number, length: number) => {\r\n var negative = ((value < 0) ? \"-\" : \"\");\r\n var zeros = \"0\";\r\n for (var i = 2; i < length; i++) {\r\n zeros += \"0\";\r\n }\r\n return negative + (zeros + Math.abs(value).toString()).slice(-length);\r\n };\r\n\r\n var replacements = {\r\n date: this,\r\n YYYY() {\r\n return this.date.getFullYear();\r\n },\r\n YY() {\r\n return this.date.getFullYear() % 100;\r\n },\r\n MMMM() {\r\n return this.date.getMonthName();\r\n },\r\n MMM() {\r\n return this.date.getMonthNameShort();\r\n },\r\n MM() {\r\n return addPadding((this.date.getMonth() + 1), 2);\r\n },\r\n M() {\r\n return this.date.getMonth() + 1;\r\n },\r\n DDDD() {\r\n return this.date.getDayName();\r\n },\r\n DDD() {\r\n return this.date.getDayNameShort();\r\n },\r\n DD() {\r\n return addPadding(this.date.getDate(), 2);\r\n },\r\n D() {\r\n return this.date.getDate();\r\n },\r\n S() {\r\n return this.date.getDateSuffix();\r\n },\r\n HH() {\r\n return addPadding(this.date.getHours(), 2);\r\n },\r\n H() {\r\n return this.date.getHours();\r\n },\r\n hh() {\r\n var hour = this.date.getHours();\r\n if (hour > 12) {\r\n hour -= 12;\r\n } else if (hour < 1) {\r\n hour = 12;\r\n }\r\n return addPadding(hour, 2);\r\n },\r\n h() {\r\n var hour = this.date.getHours();\r\n if (hour > 12) {\r\n hour -= 12;\r\n } else if (hour < 1) {\r\n hour = 12;\r\n }\r\n return hour;\r\n },\r\n mm() {\r\n return addPadding(this.date.getMinutes(), 2);\r\n },\r\n m() {\r\n return this.date.getMinutes();\r\n },\r\n ss() {\r\n return addPadding(this.date.getSeconds(), 2);\r\n },\r\n s() {\r\n return this.date.getSeconds();\r\n },\r\n fff() {\r\n return addPadding(this.date.getMilliseconds(), 3);\r\n },\r\n ff() {\r\n return addPadding(Math.floor(this.date.getMilliseconds() / 10), 2);\r\n },\r\n f() {\r\n return Math.floor(this.date.getMilliseconds() / 100);\r\n },\r\n zzzz() {\r\n return addPadding(Math.floor(-this.date.getTimezoneOffset() / 60), 2) + \":\" + addPadding(-this.date.getTimezoneOffset() % 60, 2);\r\n },\r\n zzz() {\r\n return Math.floor(-this.date.getTimezoneOffset() / 60) + \":\" + addPadding(-this.date.getTimezoneOffset() % 60, 2);\r\n },\r\n zz() {\r\n return addPadding(Math.floor(-this.date.getTimezoneOffset() / 60), 2);\r\n },\r\n z() {\r\n return Math.floor(-this.date.getTimezoneOffset() / 60);\r\n },\r\n tt() {\r\n return this.date.getMeridiem(true);\r\n },\r\n TT() {\r\n return this.date.getMeridiem(false);\r\n }\r\n };\r\n\r\n\r\n var formats = new Array();\r\n while (formatString.length > 0) {\r\n if (formatString[0] === \"\\\"\") {\r\n var temp = /\"[^\"]*\"/m.exec(formatString);\r\n if (temp === null) {\r\n formats.push(formatString.substring(1));\r\n formatString = \"\";\r\n } else {\r\n var tempStr = temp[0].substring(1, temp[0].length - 1);\r\n formats.push(tempStr);\r\n formatString = formatString.substring(tempStr.length + 2);\r\n }\r\n } else if (formatString[0] === \"'\") {\r\n var temp = /'[^']*'/m.exec(formatString);\r\n if (temp === null) {\r\n formats.push(formatString.substring(1));\r\n formatString = \"\";\r\n } else {\r\n var tempStr = temp[0].substring(1, temp[0].length - 1);\r\n formats.push(tempStr);\r\n formatString = formatString.substring(tempStr.length + 2);\r\n }\r\n } else if (formatString[0] === \"\\\\\") {\r\n if (formatString.length > 1) {\r\n formats.push(formatString.substring(1, 2));\r\n formatString = formatString.substring(2);\r\n } else {\r\n formats.push(\"\\\\\");\r\n formatString = \"\";\r\n }\r\n } else {\r\n var foundMatch = false;\r\n for (var i = formatString.length; i > 0; i--) {\r\n if (formatString.substring(0, i) in replacements) {\r\n formats.push(replacements[formatString.substring(0, i)]());\r\n formatString = formatString.substring(i);\r\n foundMatch = true;\r\n break;\r\n }\r\n }\r\n if (!foundMatch) {\r\n formats.push(formatString[0]);\r\n formatString = formatString.substring(1);\r\n }\r\n }\r\n }\r\n\r\n return formats.join(\"\");\r\n };\r\n\r\n}\r\n\r\nif (!Date.prototype.getDayDifferenceToTargetDate) {\r\n Date.prototype.getDayDifferenceToTargetDate = function (targetDate) {\r\n var oneDay = 1000 * 60 * 60 * 24;\r\n var thisTime = this.getTime();\r\n var targetTime = (typeof targetDate !== \"undefined\") ? targetDate.getTime() : (new Date()).getTime();\r\n\r\n return Math.round((thisTime - targetTime) / oneDay);\r\n }\r\n}\r\n\r\nif (!Date.prototype.asUTC) {\r\n Date.prototype.asUTC = function () {\r\n var localDay = this.getDate();\r\n var localMonth = this.getMonth();\r\n var localYear = this.getFullYear();\r\n var localHour = this.getHours();\r\n var localMinute = this.getMinutes();\r\n var localSecond = this.getSeconds();\r\n\r\n return new Date(Date.UTC(localYear, localMonth, localDay, localHour, localMinute, localSecond));\r\n }\r\n}\r\n\r\n// For Firefox-Browser\r\ninterface Screen {\r\n left: number;\r\n top: number;\r\n}\r\n\r\ninterface Window {\r\n openCentered: (url: string, title: string, width: number, height: number) => void;\r\n}\r\n\r\ninterface Function {\r\n createDelegate(thisObj: any, functionCall: any);\r\n}\r\n\r\nif (!window.openCentered) {\r\n\r\n window.openCentered = (url: string, title: string, w: number, h: number) => {\r\n // Fixes dual-screen position Most browsers Firefox\r\n var dualScreenLeft = window.screenLeft != undefined ? window.screenLeft : window.screen.left;\r\n var dualScreenTop = window.screenTop != undefined ? window.screenTop : screen.top;\r\n\r\n var width = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth ? document.documentElement.clientWidth : screen.width;\r\n var height = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight ? document.documentElement.clientHeight : screen.height;\r\n\r\n var left = ((width / 2) - (w / 2)) + dualScreenLeft;\r\n var top = ((height / 2) - (h / 2)) + dualScreenTop;\r\n var newWindow = window.open(url, title, \"resizable,toolbar=no,location=no,menubar=no,scrollbars=no,fullscreen=no,width={0},height={1},top={2},left={3}\".format(w, h, top, left));\r\n\r\n // Puts focus on the newWindow\r\n if (window.focus) {\r\n newWindow.focus();\r\n }\r\n }\r\n}\r\n\r\ninterface JQueryStatic {\r\n /**\r\n * Returns a localized string or the key if no value can be found.\r\n */\r\n getString(key: string): string;\r\n isDate(date: any): boolean;\r\n selectText(): void;\r\n getStyleSheet(path): void;\r\n indexOfElement(array: Array, key: string, value: string | number): number;\r\n extend(target: any, object1?: any, ...objectN: any[]): any;\r\n convertChartLabel(level: string, labelString: string): string;\r\n convertChartLabelForOptimize(label: string, forOptimize: boolean): string;\r\n alert(message: string, title: string): void;\r\n showDropdownOption(dropdownSelector: string, value: string): void;\r\n hideDropdownOption(dropdownSelector: string, value: string): void;\r\n lockDropdownIfSingleValue(dropdownSelector: string, items: JQuery, hidePlaceholder?: boolean): void;\r\n}\r\n\r\ninterface Select2DataObject {\r\n id: string;\r\n text: string;\r\n element: HTMLOptionElement;\r\n}\r\n\r\ninterface Select2ParamsObject {\r\n data: Select2DataObject;\r\n}\r\n\r\ninterface Select2JQueryEventObject {\r\n params: Select2ParamsObject;\r\n}\r\n\r\ninterface CSSMapPlugin {\r\n (options: any): JQuery;\r\n}\r\n\r\ninterface JQuery {\r\n CSSMap: CSSMapPlugin;\r\n}\r\n\r\n// ES5-Polyfill for Array.find() from https://tc39.github.io/ecma262/#sec-array.prototype.find\r\nif (!Array.prototype.find) {\r\n Object.defineProperty(Array.prototype, 'find', {\r\n value: function (predicate) {\r\n // 1. Let O be ? ToObject(this value).\r\n if (this == null) {\r\n throw new TypeError('\"this\" is null or not defined');\r\n }\r\n\r\n var o = Object(this);\r\n\r\n // 2. Let len be ? ToLength(? Get(O, \"length\")).\r\n var len = o.length >>> 0;\r\n\r\n // 3. If IsCallable(predicate) is false, throw a TypeError exception.\r\n if (typeof predicate !== 'function') {\r\n throw new TypeError('predicate must be a function');\r\n }\r\n\r\n // 4. If thisArg was supplied, let T be thisArg; else let T be undefined.\r\n var thisArg = arguments[1];\r\n\r\n // 5. Let k be 0.\r\n var k = 0;\r\n\r\n // 6. Repeat, while k < len\r\n while (k < len) {\r\n // a. Let Pk be ! ToString(k).\r\n // b. Let kValue be ? Get(O, Pk).\r\n // c. Let testResult be ToBoolean(? Call(predicate, T, « kValue, k, O »)).\r\n // d. If testResult is true, return kValue.\r\n var kValue = o[k];\r\n if (predicate.call(thisArg, kValue, k, o)) {\r\n return kValue;\r\n }\r\n // e. Increase k by 1.\r\n k++;\r\n }\r\n\r\n // 7. Return undefined.\r\n return undefined;\r\n },\r\n configurable: true,\r\n writable: true\r\n });\r\n}\r\n\r\n//trumbowyg types\r\ninterface JQuery {\r\n // noinspection JSUnusedLocalSymbols\r\n trumbowyg(command: 'html', content?: string): string;\r\n\r\n // noinspection JSUnusedLocalSymbols\r\n trumbowyg(command: 'openModal', options: JQueryTrumbowyg.ModalOptions): JQuery;\r\n\r\n // noinspection JSUnusedLocalSymbols\r\n trumbowyg(command: 'openModalInsert', options: JQueryTrumbowyg.ModalInsertOptions): JQuery;\r\n\r\n // noinspection JSUnusedLocalSymbols\r\n trumbowyg(command: 'closeModal' | 'saveRange' | 'restoreRange' | 'empty' | 'enable' | 'disable' | 'toogle' | 'destroy'): void;\r\n\r\n // noinspection JSUnusedLocalSymbols\r\n trumbowyg(command: 'getRange'): Range;\r\n\r\n // noinspection JSUnusedLocalSymbols\r\n trumbowyg(command: 'getRangeText'): string;\r\n\r\n // noinspection JSUnusedLocalSymbols\r\n trumbowyg(options?: JQueryTrumbowyg.Options): JQuery;\r\n}\r\n\r\ninterface JQueryStatic {\r\n trumbowyg: JQueryTrumbowyg.StaticOptions;\r\n}\r\n\r\ndeclare namespace JQueryTrumbowyg {\r\n interface Trumbowyg extends StaticOptions {\r\n // noinspection JSUnusedLocalSymbols\r\n openModal(title: string, content: string): JQuery;\r\n\r\n // noinspection JSUnusedLocalSymbols\r\n openModalInsert(title: string, fields: { [fieldName: string]: ModalFields },\r\n callback: (values: string[]) => boolean): JQuery;\r\n\r\n closeModal(): void;\r\n\r\n saveRange(): void;\r\n\r\n restoreRange(): void;\r\n\r\n getRangeText(): string;\r\n\r\n getRange(): Range;\r\n\r\n // noinspection JSUnusedLocalSymbols\r\n html(html?: string): string;\r\n\r\n empty(): void;\r\n\r\n // noinspection JSUnusedLocalSymbols\r\n setDisabled(disabled: boolean): void;\r\n\r\n toggle();\r\n }\r\n\r\n interface StaticOptions {\r\n langs: any;\r\n plugins: any;\r\n svgPath: string | boolean;\r\n hideButtonTexts: boolean;\r\n }\r\n\r\n interface ModalOptions {\r\n title: string;\r\n content: string;\r\n }\r\n\r\n interface ModalInsertOptions {\r\n title: string;\r\n fields: {\r\n [fieldName: string]: ModalFields;\r\n }\r\n callback: (values: string[]) => boolean;\r\n }\r\n\r\n interface ModalFields {\r\n label?: string;\r\n name?: string;\r\n value?: string;\r\n }\r\n\r\n interface Options {\r\n lang?: string;\r\n\r\n fixedBtnPane?: boolean;\r\n fixedFullWidth?: boolean;\r\n autogrow?: boolean;\r\n autogrowOnEnter?: boolean;\r\n imageWidthModalEdit?: boolean;\r\n\r\n prefix?: string;\r\n\r\n semantic?: boolean;\r\n resetCss?: boolean;\r\n removeformatPasted?: boolean;\r\n tagsToRemove?: string[];\r\n btns?: string[][];\r\n btnsDef?: {\r\n [btnName: string]: ButtonDefinition;\r\n };\r\n\r\n inlineElementsSelector?: string;\r\n\r\n pasteHandler?: ((event: any) => void)[];\r\n imgDblClickHandler?: (event: any) => void;\r\n\r\n plugins?: {\r\n [pluginName: string]: PluginDefinition;\r\n };\r\n }\r\n\r\n interface PluginDefinition {\r\n init: (trumbowyg: Trumbowyg) => void;\r\n tagHandler?: (element: any, trumbowyg: Trumbowyg) => any[];\r\n destroy?: () => void;\r\n }\r\n\r\n interface ButtonDefinition {\r\n dropdown?: string[];\r\n fn?: string | (() => any);\r\n tag?: string;\r\n title?: string;\r\n text?: string;\r\n isSupported?: () => boolean;\r\n key?: string;\r\n param?: string;\r\n forceCSS?: boolean,\r\n class?: string,\r\n ico?: string;\r\n hasIcon?: boolean;\r\n }\r\n}\r\n\r\n// Array.findIndex polyfill\r\n// https://tc39.github.io/ecma262/#sec-array.prototype.findindex\r\nif (!Array.prototype.findIndex) {\r\n Object.defineProperty(Array.prototype, 'findIndex', {\r\n value: function (predicate) {\r\n // 1. Let O be ? ToObject(this value).\r\n if (this == null) {\r\n throw new TypeError('\"this\" is null or not defined');\r\n }\r\n\r\n var o = Object(this);\r\n\r\n // 2. Let len be ? ToLength(? Get(O, \"length\")).\r\n var len = o.length >>> 0;\r\n\r\n // 3. If IsCallable(predicate) is false, throw a TypeError exception.\r\n if (typeof predicate !== 'function') {\r\n throw new TypeError('predicate must be a function');\r\n }\r\n\r\n // 4. If thisArg was supplied, let T be thisArg; else let T be undefined.\r\n var thisArg = arguments[1];\r\n\r\n // 5. Let k be 0.\r\n var k = 0;\r\n\r\n // 6. Repeat, while k < len\r\n while (k < len) {\r\n // a. Let Pk be ! ToString(k).\r\n // b. Let kValue be ? Get(O, Pk).\r\n // c. Let testResult be ToBoolean(? Call(predicate, T, « kValue, k, O »)).\r\n // d. If testResult is true, return k.\r\n var kValue = o[k];\r\n if (predicate.call(thisArg, kValue, k, o)) {\r\n return k;\r\n }\r\n // e. Increase k by 1.\r\n k++;\r\n }\r\n\r\n // 7. Return -1.\r\n return -1;\r\n },\r\n configurable: true,\r\n writable: true\r\n });\r\n}\r\n\r\n// Array.from polyfill\r\n// Source: https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Array/from#Polyfill\r\n// Production steps of ECMA-262, Edition 6, 22.1.2.1\r\nif (!Array.from) {\r\n Array.from = (function () {\r\n var toStr = Object.prototype.toString;\r\n var isCallable = function (fn) {\r\n return typeof fn === 'function' || toStr.call(fn) === '[object Function]';\r\n };\r\n var toInteger = function (value) {\r\n var number = Number(value);\r\n if (isNaN(number)) { return 0; }\r\n if (number === 0 || !isFinite(number)) { return number; }\r\n return (number > 0 ? 1 : -1) * Math.floor(Math.abs(number));\r\n };\r\n var maxSafeInteger = Math.pow(2, 53) - 1;\r\n var toLength = function (value) {\r\n var len = toInteger(value);\r\n return Math.min(Math.max(len, 0), maxSafeInteger);\r\n };\r\n\r\n // The length property of the from method is 1.\r\n return function from(arrayLike/*, mapFn, thisArg */) {\r\n // 1. Let C be the this value.\r\n var C = this;\r\n\r\n // 2. Let items be ToObject(arrayLike).\r\n var items = Object(arrayLike);\r\n\r\n // 3. ReturnIfAbrupt(items).\r\n if (arrayLike == null) {\r\n throw new TypeError('Array.from requires an array-like object - not null or undefined');\r\n }\r\n\r\n // 4. If mapfn is undefined, then let mapping be false.\r\n var mapFn = arguments.length > 1 ? arguments[1] : void undefined;\r\n var T;\r\n if (typeof mapFn !== 'undefined') {\r\n // 5. else\r\n // 5. a If IsCallable(mapfn) is false, throw a TypeError exception.\r\n if (!isCallable(mapFn)) {\r\n throw new TypeError('Array.from: when provided, the second argument must be a function');\r\n }\r\n\r\n // 5. b. If thisArg was supplied, let T be thisArg; else let T be undefined.\r\n if (arguments.length > 2) {\r\n T = arguments[2];\r\n }\r\n }\r\n\r\n // 10. Let lenValue be Get(items, \"length\").\r\n // 11. Let len be ToLength(lenValue).\r\n var len = toLength(items.length);\r\n\r\n // 13. If IsConstructor(C) is true, then\r\n // 13. a. Let A be the result of calling the [[Construct]] internal method \r\n // of C with an argument list containing the single item len.\r\n // 14. a. Else, Let A be ArrayCreate(len).\r\n var A = isCallable(C) ? Object(new C(len)) : new Array(len);\r\n\r\n // 16. Let k be 0.\r\n var k = 0;\r\n // 17. Repeat, while k < len… (also steps a - h)\r\n var kValue;\r\n while (k < len) {\r\n kValue = items[k];\r\n if (mapFn) {\r\n A[k] = typeof T === 'undefined' ? mapFn(kValue, k) : mapFn.call(T, kValue, k);\r\n } else {\r\n A[k] = kValue;\r\n }\r\n k += 1;\r\n }\r\n // 18. Let putStatus be Put(A, \"length\", len, true).\r\n A.length = len;\r\n // 20. Return A.\r\n return A;\r\n };\r\n }());\r\n}\r\n\r\n//Type definitions for rater.js\r\ninterface RaterOptions {\r\n initial_value?: number;\r\n max_value?: number;\r\n step_size?: number;\r\n update_input_field_name?: JQuery;\r\n readonly?: boolean;\r\n change_once?: boolean;\r\n only_select_one_symbol?: boolean; \r\n cursor?: string;\r\n selected_symbol_type?: string;\r\n}\r\n\r\ninterface JQuery {\r\n rate(): JQuery;\r\n rate(options: RaterOptions): JQuery;\r\n\r\n rate(method: 'getValue'): number;\r\n rate(method: 'setValue', param: number): JQuery;\r\n\r\n rate(method: 'destroy'): JQuery;\r\n\r\n rate(method: string, param: any): any;\r\n}"],"file":"_globals.js"}