Compare commits

..

No commits in common. "main" and "v2.6.60" have entirely different histories.

705 changed files with 11593 additions and 9352 deletions

View File

@ -35,8 +35,6 @@
"LogString": true,
"BlockedRequestMethods": true,
"GoogleDomains": true,
"ReqAnalyzer": true,
"MathJax3Files": true,
"fileGuard": true,
"files": true,

View File

@ -1,13 +1,16 @@
## Please read the following points carefully(!). This is not a template or a form. These are just a few tips before you create a ticket. Please delete all text and describe the problem.
## Please read this text carefully(!)
* Only Firefox: Does the website work after you activate the HTML filter?
* Is there already an existing issue? (e.g. search for the URL of the website)
* Is there already an existing issue? (Search for the URL, e.g. "codeberg.org" or "localcdn.org")
* For the most common problems and solutions I have created an online tool. Please test the broken website there: https://www.localcdn.org/test/check
* Check the FAQs: https://codeberg.org/nobody/LocalCDN/wiki
## If none of the points apply
* write the URL in the title
* one or two screenshots can be helpful
## If none of the above points have helped, then
* Write the URL of the website in the title, for example
* Describe the problem as detailed as possible (maybe one or two screenshots can be helpful)
## Please delete this text(!)
## and describe the problem
Thank you for your understanding

View File

@ -136,9 +136,9 @@ https://cdn.embed.ly/player-0.1.0.min.js
https://cdnjs.cloudflare.com/ajax/libs/1000hz-bootstrap-validator/0.11.9/validator.min.js
https://cdnjs.cloudflare.com/ajax/libs/ajax-bootstrap-select/1.4.5/js/ajax-bootstrap-select.min.js
https://cdnjs.cloudflare.com/ajax/libs/algoliasearch/3.35.1/algoliasearch.min.js
https://cdnjs.cloudflare.com/ajax/libs/algoliasearch/4.23.3/algoliasearch.umd.min.js
https://cdnjs.cloudflare.com/ajax/libs/algoliasearch/4.21.0/algoliasearch.umd.min.js
https://cdnjs.cloudflare.com/ajax/libs/alpinejs/2.8.2/alpine.js
https://cdnjs.cloudflare.com/ajax/libs/alpinejs/3.14.0/cdn.min.js
https://cdnjs.cloudflare.com/ajax/libs/alpinejs/3.13.3/cdn.min.js
https://cdnjs.cloudflare.com/ajax/libs/angucomplete-alt/3.0.0/angucomplete-alt.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-bootstrap-colorpicker/3.0.32/css/colorpicker.min.css
https://cdnjs.cloudflare.com/ajax/libs/angular-bootstrap-colorpicker/3.0.32/js/bootstrap-colorpicker-module.min.js
@ -155,15 +155,15 @@ https://cdnjs.cloudflare.com/ajax/libs/angularjs-toaster/3.0.0/toaster.min.css
https://cdnjs.cloudflare.com/ajax/libs/angularjs-toaster/3.0.0/toaster.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-material/1.2.5/angular-material.min.css
https://cdnjs.cloudflare.com/ajax/libs/angular-material/1.2.5/angular-material.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate/2.19.1/angular-translate-handler-log/angular-translate-handler-log.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate/2.19.1/angular-translate-interpolation-messageformat/angular-translate-interpolation-messageformat.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate/2.19.1/angular-translate-loader-partial/angular-translate-loader-partial.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate/2.19.1/angular-translate-loader-static-files/angular-translate-loader-static-files.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate/2.19.1/angular-translate-loader-url/angular-translate-loader-url.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate/2.19.1/angular-translate.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate/2.19.1/angular-translate-storage-cookie/angular-translate-storage-cookie.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate/2.19.1/angular-translate-storage-local/angular-translate-storage-local.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate-loader-partial/2.19.1/angular-translate-loader-partial.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate/2.19.0/angular-translate-handler-log/angular-translate-handler-log.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate/2.19.0/angular-translate-interpolation-messageformat/angular-translate-interpolation-messageformat.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate/2.19.0/angular-translate-loader-partial/angular-translate-loader-partial.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate/2.19.0/angular-translate-loader-static-files/angular-translate-loader-static-files.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate/2.19.0/angular-translate-loader-url/angular-translate-loader-url.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate/2.19.0/angular-translate.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate/2.19.0/angular-translate-storage-cookie/angular-translate-storage-cookie.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate/2.19.0/angular-translate-storage-local/angular-translate-storage-local.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-translate-loader-partial/2.19.0/angular-translate-loader-partial.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/0.10.0/ui-bootstrap-tpls.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/0.14.3/ui-bootstrap.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/0.14.3/ui-bootstrap-tpls.min.js
@ -173,6 +173,8 @@ https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/2.5.6/ui-bootstrap.m
https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/2.5.6/ui-bootstrap-tpls.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.4.3/angular-ui-router.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/1.1.0/angular-ui-router.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-ui-select/0.20.0/select.min.js
https://cdnjs.cloudflare.com/ajax/libs/angular-ui-utils/0.1.1/angular-ui-utils.min.js
https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.7.2/animate.min.css
https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css
https://cdnjs.cloudflare.com/ajax/libs/animejs/3.2.2/anime.min.js
@ -182,9 +184,9 @@ https://cdnjs.cloudflare.com/ajax/libs/asciinema-player/2.6.1/asciinema-player.m
https://cdnjs.cloudflare.com/ajax/libs/asciinema-player/2.6.1/asciinema-player.min.js
https://cdnjs.cloudflare.com/ajax/libs/autocomplete.js/0.38.1/autocomplete.min.js
https://cdnjs.cloudflare.com/ajax/libs/axios/0.27.2/axios.min.js
https://cdnjs.cloudflare.com/ajax/libs/axios/1.7.2/axios.min.js
https://cdnjs.cloudflare.com/ajax/libs/axios/1.6.2/axios.min.js
https://cdnjs.cloudflare.com/ajax/libs/backbone.js/0.9.10/backbone-min.js
https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.6.0/backbone-min.js
https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.5.0/backbone-min.js
https://cdnjs.cloudflare.com/ajax/libs/baguettebox.js/1.11.1/baguetteBox.min.css
https://cdnjs.cloudflare.com/ajax/libs/baguettebox.js/1.11.1/baguetteBox.min.js
https://cdnjs.cloudflare.com/ajax/libs/blazy/1.8.2/blazy.min.js
@ -283,8 +285,8 @@ https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.10.0/locales/boots
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.10.0/locales/bootstrap-datepicker.zh-TW.min.js
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-daterangepicker/2.1.27/daterangepicker.min.js
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-daterangepicker/3.1/daterangepicker.min.js
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.11.3/font/bootstrap-icons.min.css
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.11.3/font/fonts/bootstrap-icons.woff
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.11.2/font/bootstrap-icons.min.css
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.11.2/font/fonts/bootstrap-icons.woff
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-multiselect/0.9.16/js/bootstrap-multiselect.min.js
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-multiselect/1.1.2/js/bootstrap-multiselect.min.js
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.13.18/css/bootstrap-select.min.css
@ -293,8 +295,8 @@ https://cdnjs.cloudflare.com/ajax/libs/bootstrap-slider/10.6.2/bootstrap-slider.
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-slider/10.6.2/css/bootstrap-slider.min.css
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-slider/11.0.2/bootstrap-slider.min.js
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-slider/11.0.2/css/bootstrap-slider.min.css
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.22.6/bootstrap-table.min.css
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.22.6/bootstrap-table.min.js
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.22.1/bootstrap-table.min.css
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.22.1/bootstrap-table.min.js
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-toggle/2.2.2/css/bootstrap2-toggle.min.css
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-toggle/2.2.2/css/bootstrap-toggle.min.css
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-toggle/2.2.2/js/bootstrap2-toggle.min.js
@ -303,12 +305,12 @@ https://cdnjs.cloudflare.com/ajax/libs/bootstrap-vue/2.23.1/bootstrap-vue.min.cs
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-vue/2.23.1/bootstrap-vue.min.js
https://cdnjs.cloudflare.com/ajax/libs/bootswatch/3.4.0/flatly/bootstrap.min.css
https://cdnjs.cloudflare.com/ajax/libs/bootswatch/4.6.1/flatly/bootstrap.min.css
https://cdnjs.cloudflare.com/ajax/libs/bootswatch/5.3.3/flatly/bootstrap.min.css
https://cdnjs.cloudflare.com/ajax/libs/bootswatch/5.3.2/flatly/bootstrap.min.css
https://cdnjs.cloudflare.com/ajax/libs/bowser/1.9.4/bowser.min.js
https://cdnjs.cloudflare.com/ajax/libs/bowser/2.11.0/bundled.min.js
https://cdnjs.cloudflare.com/ajax/libs/bulma/1.0.1/css/bulma.min.css
https://cdnjs.cloudflare.com/ajax/libs/bxslider/4.2.17/jquery.bxslider.min.css
https://cdnjs.cloudflare.com/ajax/libs/bxslider/4.2.17/jquery.bxslider.min.js
https://cdnjs.cloudflare.com/ajax/libs/bulma/0.9.4/css/bulma.min.css
https://cdnjs.cloudflare.com/ajax/libs/bxslider/4.2.15/jquery.bxslider.min.css
https://cdnjs.cloudflare.com/ajax/libs/bxslider/4.2.15/jquery.bxslider.min.js
https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.4/Chart.bundle.min.js
https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.4/Chart.min.css
https://cdnjs.cloudflare.com/ajax/libs/Chart.js/3.9.1/chart.min.js
@ -319,17 +321,20 @@ https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/1.7.1/clipboard.min.js
https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.11/clipboard.min.js
https://cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.1.1/cookieconsent.min.css
https://cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.1.1/cookieconsent.min.js
https://cdnjs.cloudflare.com/ajax/libs/corejs-typeahead/1.3.4/typeahead.bundle.min.js
https://cdnjs.cloudflare.com/ajax/libs/corejs-typeahead/1.3.3/typeahead.bundle.min.js
https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.17/d3.min.js
https://cdnjs.cloudflare.com/ajax/libs/d3/4.13.0/d3.min.js
https://cdnjs.cloudflare.com/ajax/libs/d3/5.16.0/d3.min.js
https://cdnjs.cloudflare.com/ajax/libs/d3/6.7.0/d3.min.js
https://cdnjs.cloudflare.com/ajax/libs/d3/7.9.0/d3.min.js
https://cdnjs.cloudflare.com/ajax/libs/dayjs/1.11.11/dayjs.min.js
https://cdnjs.cloudflare.com/ajax/libs/dexie/4.0.7/dexie.min.js
https://cdnjs.cloudflare.com/ajax/libs/d3/7.8.5/d3.min.js
https://cdnjs.cloudflare.com/ajax/libs/d3-legend/2.25.6/d3-legend.min.js
https://cdnjs.cloudflare.com/ajax/libs/dayjs/1.11.10/dayjs.min.js
https://cdnjs.cloudflare.com/ajax/libs/dexie/3.2.4/dexie.min.js
https://cdnjs.cloudflare.com/ajax/libs/docsearch.js/2.6.3/docsearch.min.css
https://cdnjs.cloudflare.com/ajax/libs/docsearch.js/2.6.3/docsearch.min.js
https://cdnjs.cloudflare.com/ajax/libs/docsify/4.13.1/docsify.min.js
https://cdnjs.cloudflare.com/ajax/libs/drawer/3.2.2/css/drawer.min.css
https://cdnjs.cloudflare.com/ajax/libs/drawer/3.2.2/js/drawer.min.js
https://cdnjs.cloudflare.com/ajax/libs/dygraph/1.1.1/dygraph-combined.js
https://cdnjs.cloudflare.com/ajax/libs/dygraph/2.2.1/dygraph.min.js
https://cdnjs.cloudflare.com/ajax/libs/element-ui/2.15.14/index.min.js
@ -394,7 +399,8 @@ https://cdnjs.cloudflare.com/ajax/libs/fancybox/2.1.7/js/jquery.fancybox.min.js
https://cdnjs.cloudflare.com/ajax/libs/fancybox/3.5.7/jquery.fancybox.min.css
https://cdnjs.cloudflare.com/ajax/libs/fancybox/3.5.7/jquery.fancybox.min.js
https://cdnjs.cloudflare.com/ajax/libs/fastclick/1.0.6/fastclick.min.js
https://cdnjs.cloudflare.com/ajax/libs/feather-icons/4.29.2/feather.min.js
https://cdnjs.cloudflare.com/ajax/libs/feather-icons/4.29.1/feather.min.js
https://cdnjs.cloudflare.com/ajax/libs/FitText.js/1.2.0/jquery.fittext.min.js
https://cdnjs.cloudflare.com/ajax/libs/flickity/3.0.0/flickity.pkgd.min.js
https://cdnjs.cloudflare.com/ajax/libs/flv.js/1.6.2/flv.min.js
https://cdnjs.cloudflare.com/ajax/libs/font-awesome/3.2.1/css/font-awesome.min.css
@ -407,12 +413,12 @@ https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/js/all.min.js
https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/webfonts/fa-brands-400.woff2
https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/webfonts/fa-regular-400.woff2
https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/webfonts/fa-solid-900.woff2
https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css
https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/v4-shims.min.css
https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/js/all.min.js
https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/webfonts/fa-brands-400.woff2
https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/webfonts/fa-regular-400.woff2
https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/webfonts/fa-solid-900.woff2
https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css
https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/v4-shims.min.css
https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/js/all.min.js
https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/webfonts/fa-brands-400.woff2
https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/webfonts/fa-regular-400.woff2
https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/webfonts/fa-solid-900.woff2
https://cdnjs.cloudflare.com/ajax/libs/fork-awesome/1.2.0/css/fork-awesome.min.css
https://cdnjs.cloudflare.com/ajax/libs/fork-awesome/1.2.0/fonts/forkawesome-webfont.woff2
https://cdnjs.cloudflare.com/ajax/libs/foundation/5.5.3/css/foundation.min.css
@ -464,17 +470,306 @@ https://cdnjs.cloudflare.com/ajax/libs/gsap/2.1.3/TimelineMax.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/2.1.3/TweenLite.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/2.1.3/TweenMax.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/2.1.3/utils/Draggable.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.5/CSSRulePlugin.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.5/Draggable.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.5/EaselPlugin.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.5/EasePack.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.5/gsap.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.5/MotionPathPlugin.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.5/PixiPlugin.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.5/ScrollToPlugin.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.5/ScrollTrigger.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.5/TextPlugin.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.3/CSSRulePlugin.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.3/Draggable.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.3/EaselPlugin.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.3/EasePack.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.3/gsap.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.3/MotionPathPlugin.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.3/PixiPlugin.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.3/ScrollToPlugin.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.3/ScrollTrigger.min.js
https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.3/TextPlugin.min.js
https://cdnjs.cloudflare.com/ajax/libs/handlebars.js/4.7.8/handlebars.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/highlight.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/1c.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/abnf.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/accesslog.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/actionscript.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/ada.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/angelscript.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/apache.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/applescript.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/arcade.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/arduino.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/armasm.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/asciidoc.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/aspectj.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/autohotkey.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/autoit.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/avrasm.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/awk.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/axapta.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/bash.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/basic.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/bnf.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/brainfuck.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/cal.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/capnproto.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/ceylon.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/clean.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/c-like.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/clojure.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/clojure-repl.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/cmake.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/c.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/coffeescript.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/coq.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/cos.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/cpp.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/crmsh.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/crystal.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/csharp.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/csp.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/css.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/dart.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/delphi.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/diff.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/django.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/d.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/dns.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/dockerfile.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/dos.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/dsconfig.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/dts.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/dust.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/ebnf.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/elixir.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/elm.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/erb.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/erlang.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/erlang-repl.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/excel.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/fix.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/flix.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/fortran.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/fsharp.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/gams.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/gauss.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/gcode.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/gherkin.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/glsl.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/gml.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/golo.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/go.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/gradle.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/groovy.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/haml.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/handlebars.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/haskell.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/haxe.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/hsp.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/htmlbars.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/http.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/hy.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/inform7.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/ini.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/irpf90.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/isbl.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/java.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/javascript.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/jboss-cli.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/json.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/julia.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/julia-repl.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/kotlin.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/lasso.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/latex.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/ldif.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/leaf.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/less.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/lisp.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/livecodeserver.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/livescript.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/llvm.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/lsl.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/lua.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/makefile.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/markdown.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/mathematica.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/matlab.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/maxima.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/mel.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/mercury.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/mipsasm.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/mizar.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/mojolicious.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/monkey.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/moonscript.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/n1ql.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/nginx.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/nim.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/nix.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/node-repl.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/nsis.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/objectivec.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/ocaml.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/openscad.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/oxygene.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/parser3.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/perl.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/pf.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/pgsql.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/php.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/php-template.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/plaintext.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/pony.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/powershell.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/processing.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/profile.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/prolog.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/properties.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/protobuf.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/puppet.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/purebasic.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/python.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/python-repl.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/q.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/qml.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/reasonml.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/rib.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/r.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/roboconf.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/routeros.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/rsl.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/ruby.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/ruleslanguage.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/rust.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/sas.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/scala.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/scheme.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/scilab.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/scss.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/shell.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/smali.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/smalltalk.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/sml.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/sqf.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/sql.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/sql_more.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/stan.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/stata.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/step21.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/stylus.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/subunit.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/swift.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/taggerscript.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/tap.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/tcl.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/thrift.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/tp.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/twig.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/typescript.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/vala.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/vbnet.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/vbscript-html.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/vbscript.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/verilog.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/vhdl.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/vim.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/x86asm.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/xl.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/xml.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/xquery.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/yaml.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/languages/zephir.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/a11y-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/a11y-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/agate.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/androidstudio.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/an-old-hope.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/arduino-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/arta.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/ascetic.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-cave-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-cave-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-dune-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-dune-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-estuary-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-estuary-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-forest-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-forest-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-heath-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-heath-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-lakeside-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-lakeside-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-plateau-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-plateau-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-savanna-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-savanna-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-seaside-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-seaside-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-sulphurpool-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atelier-sulphurpool-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atom-one-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atom-one-dark-reasonable.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/atom-one-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/brown-paper.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/codepen-embed.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/color-brewer.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/darcula.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/default.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/docco.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/dracula.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/far.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/foundation.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/github-gist.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/github.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/gml.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/googlecode.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/gradient-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/gradient-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/grayscale.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/gruvbox-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/gruvbox-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/hopscotch.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/hybrid.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/idea.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/ir-black.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/isbl-editor-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/isbl-editor-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/kimbie.dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/kimbie.light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/lightfair.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/lioshi.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/magula.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/mono-blue.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/monokai.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/monokai-sublime.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/night-owl.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/nnfx-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/nnfx.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/nord.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/obsidian.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/ocean.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/paraiso-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/paraiso-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/pojoaque.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/purebasic.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/qtcreator_dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/qtcreator_light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/railscasts.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/rainbow.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/routeros.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/school-book.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/shades-of-purple.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/solarized-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/solarized-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/srcery.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/stackoverflow-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/stackoverflow-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/sunburst.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/tomorrow.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/tomorrow-night-blue.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/tomorrow-night-bright.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/tomorrow-night-eighties.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/tomorrow-night.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/vs2015.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/vs.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/xcode.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/xt256.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/zenburn.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/1c.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/abnf.min.js
@ -733,13 +1028,142 @@ https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/vs2015.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/vs.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/xcode.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/xt256.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/highlight.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/apache.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/bash.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/cal.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/cmake.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/coffeescript.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/cpp.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/cs.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/css.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/diff.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/go.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/http.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/ini.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/java.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/json.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/kotlin.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/less.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/lua.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/makefile.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/markdown.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/mojolicious.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/nginx.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/objectivec.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/perl.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/php.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/plaintext.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/properties.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/python.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/qml.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/ruby.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/rust.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/scss.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/shell.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/sql.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/swift.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/typescript.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/xml.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/yaml.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/a11y-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/a11y-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/agate.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/androidstudio.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/an-old-hope.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/arduino-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/arta.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/ascetic.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-cave-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-cave-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-dune-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-dune-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-estuary-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-estuary-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-forest-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-forest-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-heath-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-heath-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-lakeside-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-lakeside-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-plateau-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-plateau-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-savanna-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-savanna-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-seaside-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-seaside-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-sulphurpool-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atelier-sulphurpool-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atom-one-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atom-one-dark-reasonable.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/atom-one-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/brown-paper.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/codepen-embed.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/color-brewer.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/darcula.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/darkula.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/default.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/docco.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/dracula.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/far.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/foundation.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/github-gist.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/github.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/gml.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/googlecode.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/gradient-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/grayscale.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/gruvbox-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/gruvbox-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/hopscotch.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/hybrid.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/idea.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/ir-black.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/isbl-editor-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/isbl-editor-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/kimbie.dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/kimbie.light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/lightfair.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/magula.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/mono-blue.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/monokai.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/monokai-sublime.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/night-owl.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/nord.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/obsidian.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/ocean.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/paraiso-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/paraiso-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/pojoaque.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/purebasic.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/qtcreator_dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/qtcreator_light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/railscasts.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/rainbow.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/routeros.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/school-book.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/shades-of-purple.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/solarized-dark.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/solarized-light.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/sunburst.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/tomorrow.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/tomorrow-night-blue.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/tomorrow-night-bright.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/tomorrow-night-eighties.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/tomorrow-night.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/vs2015.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/vs.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/xcode.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/xt256.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/styles/zenburn.min.css
https://cdnjs.cloudflare.com/ajax/libs/history/4.10.1/history.min.js
https://cdnjs.cloudflare.com/ajax/libs/history/5.3.0/history.production.min.js
https://cdnjs.cloudflare.com/ajax/libs/hls.js/0.14.17/hls.min.js
https://cdnjs.cloudflare.com/ajax/libs/hls.js/1.5.11/hls.min.js
https://cdnjs.cloudflare.com/ajax/libs/hls.js/1.4.13/hls.min.js
https://cdnjs.cloudflare.com/ajax/libs/hogan.js/3.0.2/hogan.min.js
https://cdnjs.cloudflare.com/ajax/libs/instantsearch.js/3.7.0/instantsearch.production.min.js
https://cdnjs.cloudflare.com/ajax/libs/instantsearch.js/4.71.1/instantsearch.production.min.js
https://cdnjs.cloudflare.com/ajax/libs/instantsearch.js/4.62.0/instantsearch.production.min.js
https://cdnjs.cloudflare.com/ajax/libs/iScroll/5.2.0/iscroll.min.js
https://cdnjs.cloudflare.com/ajax/libs/izimodal/1.6.1/js/iziModal.min.js
https://cdnjs.cloudflare.com/ajax/libs/jasny-bootstrap/3.1.3/css/jasny-bootstrap.min.css
@ -819,7 +1243,7 @@ https://cdnjs.cloudflare.com/ajax/libs/jquery.tablesorter/2.31.3/js/jquery.table
https://cdnjs.cloudflare.com/ajax/libs/jquery-timeago/1.6.7/jquery.timeago.min.js
https://cdnjs.cloudflare.com/ajax/libs/jquery-tiny-pubsub/0.7.0/ba-tiny-pubsub.min.js
https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.10.0/jquery-ui.min.js
https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.13.3/jquery-ui.min.js
https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.13.2/jquery-ui.min.js
https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.8.24/jquery-ui.min.js
https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.8.24/themes/base/minified/jquery-ui.min.css
https://cdnjs.cloudflare.com/ajax/libs/jquery-ujs/1.2.3/rails.min.js
@ -828,7 +1252,6 @@ https://cdnjs.cloudflare.com/ajax/libs/jquery-validation-unobtrusive/4.0.0/jquer
https://cdnjs.cloudflare.com/ajax/libs/js-cookie/2.2.1/js.cookie.min.js
https://cdnjs.cloudflare.com/ajax/libs/js-cookie/3.0.5/js.cookie.min.js
https://cdnjs.cloudflare.com/ajax/libs/jScrollPane/2.2.2/script/jquery.jscrollpane.min.js
https://cdnjs.cloudflare.com/ajax/libs/jsrender/1.0.14/jsrender.min.js
https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js
https://cdnjs.cloudflare.com/ajax/libs/knockout/3.5.1/knockout-latest.min.js
https://cdnjs.cloudflare.com/ajax/libs/knockout.mapping/2.4.1/knockout.mapping.min.js
@ -842,7 +1265,7 @@ https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.9.4/leaflet.css
https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.9.4/leaflet.js
https://cdnjs.cloudflare.com/ajax/libs/Leaflet.EasyButton/2.4.0/easy-button.min.js
https://cdnjs.cloudflare.com/ajax/libs/leaflet.markercluster/1.5.3/leaflet.markercluster.js
https://cdnjs.cloudflare.com/ajax/libs/libphonenumber-js/1.11.3/libphonenumber-js.min.js
https://cdnjs.cloudflare.com/ajax/libs/libphonenumber-js/1.10.51/libphonenumber-js.min.js
https://cdnjs.cloudflare.com/ajax/libs/libsodium-wrappers/0.5.4/sodium.min.js
https://cdnjs.cloudflare.com/ajax/libs/lightbox2/2.11.4/js/lightbox.min.js
https://cdnjs.cloudflare.com/ajax/libs/lightcase/2.5.0/css/lightcase.min.css
@ -858,8 +1281,8 @@ https://cdnjs.cloudflare.com/ajax/libs/lodash.js/3.10.1/lodash.min.js
https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min.js
https://cdnjs.cloudflare.com/ajax/libs/lozad.js/1.16.0/lozad.min.js
https://cdnjs.cloudflare.com/ajax/libs/lunr.js/2.3.9/lunr.min.js
https://cdnjs.cloudflare.com/ajax/libs/magnific-popup.js/1.2.0/jquery.magnific-popup.min.js
https://cdnjs.cloudflare.com/ajax/libs/magnific-popup.js/1.2.0/magnific-popup.min.css
https://cdnjs.cloudflare.com/ajax/libs/magnific-popup.js/1.1.0/jquery.magnific-popup.min.js
https://cdnjs.cloudflare.com/ajax/libs/magnific-popup.js/1.1.0/magnific-popup.min.css
https://cdnjs.cloudflare.com/ajax/libs/markdown-it/13.0.2/markdown-it.min.js
https://cdnjs.cloudflare.com/ajax/libs/materialize/0.100.2/css/materialize.min.css
https://cdnjs.cloudflare.com/ajax/libs/materialize/0.100.2/js/materialize.min.js
@ -949,17 +1372,17 @@ https://cdnjs.cloudflare.com/ajax/libs/mdb-ui-kit/5.0.0/mdb.min.css
https://cdnjs.cloudflare.com/ajax/libs/mdb-ui-kit/5.0.0/mdb.min.js
https://cdnjs.cloudflare.com/ajax/libs/mdb-ui-kit/6.4.2/mdb.min.css
https://cdnjs.cloudflare.com/ajax/libs/mdb-ui-kit/6.4.2/mdb.min.js
https://cdnjs.cloudflare.com/ajax/libs/mdb-ui-kit/7.3.1/mdb.es.min.js
https://cdnjs.cloudflare.com/ajax/libs/mdb-ui-kit/7.3.1/mdb.min.css
https://cdnjs.cloudflare.com/ajax/libs/mdb-ui-kit/7.1.0/mdb.es.min.js
https://cdnjs.cloudflare.com/ajax/libs/mdb-ui-kit/7.1.0/mdb.min.css
https://cdnjs.cloudflare.com/ajax/libs/Modaal/0.4.4/css/modaal.min.css
https://cdnjs.cloudflare.com/ajax/libs/Modaal/0.4.4/js/modaal.min.js
https://cdnjs.cloudflare.com/ajax/libs/modernizr/2.8.3/modernizr.min.js
https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.30.1/moment-with-locales.min.js
https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.4/moment-with-locales.min.js
https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.5.1/moment-with-langs.min.js
https://cdnjs.cloudflare.com/ajax/libs/mootools/1.4.5/mootools-core-full-compat-yc.min.js
https://cdnjs.cloudflare.com/ajax/libs/mootools/1.6.0/mootools-core.min.js
https://cdnjs.cloudflare.com/ajax/libs/noUiSlider/14.7.0/nouislider.min.js
https://cdnjs.cloudflare.com/ajax/libs/noUiSlider/15.8.0/nouislider.min.js
https://cdnjs.cloudflare.com/ajax/libs/noUiSlider/15.7.1/nouislider.min.js
https://cdnjs.cloudflare.com/ajax/libs/nprogress/0.2.0/nprogress.min.css
https://cdnjs.cloudflare.com/ajax/libs/nprogress/0.2.0/nprogress.min.js
https://cdnjs.cloudflare.com/ajax/libs/nvd3/1.8.6/nv.d3.min.css
@ -975,8 +1398,8 @@ https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.3.4/assets/owl.theme.green
https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.3.4/owl.carousel.min.js
https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.3.4/owl.carousel.min.js
https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.10.2/p5.min.js
https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.9.4/addons/p5.sound.min.js
https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.9.4/p5.min.js
https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.9.0/addons/p5.sound.min.js
https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.9.0/p5.min.js
https://cdnjs.cloudflare.com/ajax/libs/page.js/1.11.6/page.js
https://cdnjs.cloudflare.com/ajax/libs/paginationjs/2.6.0/pagination.css
https://cdnjs.cloudflare.com/ajax/libs/paginationjs/2.6.0/pagination.min.js
@ -1065,16 +1488,16 @@ https://cdnjs.cloudflare.com/ajax/libs/rangeslider.js/2.3.3/rangeslider.min.css
https://cdnjs.cloudflare.com/ajax/libs/rangeslider.js/2.3.3/rangeslider.min.js
https://cdnjs.cloudflare.com/ajax/libs/react/16.14.0/umd/react.production.min.js
https://cdnjs.cloudflare.com/ajax/libs/react/17.0.2/umd/react.production.min.js
https://cdnjs.cloudflare.com/ajax/libs/react/18.3.1/umd/react.production.min.js
https://cdnjs.cloudflare.com/ajax/libs/react/18.2.0/umd/react.production.min.js
https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.14.0/umd/react-dom.production.min.js
https://cdnjs.cloudflare.com/ajax/libs/react-dom/17.0.2/umd/react-dom.production.min.js
https://cdnjs.cloudflare.com/ajax/libs/react-dom/18.3.1/umd/react-dom.production.min.js
https://cdnjs.cloudflare.com/ajax/libs/react-dom/18.2.0/umd/react-dom.production.min.js
https://cdnjs.cloudflare.com/ajax/libs/react-redux/7.2.8/react-redux.min.js
https://cdnjs.cloudflare.com/ajax/libs/react-redux/8.1.3/react-redux.min.js
https://cdnjs.cloudflare.com/ajax/libs/react-router/5.3.3/react-router.min.js
https://cdnjs.cloudflare.com/ajax/libs/react-router/6.23.1/react-router.production.min.js
https://cdnjs.cloudflare.com/ajax/libs/react-router/6.20.1/react-router.production.min.js
https://cdnjs.cloudflare.com/ajax/libs/redux/4.2.1/redux.min.js
https://cdnjs.cloudflare.com/ajax/libs/redux/5.0.1/redux.legacy-esm.min.js
https://cdnjs.cloudflare.com/ajax/libs/redux/5.0.0/redux.legacy-esm.min.js
https://cdnjs.cloudflare.com/ajax/libs/rickshaw/1.7.1/rickshaw.min.css
https://cdnjs.cloudflare.com/ajax/libs/rickshaw/1.7.1/rickshaw.min.js
https://cdnjs.cloudflare.com/ajax/libs/scriptaculous/1.9.0/scriptaculous.js
@ -1274,8 +1697,8 @@ https://cdnjs.cloudflare.com/ajax/libs/showdown/1.9.1/showdown.min.js
https://cdnjs.cloudflare.com/ajax/libs/showdown/2.1.0/showdown.min.js
https://cdnjs.cloudflare.com/ajax/libs/simplebar/5.3.9/simplebar.min.css
https://cdnjs.cloudflare.com/ajax/libs/simplebar/5.3.9/simplebar.min.js
https://cdnjs.cloudflare.com/ajax/libs/simplebar/6.2.7/simplebar.min.css
https://cdnjs.cloudflare.com/ajax/libs/simplebar/6.2.7/simplebar.min.js
https://cdnjs.cloudflare.com/ajax/libs/simplebar/6.2.5/simplebar.min.css
https://cdnjs.cloudflare.com/ajax/libs/simplebar/6.2.5/simplebar.min.js
https://cdnjs.cloudflare.com/ajax/libs/simplemde/1.11.2/simplemde.min.css
https://cdnjs.cloudflare.com/ajax/libs/simplemde/1.11.2/simplemde.min.js
https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.8.1/slick.min.css
@ -1290,7 +1713,7 @@ https://cdnjs.cloudflare.com/ajax/libs/slider-pro/1.6.2/js/jquery.sliderPro.min.
https://cdnjs.cloudflare.com/ajax/libs/snowplow/2.18.2/sp.min.js
https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.4.0/socket.io.min.js
https://cdnjs.cloudflare.com/ajax/libs/socket.io/3.1.3/socket.io.min.js
https://cdnjs.cloudflare.com/ajax/libs/socket.io/4.7.5/socket.io.min.js
https://cdnjs.cloudflare.com/ajax/libs/socket.io/4.7.2/socket.io.min.js
https://cdnjs.cloudflare.com/ajax/libs/spin.js/2.3.2/spin.min.js
https://cdnjs.cloudflare.com/ajax/libs/spin.js/3.1.0/spin.min.js
https://cdnjs.cloudflare.com/ajax/libs/spin.js/4.1.1/spin.min.js
@ -1300,15 +1723,16 @@ https://cdnjs.cloudflare.com/ajax/libs/sticky-js/1.3.0/sticky.min.js
https://cdnjs.cloudflare.com/ajax/libs/store.js/2.0.12/store.legacy.min.js
https://cdnjs.cloudflare.com/ajax/libs/swagger-ui/4.18.3/swagger-ui-bundle.min.js
https://cdnjs.cloudflare.com/ajax/libs/swagger-ui/4.18.3/swagger-ui.min.css
https://cdnjs.cloudflare.com/ajax/libs/swagger-ui/5.17.14/swagger-ui-bundle.min.js
https://cdnjs.cloudflare.com/ajax/libs/swagger-ui/5.17.14/swagger-ui.min.css
https://cdnjs.cloudflare.com/ajax/libs/swagger-ui/5.10.3/swagger-ui-bundle.min.js
https://cdnjs.cloudflare.com/ajax/libs/swagger-ui/5.10.3/swagger-ui.min.css
https://cdnjs.cloudflare.com/ajax/libs/swfobject/2.2/swfobject.js
https://cdnjs.cloudflare.com/ajax/libs/Swiper/3.4.2/css/swiper.min.css
https://cdnjs.cloudflare.com/ajax/libs/Swiper/3.4.2/js/swiper.min.js
https://cdnjs.cloudflare.com/ajax/libs/Swiper/4.5.1/css/swiper.min.css
https://cdnjs.cloudflare.com/ajax/libs/Swiper/4.5.1/js/swiper.min.js
https://cdnjs.cloudflare.com/ajax/libs/Swiper/5.4.5/css/swiper.min.css
https://cdnjs.cloudflare.com/ajax/libs/Swiper/5.4.5/js/swiper.min.js
https://cdnjs.cloudflare.com/ajax/libs/tensorflow/4.20.0/tf.min.js
https://cdnjs.cloudflare.com/ajax/libs/tensorflow/4.14.0/tf.min.js
https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.7/js/tether.min.js
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/icons/default/icons.min.js
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/jquery.tinymce.min.js
@ -1331,32 +1755,32 @@ https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/skins/ui/oxide/skin.shadow
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/themes/mobile/theme.min.js
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/themes/silver/theme.min.js
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/tinymce.min.js
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/icons/default/icons.min.js
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/models/dom/model.min.js
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/content/dark/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/content/default/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/content/document/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/content/tinymce-5/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/content/tinymce-5-dark/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/content/writer/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/ui/oxide/content.inline.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/ui/oxide/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/ui/oxide-dark/content.inline.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/ui/oxide-dark/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/ui/oxide-dark/skin.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/ui/oxide-dark/skin.shadowdom.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/ui/oxide/skin.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/ui/oxide/skin.shadowdom.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/ui/tinymce-5/content.inline.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/ui/tinymce-5/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/ui/tinymce-5-dark/content.inline.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/ui/tinymce-5-dark/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/ui/tinymce-5-dark/skin.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/ui/tinymce-5-dark/skin.shadowdom.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/ui/tinymce-5/skin.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/skins/ui/tinymce-5/skin.shadowdom.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/themes/silver/theme.min.js
https://cdnjs.cloudflare.com/ajax/libs/tinymce/7.1.2/tinymce.min.js
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/icons/default/icons.min.js
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/models/dom/model.min.js
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/content/dark/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/content/default/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/content/document/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/content/tinymce-5/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/content/tinymce-5-dark/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/content/writer/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/ui/oxide/content.inline.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/ui/oxide/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/ui/oxide-dark/content.inline.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/ui/oxide-dark/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/ui/oxide-dark/skin.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/ui/oxide-dark/skin.shadowdom.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/ui/oxide/skin.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/ui/oxide/skin.shadowdom.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/ui/tinymce-5/content.inline.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/ui/tinymce-5/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/ui/tinymce-5-dark/content.inline.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/ui/tinymce-5-dark/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/ui/tinymce-5-dark/skin.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/ui/tinymce-5-dark/skin.shadowdom.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/ui/tinymce-5/skin.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/skins/ui/tinymce-5/skin.shadowdom.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/themes/silver/theme.min.js
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.8.2/tinymce.min.js
https://cdnjs.cloudflare.com/ajax/libs/toastr.js/2.1.4/toastr.min.css
https://cdnjs.cloudflare.com/ajax/libs/toastr.js/2.1.4/toastr.min.js
https://cdnjs.cloudflare.com/ajax/libs/tooltipster/3.3.0/js/jquery.tooltipster.min.js
@ -1374,10 +1798,8 @@ https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.4.1/css/bootstrap.min
https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.4.1/js/bootstrap.bundle.min.js
https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.1/css/bootstrap.min.css
https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.1/js/bootstrap.bundle.min.js
https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.1.3/css/bootstrap.min.css
https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.1.3/js/bootstrap.bundle.min.js
https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.3.3/css/bootstrap.min.css
https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.3.3/js/bootstrap.bundle.min.js
https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.3.2/css/bootstrap.min.css
https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.3.2/js/bootstrap.bundle.min.js
https://cdnjs.cloudflare.com/ajax/libs/twix.js/0.3.0/twix.min.js
https://cdnjs.cloudflare.com/ajax/libs/twix.js/1.3.0/twix.min.js
https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.13.6/underscore-min.js
@ -1409,13 +1831,13 @@ https://cdnjs.cloudflare.com/ajax/libs/video.js/6.13.0/video-js.min.css
https://cdnjs.cloudflare.com/ajax/libs/video.js/6.13.0/video.min.js
https://cdnjs.cloudflare.com/ajax/libs/video.js/7.21.1/video-js.min.css
https://cdnjs.cloudflare.com/ajax/libs/video.js/7.21.1/video.min.js
https://cdnjs.cloudflare.com/ajax/libs/video.js/8.16.0/video-js.min.css
https://cdnjs.cloudflare.com/ajax/libs/video.js/8.16.0/video.min.js
https://cdnjs.cloudflare.com/ajax/libs/vue/3.4.29/vue.global.prod.js
https://cdnjs.cloudflare.com/ajax/libs/video.js/8.7.0/video-js.min.css
https://cdnjs.cloudflare.com/ajax/libs/video.js/8.7.0/video.min.js
https://cdnjs.cloudflare.com/ajax/libs/vue/3.3.11/vue.global.prod.js
https://cdnjs.cloudflare.com/ajax/libs/vue-i18n/8.27.2/vue-i18n.min.js
https://cdnjs.cloudflare.com/ajax/libs/vue-i18n/9.13.1/vue-i18n.cjs.min.js
https://cdnjs.cloudflare.com/ajax/libs/vue-i18n/9.8.0/vue-i18n.cjs.min.js
https://cdnjs.cloudflare.com/ajax/libs/vue-router/3.6.5/vue-router.min.js
https://cdnjs.cloudflare.com/ajax/libs/vue-router/4.3.3/vue-router.global.min.js
https://cdnjs.cloudflare.com/ajax/libs/vue-router/4.2.5/vue-router.global.min.js
https://cdnjs.cloudflare.com/ajax/libs/vuex/3.6.2/vuex.min.js
https://cdnjs.cloudflare.com/ajax/libs/vuex/4.1.0/vuex.cjs.min.js
https://cdnjs.cloudflare.com/ajax/libs/waypoints/4.0.1/jquery.waypoints.min.js
@ -1429,7 +1851,7 @@ https://cdnjs.cloudflare.com/ajax/libs/webcomponentsjs/2.8.0/webcomponents-loade
https://cdnjs.cloudflare.com/ajax/libs/webfont/1.6.28/webfontloader.js
https://cdnjs.cloudflare.com/ajax/libs/webrtc-adapter/6.4.8/adapter.min.js
https://cdnjs.cloudflare.com/ajax/libs/webrtc-adapter/7.7.1/adapter.min.js
https://cdnjs.cloudflare.com/ajax/libs/webrtc-adapter/9.0.1/adapter.min.js
https://cdnjs.cloudflare.com/ajax/libs/webrtc-adapter/8.2.3/adapter.min.js
https://cdnjs.cloudflare.com/ajax/libs/wow/1.1.2/wow.min.js
https://cdnjs.cloudflare.com/ajax/libs/zumper-angular-payments/1.0.7/angular-payments.js
https://cdn.jsdelivr.net/combine/npm/jquery@2.2.4/dist/jquery.min.js,npm/hogan.js@3.0.2/dist/hogan-3.0.2.min.js,npm/algoliasearch@3.30.0/dist/algoliasearch.min.js,npm/autocomplete.js@0.31.0/dist/autocomplete.min.js
@ -1438,13 +1860,14 @@ https://cdn.jsdelivr.net/npm/@algolia/autocomplete-js@1.5.4/dist/umd/index.produ
https://cdn.jsdelivr.net/npm/anchor-js@3.2.2/anchor.min.js
https://cdn.jsdelivr.net/npm/anchor-js@4.3.1/anchor.min.js
https://cdn.jsdelivr.net/npm/anchor-js@5.0.0/anchor.min.js
https://cdn.jsdelivr.net/npm/angular-stripe-checkout@5.1.0/angular-stripe-checkout.min.js
https://cdn.jsdelivr.net/npm/appboy-web-sdk@3.5.1/appboy.min.js
https://cdn.jsdelivr.net/npm/docsify-themeable@0.9.0/dist/css/theme-defaults.css
https://cdn.jsdelivr.net/npm/docsify-themeable@0.9.0/dist/css/theme-simple.css
https://cdn.jsdelivr.net/npm/docsify-themeable@0.9.0/dist/css/theme-simple-dark.css
https://cdn.jsdelivr.net/npm/ethjs@0.4.0/dist/ethjs.min.js
https://cdn.jsdelivr.net/npm/instantsearch.css@7.4.5/themes/algolia-min.css
https://cdn.jsdelivr.net/npm/instantsearch.css@8.2.1/themes/algolia-min.css
https://cdn.jsdelivr.net/npm/instantsearch.css@8.1.0/themes/algolia-min.css
https://cdn.jsdelivr.net/npm/in-view@0.6.1/dist/in-view.min.js
https://cdn.jsdelivr.net/npm/leaflet.featuregroup.subgroup@1.0.2/dist/leaflet.featuregroup.subgroup.js
https://cdn.jsdelivr.net/npm/ngx-bootstrap@12.0.0/datepicker/bs-datepicker.css
@ -1455,10 +1878,10 @@ https://cdn.jsdelivr.net/npm/p2p-media-loader-hlsjs@0.6.2/build/p2p-media-loader
https://cdn.jsdelivr.net/npm/plyr@3.7.8/dist/plyr.css
https://cdn.jsdelivr.net/npm/plyr@3.7.8/dist/plyr.min.js
https://cdn.jsdelivr.net/npm/raven-js@3.27.2/dist/raven.min.js
https://cdn.jsdelivr.net/npm/react-intl@6.6.8/react-intl.iife.min.js
https://cdn.jsdelivr.net/npm/react-intl@6.5.5/react-intl.iife.min.js
https://cdn.jsdelivr.net/npm/react-lifecycles-compat@3.0.4/react-lifecycles-compat.min.js
https://cdn.jsdelivr.net/npm/search-insights@1.10.0/dist/search-insights.min.js
https://cdn.jsdelivr.net/npm/search-insights@2.14.0/dist/search-insights.min.js
https://cdn.jsdelivr.net/npm/search-insights@2.13.0/dist/search-insights.min.js
https://cdn.jsdelivr.net/npm/swiper@11.0.5/swiper-bundle.min.css
https://cdn.jsdelivr.net/npm/swiper@11.0.5/swiper-bundle.min.js
https://cdn.jsdelivr.net/npm/swiper@6.8.4/swiper-bundle.min.css
@ -1470,7 +1893,7 @@ https://cdn.jsdelivr.net/npm/swiper@8.4.7/swiper-bundle.min.js
https://cdn.jsdelivr.net/npm/swiper@9.4.1/swiper-bundle.min.css
https://cdn.jsdelivr.net/npm/swiper@9.4.1/swiper-bundle.min.js
https://cdn.jsdelivr.net/npm/urlize.js/urlize.js
https://cdn.jsdelivr.net/npm/vanilla-lazyload@19.1.3/dist/lazyload.min.js
https://cdn.jsdelivr.net/npm/vanilla-lazyload@17.8.5/dist/lazyload.min.js
https://cdn.jsdelivr.net/npm/videojs-seek-buttons@1.6.0/dist/videojs-seek-buttons.css
https://cdn.jsdelivr.net/npm/videojs-seek-buttons@1.6.0/dist/videojs-seek-buttons.min.js
https://cdn.jsdelivr.net/npm/videojs-seek-buttons@2.2.1/dist/videojs-seek-buttons.css
@ -1487,7 +1910,7 @@ https://fonts.gstatic.com/s/materialiconsoutlined/v109/gok-H7zzDkdnRel8-DQ6KAXJ6
https://fonts.gstatic.com/s/materialiconsround/v108/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flwmP.woff2
https://fonts.gstatic.com/s/materialiconssharp/v109/oPWQ_lt5nv4pWNJpghLP75WiFR4kLh3kvmvR.woff2
https://fonts.gstatic.com/s/materialiconstwotone/v112/hESh6WRmNCxEqUmNyh3JDeGxjVVyMg4tHGctNCu0.woff2
https://fonts.gstatic.com/s/materialicons/v142/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2
https://fonts.gstatic.com/s/materialicons/v140/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2
https://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.no-icons.min.css
https://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js
https://raw.githubusercontent.com/jquery-validation/jquery-validation/1.20.0/dist/jquery.validate.min.js
@ -1501,5 +1924,4 @@ https://raw.githubusercontent.com/Templarian/MaterialDesign-Webfont/v4.9.95/font
https://raw.githubusercontent.com/Templarian/MaterialDesign-Webfont/v5.8.55/css/materialdesignicons.min.css
https://raw.githubusercontent.com/Templarian/MaterialDesign-Webfont/v5.8.55/fonts/materialdesignicons-webfont.woff2
https://unpkg.com/react-side-effect@2.1.2/lib/index.umd.min.js
https://unpkg.com/@supabase/supabase-js@2.39.3/dist/umd/supabase.js
https://use.fontawesome.com/a1f20be65b.js

View File

@ -159,10 +159,6 @@
"message": "العام الماضي",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "حذف",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Миналата година",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "Всички",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Премахване",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "L'any passat",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Suprimeix",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Minulý rok",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Smazat",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Sidste år",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Slette",
"description": "Button to delete all statistics data."
@ -192,7 +188,7 @@
"description": "Advanced"
},
"btnOther": {
"message": "Andet",
"message": "Anden",
"description": "Other"
},
"btnInfo": {

View File

@ -159,10 +159,6 @@
"message": "Letztes Jahr",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "Alles",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Löschen",
"description": "Button to delete all statistics data."
@ -484,7 +480,7 @@
"description": "HTML filter badge"
},
"titleBadgeMissingResource": {
"message": "Symbol für fehlende oder blockierte Ressourcen",
"message": "Symbol für fehlende oder blockierte Resourcen",
"description": "Missing or blocked resources badge"
},
"counterBlocked": {

View File

@ -159,10 +159,6 @@
"message": "Τον προηγούμενο χρόνο",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Διαγραφή",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Last year",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "All",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Delete",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Last year",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "All",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Delete",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Last year",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "All",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Delete",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Lasta jaro",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Forviŝi",
"description": "Button to delete all statistics data."
@ -296,7 +292,7 @@
"description": "What about the statistics? Is anything transferred to any servers?"
},
"helpWhatWillBeSynchronizedTitle": {
"message": "Kio estos sinkronigita kiam mi elektas \"sinkronigi\" kiel stokotipo?",
"message": "",
"description": "What will be synchronized when I select »sync« as storage type?"
},
"helpBrowserCompatibilityTitle": {

View File

@ -1,6 +1,6 @@
{
"extensionDescription": {
"message": "Protege contra el rastreo a través de CDN (Redes de entrega de contenido) mediante la redirección a recursos locales.",
"message": "Le protege contra el rastreo de CDN (Redes de entrega de contenido) mediante la redirección a recursos locales.",
"description": "Protects you against tracking through CDNs (Content Delivery Networks) by redirecting to local resources."
},
"amountInjectedDescription": {
@ -159,10 +159,6 @@
"message": "Último año",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "Todo",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Eliminar",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Viimane aasta",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Kustuta",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Iaz",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Ezabatu",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Viime vuosi",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Poista",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Lannée dernière",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Supprimer",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "שנה שעברה",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "מחיקה",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Prošle godine",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Izbriši",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Múlt év",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Törlés",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Tahun lalu",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "Semua",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Hapus",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Ultimo anno",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Elimina",
"description": "Button to delete all statistics data."
@ -496,7 +492,7 @@
"description": "Missing"
},
"permissionRevokedHeader": {
"message": "Autorizzazione revocata",
"message": "",
"description": "Permission revoked"
},
"permissionRevokedPermissionName": {
@ -504,27 +500,27 @@
"description": "The exact name of the permission. Exactly as it is displayed in Firefox."
},
"permissionRevokedDescription": {
"message": "Non disabilitare l'autorizzazione. LocalCDN ha bisogno dell'autorizzazione per rilevare e reindirizzare le richieste a CDNs.",
"message": "",
"description": "Please do not disable the permission. LocalCDN needs the permission to detect and redirect requests to CDNs."
},
"helpWhyThisPermission": {
"message": "Perche questa estensione necessita di questa autorizzazione?",
"message": "",
"description": "Why does this extension need this permission?"
},
"helpPermissionDescription": {
"message": "LocalCDN ha bisogno di sapere quali richieste sono create da un sito web per reindirizzarle o bloccarle. Con l'introduzione di MV3, questa autorizzazione è elencata come facoltativa.",
"message": "",
"description": "LocalCDN needs to know which requests are created by a website to redirect or block it. With the introduction of MV3, this permission is listed as an optional permission."
},
"permissionMissing": {
"message": "Autorizzazione mancante",
"message": "",
"description": "Missing permission"
},
"permissionAllow": {
"message": "Consenti",
"message": "",
"description": "Allow"
},
"permissionMoreInfo": {
"message": "Più informazioni",
"message": "",
"description": "More info"
}
}

View File

@ -159,10 +159,6 @@
"message": "昨年",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "すべて",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "削除",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "ಕಳೆದ ವರ್ಷ",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "ಅಳಿಸಿ",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "작년",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "삭제",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Praeitus Metus",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Ištrinti",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "കഴിഞ്ഞ വർഷം",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "ഇല്ലാതാക്കുക",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Siste år",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Slett",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Afgelopen jaar",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "Alle",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Verwijderen",
"description": "Button to delete all statistics data."
@ -496,19 +492,19 @@
"description": "Missing"
},
"permissionRevokedHeader": {
"message": "Toestemming ingetrokken",
"message": "",
"description": "Permission revoked"
},
"permissionRevokedPermissionName": {
"message": "Uw data voor alle websites inzien",
"message": "",
"description": "The exact name of the permission. Exactly as it is displayed in Firefox."
},
"permissionRevokedDescription": {
"message": "Weiger deze toestemming alstublieft niet. LocalCDN heeft deze toestemming nodig om CDN's te detecteren en om te leiden.",
"message": "",
"description": "Please do not disable the permission. LocalCDN needs the permission to detect and redirect requests to CDNs."
},
"helpWhyThisPermission": {
"message": "Waarom heeft deze extensie deze toestemming nodig?",
"message": "",
"description": "Why does this extension need this permission?"
},
"helpPermissionDescription": {
@ -516,15 +512,15 @@
"description": "LocalCDN needs to know which requests are created by a website to redirect or block it. With the introduction of MV3, this permission is listed as an optional permission."
},
"permissionMissing": {
"message": "Geen toestemming verleend",
"message": "",
"description": "Missing permission"
},
"permissionAllow": {
"message": "Toestaan",
"message": "",
"description": "Allow"
},
"permissionMoreInfo": {
"message": "Meer informatie",
"message": "",
"description": "More info"
}
}

View File

@ -159,10 +159,6 @@
"message": "Ostatni rok",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Usuń",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Ano passado",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Apagar",
"description": "Button to delete all statistics data."
@ -484,47 +480,47 @@
"description": "HTML filter badge"
},
"titleBadgeMissingResource": {
"message": "Ícone de recurso ausente ou bloqueado",
"message": "Emblema de recurso ausente",
"description": "Missing or blocked resources badge"
},
"counterBlocked": {
"message": "Bloqueado",
"message": "",
"description": "Blocked"
},
"counterMissing": {
"message": "Ausente",
"message": "",
"description": "Missing"
},
"permissionRevokedHeader": {
"message": "Permissão revogada",
"message": "",
"description": "Permission revoked"
},
"permissionRevokedPermissionName": {
"message": "Acede os seus dados em todos os sites",
"message": "",
"description": "The exact name of the permission. Exactly as it is displayed in Firefox."
},
"permissionRevokedDescription": {
"message": "Por favor, não desative a permissão. O LocalCDN precisa dessa permissão para detetar e redirecionar os pedidos para os CDNs.",
"message": "",
"description": "Please do not disable the permission. LocalCDN needs the permission to detect and redirect requests to CDNs."
},
"helpWhyThisPermission": {
"message": "Por que esta extensão precisa dessa permissão?",
"message": "",
"description": "Why does this extension need this permission?"
},
"helpPermissionDescription": {
"message": "O LocalCDN precisa saber quais pedidos são criados por um site para bloqueá-lo ou redirecioná-lo. Com a introdução do MV3, essa permissão é mostrada como opcional.",
"message": "",
"description": "LocalCDN needs to know which requests are created by a website to redirect or block it. With the introduction of MV3, this permission is listed as an optional permission."
},
"permissionMissing": {
"message": "Permissão ausente",
"message": "",
"description": "Missing permission"
},
"permissionAllow": {
"message": "Permitir",
"message": "",
"description": "Allow"
},
"permissionMoreInfo": {
"message": "Mais informações",
"message": "",
"description": "More info"
}
}

View File

@ -159,10 +159,6 @@
"message": "Ano passado",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Excluir",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Último ano",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Eliminar",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Anul trecut",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Ștergeți",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "За год",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Очистить",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Posledný rok",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Vymazať",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Förra året",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Radera",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Geçen yıl",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "Tümü",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Sil",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "Останнього року",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Видалити",
"description": "Button to delete all statistics data."
@ -484,47 +480,47 @@
"description": "HTML filter badge"
},
"titleBadgeMissingResource": {
"message": "Значок відсутнього або заблокованого ресурсу",
"message": "Значок відсутніх ресурсів",
"description": "Missing or blocked resources badge"
},
"counterBlocked": {
"message": "Заблоковано",
"message": "",
"description": "Blocked"
},
"counterMissing": {
"message": "Відсутній",
"message": "",
"description": "Missing"
},
"permissionRevokedHeader": {
"message": "Дозвіл відкликано",
"message": "",
"description": "Permission revoked"
},
"permissionRevokedPermissionName": {
"message": "Доступ до ваших даних для всіх вебсайтів",
"message": "",
"description": "The exact name of the permission. Exactly as it is displayed in Firefox."
},
"permissionRevokedDescription": {
"message": "Будь ласка, не вимикайте цей дозвіл. LocalCDN потрібен цей дозвіл, щоб виявляти і перенаправляти запити на CDN.",
"message": "",
"description": "Please do not disable the permission. LocalCDN needs the permission to detect and redirect requests to CDNs."
},
"helpWhyThisPermission": {
"message": "Навіщо цьому розширенню потрібен цей дозвіл?",
"message": "",
"description": "Why does this extension need this permission?"
},
"helpPermissionDescription": {
"message": "LocalCDN має знати, які запити створює вебсайт, щоб перенаправляти або блокувати їх. З впровадженням MV3 цей дозвіл вказано як необов'язковий.",
"message": "",
"description": "LocalCDN needs to know which requests are created by a website to redirect or block it. With the introduction of MV3, this permission is listed as an optional permission."
},
"permissionMissing": {
"message": "Відсутній дозвіл",
"message": "",
"description": "Missing permission"
},
"permissionAllow": {
"message": "Дозволити",
"message": "",
"description": "Allow"
},
"permissionMoreInfo": {
"message": "Докладніше",
"message": "",
"description": "More info"
}
}

View File

@ -159,10 +159,6 @@
"message": "Năm ngoái",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Xoá",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "去年",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "全部",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "删除",
"description": "Button to delete all statistics data."

View File

@ -159,10 +159,6 @@
"message": "去年",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "全部",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "刪除",
"description": "Button to delete all statistics data."
@ -380,7 +376,7 @@
"description": "Medium"
},
"helpRuleGeneratorUblockTableHard": {
"message": "困難",
"message": "進階",
"description": "Hard"
},
"helpWebsiteIssuesDescription": {
@ -412,39 +408,39 @@
"description": "What will be synchronized when I select »sync« as storage type?"
},
"helpSyncDescription": {
"message": "只有當您在裝置上使用 Firefox 帳戶登入並在設定中允許擴充套件同步設定同步才會起作用,您控制下的單獨同步伺服器也可以工作,這將在所有裝置上同步 LocalCDN 的大部分設定。",
"message": "",
"description": "Sync will only work if you are logged in with a Firefox account on the device and have allowed add-ons to sync in the settings. A separate sync server under your control will also work. This will synchronize most of the settings of LocalCDN across all devices."
},
"helpSyncAccount": {
"message": "如果您沒有同步帳戶,則不會同步任何內容。在這種情況下,您選擇什麼儲存的類型都沒有區別。",
"message": "",
"description": "If you dont have a sync account, nothing will be synchronized. In that case it makes no difference what type of storage you have selected."
},
"helpSyncContentNever": {
"message": "永遠不同步的東西:",
"message": "",
"description": "Things that are never synchronized:"
},
"helpNumberOfInjections": {
"message": "取代次數",
"message": "",
"description": "Numbers of injections"
},
"helpYes": {
"message": "",
"message": "",
"description": "Yes"
},
"helpNo": {
"message": "",
"message": "",
"description": "No"
},
"helpData": {
"message": "資料",
"message": "",
"description": "Data"
},
"helpSyncContentEver": {
"message": "會被同步的設定:",
"message": "",
"description": "Settings that will be synchronized:"
},
"helpIcons": {
"message": "預設、淺色、藍色/灰色",
"message": "",
"description": "Default, Light, Blue/Grey"
},
"helpSyncContentLinks": {
@ -452,7 +448,7 @@
"description": "More information about Firefox Sync:"
},
"helpBrowserCompatibility": {
"message": "瀏覽器相容性",
"message": "",
"description": "Browser compatibility"
},
"helpReplace": {
@ -464,67 +460,67 @@
"description": "Replace other resources"
},
"helpUpgradeAllResources": {
"message": "升級所有資源",
"message": "",
"description": "Upgrade all resources"
},
"helpExplanationChrome": {
"message": "所有基於 Chromium 的瀏覽器",
"message": "",
"description": "All Chromium based Browser"
},
"helpLimitation": {
"message": "這不是 LocalCDN 的限制,而是缺少基於 Chromium 的瀏覽器的 API 支援。",
"message": "",
"description": "This is not a limitation of LocalCDN, but missing API support of Chromium based browsers."
},
"titleBadgeDefault": {
"message": "預設標籤",
"message": "",
"description": "Default badge"
},
"titleBadgeHTMLFilter": {
"message": "HTML 過濾器標籤",
"message": "",
"description": "HTML filter badge"
},
"titleBadgeMissingResource": {
"message": "資源標籤遺失或被阻止",
"message": "",
"description": "Missing or blocked resources badge"
},
"counterBlocked": {
"message": "阻止的",
"message": "",
"description": "Blocked"
},
"counterMissing": {
"message": "遺失的",
"message": "",
"description": "Missing"
},
"permissionRevokedHeader": {
"message": "權限被撤銷",
"message": "",
"description": "Permission revoked"
},
"permissionRevokedPermissionName": {
"message": "存取您在所有網站上的數據",
"message": "",
"description": "The exact name of the permission. Exactly as it is displayed in Firefox."
},
"permissionRevokedDescription": {
"message": "請勿停用該權限。 LocalCDN 需要該權限偵測請求並將請求重新導向到 CDN 。",
"message": "",
"description": "Please do not disable the permission. LocalCDN needs the permission to detect and redirect requests to CDNs."
},
"helpWhyThisPermission": {
"message": "為什麼這個擴充需要這個權限?",
"message": "",
"description": "Why does this extension need this permission?"
},
"helpPermissionDescription": {
"message": "LocalCDN 需要知道網站創建了哪些請求來重定向或封鎖它。隨著MV3的引入該權限被列為可選權限。",
"message": "",
"description": "LocalCDN needs to know which requests are created by a website to redirect or block it. With the introduction of MV3, this permission is listed as an optional permission."
},
"permissionMissing": {
"message": "缺少權限",
"message": "",
"description": "Missing permission"
},
"permissionAllow": {
"message": "允許",
"message": "",
"description": "Allow"
},
"permissionMoreInfo": {
"message": "更多資訊",
"message": "",
"description": "More info"
}
}

View File

@ -432,7 +432,9 @@ function check_resource() {
# CREATE URLs
# =============================================================================
function create_url() {
if [ "$folder" = "ethjs" ]; then
if [ "$folder" = "angular-stripe-checkout" ]; then
url="$JSDELIVR/npm/angular-stripe-checkout@$version/angular-stripe-checkout.min.js"
elif [ "$folder" = "ethjs" ]; then
url="$JSDELIVR/npm/ethjs@$version/dist/ethjs.min.js"
elif [ "$folder" = "react-lifecycles-compat" ]; then
url="$JSDELIVR/npm/react-lifecycles-compat@$version/react-lifecycles-compat.min.js"
@ -662,6 +664,8 @@ function create_url() {
url="$CLOUDFLARE/$folder/$version/$relativpath"
elif [ "$folder" = "Chart.js" ] && [ "$version" = "2.9.4" ] && [ "$jfile" = "chart.min.js" ]; then
url="$CLOUDFLARE/$folder/$version/Chart.bundle.min.js"
elif [ "$folder" = "angular-ui-select" ] && [ "$version" = "0.19.8" ]; then
url="$JSDELIVR/npm/ui-select@$version/dist/select.min.js"
elif [ "$folder" = "plyr" ]; then
if [ "$jfile" = "plyr.min.js" ]; then
url="$JSDELIVR/npm/plyr@$version/dist/plyr.min.js"
@ -743,12 +747,6 @@ function create_url() {
url="$CLOUDFLARE/$folder/$version/plugins/$jfile"
elif [ "$folder" = "redux" ] && [ "$version" != "4.2.1" ];then
url="$CLOUDFLARE/$folder/$version/redux.legacy-esm.min.js"
elif [ "$folder" = "supabase-js" ]; then
url="$UNPKG/@supabase/supabase-js@$version/dist/umd/supabase.js"
elif [ "$folder" = "pure" ] && \
[ "$jfile" = "pure.min.css" ] && \
( [ "$version" = "0.6.2" ] || [ "$version" = "1.0.1" ] ); then
url="$CLOUDFLARE/$folder/$version/pure-min.css"
# --------------------------------------------------------------------------
else
if [ "$subfile" = "$jfile" ]; then

View File

@ -273,12 +273,6 @@ const Regex = {
'BOOTSTRAP_FONTS_ONLY': /\/bootstrap\/(?:\d{1,2}\.){1,3}\d{1,2}\/fonts\//,
'ROCKET_LOADER': /ajax\.cloudflare\.com\/cdn-cgi\/scripts\/[a-zA-Z0-9]{8}\/cloudflare-static\/rocket-loader\.min\.js/,
'TWITTER_BOOTSTRAP_ALPHA_BETA': /-(alpha|beta).?\d?/,
'INTERNAL_STATISTICS_DATA': /((2\d)\d{2})-(0[1-9]|1[012])-(0[1-9]|[12]\d|3[01])/,
'DOMAIN': /[a-z0-9]+([-.]{1}[a-z0-9]+)*\.[a-z]{2,24}/,
'INTERNAL_RESOURCES': /resources\/[0-9a-z.-]+\/((?:\d{1,2}\.){1,3}\d{1,2})?.*\.(css|jsm)/,
'ISO_DATE': /((2\d)\d{2})-(0[1-9]|1[012])-(0[1-9]|[12]\d|3[01])/,
'HEX_COLOR': /#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})/,
'DOCSIFY': /docsify@(?:\d{1,2}\.){0,3}\d{1,2}(?:-\d)?$/,
};
const MaterialIcons = {
@ -430,16 +424,6 @@ const MathJax3Files = {
'es5/tex-svg.js': true,
};
const ReqAnalyzer = {
'BUNDLE_MATHJAX': 'MathJax (Bundle)',
'BUNDLE_TINYMCE': 'TinyMCE (Bundle)',
'BUNDLE_DATATABLES': 'DataTables (Bundle)',
'BUNDLE_SCROLLMAGIC': 'ScrollMagic (Bundle)',
'BUNDLE_FONT_AWESOME': 'Font Awesome (Fonts) (Bundle)',
'BUNDLE_PURE_CSS': 'Pure CSS (Bundle)',
};
/**
* To block bad resources, e.g. fingerprint
*

View File

@ -21,7 +21,7 @@
* File Guard
*/
let fileGuard = {};
var fileGuard = {};
/**

View File

@ -23,7 +23,7 @@
* Interceptor
*/
let interceptor = {};
var interceptor = {};
/**

View File

@ -23,7 +23,7 @@
* Main
*/
let main = {};
var main = {};
/**

View File

@ -19,7 +19,7 @@
* Manipulate DOM
*/
let manipulateDOM = {};
var manipulateDOM = {};
/**

View File

@ -23,7 +23,7 @@
* Mappings
*/
let mappings = {};
var mappings = {};
/*
* Date of last update.
@ -64,6 +64,7 @@ mappings.cdn = {
'mootools/{version}/mootools-core': resources.mootools,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'webfont/{version}/webfont.': resources.webfontloader,
'webfont/{version}/webfontloader.js': resources.webfontloader,
'webfont/1/webfont.js': resources.webfontloader
@ -103,6 +104,8 @@ mappings.cdn = {
'angular-ui-bootstrap/{version}/ui-bootstrap-tpls.': resources.angularUiBootstrapTPLS,
'angular-ui-bootstrap/{version}/ui-bootstrap.min.js': resources.angularUiBootstrap,
'angular-ui-router/{version}/angular-ui-router.': resources.angularUiRouter,
'angular-ui-select/{version}/select.': resources.angularJsUiSelect,
'angular-ui-utils/{version}/angular-ui-utils.': resources.angularUiUtils,
'angularjs-slider/{version}/rzslider.': resources.angularJSslider,
'angular.js/{version}/angular.': resources.angular,
'angular.js/{version}/angular-animate.': resources.angularAnimate,
@ -296,6 +299,7 @@ mappings.cdn = {
'cookieconsent2/{version}/cookieconsent.css': resources.cookieconsent2CSS,
'corejs-typeahead/{version}/typeahead.bundle.': resources.corejsTypeahead,
'd3/{version}/d3.min.js': resources.d3JS,
'd3-legend/{version}/d3-legend.': resources.d3legend,
'datatables/{version}/': resources.datatables,
'dayjs/{version}/dayjs.': resources.dayjs,
'dexie/{version}/dexie.': resources.dexie,
@ -305,6 +309,8 @@ mappings.cdn = {
'docsearch.js/{version}/docsearch.css': resources.docsearchCSS,
'docsify/{version}/docsify.min.js': resources.docsify,
'docsify/{version}/docsify.js': resources.docsify,
'drawer/{version}/js/drawer.min.js': resources.drawerJS,
'drawer/{version}/css/drawer.min.css': resources.drawerCSS,
'dygraph/{version}/dygraph': resources.dygraph,
'element-ui/{version}/': resources.elementUI,
'ext-core/{version}/ext-core.': resources.extCore,
@ -316,6 +322,7 @@ mappings.cdn = {
'fancybox/{version}/jquery.fancybox.css': resources.fancyBoxCSS,
'fastclick/{version}/fastclick.': resources.fastclick,
'feather-icons/{version}/feather.': resources.feather,
'FitText.js/{version}/jquery.fittext.': resources.fitTextJs,
'flickity/{version}/flickity.pkgd.': resources.flickity,
'font-awesome/{version}/css/font-awesome': resources.fontawesome,
'font-awesome/{version}/css/': resources.fontawesome5CSS,
@ -383,7 +390,6 @@ mappings.cdn = {
'jquery-ujs/{version}/rails.': resources.jqueryUJS,
'jScrollPane/{version}/script/jquery.jscrollpane.': resources.jScrollPane,
'js-cookie/{version}/js.cookie.min.js': resources.jscookie,
'jsrender/{version}/jsrender.min.js': resources.jsrender,
'knockout/{version}/knockout': resources.knockout,
'knockout.mapping/{version}/knockout.mapping.': resources.knockoutMapping,
'lazysizes/{version}/lazysizes.min.js': resources.lazysizes,
@ -506,6 +512,7 @@ mappings.cdn = {
'swagger-ui/{version}/swagger-ui-standalone-preset.min.js': resources.swaggerUiJS,
'swagger-ui/{version}/swagger-ui.css': resources.swaggerUiCSS,
'swagger-ui/{version}/swagger-ui.min.css': resources.swaggerUiCSS,
'swfobject/{version}/swfobject.': resources.swfobject,
'Swiper/{version}/css/swiper.': resources.swiperCSS,
'Swiper/{version}/js/swiper.': resources.swiperJS,
'Swiper/{version}/swiper-bundle.min.js': resources.swiperJS,
@ -579,6 +586,7 @@ mappings.cdn = {
'angular@{version}/angular.': resources.angular,
'angular@{version}/angular.min.': resources.angular,
'angular-payments@{version}/lib/angular-payments.js': resources.angularPayments,
'angular-stripe-checkout@{version}/angular-stripe-checkout.js': resources.angularStripeCheckout,
'animate.css@{version}/animate.min.css': resources.animateCSS,
'animejs@{version}/lib/anime.': resources.animejs,
'aos@{version}/dist/aos.css': resources.aosCSS,
@ -713,13 +721,13 @@ mappings.cdn = {
'swiper/swiper-bundle.min.css': resources.swiperCSS,
'swiper/swiper-bundle.js': resources.swiperJS,
'swiper/swiper-bundle.min.js': resources.swiperJS,
'swfobject@{version}/index.js': resources.swfobject,
'store-js@{version}/dist/store.legacy.min.js': resources.storeJS,
'scriptaculous-js@{version}/scriptaculous.': resources.scriptaculous,
'slick-carousel@{version}/slick/slick.min.css': resources.slickCarouselCSS,
'slick-carousel@{version}/slick/slick.css': resources.slickCarouselCSS,
'slick-carousel@{version}/slick/slick.min.js': resources.slickCarouselJS,
'slick-carousel@{version}/slick/slick.js': resources.slickCarouselJS,
'@supabase/supabase-js@{version}': resources.supabaseJs,
'@tensorflow/tfjs@{version}/dist/tf.min.js': resources.tensorflow,
'@tensorflow/tfjs@{version}/dist/tf.js': resources.tensorflow,
'underscore@{version}/underscore.': resources.underscore,
@ -783,6 +791,7 @@ mappings.cdn = {
'simplemde/{version}/simplemde.css': resources.simplemdeCSS,
'simplemde/{version}/simplemde.min.css': resources.simplemdeCSS,
'snowplow/{version}/sp.': resources.snowplow,
'swfobject/{version}/swfobject.': resources.swfobject,
'underscorejs/{version}/underscore.': resources.underscore,
'underscorejs/{version}/underscore-min.': resources.underscore,
'webfontloader/{version}/webfont': resources.webfontloader
@ -825,6 +834,7 @@ mappings.cdn = {
'momentjs/{version}/moment.min.': resources.moment,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'underscore/{version}/underscore.': resources.underscore,
'underscore/{version}/underscore-min.': resources.underscore
}
@ -845,6 +855,7 @@ mappings.cdn = {
'momentjs/{version}/moment.min.': resources.moment,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'underscore/{version}/underscore.': resources.underscore,
'underscore/{version}/underscore-min.': resources.underscore
}
@ -875,6 +886,8 @@ mappings.cdn = {
'mootools/{version}/mootools-core.': resources.mootools,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'swfobject/{version}/swfobject_src.': resources.swfobject,
'underscore.js/{version}/underscore.': resources.underscore,
'underscore.js/{version}/underscore-min.': resources.underscore,
'webfont/{version}/webfont.': resources.webfontloader,
@ -907,6 +920,7 @@ mappings.cdn = {
'mootools/{version}/mootools-core.': resources.mootools,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'underscore.js/{version}/underscore.': resources.underscore,
'underscore.js/{version}/underscore-min.': resources.underscore,
'webfont/{version}/webfont.': resources.webfontloader,
@ -934,6 +948,7 @@ mappings.cdn = {
'mootools/{version}/mootools-core.': resources.mootools,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'underscore.js/{version}/underscore.': resources.underscore,
'underscore.js/{version}/underscore-min.': resources.underscore,
'webfont/{version}/webfont.': resources.webfontloader,
@ -965,6 +980,7 @@ mappings.cdn = {
'mootools/{version}/mootools-core.': resources.mootools,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'webfont/{version}/webfont.': resources.webfontloader,
'webfont/{version}/webfont_debug.': resources.webfontloader
}
@ -997,6 +1013,7 @@ mappings.cdn = {
'mootools/{version}/mootools-core.': resources.mootools,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'twitter-bootstrap/{version}/js/bootstrap.': resources.bootstrapJS,
'twitter-bootstrap/{version}/css/bootstrap.': resources.bootstrapCSS,
'underscore.js/{version}/underscore.': resources.underscore,
@ -1040,6 +1057,7 @@ mappings.cdn = {
'mootools/{version}/mootools.': resources.mootools,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'underscore/{version}/underscore.': resources.underscore,
'underscore/{version}/underscore-min.': resources.underscore,
'webfont/{version}/webfont.': resources.webfontloader,

View File

@ -23,7 +23,7 @@
* Messenger
*/
let messenger = {};
var messenger = {};
/**

View File

@ -23,7 +23,7 @@
* Request Analyzer
*/
let requestAnalyzer = {};
var requestAnalyzer = {};
/**
@ -251,18 +251,14 @@ requestAnalyzer._findLocalTarget = function (resourceMappings, basePath, channel
requestAnalyzer._getPathOfBundle = function (initiator, channelHost, channelPath, targetPath, bundle) {
let filename = channelPath.split('/').pop();
if (bundle === ReqAnalyzer.BUNDLE_MATHJAX && filename !== 'MathJax.js') {
if (bundle === 'MathJax (Bundle)' && filename !== 'MathJax.js') {
filename = requestAnalyzer._handleMathJax(channelPath, channelHost, initiator);
} else if (bundle === ReqAnalyzer.BUNDLE_TINYMCE && filename !== 'tinymce.min.js') {
} else if (bundle === 'TinyMCE (Bundle)' && filename !== 'tinymce.min.js') {
filename = requestAnalyzer._handleTinyMCE(channelPath, channelHost, initiator);
} else if (bundle === ReqAnalyzer.BUNDLE_DATATABLES) {
} else if (bundle === 'DataTables (Bundle)') {
filename = requestAnalyzer._handleUncompressedFiles(filename);
} else if (bundle === ReqAnalyzer.BUNDLE_SCROLLMAGIC && !filename.endsWith('.min.js')) {
} else if (bundle === 'ScrollMagic (Bundle)' && !filename.endsWith('.min.js')) {
filename = requestAnalyzer._handleUncompressedFiles(filename);
} else if (bundle === ReqAnalyzer.BUNDLE_FONT_AWESOME) {
filename = requestAnalyzer._handleFontawesomeFiles(targetPath, filename);
} else if (bundle === ReqAnalyzer.BUNDLE_PURE_CSS) {
filename = (filename === 'pure-min.css' ? 'pure.min.css' : filename);
}
if (filename === false) {
@ -311,13 +307,6 @@ requestAnalyzer._handleTinyMCE = function (channelPath, channelHost, initiator)
return filename;
};
requestAnalyzer._handleFontawesomeFiles = function (targetPath, filename) {
if (targetPath === 'resources/font-awesome/4.7.0/fonts/') {
return filename.replace('fontawesome-webfont.woff', 'fontawesome-webfont.woff2');
}
return filename;
};
requestAnalyzer._applyAllowlistedDomains = function () {
storageManager.type.get(Setting.ALLOWLISTED_DOMAINS, function (items) {
requestAnalyzer.allowlistedDomains = items.allowlistedDomains || {};

View File

@ -18,7 +18,7 @@
* Request Sanitizer
*/
let requestSanitizer = {};
var requestSanitizer = {};
/**

View File

@ -23,7 +23,7 @@
* Resources
*/
let resources = {
var resources = {
// Ajax Bootstrap Select
'ajaxBootstrapSelect': {
@ -106,6 +106,14 @@ let resources = {
'angularJSslider': {
'path': 'resources/angularjs-slider/{version}/rzslider.min.jsm'
},
// AngularJS ui-select [Deprecated]
'angularJsUiSelect': {
'path': 'resources/angular-ui-select/{version}/select.min.jsm'
},
// angular-ui-utils [Deprecated]
'angularUiUtils': {
'path': 'resources/angular-ui-utils/{version}/angular-ui-utils.min.jsm'
},
// AngularUI Bootstrap [Deprecated]
'angularUiBootstrapTPLS': {
'path': 'resources/angular-ui-bootstrap/{version}/ui-bootstrap-tpls.min.jsm'
@ -128,6 +136,10 @@ let resources = {
'angularPayments': {
'path': 'resources/zumper-angular-payments/{version}/angular-payments.jsm'
},
// Angular Stripe Checkout [Deprecated]
'angularStripeCheckout': {
'path': 'resources/angular-stripe-checkout/{version}/angular-stripe-checkout.min.jsm'
},
// Angular Translate (Bundle)
'angularTranslate': {
'path': 'resources/angular-translate/{version}/'
@ -325,6 +337,10 @@ let resources = {
'd3JS': {
'path': 'resources/d3/{version}/d3.min.jsm'
},
// D3 Legend [Deprecated]
'd3legend': {
'path': 'resources/d3-legend/{version}/d3-legend.min.jsm'
},
// datatables
'datatables': {
'path': 'resources/datatables/{version}/'
@ -358,6 +374,13 @@ let resources = {
'docsifyThemeSimpleDark': {
'path': 'resources/docsify-themeable/{version}/theme-simple-dark.css'
},
// Drawer [Deprecated]
'drawerJS': {
'path': 'resources/drawer/{version}/drawer.min.jsm'
},
'drawerCSS': {
'path': 'resources/drawer/{version}/drawer.min.css'
},
// dygraph
'dygraph': {
'path': 'resources/dygraph/{version}/dygraph.min.jsm'
@ -400,6 +423,10 @@ let resources = {
'feather': {
'path': 'resources/feather-icons/{version}/feather.min.jsm'
},
// FitText.js [Deprecated]
'fitTextJs': {
'path': 'resources/FitText.js/{version}/jquery.fittext.min.jsm'
},
// flickity
'flickity': {
'path': 'resources/flickity/{version}/flickity.pkgd.min.jsm'
@ -645,10 +672,6 @@ let resources = {
'jscookie': {
'path': 'resources/js-cookie/{version}/js.cookie.min.jsm'
},
// jsrender
'jsrender': {
'path': 'resources/jsrender/{version}/jsrender.min.jsm'
},
// knockout
'knockout': {
'path': 'resources/knockout/{version}/knockout-min.jsm'
@ -1028,10 +1051,6 @@ let resources = {
'storeJS': {
'path': 'resources/store.js/{version}/store.legacy.min.jsm'
},
// suprabase-js
'supabaseJs': {
'path': 'resources/supabase-js/{version}/supabase.min.jsm'
},
// swagger-ui
'swaggerUiJS': {
'path': 'resources/swagger-ui/{version}/swagger-ui-bundle.min.jsm'
@ -1039,6 +1058,10 @@ let resources = {
'swaggerUiCSS': {
'path': 'resources/swagger-ui/{version}/swagger-ui.min.css'
},
// SWFObject [Deprecated]
'swfobject': {
'path': 'resources/swfobject/{version}/swfobject.jsm'
},
// Swiper
'swiperJS': {
'path': 'resources/Swiper/{version}/js/swiper.min.jsm'

View File

@ -23,7 +23,7 @@
* Shorthands
*/
let shorthands = {};
var shorthands = {};
shorthands.specialFiles = function (channelHost, channelPath, searchString) {
@ -288,15 +288,6 @@ shorthands.specialFiles = function (channelHost, channelPath, searchString) {
'path': `resources/aos/${lastVersion}/${file}`,
'bundle': ''
};
} else if (Regex.DOCSIFY.test(channelPath)) {
lastVersion = targets.setLastVersion('/docsify/');
return {
'source': channelHost,
'versionDelivered': lastVersion,
'versionRequested': channelPath.split('@')[1],
'path': `resources/docsify/${lastVersion}/docsify.min.jsm`,
'bundle': ''
};
}
return {
'result': false,

View File

@ -23,7 +23,7 @@
* State Manager
*/
let stateManager = {};
var stateManager = {};
/**
@ -96,19 +96,15 @@ stateManager.addDomainToAllowlist = function (domain) {
stateManager.removeDomainFromAllowlist = function (domain) {
return new Promise((resolve) => {
let allowlistedDomains;
let allowlistedDomains, wildcard;
allowlistedDomains = requestAnalyzer.allowlistedDomains;
wildcard = helpers.getWildcard(domain);
if (allowlistedDomains[domain]) {
delete allowlistedDomains[domain];
} else {
for (const key in allowlistedDomains) {
if (key.startsWith('*.') && domain.endsWith(key.substring(2))) {
delete allowlistedDomains[key];
break;
}
}
delete allowlistedDomains[wildcard];
}
storageManager.type.set({allowlistedDomains}, resolve);

View File

@ -26,7 +26,7 @@ const InvalidFile = 'Invalid file!';
* Storage Manager
*/
let storageManager = {};
var storageManager = {};
/**
@ -213,7 +213,7 @@ storageManager._validateDomainsAndStatistics = function (type, obj) {
if (type === 'allowedDomainsGoogleFonts' || type === 'domainsManipulateDOM' || type === 'allowlistedDomains') {
for (const [key, value] of Object.entries(obj)) {
// eslint-disable-next-line no-useless-escape
if (((Regex.DOMAIN).test(key) || key === '') && value === true) {
if (((/[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,24}/).test(key) || key === '') && value === true) {
valid[key] = value;
} else {
alert(`${chrome.i18n.getMessage('dialogImportFailed')}: ${key}`);
@ -222,12 +222,12 @@ storageManager._validateDomainsAndStatistics = function (type, obj) {
}
} else if (type === 'internalStatisticsData') {
for (const [date, values] of Object.entries(obj)) {
if ((Regex.INTERNAL_STATISTICS_DATA).test(date)) {
if ((/((2\d)\d{2})-(0[1-9]|1[012])-(0[1-9]|[12]\d|3[01])/).test(date)) {
for (const [types, category] of Object.entries(values)) {
if (types === 'frameworks') {
for (const [name, counter] of Object.entries(category)) {
// eslint-disable-next-line max-len
if (!(Regex.INTERNAL_RESOURCES).test(name) && !storageManager._validateNumbers(counter)) {
if (!(/resources\/[0-9a-z.-]+\/((?:\d{1,2}\.){1,3}\d{1,2})?.*\.(css|jsm)/).test(name) && !storageManager._validateNumbers(counter)) {
alert(`${chrome.i18n.getMessage('dialogImportFailed')}: ${name}`);
throw InvalidFile;
}
@ -235,7 +235,7 @@ storageManager._validateDomainsAndStatistics = function (type, obj) {
} else if (types === 'cdns') {
for (const [name, counter] of Object.entries(category)) {
// eslint-disable-next-line no-useless-escape, max-len
if (!(Regex.DOMAIN).test(name) && !storageManager._validateNumbers(counter)) {
if (!(/[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,24}/).test(name) && !storageManager._validateNumbers(counter)) {
alert(`${chrome.i18n.getMessage('dialogImportFailed')}: ${name}`);
throw InvalidFile;
}
@ -259,9 +259,9 @@ storageManager._validateDomainsAndStatistics = function (type, obj) {
};
storageManager._validateStrings = function (value) {
if ((Regex.ISO_DATE).test(value)) {
if ((/((2\d)\d{2})-(0[1-9]|1[012])-(0[1-9]|[12]\d|3[01])/).test(value)) {
return value;
} else if ((Regex.HEX_COLOR).test(value)) {
} else if ((/#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})/).test(value)) {
return value;
} else if (value === 'Default' || value === 'Light' || value === 'Grey') {
return value;

View File

@ -1,7 +1,7 @@
{
"manifest_version": 2,
"name": "LocalCDN",
"version": "2.6.69",
"version": "2.6.60",
"browser_specific_settings": {
"gecko": {
"id": "{b86e4813-687a-43e6-ab65-0bde4ab75758}",

View File

@ -23,7 +23,7 @@
* Helpers
*/
let helpers = {};
var helpers = {};
/**
@ -175,39 +175,22 @@ helpers.getWildcard = function (initiatorDomain) {
domain = domain.join().replace(/,/g, '.');
return domain;
}
};
helpers.getTopLevelDomain = function (initiatorDomain) {
let domain = initiatorDomain.split('.');
domain[domain.length - 2] = '*';
return `${domain[domain.length - 2]}.${domain[domain.length - 1]}`;
};
helpers.checkAllowlisted = function (domain, list) {
if (!domain) return false;
let domainWithoutPrefix, wildcard;
const subdomains = helpers.getAllSubdomains(domain);
for (const subdomain of subdomains) {
if (list[subdomain]) return true;
}
return false;
};
helpers.getAllSubdomains = function (domain) {
const parts = domain.split('.').reverse();
const subdomains = [];
let currentSubdomain = '';
for (const part of parts) {
currentSubdomain = part + (currentSubdomain ? `.${currentSubdomain}` : '');
subdomains.push(`*.${currentSubdomain}`);
subdomains.push(currentSubdomain);
if (domain === null) {
return false;
}
return subdomains;
if (domain.startsWith(Address.WWW_PREFIX)) {
domainWithoutPrefix = domain.slice(Address.WWW_PREFIX.length);
}
wildcard = helpers.getWildcard(domain);
return Boolean(list[domain] || list[domainWithoutPrefix] || list[wildcard] || list[domainWithoutPrefix]);
};
helpers.extractFilenameFromPath = function (path) {
@ -313,12 +296,5 @@ helpers.compareVersion = function (v1, v2) {
};
helpers.isGoogleDomain = function (initiatorDomain) {
let parts = initiatorDomain.split('.');
// remove subdomains if exist
if (parts.length > 2) {
parts.shift();
}
return GoogleDomains[parts.join('.')] || false;
return GoogleDomains[initiatorDomain.replace('www.', '')] || false;
};

View File

@ -19,7 +19,7 @@
* Log
*/
let log = {};
var log = {};
log.append = function (initiator, resource, target, highlight, iframe = '') {
storageManager.type.get(Setting.LOGGING, function (items) {

View File

@ -19,7 +19,7 @@
* Updates
*/
let ruleGenerator = {};
var ruleGenerator = {};
/**

View File

@ -20,7 +20,7 @@
* Stats
*/
let stats = {};
var stats = {};
/**

View File

@ -19,7 +19,7 @@
* Targets
*/
let targets = {};
var targets = {};
/**
@ -80,9 +80,9 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/1000hz-bootstrap-validator/0.')) return '0.11.9';
if (type.startsWith('/ajax-bootstrap-select/1.')) return '1.4.5';
if (type.startsWith('/algoliasearch/3.')) return '3.35.1';
if (type.startsWith('/algoliasearch/4.')) return '4.23.3';
if (type.startsWith('/algoliasearch/4.')) return '4.21.0';
if (type.startsWith('/alpinejs/2.')) return '2.8.2';
if (type.startsWith('/alpinejs/3.')) return '3.14.0';
if (type.startsWith('/alpinejs/3.')) return '3.13.3';
if (type.startsWith('/anchor-js/3.')) return '3.2.2';
if (type.startsWith('/anchor-js/4.')) return '4.3.1';
if (type.startsWith('/anchor-js/5.')) return '5.0.0';
@ -110,7 +110,8 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/angularjs-toaster/3.')) return '3.0.0';
if (type.startsWith('/angular-bootstrap-colorpicker/3.')) return '3.0.32';
if (type.startsWith('/zumper-angular-payments/1.')) return '1.0.7';
if (type.startsWith('/angular-translate-loader-partial/2.')) return '2.19.1';
if (type.startsWith('/angular-stripe-checkout@5.')) return '5.1.0';
if (type.startsWith('/angular-translate-loader-partial/2.')) return '2.19.0';
if (type.startsWith('/angular-ui-bootstrap/')) {
if (helpers.compareVersion('0.10.0', version)) return '0.10.0'; // <= v0.10.0
if (helpers.compareVersion('0.14.3', version)) return '0.14.3'; // > 0.10.0 <= v0.14.3
@ -121,6 +122,8 @@ targets.setLastVersion = function (type, version) {
if (helpers.compareVersion('0.4.3', version)) return '0.4.3'; // <= 0.4.3
return '1.1.0'; // > 0.4.3
}
if (type.startsWith('/angular-ui-utils/0.')) return '0.1.1';
if (type.startsWith('/angular-ui-select/0.')) return '0.20.0';
if (type.startsWith('/angucomplete-alt/3.')) return '3.0.0';
if (type.startsWith('/animate.css/3.')) return '3.7.2';
if (type.startsWith('/animate.css/4.')) return '4.1.1';
@ -128,14 +131,14 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/autocomplete.js/0.')) return '0.38.1';
if (type.startsWith('/autocomplete.js/1.')) return '1.5.4';
if (type.startsWith('/angular-material/1.') || type.startsWith('/angular-material/0.')) return '1.2.5';
if (type.startsWith('/angular-translate/2.')) return '2.19.1';
if (type.startsWith('/angular-translate/2.')) return '2.19.0';
if (type.startsWith('/aos/2.') || type.startsWith('/aos/latest')) return '2.3.4';
if (type.startsWith('/appboy-web-sdk/3.')) return '3.5.1';
if (type.startsWith('/asciinema-player/2.')) return '2.6.1';
if (type.startsWith('/axios/0.')) return '0.27.2';
if (type.startsWith('/axios/1.')) return '1.7.2';
if (type.startsWith('/axios/1.')) return '1.6.2';
if (type.startsWith('/backbone.js/0.')) return '0.9.10';
if (type.startsWith('/backbone.js/1.')) return '1.6.0';
if (type.startsWith('/backbone.js/1.')) return '1.5.0';
if (type.startsWith('/baguettebox.js/1.')) return '1.11.1';
if (type.startsWith('/blazy/1.')) return '1.8.2';
if (type.startsWith('/bluebird/3.')) return '3.7.2';
@ -147,25 +150,25 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/bootstrap-daterangepicker/2.')) return '2.1.27';
if (type.startsWith('/bootstrap-daterangepicker/3.')) return '3.1';
if (type.startsWith('/bootstrap-datepicker/1.')) return '1.10.0';
if (type.startsWith('/bootstrap-icons/1.')) return '1.11.3';
if (type.startsWith('/bootstrap-icons/1.')) return '1.11.2';
if (type.startsWith('/bootstrap-multiselect/0.')) return '0.9.16';
if (type.startsWith('/bootstrap-multiselect/1.')) return '1.1.2';
if (type.startsWith('/bootstrap-slider/10.')) return '10.6.2';
if (type.startsWith('/bootstrap-slider/11.')) return '11.0.2';
if (type.startsWith('/bootstrap-select/1.')) return '1.13.18';
if (type.startsWith('/bootstrap-table/1.')) return '1.22.6';
if (type.startsWith('/bootstrap-table/1.')) return '1.22.1';
if (type.startsWith('/bootstrap-toggle/2.')) return '2.2.2';
if (type.startsWith('/bootstrap-vue/2.')) return '2.23.1';
if (type.startsWith('/bootstrap-3-typeahead/4.')) return '4.0.2';
if (type.startsWith('/bootswatch/3.')) return '3.4.0';
if (type.startsWith('/bootswatch/4.')) return '4.6.1';
if (type.startsWith('/bootswatch/5.')) return '5.3.3';
if (type.startsWith('/bootswatch/5.')) return '5.3.2';
if (type.startsWith('/bowser/')) {
if (version !== 'latest' && helpers.compareVersion('1.9.4', version)) return '1.9.4';
return '2.11.0';
}
if (type.startsWith('/bulma/0.') || type.startsWith('/bulma/1.')) return '1.0.1';
if (type.startsWith('/bxslider/4.')) return '4.2.17';
if (type.startsWith('/bulma/0.')) return '0.9.4';
if (type.startsWith('/bxslider/4.')) return '4.2.15';
if (type.startsWith('/Chart.js/2.')) return '2.9.4';
if (type.startsWith('/Chart.js/3.')) return '3.9.1';
if (type.startsWith('/Chart.js/4.')) return '4.4.1';
@ -174,20 +177,21 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/clipboard.js/1.')) return '1.7.1';
if (type.startsWith('/clipboard.js/2.')) return '2.0.11';
if (type.startsWith('/cookieconsent2/3.')) return '3.1.1';
if (type.startsWith('/corejs-typeahead/1.')) return '1.3.4';
if (type.startsWith('/corejs-typeahead/1.')) return '1.3.3';
if (type.startsWith('/createjs/')) return '1.0.0';
if (type.startsWith('/d3/3.')) return '3.5.17';
if (type.startsWith('/d3/4.')) return '4.13.0';
if (type.startsWith('/d3/5.')) return '5.16.0';
if (type.startsWith('/d3/6.')) return '6.7.0';
if (type.startsWith('/d3/7.')) return '7.9.0';
if (type.startsWith('/d3/7.')) return '7.8.5';
if (type.startsWith('/d3-legend/2.')) return '2.25.6';
if (type.startsWith('/datatables/1.')) return '1.11.0';
if (type.startsWith('/dayjs/1.')) return '1.11.11';
if (type.startsWith('/dexie/3.')) return '3.2.6';
if (type.startsWith('/dexie/4.') || type.startsWith('/dexie/latest')) return '4.0.7';
if (type.startsWith('/dayjs/1.')) return '1.11.10';
if (type.startsWith('/dexie/3.') || type.startsWith('/dexie/latest')) return '3.2.4';
if (type.startsWith('/docsearch.js/2.')) return '2.6.3';
if (type.startsWith('/docsify/4.') || type.startsWith('/docsify/')) return '4.13.1';
if (type.startsWith('/docsify-themeable/0.')) return '0.9.0';
if (type.startsWith('/drawer/3.')) return '3.2.2';
if (type.startsWith('/dygraph/1.')) return '1.1.1';
if (type.startsWith('/dygraph/2.')) return '2.2.1';
if (type.startsWith('/element-ui/2.')) return '2.15.14';
@ -198,13 +202,14 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/fastclick/1.')) return '1.0.6';
if (type.startsWith('/fancybox/2.')) return '2.1.7';
if (type.startsWith('/fancybox/3.')) return '3.5.7';
if (type.startsWith('/feather-icons/4.')) return '4.29.2';
if (type.startsWith('/feather-icons/4.')) return '4.29.1';
if (type.startsWith('/FitText.js/1.')) return '1.2.0';
if (type.startsWith('/flickity/3.')) return '3.0.0';
if (type.startsWith('/flv.js/')) return '1.6.2';
if (type.startsWith('/font-awesome/3.')) return '3.2.1';
if (type.startsWith('/font-awesome/4.')) return '4.7.0';
if (type.startsWith('/font-awesome/5.')) return '5.15.4';
if (type.startsWith('/font-awesome/6.')) return '6.5.2';
if (type.startsWith('/font-awesome/6.')) return '6.5.1';
if (type.startsWith('/fork-awesome/1.')) return '1.2.0';
if (type.startsWith('/foundation/5.')) return '5.5.3';
if (type.startsWith('/foundation/6.')) return '6.8.1';
@ -212,27 +217,27 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/granim/2.')) return '2.0.0';
if (type.startsWith('/gsap/1.')) return '1.20.5';
if (type.startsWith('/gsap/2.')) return '2.1.3';
if (type.startsWith('/gsap/3.')) return '3.12.5';
if (type.startsWith('/materialicons/')) return 'v142';
if (type.startsWith('/gsap/3.')) return '3.12.3';
if (type.startsWith('/materialicons/')) return 'v140';
if (type.startsWith('/materialiconsoutlined/')) return 'v109';
if (type.startsWith('/materialiconsround/')) return 'v108';
if (type.startsWith('/materialiconssharp/')) return 'v109';
if (type.startsWith('/materialiconstwotone/')) return 'v112';
if (type.startsWith('/handlebars.js/4.')) return '4.7.8';
if (type.startsWith('/highlight.js/7.')) return '11.9.0';
if (type.startsWith('/highlight.js/8.')) return '11.9.0';
if (type.startsWith('/highlight.js/9.')) return '11.9.0';
if (type.startsWith('/highlight.js/10.')) return '11.9.0';
if (type.startsWith('/highlight.js/7.')) return '9.18.5';
if (type.startsWith('/highlight.js/8.')) return '9.18.5';
if (type.startsWith('/highlight.js/9.')) return '9.18.5';
if (type.startsWith('/highlight.js/10.')) return '10.7.3';
if (type.startsWith('/highlight.js/11.')) return '11.9.0';
if (type.startsWith('/history/4.')) return '4.10.1';
if (type.startsWith('/history/5.')) return '5.3.0';
if (type.startsWith('/hls.js/0.')) return '0.14.17';
if (type.startsWith('/hls.js/1.')) return '1.5.11';
if (type.startsWith('/hls.js/1.')) return '1.4.13';
if (type.startsWith('/hogan.js/')) return '3.0.2';
if (type.startsWith('/instantsearch.css/7.')) return '7.4.5';
if (type.startsWith('/instantsearch.css/8.')) return '8.2.1';
if (type.startsWith('/instantsearch.css/8.')) return '8.1.0';
if (type.startsWith('/instantsearch.js/3.')) return '3.7.0';
if (type.startsWith('/instantsearch.js/4.')) return '4.71.1';
if (type.startsWith('/instantsearch.js/4.')) return '4.62.0';
if (type.startsWith('/in-view/0.')) return '0.6.1';
if (type.startsWith('/iScroll/5.')) return '5.2.0';
if (type.startsWith('/izimodal/1.')) return '1.6.1';
@ -255,7 +260,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/jqueryui/1.')) {
if (helpers.compareVersion('1.8.24', version)) return '1.8.24'; // <= v1.8.24
if (helpers.compareVersion('1.10.0', version)) return '1.10.0'; // > v1.8.24 to <= v1.10.0
return '1.13.3'; // >= 1.8.19
return '1.13.2'; // >= 1.8.19
}
if (type.startsWith('/jquery-ajax-unobtrusive/3.')) return '3.2.6';
if (type.startsWith('/jquery.blockUI/2.')) return '2.70';
@ -293,7 +298,6 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/jasny-bootstrap/4.')) return '4.0.0';
if (type.startsWith('/js-cookie/2.')) return '2.2.1';
if (type.startsWith('/js-cookie/3.')) return '3.0.5';
if (type.startsWith('/jsrender/1.')) return '1.0.14';
if (type.startsWith('/knockout/3.')) {
if (helpers.compareVersion('3.4.2', version)) return '3.4.2'; // <= v3.4.2
return '3.5.1';
@ -309,7 +313,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/Leaflet.EasyButton/2.')) return '2.4.0';
if (type.startsWith('/leaflet.featuregroup.subgroup/1.')) return '1.0.2';
if (type.startsWith('/leaflet.markercluster/1.')) return '1.5.3';
if (type.startsWith('/libphonenumber-js/1.')) return '1.11.3';
if (type.startsWith('/libphonenumber-js/1.')) return '1.10.51';
if (type.startsWith('/libsodium-wrappers/0.')) return '0.5.4';
if (type.startsWith('/lightbox2/2.')) return '2.11.4';
if (type.startsWith('/lightcase/2.')) return '2.5.0';
@ -319,7 +323,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/lodash.js/4.')) return '4.17.21';
if (type.startsWith('/lozad')) return '1.16.0';
if (type.startsWith('/lunr.js/2.')) return '2.3.9';
if (type.startsWith('/magnific-popup.js/1.')) return '1.2.0';
if (type.startsWith('/magnific-popup.js/1.')) return '1.1.0';
if (type.startsWith('/markdown-it/')) return '13.0.2';
if (type.startsWith('/mdbootstrap/4.')) return '4.20.0';
if (type.startsWith('/material-design-icons/2.')) return '2.8.94';
@ -337,13 +341,13 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/mdb-ui-kit/4.')) return '4.4.0';
if (type.startsWith('/mdb-ui-kit/5.')) return '5.0.0';
if (type.startsWith('/mdb-ui-kit/6.')) return '6.4.2';
if (type.startsWith('/mdb-ui-kit/7.')) return '7.3.1';
if (type.startsWith('/mdb-ui-kit/7.')) return '7.1.0';
if (type.startsWith('/mobile/1.')) return '1.4.5';
if (type.startsWith('/Modaal/0.')) return '0.4.4';
if (type.startsWith('/modernizr/2.')) return '2.8.3';
if (type.startsWith('/moment.js/2.')) {
if (helpers.compareVersion('2.5.1', version)) return '2.5.1'; // <= v2.5.1
return '2.30.1';
return '2.29.4';
}
if (type.startsWith('/mootools/1.')) {
if (helpers.compareVersion('1.4.5', version)) return '1.4.5'; // <= v1.4.5
@ -356,7 +360,7 @@ targets.setLastVersion = function (type, version) {
return '12.0.0';
}
if (type.startsWith('/noUiSlider/14.')) return '14.7.0';
if (type.startsWith('/noUiSlider/15.')) return '15.8.0';
if (type.startsWith('/noUiSlider/15.')) return '15.7.1';
if (type.startsWith('/nprogress/0.')) return '0.2.0';
if (type.startsWith('/nvd3/1.')) return '1.8.6';
if (type.startsWith('/object-assign@4.')) return '4.1.1';
@ -366,7 +370,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/owl-carousel/2.')) return '2.3.4';
if (type.startsWith('/p2p-media-loader-core') || type.startsWith('/p2p-media-loader-hlsjs')) return '0.6.2';
if (type.startsWith('/p5.js/0.')) return '0.10.2';
if (type.startsWith('/p5.js/1.')) return '1.9.4';
if (type.startsWith('/p5.js/1.')) return '1.9.0';
if (type.startsWith('/page.js/1.')) return '1.11.6';
if (type.startsWith('/paginationjs/2.')) return '2.6.0';
if (type.startsWith('/plyr/3.')) return '3.7.8';
@ -383,28 +387,28 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/raven.js/3.')) return '3.27.2';
if (type.startsWith('/react/16.')) return '16.14.0';
if (type.startsWith('/react/17.')) return '17.0.2';
if (type.startsWith('/react/18.')) return '18.3.1';
if (type.startsWith('/react/18.')) return '18.2.0';
if (type.startsWith('/react-dom/16.')) return '16.14.0';
if (type.startsWith('/react-dom/17.')) return '17.0.2';
if (type.startsWith('/react-dom/18.')) return '18.3.1';
if (type.startsWith('/react-dom/18.')) return '18.2.0';
if (type.startsWith('/react-intl/')) {
// NOTE: Parameters swapped. (= anything greater than v5.0.0)
if (helpers.compareVersion(version, '5.0.0')) return '6.6.8'; // >= v5.0.0
if (helpers.compareVersion(version, '5.0.0')) return '6.5.5'; // >= v5.0.0
}
if (type.startsWith('/react-redux/7.')) return '7.2.8';
if (type.startsWith('/react-redux/8.')) return '8.1.3';
if (type.startsWith('/react-router/5.')) return '5.3.3';
if (type.startsWith('/react-router/6.')) return '6.23.1';
if (type.startsWith('/react-router/6.')) return '6.20.1';
if (type.startsWith('/react-side-effect/')) return '2.1.2';
if (type.startsWith('/react-lifecycles-compat/')) return '3.0.4';
if (type.startsWith('/redux/4.')) return '4.2.1';
if (type.startsWith('/redux/5.')) return '5.0.1';
if (type.startsWith('/redux/5.')) return '5.0.0';
if (type.startsWith('/rickshaw/1.')) return '1.7.1';
if (type.startsWith('/script.js/2.')) return '2.5.9';
if (type.startsWith('/scriptaculous/1.')) return '1.9.0';
if (type.startsWith('/ScrollMagic/2.')) return '2.0.8';
if (type.startsWith('/search-insights/1.')) return '1.10.0';
if (type.startsWith('/search-insights/2.')) return '2.14.0';
if (type.startsWith('/search-insights/2.')) return '2.13.0';
if (type.startsWith('/select2/3.')) return '3.5.4';
if (type.startsWith('/select2/4.')) return '4.0.13';
if (type.startsWith('/semantic-ui/2.')) return '2.5.0';
@ -412,7 +416,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/showdown/1.')) return '1.9.1';
if (type.startsWith('/showdown/2.')) return '2.1.0';
if (type.startsWith('/simplebar/5.')) return '5.3.9';
if (type.startsWith('/simplebar/6.')) return '6.2.7';
if (type.startsWith('/simplebar/6.')) return '6.2.5';
if (type.startsWith('/simplemde/')) return '1.11.2';
if (type.startsWith('/slick-carousel/1.')) {
if (helpers.compareVersion('1.8.1', version)) return '1.8.1'; // <= v1.8.1
@ -423,7 +427,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/snowplow/2.')) return '2.18.2';
if (type.startsWith('/socket.io/2.')) return '2.4.0';
if (type.startsWith('/socket.io/3.')) return '3.1.3';
if (type.startsWith('/socket.io/4.')) return '4.7.5';
if (type.startsWith('/socket.io/4.')) return '4.7.2';
if (type.startsWith('/spin.js/2.')) return '2.3.2';
if (type.startsWith('/spin.js/3.')) return '3.1.0';
if (type.startsWith('/spin.js/4.')) return '4.1.1';
@ -431,9 +435,9 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/stickyfill/2.')) return '2.1.0';
if (type.startsWith('/sticky-js/')) return '1.3.0';
if (type.startsWith('/store.js/2.')) return '2.0.12';
if (type.startsWith('/supabase-js/2.')) return '2.39.3';
if (type.startsWith('/swagger-ui/4.')) return '4.18.3';
if (type.startsWith('/swagger-ui/5.')) return '5.17.14';
if (type.startsWith('/swagger-ui/5.')) return '5.10.3';
if (type.startsWith('/swfobject/2.')) return '2.2';
if (type.startsWith('/Swiper/3.')) return '3.4.2';
if (type.startsWith('/Swiper/4.')) return '4.5.1';
if (type.startsWith('/Swiper/5.')) return '5.4.5';
@ -444,12 +448,11 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/Swiper/10.') || type.startsWith('/Swiper/11.') || type.startsWith('/Swiper/')) return '11.0.5';
if (type.startsWith('/tensorflow/')) {
// NOTE: Parameters swapped. (= anything greater than v2.0.0)
if (helpers.compareVersion(version, '2.0.0')) return '4.20.0'; // >= v2.0.0
if (helpers.compareVersion(version, '2.0.0')) return '4.14.0'; // >= v2.0.0
}
if (type.startsWith('/tether/1.')) return '1.4.7';
if (type.startsWith('/tinymce/5.')) return '5.10.5';
if (type.startsWith('/tinymce/6.')) return '7.0.1';
if (type.startsWith('/tinymce/7.')) return '7.1.2';
if (type.startsWith('/tinymce/6.')) return '6.8.2';
if (type.startsWith('/tooltipster/3.')) return '3.3.0';
if (type.startsWith('/tooltipster/4.')) return '4.2.8';
if (type.startsWith('/toastr.js/2.') || type.startsWith('/toastr.js/latest/')) return '2.1.4';
@ -464,16 +467,13 @@ targets.setLastVersion = function (type, version) {
if (helpers.compareVersion('4.4.1', version)) return '4.4.1'; // <= 4.4.1
return '4.6.1';
}
if (type.startsWith('/twitter-bootstrap/5.')) {
if (helpers.compareVersion('5.1.3', version)) return '5.1.3'; // <= 5.1.3
return '5.3.3';
}
if (type.startsWith('/twitter-bootstrap/5.')) return '5.3.2';
if (type.startsWith('/twix.js/0.')) return '0.3.0';
if (type.startsWith('/twix.js/1.')) return '1.3.0';
if (type.startsWith('/underscore.js/1.')) return '1.13.6';
if (type.startsWith('/URI.js/1.')) return '1.19.11';
if (type.startsWith('/urlive/1.')) return '1.1.1';
if (type.startsWith('/vanilla-lazyload')) return '19.1.3';
if (type.startsWith('/vanilla-lazyload')) return '17.8.5';
if (type.startsWith('/vex-js/3.')) return '3.1.1';
if (type.startsWith('/vex-js/4.')) return '4.1.0';
if (type.startsWith('/videojs-seek-buttons/1.')) return '1.6.0';
@ -484,17 +484,17 @@ targets.setLastVersion = function (type, version) {
if (helpers.compareVersion('5.20.5', version)) return '5.20.5'; // <= 5.20.5
if (helpers.compareVersion('6.13.0', version)) return '6.13.0'; // > 5.20.5 to <= 6.13.0
if (helpers.compareVersion('7.21.1', version)) return '7.21.1'; // > 6.13.0 to <= 7.21.1
return '8.16.0';
return '8.7.0';
}
if (type.startsWith('/vue/1.')) return '1.0.28';
if (type.startsWith('/vue/2.')) return '2.6.14';
if (type.startsWith('/vue/3.')) return '3.4.29';
if (type.startsWith('/vue/3.')) return '3.3.11';
if (type.startsWith('/vue-i18n/8.')) return '8.27.2';
if (type.startsWith('/vue-i18n/9.')) return '9.13.1';
if (type.startsWith('/vue-i18n/9.')) return '9.8.0';
if (type.startsWith('/vue-match-media/1.')) return '1.0.3';
if (type.startsWith('/vue-resource/1.')) return '1.5.3';
if (type.startsWith('/vue-router/3.')) return '3.6.5';
if (type.startsWith('/vue-router/4.')) return '4.3.3';
if (type.startsWith('/vue-router/4.')) return '4.2.5';
if (type.startsWith('/vuex/3.')) return '3.6.2';
if (type.startsWith('/vuex/4.')) return '4.1.0';
if (type.startsWith('/waypoints/4.')) return '4.0.1';
@ -502,8 +502,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/webfont')) return '1.6.28';
if (type.startsWith('/webrtc-adapter/6.')) return '6.4.8';
if (type.startsWith('/webrtc-adapter/7.')) return '7.7.1';
if (type.startsWith('/webrtc-adapter/8.')) return '9.0.1';
if (type.startsWith('/webrtc-adapter/9.')) return '9.0.1';
if (type.startsWith('/webrtc-adapter/8.')) return '8.2.3';
if (type.startsWith('/wow/1.')) return '1.1.2';
if (version === null) return 'latest';
return '';
@ -515,8 +514,6 @@ targets.determineResourceName = function (filename) {
};
const ListOfFiles = {
'jsrender.min.jsm': 'jsrender',
'supabase.min.jsm': 'supabase-js',
'handlebars.min.jsm': 'handlebars.js',
'URI.min.jsm': 'URI.js',
'vue-router.global.min.jsm': 'vue-router',
@ -610,7 +607,6 @@ const ListOfFiles = {
'jquery.validate.unobtrusive.min.jsm': 'jQuery Validate Unobtrusive',
'jquery.sliderPro.min.jsm': 'Slider Pro (JS)',
'knockout-min.jsm': 'Knockout',
'knockout-latest.min.jsm': 'Knockout',
'bootstrap-multiselect.min.jsm': 'Bootstrap Multiselect',
'ajax-bootstrap-select.min.jsm': 'Ajax Bootstrap Select',
'bootstrap-vue.min.jsm': 'BootstrapVue (JS)',

View File

@ -22,7 +22,7 @@
* Wrappers
*/
let wrappers = {};
var wrappers = {};
/**

View File

@ -19,7 +19,7 @@
* Help
*/
let help = {};
var help = {};
/**

View File

@ -19,7 +19,7 @@
* Logging Page
*/
let logging = {};
var logging = {};
logging._onDocumentLoaded = function () {
logging._getLoggingData()

View File

@ -19,7 +19,7 @@
* Options (Advanced)
*/
let optionsAdvanced = {};
var optionsAdvanced = {};
/**
@ -88,10 +88,6 @@ optionsAdvanced.init = function (opt) {
negateHtmlFilterList = options.getOptionElement(Setting.NEGATE_HTML_FILTER_LIST);
negateHtmlFilterList.addEventListener('change', options.onOptionChanged);
negateHtmlFilterList.checked = opt[Setting.NEGATE_HTML_FILTER_LIST];
if (opt[Setting.NEGATE_HTML_FILTER_LIST] === false) {
document.getElementById('html-filter-domains-title-include').style.display = 'block';
document.getElementById('html-filter-domains-title-exclude').style.display = 'none';
}
changeBadgeColorMissingResources = options.getOptionElement(Setting.CHANGE_BADGE_COLOR_MISSING_RESOURCES);
changeBadgeColorMissingResources.addEventListener('change', options.onOptionChanged);

View File

@ -19,7 +19,7 @@
* Options (Basic)
*/
let optionsBasic = {};
var optionsBasic = {};
/**

View File

@ -19,7 +19,7 @@
* Options (Info)
*/
let optionsInfo = {};
var optionsInfo = {};
/**

View File

@ -19,7 +19,7 @@
* Options (Other)
*/
let optionsOther = {};
var optionsOther = {};
/**

View File

@ -111,7 +111,6 @@
<img class="checked-unchecked" src="../../icons/checked.svg" alt=""> example.com<br>
<img class="checked-unchecked" src="../../icons/checked.svg" alt=""> sub.example.com<br>
<img class="checked-unchecked" src="../../icons/checked.svg" alt=""> *.example.com<br>
<img class="checked-unchecked" src="../../icons/checked.svg" alt=""> *.com<br>
<img class="checked-unchecked" src="../../icons/unchecked.svg" alt=""> https://example.com<br>
<img class="checked-unchecked" src="../../icons/unchecked.svg" alt=""> https://*.example.com<br>
<img class="checked-unchecked" src="../../icons/unchecked.svg" alt=""> https://example.com/page/example.html
@ -164,7 +163,6 @@
<img class="checked-unchecked" src="../../icons/checked.svg" alt=""> example.com<br>
<img class="checked-unchecked" src="../../icons/checked.svg" alt=""> sub.example.com<br>
<img class="checked-unchecked" src="../../icons/checked.svg" alt=""> *.example.com<br>
<img class="checked-unchecked" src="../../icons/checked.svg" alt=""> *.com<br>
<img class="checked-unchecked" src="../../icons/unchecked.svg" alt=""> https://example.com<br>
<img class="checked-unchecked" src="../../icons/unchecked.svg" alt=""> https://*.example.com<br>
<img class="checked-unchecked" src="../../icons/unchecked.svg" alt=""> https://example.com/page/example.html
@ -204,7 +202,6 @@
<img class="checked-unchecked" src="../../icons/checked.svg" alt=""> example.com<br>
<img class="checked-unchecked" src="../../icons/checked.svg" alt=""> sub.example.com<br>
<img class="checked-unchecked" src="../../icons/checked.svg" alt=""> *.example.com<br>
<img class="checked-unchecked" src="../../icons/checked.svg" alt=""> *.com<br>
<img class="checked-unchecked" src="../../icons/unchecked.svg" alt=""> https://example.com<br>
<img class="checked-unchecked" src="../../icons/unchecked.svg" alt=""> https://*.example.com<br>
<img class="checked-unchecked" src="../../icons/unchecked.svg" alt=""> https://example.com/page/example.html

View File

@ -23,7 +23,7 @@
* Options
*/
let options = {};
var options = {};
/**

View File

@ -23,7 +23,7 @@
* Popup
*/
let popup = {};
var popup = {};
/**

View File

@ -23,7 +23,6 @@
<option value="week" data-i18n-content="labelPastWeek">Past week</option>
<option value="month" data-i18n-content="labelPastMonth">Past month</option>
<option value="year" data-i18n-content="labelPastYear">Past year</option>
<option value="all" data-i18n-content="labelAll">All</option>
</select>
<div id="btn-delete" class="button" data-i18n-content="labelDelete">Delete</div>
</div>

View File

@ -19,7 +19,7 @@
* Statistic
*/
let statistics = {};
var statistics = {};
/**
@ -127,8 +127,6 @@ statistics._setDateRange = function () {
days = 30;
} else if (type === 'year') {
days = 365;
} else if (type === 'all') {
days = statistics._daysSinceYearOfRelease();
} else {
statistics._dateRange = [new Date().toISOString().slice(0, 10)];
}
@ -240,7 +238,7 @@ statistics._displayNameOfFramework = function (str, type) {
statistics._handlerDateRange = function ({target}) {
let type = target.value;
if (type === 'day' || type === 'week' || type === 'month' || type === 'year' || type === 'all') {
if (type === 'day' || type === 'week' || type === 'month' || type === 'year') {
statistics._dateUnit = type;
statistics._saveDefaultRange(type);
} else if (type === 'delete') {
@ -272,14 +270,6 @@ statistics._registerListener = function () {
});
};
statistics._daysSinceYearOfRelease = function () {
let timeDifference, millisecondsPerDay;
timeDifference = new Date() - new Date('2020-01-01');
millisecondsPerDay = 24 * 60 * 60 * 1000;
return Math.floor(timeDifference / millisecondsPerDay);
};
/**
* Initializations

View File

@ -25,33 +25,31 @@
<h2>New in LocalCDN:</h2>
</div>
<div class="release-notes-area">
<p>Mapping</p>
<ul>
<li>pure-min.css to pure.min.css (<a href="https://codeberg.org/nobody/LocalCDN/issues/1629">#1629</a>)</li>
</ul>
<p>Fixed</p>
<ul>
<li>Wrong version for bulma v0.x (<a href="https://codeberg.org/nobody/LocalCDN/issues/1632">#1632</a>)</li>
</ul>
<p>Added</p>
<ul>
<li>jsrender v1.0.14</li>
</ul>
<p>Updated</p>
<ul>
<li>hls.js v1.5.9 -> v1.5.11</li>
<li>instantsearch.css v8.2.0 -> v8.2.1</li>
<li>instantsearch.js v4.70.0 -> v4.71.1</li>
<li>libphonenumber-js v1.11.2 -> v1.11.3</li>
<li>magnific-popup.js v1.1.0 -> v1.2.0</li>
<li>mdb-ui-kit v7.3.0 -> v7.3.1</li>
<li>noUiSlider v15.7.2 -> v15.8.0</li>
<li>simplebar v6.2.6 -> v6.2.7</li>
<li>tensorflow v4.19.0 -> v4.20.0</li>
<li>tinymce v7.1.1 -> v7.1.2</li>
<li>video.js v8.14.0 -> v8.16.0</li>
<li>vue v3.4.27 -> v3.4.29</li>
<li>vue-router v4.3.2 -> v4.3.3</li>
<li>vue v3.3.8 -> v3.3.11 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1591">#1591</a>)</li>
<li>gsap v3.12.2 -> v3.12.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1592">#1592</a>)</li>
<li>font-awesome v6.4.2 -> v6.5.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1593">#1593</a>)</li>
<li>tinymce v6.7.3 -> v6.8.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1594">#1594</a>)</li>
<li>react-router v6.19.0 -> v6.20.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1595">#1595</a>)</li>
<li>animejs v3.2.1 -> v3.2.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1596">#1596</a>)</li>
<li>Swiper v11.0.4 -> v11.0.5 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1597">#1597</a>)</li>
<li>alpinejs v3.13.2 -> v3.13.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1598">#1598</a>)</li>
<li>swagger-ui v5.10.0 -> v5.10.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1599">#1599</a>)</li>
<li>p5.js v1.8.0 -> v1.9.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1600">#1600</a>)</li>
<li>tensorflow v4.13.0 -> v4.14.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1601">#1601</a>)</li>
<li>vue-i18n v9.7.0 -> v9.8.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1602">#1602</a>)</li>
<li>bootstrap-icons v1.11.1 -> v1.11.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1603">#1603</a>)</li>
<li>libphonenumber-js v1.10.49 -> v1.10.51 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1604">#1604</a>)</li>
<li>Chart.js v4.4.0 -> v4.4.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1605">#1605</a>)</li>
<li>video.js v8.6.1 -> v8.7.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1606">#1606</a>)</li>
<li>hls.js v1.4.12 -> v1.4.13 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1607">#1607</a>)</li>
<li>instantsearch.js v4.60.0 -> v4.62.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1608">#1608</a>)</li>
<li>mdb-ui-kit v7.1.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1609">#1609</a>)</li>
<li>redux v5.0.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1610">#1610</a>)</li>
<li>search-insights v2.11.0 -> v2.13.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1611">#1611</a>)</li>
<li>ngx-bootstrap v11.0.2 -> v12.0.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1612">#1612</a>)</li>
<li>algoliasearch v4.20.0 -> v4.21.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1613">#1613</a>)</li>
</ul>
</div>
<div id="generator-section">
@ -90,241 +88,6 @@
</div>
<div id="history"><span id="history-indicator">+</span> Previous Versions</div>
<div id="history-release-notes">
<p class='release-date'>2023-05-30 (v2.6.68)</p>
<p>Updated</p>
<ul>
<li>alpinejs v3.13.10 -> v3.14.0</li>
<li>axios v1.6.8 -> v1.7.2</li>
<li>bootstrap-table v1.22.5 -> v1.22.6</li>
<li>bulma v1.0.0 -> v1.0.1</li>
<li>bxslider v4.2.15 -> v4.2.17</li>
<li>dexie v4.0.4 -> v4.0.7</li>
<li>hls.js v1.5.8 -> v1.5.9</li>
<li>instantsearch.css v8.1.0 -> v8.2.0</li>
<li>instantsearch.js v4.68.0 -> v4.70.0</li>
<li>libphonenumber-js v1.10.62 -> v1.11.2</li>
<li>mdb-ui-kit v7.2.0 -> v7.3.0</li>
<li>noUiSlider v15.7.1 -> v15.7.2</li>
<li>p5.js v1.9.3 -> v1.9.4</li>
<li>react-intl v6.6.6 -> v6.6.8</li>
<li>react-router v6.23.0 -> v6.23.1</li>
<li>search-insights v2.13.0 -> v2.14.0</li>
<li>simplebar v6.2.5 -> v6.2.6</li>
<li>swagger-ui v5.17.3 -> v5.17.14</li>
<li>tinymce v7.0.1 -> v7.1.1</li>
<li>video.js v8.13.0 -> v8.14.0</li>
<li>vue v3.4.26 -> v3.4.27</li>
</ul>
<p class='release-date'>2023-05-06 (v2.6.67)</p>
<p>Updated</p>
<ul>
<li>alpinejs v3.13.8 -> v3.13.10</li>
<li>bootstrap-table v1.22.4 -> v1.22.5</li>
<li>dayjs v1.11.10 -> v1.11.11</li>
<li>feather-icons v4.29.1 -> v4.29.2</li>
<li>instantsearch.js v4.66.1 -> v4.68.0</li>
<li>jqueryui v1.13.2 -> v1.13.3</li>
<li>libphonenumber-js v1.10.60 -> v1.10.62</li>
<li>p5.js v1.9.2 -> v1.9.3</li>
<li>react v18.2.0 -> v18.3.1</li>
<li>react-dom v18.2.0 -> v18.3.1</li>
<li>react-intl v6.6.5 -> v6.6.6</li>
<li>react-router v6.22.3 -> v6.23.0</li>
<li>swagger-ui v5.15.1 -> v5.17.3</li>
<li>tensorflow v4.17.0 -> v4.19.0</li>
<li>video.js v8.11.8 -> v8.13.0</li>
<li>vue v3.4.21 -> v3.4.26</li>
<li>vue-i18n v9.12.0 -> v9.13.1</li>
<li>vue-router v4.3.0 -> v4.3.2</li>
</ul>
<p>Added</p>
<ul>
<li>twitter-bootstrap v5.1.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1624">#1624</a>)</li>
</ul>
<p>Improved</p>
<ul>
<li>Wildcard support extended in all lists (<a href="https://codeberg.org/nobody/LocalCDN/issues/1622">#1622</a>)</li>
<li>Extend statistics over the whole time range (<a href="https://codeberg.org/nobody/LocalCDN/issues/1626">#1626</a>)</li>
</ul>
<p>Fixed</p>
<ul>
<li>Welcome Page autoclose if check "Allow this extension to run in Private Windows" (<a href="https://codeberg.org/nobody/LocalCDN/issues/1625">#1625</a>)</li>
</ul>
<p class='release-date'>2023-04-13 (v2.6.66)</p>
<p>Updated</p>
<ul>
<li>tinymce v6.8.3 -> v7.0.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/fbd89e2d82c04df4591b7c0a67c8260251326574">fbd89e2d82</a>)</li>
<li>bulma v0.9.4 -> v1.0.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/225905ca68112ff1fc8a81c89a631480d062d42d">225905ca68</a>)</li>
<li>vanilla-lazyload v17.8.8 -> v19.1.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/5b24cdc41228ab6a478a572638e65b808aea4d7b">5b24cdc412</a>)</li>
<li>materialicons v141 -> v142 (<a href="https://codeberg.org/nobody/LocalCDN/commit/4e841ab63717633465f73d7afc880b93c5bbff57">4e841ab637</a>)</li>
<li>react-intl v6.6.2 -> v6.6.5 (<a href="https://codeberg.org/nobody/LocalCDN/commit/7aeb64677349de976244fc041d295219abd30a32">7aeb646773</a>)</li>
<li>font-awesome v6.5.1 -> v6.5.2 (<a href="https://codeberg.org/nobody/LocalCDN/commit/6b684648a94add0c3cd9aab66886bd38ec9cc312">6b684648a9</a>)</li>
<li>alpinejs v3.13.7 -> v3.13.8 (<a href="https://codeberg.org/nobody/LocalCDN/commit/8fa3d016a16c87d93da3ab10583c31b979354b87">8fa3d016a1</a>)</li>
<li>swagger-ui v5.12.0 -> v5.15.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/3d658a279456a89e325b93ca15eac9b19d1fbc37">3d658a2794</a>)</li>
<li>p5.js v1.9.1 -> v1.9.2 (<a href="https://codeberg.org/nobody/LocalCDN/commit/b5fc4e089e33e7438ddf2bbd26253400057271d2">b5fc4e089e</a>)</li>
<li>hls.js v1.5.7 -> v1.5.8 (<a href="https://codeberg.org/nobody/LocalCDN/commit/d5e06b9b10767b185162c90ab3300b4a485fc74a">d5e06b9b10</a>)</li>
<li>bootstrap-table v1.22.3 -> v1.22.4 (<a href="https://codeberg.org/nobody/LocalCDN/commit/870b08ba367975f88898ffc77983ab2e6785d6bc">870b08ba36</a>)</li>
<li>dexie v3.2.6 -> v4.0.4 (<a href="https://codeberg.org/nobody/LocalCDN/commit/34cb76848d2a5e924863811b514f73fbd97a70c4">34cb76848d</a>)</li>
<li>vue-i18n v9.10.2 -> v9.12.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/8cddef7544b81dd6120d8720eeccafbe693fe95c">8cddef7544</a>)</li>
<li>webrtc-adapter v8.2.3 -> v9.0.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/e2bd8ce3fac43d93a996adb7bd67f417e0e48792">e2bd8ce3fa</a>)</li>
<li>instantsearch.js v4.66.0 -> v4.66.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/ab082579dcec2ea633ccfc335177919dc7933abb">ab082579dc</a>)</li>
<li>libphonenumber-js v1.10.58 -> v1.10.60 (<a href="https://codeberg.org/nobody/LocalCDN/commit/3dcc7025e37ce011300bd1c26b0459c41d5b038f">3dcc7025e3</a>)</li>
<li>algoliasearch v4.22.1 -> v4.23.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/ace529316c88ba48d0ea5b3c9f00d44518c6f56d">ace529316c</a>)</li>
</ul>
<p>Improved</p>
<ul>
<li>highlight.js v7.x, v8.x, v9.x, v10.x -> v11.x (<a href="https://codeberg.org/nobody/LocalCDN/commit/4d38d04e17bbf2f44a1c986b790bfe4b1bdade20">4d38d04e17</a>)</li>
</ul>
<p>Removed</p>
<ul>
<li>FitText.js (<a href="https://codeberg.org/nobody/LocalCDN/commit/cc9dacbde6c1221eba09806b401a3313aba5bd7d">cc9dacbde6</a>)</li>
<li>angular-ui-select (<a href="https://codeberg.org/nobody/LocalCDN/commit/4e8cd7127f6704881ce7943a1690a10b69693c7c">4e8cd7127f</a>)</li>
<li>angular-ui-utils (<a href="https://codeberg.org/nobody/LocalCDN/commit/71f358392c6183a281fc7dc129cecabb914c8e0a">71f358392c</a>)</li>
<li>angular-stripe-checkout (<a href="https://codeberg.org/nobody/LocalCDN/commit/1211a9c43a39326152669d83ec36d819cc21fb50">1211a9c43a</a>)</li>
<li>d3-legend (<a href="https://codeberg.org/nobody/LocalCDN/commit/fb5a3f779b86b493dd71f0ba6899f2b9f17ac4f3">fb5a3f779b</a>)</li>
<li>drawer (<a href="https://codeberg.org/nobody/LocalCDN/commit/5df53e2ea2266130a76931aa30e46d73e22c6f5b">5df53e2ea2</a>)</li>
</ul>
<p class='release-date'>2023-03-17 (v2.6.65)</p>
<p>Updated</p>
<ul>
<li>d3 v7.8.5 -> v7.9.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/9096750ba29d9d103e1cdced53b394d718099d55">9096750ba2</a>)</li>
<li>axios v1.6.7 -> v1.6.8 (<a href="https://codeberg.org/nobody/LocalCDN/commit/76a887af6175959e15c2b3582f813e29c07198fd">76a887af61</a>)</li>
<li>socket.io v4.7.4 -> v4.7.5 (<a href="https://codeberg.org/nobody/LocalCDN/commit/1be054976b61d2c0ff25a296b4179746b9b43f33">1be054976b</a>)</li>
<li>react-router v6.22.2 -> v6.22.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/cf2cae09e4cca7a30be8295a51405a60fc0806e8">cf2cae09e4</a>)</li>
<li>video.js v8.11.5 -> v8.11.8 (<a href="https://codeberg.org/nobody/LocalCDN/commit/b98d1fd75368e2eca39f6674654c271594284f64">b98d1fd753</a>)</li>
<li>alpinejs v3.13.5 -> v3.13.7 (<a href="https://codeberg.org/nobody/LocalCDN/commit/5efa34e9327cc27c1b867fde651b80e44d3f66e6">5efa34e932</a>)</li>
<li>swagger-ui v5.11.8 -> v5.12.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/773beb1697b68d4a23c84ce84cc91d2e0c983f47">773beb1697</a>)</li>
<li>mdb-ui-kit v7.1.0 -> v7.2.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/e3ba1c8c32acb03f3c585e53ffbc0f154c3ef8db">e3ba1c8c32</a>)</li>
<li>p5.js v1.9.0 -> v1.9.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/9fd72962886333d710635f2af0fbbfb7ccee4ffd">9fd7296288</a>)</li>
<li>vue-i18n v9.9.1 -> v9.10.2 (<a href="https://codeberg.org/nobody/LocalCDN/commit/008db469fe79f9324b17c82f418c9e48614783bf">008db469fe</a>)</li>
<li>libphonenumber-js v1.10.57 -> v1.10.58 (<a href="https://codeberg.org/nobody/LocalCDN/commit/74dea23e1d8791f58b3c32da1835412afe03e39e">74dea23e1d</a>)</li>
</ul>
<p>Improved</p>
<ul>
<li>Support wildcard TLD in all lists (<a href="https://codeberg.org/nobody/LocalCDN/issues/1622">#1622</a>)</li>
<li>Fixed incorrect description in the settings (<a href="https://codeberg.org/nobody/LocalCDN/issues/1622">#1622</a>)</li>
</ul>
<p>Fixed</p>
<ul>
<li>docsify themes (<a href="https://codeberg.org/nobody/LocalCDN/issues/1623">#1623</a>)</li>
</ul>
<p class='release-date'>2023-02-29 (v2.6.64)</p>
<p>Updated</p>
<ul>
<li>vue v3.4.15 -> v3.4.21 (<a href="https://codeberg.org/nobody/LocalCDN/commit/e277722b22601b954d30033b187a53f066972962">e277722b22</a>)</li>
<li>tinymce v6.8.2 -> v6.8.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/c637d1b56e3cfe485cb035952960af80384b3b9e">c637d1b56e</a>)</li>
<li>twitter-bootstrap v5.3.2 -> v5.3.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/47afb3e6144fea91d8edd603bbae36d7e4849d6a">47afb3e614</a>)</li>
<li>react-router v6.22.0 -> v6.22.2 (<a href="https://codeberg.org/nobody/LocalCDN/commit/f99b07a6fd124913874778aaadb3ff246da7148f">f99b07a6fd</a>)</li>
<li>video.js v8.11.1 -> v8.11.5 (<a href="https://codeberg.org/nobody/LocalCDN/commit/093f9253e809f423dbb3b0e8eb9d9224d2b5c3e1">093f9253e8</a>)</li>
<li>backbone.js v1.5.0 -> v1.6.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/e38e56a473de4fac28a1338e2ba6fce7774ee5c7">e38e56a473</a>)</li>
<li>swagger-ui v5.11.2 -> v5.11.8 (<a href="https://codeberg.org/nobody/LocalCDN/commit/e2ff54ce1812eabfd2c28f2083d9a033cd28b4e1">e2ff54ce18</a>)</li>
<li>vue-router v4.2.5 -> v4.3.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/06c9f62631043ffd767fbc857f81ace0da80e4c1">06c9f62631</a>)</li>
<li>hls.js v1.5.3 -> v1.5.7 (<a href="https://codeberg.org/nobody/LocalCDN/commit/35b8e794034f303b3239a39201d89e6c44c9d7ac">35b8e79403</a>)</li>
<li>bootstrap-table v1.22.2 -> v1.22.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/353dde8cff797ef1a453661f894b33dd0ccea670">353dde8cff</a>)</li>
<li>dexie v3.2.4 -> v3.2.6 (<a href="https://codeberg.org/nobody/LocalCDN/commit/c4cb8b2b6b4938c40eccc6ad6118524b568b6acd">c4cb8b2b6b</a>)</li>
<li>instantsearch.js v4.64.2 -> v4.66.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/21dbfe807e137ed203ce2f5666e87d7699351f83">21dbfe807e</a>)</li>
<li>libphonenumber-js v1.10.55 -> v1.10.57 (<a href="https://codeberg.org/nobody/LocalCDN/commit/6a76aa6cf1d369949537b9e61bdf6cf798c50121">6a76aa6cf1</a>)</li>
<li>vanilla-lazyload v17.8.5 -> v17.8.8 (<a href="https://codeberg.org/nobody/LocalCDN/commit/eec43134f84bf8f40ac443f68a9202573a9bc247">eec43134f8</a>)</li>
<li>bootswatch v5.3.2 -> v5.3.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/856a849ebb17b64af6b0a4e173610ae4920e30cc">856a849ebb</a>)</li>
</ul>
<p class='release-date'>2023-02-04 (v2.6.63)</p>
<p>Updated</p>
<ul>
<li>materialicons v140 -> v141 (<a href="https://codeberg.org/nobody/LocalCDN/commit/6123be7478548b985cad5f28e1c25a1f191238be">6123be7478</a>)</li>
<li>gsap v3.12.4 -> v3.12.5 (<a href="https://codeberg.org/nobody/LocalCDN/commit/062a90bbdb8d0b8f25473fad4fe9305b89c7616f">062a90bbdb</a>)</li>
<li>react-intl v6.5.5 -> v6.6.2 (<a href="https://codeberg.org/nobody/LocalCDN/commit/057c9465ebc3a3db6414105c54e934bec999410f">057c9465eb</a>)</li>
<li>angular-translate v2.19.0 -> v2.19.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/8a58c9ca79e37be8f2128ce4740d8a55f795faeb">8a58c9ca79</a>)</li>
<li>angular-translate-loader-partial v2.19.0 -> v2.19.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/e906cdcd591da91bbd580536307378b13577e44a">e906cdcd59</a>)</li>
<li>vue v3.4.9 -> v3.4.15 (<a href="https://codeberg.org/nobody/LocalCDN/commit/e420da12433938427fb75655c1adef8ce63ed7cf">e420da1243</a>)</li>
<li>axios v1.6.5 -> v1.6.7 (<a href="https://codeberg.org/nobody/LocalCDN/commit/afb82f6ebc49163b14b92839e88673cdea45da8c">afb82f6ebc</a>)</li>
<li>react-router v6.21.1 -> v6.22.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/f2be418a43fa42330759d80fbac67e78a4705428">f2be418a43</a>)</li>
<li>video.js v8.9.0 -> v8.11.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/bab22c90f292b7e4edaf6b3986109b7a48534f65">bab22c90f2</a>)</li>
<li>alpinejs v3.13.3 -> v3.13.5 (<a href="https://codeberg.org/nobody/LocalCDN/commit/a73b3dbd14735e20a5392226a82b8100f99d6736">a73b3dbd14</a>)</li>
<li>swagger-ui v5.11.0 -> v5.11.2 (<a href="https://codeberg.org/nobody/LocalCDN/commit/c8cc450ce88bef045a1b2493b5086d9927e9fd31">c8cc450ce8</a>)</li>
<li>tensorflow v4.16.0 -> v4.17.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/ed51d96de8832f7ec80db1583d277c28c91b9716">ed51d96de8</a>)</li>
<li>hls.js v1.5.1 -> v1.5.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/1cd7e033fe402ed9d5b8be4cabc0d099ac4793c5">1cd7e033fe</a>)</li>
<li>vue-i18n v9.9.0 -> v9.9.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/986ce46187308b3db73f428ad82fe4dca366d43a">986ce46187</a>)</li>
<li>instantsearch.js v4.63.0 -> v4.64.2 (<a href="https://codeberg.org/nobody/LocalCDN/commit/a059ea04bd0d51b2cd21109af115033d391ea988">a059ea04bd</a>)</li>
<li>libphonenumber-js v1.10.53 -> v1.10.55 (<a href="https://codeberg.org/nobody/LocalCDN/commit/88be389f55e0f5f0f7f42d73bba75118d3e0606f">88be389f55</a>)</li>
<li>corejs-typeahead v1.3.3 -> v1.3.4 (<a href="https://codeberg.org/nobody/LocalCDN/commit/1ee357539007d3f7d6ee1801296570ab270b8b2f">1ee3575390</a>)</li>
</ul>
<p>Added</p>
<ul>
<li>supabase-js (<a href="https://codeberg.org/nobody/LocalCDN/issues/1619">#1619</a>)</li>
</ul>
<p>Remove</p>
<ul>
<li>SWFObject (<a href="https://codeberg.org/nobody/LocalCDN/commit/2f9bdcd6c09446a9f9ac6c56d0337da804ca6ffc">2f9bdcd6c0</a>)</li>
</ul>
<p>Mapping</p>
<ul>
<li>docsify -> cdn.jsdelivr.net (<a href="https://codeberg.org/nobody/LocalCDN/issues/1616">#1616</a>)</li>
<li>Font Awesome v4.7.0 woff -> woff2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1617">#1617</a>)</li>
</ul>
<p class='release-date'>2023-01-13 (v2.6.62)</p>
<p>Updated</p>
<ul>
<li>vue v3.3.13 -> v3.4.9 (<a href="https://codeberg.org/nobody/LocalCDN/commit/881b142f279f98bf3fb44a6e1728e8964bfd5bd6">881b142f27</a>)</li>
<li>axios v1.6.3 -> v1.6.5 (<a href="https://codeberg.org/nobody/LocalCDN/commit/de1450dec75d39aa0eacbd894c6cea9ff8ebb81b">de1450dec7</a>)</li>
<li>socket.io v4.7.2 -> v4.7.4 (<a href="https://codeberg.org/nobody/LocalCDN/commit/8d18fd35bac8db4c88b66307397865f0d754977e">8d18fd35ba</a>)</li>
<li>moment.js v2.30.0 -> v2.30.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/bad9334a5b6fde879053d54cd3efe6804abbcb6f">bad9334a5b</a>)</li>
<li>video.js v8.8.0 -> v8.9.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/c6583298f6a7475c89ff833b108cbc7b40911628">c6583298f6</a>)</li>
<li>swagger-ui v5.10.5 -> v5.11.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/945e841986ace53c6d00b5275e2a1b34dfe3d434">945e841986</a>)</li>
<li>tensorflow v4.15.0 -> v4.16.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/cb9783a10962dce6a331fdb307b895c3907a87fb">cb9783a109</a>)</li>
<li>hls.js v1.4.14 -> v1.5.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/4f8892857313d3d5f8dc0cfe6e593b9f70eb3289">4f88928573</a>)</li>
<li>bootstrap-table v1.22.1 -> v1.22.2 (<a href="https://codeberg.org/nobody/LocalCDN/commit/8bd3e388362ee56a8ee3ef305437f7e3aeff4193">8bd3e38836</a>)</li>
<li>vue-i18n v9.8.0 -> v9.9.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/01c9d7780500b7d09982fea46f7e1d6562500d4d">01c9d77805</a>)</li>
<li>bootstrap-icons v1.11.2 -> v1.11.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/a8c01e1308dff2363b0d19591d4303de49d41d88">a8c01e1308</a>)</li>
<li>algoliasearch v4.22.0 -> v4.22.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/5678f07e273576d41063cb4dc3d373acbcd59de1">5678f07e27</a>)</li>
</ul>
<p class='release-date'>2023-12-29 (v2.6.61)</p>
<p>Updated</p>
<ul>
<li>vue v3.3.11 -> v3.3.13 (<a href="https://codeberg.org/nobody/LocalCDN/commit/3a346eeba8cfd524722d578b3c80db6f313f39bd">3a346eeba8</a>)</li>
<li>axios v1.6.2 -> v1.6.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/cbb8f629fc85924d01fe0ac63a51748c5b780e44">cbb8f629fc</a>)</li>
<li>redux v5.0.0 -> v5.0.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/d0712af389b3856e64c3d9088b267322262ac486">d0712af389</a>)</li>
<li>react-router v6.20.1 -> v6.21.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/65dce2b6ee65c10aaef4da5bb262f83d016dc818">65dce2b6ee</a>)</li>
<li>moment.js v2.29.4 -> v2.30.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/e66966d8eb9d87a51e1c00c3dcadddf9a5e486b0">e66966d8eb</a>)</li>
<li>video.js v8.7.0 -> v8.8.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/eebd7895bcade4a18cf938a7f89f2530709af239">eebd7895bc</a>)</li>
<li>swagger-ui v5.10.3 -> v5.10.5 (<a href="https://codeberg.org/nobody/LocalCDN/commit/920adb917a1e9e008fc724486fe28c6d2998aaa8">920adb917a</a>)</li>
<li>tensorflow v4.14.0 -> v4.15.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/a42c8b360ab6cea91da9b62ce3ce78ffd392213d">a42c8b360a</a>)</li>
<li>gsap v3.12.3 -> v3.12.4 (<a href="https://codeberg.org/nobody/LocalCDN/commit/f5fe905889e4dee81ea7ac14ed2b62b9b228a5f8">f5fe905889</a>)</li>
<li>hls.js v1.4.13 -> v1.4.14 (<a href="https://codeberg.org/nobody/LocalCDN/commit/ba026ff85f839686d600984f7d93448ec1d22434">ba026ff85f</a>)</li>
<li>instantsearch.js v4.62.0 -> v4.63.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/ee0626a234185bfde6ce73349562e64725deb601">ee0626a234</a>)</li>
<li>libphonenumber-js v1.10.51 -> v1.10.53 (<a href="https://codeberg.org/nobody/LocalCDN/commit/1d5ec6cae0b566ea394b13a72f3a9a8bef6908d0">1d5ec6cae0</a>)</li>
<li>algoliasearch v4.21.0 -> v4.22.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/ce32d63913aeb5d66663034de7c3bb307a36b831">ce32d63913</a>)</li>
</ul>
<p>Improved</p>
<ul>
<li>Extend the Google Service check and also include subdomains (<a href="https://codeberg.org/nobody/LocalCDN/issues/1560">#1560</a>)</li>
</ul>
<p class='release-date'>2023-12-12 (v2.6.60)</p>
<p>Updated</p>
<ul>
<li>vue v3.3.8 -> v3.3.11 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1591">#1591</a>)</li>
<li>gsap v3.12.2 -> v3.12.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1592">#1592</a>)</li>
<li>font-awesome v6.4.2 -> v6.5.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1593">#1593</a>)</li>
<li>tinymce v6.7.3 -> v6.8.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1594">#1594</a>)</li>
<li>react-router v6.19.0 -> v6.20.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1595">#1595</a>)</li>
<li>animejs v3.2.1 -> v3.2.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1596">#1596</a>)</li>
<li>Swiper v11.0.4 -> v11.0.5 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1597">#1597</a>)</li>
<li>alpinejs v3.13.2 -> v3.13.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1598">#1598</a>)</li>
<li>swagger-ui v5.10.0 -> v5.10.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1599">#1599</a>)</li>
<li>p5.js v1.8.0 -> v1.9.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1600">#1600</a>)</li>
<li>tensorflow v4.13.0 -> v4.14.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1601">#1601</a>)</li>
<li>vue-i18n v9.7.0 -> v9.8.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1602">#1602</a>)</li>
<li>bootstrap-icons v1.11.1 -> v1.11.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1603">#1603</a>)</li>
<li>libphonenumber-js v1.10.49 -> v1.10.51 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1604">#1604</a>)</li>
<li>Chart.js v4.4.0 -> v4.4.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1605">#1605</a>)</li>
<li>video.js v8.6.1 -> v8.7.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1606">#1606</a>)</li>
<li>hls.js v1.4.12 -> v1.4.13 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1607">#1607</a>)</li>
<li>instantsearch.js v4.60.0 -> v4.62.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1608">#1608</a>)</li>
<li>mdb-ui-kit v7.1.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1609">#1609</a>)</li>
<li>redux v5.0.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1610">#1610</a>)</li>
<li>search-insights v2.11.0 -> v2.13.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1611">#1611</a>)</li>
<li>ngx-bootstrap v11.0.2 -> v12.0.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1612">#1612</a>)</li>
<li>algoliasearch v4.20.0 -> v4.21.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1613">#1613</a>)</li>
</ul>
<p class='release-date'>2023-11-19 (v2.6.59)</p>
<p>Updated</p>
<ul>

View File

@ -20,7 +20,7 @@
* Updates
*/
let updates = {};
var updates = {};
/**

View File

@ -9,6 +9,7 @@
<link rel="stylesheet" type="text/css" href="../style.css">
<link rel="stylesheet" type="text/css" href="../base.css">
<link rel="stylesheet" type="text/css" href="welcome.css">
<script src="../../core/constants.js"></script>
<script src="welcome.js"></script>
</head>
<body>
@ -17,7 +18,7 @@
<div class="notice">
<h2>What is LocalCDN?</h2>
<p>LocalCDN is a web browser extension that emulates Content Delivery Networks to improve your online privacy. It intercepts traffic, finds supported resources locally, and injects them into the environment. All of this happens automatically, so no prior configuration is required. Feel free to use one of our <a href="https://www.localcdn.org/test/" rel="nofollow noopener noreferrer">testing utilities</a> to find out if you are properly protected. For a good start there is a short <a href="https://www.localcdn.org/tutorial" rel="nofollow noopener noreferrer">tutorial</a> and our <a href="https://codeberg.org/nobody/LocalCDN/wiki" rel="nofollow noopener noreferrer">Wiki pages</a>. LocalCDN supports more than 100 Libraries and 26 CDNs!</p>
<p id="chromium-banner" hidden>Non-Firefox browsers do not support all features of LocalCDN. <a class="no-icon" href="../help/help.html#non-firefox">Read more</a></p>
<p id="chromium-banner">Non-Firefox browsers do not support all features of LocalCDN. <a class="no-icon" href="../help/help.html#non-firefox">Read more</a></p>
<a id="donate" class="no-icon" href="../donate/donate.html">If you like LocalCDN, I would be happy about a small donation.</a>
</div>
<div class="notice">

View File

@ -19,7 +19,7 @@
* Welcome
*/
let welcome = {};
var welcome = {};
/**
@ -27,7 +27,7 @@ let welcome = {};
*/
welcome._onDocumentLoaded = function () {
if (!window.location.href.startsWith('moz-extension')) {
if (!BrowserType.FIREFOX) {
document.getElementById('chromium-banner').style.display = 'block';
}
document.getElementById('open-settings').addEventListener('mouseup', function () { chrome.runtime.openOptionsPage(); });

View File

@ -0,0 +1,10 @@
/*!
* FitText.js 1.2
*
* Copyright 2011, Dave Rupert http://daverupert.com
* Released under the WTFPL license
* http://sam.zoy.org/wtfpl/
*
* Date: Thu May 05 14:23:00 2011 -0600
*/
(function(a){a.fn.fitText=function(d,b){var e=d||1,c=a.extend({minFontSize:Number.NEGATIVE_INFINITY,maxFontSize:Number.POSITIVE_INFINITY},b);return this.each(function(){var f=a(this);var g=function(){f.css("font-size",Math.max(Math.min(f.width()/(e*10),parseFloat(c.maxFontSize)),parseFloat(c.minFontSize)))};g();a(window).on("resize.fittext orientationchange.fittext",g)})}})(jQuery);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
(function(){"use strict";var e="stripe.checkout";var t="https://checkout.stripe.com/checkout.js";var n={address:["data-address","boolean"],alipay:["data-alipay","boolean-or-auto"],alipayReusable:["data-alipay-reusable","boolean"],allowRememberMe:["data-allow-remember-me","boolean"],amount:["data-amount","number"],billingAddress:["data-billing-address","boolean"],bitcoin:["data-bitcoin","boolean"],currency:["data-currency","string"],description:["data-description","string"],email:["data-email","string"],image:["data-image","string"],key:["data-key","string"],label:["data-label","string"],locale:["data-locale","string"],name:["data-name","string"],color:["data-color","string"],panelLabel:["data-panel-label","string"],shippingAddress:["data-shipping-address","boolean"],zipCode:["data-zip-code","boolean"]};var a;if(typeof module!=="undefined"&&typeof module.exports==="object"){a=require("angular");module.exports=e}else{a=window.angular}var o=a.extend;a.module(e,[]).directive("stripeCheckout",r).provider("StripeCheckout",i);r.$inject=["$parse","StripeCheckout"];function r(e,t){return{link:n};function n(n,a,o){var r;t.load().then(function(){r=t.configure(u(a))});a.on("click",function(){if(r)r.open(u(a)).then(function(t){var a=e(o.stripeCheckout)(n);if(typeof a==="function")a.apply(null,t)})})}}function i(){var e={};this.defaults=function(t){o(e,t)};this.load=function(e){return e.load()};this.load.$inject=["StripeCheckout"];this.$get=function(t,n){return new l(t,n,e)};this.$get.$inject=["$document","$q"]}function l(e,t,n){var a={};var r;this.configure=function(e){return new c(t,o({},n,a,e))};this.load=function(){if(!r)r=s(e,t);return r};this.defaults=function(e){o(a,e)}}function c(e,t){var n,a;var r=StripeCheckout.configure(o({},t,{token:function(e,o){if(t.token)t.token(e,o);a=true;n.resolve([e,o])},closed:function(){if(t.closed)t.closed();if(!a)n.reject()}}));this.open=function(t){n=e.defer();a=false;r.open(t);return n.promise};this.close=function(){a=false;r.close();if(t.closed)t.closed();if(n)n.reject()}}function u(e){var t,a,o,r={};for(t in n){if(!n.hasOwnProperty(t))continue;a=n[t];o=d(e.attr(a[0]),a[1]);if(o!=null)r[t]=o}return r}function s(e,n){var a=n.defer();var o=e[0];var r=o.createElement("script");r.src=t;r.onload=function(){a.resolve()};r.onreadystatechange=function(){var e=this.readyState;if(e==="loaded"||e==="complete")a.resolve()};r.onerror=function(){a.reject(new Error("Unable to load checkout.js"))};var i=o.getElementsByTagName("head")[0];i.appendChild(r);return a.promise}function d(e,t){if(t==="boolean"){return e&&e!=="false"}else if(t==="number"){return e&&Number(e)}else if(t==="boolean-or-auto"){if(e==="auto")return e;else return d(e,"boolean")}else{return e}}})();

View File

@ -1,6 +1,6 @@
/*!
* angular-translate - v2.19.1 - 2024-01-21
* angular-translate - v2.19.0 - 2021-09-02
*
* Copyright (c) 2024 The angular-translate team, Pascal Precht; Licensed MIT
* Copyright (c) 2021 The angular-translate team, Pascal Precht; Licensed MIT
*/
!function(t,e){"function"==typeof define&&define.amd?define([],function(){return e()}):"object"==typeof module&&module.exports?module.exports=e():e()}(0,function(){function t(){"use strict";function a(t,e,r){this.name=t,this.isActive=!0,this.tables={},this.priority=e||0,this.langPromises={},this.urlTemplate=r}a.prototype.parseUrl=function(t,e){return angular.isFunction(t)?t(this.name,e):t.replace(/\{part\}/g,this.name).replace(/\{lang\}/g,e)},a.prototype.getTable=function(e,t,r,a,n,i){var o=this,s=this.langPromises[e],l=t.defer(),u=function(t){o.tables[e]=t,l.resolve(t)},c=function(){l.reject(o.name)},p=function(){r(angular.extend({method:"GET",url:o.parseUrl(o.urlTemplate||n,e)},a)).then(function(t){u(t.data)},function(t){i?i(o.name,e,t).then(u,c):c()})};return this.tables[e]?l.resolve(this.tables[e]):(s?s.then(l.resolve,p):p(),this.langPromises[e]=l.promise),l.promise};var n={};function i(t){return Object.prototype.hasOwnProperty.call(n,t)}function f(t){return angular.isString(t)&&""!==t}function t(t){if(!f(t))throw new TypeError("Invalid type of a first argument, a non-empty string expected.");return i(t)&&n[t].isActive}function d(){var t=[];for(var e in n)n[e].isActive&&t.push(n[e]);return t.sort(function(t,e){return t.priority-e.priority}),t}this.addPart=function(t,e,r){if(!f(t))throw new TypeError("Couldn't add part, part name has to be a string!");return i(t)||(n[t]=new a(t,e,r)),n[t].isActive=!0,this},this.setPart=function(t,e,r){if(!f(t))throw new TypeError("Couldn't set part.`lang` parameter has to be a string!");if(!f(e))throw new TypeError("Couldn't set part.`part` parameter has to be a string!");if("object"!=typeof r||null===r)throw new TypeError("Couldn't set part. `table` parameter has to be an object!");return i(e)||(n[e]=new a(e),n[e].isActive=!1),n[e].tables[t]=r,this},this.deletePart=function(t){if(!f(t))throw new TypeError("Couldn't delete part, first arg has to be string.");return i(t)&&(n[t].isActive=!1),this},this.isPartAvailable=t,this.$get=["$rootScope","$injector","$q","$http","$log",function(o,s,l,u,c){var p=function(r){if(!f(r.key))throw new TypeError("Unable to load data, a key is not a non-empty string.");if(!f(r.urlTemplate)&&!angular.isFunction(r.urlTemplate))throw new TypeError("Unable to load data, a urlTemplate is not a non-empty string or not a function.");var e=r.loadFailureHandler;if(void 0!==e){if(!angular.isString(e))throw new Error("Unable to load data, a loadFailureHandler is not a string.");e=s.get(e)}var a=[],t=d();angular.forEach(t,function(t){a.push(t.getTable(r.key,l,u,r.$http,r.urlTemplate,e)),t.urlTemplate=t.urlTemplate||r.urlTemplate});var n=!1,i=o.$on("$translatePartialLoaderStructureChanged",function(){n=!0});return l.all(a).then(function(){if(i(),n){if(!r.__retries)return r.__retries=(r.__retries||0)+1,p(r);c.warn("The partial loader has detected a multiple structure change (with addPort/removePart) while loading translations. You should consider using promises of $translate.use(lang) and $translate.refresh(). Also parts should be added/removed right before an explicit refresh if possible.")}var e={};return t=d(),angular.forEach(t,function(t){!function t(e,r){for(var a in r)r[a]&&r[a].constructor&&r[a].constructor===Object?(e[a]=e[a]||{},t(e[a],r[a])):e[a]=r[a];return e}(e,t.tables[r.key])}),e},function(){return i(),l.reject(r.key)})};return p.addPart=function(t,e,r){if(!f(t))throw new TypeError("Couldn't add part, first arg has to be a string");return i(t)?n[t].isActive||(n[t].isActive=!0,o.$emit("$translatePartialLoaderStructureChanged",t)):(n[t]=new a(t,e,r),o.$emit("$translatePartialLoaderStructureChanged",t)),p},p.deletePart=function(r,t){if(!f(r))throw new TypeError("Couldn't delete part, first arg has to be string");if(void 0===t)t=!1;else if("boolean"!=typeof t)throw new TypeError("Invalid type of a second argument, a boolean expected.");if(i(r)){var e=n[r].isActive;if(t){var a=s.get("$translate").loaderCache();"string"==typeof a&&(a=s.get(a)),"object"==typeof a&&angular.forEach(n[r].tables,function(t,e){a.remove(n[r].parseUrl(n[r].urlTemplate,e))}),delete n[r]}else n[r].isActive=!1;e&&o.$emit("$translatePartialLoaderStructureChanged",r)}return p},p.isPartLoaded=function(t,e){return angular.isDefined(n[t])&&angular.isDefined(n[t].tables[e])},p.getRegisteredParts=function(){var e=[];return angular.forEach(n,function(t){t.isActive&&e.push(t.name)}),e},p.isPartAvailable=t,p}]}return angular.module("pascalprecht.translate").provider("$translatePartialLoader",t),t.displayName="$translatePartialLoader","pascalprecht.translate"});

View File

@ -1,6 +1,6 @@
/*!
* angular-translate - v2.19.1 - 2024-01-21
* angular-translate - v2.19.0 - 2021-09-02
*
* Copyright (c) 2024 The angular-translate team, Pascal Precht; Licensed MIT
* Copyright (c) 2021 The angular-translate team, Pascal Precht; Licensed MIT
*/
!function(n,t){"function"==typeof define&&define.amd?define([],function(){return t()}):"object"==typeof module&&module.exports?module.exports=t():t()}(0,function(){function n(t){"use strict";return function(n){t.warn("Translation for "+n+" doesn't exist")}}return n.$inject=["$log"],angular.module("pascalprecht.translate").factory("$translateMissingTranslationHandlerLog",n),n.displayName="$translateMissingTranslationHandlerLog","pascalprecht.translate"});

Some files were not shown because too many files have changed in this diff Show More