Merge remote-tracking branch 'origin/develop'

This commit is contained in:
nobody 2022-05-29 07:36:25 +02:00
commit a1769e8f4f
No known key found for this signature in database
GPG Key ID: 8F6DE3D614FCFD7A
147 changed files with 1240 additions and 364 deletions

View File

@ -16,6 +16,7 @@ LocalCDN is a fork of Decentraleyes and a web browser extension that emulates Co
* AngularJS, AngularJS-Animate, AngularJS-Sanitize, AngularJS-Cookies and AngularJS-Touch <img width="15px" src="https://www.localcdn.org/img/icon-firefox-25.png"> <img width="15px" src="https://www.localcdn.org/img/icon-chrome-25.png">
* React, Vue.js, Chart.js and many other frameworks/libraries <img width="15px" src="https://www.localcdn.org/img/icon-firefox-25.png"> <img width="15px" src="https://www.localcdn.org/img/icon-chrome-25.png">
* MathJax (minimal) <img width="15px" src="https://www.localcdn.org/img/icon-firefox-25.png"> <img width="15px" src="https://www.localcdn.org/img/icon-chrome-25.png">
* TinyMCE (without plugins) <img width="15px" src="https://www.localcdn.org/img/icon-firefox-25.png"> <img width="15px" src="https://www.localcdn.org/img/icon-chrome-25.png">
* Internal statistics about CDNs and frameworks (day, week, month, year) <img width="15px" src="https://www.localcdn.org/img/icon-firefox-25.png"> <img width="15px" src="https://www.localcdn.org/img/icon-chrome-25.png">
* Export/Import your config (day, week, month, year) <img width="15px" src="https://www.localcdn.org/img/icon-firefox-25.png"> <img width="15px" src="https://www.localcdn.org/img/icon-chrome-25.png">
* Prepared rules for uBlock Origin, uMatrix, AdGuard and NoScript <img width="15px" src="https://www.localcdn.org/img/icon-firefox-25.png"> <img width="15px" src="https://www.localcdn.org/img/icon-chrome-25.png">

View File

@ -131,14 +131,14 @@ 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.13.0/algoliasearch.umd.min.js
https://cdnjs.cloudflare.com/ajax/libs/algoliasearch/4.13.1/algoliasearch.umd.min.js
https://cdnjs.cloudflare.com/ajax/libs/alpinejs/2.8.2/alpine.js
https://cdnjs.cloudflare.com/ajax/libs/alpinejs/3.10.2/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
https://cdnjs.cloudflare.com/ajax/libs/angularjs-slider/6.7.0/rzslider.min.js
https://cdnjs.cloudflare.com/ajax/libs/angularjs-slider/7.0.1/rzslider.min.js
https://cdnjs.cloudflare.com/ajax/libs/angularjs-slider/7.1.0/rzslider.min.js
https://cdnjs.cloudflare.com/ajax/libs/angularjs-toaster/0.4.18/toaster.min.css
https://cdnjs.cloudflare.com/ajax/libs/angularjs-toaster/0.4.18/toaster.min.js
https://cdnjs.cloudflare.com/ajax/libs/angularjs-toaster/1.2.0/toaster.min.css
@ -184,7 +184,7 @@ 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
https://cdnjs.cloudflare.com/ajax/libs/bluebird/3.7.2/bluebird.min.js
https://cdnjs.cloudflare.com/ajax/libs/bodymovin/4.13.0/bodymovin.min.js
https://cdnjs.cloudflare.com/ajax/libs/bodymovin/5.9.3/lottie.min.js
https://cdnjs.cloudflare.com/ajax/libs/bodymovin/5.9.4/lottie.min.js
https://cdnjs.cloudflare.com/ajax/libs/bootbox.js/4.4.0/bootbox.min.js
https://cdnjs.cloudflare.com/ajax/libs/bootbox.js/5.5.3/bootbox.min.js
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-3-typeahead/4.0.2/bootstrap3-typeahead.min.js
@ -276,8 +276,8 @@ https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/locales/bootst
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.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.8.1/font/bootstrap-icons.min.css
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.8.1/font/fonts/bootstrap-icons.woff
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.8.3/font/bootstrap-icons.min.css
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.8.3/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.1/js/bootstrap-multiselect.min.js
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.13.18/css/bootstrap-select.min.css
@ -286,8 +286,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.20.0/bootstrap-table.min.css
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.20.0/bootstrap-table.min.js
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.20.2/bootstrap-table.min.css
https://cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.20.2/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
@ -299,7 +299,7 @@ https://cdnjs.cloudflare.com/ajax/libs/bootswatch/4.6.1/flatly/bootstrap.min.css
https://cdnjs.cloudflare.com/ajax/libs/bootswatch/5.1.3/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/0.9.3/css/bulma.min.css
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
@ -307,7 +307,7 @@ https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.4/Chart.min.css
https://cdnjs.cloudflare.com/ajax/libs/chosen/1.8.7/chosen.jquery.min.js
https://cdnjs.cloudflare.com/ajax/libs/clappr/0.4.7/clappr.min.js
https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/1.7.1/clipboard.min.js
https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.10/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.1/typeahead.bundle.min.js
@ -317,7 +317,7 @@ 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.4.4/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.1/dayjs.min.js
https://cdnjs.cloudflare.com/ajax/libs/dayjs/1.11.2/dayjs.min.js
https://cdnjs.cloudflare.com/ajax/libs/dexie/3.2.2/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
@ -1152,9 +1152,9 @@ https://cdnjs.cloudflare.com/ajax/libs/hls.js/0.14.17/hls.min.js
https://cdnjs.cloudflare.com/ajax/libs/hls.js/1.1.5/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.40.5/instantsearch.production.min.js
https://cdnjs.cloudflare.com/ajax/libs/instantsearch.js/4.40.6/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.5.1/js/iziModal.min.js
https://cdnjs.cloudflare.com/ajax/libs/izimodal/1.6.0/js/iziModal.min.js
https://cdnjs.cloudflare.com/ajax/libs/jasny-bootstrap/3.1.3/css/jasny-bootstrap.min.css
https://cdnjs.cloudflare.com/ajax/libs/jasny-bootstrap/3.1.3/js/jasny-bootstrap.min.js
https://cdnjs.cloudflare.com/ajax/libs/jasny-bootstrap/4.0.0/css/jasny-bootstrap.min.css
@ -1240,7 +1240,7 @@ https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.8.0/leaflet.css
https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.8.0/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.9.52/libphonenumber-js.min.js
https://cdnjs.cloudflare.com/ajax/libs/libphonenumber-js/1.10.6/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.3/js/lightbox.min.js
https://cdnjs.cloudflare.com/ajax/libs/lightcase/2.5.0/css/lightcase.min.css
@ -1257,7 +1257,7 @@ 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/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.0/markdown-it.min.js
https://cdnjs.cloudflare.com/ajax/libs/markdown-it/13.0.1/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
https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.8/css/materialize.min.css
@ -1330,15 +1330,15 @@ https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/jax/output/HTML-CSS/fonts/T
https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/jax/output/HTML-CSS/imageFonts.js
https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/jax/output/HTML-CSS/jax.js
https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js
https://cdnjs.cloudflare.com/ajax/libs/mathjax/3.2.0/es5/output/chtml/fonts/woff-v2/MathJax_Main-Regular.woff
https://cdnjs.cloudflare.com/ajax/libs/mathjax/3.2.0/es5/output/chtml/fonts/woff-v2/MathJax_Zero.woff
https://cdnjs.cloudflare.com/ajax/libs/mathjax/3.2.0/es5/tex-mml-chtml.js
https://cdnjs.cloudflare.com/ajax/libs/mathjax/3.2.1/es5/output/chtml/fonts/woff-v2/MathJax_Main-Regular.woff
https://cdnjs.cloudflare.com/ajax/libs/mathjax/3.2.1/es5/output/chtml/fonts/woff-v2/MathJax_Zero.woff
https://cdnjs.cloudflare.com/ajax/libs/mathjax/3.2.1/es5/tex-mml-chtml.js
https://cdnjs.cloudflare.com/ajax/libs/mdbootstrap/4.20.0/css/mdb.min.css
https://cdnjs.cloudflare.com/ajax/libs/mdbootstrap/4.20.0/js/mdb.min.js
https://cdnjs.cloudflare.com/ajax/libs/mdb-ui-kit/3.11.0/mdb.min.css
https://cdnjs.cloudflare.com/ajax/libs/mdb-ui-kit/3.11.0/mdb.min.js
https://cdnjs.cloudflare.com/ajax/libs/mdb-ui-kit/4.0.0/mdb.min.css
https://cdnjs.cloudflare.com/ajax/libs/mdb-ui-kit/4.0.0/mdb.min.js
https://cdnjs.cloudflare.com/ajax/libs/mdb-ui-kit/4.1.0/mdb.min.css
https://cdnjs.cloudflare.com/ajax/libs/mdb-ui-kit/4.1.0/mdb.min.js
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
@ -1346,7 +1346,7 @@ https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.3/moment-with-locales.min.
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.5.1/nouislider.min.js
https://cdnjs.cloudflare.com/ajax/libs/noUiSlider/15.6.0/nouislider.min.js
https://cdnjs.cloudflare.com/ajax/libs/nvd3/1.8.6/nv.d3.min.css
https://cdnjs.cloudflare.com/ajax/libs/nvd3/1.8.6/nv.d3.min.js
https://cdnjs.cloudflare.com/ajax/libs/oclazyload/1.1.0/ocLazyLoad.min.js
@ -1434,8 +1434,8 @@ https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.14.0/umd/react-dom.productio
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.1.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.0.1/react-redux.min.js
https://cdnjs.cloudflare.com/ajax/libs/react-router/5.3.1/react-router.min.js
https://cdnjs.cloudflare.com/ajax/libs/react-redux/8.0.2/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.3.0/react-router.production.min.js
https://cdnjs.cloudflare.com/ajax/libs/redux/4.2.0/redux.min.js
https://cdnjs.cloudflare.com/ajax/libs/rickshaw/1.7.1/rickshaw.min.css
@ -1631,8 +1631,8 @@ https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.4.1//themes/material/assets
https://cdnjs.cloudflare.com/ajax/libs/showdown/0.5.1/showdown.min.js
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.6/simplebar.min.css
https://cdnjs.cloudflare.com/ajax/libs/simplebar/5.3.6/simplebar.min.js
https://cdnjs.cloudflare.com/ajax/libs/simplebar/5.3.8/simplebar.min.css
https://cdnjs.cloudflare.com/ajax/libs/simplebar/5.3.8/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
@ -1647,7 +1647,7 @@ https://cdnjs.cloudflare.com/ajax/libs/slider-pro/1.6.0/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.5.0/socket.io.min.js
https://cdnjs.cloudflare.com/ajax/libs/socket.io/4.5.1/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
@ -1663,6 +1663,53 @@ 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/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
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/skins/content/dark/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/skins/content/default/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/skins/content/document/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/skins/content/writer/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/skins/ui/oxide/content.inline.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/skins/ui/oxide/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/skins/ui/oxide/content.mobile.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/skins/ui/oxide-dark/content.inline.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/skins/ui/oxide-dark/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/skins/ui/oxide-dark/content.mobile.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/skins/ui/oxide-dark/skin.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/skins/ui/oxide-dark/skin.mobile.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/skins/ui/oxide-dark/skin.shadowdom.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/skins/ui/oxide/skin.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/skins/ui/oxide/skin.mobile.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/5.10.5/skins/ui/oxide/skin.shadowdom.min.css
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/6.0.3/icons/default/icons.min.js
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/models/dom/model.min.js
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/content/dark/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/content/default/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/content/document/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/content/tinymce-5/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/content/tinymce-5-dark/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/content/writer/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/ui/oxide/content.inline.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/ui/oxide/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/ui/oxide-dark/content.inline.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/ui/oxide-dark/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/ui/oxide-dark/skin.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/ui/oxide-dark/skin.shadowdom.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/ui/oxide/skin.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/ui/oxide/skin.shadowdom.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/ui/tinymce-5/content.inline.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/ui/tinymce-5/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/ui/tinymce-5-dark/content.inline.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/ui/tinymce-5-dark/content.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/ui/tinymce-5-dark/skin.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/ui/tinymce-5-dark/skin.shadowdom.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/ui/tinymce-5/skin.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/skins/ui/tinymce-5/skin.shadowdom.min.css
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/themes/silver/theme.min.js
https://cdnjs.cloudflare.com/ajax/libs/tinymce/6.0.3/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
@ -1704,11 +1751,11 @@ https://cdnjs.cloudflare.com/ajax/libs/video.js/5.20.5/video-js.min.css
https://cdnjs.cloudflare.com/ajax/libs/video.js/5.20.5/video.min.js
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.19.2/video-js.min.css
https://cdnjs.cloudflare.com/ajax/libs/video.js/7.19.2/video.min.js
https://cdnjs.cloudflare.com/ajax/libs/vue/3.2.33/vue.global.prod.js
https://cdnjs.cloudflare.com/ajax/libs/video.js/7.20.0/video-js.min.css
https://cdnjs.cloudflare.com/ajax/libs/video.js/7.20.0/video.min.js
https://cdnjs.cloudflare.com/ajax/libs/vue/3.2.36/vue.global.prod.js
https://cdnjs.cloudflare.com/ajax/libs/vue-i18n/8.27.1/vue-i18n.min.js
https://cdnjs.cloudflare.com/ajax/libs/vue-i18n/9.1.9/vue-i18n.cjs.min.js
https://cdnjs.cloudflare.com/ajax/libs/vue-i18n/9.1.10/vue-i18n.cjs.min.js
https://cdnjs.cloudflare.com/ajax/libs/vuex/3.6.2/vuex.min.js
https://cdnjs.cloudflare.com/ajax/libs/vuex/4.0.2/vuex.cjs.min.js
https://cdnjs.cloudflare.com/ajax/libs/waypoints/4.0.1/jquery.waypoints.min.js
@ -1732,7 +1779,7 @@ 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/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/chart.js@3.7.1/dist/chart.min.js
https://cdn.jsdelivr.net/npm/chart.js@3.8.0/dist/chart.min.js
https://cdn.jsdelivr.net/npm/docsify-themeable@0.8.6/dist/css/theme-defaults.css
https://cdn.jsdelivr.net/npm/docsify-themeable@0.8.6/dist/css/theme-simple.css
https://cdn.jsdelivr.net/npm/docsify-themeable@0.8.6/dist/css/theme-simple-dark.css
@ -1757,15 +1804,15 @@ https://cdn.jsdelivr.net/npm/@findify/bundle@6.9.15/dist/styles.css
https://cdn.jsdelivr.net/npm/@findify/bundle@6.9.15/dist/vendors~components~initializer.js
https://cdn.jsdelivr.net/npm/@findify/bundle@6.9.15/dist/vendors~initializer.js
https://cdn.jsdelivr.net/npm/@findify/bundle@6.9.15/dist/vendors~sentry.js
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.37/dist/autocomplete.js
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.37/dist/bundle.js
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.37/dist/initializer.js
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.37/dist/polyfill.js
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.37/dist/raw.css
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.37/dist/recommendation.js
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.37/dist/search.js
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.37/dist/sentry.js
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.37/dist/styles.css
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.43/dist/autocomplete.js
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.43/dist/bundle.js
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.43/dist/initializer.js
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.43/dist/polyfill.js
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.43/dist/raw.css
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.43/dist/recommendation.js
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.43/dist/search.js
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.43/dist/sentry.js
https://cdn.jsdelivr.net/npm/@findify/bundle@7.1.43/dist/styles.css
https://cdn.jsdelivr.net/npm/instantsearch.css@7.4.5/themes/algolia-min.css
https://cdn.jsdelivr.net/npm/leaflet.featuregroup.subgroup@1.0.2/dist/leaflet.featuregroup.subgroup.js
https://cdn.jsdelivr.net/npm/ngx-bootstrap@6.2.0/datepicker/bs-datepicker.css
@ -1784,10 +1831,10 @@ https://cdn.jsdelivr.net/npm/swiper@6.8.4/swiper-bundle.min.css
https://cdn.jsdelivr.net/npm/swiper@6.8.4/swiper-bundle.min.js
https://cdn.jsdelivr.net/npm/swiper@7.4.1/swiper-bundle.min.css
https://cdn.jsdelivr.net/npm/swiper@7.4.1/swiper-bundle.min.js
https://cdn.jsdelivr.net/npm/swiper@8.1.4/swiper-bundle.min.css
https://cdn.jsdelivr.net/npm/swiper@8.1.4/swiper-bundle.min.js
https://cdn.jsdelivr.net/npm/swiper@8.1.6/swiper-bundle.min.css
https://cdn.jsdelivr.net/npm/swiper@8.1.6/swiper-bundle.min.js
https://cdn.jsdelivr.net/npm/urlize.js/urlize.js
https://cdn.jsdelivr.net/npm/vanilla-lazyload@17.8.1/dist/lazyload.min.js
https://cdn.jsdelivr.net/npm/vanilla-lazyload@17.8.2/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
@ -1796,14 +1843,14 @@ https://cdn.jsdelivr.net/npm/vue@1.0.28/dist/vue.min.js
https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.min.js
https://cdn.jsdelivr.net/npm/vue-match-media@1.0.3/dist/index.min.js
https://code.createjs.com/1.0.0/createjs.min.js
https://fonts.gstatic.com/s/materialiconsoutlined/v103/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUce.woff2
https://fonts.gstatic.com/s/materialiconsround/v102/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flwmP.woff2
https://fonts.gstatic.com/s/materialiconssharp/v103/oPWQ_lt5nv4pWNJpghLP75WiFR4kLh3kvmvR.woff2
https://fonts.gstatic.com/s/materialiconstwotone/v106/hESh6WRmNCxEqUmNyh3JDeGxjVVyMg4tHGctNCu0.woff2
https://fonts.gstatic.com/s/materialicons/v128/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2
https://fonts.gstatic.com/s/materialiconsoutlined/v104/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUce.woff2
https://fonts.gstatic.com/s/materialiconsround/v103/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flwmP.woff2
https://fonts.gstatic.com/s/materialiconssharp/v104/oPWQ_lt5nv4pWNJpghLP75WiFR4kLh3kvmvR.woff2
https://fonts.gstatic.com/s/materialiconstwotone/v107/hESh6WRmNCxEqUmNyh3JDeGxjVVyMg4tHGctNCu0.woff2
https://fonts.gstatic.com/s/materialicons/v129/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.19.3/dist/jquery.validate.min.js
https://raw.githubusercontent.com/jquery-validation/jquery-validation/1.19.4/dist/jquery.validate.min.js
https://raw.githubusercontent.com/pagekit/vue-resource/1.5.3/dist/vue-resource.min.js
https://raw.githubusercontent.com/Templarian/MaterialDesign-Webfont/v2.8.94/css/materialdesignicons.min.css
https://raw.githubusercontent.com/Templarian/MaterialDesign-Webfont/v2.8.94/fonts/materialdesignicons-webfont.woff2

View File

@ -100,11 +100,11 @@
"description": "Invert HTML filter"
},
"negateHtmlFilterListDescription": {
"message": "",
"message": "Tuto možnost povolte, chcete-li vždy použít filtr HTML. Domény v seznamu pak budou ignorovány. Pokud je tato možnost zakázána, filtr HTML se použije pouze na domény v seznamu.",
"description": "Enable this option to always apply the HTML filter. The domains in the list will be ignored then. If this option is disabled, the HTML filter is only applied to domains in the list."
},
"negateHtmlFilterListWarning": {
"message": "",
"message": "Tato funkce může poškodit webové stránky. Více informací najdete ve Wiki.",
"description": "This function can break websites. Please note the information on the Wiki page."
},
"htmlFilterDomainsTitleExclude": {
@ -112,7 +112,7 @@
"description": "Do not apply HTML filter to these domains:"
},
"htmlFilterDomainsDescription": {
"message": "",
"message": "Zadejte domény, které má filtr HTML zpracovávat nebo ignorovat. Na každém řádku uveďte jednu položku.",
"description": "Enter the domains to be handled or ignored by the HTML filter. One entry per line."
},
"htmlFilterDomainsTitleInclude": {
@ -124,7 +124,7 @@
"description": "Block Google Fonts"
},
"blockGoogleFontsDescription": {
"message": "",
"message": "Pokud jsou požadavky na chybějící prostředky povoleny, připojení k \"fonts.googleapis.com\" nejsou blokována. Povolením této možnosti tyto požadavky zablokujete.",
"description": "If requests for missing resources are allowed, connections to \"fonts.googleapis.com\" are not blocked. Enable this option to block these requests."
},
"chooseIconStyle": {
@ -176,7 +176,7 @@
"description": "Are you sure you want to delete all the statistics?"
},
"labelDomainsAllowlistGoogleFonts": {
"message": "",
"message": "Tyto domény mohou načítat písma Google. Jedna položka na řádek.",
"description": "These domains are allowed to load Google Fonts. One entry per line."
},
"btnGeneral": {
@ -256,11 +256,11 @@
"description": "beta"
},
"changeBadgeColorMissingResourcesTitle": {
"message": "",
"message": "Zobrazovat chybějící zdroje na ikoně",
"description": "Indicate missing resources on the icon"
},
"changeBadgeColorMissingResourcesDescription": {
"message": "",
"message": "Změňit barvu odznaku, pokud chybí zdroje.",
"description": "Change the badge color if resources are missing."
},
"titleHelp": {
@ -284,7 +284,7 @@
"description": "Some websites look strange or are not easy to use"
},
"helpBlockGoogleFontsTitle": {
"message": "",
"message": "Proč existuje možnost \"Blokovat písma Google\"?",
"description": "Why is there a »Block Google Fonts« option?"
},
"helpStatisticsTitle": {
@ -292,7 +292,7 @@
"description": "What about the statistics? Is anything transferred to any servers?"
},
"helpWhatWillBeSynchronizedTitle": {
"message": "",
"message": "Co se bude synchronizovat, když jako typ úložiště vyberu \"synchronizovat\"?",
"description": "What will be synchronized when I select »sync« as storage type?"
},
"helpBrowserCompatibilityTitle": {
@ -300,7 +300,7 @@
"description": "Browser compatibility"
},
"helpIntroductionDescription": {
"message": "",
"message": "LocalCDN je rozšíření webového prohlížeče, které emuluje sítě pro doručování obsahu a zlepšuje tak vaše soukromí na internetu. Zachytí provoz, lokálně vyhledá podporované frameworky/knihovny a vloží je do webové stránky. Neváhejte použít následující testovací nástroj, abyste zjistili, zda jste řádně chráněni. Další informace naleznete v návodu nebo na našich stránkách Wiki.",
"description": "LocalCDN is a web browser extension that emulates Content Delivery Networks to improve your online privacy. It intercepts traffic, finds supported frameworks/libraries locally, and injects them into the website. Feel free to use the following testing utility to find out if you are properly protected. For more information read the tutorial or our Wiki pages."
},
"helpLinkTestUtility": {
@ -316,7 +316,7 @@
"description": "Wiki pages"
},
"helpHtmlFilterDescription": {
"message": "",
"message": "Ve většině případů může LocalCDN snadno nahradit vložená rozhraní a zlepšit soukromí. V některých případech se tomu může webová stránka pokusit zabránit nastavením určitých možností ve zdrojovém kódu HTML. LocalCDN přečte zdrojový kód HTML před jeho zobrazením v prohlížeči a tyto části odstraní (červeně).",
"description": "In most cases LocalCDN can easily replace embedded frameworks and improves privacy. In some cases the website may try to prevent this by setting certain options in the HTML source code. LocalCDN reads the HTML source code before it is displayed in the browser and removes these part (red)."
},
"helpHtmlFilterBefore": {

View File

@ -284,55 +284,55 @@
"description": "Some websites look strange or are not easy to use"
},
"helpBlockGoogleFontsTitle": {
"message": "",
"message": "Zašto postoji opcija „Blokiraj Google fontove”?",
"description": "Why is there a »Block Google Fonts« option?"
},
"helpStatisticsTitle": {
"message": "",
"message": "Što je sa statistikom? Prenosi li se išta na bilo koje poslužitelje?",
"description": "What about the statistics? Is anything transferred to any servers?"
},
"helpWhatWillBeSynchronizedTitle": {
"message": "",
"message": "Što će se sinkronizirati kad odaberem „sinkronizacija” kao vrstu spremanja?",
"description": "What will be synchronized when I select »sync« as storage type?"
},
"helpBrowserCompatibilityTitle": {
"message": "",
"message": "Kompatibilnost s preglednikom",
"description": "Browser compatibility"
},
"helpIntroductionDescription": {
"message": "",
"message": "LocalCDN je proširenje web-preglednika koje oponaša mreže za isporuku sadržaja (CDN) kako bi se poboljšala tvoja privatnost na mreži. Presreće promet, lokalno pronalazi podržana okruženja/biblioteke i umeće ih u web-stranicu. Slobodno koristi sljedeći uslužni program za testiranje zaštićenosti. Za više informacija pročitaj vježbe ili naše Wiki stranice.",
"description": "LocalCDN is a web browser extension that emulates Content Delivery Networks to improve your online privacy. It intercepts traffic, finds supported frameworks/libraries locally, and injects them into the website. Feel free to use the following testing utility to find out if you are properly protected. For more information read the tutorial or our Wiki pages."
},
"helpLinkTestUtility": {
"message": "",
"message": "Uslužni program za testiranje",
"description": "Testing utility"
},
"helpLinkTutorial": {
"message": "",
"message": "Vježbe",
"description": "Tutorial"
},
"helpLinkWikiPages": {
"message": "",
"message": "Wiki stranice",
"description": "Wiki pages"
},
"helpHtmlFilterDescription": {
"message": "",
"message": "U većini slučajeva LocalCDN može lako zamijeniti ugrađena okruženja i poboljšava privatnost. U nekim slučajevima web-mjesto može to pokušati spriječiti postavljanjem određenih opcija u izvornom HTML-kodu. LocalCDN čita izvorni HTML-kod prije nego što se prikaže u pregledniku i uklanja ovaj dio (crveni).",
"description": "In most cases LocalCDN can easily replace embedded frameworks and improves privacy. In some cases the website may try to prevent this by setting certain options in the HTML source code. LocalCDN reads the HTML source code before it is displayed in the browser and removes these part (red)."
},
"helpHtmlFilterBefore": {
"message": "",
"message": "HTML filtar uklanja crvene znakove iz ovog primjera:",
"description": "The HTML filter removes the red characters from this example:"
},
"helpHtmlFilterAfter": {
"message": "",
"message": "Rezultat tada izgleda ovako:",
"description": "The result then looks like this:"
},
"helpHtmlFilterWhyTitle": {
"message": "",
"message": "Zašto je potrebno ukloniti atribute crossorigin i integrity?",
"description": "Why is it necessary to remove crossorigin and integrity attributes?"
},
"helpHtmlFilterCrossorigin": {
"message": "",
"message": "Atribut crossorigin sprečava zamjenu jer odredište ne odgovara traženom.",
"description": "The crossorigin attribute prevents the replacement because the destination does not match the requested one."
},
"helpHtmlFilterIntegrity": {
@ -348,7 +348,7 @@
"description": "If you want to automatically redirect all supported CDN connections to LocalCDN, you can add these rules to your adblocker to allow these redirections. If you do not want to add these rules, you must allow each CDN connection individually for each website."
},
"helpRuleGeneratorUblockTitle": {
"message": "",
"message": "Samo uBlock izvor:",
"description": "Only uBlock Origin:"
},
"helpRuleGeneratorUblockDescription": {
@ -356,27 +356,27 @@
"description": "These rules are only relevant in »medium« or »hard« mode, because it blocks all 3rd-party resources. They are not necessary in »default«, »easy« or »very-easy« mode. For more information, please visit the uBlock Origin Wiki."
},
"helpRuleGeneratorUblockTableIcon": {
"message": "",
"message": "Ikona",
"description": "Icon"
},
"helpRuleGeneratorUblockTableMode": {
"message": "",
"message": "Modus",
"description": "Mode"
},
"helpRuleGeneratorUblockTableUseful": {
"message": "",
"message": "Pravila korisna",
"description": "Rules useful"
},
"helpRuleGeneratorUblockTableDefaultEasy": {
"message": "",
"message": "Standardno/Jednostavno",
"description": "Default/Easy"
},
"helpRuleGeneratorUblockTableMedium": {
"message": "",
"message": "Srednje",
"description": "Medium"
},
"helpRuleGeneratorUblockTableHard": {
"message": "",
"message": "Teško",
"description": "Hard"
},
"helpWebsiteIssuesDescription": {
@ -396,7 +396,7 @@
"description": "The statistics contain no information about the browser, operating system, requesting website, IP addresses or any other information. Just date, CDN+counter and framework+counter. It shows you which frameworks are replaced by LocalCDNs how often and which CDNs were requested."
},
"helpStatisticsTruthTitle": {
"message": "",
"message": "Kako znam da je to točno?",
"description": "How do I know thats true?"
},
"helpStatisticsTruthDescription": {
@ -404,23 +404,23 @@
"description": "The extension storage can be viewed directly with the Firefox browser. Open the URL »about:debugging«, switch to »Storage« and select »Extension Storage«. Under the key »internalStatisticsData« you will find the collected data. Just copy it and put it into a JSON PrettyPrinter to make it more readable. Please note that you have to remove the first and last quotation mark and the key to it. You should be able to see this clearly in this video."
},
"helpSyncTitle": {
"message": "",
"message": "Što će se sinkronizirati kad odaberem „sinkronizacija” kao vrstu spremanja?",
"description": "What will be synchronized when I select »sync« as storage type?"
},
"helpSyncDescription": {
"message": "",
"message": "Sinkronizacija će raditi samo ako si prijavljen/a s Firefox računom na uređaju i ako dopuštaš sinkronizaciju dodataka u postavkama. Zaseban poslužitelj za sinkronizaciju pod tvojom kontrolom također će raditi. Ovo će sinkronizirati većinu LocalCDN postavki na svim uređajima.",
"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": "Ako nemaš račun za sinkronizaciju, ništa se neće sinkronizirati. U tom je slučaju svejedno koju si vrstu spremišta odabrao/la.",
"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": "Stvari koje se nikada ne sinkroniziraju:",
"description": "Things that are never synchronized:"
},
"helpNumberOfInjections": {
"message": "",
"message": "Broj umetanja",
"description": "Numbers of injections"
},
"helpYes": {
@ -440,43 +440,43 @@
"description": "Settings that will be synchronized:"
},
"helpIcons": {
"message": "",
"message": "Standardno, svijetlo, plavo/sivo",
"description": "Default, Light, Blue/Grey"
},
"helpSyncContentLinks": {
"message": "",
"message": "Daljnje informacije o Firefox sinkronizaciji:",
"description": "More information about Firefox Sync:"
},
"helpBrowserCompatibility": {
"message": "",
"message": "Kompatibilnost s preglednikom",
"description": "Browser compatibility"
},
"helpReplace": {
"message": "",
"message": "Zamijeni",
"description": "Replace"
},
"helpReplaceOther": {
"message": "",
"message": "Zamijeni druge resurse",
"description": "Replace other resources"
},
"helpUpgradeAllResources": {
"message": "",
"message": "Nadogradi sve resurse",
"description": "Upgrade all resources"
},
"helpExplanationChrome": {
"message": "",
"message": "Svi preglednici temeljeni na Chromiumu",
"description": "All Chromium based Browser"
},
"helpLimitation": {
"message": "",
"message": "Ovo nije ograničenje LocalCDN-a, već nedostajuća API podrška preglednika temeljenih na Chromiumu.",
"description": "This is not a limitation of LocalCDN, but missing API support of Chromium based browsers."
},
"titleBadgeDefault": {
"message": "",
"message": "Standardna značka",
"description": "Default badge"
},
"titleBadgeHTMLFilter": {
"message": "",
"message": "Značka za HTML filtar",
"description": "HTML filter badge"
},
"titleBadgeMissingResource": {

View File

@ -1,6 +1,6 @@
{
"extensionDescription": {
"message": "Защищает от отслеживания через CDN (сети доставки контента) перенаправляя запросы на локальное хранилище.",
"message": "Защищает от отслеживания через CDN (сети доставки контента), перенаправляя запросы в локальное хранилище.",
"description": "Protects you against tracking through CDNs (Content Delivery Networks) by redirecting to local resources."
},
"amountInjectedDescription": {
@ -32,7 +32,7 @@
"description": "Disable prefetch title"
},
"disablePrefetchDescription": {
"message": "Не давать запрещенным запросам выходить за сети доставки.",
"message": "Не давать запрещенным запросам доходить до сетей доставки.",
"description": "Disable prefetch description."
},
"stripMetadataTitle": {
@ -40,15 +40,15 @@
"description": "Strip metadata title"
},
"stripMetadataDescription": {
"message": "Очистить дополнительные данные из разрешенных CDN запросов, для усиления приватности.",
"message": "Очистить дополнительные данные из разрешенных CDN запросов для усиления приватности.",
"description": "Strip metadata description."
},
"allowlistedDomainsTitle": {
"message": "Исключить домены из проверки:",
"message": "Пропускать запросы для следующих доменов:",
"description": "Deactivate LocalCDN for these domains:"
},
"allowlistedDomainsDescription": {
"message": "Введите домены, где LocalCDN будет отключен. По одному на строку.",
"message": "Введите домены, для которых LocalCDN будет отключен. По одному на строку.",
"description": "Enter domains to disable LocalCDN there. One entry per line."
},
"advancedLabel": {
@ -76,7 +76,7 @@
"description": "Enable logging"
},
"loggingDescription": {
"message": "Для просмотра журнала нажмите иконку в меню. Журнал будет очищен при закрытии браузера или при отключении.",
"message": "Для просмотра журнала нажмите иконку в меню. Журнал будет очищен при закрытии браузера или при отключении журналирования.",
"description": "You can open the log with the icon in the menu. The log will be deleted when you close the browser or disable logging."
},
"featureBreaksWebsitesDescription": {
@ -104,7 +104,7 @@
"description": "Enable this option to always apply the HTML filter. The domains in the list will be ignored then. If this option is disabled, the HTML filter is only applied to domains in the list."
},
"negateHtmlFilterListWarning": {
"message": "Эта функция может «сломать» отображение веб-сайтов. Обратите внимание на информацию в Wiki-документации.",
"message": "Эта функция может «сломать» отображение веб-сайтов. Ознакомьтесь с информацией на вики-страницах.",
"description": "This function can break websites. Please note the information on the Wiki page."
},
"htmlFilterDomainsTitleExclude": {
@ -136,7 +136,7 @@
"description": "Internal statistics"
},
"internalStatisticsDescription": {
"message": "Эта функция в настоящее время находится на экспериментальной стадии. Данные не передаются. Все это локально на вашем устройстве.",
"message": "Эта функция находится в эеспериментальном состоянии. Данные не передаются. Все хранится только на вашем устройстве.",
"description": "No data transmission. Its all local on your device."
},
"headerStatistics": {
@ -160,7 +160,7 @@
"description": "Statistics view for past year."
},
"labelDelete": {
"message": "Удалить",
"message": "Очистить",
"description": "Button to delete all statistics data."
},
"labelAvg": {
@ -176,19 +176,19 @@
"description": "Are you sure you want to delete all the statistics?"
},
"labelDomainsAllowlistGoogleFonts": {
"message": "Этим доменам разрешено загружать шрифты Google. По одному на строку.",
"message": "Этим доменам разрешено загружать Шрифты Google. По одному на строку.",
"description": "These domains are allowed to load Google Fonts. One entry per line."
},
"btnGeneral": {
"message": "Базовый",
"message": "Основные",
"description": "Basic"
},
"btnAdvanced": {
"message": "Продвинутый",
"message": "Расширенные",
"description": "Advanced"
},
"btnOther": {
"message": "Другие",
"message": "Прочие",
"description": "Other"
},
"btnInfo": {
@ -260,7 +260,7 @@
"description": "Indicate missing resources on the icon"
},
"changeBadgeColorMissingResourcesDescription": {
"message": "Сменить цвет значка если ресурсы отсутствуют.",
"message": "Сменить цвет значка, если ресурсы отсутствуют.",
"description": "Change the badge color if resources are missing."
},
"titleHelp": {
@ -284,15 +284,15 @@
"description": "Some websites look strange or are not easy to use"
},
"helpBlockGoogleFontsTitle": {
"message": "Где здесь опция «Заблокировать шрифты Google»?",
"message": "Где здесь опция «Заблокировать Шрифты Google»?",
"description": "Why is there a »Block Google Fonts« option?"
},
"helpStatisticsTitle": {
"message": "А как насчет статистики? На какие-то сервера что-нибудь переносится?",
"message": "А что со статистикой? Что-то и куда-то передаётся?",
"description": "What about the statistics? Is anything transferred to any servers?"
},
"helpWhatWillBeSynchronizedTitle": {
"message": "Что будет синхронизироваться, если я выберу «синхронизировать» в качестве типа хранилища?",
"message": "Что будет синхронизироваться, если я выберу в качестве типа хранилища «Синхронизированное»?",
"description": "What will be synchronized when I select »sync« as storage type?"
},
"helpBrowserCompatibilityTitle": {
@ -300,11 +300,11 @@
"description": "Browser compatibility"
},
"helpIntroductionDescription": {
"message": "LocalCDN - это расширение веб-браузера, которое имитирует сети доставки контента, чтобы улучшить вашу конфиденциальность в Интернете. Он перехватывает трафик, находит поддерживаемые фреймворки / библиотеки локально и внедряет их на веб-сайт. Не стесняйтесь использовать следующую утилиту для тестирования, чтобы узнать, правильно ли вы защищены. Для получения дополнительной информации прочтите руководство или наши вики-страницы.",
"message": "LocalCDN — это расширение веб-браузера, подменяющее сети доставки контента (CDN) и улучшающее вашу конфиденциальность в интернете. Оно перехватывает трафик сайта и заменяет библиотеки, получаемые с CDN, на их копии встроенные в расширение. Сайт ниже поможет узнать, насколько вы защищены. Дополнительная информации есть в руководстве и на наших вики-страницах.",
"description": "LocalCDN is a web browser extension that emulates Content Delivery Networks to improve your online privacy. It intercepts traffic, finds supported frameworks/libraries locally, and injects them into the website. Feel free to use the following testing utility to find out if you are properly protected. For more information read the tutorial or our Wiki pages."
},
"helpLinkTestUtility": {
"message": "Утилита для тестирования",
"message": "Проверить работу",
"description": "Testing utility"
},
"helpLinkTutorial": {
@ -316,7 +316,7 @@
"description": "Wiki pages"
},
"helpHtmlFilterDescription": {
"message": "В большинстве случаев LocalCDN может легко заменить встроенные фреймворки и улучшить конфиденциальность. В некоторых случаях веб-сайт может попытаться предотвратить это, установив определенные параметры в исходном коде HTML. LocalCDN считывает исходный код HTML перед его отображением в браузере и удаляет эту часть (красный).",
"message": "В большинстве случаев LocalCDN может легко заменить встроенные фреймворки и улучшить конфиденциальность. В некоторых случаях веб-сайт может попытаться предотвратить это, установив определенные параметры в исходном коде HTML. LocalCDN считывает исходный код HTML перед его отображением в браузере и удаляет эту часть (выделено красным).",
"description": "In most cases LocalCDN can easily replace embedded frameworks and improves privacy. In some cases the website may try to prevent this by setting certain options in the HTML source code. LocalCDN reads the HTML source code before it is displayed in the browser and removes these part (red)."
},
"helpHtmlFilterBefore": {
@ -328,7 +328,7 @@
"description": "The result then looks like this:"
},
"helpHtmlFilterWhyTitle": {
"message": "Почему необходимо удалять атрибуты перекрестного происхождения и целостности?",
"message": "Почему необходимо удалять атрибуты crossorigin и integrity?",
"description": "Why is it necessary to remove crossorigin and integrity attributes?"
},
"helpHtmlFilterCrossorigin": {
@ -336,7 +336,7 @@
"description": "The crossorigin attribute prevents the replacement because the destination does not match the requested one."
},
"helpHtmlFilterIntegrity": {
"message": "Чтобы сэкономить место на диске и предоставить больше фреймворков, LocalCDN обновляет фреймворк. Тег целостности - это хеш-значение файла. Если проверка не удалась, браузер не будет включать фреймворк. Проверка целостности завершится неудачно, потому что хеш-значения, например, jQuery 1.10.1 и jQuery 1.12.4 разные.",
"message": "Чтобы сэкономить место на диске и предоставить больше фреймворков, LocalCDN обновляет фреймворк. Тег целостности — это хеш от файла. Если проверка не удалась, браузер не будет включать фреймворк. Проверка целостности завершится неудачно, потому что хеш-значения, например, jQuery 1.10.1 и jQuery 1.12.4 разные.",
"description": "To save disk space and to deliver more frameworks LocalCDN upgrades a framework. An integrity tag is the hash value of a file. If the check fails, the browser wont include a framework. The integrity check will fail because the hash values for e.g. jQuery 1.10.1 and jQuery 1.12.4 are different."
},
"helpHtmlFilterErrors": {
@ -344,7 +344,7 @@
"description": "Unfortunately, it sometimes happens that special characters are then displayed incorrectly. In this case you can deactivate the setting again, to display the umlauts correctly."
},
"helpRuleGeneratorDescription": {
"message": "Если вы хотите автоматически перенаправить все поддерживаемые соединения CDN на LocalCDN, вы можете добавить эти правила в свой блокировщик рекламы, чтобы разрешить эти перенаправления. Если вы не хотите добавлять эти правила, необходимо разрешить каждое подключение к CDN отдельно для каждого веб-сайта.",
"message": "Если вы хотите автоматически перенаправить все поддерживаемые соединения CDN на LocalCDN, вы можете добавить эти правила в свой блокировщик рекламы. Если вы не хотите добавлять эти правила, необходимо разрешить каждое подключение к CDN отдельно для каждого веб-сайта.",
"description": "If you want to automatically redirect all supported CDN connections to LocalCDN, you can add these rules to your adblocker to allow these redirections. If you do not want to add these rules, you must allow each CDN connection individually for each website."
},
"helpRuleGeneratorUblockTitle": {
@ -352,11 +352,11 @@
"description": "Only uBlock Origin:"
},
"helpRuleGeneratorUblockDescription": {
"message": "Эти правила актуальны только в «среднем» или «жестком» режиме, поскольку он блокирует все сторонние ресурсы. Они не нужны в режимах »по умолчанию«, »простой« или »очень легкий«. Для получения дополнительной информации посетите вики uBlock Origin.",
"message": "Эти правила актуальны только в «среднем» или «жестком» режиме, поскольку он блокирует все сторонние ресурсы. Они не нужны в режимах «по умолчанию», «простой» или «очень легкий». Подобности в вики uBlock Origin.",
"description": "These rules are only relevant in »medium« or »hard« mode, because it blocks all 3rd-party resources. They are not necessary in »default«, »easy« or »very-easy« mode. For more information, please visit the uBlock Origin Wiki."
},
"helpRuleGeneratorUblockTableIcon": {
"message": "изображение",
"message": "Иконка",
"description": "Icon"
},
"helpRuleGeneratorUblockTableMode": {
@ -368,7 +368,7 @@
"description": "Rules useful"
},
"helpRuleGeneratorUblockTableDefaultEasy": {
"message": "По умолчанию / Легко",
"message": "По умолчанию / Легкий",
"description": "Default/Easy"
},
"helpRuleGeneratorUblockTableMedium": {
@ -380,19 +380,19 @@
"description": "Hard"
},
"helpWebsiteIssuesDescription": {
"message": "Есть две возможные причины: требуется либо фреймворк / библиотека, которые LocalCDN (пока) не выполняет, либо СОП. SOP (политика одинакового происхождения) - это механизм безопасности, который определяет, какие данные разрешено загружать браузеру. Это помогает изолировать вредоносные документы и тем самым сократить возможные векторы атак. Эта политика запрещает браузеру загружать внешние фреймворки LocalCDN. К сожалению, на данный момент для этого нет решения.",
"message": "Есть две возможные причины: либо библиотека пока не добавлена в LocalCDN, либо проблема в SOP. SOP (политика одинакового происхождения) — это механизм безопасности, определяющий, какие данные разрешено загружать браузеру. Это помогает изолировать вредоносные документы и тем самым сократить возможные векторы атак. Эта политика запрещает браузеру загружать внешние фреймворки LocalCDN. К сожалению, на данный момент для этого нет решения.",
"description": "There are two possible reasons: Either a framework/library is required that LocalCDN doesnt (yet) deliver or an SOP. A SOP (Same origin policy) is a security mechanism that determines what data the browser is allowed to load. It helps to isolate malicious documents and thus reduce possible attack vectors. This policy prevents the browser from loading the external frameworks of LocalCDN. Unfortunately there is no solution for this at the moment."
},
"helpBlockGoogleFontsDescription": {
"message": "LocalCDN может заменить »Иконки материалов Google«. Чтобы поймать соединение, ваш блокировщик рекламы (например, uBlock Origin, uMatrix или AdGuard) должен разрешить запрос. LocalCDN прослушивает эти запросы, и если запрос содержит »Значки материалов Google«, ресурс будет заменен. Если вы уберете отметку с опции «Блокировать запросы на отсутствующий контент», несуществующие ресурсы будут разрешены, и будут загружены »Google Fonts«, потому что »Значки материалов Google« и »Шрифты Google« используют один и тот же домен. Если вы этого не хотите, вы можете заблокировать »Google Fonts« на LocalCDN.",
"message": "LocalCDN может заменить «Google Material Icons». Чтобы поймать соединение, ваш блокировщик рекламы (например, uBlock Origin, uMatrix или AdGuard) должен разрешить запрос. LocalCDN прослушивает эти запросы, и если запрос содержит «Google Material Icons», ресурс будет заменен. Если вы уберете отметку с опции «Блокировать запросы на отсутствующий контент», несуществующие ресурсы будут разрешены, и будут загружены «Google Fonts», потому что «Google Material Icons» и «Google Fonts» используют один и тот же домен. Если вы этого не хотите, вы можете заблокировать «Google Fonts» в LocalCDN.",
"description": "LocalCDN can replace »Google Material Icons«. To catch the connection your adblocker (e.g. uBlock Origin, uMatrix or AdGuard) must allow the request. LocalCDN listens on these requests and if the query contains »Google Material Icons«, the resource will be replaced. If you uncheck the »Block requests for missing content« option, non-existent resources will be allowed to pass and »Google Fonts« will be loaded, because »Google Material Icons« and »Google Fonts« use the same domain. If you dont want this, you can block »Google Fonts« on LocalCDN."
},
"helpStatisticsDescription": {
"message": "Не паникуйте, ничего не будет транслироваться. Это было бы против всех моих принципов. Статистика (формат JSON) содержит следующую информацию: дату, CDN + счетчик и фреймворк + счетчик. Это все. Вот пример:",
"message": "Не паникуйте, ничего не будет передаваться. Это было бы против всех моих принципов. Статистика (в формате JSON) содержит следующую информацию: дату, CDN+счетчик и фреймворк+счетчик. Это все. Вот пример:",
"description": "Dont panic, nothing will be transmitted. It would be against all my principles. The statistics (JSON format) contains the following information: Date, CDN+counter and framework+counter. Thats all. Ive an example here:"
},
"helpStatisticsContent": {
"message": "Статистика не содержит информации о браузере, операционной системе, запрашивающем веб-сайте, IP-адресах или какой-либо другой информации. Только дата, CDN + счетчик и фреймворк + счетчик. Он показывает вам, какие фреймворки заменяются LocalCDN, как часто и какие CDN запрашивались.",
"message": "Статистика не содержит информации о браузере, операционной системе, запрашивающем веб-сайте, IP-адресах или какой-либо другой информации. Только дата, CDN+счетчик и фреймворк+счетчик. Он показывает вам, какие фреймворки заменяются LocalCDN, как часто и какие CDN запрашивались.",
"description": "The statistics contain no information about the browser, operating system, requesting website, IP addresses or any other information. Just date, CDN+counter and framework+counter. It shows you which frameworks are replaced by LocalCDNs how often and which CDNs were requested."
},
"helpStatisticsTruthTitle": {
@ -400,15 +400,15 @@
"description": "How do I know thats true?"
},
"helpStatisticsTruthDescription": {
"message": "Хранилище расширений можно просмотреть непосредственно в браузере Firefox. Откройте URL-адрес »about: debugging«, переключитесь на »Хранилище« и выберите »Хранилище расширений«. Под ключом «internalStatisticsData» вы найдете собранные данные. Просто скопируйте его и поместите в JSON PrettyPrinter, чтобы сделать его более читабельным. Обратите внимание, что вы должны удалить первую и последнюю кавычки и ключ к ней. Вы должны ясно увидеть это на этом видео.",
"message": "Хранилище расширений можно просмотреть непосредственно в браузере Firefox. Откройте URL-адрес «about: debugging», переключитесь на «Хранилище» и выберите «Хранилище расширений». Под ключом «internalStatisticsData» вы найдете собранные данные. Скопируйте их и поместите в JSON PrettyPrinter, чтобы сделать их более читабельным. Обратите внимание, что вы должны удалить первую и последнюю кавычки и ключ к ней. Вы должны ясно увидеть это на этом видео.",
"description": "The extension storage can be viewed directly with the Firefox browser. Open the URL »about:debugging«, switch to »Storage« and select »Extension Storage«. Under the key »internalStatisticsData« you will find the collected data. Just copy it and put it into a JSON PrettyPrinter to make it more readable. Please note that you have to remove the first and last quotation mark and the key to it. You should be able to see this clearly in this video."
},
"helpSyncTitle": {
"message": "Что будет синхронизироваться, если я выберу «синхронизировать» в качестве типа хранилища?",
"message": "Что будет синхронизироваться, если я выберу «Синхронизировать» в качестве типа хранилища?",
"description": "What will be synchronized when I select »sync« as storage type?"
},
"helpSyncDescription": {
"message": "Синхронизация будет работать только в том случае, если вы вошли в систему с учетной записью Firefox на устройстве и разрешили синхронизацию надстроек в настройках. Также будет работать отдельный сервер синхронизации под вашим контролем. Это синхронизирует большинство настроек LocalCDN на всех устройствах.",
"message": "Синхронизация будет работать только в том случае, если вы вошли в систему с учетной записью Firefox на устройстве и разрешили синхронизацию расширений в настройках. Также будет работать отдельный сервер синхронизации под вашим контролем. Это синхронизирует большинство настроек LocalCDN на всех устройствах.",
"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": {
@ -416,7 +416,7 @@
"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": {
@ -424,7 +424,7 @@
"description": "Numbers of injections"
},
"helpYes": {
"message": "да",
"message": "Да",
"description": "Yes"
},
"helpNo": {
@ -448,7 +448,7 @@
"description": "More information about Firefox Sync:"
},
"helpBrowserCompatibility": {
"message": "Совместимость с браузером",
"message": "Совместимость с браузерами",
"description": "Browser compatibility"
},
"helpReplace": {

486
_locales/te/messages.json Normal file
View File

@ -0,0 +1,486 @@
{
"extensionDescription": {
"message": "స్థానిక వనరులకు దారి మళ్లించడం ద్వారా CDNల (కంటెంట్ డెలివరీ నెట్‌వర్క్‌లు) ద్వారా ట్రాకింగ్ నుండి మిమ్మల్ని రక్షిస్తుంది.",
"description": "Protects you against tracking through CDNs (Content Delivery Networks) by redirecting to local resources."
},
"amountInjectedDescription": {
"message": "ఇన్‌స్టాలేషన్ నుండి స్థానిక కంటెంట్ డెలివరీ నెట్‌వర్క్ రిసోర్స్ ఇంజెక్షన్‌ల మొత్తం.",
"description": "Amount injected description."
},
"optionsTitle": {
"message": "ఎంపికలు",
"description": "Options title"
},
"showIconBadgeTitle": {
"message": "చిహ్నంపై ఇంజెక్షన్ గణనలను ప్రదర్శించండి",
"description": "Show icon badge title"
},
"showIconBadgeDescription": {
"message": "",
"description": "Show icon badge description."
},
"blockMissingTitle": {
"message": "",
"description": "Block requests for missing resources title"
},
"blockMissingDescription": {
"message": "",
"description": "Block requests for missing resources description."
},
"disablePrefetchTitle": {
"message": "",
"description": "Disable prefetch title"
},
"disablePrefetchDescription": {
"message": "",
"description": "Disable prefetch description."
},
"stripMetadataTitle": {
"message": "",
"description": "Strip metadata title"
},
"stripMetadataDescription": {
"message": "",
"description": "Strip metadata description."
},
"allowlistedDomainsTitle": {
"message": "",
"description": "Deactivate LocalCDN for these domains:"
},
"allowlistedDomainsDescription": {
"message": "",
"description": "Enter domains to disable LocalCDN there. One entry per line."
},
"advancedLabel": {
"message": "",
"description": "Advanced label"
},
"generateRuleSetTitle": {
"message": "",
"description": "Generate rule sets for your adblocker"
},
"generateRuleSetDescription": {
"message": "",
"description": "In case you are using an adblocker you can generate the rules here. You have to add these rules manually in your adblocker."
},
"lastUpdate": {
"message": "",
"description": "Last update:"
},
"copyRuleSet": {
"message": "",
"description": "Text of button to copy ruleset"
},
"loggingTitle": {
"message": "",
"description": "Enable logging"
},
"loggingDescription": {
"message": "",
"description": "You can open the log with the icon in the menu. The log will be deleted when you close the browser or disable logging."
},
"featureBreaksWebsitesDescription": {
"message": "",
"description": "This feature breaks websites. Do not leave it enabled, unless you are prepared to manually add affected domains to the allow list."
},
"featureBreaksWebsitesButton": {
"message": "",
"description": "Disable"
},
"labelManipulateDOM": {
"message": "",
"description": "Filter HTML source code"
},
"labelDonate": {
"message": "",
"description": "Donate"
},
"negateHtmlFilterListTitle": {
"message": "",
"description": "Invert HTML filter"
},
"negateHtmlFilterListDescription": {
"message": "",
"description": "Enable this option to always apply the HTML filter. The domains in the list will be ignored then. If this option is disabled, the HTML filter is only applied to domains in the list."
},
"negateHtmlFilterListWarning": {
"message": "",
"description": "This function can break websites. Please note the information on the Wiki page."
},
"htmlFilterDomainsTitleExclude": {
"message": "",
"description": "Do not apply HTML filter to these domains:"
},
"htmlFilterDomainsDescription": {
"message": "",
"description": "Enter the domains to be handled or ignored by the HTML filter. One entry per line."
},
"htmlFilterDomainsTitleInclude": {
"message": "",
"description": "Apply HTML filter for these domains:"
},
"blockGoogleFontsTitle": {
"message": "",
"description": "Block Google Fonts"
},
"blockGoogleFontsDescription": {
"message": "",
"description": "If requests for missing resources are allowed, connections to \"fonts.googleapis.com\" are not blocked. Enable this option to block these requests."
},
"chooseIconStyle": {
"message": "",
"description": "Choose an icon for this extension"
},
"internalStatisticsTitle": {
"message": "",
"description": "Internal statistics"
},
"internalStatisticsDescription": {
"message": "",
"description": "No data transmission. Its all local on your device."
},
"headerStatistics": {
"message": "",
"description": "Statistics. The header of a statistics page."
},
"labelToday": {
"message": "",
"description": "Statistics view for today."
},
"labelPastWeek": {
"message": "",
"description": "Statistics view for past week."
},
"labelPastMonth": {
"message": "",
"description": "Statistics view for past month."
},
"labelPastYear": {
"message": "",
"description": "Statistics view for past year."
},
"labelDelete": {
"message": "",
"description": "Button to delete all statistics data."
},
"labelAvg": {
"message": "",
"description": "Followed by a number of average injections per day within a specific period."
},
"labelInjectedFrameworks": {
"message": "",
"description": "Followed by a number of injections within a specific period."
},
"dialogConfirmDeleteStatistics": {
"message": "",
"description": "Are you sure you want to delete all the statistics?"
},
"labelDomainsAllowlistGoogleFonts": {
"message": "",
"description": "These domains are allowed to load Google Fonts. One entry per line."
},
"btnGeneral": {
"message": "",
"description": "Basic"
},
"btnAdvanced": {
"message": "",
"description": "Advanced"
},
"btnOther": {
"message": "",
"description": "Other"
},
"btnInfo": {
"message": "",
"description": "Info"
},
"headerStorageType": {
"message": "",
"description": "Storage type"
},
"labelStorageTypeLocal": {
"message": "",
"description": "Local"
},
"labelStorageTypeSync": {
"message": "",
"description": "Sync"
},
"headerImportExport": {
"message": "",
"description": "Import/Export"
},
"labelExportData": {
"message": "",
"description": "Back up to file"
},
"labelImportData": {
"message": "",
"description": "Restore from file"
},
"dialogImportSuccessful": {
"message": "",
"description": "Import successful"
},
"dialogImportFailed": {
"message": "",
"description": "Import failed"
},
"updateNotificationTitle": {
"message": "",
"description": "Notification after an update"
},
"updateNotificationNever": {
"message": "",
"description": "Never (Silent Updates)"
},
"updateNotificationOnlyRules": {
"message": "",
"description": "Only if new CDNs and rules"
},
"updateNotificationAlways": {
"message": "",
"description": "Always"
},
"websiteBroken": {
"message": "",
"description": "Website broken?"
},
"hideDonationButton": {
"message": "",
"description": "Hide donation button"
},
"betaLabel": {
"message": "",
"description": "beta"
},
"changeBadgeColorMissingResourcesTitle": {
"message": "",
"description": "Indicate missing resources on the icon"
},
"changeBadgeColorMissingResourcesDescription": {
"message": "",
"description": "Change the badge color if resources are missing."
},
"titleHelp": {
"message": "",
"description": "Help"
},
"helpIntroductionTitle": {
"message": "",
"description": "Introduction"
},
"helpHtmlFilterTitle": {
"message": "",
"description": "What is »HTML filter«?"
},
"helpRuleGeneratorTitle": {
"message": "",
"description": "Rule generator"
},
"helpWebsiteIssuesTitle": {
"message": "",
"description": "Some websites look strange or are not easy to use"
},
"helpBlockGoogleFontsTitle": {
"message": "",
"description": "Why is there a »Block Google Fonts« option?"
},
"helpStatisticsTitle": {
"message": "",
"description": "What about the statistics? Is anything transferred to any servers?"
},
"helpWhatWillBeSynchronizedTitle": {
"message": "",
"description": "What will be synchronized when I select »sync« as storage type?"
},
"helpBrowserCompatibilityTitle": {
"message": "",
"description": "Browser compatibility"
},
"helpIntroductionDescription": {
"message": "",
"description": "LocalCDN is a web browser extension that emulates Content Delivery Networks to improve your online privacy. It intercepts traffic, finds supported frameworks/libraries locally, and injects them into the website. Feel free to use the following testing utility to find out if you are properly protected. For more information read the tutorial or our Wiki pages."
},
"helpLinkTestUtility": {
"message": "",
"description": "Testing utility"
},
"helpLinkTutorial": {
"message": "",
"description": "Tutorial"
},
"helpLinkWikiPages": {
"message": "",
"description": "Wiki pages"
},
"helpHtmlFilterDescription": {
"message": "",
"description": "In most cases LocalCDN can easily replace embedded frameworks and improves privacy. In some cases the website may try to prevent this by setting certain options in the HTML source code. LocalCDN reads the HTML source code before it is displayed in the browser and removes these part (red)."
},
"helpHtmlFilterBefore": {
"message": "",
"description": "The HTML filter removes the red characters from this example:"
},
"helpHtmlFilterAfter": {
"message": "",
"description": "The result then looks like this:"
},
"helpHtmlFilterWhyTitle": {
"message": "",
"description": "Why is it necessary to remove crossorigin and integrity attributes?"
},
"helpHtmlFilterCrossorigin": {
"message": "",
"description": "The crossorigin attribute prevents the replacement because the destination does not match the requested one."
},
"helpHtmlFilterIntegrity": {
"message": "",
"description": "To save disk space and to deliver more frameworks LocalCDN upgrades a framework. An integrity tag is the hash value of a file. If the check fails, the browser wont include a framework. The integrity check will fail because the hash values for e.g. jQuery 1.10.1 and jQuery 1.12.4 are different."
},
"helpHtmlFilterErrors": {
"message": "",
"description": "Unfortunately, it sometimes happens that special characters are then displayed incorrectly. In this case you can deactivate the setting again, to display the umlauts correctly."
},
"helpRuleGeneratorDescription": {
"message": "",
"description": "If you want to automatically redirect all supported CDN connections to LocalCDN, you can add these rules to your adblocker to allow these redirections. If you do not want to add these rules, you must allow each CDN connection individually for each website."
},
"helpRuleGeneratorUblockTitle": {
"message": "",
"description": "Only uBlock Origin:"
},
"helpRuleGeneratorUblockDescription": {
"message": "",
"description": "These rules are only relevant in »medium« or »hard« mode, because it blocks all 3rd-party resources. They are not necessary in »default«, »easy« or »very-easy« mode. For more information, please visit the uBlock Origin Wiki."
},
"helpRuleGeneratorUblockTableIcon": {
"message": "",
"description": "Icon"
},
"helpRuleGeneratorUblockTableMode": {
"message": "",
"description": "Mode"
},
"helpRuleGeneratorUblockTableUseful": {
"message": "",
"description": "Rules useful"
},
"helpRuleGeneratorUblockTableDefaultEasy": {
"message": "",
"description": "Default/Easy"
},
"helpRuleGeneratorUblockTableMedium": {
"message": "",
"description": "Medium"
},
"helpRuleGeneratorUblockTableHard": {
"message": "",
"description": "Hard"
},
"helpWebsiteIssuesDescription": {
"message": "",
"description": "There are two possible reasons: Either a framework/library is required that LocalCDN doesnt (yet) deliver or an SOP. A SOP (Same origin policy) is a security mechanism that determines what data the browser is allowed to load. It helps to isolate malicious documents and thus reduce possible attack vectors. This policy prevents the browser from loading the external frameworks of LocalCDN. Unfortunately there is no solution for this at the moment."
},
"helpBlockGoogleFontsDescription": {
"message": "",
"description": "LocalCDN can replace »Google Material Icons«. To catch the connection your adblocker (e.g. uBlock Origin, uMatrix or AdGuard) must allow the request. LocalCDN listens on these requests and if the query contains »Google Material Icons«, the resource will be replaced. If you uncheck the »Block requests for missing content« option, non-existent resources will be allowed to pass and »Google Fonts« will be loaded, because »Google Material Icons« and »Google Fonts« use the same domain. If you dont want this, you can block »Google Fonts« on LocalCDN."
},
"helpStatisticsDescription": {
"message": "",
"description": "Dont panic, nothing will be transmitted. It would be against all my principles. The statistics (JSON format) contains the following information: Date, CDN+counter and framework+counter. Thats all. Ive an example here:"
},
"helpStatisticsContent": {
"message": "",
"description": "The statistics contain no information about the browser, operating system, requesting website, IP addresses or any other information. Just date, CDN+counter and framework+counter. It shows you which frameworks are replaced by LocalCDNs how often and which CDNs were requested."
},
"helpStatisticsTruthTitle": {
"message": "",
"description": "How do I know thats true?"
},
"helpStatisticsTruthDescription": {
"message": "",
"description": "The extension storage can be viewed directly with the Firefox browser. Open the URL »about:debugging«, switch to »Storage« and select »Extension Storage«. Under the key »internalStatisticsData« you will find the collected data. Just copy it and put it into a JSON PrettyPrinter to make it more readable. Please note that you have to remove the first and last quotation mark and the key to it. You should be able to see this clearly in this video."
},
"helpSyncTitle": {
"message": "",
"description": "What will be synchronized when I select »sync« as storage type?"
},
"helpSyncDescription": {
"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": "",
"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": "",
"description": "Things that are never synchronized:"
},
"helpNumberOfInjections": {
"message": "",
"description": "Numbers of injections"
},
"helpYes": {
"message": "",
"description": "Yes"
},
"helpNo": {
"message": "",
"description": "No"
},
"helpData": {
"message": "",
"description": "Data"
},
"helpSyncContentEver": {
"message": "",
"description": "Settings that will be synchronized:"
},
"helpIcons": {
"message": "",
"description": "Default, Light, Blue/Grey"
},
"helpSyncContentLinks": {
"message": "",
"description": "More information about Firefox Sync:"
},
"helpBrowserCompatibility": {
"message": "",
"description": "Browser compatibility"
},
"helpReplace": {
"message": "",
"description": "Replace"
},
"helpReplaceOther": {
"message": "",
"description": "Replace other resources"
},
"helpUpgradeAllResources": {
"message": "",
"description": "Upgrade all resources"
},
"helpExplanationChrome": {
"message": "",
"description": "All Chromium based Browser"
},
"helpLimitation": {
"message": "",
"description": "This is not a limitation of LocalCDN, but missing API support of Chromium based browsers."
},
"titleBadgeDefault": {
"message": "",
"description": "Default badge"
},
"titleBadgeHTMLFilter": {
"message": "",
"description": "HTML filter badge"
},
"titleBadgeMissingResource": {
"message": "",
"description": "Missing resource badge"
}
}

View File

@ -100,7 +100,7 @@
"description": "Invert HTML filter"
},
"negateHtmlFilterListDescription": {
"message": "Bật tính năng này để luôn luôn sử dụng bộ lọc HTML. Các tên miền trong danh sách khi đó sẽ bị bỏ qua. Nếu tính năng này tắt, bộ lọc HTML chỉ được sử dụng đối với các tên miền trong danh sách.",
"message": "Bật tính năng này để luôn sử dụng bộ lọc HTML. Các tên miền trong danh sách khi đó sẽ bị bỏ qua. Nếu tính năng này tắt, bộ lọc HTML chỉ được sử dụng đối với các tên miền trong danh sách.",
"description": "Enable this option to always apply the HTML filter. The domains in the list will be ignored then. If this option is disabled, the HTML filter is only applied to domains in the list."
},
"negateHtmlFilterListWarning": {
@ -132,7 +132,7 @@
"description": "Choose an icon for this extension"
},
"internalStatisticsTitle": {
"message": "Số liệu nội bộ",
"message": "Thống kê nội bộ",
"description": "Internal statistics"
},
"internalStatisticsDescription": {
@ -156,7 +156,7 @@
"description": "Statistics view for past month."
},
"labelPastYear": {
"message": "Năm trước",
"message": "Năm ngoái",
"description": "Statistics view for past year."
},
"labelDelete": {

View File

@ -438,16 +438,18 @@ function create_url() {
elif [ "$folder" = "rocket-loader" ]; then
url="$CLOUDFLARE_AJAX/7089c43e/cloudflare-static/rocket-loader.min.js"
elif [ "$folder" = "google-material-design-icons" ]; then
if [[ $file = "MaterialIcons.woff2" ]]; then
url="$FONTSGSTATIC/s/materialicons/$version/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2"
elif [[ $file = "MaterialIconsOutlined.woff2" ]]; then
url="$FONTSGSTATIC/s/materialiconsoutlined/$version/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUce.woff2"
elif [[ $file = "MaterialIconsRound.woff2" ]]; then
url="$FONTSGSTATIC/s/materialiconsround/$version/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flwmP.woff2"
elif [[ $file = "MaterialIconsSharp.woff2" ]]; then
url="$FONTSGSTATIC/s/materialiconssharp/$version/oPWQ_lt5nv4pWNJpghLP75WiFR4kLh3kvmvR.woff2"
elif [[ $file = "MaterialIconsTwoTone.woff2" ]]; then
url="$FONTSGSTATIC/s/materialiconstwotone/$version/hESh6WRmNCxEqUmNyh3JDeGxjVVyMg4tHGctNCu0.woff2"
iconVersion=$(echo -e "$path" | cut -d"/" -f5)
iconType=$(echo -e "$path" | cut -d"/" -f4)
if [[ $iconType = "materialicons" ]]; then
url="$FONTSGSTATIC/s/materialicons/$iconVersion/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2"
elif [[ $iconType = "materialiconsoutlined" ]]; then
url="$FONTSGSTATIC/s/materialiconsoutlined/$iconVersion/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUce.woff2"
elif [[ $iconType = "materialiconsround" ]]; then
url="$FONTSGSTATIC/s/materialiconsround/$iconVersion/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flwmP.woff2"
elif [[ $iconType = "materialiconssharp" ]]; then
url="$FONTSGSTATIC/s/materialiconssharp/$iconVersion/oPWQ_lt5nv4pWNJpghLP75WiFR4kLh3kvmvR.woff2"
elif [[ $iconType = "materialiconstwotone" ]]; then
url="$FONTSGSTATIC/s/materialiconstwotone/$iconVersion/hESh6WRmNCxEqUmNyh3JDeGxjVVyMg4tHGctNCu0.woff2"
fi
elif [ "$folder" = "object-assign" ]; then
url="$JSDELIVR/npm/object-assign@4.1.1/index.js"
@ -675,7 +677,7 @@ function create_url() {
url="$JSDELIVR/npm/$folder@$version/dist/leaflet.featuregroup.subgroup.js"
elif [ "$folder" = "bodymovin" ] && [[ "$version" = 5* ]]; then
url="$CLOUDFLARE/$folder/$version/lottie.min.js"
elif [ "$folder" = "mathjax" ]; then
elif [ "$folder" = "mathjax" ] || [ "$folder" = "tinymce" ]; then
url=$(echo "$path" | cut -d"/" -f3-)
url="$CLOUDFLARE/$url"
elif [ "$folder" = "vanilla-lazyload" ]; then
@ -698,7 +700,7 @@ function create_url() {
fi
elif [ "$folder" = "angular.js" ]; then
url="$GOOGLEAPIS/angularjs/$version/$subfile"
elif [ "$folder" = "react-router" ] && [ "$version" != "5.3.1" ];then
elif [ "$folder" = "react-router" ] && [[ "$version" != 5* ]];then
url="$CLOUDFLARE/$folder/$version/react-router.production.min.js"
elif [ "$folder" = "search-insights" ];then
url="$JSDELIVR/npm/$folder@$version/dist/$jfile"

View File

@ -57,6 +57,7 @@ const Resource = {
'VERSION_EXPRESSION': /(?:\d{1,2}\.){1,3}\d{1,2}(?:-\d)?|latest/,
'SINGLE_NUMBER_EXPRESSION': /^\D+@?\d.*$/,
'MATHJAX': /\/\w.*(?:\d{1,2}\.){1,3}\d{1,2}(?:-\d)?\/|\/(mathjax\/)?latest\//,
'TINYMCE': /\/\w.*(?:\d{1,2}\.){1,3}\d{1,2}(?:-\d)?\//,
'VERSION_PLACEHOLDER': '{version}'
};

View File

@ -455,6 +455,7 @@ mappings.cdn = {
'Swiper/{version}/css/swiper.': resources.swiperCSS,
'Swiper/{version}/js/swiper.': resources.swiperJS,
'tether/{version}/js/tether.': resources.tetherJS,
'tinymce/{version}/': resources.tinymce,
'tooltipster/{version}/js/jquery.tooltipster.': resources.jQueryTooltipster,
'toastr.js/{version}/toastr.min.css': resources.toastrCSS,
'toastr.js/{version}/toastr.min.js': resources.toastrJS,

View File

@ -245,6 +245,9 @@ requestAnalyzer._getPathOfBundle = function (initiator, channelHost, channelPath
if (filename.startsWith('/npm/mathjax@3')) {
filename = filename.replace('/npm/mathjax@3/', '');
}
if (filename === 'config/TeX-AMS_HTML.js') {
filename = 'config/TeX-AMS_HTML-full.js';
}
if (!MathJaxFiles[filename] && !MathJax3Files[filename]) {
console.warn(`${LogString.PREFIX} ${LogString.MISSING_RESOURCE} ${channelHost + channelPath}`);
log.append(initiator, channelHost + channelPath, '-', true);
@ -253,6 +256,16 @@ requestAnalyzer._getPathOfBundle = function (initiator, channelHost, channelPath
};
}
}
if (bundle === 'TinyMCE (Bundle)' && filename !== 'tinymce.min.js') {
filename = channelPath.replace(Resource.TINYMCE, '');
if (filename.startsWith('plugins/')) {
console.warn(`${LogString.PREFIX} ${LogString.MISSING_RESOURCE} ${channelHost + channelPath}`);
log.append(initiator, channelHost + channelPath, '-', true);
return {
'result': false,
};
}
}
return helpers.formatFilename(filename.endsWith('.js')
? `${targetPath + filename}m`
: targetPath + filename);

View File

@ -1005,6 +1005,10 @@ var resources = {
'tetherJS': {
'path': 'resources/tether/{version}/js/tether.min.jsm'
},
// TinyMCE Community
'tinymce': {
'path': 'resources/tinymce/{version}/'
},
// toastr [Deprecated]
'toastrCSS': {
'path': 'resources/toastr.js/{version}/toastr.min.css'

View File

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

View File

@ -65,6 +65,8 @@ targets.determineBundle = function (path) {
val = 'Pure CSS';
} else if (path.startsWith('/vex-js/')) {
val = 'vex';
} else if (path.startsWith('/tinymce/')) {
val = 'TinyMCE';
}
return val === '' ? val : `${val} (Bundle)`;
@ -78,7 +80,7 @@ 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.13.0';
if (type.startsWith('/algoliasearch/4.')) return '4.13.1';
if (type.startsWith('/alpinejs/2.')) return '2.8.2';
if (type.startsWith('/alpinejs/3.')) return '3.10.2';
if (type.startsWith('/anchor-js/3.')) return '3.2.2';
@ -94,7 +96,7 @@ targets.setLastVersion = function (type, version) {
return '1.8.2'; // >= 1.6.11
}
if (type.startsWith('/angularjs-slider/6.')) return '6.7.0';
if (type.startsWith('/angularjs-slider/7.')) return '7.0.1';
if (type.startsWith('/angularjs-slider/7.')) return '7.1.0';
if (type.startsWith('/angularjs-toaster/0.')) return '0.4.18';
if (type.startsWith('/angularjs-toaster/1.')) return '1.2.0';
if (type.startsWith('/angularjs-toaster/2.')) return '2.2.0';
@ -132,19 +134,19 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/blazy/1.')) return '1.8.2';
if (type.startsWith('/bluebird/3.')) return '3.7.2';
if (type.startsWith('/bodymovin/4.')) return '4.13.0';
if (type.startsWith('/bodymovin/5.')) return '5.9.3';
if (type.startsWith('/bodymovin/5.')) return '5.9.4';
if (type.startsWith('/bootbox.js/4.')) return '4.4.0';
if (type.startsWith('/bootbox.js/5.')) return '5.5.3';
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.9.0';
if (type.startsWith('/bootstrap-icons/1.')) return '1.8.1';
if (type.startsWith('/bootstrap-icons/1.')) return '1.8.3';
if (type.startsWith('/bootstrap-multiselect/0.')) return '0.9.16';
if (type.startsWith('/bootstrap-multiselect/1.')) return '1.1.1';
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.20.0';
if (type.startsWith('/bootstrap-table/1.')) return '1.20.2';
if (type.startsWith('/bootstrap-toggle/2.')) return '2.2.2';
if (type.startsWith('/bootstrap-vue/2.')) return '2.22.0';
if (type.startsWith('/bootstrap-3-typeahead/4.')) return '4.0.2';
@ -155,14 +157,14 @@ targets.setLastVersion = function (type, version) {
if (version !== 'latest' && helpers.compareVersion('1.9.4', version)) return '1.9.4';
return '2.11.0';
}
if (type.startsWith('/bulma/0.')) return '0.9.3';
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.7.1';
if (type.startsWith('/Chart.js/3.')) return '3.8.0';
if (type.startsWith('/clappr/0.') || type.startsWith('/clappr/latest/')) return '0.4.7';
if (type.startsWith('/chosen/1.')) return '1.8.7';
if (type.startsWith('/clipboard.js/1.')) return '1.7.1';
if (type.startsWith('/clipboard.js/2.')) return '2.0.10';
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.1';
if (type.startsWith('/createjs/')) return '1.0.0';
@ -173,7 +175,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/d3/7.')) return '7.4.4';
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.1';
if (type.startsWith('/dayjs/1.')) return '1.11.2';
if (type.startsWith('/dexie/3.') || type.startsWith('/dexie/latest')) return '3.2.2';
if (type.startsWith('/docsearch.js/2.')) return '2.6.3';
if (type.startsWith('/docsify/4.') || type.startsWith('/docsify/')) return '4.12.2';
@ -191,7 +193,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/findify')) {
if (helpers.compareVersion('6.9.15', version)) return '6.9.15'; // <= 6.9.15
if (helpers.compareVersion('6.17.0', version)) return '6.17.0'; // > 6.9.15 to <= 6.17.0
return '7.1.37';
return '7.1.43';
}
if (type.startsWith('/fancybox/2.')) return '2.1.7';
if (type.startsWith('/fancybox/3.')) return '3.5.7';
@ -211,7 +213,15 @@ targets.setLastVersion = function (type, version) {
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.10.4';
if (type.startsWith('/google-material-design-icons/')) return 'v128';
// just for testing ----------------------------------------------
if (type.startsWith('/materialicons/')) return 'v129';
if (type.startsWith('/materialiconsoutlined/')) return 'v104';
if (type.startsWith('/materialiconsround/')) return 'v103';
if (type.startsWith('/materialiconssharp/')) return 'v104';
if (type.startsWith('/materialiconstwotone/')) return 'v107';
// ---------------------------------------------------------------
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';
@ -224,9 +234,9 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/hogan.js/')) return '3.0.2';
if (type.startsWith('/instantsearch.css/7.')) return '7.4.5';
if (type.startsWith('/instantsearch.js/3.')) return '3.7.0';
if (type.startsWith('/instantsearch.js/4.')) return '4.40.5';
if (type.startsWith('/instantsearch.js/4.')) return '4.40.6';
if (type.startsWith('/iScroll/5.')) return '5.2.0';
if (type.startsWith('/izimodal/1.')) return '1.5.1';
if (type.startsWith('/izimodal/1.')) return '1.6.0';
if (type.startsWith('/jets/0.')) return '0.14.1';
if (type.startsWith('/jquery/1.')) {
if (helpers.compareVersion('1.7.1', version)) return '1.7.1'; // <= v1.7.1
@ -261,7 +271,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/jquery-mobile/1.')) return '1.4.5';
if (type.startsWith('/jquery-mousewheel/3.')) return '3.1.13';
if (type.startsWith('/jScrollPane/2.')) return '2.2.2';
if (type.startsWith('/jquery-validate/1.')) return '1.19.3';
if (type.startsWith('/jquery-validate/1.')) return '1.19.4';
if (type.startsWith('/jeditable.js/1.')) return '1.8.0';
if (type.startsWith('/jeditable.js/2.')) return '2.0.19';
if (type.startsWith('/jquery.cycle2/2.')) return '2.1.6';
@ -284,7 +294,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.9.52';
if (type.startsWith('/libphonenumber-js/1.')) return '1.10.6';
if (type.startsWith('/libsodium-wrappers/0.')) return '0.5.4';
if (type.startsWith('/lightbox2/2.')) return '2.11.3';
if (type.startsWith('/lightcase/2.')) return '2.5.0';
@ -294,7 +304,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('/magnific-popup.js/1.')) return '1.1.0';
if (type.startsWith('/markdown-it/')) return '13.0.0';
if (type.startsWith('/markdown-it/')) return '13.0.1';
if (type.startsWith('/mdbootstrap/4.')) return '4.20.0';
if (type.startsWith('/material-design-icons/2.')) return '2.8.94';
if (type.startsWith('/material-design-icons/3.')) return '3.9.97';
@ -306,9 +316,9 @@ targets.setLastVersion = function (type, version) {
}
if (type.startsWith('/materialize/1.')) return '1.0.0';
if (type.startsWith('/mathjax/2.') || type.startsWith('/mathjax/latest')) return '2.7.5';
if (type.startsWith('/mathjax/3.')) return '3.2.0';
if (type.startsWith('/mathjax/3.')) return '3.2.1';
if (type.startsWith('/mdb-ui-kit/3.')) return '3.11.0';
if (type.startsWith('/mdb-ui-kit/4.')) return '4.0.0';
if (type.startsWith('/mdb-ui-kit/4.')) return '4.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';
@ -321,7 +331,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/ngx-bootstrap/7.')) return '7.1.2';
if (type.startsWith('/ngx-bootstrap/8.')) return '8.0.0';
if (type.startsWith('/noUiSlider/14.')) return '14.7.0';
if (type.startsWith('/noUiSlider/15.')) return '15.5.1';
if (type.startsWith('/noUiSlider/15.')) return '15.6.0';
if (type.startsWith('/nvd3/1.')) return '1.8.6';
if (type.startsWith('/object-assign@4.')) return '4.1.1';
if (type.startsWith('/oclazyload/1.')) return '1.1.0';
@ -350,8 +360,8 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/react-dom/17.')) return '17.0.2';
if (type.startsWith('/react-dom/18.')) return '18.1.0';
if (type.startsWith('/react-redux/7.')) return '7.2.8';
if (type.startsWith('/react-redux/8.')) return '8.0.1';
if (type.startsWith('/react-router/5.')) return '5.3.1';
if (type.startsWith('/react-redux/8.')) return '8.0.2';
if (type.startsWith('/react-router/5.')) return '5.3.3';
if (type.startsWith('/react-router/6.')) return '6.3.0';
if (type.startsWith('/react-side-effect/')) return '2.1.1';
if (type.startsWith('/react-lifecycles-compat/')) return '3.0.4';
@ -367,7 +377,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/showdown/0.')) return '0.5.1';
if (type.startsWith('/showdown/1.')) return '1.9.1';
if (type.startsWith('/showdown/2.')) return '2.1.0';
if (type.startsWith('/simplebar/')) return '5.3.6';
if (type.startsWith('/simplebar/')) return '5.3.8';
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
@ -378,7 +388,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.5.0';
if (type.startsWith('/socket.io/4.')) return '4.5.1';
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';
@ -392,8 +402,10 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/Swiper/5.')) return '5.4.5';
if (type.startsWith('/Swiper/6.')) return '6.8.4';
if (type.startsWith('/Swiper/7.')) return '7.4.1';
if (type.startsWith('/Swiper/8.') || type.startsWith('/Swiper/')) return '8.1.4';
if (type.startsWith('/Swiper/8.') || type.startsWith('/Swiper/')) return '8.1.6';
if (type.startsWith('/tether/1.')) return '1.4.7';
if (type.startsWith('/tinymce/5.')) return '5.10.5';
if (type.startsWith('/tinymce/6.')) return '6.0.3';
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';
@ -407,7 +419,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/twitter-bootstrap/5.')) return '5.1.3';
if (type.startsWith('/underscore.js/1.')) return '1.13.3';
if (type.startsWith('/urlive/1.')) return '1.1.1';
if (type.startsWith('/vanilla-lazyload')) return '17.8.1';
if (type.startsWith('/vanilla-lazyload')) return '17.8.2';
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';
@ -415,13 +427,13 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/video.js/')) {
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
return '7.19.2';
return '7.20.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.2.33';
if (type.startsWith('/vue/3.')) return '3.2.36';
if (type.startsWith('/vue-i18n/8.')) return '8.27.1';
if (type.startsWith('/vue-i18n/9.')) return '9.1.9';
if (type.startsWith('/vue-i18n/9.')) return '9.1.10';
if (type.startsWith('/vue-match-media/1.')) return '1.0.3';
if (type.startsWith('/vue-resource/1.')) return '1.5.3';
if (type.startsWith('/vuex/3.')) return '3.6.2';
@ -442,6 +454,7 @@ targets.determineResourceName = function (filename) {
};
const ListOfFiles = {
'tinymce.min.jsm': 'TinyMCE',
'createjs.min.jsm': 'CreateJS',
'vue-match-media.min.jsm': 'vue-match-media',
'typeahead.bundle.min.jsm': 'corejs-typeahead',

View File

@ -27,45 +27,41 @@
<div class="release-notes-area">
<p>Updated</p>
<ul>
<li>moment.js v2.29.2 -> v2.29.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/946">#946</a>)</li>
<li>bootstrap-vue v2.21.2 -> v2.22.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/947">#947</a>)</li>
<li>react-router v5.2.1 -> v5.3.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/948">#948</a>)</li>
<li>leaflet v1.7.1 -> v1.8.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/949">#949</a>)</li>
<li>plyr v3.6.12 -> v3.7.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/950">#950</a>)</li>
<li>redux v4.1.2 -> v4.2.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/951">#951</a>)</li>
<li>alpinejs v3.9.6 -> v3.10.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/953">#953</a>)</li>
<li>Swiper v8.1.1 -> v8.1.4 (<a href="https://codeberg.org/nobody/LocalCDN/issues/955">#955</a>)</li>
<li>video.js v7.19.1 -> v7.19.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/956">#956</a>)</li>
<li>showdown v2.0.3 -> v2.1.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/957">#957</a>)</li>
<li>findify-bundle v7.1.36 -> v7.1.37 (<a href="https://codeberg.org/nobody/LocalCDN/issues/958">#958</a>)</li>
<li>Google Material Icons v126 -> v127 (<a href="https://codeberg.org/nobody/LocalCDN/issues/959">#959</a>)</li>
<li>gsap v3.10.3 -> v3.10.4 (<a href="https://codeberg.org/nobody/LocalCDN/issues/960">#960</a>)</li>
<li>libphonenumber-js v1.9.51 -> v1.9.52 (<a href="https://codeberg.org/nobody/LocalCDN/issues/961">#961</a>)</li>
<li>markdown-it v12.3.2 -> v13.0.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/962">#962</a>)</li>
<li>bodymovin v5.9.2 -> v5.9.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/966">#966</a>)</li>
<li>bootstrap-table v1.19.1 -> v1.20.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/967">#967</a>)</li>
<li>underscore.js v1.13.2 -> v1.13.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/968">#968</a>)</li>
<li>socket.io v4.4.1 -> v4.5.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/969">#969</a>)</li>
<li>videojs-seek-buttons v2.2.0 -> v2.2.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/970">#970</a>)</li>
<li>axios v0.26.1 -> v0.27.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/971">#971</a>)</li>
<li>bootbox.js v5.5.2 -> v5.5.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/972">#972</a>)</li>
<li>vanilla-lazyload v17.7.0 -> v17.8.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/973">#973</a>)</li>
<li>react-dom v18.0.0 -> v18.1.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/974">#974</a>)</li>
<li>react v18.0.0 -> v18.1.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/975">#975</a>)</li>
<li>instantsearch.js v4.40.4 -> v4.40.5 (<a href="https://codeberg.org/nobody/LocalCDN/issues/976">#976</a>)</li>
<li>dexie v3.2.1 -> v3.2.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/977">#977</a>)</li>
<li>bodymovin v5.9.3 -> v5.9.4 (<a href="https://codeberg.org/nobody/LocalCDN/issues/978">#978</a>)</li>
<li>noUiSlider v15.5.1 -> v15.6.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/979">#979</a>)</li>
<li>vue-i18n v9.1.9 -> v9.1.10 (<a href="https://codeberg.org/nobody/LocalCDN/issues/980">#980</a>)</li>
<li>findify-bundle v7.1.37 -> v7.1.43 (<a href="https://codeberg.org/nobody/LocalCDN/issues/981">#981</a>)</li>
<li>markdown-it v13.0.0 -> v13.0.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/982">#982</a>)</li>
<li>clipboard.js v2.0.10 -> v2.0.11 (<a href="https://codeberg.org/nobody/LocalCDN/issues/983">#983</a>)</li>
<li>libphonenumber-js v1.9.52 -> v1.10.6 (<a href="https://codeberg.org/nobody/LocalCDN/issues/984">#984</a>)</li>
<li>dayjs v1.11.1 -> v1.11.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/985">#985</a>)</li>
<li>bulma v0.9.3 -> v0.9.4 (<a href="https://codeberg.org/nobody/LocalCDN/issues/986">#986</a>)</li>
<li>bootstrap-table v1.20.0 -> v1.20.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/987">#987</a>)</li>
<li>bootstrap-icons v1.8.1 -> v1.8.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/988">#988</a>)</li>
<li>Swiper v8.1.4 -> v8.1.6 (<a href="https://codeberg.org/nobody/LocalCDN/issues/989">#989</a>)</li>
<li>react-router v5.3.1 -> v5.3.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/990">#990</a>)</li>
<li>jquery-validate v1.19.3 -> v1.19.4 (<a href="https://codeberg.org/nobody/LocalCDN/issues/993">#993</a>)</li>
<li>algoliasearch v4.13.0 -> v4.13.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/994">#994</a>)</li>
<li>socket.io v4.5.0 -> v4.5.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/995">#995</a>)</li>
<li>vue v3.2.33 -> v3.2.36 (<a href="https://codeberg.org/nobody/LocalCDN/issues/996">#996</a>)</li>
<li>mathjax v3.2.0 -> v3.2.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/997">#997</a>)</li>
<li>video.js v7.19.2 -> v7.20.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/998">#998</a>)</li>
<li>izimodal v1.5.1 -> v1.6.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1000">#1000</a>)</li>
<li>mdb-ui-kit v4.0.0 -> v4.1.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1001">#1001</a>)</li>
<li>react-redux v8.0.1 -> v8.0.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1002">#1002</a>)</li>
<li>instantsearch.js v4.40.5 -> v4.40.6 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1003">#1003</a>)</li>
<li>simplebar v5.3.6 -> v5.3.8 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1004">#1004</a>)</li>
<li>vanilla-lazyload v17.8.1 -> v17.8.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1005">#1005</a>)</li>
<li>Chart.js v3.7.1 -> v3.8.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1006">#1006</a>)</li>
<li>angularjs-slider v7.0.1 -> v7.1.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1007">#1007</a>)</li>
</ul>
<p>Added</p>
<ul>
<li>react-redux v8.0.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/945">#945</a>)</li>
<li>CreateJS v1.0.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/943">#943</a>)</li>
<li>CDN: code.createjs.com (<a href="https://codeberg.org/nobody/LocalCDN/issues/943">#943</a>)</li>
<li>mdb-ui-kit v4.0.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/954">#954</a>)</li>
<li>More Google Material Icons: Outlined, Round, Sharp, Two Tone (<a href="https://codeberg.org/nobody/LocalCDN/issues/964">#964</a>)</li>
<li>TinyMCE v5.10.5 and v6.0.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/999">#999</a>)</li>
</ul>
<p>Improved</p>
<p>Fixed</p>
<ul>
<li>Sort domains alphabetically (<a href="https://codeberg.org/nobody/LocalCDN/issues/952">#952</a>)</li>
<li>MathJax: TeX-AMS_HTML.js -> TeX-AMS_HTML-full.js (<a href="https://codeberg.org/nobody/LocalCDN/issues/991">#991</a>)</li>
</ul>
</div>
<div id="generator-section">
@ -104,6 +100,49 @@
</div>
<div id="history"><span id="history-indicator">+</span> Previous Versions</div>
<div id="history-release-notes">
<p class='release-date'>2022-04-30 (v2.6.27)</p>
<p>Updated</p>
<ul>
<li>moment.js v2.29.2 -> v2.29.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/946">#946</a>)</li>
<li>bootstrap-vue v2.21.2 -> v2.22.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/947">#947</a>)</li>
<li>react-router v5.2.1 -> v5.3.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/948">#948</a>)</li>
<li>leaflet v1.7.1 -> v1.8.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/949">#949</a>)</li>
<li>plyr v3.6.12 -> v3.7.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/950">#950</a>)</li>
<li>redux v4.1.2 -> v4.2.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/951">#951</a>)</li>
<li>alpinejs v3.9.6 -> v3.10.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/953">#953</a>)</li>
<li>Swiper v8.1.1 -> v8.1.4 (<a href="https://codeberg.org/nobody/LocalCDN/issues/955">#955</a>)</li>
<li>video.js v7.19.1 -> v7.19.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/956">#956</a>)</li>
<li>showdown v2.0.3 -> v2.1.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/957">#957</a>)</li>
<li>findify-bundle v7.1.36 -> v7.1.37 (<a href="https://codeberg.org/nobody/LocalCDN/issues/958">#958</a>)</li>
<li>Google Material Icons v126 -> v127 (<a href="https://codeberg.org/nobody/LocalCDN/issues/959">#959</a>)</li>
<li>gsap v3.10.3 -> v3.10.4 (<a href="https://codeberg.org/nobody/LocalCDN/issues/960">#960</a>)</li>
<li>libphonenumber-js v1.9.51 -> v1.9.52 (<a href="https://codeberg.org/nobody/LocalCDN/issues/961">#961</a>)</li>
<li>markdown-it v12.3.2 -> v13.0.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/962">#962</a>)</li>
<li>bodymovin v5.9.2 -> v5.9.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/966">#966</a>)</li>
<li>bootstrap-table v1.19.1 -> v1.20.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/967">#967</a>)</li>
<li>underscore.js v1.13.2 -> v1.13.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/968">#968</a>)</li>
<li>socket.io v4.4.1 -> v4.5.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/969">#969</a>)</li>
<li>videojs-seek-buttons v2.2.0 -> v2.2.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/970">#970</a>)</li>
<li>axios v0.26.1 -> v0.27.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/971">#971</a>)</li>
<li>bootbox.js v5.5.2 -> v5.5.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/972">#972</a>)</li>
<li>vanilla-lazyload v17.7.0 -> v17.8.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/973">#973</a>)</li>
<li>react-dom v18.0.0 -> v18.1.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/974">#974</a>)</li>
<li>react v18.0.0 -> v18.1.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/975">#975</a>)</li>
<li>instantsearch.js v4.40.4 -> v4.40.5 (<a href="https://codeberg.org/nobody/LocalCDN/issues/976">#976</a>)</li>
<li>dexie v3.2.1 -> v3.2.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/977">#977</a>)</li>
</ul>
<p>Added</p>
<ul>
<li>react-redux v8.0.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/945">#945</a>)</li>
<li>CreateJS v1.0.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/943">#943</a>)</li>
<li>CDN: code.createjs.com (<a href="https://codeberg.org/nobody/LocalCDN/issues/943">#943</a>)</li>
<li>mdb-ui-kit v4.0.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/954">#954</a>)</li>
<li>More Google Material Icons: Outlined, Round, Sharp, Two Tone (<a href="https://codeberg.org/nobody/LocalCDN/issues/964">#964</a>)</li>
</ul>
<p>Improved</p>
<ul>
<li>Sort domains alphabetically (<a href="https://codeberg.org/nobody/LocalCDN/issues/952">#952</a>)</li>
</ul>
<p class='release-date'>2022-04-16 (v2.6.26)</p>
<p>Updated</p>
<ul>

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

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

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

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

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

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

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -9,72 +9,72 @@
font-family: 'Material Icons';
font-style: normal;
font-weight: 400;
src: url('./v128/MaterialIcons.woff2') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialicons/v128/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2) format('woff2'); */
src: url('./materialicons/v129/MaterialIcons.woff2') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialicons/v129/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2) format('woff2'); */
}
@font-face {
font-family: 'Google Material Icons';
font-style: normal;
font-weight: 400;
src: url('./v128/MaterialIcons.woff2') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialicons/v128/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2) format('woff2'); */
src: url('./materialicons/v129/MaterialIcons.woff2') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialicons/v129/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2) format('woff2'); */
}
@font-face {
font-family: 'Material Icons Outlined';
font-style: normal;
font-weight: 400;
src: url('./v103/MaterialIconsOutlined.woff2') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialiconsoutlined/v103/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUce.woff2) format('woff2'); */
src: url('./materialiconsoutlined/v104/MaterialIconsOutlined.woff2') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialiconsoutlined/v104/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUce.woff2) format('woff2'); */
}
@font-face {
font-family: 'Google Material Icons Outlined';
font-style: normal;
font-weight: 400;
src: url('./v103/MaterialIconsOutlined.woff2') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialiconsoutlined/v103/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUce.woff2) format('woff2'); */
src: url('./materialiconsoutlined/v104/MaterialIconsOutlined.woff2') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialiconsoutlined/v104/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUce.woff2) format('woff2'); */
}
@font-face {
font-family: 'Material Icons Round';
font-style: normal;
font-weight: 400;
src: url('./v102/MaterialIconsRound.ttf') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialiconsround/v102/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flwmP.woff2) format('woff2'); */
src: url('./materialiconsround/v103/MaterialIconsRound.woff2') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialiconsround/v103/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flwmP.woff2) format('woff2'); */
}
@font-face {
font-family: 'Google Material Icons Round';
font-style: normal;
font-weight: 400;
src: url('./v102/MaterialIconsRound.ttf') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialiconsround/v102/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flwmP.woff2) format('woff2'); */
src: url('./materialiconsround/v103/MaterialIconsRound.woff2') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialiconsround/v103/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flwmP.woff2) format('woff2'); */
}
@font-face {
font-family: 'Material Icons Sharp';
font-style: normal;
font-weight: 400;
src: url('./v103/MaterialIconsSharp.woff2') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialiconssharp/v103/oPWQ_lt5nv4pWNJpghLP75WiFR4kLh3kvmvR.woff2) format('woff2'); */
src: url('./materialiconssharp/v104/MaterialIconsSharp.woff2') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialiconssharp/v104/oPWQ_lt5nv4pWNJpghLP75WiFR4kLh3kvmvR.woff2) format('woff2'); */
}
@font-face {
font-family: 'Google Material Icons Sharp';
font-style: normal;
font-weight: 400;
src: url('./v103/MaterialIconsSharp.woff2') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialiconssharp/v103/oPWQ_lt5nv4pWNJpghLP75WiFR4kLh3kvmvR.woff2) format('woff2'); */
src: url('./materialiconssharp/v104/MaterialIconsSharp.woff2') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialiconssharp/v104/oPWQ_lt5nv4pWNJpghLP75WiFR4kLh3kvmvR.woff2) format('woff2'); */
}
@font-face {
font-family: 'Material Icons Two Tone';
font-style: normal;
font-weight: 400;
src: url('./v106/MaterialIconsTwoTone.woff2') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialiconstwotone/v106/hESh6WRmNCxEqUmNyh3JDeGxjVVyMg4tHGctNCu0.woff2) format('woff2'); */
src: url('./materialiconstwotone/v107/MaterialIconsTwoTone.woff2') format('woff2');
/* src: url(https://fonts.gstatic.com/s/materialiconstwotone/v107/hESh6WRmNCxEqUmNyh3JDeGxjVVyMg4tHGctNCu0.woff2) format('woff2'); */
}
.material-icons {

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

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

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

File diff suppressed because one or more lines are too long

View File

@ -1,5 +1,5 @@
/*!
* Socket.IO v4.5.0
* Socket.IO v4.5.1
* (c) 2014-2022 Guillermo Rauch
* Released under the MIT License.
*/

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,91 @@
/**
* Copyright (c) Tiny Technologies, Inc. All rights reserved.
* Licensed under the LGPL or a commercial license.
* For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/
*/
/**
* Jquery integration plugin.
*
* @class tinymce.core.JqueryIntegration
* @private
*/
!function(){function f(){
// Reference to tinymce needs to be lazily evaluated since tinymce
// might be loaded through the compressor or other means
return d.tinymce}var p,c,u,s=[],d="undefined"!=typeof global?global:window,m=d.jQuery;m.fn.tinymce=function(o){var e,t,i,n,l=this,r="";
// No match then just ignore the call
return l.length?
// Get editor instance
o?(l.css("visibility","hidden"),
// Load TinyMCE on demand, if we need to
d.tinymce||c||!(e=o.script_url)?
// Delay the init call until tinymce is loaded
1===c?s.push(a):a():(c=1,t=e.substring(0,e.lastIndexOf("/")),
// Check if it's a dev/src version they want to load then
// make sure that all plugins, themes etc are loaded in source mode as well
-1!=e.indexOf(".min")&&(r=".min"),
// Setup tinyMCEPreInit object this will later be used by the TinyMCE
// core script to locate other resources like CSS files, dialogs etc
// You can also predefined a tinyMCEPreInit object and then it will use that instead
d.tinymce=d.tinyMCEPreInit||{base:t,suffix:r},
// url contains gzip then we assume it's a compressor
-1!=e.indexOf("gzip")&&(i=o.language||"en",e=e+(/\?/.test(e)?"&":"?")+"js=true&core=true&suffix="+escape(r)+"&themes="+escape(o.theme||"modern")+"&plugins="+escape(o.plugins||"")+"&languages="+(i||""),
// Check if compressor script is already loaded otherwise setup a basic one
d.tinyMCE_GZ||(d.tinyMCE_GZ={start:function(){function n(e){f().ScriptLoader.markDone(f().baseURI.toAbsolute(e))}
// Add core languages
n("langs/"+i+".js"),
// Add themes with languages
n("themes/"+o.theme+"/theme"+r+".js"),n("themes/"+o.theme+"/langs/"+i+".js"),
// Add plugins with languages
m.each(o.plugins.split(","),function(e,t){t&&(n("plugins/"+t+"/plugin"+r+".js"),n("plugins/"+t+"/langs/"+i+".js"))})},end:function(){}})),(n=document.createElement("script")).type="text/javascript",n.onload=n.onreadystatechange=function(e){e=e||window.event,2===c||"load"!=e.type&&!/complete|loaded/.test(n.readyState)||(f().dom.Event.domLoaded=1,c=2,
// Execute callback after mainscript has been loaded and before the initialization occurs
o.script_loaded&&o.script_loaded(),a(),m.each(s,function(e,t){t()}))},n.src=e,document.body.appendChild(n)),l):f()?f().get(l[0].id):null:l;function a(){var a=[],c=0;
// Apply patches to the jQuery object, only once
u||(v(),u=!0),
// Create an editor instance for each matched node
l.each(function(e,t){var n,i=t.id,r=o.oninit;
// Generate unique id for target element if needed
i||(t.id=i=f().DOM.uniqueId()),
// Only init the editor once
f().get(i)||(
// Create editor instance and render it
n=f().createEditor(i,o),a.push(n),n.on("init",function(){var e,t=r;l.css("visibility",""),
// Run this if the oninit setting is defined
// this logic will fire the oninit callback ones each
// matched editor instance is initialized
r&&++c==a.length&&("string"==typeof t&&(e=-1===t.indexOf(".")?null:f().resolve(t.replace(/\.\w+$/,"")),t=f().resolve(t)),
// Call the oninit function with the object
t.apply(e||f(),a))}))}),
// Render the editor instances in a separate loop since we
// need to have the full editors array used in the onInit calls
m.each(a,function(e,t){t.render()})}},
// Add :tinymce pseudo selector this will select elements that has been converted into editor instances
// it's now possible to use things like $('*:tinymce') to get all TinyMCE bound elements.
m.extend(m.expr[":"],{tinymce:function(e){var t;return!!(e.id&&"tinymce"in d&&(t=f().get(e.id))&&t.editorManager===f())}});
// This function patches internal jQuery functions so that if
// you for example remove an div element containing an editor it's
// automatically destroyed by the TinyMCE API
var v=function(){function r(e){
// If the function is remove
"remove"===e&&this.each(function(e,t){var n=u(t);n&&n.remove()}),this.find("span.mceEditor,div.mceEditor").each(function(e,t){var n=f().get(t.id.replace(/_parent$/,""));n&&n.remove()})}function o(i){var e,t=this;
// Handle set value
/*jshint eqnull:true */if(null!=i)r.call(t),
// Saves the contents before get/set value of textarea/div
t.each(function(e,t){var n;(n=f().get(t.id))&&n.setContent(i)});else if(0<t.length&&(e=f().get(t[0].id)))return e.getContent()}function l(e){return e&&e.length&&d.tinymce&&e.is(":tinymce")}
// Removes any child editor instances by looking for editor wrapper elements
var u=function(e){var t=null;return e&&e.id&&d.tinymce?f().get(e.id):t},s={};
// Loads or saves contents from/to textarea if the value
// argument is defined it will set the TinyMCE internal contents
// Patch some setter/getter functions these will
// now be able to set/get the contents of editor instances for
// example $('#editorid').html('Content'); will update the TinyMCE iframe instance
m.each(["text","html","val"],function(e,t){var a=s[t]=m.fn[t],c="text"===t;m.fn[t]=function(e){var t=this;if(!l(t))return a.apply(t,arguments);if(e!==p)return o.call(t.filter(":tinymce"),e),a.apply(t.not(":tinymce"),arguments),t;// return original set for chaining
var i="",r=arguments;return(c?t:t.eq(0)).each(function(e,t){var n=u(t);i+=n?c?n.getContent().replace(/<(?:"[^"]*"|'[^']*'|[^'">])*>/g,""):n.getContent({save:!0}):a.apply(m(t),r)}),i}}),
// Makes it possible to use $('#id').append("content"); to append contents to the TinyMCE editor iframe
m.each(["append","prepend"],function(e,t){var n=s[t]=m.fn[t],r="prepend"===t;m.fn[t]=function(i){var e=this;return l(e)?i!==p?("string"==typeof i&&e.filter(":tinymce").each(function(e,t){var n=u(t);n&&n.setContent(r?i+n.getContent():n.getContent()+i)}),n.apply(e.not(":tinymce"),arguments),e):void 0:n.apply(e,arguments)}}),
// Makes sure that the editor instance gets properly destroyed when the parent element is removed
m.each(["remove","replaceWith","replaceAll","empty"],function(e,t){var n=s[t]=m.fn[t];m.fn[t]=function(){return r.call(this,t),n.apply(this,arguments)}}),s.attr=m.fn.attr,
// Makes sure that $('#tinymce_id').attr('value') gets the editors current HTML contents
m.fn.attr=function(e,t){var n=this,i=arguments;if(!e||"value"!==e||!l(n))return s.attr.apply(n,i);if(t!==p)return o.call(n.filter(":tinymce"),t),s.attr.apply(n.not(":tinymce"),i),n;// return original set for chaining
var r=n[0],a=u(r);return a?a.getContent({save:!0}):s.attr.apply(m(r),i)}}}();

View File

@ -0,0 +1,3 @@
This is where language files should be placed.
Please DO NOT translate these directly use this service: https://www.transifex.com/projects/p/tinymce/

View File

@ -0,0 +1,7 @@
/**
* Copyright (c) Tiny Technologies, Inc. All rights reserved.
* Licensed under the LGPL or a commercial license.
* For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/
*/
body{background-color:#2f3742;color:#dfe0e4;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem}a{color:#4099ff}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#6d737b}figure{display:table;margin:1rem auto}figure figcaption{color:#8a8f97;display:block;margin-top:.25rem;text-align:center}hr{border-color:#6d737b;border-style:solid;border-width:1px 0 0 0}code{background-color:#6d737b;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #6d737b;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #6d737b;margin-right:1.5rem;padding-right:1rem}

View File

@ -0,0 +1,7 @@
/**
* Copyright (c) Tiny Technologies, Inc. All rights reserved.
* Licensed under the LGPL or a commercial license.
* For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/
*/
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#ccc}figure{display:table;margin:1rem auto}figure figcaption{color:#999;display:block;margin-top:.25rem;text-align:center}hr{border-color:#ccc;border-style:solid;border-width:1px 0 0 0}code{background-color:#e8e8e8;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #ccc;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #ccc;margin-right:1.5rem;padding-right:1rem}

View File

@ -0,0 +1,7 @@
/**
* Copyright (c) Tiny Technologies, Inc. All rights reserved.
* Licensed under the LGPL or a commercial license.
* For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/
*/
@media screen{html{background:#f4f4f4;min-height:100%}}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif}@media screen{body{background-color:#fff;box-shadow:0 0 4px rgba(0,0,0,.15);box-sizing:border-box;margin:1rem auto 0;max-width:820px;min-height:calc(100vh - 1rem);padding:4rem 6rem 6rem 6rem}}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#ccc}figure figcaption{color:#999;margin-top:.25rem;text-align:center}hr{border-color:#ccc;border-style:solid;border-width:1px 0 0 0}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #ccc;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #ccc;margin-right:1.5rem;padding-right:1rem}

View File

@ -0,0 +1,7 @@
/**
* Copyright (c) Tiny Technologies, Inc. All rights reserved.
* Licensed under the LGPL or a commercial license.
* For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/
*/
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem auto;max-width:900px}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#ccc}figure{display:table;margin:1rem auto}figure figcaption{color:#999;display:block;margin-top:.25rem;text-align:center}hr{border-color:#ccc;border-style:solid;border-width:1px 0 0 0}code{background-color:#e8e8e8;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #ccc;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #ccc;margin-right:1.5rem;padding-right:1rem}

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,7 @@
/**
* Copyright (c) Tiny Technologies, Inc. All rights reserved.
* Licensed under the LGPL or a commercial license.
* For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/
*/
.tinymce-mobile-unfocused-selections .tinymce-mobile-unfocused-selection{background-color:green;display:inline-block;opacity:.5;position:absolute}body{-webkit-text-size-adjust:none}body img{max-width:96vw}body table img{max-width:95%}body{font-family:sans-serif}table{border-collapse:collapse}

File diff suppressed because one or more lines are too long

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