Compare commits

...

314 Commits

Author SHA1 Message Date
nobody de76247809
Merge remote-tracking branch 'origin/develop' 2024-05-06 05:50:27 +02:00
nobody 41cafee9d0
vue-router v4.3.0 -> v4.3.2 2024-05-05 09:41:33 +02:00
nobody 13a9effa1c
vue-i18n v9.12.0 -> v9.13.1 2024-05-05 09:41:13 +02:00
nobody 4dca8e10b1
vue v3.4.21 -> v3.4.26 2024-05-05 09:40:33 +02:00
nobody ac99dcc8ed
video.js v8.11.8 -> v8.13.0 2024-05-05 09:39:37 +02:00
nobody 6e9f91c48c
tensorflow v4.17.0 -> v4.19.0 2024-05-05 09:37:02 +02:00
nobody 2590d7d752
swagger-ui v5.15.1 -> v5.17.3 2024-05-05 09:36:11 +02:00
nobody 6bf65227fc
react-router v6.22.3 -> v6.23.0 2024-05-05 09:35:32 +02:00
nobody 5ea490e3b5
react-intl v6.6.5 -> v6.6.6 2024-05-05 09:34:59 +02:00
nobody bb54f5279a
react-dom v18.2.0 -> v18.3.1 2024-05-05 09:34:13 +02:00
nobody e5a8ebe21b
react v18.2.0 -> v18.3.1 2024-05-05 09:33:43 +02:00
nobody 843b7dfc16
p5.js v1.9.2 -> v1.9.3 2024-05-05 09:33:03 +02:00
nobody 6297948747
libphonenumber-js v1.10.60 -> v1.10.62 2024-05-05 09:32:29 +02:00
nobody f28440bd6b
jqueryui v1.13.2 -> v1.13.3 2024-05-05 09:31:55 +02:00
nobody 2b73a6834d
instantsearch.js v4.66.1 -> v4.68.0 2024-05-05 09:31:15 +02:00
nobody 758d1f0b91
feather-icons v4.29.1 -> v4.29.2 2024-05-05 09:30:40 +02:00
nobody c4a2461152
dayjs v1.11.10 -> v1.11.11 2024-05-05 09:30:08 +02:00
nobody 96bf18ad4d
bootstrap-table v1.22.4 -> v1.22.5 2024-05-05 09:29:43 +02:00
nobody b44598b721
alpinejs v3.13.8 -> v3.13.10 2024-05-05 09:29:04 +02:00
KiralFox f2fc21e88f
Translated using Weblate (Chinese (Traditional))
Currently translated at 100.0% (132 of 132 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/zh_Hant/
2024-05-03 15:07:06 +02:00
109247019824 7b93578b88
Translated using Weblate (Bulgarian)
Currently translated at 100.0% (132 of 132 strings)

Co-authored-by: 109247019824 <stoyan@gmx.com>
Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/bg/
2024-04-29 22:07:22 +02:00
大王叫我来巡山 5c8de03f34
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (132 of 132 strings)

Co-authored-by: 大王叫我来巡山 <hamburger2048@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/zh_Hans/
2024-04-29 22:07:20 +02:00
Linerly 608a36ec18
Translated using Weblate (Indonesian)
Currently translated at 100.0% (132 of 132 strings)

Co-authored-by: Linerly <linerly@proton.me>
Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/id/
2024-04-29 22:07:18 +02:00
Oğuz Ersen 839d36e635
Translated using Weblate (Turkish)
Currently translated at 100.0% (132 of 132 strings)

Co-authored-by: Oğuz Ersen <oguz@ersen.moe>
Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/tr/
2024-04-29 22:07:16 +02:00
gallegonovato 3c9f4cec10
Translated using Weblate (Spanish)
Currently translated at 100.0% (132 of 132 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/es/
2024-04-29 22:07:13 +02:00
nobody 5915ced72f
rename method (#1626) 2024-04-28 08:13:42 +02:00
nobody c4f6c3c798
add missing file names for statistics data 2024-04-28 08:11:06 +02:00
nobody 1cd95ef863
cleanup and replace all instances of 'var' with 'let' 2024-04-28 08:10:21 +02:00
nobody e04c723de5
Extend statistics over the whole time range (#1626) 2024-04-28 08:09:56 +02:00
nobody c3a821c32a
update i18n (#1626) 2024-04-28 08:09:02 +02:00
nobody e87b40e6b9
cleanup and replace all instances of 'var' with 'let' 2024-04-28 07:18:40 +02:00
nobody 8db699e210
Fixed: welcome page autoclose (#1625) 2024-04-25 18:51:29 +02:00
nobody 0f4464cb3a
Added: twitter-bootstrap v5.1.3 (#1624) 2024-04-17 18:58:31 +02:00
nobody 2efaf25bb6
Wildcard support extended in all lists (#1622) 2024-04-17 18:54:50 +02:00
nobody f785cd77b9
v2.6.67 2024-04-13 06:49:37 +02:00
nobody c82f28ca38
Merge remote-tracking branch 'origin/develop' 2024-04-13 06:46:18 +02:00
nobody 3314bdbceb
Update updates.html 2024-04-13 06:40:10 +02:00
nobody a6e01541ca
Update THIRD_PARTY.txt 2024-04-12 21:51:46 +02:00
nobody ace529316c
algoliasearch v4.22.1 -> v4.23.3 2024-04-12 21:39:52 +02:00
nobody 3dcc7025e3
libphonenumber-js v1.10.58 -> v1.10.60 2024-04-12 21:39:22 +02:00
nobody ab082579dc
instantsearch.js v4.66.0 -> v4.66.1 2024-04-12 21:38:20 +02:00
nobody e2bd8ce3fa
webrtc-adapter v8.2.3 -> v9.0.1 2024-04-12 21:37:30 +02:00
nobody 8cddef7544
vue-i18n v9.10.2 -> v9.12.0 2024-04-12 21:36:54 +02:00
nobody 34cb76848d
dexie v3.2.6 -> v4.0.4 2024-04-12 21:36:08 +02:00
nobody 870b08ba36
bootstrap-table v1.22.3 -> v1.22.4 2024-04-12 21:35:29 +02:00
nobody d5e06b9b10
hls.js v1.5.7 -> v1.5.8 2024-04-12 21:34:48 +02:00
nobody b5fc4e089e
p5.js v1.9.1 -> v1.9.2 2024-04-12 21:34:03 +02:00
nobody 3d658a2794
swagger-ui v5.12.0 -> v5.15.1 2024-04-12 21:33:15 +02:00
nobody 8fa3d016a1
alpinejs v3.13.7 -> v3.13.8 2024-04-12 21:32:30 +02:00
nobody 6b684648a9
font-awesome v6.5.1 -> v6.5.2 2024-04-12 21:31:47 +02:00
nobody 7aeb646773
react-intl v6.6.2 -> v6.6.5 2024-04-12 21:30:33 +02:00
nobody 4e841ab637
materialicons v141 -> v142 2024-04-12 21:29:28 +02:00
nobody 5b24cdc412
vanilla-lazyload v17.8.8 -> v19.1.3 2024-04-12 21:28:24 +02:00
nobody 225905ca68
bulma v0.9.4 -> v1.0.0 2024-04-12 21:26:27 +02:00
nobody 4d38d04e17
highlight.js v7.x, v8.x, v9.x, v10.x -> v11.x 2024-04-12 21:25:41 +02:00
nobody fbd89e2d82
tinymce v6.8.3 -> v7.0.1 2024-04-12 21:17:10 +02:00
Hosted Weblate 68032c280b
Merge branch 'origin/develop' into Weblate. 2024-04-12 06:27:19 +02:00
nobody 5df53e2ea2
remove drawer 2024-04-12 06:27:05 +02:00
nobody fb5a3f779b
remove d3-legend 2024-04-12 06:26:41 +02:00
nobody 1211a9c43a
remove angular-stripe-checkout 2024-04-12 06:26:01 +02:00
nobody 71f358392c
remove angular-ui-utils 2024-04-12 06:25:02 +02:00
nobody 4e8cd7127f
remove angular-ui-select 2024-04-12 06:24:17 +02:00
nobody cc9dacbde6
remove FitText.js 2024-04-12 06:23:25 +02:00
Limfjorden 542a255d48
Translated using Weblate (Danish)
Currently translated at 64.8% (85 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/da/
2024-04-02 21:02:15 +02:00
nobody ce6e48ca7b
Error in docsify themes request fixed (#1623) 2024-03-18 17:52:22 +01:00
nobody 50f2e0ff38
Revert "Add docsify themes (#1623)" 2024-03-18 17:51:52 +01:00
nobody 354e519ae9
Error in docsify themes request fixed (#1623) 2024-03-18 17:46:33 +01:00
nobody e04d7e4d1d
Revert "Add docsify themes (#1623)" 2024-03-18 16:59:57 +01:00
nobody df7c1dbbf6
v2.6.66 2024-03-17 11:09:09 +01:00
nobody ca44b4a129
Merge remote-tracking branch 'origin/develop' 2024-03-17 11:07:47 +01:00
nobody ed2b87b4b4
Update updates.html 2024-03-17 11:07:25 +01:00
nobody 74dea23e1d
libphonenumber-js v1.10.57 -> v1.10.58 2024-03-17 11:02:57 +01:00
nobody 008db469fe
vue-i18n v9.9.1 -> v9.10.2 2024-03-17 11:02:36 +01:00
nobody 9fd7296288
p5.js v1.9.0 -> v1.9.1 2024-03-17 11:02:01 +01:00
nobody e3ba1c8c32
mdb-ui-kit v7.1.0 -> v7.2.0 2024-03-17 11:01:17 +01:00
nobody 773beb1697
swagger-ui v5.11.8 -> v5.12.0 2024-03-17 11:00:29 +01:00
nobody 5efa34e932
alpinejs v3.13.5 -> v3.13.7 2024-03-17 10:59:47 +01:00
nobody b98d1fd753
video.js v8.11.5 -> v8.11.8 2024-03-17 10:58:57 +01:00
nobody cf2cae09e4
react-router v6.22.2 -> v6.22.3 2024-03-17 10:57:58 +01:00
nobody 1be054976b
socket.io v4.7.4 -> v4.7.5 2024-03-17 10:57:03 +01:00
nobody 76a887af61
axios v1.6.7 -> v1.6.8 2024-03-17 10:56:20 +01:00
nobody 9096750ba2
d3 v7.8.5 -> v7.9.0 2024-03-17 10:55:47 +01:00
nobody 16aed7ebc0
Add docsify themes (#1623) 2024-03-17 10:48:01 +01:00
nobody 0e0bd4172e
Fixed incorrect description in the settings (#1622) 2024-03-17 10:45:30 +01:00
nobody 760c083f29
Support wildcard TLD in all lists (#1622) 2024-03-17 10:44:52 +01:00
nobody 9bedf3e9d7
Translated using Weblate (Spanish)
Currently translated at 100.0% (131 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/es/
2024-03-17 10:40:43 +01:00
nobody 4a3eea0833
v2.6.65 2024-03-01 07:24:11 +01:00
nobody bf1a6757e6
Merge remote-tracking branch 'origin/develop' 2024-03-01 07:20:07 +01:00
nobody 536cf185b5
Update updates.html 2024-02-29 19:46:28 +01:00
nobody 856a849ebb
bootswatch v5.3.2 -> v5.3.3 2024-02-29 18:59:43 +01:00
nobody eec43134f8
vanilla-lazyload v17.8.5 -> v17.8.8 2024-02-29 18:59:00 +01:00
nobody 6a76aa6cf1
libphonenumber-js v1.10.55 -> v1.10.57 2024-02-29 18:58:19 +01:00
nobody 21dbfe807e
instantsearch.js v4.64.2 -> v4.66.0 2024-02-29 18:57:34 +01:00
nobody c4cb8b2b6b
dexie v3.2.4 -> v3.2.6 2024-02-29 18:56:41 +01:00
nobody 353dde8cff
bootstrap-table v1.22.2 -> v1.22.3 2024-02-29 18:55:59 +01:00
nobody 35b8e79403
hls.js v1.5.3 -> v1.5.7 2024-02-29 18:55:23 +01:00
nobody 06c9f62631
vue-router v4.2.5 -> v4.3.0 2024-02-29 18:54:39 +01:00
nobody e2ff54ce18
swagger-ui v5.11.2 -> v5.11.8 2024-02-29 18:53:51 +01:00
nobody e38e56a473
backbone.js v1.5.0 -> v1.6.0 2024-02-29 18:52:59 +01:00
nobody 093f9253e8
video.js v8.11.1 -> v8.11.5 2024-02-29 18:52:22 +01:00
nobody f99b07a6fd
react-router v6.22.0 -> v6.22.2 2024-02-29 18:51:32 +01:00
nobody 47afb3e614
twitter-bootstrap v5.3.2 -> v5.3.3 2024-02-29 18:49:21 +01:00
nobody c637d1b56e
tinymce v6.8.2 -> v6.8.3 2024-02-29 18:47:57 +01:00
nobody e277722b22
vue v3.4.15 -> v3.4.21 2024-02-29 18:46:26 +01:00
nobody 9f7c007dea
v2.6.64 2024-02-04 09:04:23 +01:00
nobody e311d0c10c
Merge remote-tracking branch 'origin/develop' 2024-02-04 08:54:27 +01:00
nobody b4438878d1
Update updates.html 2024-02-04 08:23:07 +01:00
nobody 5a0ce65cb9
add supabase-js (#1619) 2024-02-04 08:15:30 +01:00
nobody 2f9bdcd6c0
remove SWFObject 2024-02-04 08:13:12 +01:00
nobody 1ee3575390
corejs-typeahead v1.3.3 -> v1.3.4 2024-02-04 07:45:33 +01:00
nobody 88be389f55
libphonenumber-js v1.10.53 -> v1.10.55 2024-02-04 07:44:54 +01:00
nobody a059ea04bd
instantsearch.js v4.63.0 -> v4.64.2 2024-02-04 07:44:17 +01:00
nobody 986ce46187
vue-i18n v9.9.0 -> v9.9.1 2024-02-04 07:43:28 +01:00
nobody 1cd7e033fe
hls.js v1.5.1 -> v1.5.3 2024-02-04 07:42:24 +01:00
nobody ed51d96de8
tensorflow v4.16.0 -> v4.17.0 2024-02-04 07:41:28 +01:00
nobody c8cc450ce8
swagger-ui v5.11.0 -> v5.11.2 2024-02-04 07:40:37 +01:00
nobody a73b3dbd14
alpinejs v3.13.3 -> v3.13.5 2024-02-04 07:39:36 +01:00
nobody bab22c90f2
video.js v8.9.0 -> v8.11.1 2024-02-04 07:38:58 +01:00
nobody f2be418a43
react-router v6.21.1 -> v6.22.0 2024-02-04 07:37:37 +01:00
nobody afb82f6ebc
axios v1.6.5 -> v1.6.7 2024-02-04 07:36:41 +01:00
nobody e420da1243
vue v3.4.9 -> v3.4.15 2024-02-04 07:36:04 +01:00
nobody e906cdcd59
angular-translate-loader-partial v2.19.0 -> v2.19.1 2024-02-04 07:34:20 +01:00
nobody 8a58c9ca79
angular-translate v2.19.0 -> v2.19.1 2024-02-04 07:33:47 +01:00
nobody 057c9465eb
react-intl v6.5.5 -> v6.6.2 2024-02-04 07:29:39 +01:00
nobody 062a90bbdb
gsap v3.12.4 -> v3.12.5 2024-02-04 07:28:41 +01:00
nobody 6123be7478
materialicons v140 -> v141 2024-02-04 07:27:03 +01:00
nobody aab9b4da5a
Translated using Weblate (Italian)
Currently translated at 99.2% (130 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/it/
2024-01-27 18:35:45 +01:00
Сергій 1cb91d6525
Translated using Weblate (Ukrainian)
Currently translated at 100.0% (131 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/uk/
2024-01-21 17:01:47 +01:00
nobody b510485127
Font Awesome v4.7.0 woff -> woff2 (#1617) 2024-01-21 07:16:56 +01:00
Сергій fe0c0c4f13
Translated using Weblate (Ukrainian)
Currently translated at 93.8% (123 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/uk/
2024-01-20 21:01:48 +01:00
nobody 223bf0bfd9
Mapping docsify -> cdn.jsdelivr.net (#1616) 2024-01-20 08:28:22 +01:00
nobody 1cae1377e6
Translated using Weblate (Italian)
Currently translated at 99.2% (130 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/it/
2024-01-20 08:23:52 +01:00
nobody 9bf1a27824
v2.6.63 2024-01-13 15:38:41 +01:00
nobody 1c7511f63e
Merge remote-tracking branch 'origin/develop' 2024-01-13 15:37:06 +01:00
nobody b45b7dace3
Update updates.html 2024-01-12 18:27:14 +01:00
nobody 5678f07e27
algoliasearch v4.22.0 -> v4.22.1 2024-01-12 18:17:07 +01:00
nobody a8c01e1308
bootstrap-icons v1.11.2 -> v1.11.3 2024-01-12 18:16:30 +01:00
nobody 01c9d77805
vue-i18n v9.8.0 -> v9.9.0 2024-01-12 18:15:46 +01:00
nobody 8bd3e38836
bootstrap-table v1.22.1 -> v1.22.2 2024-01-12 18:14:49 +01:00
nobody 4f88928573
hls.js v1.4.14 -> v1.5.1 2024-01-12 18:14:01 +01:00
nobody cb9783a109
tensorflow v4.15.0 -> v4.16.0 2024-01-12 18:12:46 +01:00
nobody 945e841986
swagger-ui v5.10.5 -> v5.11.0 2024-01-12 18:11:12 +01:00
nobody c6583298f6
video.js v8.8.0 -> v8.9.0 2024-01-12 18:10:12 +01:00
nobody bad9334a5b
moment.js v2.30.0 -> v2.30.1 2024-01-12 18:08:49 +01:00
nobody 8d18fd35ba
socket.io v4.7.2 -> v4.7.4 2024-01-12 18:07:58 +01:00
nobody de1450dec7
axios v1.6.3 -> v1.6.5 2024-01-12 18:06:59 +01:00
nobody 881b142f27
vue v3.3.13 -> v3.4.9 2024-01-12 18:05:29 +01:00
Codefoxy Ch c87010e4d0
Translated using Weblate (Chinese (Traditional))
Currently translated at 100.0% (131 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/zh_Hant/
2024-01-03 17:07:50 +01:00
nobody d86cfe9442
v2.6.62 2023-12-29 10:50:13 +01:00
nobody 44137332e5
Merge branch 'develop' 2023-12-29 10:46:09 +01:00
nobody b9bfdb41fb
Update updates.html 2023-12-29 10:34:43 +01:00
nobody ce32d63913
algoliasearch v4.21.0 -> v4.22.0 2023-12-28 08:05:04 +01:00
nobody 1d5ec6cae0
libphonenumber-js v1.10.51 -> v1.10.53 2023-12-28 08:04:35 +01:00
nobody ee0626a234
instantsearch.js v4.62.0 -> v4.63.0 2023-12-28 08:03:23 +01:00
nobody ba026ff85f
hls.js v1.4.13 -> v1.4.14 2023-12-28 08:02:22 +01:00
nobody f5fe905889
gsap v3.12.3 -> v3.12.4 2023-12-28 08:01:09 +01:00
nobody a42c8b360a
tensorflow v4.14.0 -> v4.15.0 2023-12-28 08:00:05 +01:00
nobody 920adb917a
swagger-ui v5.10.3 -> v5.10.5 2023-12-28 07:58:57 +01:00
nobody eebd7895bc
video.js v8.7.0 -> v8.8.0 2023-12-28 07:57:40 +01:00
nobody e66966d8eb
moment.js v2.29.4 -> v2.30.0 2023-12-28 07:56:33 +01:00
nobody 65dce2b6ee
react-router v6.20.1 -> v6.21.1 2023-12-28 07:54:11 +01:00
nobody d0712af389
redux v5.0.0 -> v5.0.1 2023-12-28 07:53:10 +01:00
nobody cbb8f629fc
axios v1.6.2 -> v1.6.3 2023-12-28 07:52:20 +01:00
nobody 3a346eeba8
vue v3.3.11 -> v3.3.13 2023-12-28 07:49:29 +01:00
nobody 05d5e79c2e
Translated using Weblate (Esperanto)
Currently translated at 80.9% (106 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/eo/
2023-12-28 07:29:31 +01:00
nobody f60b1c8f2e
Create regular expressions as constants 2023-12-28 06:41:14 +01:00
nobody 93cefdd8c0
Translated using Weblate (German)
Currently translated at 100.0% (131 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/de/
2023-12-27 19:20:41 +01:00
nobody 20c14f7314
Extend the Google Service check and also include subdomains (#1560) 2023-12-27 07:15:58 +01:00
ssantos adf2f920b5
Translated using Weblate (Portuguese)
Currently translated at 100.0% (131 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/pt/
2023-12-18 22:11:13 +00:00
nobody b14c05dc04
v2.6.61 2023-12-12 17:59:08 +01:00
nobody 4c54e2a762
Merge remote-tracking branch 'origin/develop' 2023-12-12 17:46:22 +01:00
nobody 89c57ff9e6
algoliasearch v4.20.0 -> v4.21.0 (#1613) 2023-12-12 12:22:01 +01:00
nobody 56ecaf2d53
ngx-bootstrap v11.0.2 -> v12.0.0 (#1612) 2023-12-12 12:20:50 +01:00
nobody b1ec5d5d39
search-insights v2.11.0 -> v2.13.0 (#1611) 2023-12-12 12:19:18 +01:00
nobody 7ad4e150d3
tinymce v6.8.1 -> v6.8.2 (#1594) 2023-12-11 18:41:31 +01:00
Hosted Weblate 93d2baa1d4
Merge branch 'origin/develop' into Weblate. 2023-12-10 08:34:04 +01:00
nobody 48514d88c7
redux v5.0.0 (#1610) 2023-12-10 08:33:51 +01:00
Hosted Weblate c23316bb4a
Merge branch 'origin/develop' into Weblate. 2023-12-10 07:57:29 +01:00
nobody 8506836438
mdb-ui-kit v7.1.0 (#1609) 2023-12-10 07:56:56 +01:00
Hosted Weblate bd111fde5e
Merge branch 'origin/develop' into Weblate. 2023-12-10 06:55:50 +00:00
nobody f9c4c9565a
mdb-ui-kit v7.1.0 (#1609) 2023-12-10 07:55:27 +01:00
Hosted Weblate 3aa71cac17
Merge branch 'origin/develop' into Weblate. 2023-12-10 07:50:57 +01:00
nobody d892019132
instantsearch.js v4.60.0 -> v4.62.0 (#1608) 2023-12-10 07:50:46 +01:00
Hosted Weblate c43502d5ee
Merge branch 'origin/develop' into Weblate. 2023-12-10 07:49:23 +01:00
nobody d5ea9a6803
hls.js v1.4.12 -> v1.4.13 (#1607) 2023-12-10 07:49:09 +01:00
Hosted Weblate d26e5e1b19
Merge branch 'origin/develop' into Weblate. 2023-12-10 07:47:55 +01:00
nobody 4ff68f9f1a
video.js v8.6.1 -> v8.7.0 (#1606) 2023-12-10 07:47:44 +01:00
Hosted Weblate 528097ca9e
Merge branch 'origin/develop' into Weblate. 2023-12-10 07:42:44 +01:00
nobody dbe41243c1
Chart.js v4.4.0 -> v4.4.1 (#1605) 2023-12-10 07:42:31 +01:00
Hosted Weblate fa02ef26b1
Merge branch 'origin/develop' into Weblate. 2023-12-09 09:18:56 +00:00
nobody a7abed1733
libphonenumber-js v1.10.49 -> v1.10.51 (#1604) 2023-12-09 10:18:42 +01:00
Hosted Weblate 1e8b6d5612
Merge branch 'origin/develop' into Weblate. 2023-12-09 10:15:22 +01:00
nobody c1e8c21c9d
bootstrap-icons v1.11.1 -> v1.11.2 (#1603) 2023-12-09 10:15:09 +01:00
Hosted Weblate e92c93f93f
Merge branch 'origin/develop' into Weblate. 2023-12-09 10:12:27 +01:00
nobody e6db5fbb3a
vue-i18n v9.7.0 -> v9.8.0 (#1602) 2023-12-09 10:11:05 +01:00
Hosted Weblate cab28434cc
Merge branch 'origin/develop' into Weblate. 2023-12-09 10:09:17 +01:00
nobody 38760450bd
tensorflow v4.13.0 -> v4.14.0 (#1601) 2023-12-09 10:09:06 +01:00
Hosted Weblate c71b2b0280
Merge branch 'origin/develop' into Weblate. 2023-12-09 10:07:01 +01:00
nobody 58eb759634
p5.js v1.8.0 -> v1.9.0 (#1600) 2023-12-09 10:06:51 +01:00
Hosted Weblate fe2d94d5ce
Merge branch 'origin/develop' into Weblate. 2023-12-09 10:05:12 +01:00
nobody 769cbb2dc5
swagger-ui v5.10.0 -> v5.10.3 (#1599) 2023-12-09 10:05:00 +01:00
Hosted Weblate b3d1d693a3
Merge branch 'origin/develop' into Weblate. 2023-12-09 10:02:56 +01:00
nobody ddb71f0c39
alpinejs v3.13.2 -> v3.13.3 (#1598) 2023-12-09 10:02:41 +01:00
Hosted Weblate 52166c8f45
Merge branch 'origin/develop' into Weblate. 2023-12-09 08:59:22 +01:00
nobody e5d5b9630f
Swiper v11.0.4 -> v11.0.5 (#1597) 2023-12-09 08:59:13 +01:00
Hosted Weblate da05536e1e
Merge branch 'origin/develop' into Weblate. 2023-12-09 08:57:01 +01:00
nobody 34ed86a71b
animejs v3.2.1 -> v3.2.2 (#1596) 2023-12-09 08:56:50 +01:00
Hosted Weblate b884e6f9e2
Merge branch 'origin/develop' into Weblate. 2023-12-09 08:53:22 +01:00
nobody bee3ebd6cd
fix link in release notes (#1594) 2023-12-09 08:53:12 +01:00
Hosted Weblate 92a07dd6e2
Merge branch 'origin/develop' into Weblate. 2023-12-09 08:52:40 +01:00
nobody 9cde8f9fe0
react-router v6.19.0 -> v6.20.1 (#1595) 2023-12-09 08:52:22 +01:00
Hosted Weblate d164bbc949
Merge branch 'origin/develop' into Weblate. 2023-12-09 08:49:14 +01:00
nobody 338c26e4ae
tinymce v6.7.3 -> v6.8.1 (#1594) 2023-12-09 08:48:21 +01:00
nobody 4f2a4fc30e
tinymce v6.7.3 -> v6.8.1 (#1954) 2023-12-09 08:46:30 +01:00
nobody 009b750a06
font-awesome v6.4.2 -> v6.5.1 (#1593) 2023-12-09 08:43:27 +01:00
nobody c57d7f6452
gsap v3.12.2 -> v3.12.3 (#1592) 2023-12-09 08:41:18 +01:00
nobody 0ba43c3056
vue v3.3.8 -> v3.3.11 (#1591) 2023-12-09 08:38:57 +01:00
Kamil Rumanuel Rukola 2d5b390856
Translated using Weblate (Czech)
Currently translated at 100.0% (131 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/cs/
2023-12-09 02:47:25 +01:00
soya_daizu da144adc70
Translated using Weblate (Japanese)
Currently translated at 100.0% (131 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/ja/
2023-12-06 02:10:21 +01:00
Kryštof Černý ecf6a71c4c
Translated using Weblate (Czech)
Currently translated at 98.4% (129 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/cs/
2023-11-25 16:00:30 +00:00
Kryštof Černý d7e5fec58a
Translated using Weblate (Czech)
Currently translated at 95.4% (125 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/cs/
2023-11-23 19:02:03 +00:00
Hosted Weblate b42f841c9f
Merge branch 'origin/develop' into Weblate. 2023-11-19 15:16:05 +00:00
nobody 5a14513500
v2.6.60 2023-11-19 16:15:20 +01:00
nobody bd2822bd90
v2.6.59 2023-11-19 16:14:07 +01:00
nobody d0a256a32d
fix typo 2023-11-19 16:12:47 +01:00
nobody 8fed3842a8
Merge remote-tracking branch 'origin/develop' 2023-11-19 16:05:38 +01:00
nobody 8f81e24a1a
instantsearch.js v4.59.0 -> v4.60.0 (#1589) 2023-11-19 06:22:50 +01:00
kotatsuyaki 0f98e8aa56
Translated using Weblate (Chinese (Traditional))
Currently translated at 79.3% (104 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/zh_Hant/
2023-11-18 21:01:21 +01:00
kotatsuyaki 246812556d
Translated using Weblate (Japanese)
Currently translated at 94.6% (124 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/ja/
2023-11-18 21:01:21 +01:00
nobody 8d8eb32649
vue-i18n v9.6.1 -> v9.7.0 (#1588) 2023-11-18 08:29:08 +01:00
nobody 4c2966ee46
tinymce v6.7.2 -> v6.7.3 (#1587) 2023-11-18 08:27:31 +01:00
nobody 98d3f41958
tensorflow v4.12.0 -> v4.13.0 (#1586) 2023-11-18 08:25:55 +01:00
nobody 2382d0add9
swagger-ui v5.9.1 -> v5.10.0 (#1585) 2023-11-18 08:24:17 +01:00
nobody c6c12a7769
Swiper v11.0.3 -> v11.0.4 (#1584) 2023-11-18 08:22:29 +01:00
Hosted Weblate 54401122ae
Merge branch 'origin/develop' into Weblate. 2023-11-18 08:19:34 +01:00
nobody 118ca803df
react-router v6.17.0 -> v6.19.0 (#1583) 2023-11-18 08:19:32 +01:00
Hosted Weblate 8bb88fd180
Merge branch 'origin/develop' into Weblate. 2023-11-18 08:18:00 +01:00
nobody 1c2a023e39
axios v1.6.0 -> v1.6.2 (#1582) 2023-11-18 08:17:57 +01:00
Kamil Rumanuel Rukola 7270d315d4
Translated using Weblate (Czech)
Currently translated at 84.7% (111 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/cs/
2023-11-17 16:06:58 +01:00
nobody 82f965837d
vue v3.3.7 -> v3.3.8 (#1581) 2023-11-17 06:12:46 +01:00
nobody 41fa0e0bf7
search-insights v2.9.0 -> v2.11.0 (#1580) 2023-11-17 06:11:21 +01:00
nobody ec2ef9f5b1
react-intl v6.5.1 -> v6.5.5 (#1579) 2023-11-17 06:07:16 +01:00
TotalImportance8529 b2999fd35b
Translated using Weblate (Chinese (Traditional))
Currently translated at 77.0% (101 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/zh_Hant/
2023-11-16 16:05:22 +00:00
HexagonCDN 6f9a15c511
Translated using Weblate (Vietnamese)
Currently translated at 100.0% (131 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/vi/
2023-10-30 06:11:27 +01:00
nobody 2150a4fec3
v2.6.59 2023-10-28 09:37:59 +02:00
nobody 0a4d916724
Merge remote-tracking branch 'origin/develop' 2023-10-28 09:36:00 +02:00
nobody b7a0a80491
vue-i18n v9.5.0 -> v9.6.1 (#1575) 2023-10-28 06:47:19 +02:00
nobody 9e4189d39c
Swiper v11.0.2 -> v11.0.3 (#1569) 2023-10-28 06:45:26 +02:00
Hosted Weblate dc3f755b1e
Merge branch 'origin/develop' into Weblate. 2023-10-28 06:36:10 +02:00
nobody b81c37436d
Update release notes (#1561) 2023-10-28 06:36:01 +02:00
Hosted Weblate 9aaea6fec8
Merge branch 'origin/develop' into Weblate. 2023-10-28 04:32:31 +00:00
nobody 9870062917
Merge branch 'jouni-develop' into develop (#1561) 2023-10-28 06:26:55 +02:00
Hosted Weblate a27a7f651a
Merge branch 'origin/develop' into Weblate. 2023-10-27 15:40:34 +00:00
nobody b45d1fe177
Merge branch 'develop' of https://codeberg.org/jouni/LocalCDN into jouni-develop (#1561) 2023-10-27 17:39:00 +02:00
Hosted Weblate 8c7e313a57
Merge branch 'origin/develop' into Weblate. 2023-10-27 15:29:56 +00:00
nobody e454470d68
Merge branch 'jouni-develop' into develop (#1561) 2023-10-27 17:29:07 +02:00
nobody 186f16fccb
Merge branch 'develop' of https://codeberg.org/jouni/LocalCDN into jouni-develop 2023-10-27 17:28:41 +02:00
Hosted Weblate 04c54914d6
Merge branch 'origin/develop' into Weblate. 2023-10-27 15:20:30 +00:00
nobody 499fc567b8
libphonenumber-js v1.10.47 -> v1.10.49 (#1577) 2023-10-27 17:20:24 +02:00
Hosted Weblate a8d6c394a4
Merge branch 'origin/develop' into Weblate. 2023-10-27 15:19:27 +00:00
nobody 2b99571f58
instantsearch.js v4.58.0 -> v4.59.0 (#1576) 2023-10-27 17:19:20 +02:00
Hosted Weblate d8dc505b6b
Merge branch 'origin/develop' into Weblate. 2023-10-27 13:41:23 +00:00
nobody c84806d415
vue-i18n v9.5.0 -> v9.6.0 (#1575) 2023-10-27 15:41:17 +02:00
Hosted Weblate 012782e11c
Merge branch 'origin/develop' into Weblate. 2023-10-27 13:40:12 +00:00
nobody 57ee4680a7
tensorflow v4.11.0 -> v4.12.0 (#1574) 2023-10-27 15:40:06 +02:00
Hosted Weblate c7b38a2c31
Merge branch 'origin/develop' into Weblate. 2023-10-27 13:38:14 +00:00
nobody 42dd025d0b
p5.js v1.7.0 -> v1.8.0 (#1573) 2023-10-27 15:38:05 +02:00
Hosted Weblate e36461250b
Merge branch 'origin/develop' into Weblate. 2023-10-27 13:36:31 +00:00
nobody 181fc6e609
swagger-ui v5.9.0 -> v5.9.1 (#1572) 2023-10-27 15:36:25 +02:00
Hosted Weblate 6064f182ed
Merge branch 'origin/develop' into Weblate. 2023-10-27 13:34:50 +00:00
nobody e549adf010
vue v3.3.4 -> v3.3.7 (#1571) 2023-10-27 15:34:38 +02:00
Hosted Weblate 91ade03190
Merge branch 'origin/develop' into Weblate. 2023-10-27 13:32:43 +00:00
nobody 314c90394d
video.js v8.6.0 -> v8.6.1 (#1570) 2023-10-27 15:32:36 +02:00
Hosted Weblate d2c597effb
Merge branch 'origin/develop' into Weblate. 2023-10-27 13:30:12 +00:00
nobody 96686d19db
Swiper v10.3.1 -> v11.0.2 (#1569) 2023-10-27 15:29:35 +02:00
HexagonCDN 3893b82113
Translated using Weblate (Vietnamese)
Currently translated at 94.6% (124 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/vi/
2023-10-27 11:26:20 +02:00
nobody 63d36a71ff
react-router v6.16.0 -> v6.17.0 (#1568) 2023-10-27 07:09:49 +02:00
nobody a00b2465f4
axios v1.5.1 -> v1.6.0 (#1567) 2023-10-27 07:08:22 +02:00
nobody bcf4a87a4a
alpinejs v3.13.1 -> v3.13.2 (#1566) 2023-10-27 07:07:01 +02:00
nobody 964a18d9e4
vanilla-lazyload v17.8.4 -> v17.8.5 (#1565) 2023-10-27 07:01:10 +02:00
nobody 4c3c61d786
search-insights v2.8.3 -> v2.9.0 (#1564) 2023-10-27 06:59:23 +02:00
nobody 39e696e280
react-intl v6.4.7 -> v6.5.1 (#1563) 2023-10-27 06:54:49 +02:00
nobody 8f2150cd85
tinymce v6.7.0 -> v6.7.2 (#1562) 2023-10-27 06:51:12 +02:00
Jouni 9189f073db add js-cookie 3 as well and non minified 2023-10-27 02:37:45 +03:00
Jouni 8433efd6cd add missing mapping
fixes https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.14/dist/css/bootstrap-select.min.css
2023-10-26 23:19:59 +03:00
Jouni 59e3c28601 fix twitchtracker.com 2023-10-26 00:41:08 +03:00
nobody 96f86f766f
Improve handling empty variables (#1510) 2023-10-24 06:23:10 +02:00
nobody 822192dcbb
Hide "Block Google Fonts" button on Google websites (#1560) 2023-10-15 06:28:06 +02:00
nobody 5ee66f2a99
Allow Google fonts for Google services by default and permanently (#1560) 2023-10-13 08:55:30 +02:00
nobody e5e4482853
v2.6.58 2023-10-12 19:40:28 +02:00
nobody db18a578da
Merge remote-tracking branch 'origin/develop' 2023-10-12 19:37:27 +02:00
nobody e4a73d1c7f
libphonenumber-js v1.10.44 -> v1.10.47 (#1559) 2023-10-12 18:18:37 +02:00
nobody f05588d463
instantsearch.js v4.57.0 -> v4.58.0 (#1558) 2023-10-12 18:17:28 +02:00
nobody 5ae6873808
vue-i18n v9.4.1 -> v9.5.0 (#1557) 2023-10-12 18:16:03 +02:00
nobody e3748ac2be
jquery-validate v1.19.5 -> v1.20.0 (#1556) 2023-10-12 18:10:40 +02:00
nobody db62663c04
markdown-it v13.0.1 -> v13.0.2 (#1555) 2023-10-12 18:09:18 +02:00
nobody 72d3cb8116
react-redux v8.1.2 -> v8.1.3 (#1554) 2023-10-12 18:08:05 +02:00
nobody 25abef5ad2
mdb-ui-kit v6.4.1 -> v6.4.2 (#1553) 2023-10-12 18:05:48 +02:00
nobody 4bf8b20546
swagger-ui v5.7.2 -> v5.9.0 (#1552) 2023-10-12 18:04:19 +02:00
nobody bfb0e3d14f
alpinejs v3.13.0 -> v3.13.1 (#1551) 2023-10-12 18:02:52 +02:00
nobody b60b56fd24
video.js v8.5.3 -> v8.6.0 (#1550) 2023-10-12 08:27:55 +02:00
nobody 7920fd8028
Swiper v10.3.0 -> v10.3.1 (#1549) 2023-10-12 08:26:12 +02:00
nobody 2fb3c4c0e0
axios v1.5.0 -> v1.5.1 (#1548) 2023-10-12 08:24:28 +02:00
nobody 1fb7935004
search-insights v2.8.2 -> v2.8.3 (#1547) 2023-10-12 08:21:18 +02:00
nobody 7682e60ed4
highlight.js v11.8.0 -> v11.9.0 (#1546) 2023-10-12 08:17:48 +02:00
nobody 87bc85eba2
Translated using Weblate (Russian)
Currently translated at 100.0% (131 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/ru/
2023-10-07 07:21:03 +02:00
Hosted Weblate abfb0d04b2
Merge branch 'origin/develop' into Weblate. 2023-10-07 07:10:11 +02:00
nobody 8503c84a72
update manifest (#136) 2023-10-07 07:10:03 +02:00
Eric e950b00ee5
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (131 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/zh_Hans/
2023-10-06 20:11:21 +02:00
Džiugas J f86f4ec02f
Translated using Weblate (Lithuanian)
Currently translated at 100.0% (131 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/lt/
2023-10-04 10:11:55 +02:00
Kryštof Černý 91799e4c7d
Translated using Weblate (Czech)
Currently translated at 83.2% (109 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/cs/
2023-09-30 17:03:23 +02:00
ovl-1 8631045996
Translated using Weblate (Norwegian Bokmål)
Currently translated at 96.1% (126 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/nb_NO/
2023-09-26 15:59:32 +00:00
fresh 92fc011f9c
Translated using Weblate (Greek)
Currently translated at 100.0% (131 of 131 strings)

Translate-URL: https://hosted.weblate.org/projects/localcdn/localcdn/el/
2023-09-26 04:00:24 +02:00
nobody 9a7021beaf
v2.6.57 2023-09-23 07:47:28 +02:00
1168 changed files with 15129 additions and 11979 deletions

View File

@ -34,6 +34,7 @@
"BadResources": true,
"LogString": true,
"BlockedRequestMethods": true,
"GoogleDomains": true,
"fileGuard": true,
"files": true,

File diff suppressed because it is too large Load Diff

View File

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

View File

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

View File

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

View File

@ -128,7 +128,7 @@
"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": "Vyberte si ikonu pro toto rozšíření",
"message": "Vybraná ikona tohoto rozšíření",
"description": "Choose an icon for this extension"
},
"internalStatisticsTitle": {
@ -159,6 +159,10 @@
"message": "Minulý rok",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Smazat",
"description": "Button to delete all statistics data."
@ -204,7 +208,7 @@
"description": "Local"
},
"labelStorageTypeSync": {
"message": "Synchronizovat",
"message": "Synchronizova",
"description": "Sync"
},
"headerImportExport": {
@ -332,11 +336,11 @@
"description": "Why is it necessary to remove crossorigin and integrity attributes?"
},
"helpHtmlFilterCrossorigin": {
"message": "",
"message": "Atribut crossorigin brání nahrazení, protože cíl neodpovídá požadovanému.",
"description": "The crossorigin attribute prevents the replacement because the destination does not match the requested one."
},
"helpHtmlFilterIntegrity": {
"message": "",
"message": "Chcete-li ušetřit místo na disku a dodat více rámců LocalCDN upgraduje rámec. Značka integrity je hash hodnotou souboru. Pokud se kontrola nezdaří, prohlížeč nebude obsahovat framework. Kontrola integrity se nezdaří, protože hodnoty hash pro např. jQuery 1.10.1 a jQuery 1.12.4 se liší.",
"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 +348,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": "",
"message": "Pokud chcete automaticky přesměrovat všechna podporovaná připojení k CDN do LocalCDN, můžete přidat tato pravidla do vašeho blokovače reklam pro povolení těchto přesměrování. Pokud pravidla nechcete přidat, musíte povolit každé CDN zvlášť na každé webové stránce.",
"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,7 +356,7 @@
"description": "Only uBlock Origin:"
},
"helpRuleGeneratorUblockDescription": {
"message": "",
"message": "Tato pravidla jsou relevantní pouze ve »středním« nebo »těžkém« režimu, protože blokuje veškeré zdroje třetích stran. Nejsou potřeba ve »výchozím«, »jednoduchém« nebo »velmi jednoduchém« režimu. Pro více informací navštivte Wiki 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": {
@ -364,11 +368,11 @@
"description": "Mode"
},
"helpRuleGeneratorUblockTableUseful": {
"message": "",
"message": "Týká se",
"description": "Rules useful"
},
"helpRuleGeneratorUblockTableDefaultEasy": {
"message": "",
"message": "Výchozí/lehký",
"description": "Default/Easy"
},
"helpRuleGeneratorUblockTableMedium": {
@ -376,23 +380,23 @@
"description": "Medium"
},
"helpRuleGeneratorUblockTableHard": {
"message": "",
"message": "Přísný",
"description": "Hard"
},
"helpWebsiteIssuesDescription": {
"message": "",
"message": "Jsou tu dvě možné příčiny: buď požadovaný framework/knihovna není (zatím) poskytována LocalCDN nebo SOP. SOP (Same origin policy) je bezpečnostní mechanizmus, který určuje, jaká data může prohlížeč načíst. Pomáhá izolovat zákeřné dokumenty a snižuje tím možné způsoby útoku. Tato zásada znemožňuje prohlížeči načíst externí frameworky LocalCDN. Bohužel to v současnosti nemá žádné řešení.",
"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": "",
"message": "LocalCDN může nahradit »Google Material Icons«. Chcete-li zachytit připojení, váš blokátor reklam (např. uBlock Origin, uMatrix nebo AdGuard) musí požadavek povolit. LocalCDN naslouchá těmto požadavkům a pokud dotaz obsahuje »Google Material Icons«, zdroj bude nahrazen. Pokud zrušíte zaškrtnutí možnosti »Blokovat požadavky na chybějící obsah«, bude povolen průchod neexistujícím zdrojům a načte se »Google Fonts«, protože »Google Material Icons« a »Google Fonts« používají stejnou doménu. Pokud si to nepřejete, můžete zablokovat »Google Fonts« na 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": "",
"message": "Nepanikařte, nic nebude přeneseno. Bylo by to proti všem mým zásadám. Statistiky (formát JSON) obsahují následující informace: datum, CDN+počítadlo a framework+počítadlo. To je vše, tady je příklad:",
"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": "",
"message": "Statistiky neobsahují informace o prohlížeči, operačním systému, webové stránce, IP adrese ani jiné informace. Jen datum, CDN+počítadlo a framework+počítadlo. Ukazují vám frameworky, které byly nahrazeny LocalCDN, a jak často a které CDN byly vyžádány.",
"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,27 +404,27 @@
"description": "How do I know thats true?"
},
"helpStatisticsTruthDescription": {
"message": "",
"message": "Úložiště rozšíření lze zobrazit přímo v prohlížeči Firefox. Otevřete URL »about:debugging«, přepněte na »Úložiště« a zvolte »Extension Storage«. Pod klíčem »internalStatisticsData« najdete shromážděná data. Stačí jej zkopírovat a vložit do tiskárny JSON PrettyPrinter, aby byl čitelnější. Vezměte prosím na vědomí, že musíte odstranit první a poslední uvozovky a klíč k nim. V tomto videu byste to měli jasně vidět.",
"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": "Co bude synchronizováno, když vyberu »synchronizovaný« typ úložiště?",
"description": "What will be synchronized when I select »sync« as storage type?"
},
"helpSyncDescription": {
"message": "",
"message": "Synchronizace bude fungovat pouze pokud jste přihlášeni Firefox účtem ve vašem zařízení a dovolili jste synchronizaci nastavení doplňků. Zvláštní server pro synchronizaci pod vaší kontrolou bude též fungovat. Bude se synchronizovat většina nastavení LocalCDN napříč všemi zařízeními.",
"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": "Pokud nemáte účet pro synchronizaci, nic nebude synchronizováno. V tomto případě nemá výběr vliv.",
"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": "Položky, které nikdy nebudou synchronizovány:",
"description": "Things that are never synchronized:"
},
"helpNumberOfInjections": {
"message": "",
"message": "Počet vložení",
"description": "Numbers of injections"
},
"helpYes": {
@ -440,7 +444,7 @@
"description": "Settings that will be synchronized:"
},
"helpIcons": {
"message": "",
"message": "Výchozí, světlá, modrá/šedá",
"description": "Default, Light, Blue/Grey"
},
"helpSyncContentLinks": {
@ -456,71 +460,71 @@
"description": "Replace"
},
"helpReplaceOther": {
"message": "",
"message": "Nahradit ostatní zdroje",
"description": "Replace other resources"
},
"helpUpgradeAllResources": {
"message": "",
"message": "Nahradit všechny zdroje",
"description": "Upgrade all resources"
},
"helpExplanationChrome": {
"message": "",
"message": "Všechny prohlížeče založené na Chromiu",
"description": "All Chromium based Browser"
},
"helpLimitation": {
"message": "",
"message": "Toto není omezení LocalCDN, ale chybějící API v prohlížečích založených na Chromiu.",
"description": "This is not a limitation of LocalCDN, but missing API support of Chromium based browsers."
},
"titleBadgeDefault": {
"message": "",
"message": "Výchozí odznak",
"description": "Default badge"
},
"titleBadgeHTMLFilter": {
"message": "",
"message": "Odznak HTML filtru",
"description": "HTML filter badge"
},
"titleBadgeMissingResource": {
"message": "",
"message": "Odznak chybějících nebo blokovaných zdrojů",
"description": "Missing or blocked resources badge"
},
"counterBlocked": {
"message": "",
"message": "Zablokovaných",
"description": "Blocked"
},
"counterMissing": {
"message": "",
"message": "Chybějících",
"description": "Missing"
},
"permissionRevokedHeader": {
"message": "",
"message": "Oprávnění odebráno",
"description": "Permission revoked"
},
"permissionRevokedPermissionName": {
"message": "",
"message": "Přistupovat k vašim datům pro všechny webové stránky",
"description": "The exact name of the permission. Exactly as it is displayed in Firefox."
},
"permissionRevokedDescription": {
"message": "",
"message": "Prosíme, nezakazujte toto oprávnění. LocalCDN potřebuje toto oprávnění pro detekci a přesměrování požadavků na CDN.",
"description": "Please do not disable the permission. LocalCDN needs the permission to detect and redirect requests to CDNs."
},
"helpWhyThisPermission": {
"message": "",
"message": "Proč toto rozšíření potřebuje toto oprávnění?",
"description": "Why does this extension need this permission?"
},
"helpPermissionDescription": {
"message": "",
"message": "LocalCDN potřebuje znát, které požadavky jsou vytvořeny webovou stránkou pro jejich přesměrování nebo blokování. Po představení MV3 je toto oprávnění volitelné.",
"description": "LocalCDN needs to know which requests are created by a website to redirect or block it. With the introduction of MV3, this permission is listed as an optional permission."
},
"permissionMissing": {
"message": "",
"message": "Chybějící oprávnění",
"description": "Missing permission"
},
"permissionAllow": {
"message": "",
"message": "Povolit",
"description": "Allow"
},
"permissionMoreInfo": {
"message": "",
"message": "Další informace",
"description": "More info"
}
}

View File

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

View File

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

View File

@ -159,6 +159,10 @@
"message": "Τον προηγούμενο χρόνο",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Διαγραφή",
"description": "Button to delete all statistics data."
@ -480,47 +484,47 @@
"description": "HTML filter badge"
},
"titleBadgeMissingResource": {
"message": "Εικονίδιο ανύπαρκτου πόρου",
"message": "Εικονίδιο ανύπαρκτου ή αποκλεισμένου πόρου",
"description": "Missing or blocked resources badge"
},
"counterBlocked": {
"message": "",
"message": "Αποκλεισμένο",
"description": "Blocked"
},
"counterMissing": {
"message": "",
"message": "Ανύπαρκτο",
"description": "Missing"
},
"permissionRevokedHeader": {
"message": "",
"message": "Ανάκληση άδειας",
"description": "Permission revoked"
},
"permissionRevokedPermissionName": {
"message": "",
"message": "Πρόσβαση στα δεδομένα σας σε όλους τους ιστότοπους",
"description": "The exact name of the permission. Exactly as it is displayed in Firefox."
},
"permissionRevokedDescription": {
"message": "",
"message": "Παρακαλώ μην ανακαλέσετε την άδεια. Το LocalCDN τη χρειάζεται για την ανίχνευση και την ανακατεύθυνση των αιτημάτων στα CDN.",
"description": "Please do not disable the permission. LocalCDN needs the permission to detect and redirect requests to CDNs."
},
"helpWhyThisPermission": {
"message": "",
"message": "Γιατί η επέκταση αυτή χρειάζεται αυτή την άδεια;",
"description": "Why does this extension need this permission?"
},
"helpPermissionDescription": {
"message": "",
"message": "Το LocalCDN χρειάζεται να γνωρίζει τι αιτήσεις δημιουργούνται από έναν ιστότοπο, για την ανακατεύθυνση ή την αποκλεισμό του. Με την παρουσίαση του MV3, η άδεια αυτή θεωρείται προαιρετική.",
"description": "LocalCDN needs to know which requests are created by a website to redirect or block it. With the introduction of MV3, this permission is listed as an optional permission."
},
"permissionMissing": {
"message": "",
"message": "Ανύπαρκτη άδεια",
"description": "Missing permission"
},
"permissionAllow": {
"message": "",
"message": "Επίτρεψε",
"description": "Allow"
},
"permissionMoreInfo": {
"message": "",
"message": "Περισσότερες πληροφορίες",
"description": "More info"
}
}

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -159,6 +159,10 @@
"message": "昨年",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "削除",
"description": "Button to delete all statistics data."
@ -492,35 +496,35 @@
"description": "Missing"
},
"permissionRevokedHeader": {
"message": "",
"message": "権限が拒否されました",
"description": "Permission revoked"
},
"permissionRevokedPermissionName": {
"message": "",
"message": "すべてのウェブサイトの保存されたデータへのアクセス",
"description": "The exact name of the permission. Exactly as it is displayed in Firefox."
},
"permissionRevokedDescription": {
"message": "",
"message": "権限は無効にしないでください。LocalCDNがCDNへのリクエストを検出してリダイレクトするにはこの権限が必要です。",
"description": "Please do not disable the permission. LocalCDN needs the permission to detect and redirect requests to CDNs."
},
"helpWhyThisPermission": {
"message": "",
"message": "なぜこの拡張機能はこの権限が必要なのですか?",
"description": "Why does this extension need this permission?"
},
"helpPermissionDescription": {
"message": "",
"message": "LocalCDNはリクエストをリダイレクトまたはブロックするために、ウェブサイトが発するリクエストを知る必要があります。MV3の導入により、この権限はオプションの権限として記載されています。",
"description": "LocalCDN needs to know which requests are created by a website to redirect or block it. With the introduction of MV3, this permission is listed as an optional permission."
},
"permissionMissing": {
"message": "",
"message": "権限の不足",
"description": "Missing permission"
},
"permissionAllow": {
"message": "",
"message": "許可",
"description": "Allow"
},
"permissionMoreInfo": {
"message": "",
"message": "詳細",
"description": "More info"
}
}

View File

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

View File

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

View File

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

View File

@ -159,6 +159,10 @@
"message": "Praeitus Metus",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Ištrinti",
"description": "Button to delete all statistics data."
@ -492,35 +496,35 @@
"description": "Missing"
},
"permissionRevokedHeader": {
"message": "",
"message": "Leidimai atsiimti",
"description": "Permission revoked"
},
"permissionRevokedPermissionName": {
"message": "",
"message": "Pasiekite visus savo duomenis, visuose tinklapiuose",
"description": "The exact name of the permission. Exactly as it is displayed in Firefox."
},
"permissionRevokedDescription": {
"message": "",
"message": "Prašome neuždrausti šio leidimo. „LocalCDN“ reikalauja jo, kad aptiktų ir peradresuotų užklausas į „CDN'us“.",
"description": "Please do not disable the permission. LocalCDN needs the permission to detect and redirect requests to CDNs."
},
"helpWhyThisPermission": {
"message": "",
"message": "Kodėl šiam plėtiniui reikia šio leidimo?",
"description": "Why does this extension need this permission?"
},
"helpPermissionDescription": {
"message": "",
"message": "„LocalCDN“ reikia žinoti, kurie tinklapio prašymai reikalajaumi, kad peradresuotų ar blokuotų jį. Su „MV3“, šis leidimas yra žymimas, kaip pasirinktinis.",
"description": "LocalCDN needs to know which requests are created by a website to redirect or block it. With the introduction of MV3, this permission is listed as an optional permission."
},
"permissionMissing": {
"message": "",
"message": "Trūksta leidimo",
"description": "Missing permission"
},
"permissionAllow": {
"message": "",
"message": "Leisti",
"description": "Allow"
},
"permissionMoreInfo": {
"message": "",
"message": "Daugiau informacijos",
"description": "More info"
}
}

View File

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

View File

@ -159,6 +159,10 @@
"message": "Siste år",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Slett",
"description": "Button to delete all statistics data."
@ -512,15 +516,15 @@
"description": "LocalCDN needs to know which requests are created by a website to redirect or block it. With the introduction of MV3, this permission is listed as an optional permission."
},
"permissionMissing": {
"message": "",
"message": "Manglende tillatelse",
"description": "Missing permission"
},
"permissionAllow": {
"message": "",
"message": "Tillat",
"description": "Allow"
},
"permissionMoreInfo": {
"message": "",
"message": "Mer info",
"description": "More info"
}
}

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -159,6 +159,10 @@
"message": "Năm ngoái",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "Xoá",
"description": "Button to delete all statistics data."
@ -488,39 +492,39 @@
"description": "Blocked"
},
"counterMissing": {
"message": "",
"message": "Không có sẵn",
"description": "Missing"
},
"permissionRevokedHeader": {
"message": "",
"message": "Đã thu hồi quyền",
"description": "Permission revoked"
},
"permissionRevokedPermissionName": {
"message": "",
"message": "Truy cập dữ liệu của bạn cho tất cả website",
"description": "The exact name of the permission. Exactly as it is displayed in Firefox."
},
"permissionRevokedDescription": {
"message": "",
"message": "Xin đừng tắt quyền đi. LocalCDN cần có quyền này để tìm thấy và chuyển hướng các yêu cầu tới CDN.",
"description": "Please do not disable the permission. LocalCDN needs the permission to detect and redirect requests to CDNs."
},
"helpWhyThisPermission": {
"message": "",
"message": "Tại sao tiện ích mở rộng này cần quyền này?",
"description": "Why does this extension need this permission?"
},
"helpPermissionDescription": {
"message": "",
"message": "LocalCDN cần biết trang web tạo ra yêu cầu nào để chuyển hướng hoặc chặn nó. Với sự ra đời của MV3, quyền này được liệt kê dưới dạng quyền tùy chọn.",
"description": "LocalCDN needs to know which requests are created by a website to redirect or block it. With the introduction of MV3, this permission is listed as an optional permission."
},
"permissionMissing": {
"message": "",
"message": "Quyền bị thiếu",
"description": "Missing permission"
},
"permissionAllow": {
"message": "",
"message": "Cho phép",
"description": "Allow"
},
"permissionMoreInfo": {
"message": "",
"message": "Thêm thông tin",
"description": "More info"
}
}

View File

@ -159,6 +159,10 @@
"message": "去年",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "全部",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "删除",
"description": "Button to delete all statistics data."
@ -492,23 +496,23 @@
"description": "Missing"
},
"permissionRevokedHeader": {
"message": "",
"message": "已撤消权限",
"description": "Permission revoked"
},
"permissionRevokedPermissionName": {
"message": "",
"message": "访问所有网站的数据",
"description": "The exact name of the permission. Exactly as it is displayed in Firefox."
},
"permissionRevokedDescription": {
"message": "",
"message": "请不要禁用此权限。LocalCDN 需要此权限来检测并重定向到 CDN 的请求。",
"description": "Please do not disable the permission. LocalCDN needs the permission to detect and redirect requests to CDNs."
},
"helpWhyThisPermission": {
"message": "",
"message": "此扩展为何需要这个权限?",
"description": "Why does this extension need this permission?"
},
"helpPermissionDescription": {
"message": "",
"message": "LocalCDN 需要知道哪些请求是由网站所创建以重定向或拦截它。MV3 规范中此权限被列为可选项。",
"description": "LocalCDN needs to know which requests are created by a website to redirect or block it. With the introduction of MV3, this permission is listed as an optional permission."
},
"permissionMissing": {
@ -520,7 +524,7 @@
"description": "Allow"
},
"permissionMoreInfo": {
"message": "",
"message": "更多信息",
"description": "More info"
}
}

View File

@ -159,6 +159,10 @@
"message": "去年",
"description": "Statistics view for past year."
},
"labelAll": {
"message": "全部",
"description": "Statistics view over the whole time range"
},
"labelDelete": {
"message": "刪除",
"description": "Button to delete all statistics data."
@ -256,11 +260,11 @@
"description": "beta"
},
"changeBadgeColorMissingResourcesTitle": {
"message": "用圖示表明資源缺失",
"message": "用圖標表示缺失資源",
"description": "Indicate missing resources on the icon"
},
"changeBadgeColorMissingResourcesDescription": {
"message": "若資源缺失則改變圖章顏色。",
"message": "若缺失資源則改變圖章顏色。",
"description": "Change the badge color if resources are missing."
},
"titleHelp": {
@ -296,11 +300,11 @@
"description": "What will be synchronized when I select »sync« as storage type?"
},
"helpBrowserCompatibilityTitle": {
"message": "瀏覽器容性",
"message": "瀏覽器容性",
"description": "Browser compatibility"
},
"helpIntroductionDescription": {
"message": "LocalCDN 是模仿內容傳遞網路的瀏覽器附加元件,用以進一步保障隱私。它將會攔截流量,以本機支援的框架/程式庫取代而注入網站。您可以使用以下工具測試是否有效。欲知詳情,請瀏覽教程或 Wiki 頁面。",
"message": "LocalCDN 是一款會以模仿內容分發網絡的方式,進一步保障您隱私的擴充功能。它將會攔截流量,以本機支援的框架/程式庫注入網站取以代之。您可以使用以下測試工具檢查您是否已受到適當的保護。欲知詳情,請瀏覽教程或 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 +320,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": {
@ -352,7 +356,7 @@
"description": "Only uBlock Origin:"
},
"helpRuleGeneratorUblockDescription": {
"message": "這些規則只適用於 »Medium« 或 »Hard« 模式,因為它阻擋所有第三方資源。在 »Default«、»Easy« 或 »Very-easy« 模式下並不必要。有關更多信息,請瀏覽 uBlock Origin Wiki。",
"message": "這些規則只適用於 »Medium« 或 »Hard« 模式,因為它們會阻擋所有第三方資源。在 »Default«、»Easy« 或 »Very-easy« 模式下則不是必需的。有關更多信息,請瀏覽 uBlock Origin Wiki。",
"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": {
@ -368,23 +372,23 @@
"description": "Rules useful"
},
"helpRuleGeneratorUblockTableDefaultEasy": {
"message": "Default/Easy",
"message": "預設/簡易",
"description": "Default/Easy"
},
"helpRuleGeneratorUblockTableMedium": {
"message": "Medium",
"message": "中等",
"description": "Medium"
},
"helpRuleGeneratorUblockTableHard": {
"message": "Hard",
"message": "困難",
"description": "Hard"
},
"helpWebsiteIssuesDescription": {
"message": "",
"message": "這有兩個可能的原因因為頁面需要一個LocalCDN尚不支援的函式庫或是因為同源策略。同源策略Same origin policy是一個瀏覽器用來區分資料是否允許被載入的安全機制。同源機制幫助我們區分有害的檔案藉此減少潛在的攻擊媒介。這個策略會阻止瀏覽器從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": "",
"message": "LocalCDN可以將Google Material Icons圖示字型。為了攔截針對這些字型的連接您的廣告阻擋器——例如uBlock Origin、uMatrix、Adguard——必須允許這些請求。LocalCDN監聽這些請求以在當請求包含Google Material Icons時置換資源。若您取消選擇「阻擋缺失資源」選項不存在的資源會被允許以致Google Fonts字體會被載入因為Google Material Icons與Google Fonts使用同一個域名。如果您不希望如此您可以使用LocalCDN阻擋Google Fonts。",
"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": {
@ -408,39 +412,39 @@
"description": "What will be synchronized when I select »sync« as storage type?"
},
"helpSyncDescription": {
"message": "",
"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": {
"message": "",
"message": "如果您沒有同步帳戶,則不會同步任何內容。在這種情況下,您選擇什麼儲存的類型都沒有區別。",
"description": "If you dont have a sync account, nothing will be synchronized. In that case it makes no difference what type of storage you have selected."
},
"helpSyncContentNever": {
"message": "",
"message": "永遠不同步的東西:",
"description": "Things that are never synchronized:"
},
"helpNumberOfInjections": {
"message": "",
"message": "取代次數",
"description": "Numbers of injections"
},
"helpYes": {
"message": "",
"message": "",
"description": "Yes"
},
"helpNo": {
"message": "",
"message": "",
"description": "No"
},
"helpData": {
"message": "",
"message": "資料",
"description": "Data"
},
"helpSyncContentEver": {
"message": "",
"message": "會被同步的設定:",
"description": "Settings that will be synchronized:"
},
"helpIcons": {
"message": "",
"message": "預設、淺色、藍色/灰色",
"description": "Default, Light, Blue/Grey"
},
"helpSyncContentLinks": {
@ -448,7 +452,7 @@
"description": "More information about Firefox Sync:"
},
"helpBrowserCompatibility": {
"message": "",
"message": "瀏覽器相容性",
"description": "Browser compatibility"
},
"helpReplace": {
@ -460,67 +464,67 @@
"description": "Replace other resources"
},
"helpUpgradeAllResources": {
"message": "",
"message": "升級所有資源",
"description": "Upgrade all resources"
},
"helpExplanationChrome": {
"message": "",
"message": "所有基於 Chromium 的瀏覽器",
"description": "All Chromium based Browser"
},
"helpLimitation": {
"message": "",
"message": "這不是 LocalCDN 的限制,而是缺少基於 Chromium 的瀏覽器的 API 支援。",
"description": "This is not a limitation of LocalCDN, but missing API support of Chromium based browsers."
},
"titleBadgeDefault": {
"message": "",
"message": "預設標籤",
"description": "Default badge"
},
"titleBadgeHTMLFilter": {
"message": "",
"message": "HTML 過濾器標籤",
"description": "HTML filter badge"
},
"titleBadgeMissingResource": {
"message": "",
"message": "資源標籤遺失或被阻止",
"description": "Missing or blocked resources badge"
},
"counterBlocked": {
"message": "",
"message": "阻止的",
"description": "Blocked"
},
"counterMissing": {
"message": "",
"message": "遺失的",
"description": "Missing"
},
"permissionRevokedHeader": {
"message": "",
"message": "權限被撤銷",
"description": "Permission revoked"
},
"permissionRevokedPermissionName": {
"message": "",
"message": "存取您在所有網站上的數據",
"description": "The exact name of the permission. Exactly as it is displayed in Firefox."
},
"permissionRevokedDescription": {
"message": "",
"message": "請勿停用該權限。 LocalCDN 需要該權限偵測請求並將請求重新導向到 CDN 。",
"description": "Please do not disable the permission. LocalCDN needs the permission to detect and redirect requests to CDNs."
},
"helpWhyThisPermission": {
"message": "",
"message": "為什麼這個擴充需要這個權限?",
"description": "Why does this extension need this permission?"
},
"helpPermissionDescription": {
"message": "",
"message": "LocalCDN 需要知道網站創建了哪些請求來重定向或封鎖它。隨著MV3的引入該權限被列為可選權限。",
"description": "LocalCDN needs to know which requests are created by a website to redirect or block it. With the introduction of MV3, this permission is listed as an optional permission."
},
"permissionMissing": {
"message": "",
"message": "缺少權限",
"description": "Missing permission"
},
"permissionAllow": {
"message": "",
"message": "允許",
"description": "Allow"
},
"permissionMoreInfo": {
"message": "",
"message": "更多資訊",
"description": "More info"
}
}

View File

@ -432,9 +432,7 @@ function check_resource() {
# CREATE URLs
# =============================================================================
function create_url() {
if [ "$folder" = "angular-stripe-checkout" ]; then
url="$JSDELIVR/npm/angular-stripe-checkout@$version/angular-stripe-checkout.min.js"
elif [ "$folder" = "ethjs" ]; then
if [ "$folder" = "ethjs" ]; then
url="$JSDELIVR/npm/ethjs@$version/dist/ethjs.min.js"
elif [ "$folder" = "react-lifecycles-compat" ]; then
url="$JSDELIVR/npm/react-lifecycles-compat@$version/react-lifecycles-compat.min.js"
@ -540,7 +538,11 @@ function create_url() {
if [ "$jfile" = "mdb-ui-kit.min.css" ]; then
url="$CLOUDFLARE/$folder/$version/mdb.min.css"
elif [ "$jfile" = "mdb-ui-kit.min.js" ]; then
url="$CLOUDFLARE/$folder/$version/mdb.min.js"
if [ "$version" = "3.11.0" ] || [ "$version" = "4.4.0" ] || [ "$version" = "5.0.0" ] || [ "$version" = "6.4.2" ]; then
url="$CLOUDFLARE/$folder/$version/mdb.min.js"
else
url="$CLOUDFLARE/$folder/$version/mdb.es.min.js"
fi
fi
elif [ "$folder" = "Modaal" ]; then
if [ "$jfile" = "modaal.min.css" ]; then
@ -660,8 +662,6 @@ function create_url() {
url="$CLOUDFLARE/$folder/$version/$relativpath"
elif [ "$folder" = "Chart.js" ] && [ "$version" = "2.9.4" ] && [ "$jfile" = "chart.min.js" ]; then
url="$CLOUDFLARE/$folder/$version/Chart.bundle.min.js"
elif [ "$folder" = "angular-ui-select" ] && [ "$version" = "0.19.8" ]; then
url="$JSDELIVR/npm/ui-select@$version/dist/select.min.js"
elif [ "$folder" = "plyr" ]; then
if [ "$jfile" = "plyr.min.js" ]; then
url="$JSDELIVR/npm/plyr@$version/dist/plyr.min.js"
@ -741,6 +741,10 @@ function create_url() {
url="$CLOUDFLARE/$folder/$version/vue-router.min.js"
elif [ "$folder" = "ScrollMagic" ] && [ "$jfile" != "ScrollMagic.min.js" ];then
url="$CLOUDFLARE/$folder/$version/plugins/$jfile"
elif [ "$folder" = "redux" ] && [ "$version" != "4.2.1" ];then
url="$CLOUDFLARE/$folder/$version/redux.legacy-esm.min.js"
elif [ "$folder" = "supabase-js" ]; then
url="$UNPKG/@supabase/supabase-js@$version/dist/umd/supabase.js"
# --------------------------------------------------------------------------
else
if [ "$subfile" = "$jfile" ]; then

View File

@ -273,6 +273,12 @@ const Regex = {
'BOOTSTRAP_FONTS_ONLY': /\/bootstrap\/(?:\d{1,2}\.){1,3}\d{1,2}\/fonts\//,
'ROCKET_LOADER': /ajax\.cloudflare\.com\/cdn-cgi\/scripts\/[a-zA-Z0-9]{8}\/cloudflare-static\/rocket-loader\.min\.js/,
'TWITTER_BOOTSTRAP_ALPHA_BETA': /-(alpha|beta).?\d?/,
'INTERNAL_STATISTICS_DATA': /((2\d)\d{2})-(0[1-9]|1[012])-(0[1-9]|[12]\d|3[01])/,
'DOMAIN': /[a-z0-9]+([-.]{1}[a-z0-9]+)*\.[a-z]{2,24}/,
'INTERNAL_RESOURCES': /resources\/[0-9a-z.-]+\/((?:\d{1,2}\.){1,3}\d{1,2})?.*\.(css|jsm)/,
'ISO_DATE': /((2\d)\d{2})-(0[1-9]|1[012])-(0[1-9]|[12]\d|3[01])/,
'HEX_COLOR': /#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})/,
'DOCSIFY': /docsify@(?:\d{1,2}\.){0,3}\d{1,2}(?:-\d)?$/,
};
const MaterialIcons = {
@ -450,6 +456,258 @@ const LogString = {
'IFRAME': 'Possible iframe request:',
};
/**
* https://codeberg.org/nobody/LocalCDN/issues/1560
*/
const GoogleDomains = {
'google.com': true,
'youtube.com': true,
'ytimg.com': true,
'withgoogle.com': true,
'withyoutube.com': true,
'google.ws': true,
'google.vu': true,
'google.vg': true,
'google.tt': true,
'google.to': true,
'google.tn': true,
'google.tm': true,
'google.tl': true,
'google.tk': true,
'google.tg': true,
'google.td': true,
'google.st': true,
'google.sr': true,
'google.so': true,
'google.sn': true,
'google.sm': true,
'google.sk': true,
'google.si': true,
'google.sh': true,
'google.se': true,
'google.sc': true,
'google.rw': true,
'google.ru': true,
'google.rs': true,
'google.ro': true,
'google.pt': true,
'google.ps': true,
'google.pn': true,
'google.pl': true,
'google.nu': true,
'google.nr': true,
'google.no': true,
'google.nl': true,
'google.ne': true,
'google.mw': true,
'google.mv': true,
'google.mu': true,
'google.ms': true,
'google.mn': true,
'google.ml': true,
'google.mk': true,
'google.mg': true,
'google.me': true,
'google.md': true,
'google.lv': true,
'google.lu': true,
'google.lt': true,
'google.lk': true,
'google.li': true,
'google.la': true,
'google.kz': true,
'google.ki': true,
'google.kg': true,
'google.jo': true,
'google.je': true,
'google.it': true,
'google.is': true,
'google.iq': true,
'google.io': true,
'google.im': true,
'google.ie': true,
'google.hu': true,
'google.ht': true,
'google.hr': true,
'google.hn': true,
'google.gy': true,
'google.gr': true,
'google.gp': true,
'google.gm': true,
'google.gl': true,
'google.gg': true,
'google.gf': true,
'google.ge': true,
'google.ga': true,
'google.fr': true,
'google.fm': true,
'google.fi': true,
'google.es': true,
'google.ee': true,
'google.dz': true,
'google.dm': true,
'google.dk': true,
'google.dj': true,
'google.de': true,
'google.cz': true,
'google.cv': true,
'google.com.vn': true,
'google.com.vc': true,
'google.com.uy': true,
'google.com.ua': true,
'google.com.tw': true,
'google.com.tr': true,
'google.com.tj': true,
'google.com.sv': true,
'google.com.sl': true,
'google.com.sg': true,
'google.com.sb': true,
'google.com.sa': true,
'google.com.qa': true,
'google.com.py': true,
'google.com.pr': true,
'google.com.pk': true,
'google.com.ph': true,
'google.com.pg': true,
'google.com.pe': true,
'google.com.pa': true,
'google.com.om': true,
'google.com.np': true,
'google.com.ni': true,
'google.com.ng': true,
'google.com.nf': true,
'google.com.na': true,
'google.com.my': true,
'google.com.mx': true,
'google.com.mt': true,
'google.com.mm': true,
'google.com.ly': true,
'google.com.lc': true,
'google.com.lb': true,
'google.com.kw': true,
'google.com.kh': true,
'google.com.jm': true,
'google.com.hk': true,
'google.com.gt': true,
'google.com.gi': true,
'google.com.gh': true,
'google.com.fj': true,
'google.com.et': true,
'google.com.eg': true,
'google.com.ec': true,
'google.com.do': true,
'google.com.cy': true,
'google.com.cu': true,
'google.com.co': true,
'google.com.bz': true,
'google.com.br': true,
'google.com.bo': true,
'google.com.bn': true,
'google.com.bh': true,
'google.com.bd': true,
'google.com.au': true,
'google.com.ar': true,
'google.com.ai': true,
'google.com.ag': true,
'google.com.af': true,
'google.co.zw': true,
'google.co.zm': true,
'google.co.za': true,
'google.co.vi': true,
'google.co.ve': true,
'google.co.uz': true,
'google.co.uk': true,
'google.co.ug': true,
'google.co.tz': true,
'google.co.th': true,
'google.co.pn': true,
'google.co.nz': true,
'google.co.mz': true,
'google.co.ma': true,
'google.co.ls': true,
'google.co.kr': true,
'google.co.ke': true,
'google.co.jp': true,
'google.co.in': true,
'google.co.il': true,
'google.co.id': true,
'google.co.cr': true,
'google.co.ck': true,
'google.co.bw': true,
'google.co.ao': true,
'google.cn': true,
'google.cm': true,
'google.cl': true,
'google.ci': true,
'google.ch': true,
'google.cg': true,
'google.cf': true,
'google.cd': true,
'google.cc': true,
'google.cat': true,
'google.ca': true,
'google.by': true,
'google.bt': true,
'google.bs': true,
'google.bj': true,
'google.bi': true,
'google.bg': true,
'google.bf': true,
'google.be': true,
'google.ba': true,
'google.az': true,
'google.at': true,
'google.as': true,
'google.am': true,
'google.al': true,
'google.ae': true,
'google.ad': true,
'google.ac': true,
'g.cn': true,
'yt.be': true,
'youtubegaming.com': true,
'youtubeeducation.com': true,
'youtube-nocookie.com': true,
'youtu.be': true,
'igoogle.com': true,
'gooogle.com': true,
'goolge.com': true,
'googlr.com': true,
'googlesyndication.com': true,
'googlesource.com': true,
'googlescholar.com': true,
'googlepagecreator.com': true,
'googlemembers.com': true,
'googlemember.com': true,
'googlemaps.com': true,
'googlemail.com': true,
'googleearth.com': true,
'googlee.com': true,
'googledrive.com': true,
'googlecommerce.com': true,
'googlecode.com': true,
'googlebot.com': true,
'googlearth.com': true,
'googleapps.com': true,
'googleapis.com': true,
'googleanalytics.com': true,
'googleadservices.com': true,
'google.org': true,
'google.net': true,
'google-analytics.com': true,
'googl.com': true,
'googil.com': true,
'googel.com': true,
'goo.gl': true,
'gogole.com': true,
'gogle.com': true,
'gmail.com': true,
'ggoogle.com': true,
'g.co': true,
'android.com': true,
'developer.android.com': true,
};
// Supported charsets for TextDecoder()
// https://developer.mozilla.org/en-US/docs/Web/API/TextDecoder/TextDecoder
const EncodingTypes = {

View File

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

View File

@ -23,7 +23,7 @@
* Interceptor
*/
var interceptor = {};
let interceptor = {};
/**
@ -32,7 +32,7 @@ var interceptor = {};
interceptor.handleRequest = function (requestDetails, tabIdentifier, tab) {
let validCandidate, targetDetails, targetDomain, isGoogleFont, isGoogleMaterialIcons, initiatorDomain, isListed,
iframe;
iframe, isGoogleDomain;
iframe = '';
if (tab.url !== requestDetails.originUrl) {
@ -95,8 +95,9 @@ interceptor.handleRequest = function (requestDetails, tabIdentifier, tab) {
if (BrowserType.FIREFOX && isGoogleFont && !isGoogleMaterialIcons) {
initiatorDomain = helpers.extractDomainFromUrl(tab.url, true);
isListed = helpers.checkAllowlisted(initiatorDomain, interceptor.allowedDomainsGoogleFonts);
isGoogleDomain = helpers.isGoogleDomain(initiatorDomain);
// Check if the website is allowed to load Google Fonts
if (interceptor.blockGoogleFonts === true && isListed === false) {
if (interceptor.blockGoogleFonts === true && isListed === false && isGoogleDomain === false) {
console.log(`${LogString.PREFIX} Google fonts blocked ${requestDetails.url}`);
log.append(tab.url, requestDetails.url, '-', true, iframe);
interceptor._handleMissingCandidate(requestDetails.url, tabIdentifier);
@ -104,6 +105,11 @@ interceptor.handleRequest = function (requestDetails, tabIdentifier, tab) {
return {
'redirectUrl': chrome.runtime.getURL('resources/google-fonts-placeholder.css')
};
} else if (isGoogleDomain === true) {
console.log(`${LogString.PREFIX} Google fonts allowed, because Google Website ${initiatorDomain}`);
return {
'cancel': false
};
} else if (interceptor.blockGoogleFonts === false || isListed === true) {
return {
'cancel': false

View File

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

View File

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

View File

@ -23,7 +23,7 @@
* Mappings
*/
var mappings = {};
let mappings = {};
/*
* Date of last update.
@ -64,7 +64,6 @@ mappings.cdn = {
'mootools/{version}/mootools-core': resources.mootools,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'webfont/{version}/webfont.': resources.webfontloader,
'webfont/{version}/webfontloader.js': resources.webfontloader,
'webfont/1/webfont.js': resources.webfontloader
@ -104,8 +103,6 @@ mappings.cdn = {
'angular-ui-bootstrap/{version}/ui-bootstrap-tpls.': resources.angularUiBootstrapTPLS,
'angular-ui-bootstrap/{version}/ui-bootstrap.min.js': resources.angularUiBootstrap,
'angular-ui-router/{version}/angular-ui-router.': resources.angularUiRouter,
'angular-ui-select/{version}/select.': resources.angularJsUiSelect,
'angular-ui-utils/{version}/angular-ui-utils.': resources.angularUiUtils,
'angularjs-slider/{version}/rzslider.': resources.angularJSslider,
'angular.js/{version}/angular.': resources.angular,
'angular.js/{version}/angular-animate.': resources.angularAnimate,
@ -272,6 +269,7 @@ mappings.cdn = {
'bootstrap/{version}/bootstrap.js': resources.bootstrapJS,
'bootstrap/{version}/bootstrap.min.css': resources.bootstrapCSS,
'bootstrap/{version}/bootstrap.css': resources.bootstrapCSS,
'bootswatch/{version}/flatly/': resources.bootswatchFlatly,
'bowser/{version}/': resources.bowserJS,
'bower-angular-translate/{version}/angular-translate.': resources.angularTranslate,
'bower-angular-translate-loader-partial/{version}/angular-translate-loader-partial.': resources.angularTranslateLoaderPartial,
@ -298,7 +296,7 @@ mappings.cdn = {
'cookieconsent2/{version}/cookieconsent.css': resources.cookieconsent2CSS,
'corejs-typeahead/{version}/typeahead.bundle.': resources.corejsTypeahead,
'd3/{version}/d3.min.js': resources.d3JS,
'd3-legend/{version}/d3-legend.': resources.d3legend,
'datatables/{version}/': resources.datatables,
'dayjs/{version}/dayjs.': resources.dayjs,
'dexie/{version}/dexie.': resources.dexie,
'docsearch.js/{version}/docsearch.min.js': resources.docsearchJS,
@ -307,8 +305,6 @@ mappings.cdn = {
'docsearch.js/{version}/docsearch.css': resources.docsearchCSS,
'docsify/{version}/docsify.min.js': resources.docsify,
'docsify/{version}/docsify.js': resources.docsify,
'drawer/{version}/js/drawer.min.js': resources.drawerJS,
'drawer/{version}/css/drawer.min.css': resources.drawerCSS,
'dygraph/{version}/dygraph': resources.dygraph,
'element-ui/{version}/': resources.elementUI,
'ext-core/{version}/ext-core.': resources.extCore,
@ -320,7 +316,6 @@ mappings.cdn = {
'fancybox/{version}/jquery.fancybox.css': resources.fancyBoxCSS,
'fastclick/{version}/fastclick.': resources.fastclick,
'feather-icons/{version}/feather.': resources.feather,
'FitText.js/{version}/jquery.fittext.': resources.fitTextJs,
'flickity/{version}/flickity.pkgd.': resources.flickity,
'font-awesome/{version}/css/font-awesome': resources.fontawesome,
'font-awesome/{version}/css/': resources.fontawesome5CSS,
@ -510,7 +505,6 @@ mappings.cdn = {
'swagger-ui/{version}/swagger-ui-standalone-preset.min.js': resources.swaggerUiJS,
'swagger-ui/{version}/swagger-ui.css': resources.swaggerUiCSS,
'swagger-ui/{version}/swagger-ui.min.css': resources.swaggerUiCSS,
'swfobject/{version}/swfobject.': resources.swfobject,
'Swiper/{version}/css/swiper.': resources.swiperCSS,
'Swiper/{version}/js/swiper.': resources.swiperJS,
'Swiper/{version}/swiper-bundle.min.js': resources.swiperJS,
@ -584,7 +578,6 @@ mappings.cdn = {
'angular@{version}/angular.': resources.angular,
'angular@{version}/angular.min.': resources.angular,
'angular-payments@{version}/lib/angular-payments.js': resources.angularPayments,
'angular-stripe-checkout@{version}/angular-stripe-checkout.js': resources.angularStripeCheckout,
'animate.css@{version}/animate.min.css': resources.animateCSS,
'animejs@{version}/lib/anime.': resources.animejs,
'aos@{version}/dist/aos.css': resources.aosCSS,
@ -601,6 +594,7 @@ mappings.cdn = {
'bootstrap@{version}/dist/css/bootstrap.': resources.bootstrapCSS,
'bootstrap-icons@{version}/font/bootstrap-icons.css': resources.bootstrapIcons,
'bootstrap-icons@{version}/font/bootstrap-icons.min.css': resources.bootstrapIcons,
'bootstrap-select@{version}/dist/css/bootstrap-select.': resources.bootstrapSelectCSS,
'bootstrap-select@{version}/dist/js/bootstrap-select.': resources.bootstrapSelectJS,
'bootstrap-table@{version}/dist/bootstrap-table.min.js': resources.bootstrapTableJS,
'bootstrap-table@{version}/dist/bootstrap-table.js': resources.bootstrapTableJS,
@ -657,6 +651,9 @@ mappings.cdn = {
'jquery-ui-dist@{version}/jquery-ui.js': resources.jQueryUI,
'jquery-ui-dist@{version}/jquery-ui.min.js': resources.jQueryUI,
'jquery-validation@{version}/dist/jquery.validate.': resources.jqueryValidationPlugin,
'js-cookie@{version}/dist/js.cookie.js': resources.jscookie,
'js-cookie@{version}/dist/js.cookie.min.js': resources.jscookie,
'js-cookie@{version}/src/js.cookie.': resources.jscookie,
'leaflet@{version}/dist/leaflet.js': resources.leafletJS,
'leaflet@{version}/dist/leaflet.css': resources.leafletCSS,
'leaflet-easybutton@{version}/src/easy-button.js': resources.leafletEasyButton,
@ -715,13 +712,13 @@ mappings.cdn = {
'swiper/swiper-bundle.min.css': resources.swiperCSS,
'swiper/swiper-bundle.js': resources.swiperJS,
'swiper/swiper-bundle.min.js': resources.swiperJS,
'swfobject@{version}/index.js': resources.swfobject,
'store-js@{version}/dist/store.legacy.min.js': resources.storeJS,
'scriptaculous-js@{version}/scriptaculous.': resources.scriptaculous,
'slick-carousel@{version}/slick/slick.min.css': resources.slickCarouselCSS,
'slick-carousel@{version}/slick/slick.css': resources.slickCarouselCSS,
'slick-carousel@{version}/slick/slick.min.js': resources.slickCarouselJS,
'slick-carousel@{version}/slick/slick.js': resources.slickCarouselJS,
'@supabase/supabase-js@{version}': resources.supabaseJs,
'@tensorflow/tfjs@{version}/dist/tf.min.js': resources.tensorflow,
'@tensorflow/tfjs@{version}/dist/tf.js': resources.tensorflow,
'underscore@{version}/underscore.': resources.underscore,
@ -785,7 +782,6 @@ mappings.cdn = {
'simplemde/{version}/simplemde.css': resources.simplemdeCSS,
'simplemde/{version}/simplemde.min.css': resources.simplemdeCSS,
'snowplow/{version}/sp.': resources.snowplow,
'swfobject/{version}/swfobject.': resources.swfobject,
'underscorejs/{version}/underscore.': resources.underscore,
'underscorejs/{version}/underscore-min.': resources.underscore,
'webfontloader/{version}/webfont': resources.webfontloader
@ -828,7 +824,6 @@ mappings.cdn = {
'momentjs/{version}/moment.min.': resources.moment,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'underscore/{version}/underscore.': resources.underscore,
'underscore/{version}/underscore-min.': resources.underscore
}
@ -849,7 +844,6 @@ mappings.cdn = {
'momentjs/{version}/moment.min.': resources.moment,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'underscore/{version}/underscore.': resources.underscore,
'underscore/{version}/underscore-min.': resources.underscore
}
@ -880,8 +874,6 @@ mappings.cdn = {
'mootools/{version}/mootools-core.': resources.mootools,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'swfobject/{version}/swfobject_src.': resources.swfobject,
'underscore.js/{version}/underscore.': resources.underscore,
'underscore.js/{version}/underscore-min.': resources.underscore,
'webfont/{version}/webfont.': resources.webfontloader,
@ -914,7 +906,6 @@ mappings.cdn = {
'mootools/{version}/mootools-core.': resources.mootools,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'underscore.js/{version}/underscore.': resources.underscore,
'underscore.js/{version}/underscore-min.': resources.underscore,
'webfont/{version}/webfont.': resources.webfontloader,
@ -942,7 +933,6 @@ mappings.cdn = {
'mootools/{version}/mootools-core.': resources.mootools,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'underscore.js/{version}/underscore.': resources.underscore,
'underscore.js/{version}/underscore-min.': resources.underscore,
'webfont/{version}/webfont.': resources.webfontloader,
@ -974,7 +964,6 @@ mappings.cdn = {
'mootools/{version}/mootools-core.': resources.mootools,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'webfont/{version}/webfont.': resources.webfontloader,
'webfont/{version}/webfont_debug.': resources.webfontloader
}
@ -1007,7 +996,6 @@ mappings.cdn = {
'mootools/{version}/mootools-core.': resources.mootools,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'twitter-bootstrap/{version}/js/bootstrap.': resources.bootstrapJS,
'twitter-bootstrap/{version}/css/bootstrap.': resources.bootstrapCSS,
'underscore.js/{version}/underscore.': resources.underscore,
@ -1051,7 +1039,6 @@ mappings.cdn = {
'mootools/{version}/mootools.': resources.mootools,
'prototype/{version}/prototype.': resources.prototypeJS,
'scriptaculous/{version}/scriptaculous.': resources.scriptaculous,
'swfobject/{version}/swfobject.': resources.swfobject,
'underscore/{version}/underscore.': resources.underscore,
'underscore/{version}/underscore-min.': resources.underscore,
'webfont/{version}/webfont.': resources.webfontloader,

View File

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

View File

@ -23,7 +23,7 @@
* Request Analyzer
*/
var requestAnalyzer = {};
let requestAnalyzer = {};
/**
@ -259,6 +259,8 @@ requestAnalyzer._getPathOfBundle = function (initiator, channelHost, channelPath
filename = requestAnalyzer._handleUncompressedFiles(filename);
} else if (bundle === 'ScrollMagic (Bundle)' && !filename.endsWith('.min.js')) {
filename = requestAnalyzer._handleUncompressedFiles(filename);
} else if (bundle === 'Font Awesome (Fonts) (Bundle)') {
filename = requestAnalyzer._handleFontawesomeFiles(targetPath, filename);
}
if (filename === false) {
@ -307,6 +309,13 @@ requestAnalyzer._handleTinyMCE = function (channelPath, channelHost, initiator)
return filename;
};
requestAnalyzer._handleFontawesomeFiles = function (targetPath, filename) {
if (targetPath === 'resources/font-awesome/4.7.0/fonts/') {
return filename.replace('fontawesome-webfont.woff', 'fontawesome-webfont.woff2');
}
return filename;
};
requestAnalyzer._applyAllowlistedDomains = function () {
storageManager.type.get(Setting.ALLOWLISTED_DOMAINS, function (items) {
requestAnalyzer.allowlistedDomains = items.allowlistedDomains || {};

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -1,11 +1,15 @@
{
"manifest_version": 2,
"name": "LocalCDN",
"version": "2.6.56",
"version": "2.6.67",
"browser_specific_settings": {
"gecko": {
"id": "{b86e4813-687a-43e6-ab65-0bde4ab75758}",
"strict_min_version": "86.0"
"strict_min_version": "113.0"
},
"gecko_android": {
"id": "{b86e4813-687a-43e6-ab65-0bde4ab75758}",
"strict_min_version": "120.0"
}
},
"author": "nobody",

View File

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

View File

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

View File

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

View File

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

View File

@ -19,7 +19,7 @@
* Targets
*/
var targets = {};
let targets = {};
/**
@ -80,9 +80,9 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/1000hz-bootstrap-validator/0.')) return '0.11.9';
if (type.startsWith('/ajax-bootstrap-select/1.')) return '1.4.5';
if (type.startsWith('/algoliasearch/3.')) return '3.35.1';
if (type.startsWith('/algoliasearch/4.')) return '4.20.0';
if (type.startsWith('/algoliasearch/4.')) return '4.23.3';
if (type.startsWith('/alpinejs/2.')) return '2.8.2';
if (type.startsWith('/alpinejs/3.')) return '3.13.0';
if (type.startsWith('/alpinejs/3.')) return '3.13.10';
if (type.startsWith('/anchor-js/3.')) return '3.2.2';
if (type.startsWith('/anchor-js/4.')) return '4.3.1';
if (type.startsWith('/anchor-js/5.')) return '5.0.0';
@ -110,8 +110,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/angularjs-toaster/3.')) return '3.0.0';
if (type.startsWith('/angular-bootstrap-colorpicker/3.')) return '3.0.32';
if (type.startsWith('/zumper-angular-payments/1.')) return '1.0.7';
if (type.startsWith('/angular-stripe-checkout@5.')) return '5.1.0';
if (type.startsWith('/angular-translate-loader-partial/2.')) return '2.19.0';
if (type.startsWith('/angular-translate-loader-partial/2.')) return '2.19.1';
if (type.startsWith('/angular-ui-bootstrap/')) {
if (helpers.compareVersion('0.10.0', version)) return '0.10.0'; // <= v0.10.0
if (helpers.compareVersion('0.14.3', version)) return '0.14.3'; // > 0.10.0 <= v0.14.3
@ -122,23 +121,21 @@ targets.setLastVersion = function (type, version) {
if (helpers.compareVersion('0.4.3', version)) return '0.4.3'; // <= 0.4.3
return '1.1.0'; // > 0.4.3
}
if (type.startsWith('/angular-ui-utils/0.')) return '0.1.1';
if (type.startsWith('/angular-ui-select/0.')) return '0.20.0';
if (type.startsWith('/angucomplete-alt/3.')) return '3.0.0';
if (type.startsWith('/animate.css/3.')) return '3.7.2';
if (type.startsWith('/animate.css/4.')) return '4.1.1';
if (type.startsWith('/animejs/3.')) return '3.2.1';
if (type.startsWith('/animejs/3.')) return '3.2.2';
if (type.startsWith('/autocomplete.js/0.')) return '0.38.1';
if (type.startsWith('/autocomplete.js/1.')) return '1.5.4';
if (type.startsWith('/angular-material/1.') || type.startsWith('/angular-material/0.')) return '1.2.5';
if (type.startsWith('/angular-translate/2.')) return '2.19.0';
if (type.startsWith('/angular-translate/2.')) return '2.19.1';
if (type.startsWith('/aos/2.') || type.startsWith('/aos/latest')) return '2.3.4';
if (type.startsWith('/appboy-web-sdk/3.')) return '3.5.1';
if (type.startsWith('/asciinema-player/2.')) return '2.6.1';
if (type.startsWith('/axios/0.')) return '0.27.2';
if (type.startsWith('/axios/1.')) return '1.5.0';
if (type.startsWith('/axios/1.')) return '1.6.8';
if (type.startsWith('/backbone.js/0.')) return '0.9.10';
if (type.startsWith('/backbone.js/1.')) return '1.5.0';
if (type.startsWith('/backbone.js/1.')) return '1.6.0';
if (type.startsWith('/baguettebox.js/1.')) return '1.11.1';
if (type.startsWith('/blazy/1.')) return '1.8.2';
if (type.startsWith('/bluebird/3.')) return '3.7.2';
@ -150,48 +147,48 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/bootstrap-daterangepicker/2.')) return '2.1.27';
if (type.startsWith('/bootstrap-daterangepicker/3.')) return '3.1';
if (type.startsWith('/bootstrap-datepicker/1.')) return '1.10.0';
if (type.startsWith('/bootstrap-icons/1.')) return '1.11.1';
if (type.startsWith('/bootstrap-icons/1.')) return '1.11.3';
if (type.startsWith('/bootstrap-multiselect/0.')) return '0.9.16';
if (type.startsWith('/bootstrap-multiselect/1.')) return '1.1.2';
if (type.startsWith('/bootstrap-slider/10.')) return '10.6.2';
if (type.startsWith('/bootstrap-slider/11.')) return '11.0.2';
if (type.startsWith('/bootstrap-select/1.')) return '1.13.18';
if (type.startsWith('/bootstrap-table/1.')) return '1.22.1';
if (type.startsWith('/bootstrap-table/1.')) return '1.22.5';
if (type.startsWith('/bootstrap-toggle/2.')) return '2.2.2';
if (type.startsWith('/bootstrap-vue/2.')) return '2.23.1';
if (type.startsWith('/bootstrap-3-typeahead/4.')) return '4.0.2';
if (type.startsWith('/bootswatch/3.')) return '3.4.0';
if (type.startsWith('/bootswatch/4.')) return '4.6.1';
if (type.startsWith('/bootswatch/5.')) return '5.3.2';
if (type.startsWith('/bootswatch/5.')) return '5.3.3';
if (type.startsWith('/bowser/')) {
if (version !== 'latest' && helpers.compareVersion('1.9.4', version)) return '1.9.4';
return '2.11.0';
}
if (type.startsWith('/bulma/0.')) return '0.9.4';
if (type.startsWith('/bulma/0.')) return '1.0.0';
if (type.startsWith('/bulma/1.')) return '1.0.0';
if (type.startsWith('/bxslider/4.')) return '4.2.15';
if (type.startsWith('/Chart.js/2.')) return '2.9.4';
if (type.startsWith('/Chart.js/3.')) return '3.9.1';
if (type.startsWith('/Chart.js/4.')) return '4.4.0';
if (type.startsWith('/Chart.js/4.')) return '4.4.1';
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.11';
if (type.startsWith('/cookieconsent2/3.')) return '3.1.1';
if (type.startsWith('/corejs-typeahead/1.')) return '1.3.3';
if (type.startsWith('/corejs-typeahead/1.')) return '1.3.4';
if (type.startsWith('/createjs/')) return '1.0.0';
if (type.startsWith('/d3/3.')) return '3.5.17';
if (type.startsWith('/d3/4.')) return '4.13.0';
if (type.startsWith('/d3/5.')) return '5.16.0';
if (type.startsWith('/d3/6.')) return '6.7.0';
if (type.startsWith('/d3/7.')) return '7.8.5';
if (type.startsWith('/d3-legend/2.')) return '2.25.6';
if (type.startsWith('/d3/7.')) return '7.9.0';
if (type.startsWith('/datatables/1.')) return '1.11.0';
if (type.startsWith('/dayjs/1.')) return '1.11.10';
if (type.startsWith('/dexie/3.') || type.startsWith('/dexie/latest')) return '3.2.4';
if (type.startsWith('/dayjs/1.')) return '1.11.11';
if (type.startsWith('/dexie/3.')) return '3.2.6';
if (type.startsWith('/dexie/4.') || type.startsWith('/dexie/latest')) return '4.0.4';
if (type.startsWith('/docsearch.js/2.')) return '2.6.3';
if (type.startsWith('/docsify/4.') || type.startsWith('/docsify/')) return '4.13.1';
if (type.startsWith('/docsify-themeable/0.')) return '0.9.0';
if (type.startsWith('/drawer/3.')) return '3.2.2';
if (type.startsWith('/dygraph/1.')) return '1.1.1';
if (type.startsWith('/dygraph/2.')) return '2.2.1';
if (type.startsWith('/element-ui/2.')) return '2.15.14';
@ -202,14 +199,13 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/fastclick/1.')) return '1.0.6';
if (type.startsWith('/fancybox/2.')) return '2.1.7';
if (type.startsWith('/fancybox/3.')) return '3.5.7';
if (type.startsWith('/feather-icons/4.')) return '4.29.1';
if (type.startsWith('/FitText.js/1.')) return '1.2.0';
if (type.startsWith('/feather-icons/4.')) return '4.29.2';
if (type.startsWith('/flickity/3.')) return '3.0.0';
if (type.startsWith('/flv.js/')) return '1.6.2';
if (type.startsWith('/font-awesome/3.')) return '3.2.1';
if (type.startsWith('/font-awesome/4.')) return '4.7.0';
if (type.startsWith('/font-awesome/5.')) return '5.15.4';
if (type.startsWith('/font-awesome/6.')) return '6.4.2';
if (type.startsWith('/font-awesome/6.')) return '6.5.2';
if (type.startsWith('/fork-awesome/1.')) return '1.2.0';
if (type.startsWith('/foundation/5.')) return '5.5.3';
if (type.startsWith('/foundation/6.')) return '6.8.1';
@ -217,27 +213,27 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/granim/2.')) return '2.0.0';
if (type.startsWith('/gsap/1.')) return '1.20.5';
if (type.startsWith('/gsap/2.')) return '2.1.3';
if (type.startsWith('/gsap/3.')) return '3.12.2';
if (type.startsWith('/materialicons/')) return 'v140';
if (type.startsWith('/gsap/3.')) return '3.12.5';
if (type.startsWith('/materialicons/')) return 'v142';
if (type.startsWith('/materialiconsoutlined/')) return 'v109';
if (type.startsWith('/materialiconsround/')) return 'v108';
if (type.startsWith('/materialiconssharp/')) return 'v109';
if (type.startsWith('/materialiconstwotone/')) return 'v112';
if (type.startsWith('/handlebars.js/4.')) return '4.7.8';
if (type.startsWith('/highlight.js/7.')) return '9.18.5';
if (type.startsWith('/highlight.js/8.')) return '9.18.5';
if (type.startsWith('/highlight.js/9.')) return '9.18.5';
if (type.startsWith('/highlight.js/10.')) return '10.7.3';
if (type.startsWith('/highlight.js/11.')) return '11.8.0';
if (type.startsWith('/highlight.js/7.')) return '11.9.0';
if (type.startsWith('/highlight.js/8.')) return '11.9.0';
if (type.startsWith('/highlight.js/9.')) return '11.9.0';
if (type.startsWith('/highlight.js/10.')) return '11.9.0';
if (type.startsWith('/highlight.js/11.')) return '11.9.0';
if (type.startsWith('/history/4.')) return '4.10.1';
if (type.startsWith('/history/5.')) return '5.3.0';
if (type.startsWith('/hls.js/0.')) return '0.14.17';
if (type.startsWith('/hls.js/1.')) return '1.4.12';
if (type.startsWith('/hls.js/1.')) return '1.5.8';
if (type.startsWith('/hogan.js/')) return '3.0.2';
if (type.startsWith('/instantsearch.css/7.')) return '7.4.5';
if (type.startsWith('/instantsearch.css/8.')) return '8.1.0';
if (type.startsWith('/instantsearch.js/3.')) return '3.7.0';
if (type.startsWith('/instantsearch.js/4.')) return '4.57.0';
if (type.startsWith('/instantsearch.js/4.')) return '4.68.0';
if (type.startsWith('/in-view/0.')) return '0.6.1';
if (type.startsWith('/iScroll/5.')) return '5.2.0';
if (type.startsWith('/izimodal/1.')) return '1.6.1';
@ -260,7 +256,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/jqueryui/1.')) {
if (helpers.compareVersion('1.8.24', version)) return '1.8.24'; // <= v1.8.24
if (helpers.compareVersion('1.10.0', version)) return '1.10.0'; // > v1.8.24 to <= v1.10.0
return '1.13.2'; // >= 1.8.19
return '1.13.3'; // >= 1.8.19
}
if (type.startsWith('/jquery-ajax-unobtrusive/3.')) return '3.2.6';
if (type.startsWith('/jquery.blockUI/2.')) return '2.70';
@ -281,7 +277,7 @@ targets.setLastVersion = function (type, version) {
}
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.5';
if (type.startsWith('/jquery-validate/1.')) return '1.20.0';
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';
@ -313,7 +309,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.10.44';
if (type.startsWith('/libphonenumber-js/1.')) return '1.10.62';
if (type.startsWith('/libsodium-wrappers/0.')) return '0.5.4';
if (type.startsWith('/lightbox2/2.')) return '2.11.4';
if (type.startsWith('/lightcase/2.')) return '2.5.0';
@ -324,7 +320,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/lozad')) return '1.16.0';
if (type.startsWith('/lunr.js/2.')) return '2.3.9';
if (type.startsWith('/magnific-popup.js/1.')) return '1.1.0';
if (type.startsWith('/markdown-it/')) return '13.0.1';
if (type.startsWith('/markdown-it/')) return '13.0.2';
if (type.startsWith('/mdbootstrap/4.')) return '4.20.0';
if (type.startsWith('/material-design-icons/2.')) return '2.8.94';
if (type.startsWith('/material-design-icons/3.')) return '3.9.97';
@ -340,13 +336,14 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/mdb-ui-kit/3.')) return '3.11.0';
if (type.startsWith('/mdb-ui-kit/4.')) return '4.4.0';
if (type.startsWith('/mdb-ui-kit/5.')) return '5.0.0';
if (type.startsWith('/mdb-ui-kit/6.')) return '6.4.1';
if (type.startsWith('/mdb-ui-kit/6.')) return '6.4.2';
if (type.startsWith('/mdb-ui-kit/7.')) return '7.2.0';
if (type.startsWith('/mobile/1.')) return '1.4.5';
if (type.startsWith('/Modaal/0.')) return '0.4.4';
if (type.startsWith('/modernizr/2.')) return '2.8.3';
if (type.startsWith('/moment.js/2.')) {
if (helpers.compareVersion('2.5.1', version)) return '2.5.1'; // <= v2.5.1
return '2.29.4';
return '2.30.1';
}
if (type.startsWith('/mootools/1.')) {
if (helpers.compareVersion('1.4.5', version)) return '1.4.5'; // <= v1.4.5
@ -356,7 +353,7 @@ targets.setLastVersion = function (type, version) {
// The only resource used from ngx-bootstrap is the CSS file for the datepicker.
// This CSS is unchanged since version 7. So it's not necessary to host it more than once.
if (helpers.compareVersion('6.2.0', version)) return '6.2.0'; // <= v6.2.0
return '11.0.2';
return '12.0.0';
}
if (type.startsWith('/noUiSlider/14.')) return '14.7.0';
if (type.startsWith('/noUiSlider/15.')) return '15.7.1';
@ -369,7 +366,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/owl-carousel/2.')) return '2.3.4';
if (type.startsWith('/p2p-media-loader-core') || type.startsWith('/p2p-media-loader-hlsjs')) return '0.6.2';
if (type.startsWith('/p5.js/0.')) return '0.10.2';
if (type.startsWith('/p5.js/1.')) return '1.7.0';
if (type.startsWith('/p5.js/1.')) return '1.9.3';
if (type.startsWith('/page.js/1.')) return '1.11.6';
if (type.startsWith('/paginationjs/2.')) return '2.6.0';
if (type.startsWith('/plyr/3.')) return '3.7.8';
@ -386,27 +383,28 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/raven.js/3.')) return '3.27.2';
if (type.startsWith('/react/16.')) return '16.14.0';
if (type.startsWith('/react/17.')) return '17.0.2';
if (type.startsWith('/react/18.')) return '18.2.0';
if (type.startsWith('/react/18.')) return '18.3.1';
if (type.startsWith('/react-dom/16.')) return '16.14.0';
if (type.startsWith('/react-dom/17.')) return '17.0.2';
if (type.startsWith('/react-dom/18.')) return '18.2.0';
if (type.startsWith('/react-dom/18.')) return '18.3.1';
if (type.startsWith('/react-intl/')) {
// NOTE: Parameters swapped. (= anything greater than v5.0.0)
if (helpers.compareVersion(version, '5.0.0')) return '6.4.7'; // >= v5.0.0
if (helpers.compareVersion(version, '5.0.0')) return '6.6.6'; // >= v5.0.0
}
if (type.startsWith('/react-redux/7.')) return '7.2.8';
if (type.startsWith('/react-redux/8.')) return '8.1.2';
if (type.startsWith('/react-redux/8.')) return '8.1.3';
if (type.startsWith('/react-router/5.')) return '5.3.3';
if (type.startsWith('/react-router/6.')) return '6.16.0';
if (type.startsWith('/react-router/6.')) return '6.23.0';
if (type.startsWith('/react-side-effect/')) return '2.1.2';
if (type.startsWith('/react-lifecycles-compat/')) return '3.0.4';
if (type.startsWith('/redux/4.')) return '4.2.1';
if (type.startsWith('/redux/5.')) return '5.0.1';
if (type.startsWith('/rickshaw/1.')) return '1.7.1';
if (type.startsWith('/script.js/2.')) return '2.5.9';
if (type.startsWith('/scriptaculous/1.')) return '1.9.0';
if (type.startsWith('/ScrollMagic/2.')) return '2.0.8';
if (type.startsWith('/search-insights/1.')) return '1.10.0';
if (type.startsWith('/search-insights/2.')) return '2.8.2';
if (type.startsWith('/search-insights/2.')) return '2.13.0';
if (type.startsWith('/select2/3.')) return '3.5.4';
if (type.startsWith('/select2/4.')) return '4.0.13';
if (type.startsWith('/semantic-ui/2.')) return '2.5.0';
@ -425,7 +423,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/snowplow/2.')) return '2.18.2';
if (type.startsWith('/socket.io/2.')) return '2.4.0';
if (type.startsWith('/socket.io/3.')) return '3.1.3';
if (type.startsWith('/socket.io/4.')) return '4.7.2';
if (type.startsWith('/socket.io/4.')) return '4.7.5';
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';
@ -433,9 +431,9 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/stickyfill/2.')) return '2.1.0';
if (type.startsWith('/sticky-js/')) return '1.3.0';
if (type.startsWith('/store.js/2.')) return '2.0.12';
if (type.startsWith('/supabase-js/2.')) return '2.39.3';
if (type.startsWith('/swagger-ui/4.')) return '4.18.3';
if (type.startsWith('/swagger-ui/5.')) return '5.7.2';
if (type.startsWith('/swfobject/2.')) return '2.2';
if (type.startsWith('/swagger-ui/5.')) return '5.17.3';
if (type.startsWith('/Swiper/3.')) return '3.4.2';
if (type.startsWith('/Swiper/4.')) return '4.5.1';
if (type.startsWith('/Swiper/5.')) return '5.4.5';
@ -443,14 +441,15 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/Swiper/7.')) return '7.4.1';
if (type.startsWith('/Swiper/8.')) return '8.4.7';
if (type.startsWith('/Swiper/9.')) return '9.4.1';
if (type.startsWith('/Swiper/10.') || type.startsWith('/Swiper/')) return '10.3.0';
if (type.startsWith('/Swiper/10.') || type.startsWith('/Swiper/11.') || type.startsWith('/Swiper/')) return '11.0.5';
if (type.startsWith('/tensorflow/')) {
// NOTE: Parameters swapped. (= anything greater than v2.0.0)
if (helpers.compareVersion(version, '2.0.0')) return '4.11.0'; // >= v2.0.0
if (helpers.compareVersion(version, '2.0.0')) return '4.19.0'; // >= v2.0.0
}
if (type.startsWith('/tether/1.')) return '1.4.7';
if (type.startsWith('/tinymce/5.')) return '5.10.5';
if (type.startsWith('/tinymce/6.')) return '6.7.0';
if (type.startsWith('/tinymce/6.')) return '7.0.1';
if (type.startsWith('/tinymce/7.')) return '7.0.1';
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';
@ -465,13 +464,16 @@ targets.setLastVersion = function (type, version) {
if (helpers.compareVersion('4.4.1', version)) return '4.4.1'; // <= 4.4.1
return '4.6.1';
}
if (type.startsWith('/twitter-bootstrap/5.')) return '5.3.2';
if (type.startsWith('/twitter-bootstrap/5.')) {
if (helpers.compareVersion('5.1.3', version)) return '5.1.3'; // <= 5.1.3
return '5.3.3';
}
if (type.startsWith('/twix.js/0.')) return '0.3.0';
if (type.startsWith('/twix.js/1.')) return '1.3.0';
if (type.startsWith('/underscore.js/1.')) return '1.13.6';
if (type.startsWith('/URI.js/1.')) return '1.19.11';
if (type.startsWith('/urlive/1.')) return '1.1.1';
if (type.startsWith('/vanilla-lazyload')) return '17.8.4';
if (type.startsWith('/vanilla-lazyload')) return '19.1.3';
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';
@ -482,17 +484,17 @@ targets.setLastVersion = function (type, version) {
if (helpers.compareVersion('5.20.5', version)) return '5.20.5'; // <= 5.20.5
if (helpers.compareVersion('6.13.0', version)) return '6.13.0'; // > 5.20.5 to <= 6.13.0
if (helpers.compareVersion('7.21.1', version)) return '7.21.1'; // > 6.13.0 to <= 7.21.1
return '8.5.3';
return '8.13.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.3.4';
if (type.startsWith('/vue/3.')) return '3.4.26';
if (type.startsWith('/vue-i18n/8.')) return '8.27.2';
if (type.startsWith('/vue-i18n/9.')) return '9.4.1';
if (type.startsWith('/vue-i18n/9.')) return '9.13.1';
if (type.startsWith('/vue-match-media/1.')) return '1.0.3';
if (type.startsWith('/vue-resource/1.')) return '1.5.3';
if (type.startsWith('/vue-router/3.')) return '3.6.5';
if (type.startsWith('/vue-router/4.')) return '4.2.5';
if (type.startsWith('/vue-router/4.')) return '4.3.2';
if (type.startsWith('/vuex/3.')) return '3.6.2';
if (type.startsWith('/vuex/4.')) return '4.1.0';
if (type.startsWith('/waypoints/4.')) return '4.0.1';
@ -500,7 +502,8 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/webfont')) return '1.6.28';
if (type.startsWith('/webrtc-adapter/6.')) return '6.4.8';
if (type.startsWith('/webrtc-adapter/7.')) return '7.7.1';
if (type.startsWith('/webrtc-adapter/8.')) return '8.2.3';
if (type.startsWith('/webrtc-adapter/8.')) return '9.0.1';
if (type.startsWith('/webrtc-adapter/9.')) return '9.0.1';
if (type.startsWith('/wow/1.')) return '1.1.2';
if (version === null) return 'latest';
return '';
@ -512,6 +515,7 @@ targets.determineResourceName = function (filename) {
};
const ListOfFiles = {
'supabase.min.jsm': 'supabase-js',
'handlebars.min.jsm': 'handlebars.js',
'URI.min.jsm': 'URI.js',
'vue-router.global.min.jsm': 'vue-router',
@ -605,6 +609,7 @@ const ListOfFiles = {
'jquery.validate.unobtrusive.min.jsm': 'jQuery Validate Unobtrusive',
'jquery.sliderPro.min.jsm': 'Slider Pro (JS)',
'knockout-min.jsm': 'Knockout',
'knockout-latest.min.jsm': 'Knockout',
'bootstrap-multiselect.min.jsm': 'Bootstrap Multiselect',
'ajax-bootstrap-select.min.jsm': 'Ajax Bootstrap Select',
'bootstrap-vue.min.jsm': 'BootstrapVue (JS)',

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -19,7 +19,7 @@
* Options (Other)
*/
var optionsOther = {};
let optionsOther = {};
/**
@ -34,7 +34,11 @@ optionsOther._renderIconSection = function (opt) {
return;
}
selectedIcon = opt.selectedIcon;
if (opt.selectedIcon === null || opt.selectedIcon === undefined) {
selectedIcon = 'Default';
} else {
selectedIcon = opt.selectedIcon;
}
if (selectedIcon === 'Default') {
document.getElementById('icon-default').checked = true;

View File

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

View File

@ -23,7 +23,7 @@
* Options
*/
var options = {};
let options = {};
/**
@ -196,7 +196,7 @@ options._configureLinkPrefetching = function (value) {
};
options._serializeAllowlistedDomains = function (allowlistedDomains) {
if (allowlistedDomains === undefined) {
if (allowlistedDomains === undefined || allowlistedDomains === null) {
return '';
}

View File

@ -23,7 +23,7 @@
* Popup
*/
var popup = {};
let popup = {};
/**
@ -145,7 +145,7 @@ popup._renderDomainAllowlistPanel = function () {
googleFontsToggleElement = document.getElementById('google-fonts-toggle-switch');
if (popup._blockGoogleFonts === false) {
if (popup._blockGoogleFonts === false || helpers.isGoogleDomain(popup._domain) === true) {
document.getElementById('div-google-fonts').hidden = true;
}
@ -295,7 +295,9 @@ popup._determineStatusGoogleFonts = function () {
};
chrome.runtime.sendMessage(message, function (response) {
popup._domainGoogleFonts = response.value;
if (response !== undefined) {
popup._domainGoogleFonts = response.value;
}
resolve();
});
});

View File

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

View File

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

View File

@ -27,27 +27,37 @@
<div class="release-notes-area">
<p>Updated</p>
<ul>
<li>search-insights v2.8.1 -> v2.8.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1528">#1528</a>)</li>
<li>react-intl v6.4.4 -> v6.4.7 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1529">#1529</a>)</li>
<li>swagger-ui v5.4.2 -> v5.7.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1530">#1530</a>)</li>
<li>hls.js v1.4.10 -> v1.4.12 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1531">#1531</a>)</li>
<li>vue-i18n v9.2.2 -> v9.4.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1532">#1532</a>)</li>
<li>instantsearch.js v4.56.9 -> v4.57.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1533">#1533</a>)</li>
<li>algoliasearch v4.19.1 -> v4.20.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1534">#1534</a>)</li>
<li>twitter-bootstrap v5.3.1 -> v5.3.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1536">#1536</a>)</li>
<li>react-router v6.15.0 -> v6.16.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1537">#1537</a>)</li>
<li>tensorflow v4.10.0 -> v4.11.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1538">#1538</a>)</li>
<li>bootstrap-icons v1.10.5 -> v1.11.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1539">#1539</a>)</li>
<li>dayjs v1.11.9 -> v1.11.10 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1540">#1540</a>)</li>
<li>bootswatch v5.3.1 -> v5.3.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1541">#1541</a>)</li>
<li>lightgallery v2.7.1 -> v2.7.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1542">#1542</a>)</li>
<li>instantsearch.css v8.0.0 -> v8.1.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1543">#1543</a>)</li>
<li>Swiper v10.2.0 -> v10.3.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1544">#1544</a>)</li>
<li>vue-router v4.2.4 -> v4.2.5 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1545">#1545</a>)</li>
<li>alpinejs v3.13.8 -> v3.13.10</li>
<li>bootstrap-table v1.22.4 -> v1.22.5</li>
<li>dayjs v1.11.10 -> v1.11.11</li>
<li>feather-icons v4.29.1 -> v4.29.2</li>
<li>instantsearch.js v4.66.1 -> v4.68.0</li>
<li>jqueryui v1.13.2 -> v1.13.3</li>
<li>libphonenumber-js v1.10.60 -> v1.10.62</li>
<li>p5.js v1.9.2 -> v1.9.3</li>
<li>react v18.2.0 -> v18.3.1</li>
<li>react-dom v18.2.0 -> v18.3.1</li>
<li>react-intl v6.6.5 -> v6.6.6</li>
<li>react-router v6.22.3 -> v6.23.0</li>
<li>swagger-ui v5.15.1 -> v5.17.3</li>
<li>tensorflow v4.17.0 -> v4.19.0</li>
<li>video.js v8.11.8 -> v8.13.0</li>
<li>vue v3.4.21 -> v3.4.26</li>
<li>vue-i18n v9.12.0 -> v9.13.1</li>
<li>vue-router v4.3.0 -> v4.3.2</li>
</ul>
<p>Added</p>
<ul>
<li>twitter-bootstrap v5.1.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1624">#1624</a>)</li>
</ul>
<p>Improved</p>
<ul>
<li>Wildcard support extended in all lists (<a href="https://codeberg.org/nobody/LocalCDN/issues/1622">#1622</a>)</li>
<li>Extend statistics over the whole time range (<a href="https://codeberg.org/nobody/LocalCDN/issues/1626">#1626</a>)</li>
</ul>
<p>Fixed</p>
<ul>
<li>HTML filter trim spaces in character set detection (<a href="https://codeberg.org/nobody/LocalCDN/issues/1526">#1526</a>)</li>
<li>Welcome Page autoclose if check "Allow this extension to run in Private Windows" (<a href="https://codeberg.org/nobody/LocalCDN/issues/1625">#1625</a>)</li>
</ul>
</div>
<div id="generator-section">
@ -86,6 +96,275 @@
</div>
<div id="history"><span id="history-indicator">+</span> Previous Versions</div>
<div id="history-release-notes">
<p class='release-date'>2023-04-13 (v2.6.66)</p>
<p>Updated</p>
<ul>
<li>tinymce v6.8.3 -> v7.0.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/fbd89e2d82c04df4591b7c0a67c8260251326574">fbd89e2d82</a>)</li>
<li>bulma v0.9.4 -> v1.0.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/225905ca68112ff1fc8a81c89a631480d062d42d">225905ca68</a>)</li>
<li>vanilla-lazyload v17.8.8 -> v19.1.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/5b24cdc41228ab6a478a572638e65b808aea4d7b">5b24cdc412</a>)</li>
<li>materialicons v141 -> v142 (<a href="https://codeberg.org/nobody/LocalCDN/commit/4e841ab63717633465f73d7afc880b93c5bbff57">4e841ab637</a>)</li>
<li>react-intl v6.6.2 -> v6.6.5 (<a href="https://codeberg.org/nobody/LocalCDN/commit/7aeb64677349de976244fc041d295219abd30a32">7aeb646773</a>)</li>
<li>font-awesome v6.5.1 -> v6.5.2 (<a href="https://codeberg.org/nobody/LocalCDN/commit/6b684648a94add0c3cd9aab66886bd38ec9cc312">6b684648a9</a>)</li>
<li>alpinejs v3.13.7 -> v3.13.8 (<a href="https://codeberg.org/nobody/LocalCDN/commit/8fa3d016a16c87d93da3ab10583c31b979354b87">8fa3d016a1</a>)</li>
<li>swagger-ui v5.12.0 -> v5.15.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/3d658a279456a89e325b93ca15eac9b19d1fbc37">3d658a2794</a>)</li>
<li>p5.js v1.9.1 -> v1.9.2 (<a href="https://codeberg.org/nobody/LocalCDN/commit/b5fc4e089e33e7438ddf2bbd26253400057271d2">b5fc4e089e</a>)</li>
<li>hls.js v1.5.7 -> v1.5.8 (<a href="https://codeberg.org/nobody/LocalCDN/commit/d5e06b9b10767b185162c90ab3300b4a485fc74a">d5e06b9b10</a>)</li>
<li>bootstrap-table v1.22.3 -> v1.22.4 (<a href="https://codeberg.org/nobody/LocalCDN/commit/870b08ba367975f88898ffc77983ab2e6785d6bc">870b08ba36</a>)</li>
<li>dexie v3.2.6 -> v4.0.4 (<a href="https://codeberg.org/nobody/LocalCDN/commit/34cb76848d2a5e924863811b514f73fbd97a70c4">34cb76848d</a>)</li>
<li>vue-i18n v9.10.2 -> v9.12.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/8cddef7544b81dd6120d8720eeccafbe693fe95c">8cddef7544</a>)</li>
<li>webrtc-adapter v8.2.3 -> v9.0.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/e2bd8ce3fac43d93a996adb7bd67f417e0e48792">e2bd8ce3fa</a>)</li>
<li>instantsearch.js v4.66.0 -> v4.66.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/ab082579dcec2ea633ccfc335177919dc7933abb">ab082579dc</a>)</li>
<li>libphonenumber-js v1.10.58 -> v1.10.60 (<a href="https://codeberg.org/nobody/LocalCDN/commit/3dcc7025e37ce011300bd1c26b0459c41d5b038f">3dcc7025e3</a>)</li>
<li>algoliasearch v4.22.1 -> v4.23.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/ace529316c88ba48d0ea5b3c9f00d44518c6f56d">ace529316c</a>)</li>
</ul>
<p>Improved</p>
<ul>
<li>highlight.js v7.x, v8.x, v9.x, v10.x -> v11.x (<a href="https://codeberg.org/nobody/LocalCDN/commit/4d38d04e17bbf2f44a1c986b790bfe4b1bdade20">4d38d04e17</a>)</li>
</ul>
<p>Removed</p>
<ul>
<li>FitText.js (<a href="https://codeberg.org/nobody/LocalCDN/commit/cc9dacbde6c1221eba09806b401a3313aba5bd7d">cc9dacbde6</a>)</li>
<li>angular-ui-select (<a href="https://codeberg.org/nobody/LocalCDN/commit/4e8cd7127f6704881ce7943a1690a10b69693c7c">4e8cd7127f</a>)</li>
<li>angular-ui-utils (<a href="https://codeberg.org/nobody/LocalCDN/commit/71f358392c6183a281fc7dc129cecabb914c8e0a">71f358392c</a>)</li>
<li>angular-stripe-checkout (<a href="https://codeberg.org/nobody/LocalCDN/commit/1211a9c43a39326152669d83ec36d819cc21fb50">1211a9c43a</a>)</li>
<li>d3-legend (<a href="https://codeberg.org/nobody/LocalCDN/commit/fb5a3f779b86b493dd71f0ba6899f2b9f17ac4f3">fb5a3f779b</a>)</li>
<li>drawer (<a href="https://codeberg.org/nobody/LocalCDN/commit/5df53e2ea2266130a76931aa30e46d73e22c6f5b">5df53e2ea2</a>)</li>
</ul>
<p class='release-date'>2023-03-17 (v2.6.65)</p>
<p>Updated</p>
<ul>
<li>d3 v7.8.5 -> v7.9.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/9096750ba29d9d103e1cdced53b394d718099d55">9096750ba2</a>)</li>
<li>axios v1.6.7 -> v1.6.8 (<a href="https://codeberg.org/nobody/LocalCDN/commit/76a887af6175959e15c2b3582f813e29c07198fd">76a887af61</a>)</li>
<li>socket.io v4.7.4 -> v4.7.5 (<a href="https://codeberg.org/nobody/LocalCDN/commit/1be054976b61d2c0ff25a296b4179746b9b43f33">1be054976b</a>)</li>
<li>react-router v6.22.2 -> v6.22.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/cf2cae09e4cca7a30be8295a51405a60fc0806e8">cf2cae09e4</a>)</li>
<li>video.js v8.11.5 -> v8.11.8 (<a href="https://codeberg.org/nobody/LocalCDN/commit/b98d1fd75368e2eca39f6674654c271594284f64">b98d1fd753</a>)</li>
<li>alpinejs v3.13.5 -> v3.13.7 (<a href="https://codeberg.org/nobody/LocalCDN/commit/5efa34e9327cc27c1b867fde651b80e44d3f66e6">5efa34e932</a>)</li>
<li>swagger-ui v5.11.8 -> v5.12.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/773beb1697b68d4a23c84ce84cc91d2e0c983f47">773beb1697</a>)</li>
<li>mdb-ui-kit v7.1.0 -> v7.2.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/e3ba1c8c32acb03f3c585e53ffbc0f154c3ef8db">e3ba1c8c32</a>)</li>
<li>p5.js v1.9.0 -> v1.9.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/9fd72962886333d710635f2af0fbbfb7ccee4ffd">9fd7296288</a>)</li>
<li>vue-i18n v9.9.1 -> v9.10.2 (<a href="https://codeberg.org/nobody/LocalCDN/commit/008db469fe79f9324b17c82f418c9e48614783bf">008db469fe</a>)</li>
<li>libphonenumber-js v1.10.57 -> v1.10.58 (<a href="https://codeberg.org/nobody/LocalCDN/commit/74dea23e1d8791f58b3c32da1835412afe03e39e">74dea23e1d</a>)</li>
</ul>
<p>Improved</p>
<ul>
<li>Support wildcard TLD in all lists (<a href="https://codeberg.org/nobody/LocalCDN/issues/1622">#1622</a>)</li>
<li>Fixed incorrect description in the settings (<a href="https://codeberg.org/nobody/LocalCDN/issues/1622">#1622</a>)</li>
</ul>
<p>Fixed</p>
<ul>
<li>docsify themes (<a href="https://codeberg.org/nobody/LocalCDN/issues/1623">#1623</a>)</li>
</ul>
<p class='release-date'>2023-02-29 (v2.6.64)</p>
<p>Updated</p>
<ul>
<li>vue v3.4.15 -> v3.4.21 (<a href="https://codeberg.org/nobody/LocalCDN/commit/e277722b22601b954d30033b187a53f066972962">e277722b22</a>)</li>
<li>tinymce v6.8.2 -> v6.8.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/c637d1b56e3cfe485cb035952960af80384b3b9e">c637d1b56e</a>)</li>
<li>twitter-bootstrap v5.3.2 -> v5.3.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/47afb3e6144fea91d8edd603bbae36d7e4849d6a">47afb3e614</a>)</li>
<li>react-router v6.22.0 -> v6.22.2 (<a href="https://codeberg.org/nobody/LocalCDN/commit/f99b07a6fd124913874778aaadb3ff246da7148f">f99b07a6fd</a>)</li>
<li>video.js v8.11.1 -> v8.11.5 (<a href="https://codeberg.org/nobody/LocalCDN/commit/093f9253e809f423dbb3b0e8eb9d9224d2b5c3e1">093f9253e8</a>)</li>
<li>backbone.js v1.5.0 -> v1.6.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/e38e56a473de4fac28a1338e2ba6fce7774ee5c7">e38e56a473</a>)</li>
<li>swagger-ui v5.11.2 -> v5.11.8 (<a href="https://codeberg.org/nobody/LocalCDN/commit/e2ff54ce1812eabfd2c28f2083d9a033cd28b4e1">e2ff54ce18</a>)</li>
<li>vue-router v4.2.5 -> v4.3.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/06c9f62631043ffd767fbc857f81ace0da80e4c1">06c9f62631</a>)</li>
<li>hls.js v1.5.3 -> v1.5.7 (<a href="https://codeberg.org/nobody/LocalCDN/commit/35b8e794034f303b3239a39201d89e6c44c9d7ac">35b8e79403</a>)</li>
<li>bootstrap-table v1.22.2 -> v1.22.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/353dde8cff797ef1a453661f894b33dd0ccea670">353dde8cff</a>)</li>
<li>dexie v3.2.4 -> v3.2.6 (<a href="https://codeberg.org/nobody/LocalCDN/commit/c4cb8b2b6b4938c40eccc6ad6118524b568b6acd">c4cb8b2b6b</a>)</li>
<li>instantsearch.js v4.64.2 -> v4.66.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/21dbfe807e137ed203ce2f5666e87d7699351f83">21dbfe807e</a>)</li>
<li>libphonenumber-js v1.10.55 -> v1.10.57 (<a href="https://codeberg.org/nobody/LocalCDN/commit/6a76aa6cf1d369949537b9e61bdf6cf798c50121">6a76aa6cf1</a>)</li>
<li>vanilla-lazyload v17.8.5 -> v17.8.8 (<a href="https://codeberg.org/nobody/LocalCDN/commit/eec43134f84bf8f40ac443f68a9202573a9bc247">eec43134f8</a>)</li>
<li>bootswatch v5.3.2 -> v5.3.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/856a849ebb17b64af6b0a4e173610ae4920e30cc">856a849ebb</a>)</li>
</ul>
<p class='release-date'>2023-02-04 (v2.6.63)</p>
<p>Updated</p>
<ul>
<li>materialicons v140 -> v141 (<a href="https://codeberg.org/nobody/LocalCDN/commit/6123be7478548b985cad5f28e1c25a1f191238be">6123be7478</a>)</li>
<li>gsap v3.12.4 -> v3.12.5 (<a href="https://codeberg.org/nobody/LocalCDN/commit/062a90bbdb8d0b8f25473fad4fe9305b89c7616f">062a90bbdb</a>)</li>
<li>react-intl v6.5.5 -> v6.6.2 (<a href="https://codeberg.org/nobody/LocalCDN/commit/057c9465ebc3a3db6414105c54e934bec999410f">057c9465eb</a>)</li>
<li>angular-translate v2.19.0 -> v2.19.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/8a58c9ca79e37be8f2128ce4740d8a55f795faeb">8a58c9ca79</a>)</li>
<li>angular-translate-loader-partial v2.19.0 -> v2.19.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/e906cdcd591da91bbd580536307378b13577e44a">e906cdcd59</a>)</li>
<li>vue v3.4.9 -> v3.4.15 (<a href="https://codeberg.org/nobody/LocalCDN/commit/e420da12433938427fb75655c1adef8ce63ed7cf">e420da1243</a>)</li>
<li>axios v1.6.5 -> v1.6.7 (<a href="https://codeberg.org/nobody/LocalCDN/commit/afb82f6ebc49163b14b92839e88673cdea45da8c">afb82f6ebc</a>)</li>
<li>react-router v6.21.1 -> v6.22.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/f2be418a43fa42330759d80fbac67e78a4705428">f2be418a43</a>)</li>
<li>video.js v8.9.0 -> v8.11.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/bab22c90f292b7e4edaf6b3986109b7a48534f65">bab22c90f2</a>)</li>
<li>alpinejs v3.13.3 -> v3.13.5 (<a href="https://codeberg.org/nobody/LocalCDN/commit/a73b3dbd14735e20a5392226a82b8100f99d6736">a73b3dbd14</a>)</li>
<li>swagger-ui v5.11.0 -> v5.11.2 (<a href="https://codeberg.org/nobody/LocalCDN/commit/c8cc450ce88bef045a1b2493b5086d9927e9fd31">c8cc450ce8</a>)</li>
<li>tensorflow v4.16.0 -> v4.17.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/ed51d96de8832f7ec80db1583d277c28c91b9716">ed51d96de8</a>)</li>
<li>hls.js v1.5.1 -> v1.5.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/1cd7e033fe402ed9d5b8be4cabc0d099ac4793c5">1cd7e033fe</a>)</li>
<li>vue-i18n v9.9.0 -> v9.9.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/986ce46187308b3db73f428ad82fe4dca366d43a">986ce46187</a>)</li>
<li>instantsearch.js v4.63.0 -> v4.64.2 (<a href="https://codeberg.org/nobody/LocalCDN/commit/a059ea04bd0d51b2cd21109af115033d391ea988">a059ea04bd</a>)</li>
<li>libphonenumber-js v1.10.53 -> v1.10.55 (<a href="https://codeberg.org/nobody/LocalCDN/commit/88be389f55e0f5f0f7f42d73bba75118d3e0606f">88be389f55</a>)</li>
<li>corejs-typeahead v1.3.3 -> v1.3.4 (<a href="https://codeberg.org/nobody/LocalCDN/commit/1ee357539007d3f7d6ee1801296570ab270b8b2f">1ee3575390</a>)</li>
</ul>
<p>Added</p>
<ul>
<li>supabase-js (<a href="https://codeberg.org/nobody/LocalCDN/issues/1619">#1619</a>)</li>
</ul>
<p>Remove</p>
<ul>
<li>SWFObject (<a href="https://codeberg.org/nobody/LocalCDN/commit/2f9bdcd6c09446a9f9ac6c56d0337da804ca6ffc">2f9bdcd6c0</a>)</li>
</ul>
<p>Mapping</p>
<ul>
<li>docsify -> cdn.jsdelivr.net (<a href="https://codeberg.org/nobody/LocalCDN/issues/1616">#1616</a>)</li>
<li>Font Awesome v4.7.0 woff -> woff2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1617">#1617</a>)</li>
</ul>
<p class='release-date'>2023-01-13 (v2.6.62)</p>
<p>Updated</p>
<ul>
<li>vue v3.3.13 -> v3.4.9 (<a href="https://codeberg.org/nobody/LocalCDN/commit/881b142f279f98bf3fb44a6e1728e8964bfd5bd6">881b142f27</a>)</li>
<li>axios v1.6.3 -> v1.6.5 (<a href="https://codeberg.org/nobody/LocalCDN/commit/de1450dec75d39aa0eacbd894c6cea9ff8ebb81b">de1450dec7</a>)</li>
<li>socket.io v4.7.2 -> v4.7.4 (<a href="https://codeberg.org/nobody/LocalCDN/commit/8d18fd35bac8db4c88b66307397865f0d754977e">8d18fd35ba</a>)</li>
<li>moment.js v2.30.0 -> v2.30.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/bad9334a5b6fde879053d54cd3efe6804abbcb6f">bad9334a5b</a>)</li>
<li>video.js v8.8.0 -> v8.9.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/c6583298f6a7475c89ff833b108cbc7b40911628">c6583298f6</a>)</li>
<li>swagger-ui v5.10.5 -> v5.11.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/945e841986ace53c6d00b5275e2a1b34dfe3d434">945e841986</a>)</li>
<li>tensorflow v4.15.0 -> v4.16.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/cb9783a10962dce6a331fdb307b895c3907a87fb">cb9783a109</a>)</li>
<li>hls.js v1.4.14 -> v1.5.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/4f8892857313d3d5f8dc0cfe6e593b9f70eb3289">4f88928573</a>)</li>
<li>bootstrap-table v1.22.1 -> v1.22.2 (<a href="https://codeberg.org/nobody/LocalCDN/commit/8bd3e388362ee56a8ee3ef305437f7e3aeff4193">8bd3e38836</a>)</li>
<li>vue-i18n v9.8.0 -> v9.9.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/01c9d7780500b7d09982fea46f7e1d6562500d4d">01c9d77805</a>)</li>
<li>bootstrap-icons v1.11.2 -> v1.11.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/a8c01e1308dff2363b0d19591d4303de49d41d88">a8c01e1308</a>)</li>
<li>algoliasearch v4.22.0 -> v4.22.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/5678f07e273576d41063cb4dc3d373acbcd59de1">5678f07e27</a>)</li>
</ul>
<p class='release-date'>2023-12-29 (v2.6.61)</p>
<p>Updated</p>
<ul>
<li>vue v3.3.11 -> v3.3.13 (<a href="https://codeberg.org/nobody/LocalCDN/commit/3a346eeba8cfd524722d578b3c80db6f313f39bd">3a346eeba8</a>)</li>
<li>axios v1.6.2 -> v1.6.3 (<a href="https://codeberg.org/nobody/LocalCDN/commit/cbb8f629fc85924d01fe0ac63a51748c5b780e44">cbb8f629fc</a>)</li>
<li>redux v5.0.0 -> v5.0.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/d0712af389b3856e64c3d9088b267322262ac486">d0712af389</a>)</li>
<li>react-router v6.20.1 -> v6.21.1 (<a href="https://codeberg.org/nobody/LocalCDN/commit/65dce2b6ee65c10aaef4da5bb262f83d016dc818">65dce2b6ee</a>)</li>
<li>moment.js v2.29.4 -> v2.30.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/e66966d8eb9d87a51e1c00c3dcadddf9a5e486b0">e66966d8eb</a>)</li>
<li>video.js v8.7.0 -> v8.8.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/eebd7895bcade4a18cf938a7f89f2530709af239">eebd7895bc</a>)</li>
<li>swagger-ui v5.10.3 -> v5.10.5 (<a href="https://codeberg.org/nobody/LocalCDN/commit/920adb917a1e9e008fc724486fe28c6d2998aaa8">920adb917a</a>)</li>
<li>tensorflow v4.14.0 -> v4.15.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/a42c8b360ab6cea91da9b62ce3ce78ffd392213d">a42c8b360a</a>)</li>
<li>gsap v3.12.3 -> v3.12.4 (<a href="https://codeberg.org/nobody/LocalCDN/commit/f5fe905889e4dee81ea7ac14ed2b62b9b228a5f8">f5fe905889</a>)</li>
<li>hls.js v1.4.13 -> v1.4.14 (<a href="https://codeberg.org/nobody/LocalCDN/commit/ba026ff85f839686d600984f7d93448ec1d22434">ba026ff85f</a>)</li>
<li>instantsearch.js v4.62.0 -> v4.63.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/ee0626a234185bfde6ce73349562e64725deb601">ee0626a234</a>)</li>
<li>libphonenumber-js v1.10.51 -> v1.10.53 (<a href="https://codeberg.org/nobody/LocalCDN/commit/1d5ec6cae0b566ea394b13a72f3a9a8bef6908d0">1d5ec6cae0</a>)</li>
<li>algoliasearch v4.21.0 -> v4.22.0 (<a href="https://codeberg.org/nobody/LocalCDN/commit/ce32d63913aeb5d66663034de7c3bb307a36b831">ce32d63913</a>)</li>
</ul>
<p>Improved</p>
<ul>
<li>Extend the Google Service check and also include subdomains (<a href="https://codeberg.org/nobody/LocalCDN/issues/1560">#1560</a>)</li>
</ul>
<p class='release-date'>2023-12-12 (v2.6.60)</p>
<p>Updated</p>
<ul>
<li>vue v3.3.8 -> v3.3.11 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1591">#1591</a>)</li>
<li>gsap v3.12.2 -> v3.12.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1592">#1592</a>)</li>
<li>font-awesome v6.4.2 -> v6.5.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1593">#1593</a>)</li>
<li>tinymce v6.7.3 -> v6.8.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1594">#1594</a>)</li>
<li>react-router v6.19.0 -> v6.20.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1595">#1595</a>)</li>
<li>animejs v3.2.1 -> v3.2.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1596">#1596</a>)</li>
<li>Swiper v11.0.4 -> v11.0.5 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1597">#1597</a>)</li>
<li>alpinejs v3.13.2 -> v3.13.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1598">#1598</a>)</li>
<li>swagger-ui v5.10.0 -> v5.10.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1599">#1599</a>)</li>
<li>p5.js v1.8.0 -> v1.9.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1600">#1600</a>)</li>
<li>tensorflow v4.13.0 -> v4.14.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1601">#1601</a>)</li>
<li>vue-i18n v9.7.0 -> v9.8.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1602">#1602</a>)</li>
<li>bootstrap-icons v1.11.1 -> v1.11.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1603">#1603</a>)</li>
<li>libphonenumber-js v1.10.49 -> v1.10.51 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1604">#1604</a>)</li>
<li>Chart.js v4.4.0 -> v4.4.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1605">#1605</a>)</li>
<li>video.js v8.6.1 -> v8.7.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1606">#1606</a>)</li>
<li>hls.js v1.4.12 -> v1.4.13 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1607">#1607</a>)</li>
<li>instantsearch.js v4.60.0 -> v4.62.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1608">#1608</a>)</li>
<li>mdb-ui-kit v7.1.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1609">#1609</a>)</li>
<li>redux v5.0.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1610">#1610</a>)</li>
<li>search-insights v2.11.0 -> v2.13.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1611">#1611</a>)</li>
<li>ngx-bootstrap v11.0.2 -> v12.0.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1612">#1612</a>)</li>
<li>algoliasearch v4.20.0 -> v4.21.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1613">#1613</a>)</li>
</ul>
<p class='release-date'>2023-11-19 (v2.6.59)</p>
<p>Updated</p>
<ul>
<li>react-intl v6.5.1 -> v6.5.5 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1579">#1579</a>)</li>
<li>search-insights v2.9.0 -> v2.11.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1580">#1580</a>)</li>
<li>vue v3.3.7 -> v3.3.8 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1581">#1581</a>)</li>
<li>axios v1.6.0 -> v1.6.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1582">#1582</a>)</li>
<li>react-router v6.17.0 -> v6.19.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1583">#1583</a>)</li>
<li>Swiper v11.0.3 -> v11.0.4 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1584">#1584</a>)</li>
<li>swagger-ui v5.9.1 -> v5.10.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1585">#1585</a>)</li>
<li>tensorflow v4.12.0 -> v4.13.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1586">#1586</a>)</li>
<li>tinymce v6.7.2 -> v6.7.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1587">#1587</a>)</li>
<li>vue-i18n v9.6.1 -> v9.7.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1588">#1588</a>)</li>
<li>instantsearch.js v4.59.0 -> v4.60.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1589">#1589</a>)</li>
</ul>
<p class='release-date'>2023-10-28 (v2.6.58)</p>
<p>Updated</p>
<ul>
<li>tinymce v6.7.0 -> v6.7.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1562">#1562</a>)</li>
<li>react-intl v6.4.7 -> v6.5.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1563">#1563</a>)</li>
<li>search-insights v2.8.3 -> v2.9.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1564">#1564</a>)</li>
<li>vanilla-lazyload v17.8.4 -> v17.8.5 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1565">#1565</a>)</li>
<li>alpinejs v3.13.1 -> v3.13.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1566">#1566</a>)</li>
<li>axios v1.5.1 -> v1.6.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1567">#1567</a>)</li>
<li>react-router v6.16.0 -> v6.17.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1568">#1568</a>)</li>
<li>Swiper v10.3.1 -> v11.0.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1569">#1569</a>)</li>
<li>video.js v8.6.0 -> v8.6.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1570">#1570</a>)</li>
<li>vue v3.3.4 -> v3.3.7 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1571">#1571</a>)</li>
<li>swagger-ui v5.9.0 -> v5.9.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1572">#1572</a>)</li>
<li>p5.js v1.7.0 -> v1.8.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1573">#1573</a>)</li>
<li>tensorflow v4.11.0 -> v4.12.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1574">#1574</a>)</li>
<li>vue-i18n v9.5.0 -> v9.6.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1575">#1575</a>)</li>
<li>instantsearch.js v4.58.0 -> v4.59.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1576">#1576</a>)</li>
<li>libphonenumber-js v1.10.47 -> v1.10.49 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1577">#1577</a>)</li>
</ul>
<p>Improved</p>
<ul>
<li>Allow Google fonts for Google services by default and permanently (<a href="https://codeberg.org/nobody/LocalCDN/issues/1560">#1560</a>)</li>
<li>Firefox Sync (<a href="https://codeberg.org/nobody/LocalCDN/issues/1510">#1510</a>)</li>
</ul>
<p>Mapping</p>
<ul>
<li>bootswatch -> cdnjs.cloudflare.com (<a href="https://codeberg.org/nobody/LocalCDN/issues/1561">#1561</a>)</li>
<li>datatables -> cdnjs.cloudflare.com (<a href="https://codeberg.org/nobody/LocalCDN/issues/1561">#1561</a>)</li>
<li>bootstrap-select -> cdn.jsdelivr.net (<a href="https://codeberg.org/nobody/LocalCDN/issues/1561">#1561</a>)</li>
<li>js-cookie -> cdn.jsdelivr.net (<a href="https://codeberg.org/nobody/LocalCDN/issues/1561">#1561</a>)</li>
</ul>
<p class='release-date'>2023-10-12 (v2.6.57)</p>
<p>Updated</p>
<ul>
<li>highlight.js v11.8.0 -> v11.9.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1546">#1546</a>)</li>
<li>search-insights v2.8.2 -> v2.8.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1547">#1547</a>)</li>
<li>axios v1.5.0 -> v1.5.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1548">#1548</a>)</li>
<li>Swiper v10.3.0 -> v10.3.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1549">#1549</a>)</li>
<li>video.js v8.5.3 -> v8.6.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1550">#1550</a>)</li>
<li>alpinejs v3.13.0 -> v3.13.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1551">#1551</a>)</li>
<li>swagger-ui v5.7.2 -> v5.9.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1552">#1552</a>)</li>
<li>mdb-ui-kit v6.4.1 -> v6.4.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1553">#1553</a>)</li>
<li>react-redux v8.1.2 -> v8.1.3 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1554">#1554</a>)</li>
<li>markdown-it v13.0.1 -> v13.0.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1555">#1555</a>)</li>
<li>jquery-validate v1.19.5 -> v1.20.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1556">#1556</a>)</li>
<li>vue-i18n v9.4.1 -> v9.5.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1557">#1557</a>)</li>
<li>instantsearch.js v4.57.0 -> v4.58.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1558">#1558</a>)</li>
<li>libphonenumber-js v1.10.44 -> v1.10.47 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1559">#1559</a>)</li>
</ul>
<p>Improved</p>
<ul>
<li>Update manifest.json to prepare Firefox for Android support and new signing method by Mozilla (<a href="https://codeberg.org/nobody/LocalCDN/issues/136">#136</a>)</li>
</ul>
<p class='release-date'>2023-09-23 (v2.6.56)</p>
<p>Updated</p>
<ul>
<li>search-insights v2.8.1 -> v2.8.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1528">#1528</a>)</li>
<li>react-intl v6.4.4 -> v6.4.7 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1529">#1529</a>)</li>
<li>swagger-ui v5.4.2 -> v5.7.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1530">#1530</a>)</li>
<li>hls.js v1.4.10 -> v1.4.12 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1531">#1531</a>)</li>
<li>vue-i18n v9.2.2 -> v9.4.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1532">#1532</a>)</li>
<li>instantsearch.js v4.56.9 -> v4.57.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1533">#1533</a>)</li>
<li>algoliasearch v4.19.1 -> v4.20.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1534">#1534</a>)</li>
<li>twitter-bootstrap v5.3.1 -> v5.3.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1536">#1536</a>)</li>
<li>react-router v6.15.0 -> v6.16.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1537">#1537</a>)</li>
<li>tensorflow v4.10.0 -> v4.11.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1538">#1538</a>)</li>
<li>bootstrap-icons v1.10.5 -> v1.11.1 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1539">#1539</a>)</li>
<li>dayjs v1.11.9 -> v1.11.10 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1540">#1540</a>)</li>
<li>bootswatch v5.3.1 -> v5.3.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1541">#1541</a>)</li>
<li>lightgallery v2.7.1 -> v2.7.2 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1542">#1542</a>)</li>
<li>instantsearch.css v8.0.0 -> v8.1.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1543">#1543</a>)</li>
<li>Swiper v10.2.0 -> v10.3.0 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1544">#1544</a>)</li>
<li>vue-router v4.2.4 -> v4.2.5 (<a href="https://codeberg.org/nobody/LocalCDN/issues/1545">#1545</a>)</li>
</ul>
<p>Fixed</p>
<ul>
<li>HTML filter trim spaces in character set detection (<a href="https://codeberg.org/nobody/LocalCDN/issues/1526">#1526</a>)</li>
</ul>
<p class='release-date'>2023-09-03 (v2.6.55)</p>
<p>Updated</p>
<ul>

View File

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

View File

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

View File

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

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

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

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