@mdn/fred 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +100 -0
- package/build/render.js +3 -3
- package/build/server-worker.js +2 -2
- package/build/types.d.ts +2 -2
- package/components/a11y-menu/server.css +1 -1
- package/components/about-tabs/element.css +3 -1
- package/components/about-tabs/element.js +8 -0
- package/components/advertising/server.css +1 -1
- package/components/article-footer/server.css +0 -4
- package/components/article-footer/server.js +13 -16
- package/components/baseline-indicator/server.css +5 -6
- package/components/baseline-indicator/server.js +1 -6
- package/components/blog-index/server.css +2 -2
- package/components/blog-post/server.css +3 -3
- package/components/breadcrumbs-bar/server.js +26 -7
- package/components/button/pure.js +6 -3
- package/components/code-example/common.css +47 -3
- package/components/code-example/element.js +4 -5
- package/components/code-example/prism.css +62 -59
- package/components/color/area.css +11 -0
- package/components/color/border.css +1 -1
- package/components/color/global.css +5 -4
- package/components/color-theme/element.css +4 -0
- package/components/color-theme/element.js +19 -30
- package/components/compat-table/index-common.css +4 -2
- package/components/content-section/server.css +137 -23
- package/components/contributor-spotlight/server.css +4 -4
- package/components/curriculum/assets/curriculum-landing-top.svg +1 -1
- package/components/curriculum/layout.css +81 -13
- package/components/curriculum/module-list.css +5 -5
- package/components/curriculum/module.css +3 -3
- package/components/curriculum/shared.css +14 -47
- package/components/curriculum/sidebar.css +66 -294
- package/components/curriculum/toc.css +9 -23
- package/components/curriculum/utils.js +47 -58
- package/components/curriculum/vars.css +68 -39
- package/components/curriculum-about/server.css +17 -3
- package/components/curriculum-about/server.js +18 -15
- package/components/curriculum-default/server.css +11 -0
- package/components/curriculum-default/server.js +17 -14
- package/components/curriculum-landing/server.css +7 -7
- package/components/curriculum-module/server.css +75 -73
- package/components/curriculum-module/server.js +19 -17
- package/components/curriculum-overview/server.css +11 -0
- package/components/curriculum-overview/server.js +60 -24
- package/components/dropdown/element.js +3 -1
- package/components/featured-articles/server.css +1 -1
- package/components/font/README.md +11 -0
- package/components/font/fonts/jetbrains-mono-cyrillic.woff2 +0 -0
- package/components/font/fonts/jetbrains-mono-italic-cyrillic.woff2 +0 -0
- package/components/font/fonts/jetbrains-mono-italic-latin-extended.woff2 +0 -0
- package/components/font/fonts/jetbrains-mono-italic-latin.woff2 +0 -0
- package/components/font/fonts/jetbrains-mono-latin-extended.woff2 +0 -0
- package/components/font/fonts/jetbrains-mono-latin.woff2 +0 -0
- package/components/font/fonts/jetbrains-mono-nl.patch +4758 -0
- package/components/font/fonts/source/jetbrains-mono-italic.ttf +0 -0
- package/components/font/fonts/source/jetbrains-mono.ttf +0 -0
- package/components/font/global.css +3 -0
- package/components/font/inter.css +6 -0
- package/components/footer/server.css +20 -3
- package/components/footer/server.js +3 -0
- package/components/generic-about/server.css +16 -14
- package/components/generic-community/server.css +16 -16
- package/components/generic-community/server.js +11 -4
- package/components/generic-content/server.css +1 -1
- package/components/generic-sidebar/server.css +2 -2
- package/components/generic-sidebar/server.js +14 -5
- package/components/generic-toc/server.css +2 -2
- package/components/homepage-search/element.css +14 -17
- package/components/html/global.css +3 -0
- package/components/icon/chart-no-axes-combined.svg +1 -0
- package/components/icon/circle-play.svg +1 -0
- package/components/icon/log-in.svg +1 -0
- package/components/icon/mdn-m.svg +1 -0
- package/components/icon/shield-check.svg +1 -0
- package/components/icon/users.svg +1 -0
- package/components/interactive-example/element.css +3 -1
- package/components/issues-table/element.css +2 -2
- package/components/ix-tab/element.css +1 -1
- package/components/language-switcher/element.css +2 -1
- package/components/language-switcher/element.js +1 -0
- package/components/latest-news/server.css +1 -1
- package/components/left-sidebar/server.css +12 -15
- package/components/live-sample-result/element.css +1 -0
- package/components/live-sample-result/element.js +10 -2
- package/components/logo/server.css +5 -0
- package/components/mandala/server.css +2 -2
- package/components/media/index.css +3 -0
- package/components/menu/base.css +40 -11
- package/components/menu/desktop.css +1 -1
- package/components/menu/mobile.css +1 -1
- package/components/menu/server.js +34 -45
- package/components/modal/element.js +1 -1
- package/components/navigation/base.css +0 -8
- package/components/navigation/desktop.css +22 -5
- package/components/navigation/mobile.css +25 -6
- package/components/navigation/server.js +5 -2
- package/components/not-found/element.css +1 -0
- package/components/not-found/element.js +1 -1
- package/components/observatory/colors.css +64 -0
- package/components/observatory/common.css +5 -0
- package/components/observatory-comparison-table/element.css +6 -6
- package/components/observatory-form/element.css +6 -11
- package/components/observatory-header-link/element.css +1 -9
- package/components/observatory-human-duration/element.css +1 -0
- package/components/observatory-human-duration/element.js +4 -3
- package/components/observatory-landing/server.css +208 -1
- package/components/observatory-landing/server.js +76 -66
- package/components/observatory-rescan-button/element.css +1 -0
- package/components/observatory-rescan-button/element.js +11 -3
- package/components/observatory-results/element.css +38 -42
- package/components/observatory-results/server.css +119 -1
- package/components/observatory-results/server.js +47 -43
- package/components/observatory-tests-and-scores/element.css +3 -1
- package/components/outer-layout/server.js +8 -2
- package/components/placement-sidebar/element.css +1 -1
- package/components/play-console/element.css +1 -1
- package/components/play-runner/element.css +3 -0
- package/components/playground/element.css +35 -9
- package/components/playground/element.js +63 -3
- package/components/prev-next/index.css +32 -3
- package/components/radius/global.css +6 -0
- package/components/reference-layout/server.css +4 -4
- package/components/reference-layout/server.js +6 -3
- package/components/reference-toc/server.css +2 -2
- package/components/scrim-inline/element.css +2 -2
- package/components/scrim-inline/global.css +1 -1
- package/components/search-button/element.css +7 -1
- package/components/search-modal/element.css +61 -27
- package/components/search-modal/element.js +14 -0
- package/components/sidebar-filter/element.css +1 -1
- package/components/site-search/element.css +6 -7
- package/components/specifications-list/index.js +18 -26
- package/components/switch/element.css +1 -1
- package/components/user-menu/base.css +0 -7
- package/components/user-menu/desktop.css +15 -3
- package/components/user-menu/element.js +10 -2
- package/components/user-menu/mobile.css +2 -14
- package/components/utils/index.js +9 -0
- package/components/vars/global.css +1 -1
- package/components/writer-open-editor/element.js +31 -0
- package/components/writer-toolbar/server.css +11 -0
- package/components/writer-toolbar/server.js +27 -0
- package/dist/client/{1048.7f6f1de50a1fda0d.js → 1048.9db1491a9a9f26c3.js} +2 -2
- package/dist/client/{1048.7f6f1de50a1fda0d.js.map → 1048.9db1491a9a9f26c3.js.map} +1 -1
- package/dist/client/1197.65020044d7ef7add.css +32 -0
- package/dist/client/1197.65020044d7ef7add.css.map +1 -0
- package/dist/client/1241.691b26f66d52ce68.css +2 -0
- package/dist/client/1241.691b26f66d52ce68.css.map +1 -0
- package/dist/client/{1342.b05de4cd80d4c221.js → 1342.a66390274e8adda1.js} +8 -8
- package/dist/client/{1342.b05de4cd80d4c221.js.map → 1342.a66390274e8adda1.js.map} +1 -1
- package/dist/client/1624.98ead28526f7a6a1.js +69 -0
- package/dist/client/{1624.5694c64f5e45232c.js.map → 1624.98ead28526f7a6a1.js.map} +1 -1
- package/dist/client/1739.8793c189d4f57b38.js +8 -0
- package/dist/client/{1739.505aa54ed62222c8.js.map → 1739.8793c189d4f57b38.js.map} +1 -1
- package/dist/client/{1916.bc7551ab839d52f8.js → 1916.53595bf8d5201723.js} +3 -3
- package/dist/client/{1916.bc7551ab839d52f8.js.map → 1916.53595bf8d5201723.js.map} +1 -1
- package/dist/client/2254.85c84b41fe477e9f.css +2 -0
- package/dist/client/2254.85c84b41fe477e9f.css.map +1 -0
- package/dist/client/2299.15bde599f83bc9f8.js +2 -0
- package/dist/client/2299.15bde599f83bc9f8.js.map +1 -0
- package/dist/client/{2448.92286b4e96ad1c02.js → 2448.34e8a46d8ac913b9.js} +7 -7
- package/dist/client/2448.34e8a46d8ac913b9.js.map +1 -0
- package/dist/client/{2656.0009ef5e53d43860.js → 2656.9ffeb69f976e1ada.js} +3 -3
- package/dist/client/{2656.0009ef5e53d43860.js.map → 2656.9ffeb69f976e1ada.js.map} +1 -1
- package/dist/client/268.5b8cf50cd9481947.js +50 -0
- package/dist/client/268.5b8cf50cd9481947.js.map +1 -0
- package/dist/client/2826.d61ca617ff379ad4.js +29 -0
- package/dist/client/2826.d61ca617ff379ad4.js.map +1 -0
- package/dist/client/{9632.b317ca4ae5930b4a.js → 3536.38f4b1a8002b53e2.js} +30 -2
- package/dist/client/3536.38f4b1a8002b53e2.js.map +1 -0
- package/dist/client/{3580.bf3f2a7896833bd8.js → 3580.92db5b07a85b0961.js} +2 -2
- package/dist/client/{3580.bf3f2a7896833bd8.js.map → 3580.92db5b07a85b0961.js.map} +1 -1
- package/dist/client/37.d890a50de1313ae7.js +120 -0
- package/dist/client/37.d890a50de1313ae7.js.map +1 -0
- package/dist/client/{3769.d1f1fcf335099c33.js → 3769.f46716bd58921c06.js} +6 -5
- package/dist/client/3769.f46716bd58921c06.js.map +1 -0
- package/dist/client/3892.db79ccfcc2e8b5a2.js +5 -0
- package/dist/client/3892.db79ccfcc2e8b5a2.js.map +1 -0
- package/dist/client/391.947b429ccac6ca45.js +8 -0
- package/dist/client/391.947b429ccac6ca45.js.map +1 -0
- package/dist/client/{4036.5ca9997e4c034473.js → 4036.4aa9a690073ccbac.js} +11 -7
- package/dist/client/4036.4aa9a690073ccbac.js.map +1 -0
- package/dist/client/4045.ec4c143648ab2280.js +8 -0
- package/dist/client/4045.ec4c143648ab2280.js.map +1 -0
- package/dist/client/4531.5f4701b319065b2b.js +34 -0
- package/dist/client/4531.5f4701b319065b2b.js.map +1 -0
- package/dist/client/{476.0de6391161b814ad.js → 476.67faa1bd02f2479c.js} +3 -3
- package/dist/client/{476.0de6391161b814ad.js.map → 476.67faa1bd02f2479c.js.map} +1 -1
- package/dist/client/{4849.4da5f274175b7cc7.js → 4849.2d0d91db57dc6419.js} +2 -2
- package/dist/client/{4849.4da5f274175b7cc7.js.map → 4849.2d0d91db57dc6419.js.map} +1 -1
- package/dist/client/{5066.31235bae47282d5a.js → 5066.c3b69e4601465269.js} +9 -9
- package/dist/client/{5066.31235bae47282d5a.js.map → 5066.c3b69e4601465269.js.map} +1 -1
- package/dist/client/{533.518751bfb02cbcee.js → 533.43be64a8c12d5411.js} +2 -2
- package/dist/client/{533.518751bfb02cbcee.js.map → 533.43be64a8c12d5411.js.map} +1 -1
- package/dist/client/5531.ff59053d35a9ebc5.js +387 -0
- package/dist/client/{5531.3f07c9b4290520c7.js.map → 5531.ff59053d35a9ebc5.js.map} +1 -1
- package/dist/client/{5557.247c4c4c61d91b4d.js → 5557.3923ba7ade67d4c8.js} +4 -4
- package/dist/client/{5557.247c4c4c61d91b4d.js.map → 5557.3923ba7ade67d4c8.js.map} +1 -1
- package/dist/client/{5837.52bd8ccde0085adc.js → 5837.2173cfac5b28fb95.js} +2 -2
- package/dist/client/5837.2173cfac5b28fb95.js.map +1 -0
- package/dist/client/5911.7dd68675e0a4ff43.js +2 -0
- package/dist/client/5911.7dd68675e0a4ff43.js.map +1 -0
- package/dist/client/614.b7c7bcd4ee6e4f7d.css +2 -0
- package/dist/client/614.b7c7bcd4ee6e4f7d.css.map +1 -0
- package/dist/client/6213.ba167b80474036f0.js +20 -0
- package/dist/client/6213.ba167b80474036f0.js.map +1 -0
- package/dist/client/665.7d96ffb19066da27.js +34 -0
- package/dist/client/665.7d96ffb19066da27.js.map +1 -0
- package/dist/client/6681.51b917ef9762ead2.js +6 -0
- package/dist/client/{6681.4bc549fb34f3fd5c.js.map → 6681.51b917ef9762ead2.js.map} +1 -1
- package/dist/client/6955.3de7286d9ee3c36f.js +33 -0
- package/dist/client/6955.3de7286d9ee3c36f.js.map +1 -0
- package/dist/client/{7326.b1ad5a6bece08bb2.js → 7326.9d0d137e939223ba.js} +2 -2
- package/dist/client/7326.9d0d137e939223ba.js.map +1 -0
- package/dist/client/{736.c130ba990b1ed252.js → 736.0fa146c2a494e88c.js} +5 -5
- package/dist/client/{736.c130ba990b1ed252.js.map → 736.0fa146c2a494e88c.js.map} +1 -1
- package/dist/client/7461.7d6383069ad3bded.js +35 -0
- package/dist/client/7461.7d6383069ad3bded.js.map +1 -0
- package/dist/client/7509.c7697df525e5b425.js +9 -0
- package/dist/client/7509.c7697df525e5b425.js.map +1 -0
- package/dist/client/{7731.401da89d94c0e064.js → 7731.dab635045f8c8801.js} +2 -2
- package/dist/client/{7731.401da89d94c0e064.js.map → 7731.dab635045f8c8801.js.map} +1 -1
- package/dist/client/{7816.086a6f46f1339f10.js → 7816.fcae90f472f6a101.js} +2 -2
- package/dist/client/{7816.086a6f46f1339f10.js.map → 7816.fcae90f472f6a101.js.map} +1 -1
- package/dist/client/833.a99cc1ff95a9361c.js +5 -0
- package/dist/client/833.a99cc1ff95a9361c.js.map +1 -0
- package/dist/client/{8468.add3c4feb6c9e926.js → 8468.f45cbbf88e617172.js} +3 -3
- package/dist/client/{8468.add3c4feb6c9e926.js.map → 8468.f45cbbf88e617172.js.map} +1 -1
- package/dist/client/{8483.e69da156837fde23.js → 8483.42cb8809ffb7c809.js} +3 -3
- package/dist/client/{8483.e69da156837fde23.js.map → 8483.42cb8809ffb7c809.js.map} +1 -1
- package/dist/client/{8551.4cf05a456e8b9b36.js → 8551.88765e00cf64cda8.js} +2 -2
- package/dist/client/{8551.4cf05a456e8b9b36.js.map → 8551.88765e00cf64cda8.js.map} +1 -1
- package/dist/client/{8684.538d49e436a77c37.js → 8684.9d7a1ac15f75f143.js} +5 -5
- package/dist/client/{8684.538d49e436a77c37.js.map → 8684.9d7a1ac15f75f143.js.map} +1 -1
- package/dist/client/8896.c876205851967073.js +9 -0
- package/dist/client/8896.c876205851967073.js.map +1 -0
- package/dist/client/{8911.e1fd0ac2f979c2ea.js → 8911.74685697a6189123.js} +7 -7
- package/dist/client/8911.74685697a6189123.js.map +1 -0
- package/dist/client/9021.3d43ecdc365948b8.js +16 -0
- package/dist/client/9021.3d43ecdc365948b8.js.map +1 -0
- package/dist/client/917.f2551a4b63ec4d86.js +17 -0
- package/dist/client/917.f2551a4b63ec4d86.js.map +1 -0
- package/dist/client/9222.a2d629b05b5c3c7e.js +104 -0
- package/dist/client/9222.a2d629b05b5c3c7e.js.LICENSE.txt +5 -0
- package/dist/client/9222.a2d629b05b5c3c7e.js.map +1 -0
- package/dist/client/chart-no-axes-combined.aee09a7064cb8b35.svg +1 -0
- package/dist/client/{circle-alert.4199b283585ef0bb.svg → circle-play.6ed4ac1fb3c93a04.svg} +1 -1
- package/dist/client/{curriculum-about-covered.74e453cf7e1a86c2.svg → curriculum-about-covered.a0e620d9fa0a96bb.svg} +1 -1
- package/dist/client/{curriculum-about-detail.515f645950e2300b.svg → curriculum-about-detail.73feb705e269ebbe.svg} +1 -1
- package/dist/client/{curriculum-about-educators.91685cbbd58c65fb.svg → curriculum-about-educators.03744c34dabd5fe7.svg} +1 -1
- package/dist/client/{curriculum-about-not.42caac16e07477b5.svg → curriculum-about-not.aa3c2baa11be115d.svg} +1 -1
- package/dist/client/{curriculum-about-students.36ca88cba5f00272.svg → curriculum-about-students.842af9608002c05a.svg} +1 -1
- package/dist/client/{curriculum-bullet.934e76f0055c7737.svg → curriculum-bullet.ae8de1d4f7e37953.svg} +1 -1
- package/dist/client/{curriculum-landing-about-beginner.c283306531a0a760.svg → curriculum-landing-about-beginner.9603b098f49dfb52.svg} +1 -1
- package/dist/client/{curriculum-landing-about-bullet.329a46667f2b7b1c.svg → curriculum-landing-about-bullet.1a31ffce2d5917cb.svg} +1 -1
- package/dist/client/{curriculum-landing-about-free.860c02f993720011.svg → curriculum-landing-about-free.1ff3ec55692670ba.svg} +1 -1
- package/dist/client/{curriculum-landing-about-pace.caf53bc7642d2d9e.svg → curriculum-landing-about-pace.04fd0a480b4ef342.svg} +1 -1
- package/dist/client/{curriculum-landing-arrow.37d9469e2da628fb.svg → curriculum-landing-arrow.b4d5ba21e3dc087e.svg} +1 -1
- package/dist/client/{curriculum-landing-started-advanced.6aa084114d4a009d.svg → curriculum-landing-started-advanced.bd07b9246e350d6f.svg} +1 -1
- package/dist/client/{curriculum-landing-started-beginner.684ee16fbad28594.svg → curriculum-landing-started-beginner.62cf58049310b5c1.svg} +1 -1
- package/dist/client/{curriculum-landing-started-educator.1fc04ca1f8ce8d38.svg → curriculum-landing-started-educator.779ce85811a81d19.svg} +1 -1
- package/dist/client/{curriculum-landing-started-employment.ad9634ce6c19f3ba.svg → curriculum-landing-started-employment.4e7b977d45493058.svg} +1 -1
- package/dist/client/{curriculum-mdn-resource.f452724542f874b8.svg → curriculum-mdn-resource.335ee2e480d302fb.svg} +1 -1
- package/dist/client/{curriculum-partner-bg.247900de90ec7d1e.svg → curriculum-partner-bg.70de155df588311a.svg} +1 -1
- package/dist/client/{curriculum-scrim-bg.66afaab49246fbd9.svg → curriculum-scrim-bg.29a27117721ff3e9.svg} +1 -1
- package/dist/client/index.31463704d14e154c.js +260 -0
- package/dist/client/index.31463704d14e154c.js.LICENSE.txt +25 -0
- package/dist/client/index.31463704d14e154c.js.map +1 -0
- package/dist/client/jetbrains-mono-cyrillic.577e793cdf179ae1.woff2 +0 -0
- package/dist/client/jetbrains-mono-italic-cyrillic.8d00711fdb1702e0.woff2 +0 -0
- package/dist/client/jetbrains-mono-italic-latin-extended.c25d5e1f309ed948.woff2 +0 -0
- package/dist/client/jetbrains-mono-italic-latin.55b330522e5e3ed9.woff2 +0 -0
- package/dist/client/jetbrains-mono-latin-extended.01c891f9c832ce28.woff2 +0 -0
- package/dist/client/jetbrains-mono-latin.119994ed445212c7.woff2 +0 -0
- package/dist/client/mdn-m.70aac857e4a908d0.svg +1 -0
- package/dist/client/{runtime.51020603a07b972d.js → runtime.ee03d594ff24ae70.js} +2 -2
- package/dist/client/runtime.ee03d594ff24ae70.js.map +1 -0
- package/dist/client/shield-check.07bdc37f20ac5cc6.svg +1 -0
- package/dist/client/stats.json +1096 -1024
- package/dist/client/styles-a11y-menu.5796ee87cb69f93f.css +2 -0
- package/dist/client/styles-a11y-menu.5796ee87cb69f93f.css.map +1 -0
- package/dist/client/styles-a11y-menu.c408da1c50de7848.js +1 -0
- package/dist/client/styles-advertising.4c00484729f959ad.js +1 -0
- package/dist/client/{styles-advertising.c54670419b34708a.css → styles-advertising.c4692f68b3c61df1.css} +2 -2
- package/dist/client/{styles-advertising.c54670419b34708a.css.map → styles-advertising.c4692f68b3c61df1.css.map} +1 -1
- package/dist/client/styles-article-footer.81ae18c89fc527dc.css +2 -0
- package/dist/client/styles-article-footer.81ae18c89fc527dc.css.map +1 -0
- package/dist/client/styles-article-footer.f591a23b879db7bc.js +1 -0
- package/dist/client/styles-banner.cce5a46592f9ae9c.js +1 -0
- package/dist/client/{styles-baseline-indicator.32a52f7b51085fbb.css → styles-baseline-indicator.083aba7301c6f745.css} +2 -2
- package/dist/client/styles-baseline-indicator.083aba7301c6f745.css.map +1 -0
- package/dist/client/styles-baseline-indicator.35315666a6ff6562.js +1 -0
- package/dist/client/styles-blog-index.65525134178d64fd.js +1 -0
- package/dist/client/styles-blog-index.acbe792e1ec96930.css +2 -0
- package/dist/client/styles-blog-index.acbe792e1ec96930.css.map +1 -0
- package/dist/client/styles-blog-post.0cc5813f0a44aff0.js +1 -0
- package/dist/client/styles-blog-post.5085aa38dc1ab3a3.css +2 -0
- package/dist/client/styles-blog-post.5085aa38dc1ab3a3.css.map +1 -0
- package/dist/client/styles-breadcrumbs-bar.740212452ad4a93e.js +1 -0
- package/dist/client/{styles-breadcrumbs-bar.b7a94abe36578bab.css → styles-breadcrumbs-bar.e2fa6dfb04a38166.css} +2 -2
- package/dist/client/{styles-breadcrumbs-bar.b7a94abe36578bab.css.map → styles-breadcrumbs-bar.e2fa6dfb04a38166.css.map} +1 -1
- package/dist/client/{styles-breadcrumbs.d07ccd5520eeea01.css → styles-breadcrumbs.0afde562052673c5.css} +2 -2
- package/dist/client/{styles-breadcrumbs.d07ccd5520eeea01.css.map → styles-breadcrumbs.0afde562052673c5.css.map} +1 -1
- package/dist/client/styles-breadcrumbs.3b39fd6a3c2edb2e.js +1 -0
- package/dist/client/styles-button.a58118f8ded7e527.js +1 -0
- package/dist/client/styles-content-section.06ab08df9b9e047e.js +1 -0
- package/dist/client/styles-content-section.ffa19ece6d4fa70f.css +2 -0
- package/dist/client/styles-content-section.ffa19ece6d4fa70f.css.map +1 -0
- package/dist/client/styles-contributor-spotlight.38657357f29e301d.css +2 -0
- package/dist/client/styles-contributor-spotlight.38657357f29e301d.css.map +1 -0
- package/dist/client/styles-contributor-spotlight.5303aa09b91c2b0f.js +1 -0
- package/dist/client/styles-curriculum-about.75e3406bfe012d87.css +2 -0
- package/dist/client/styles-curriculum-about.75e3406bfe012d87.css.map +1 -0
- package/dist/client/styles-curriculum-about.c7d034c5eb1cedfc.js +1 -0
- package/dist/client/styles-curriculum-default.425c715d690a611c.js +1 -0
- package/dist/client/styles-curriculum-default.ceb6f07d1ba3a1fe.css +2 -0
- package/dist/client/styles-curriculum-default.ceb6f07d1ba3a1fe.css.map +1 -0
- package/dist/client/styles-curriculum-landing.1558840404f90c97.js +1 -0
- package/dist/client/styles-curriculum-landing.4c266be210279754.css +2 -0
- package/dist/client/styles-curriculum-landing.4c266be210279754.css.map +1 -0
- package/dist/client/styles-curriculum-module.7e5cd517e846d594.js +1 -0
- package/dist/client/styles-curriculum-module.986c101af5734725.css +2 -0
- package/dist/client/styles-curriculum-module.986c101af5734725.css.map +1 -0
- package/dist/client/styles-curriculum-overview.4c7cb02c1ddc853e.js +1 -0
- package/dist/client/styles-curriculum-overview.5e1cf930403c07b3.css +2 -0
- package/dist/client/styles-curriculum-overview.5e1cf930403c07b3.css.map +1 -0
- package/dist/client/styles-featured-articles.b4ecc71ab736bd5b.css +2 -0
- package/dist/client/styles-featured-articles.b4ecc71ab736bd5b.css.map +1 -0
- package/dist/client/styles-featured-articles.e307bb8142f33739.js +1 -0
- package/dist/client/styles-footer.a2850e459e2d290b.css +2 -0
- package/dist/client/{styles-footer.c1a53f0a58f04928.css.map → styles-footer.a2850e459e2d290b.css.map} +1 -1
- package/dist/client/styles-footer.c29033543af832fb.js +1 -0
- package/dist/client/styles-generic-about.2d4dc610496035b0.js +1 -0
- package/dist/client/styles-generic-about.766241910cf1bfdf.css +2 -0
- package/dist/client/styles-generic-about.766241910cf1bfdf.css.map +1 -0
- package/dist/client/styles-generic-community.76b2cea1e9b36907.js +1 -0
- package/dist/client/styles-generic-community.aa93fe32626f89a4.css +2 -0
- package/dist/client/styles-generic-community.aa93fe32626f89a4.css.map +1 -0
- package/dist/client/{styles-generic-content.7960b980b98f1d3d.css → styles-generic-content.3c8089706edb022d.css} +2 -2
- package/dist/client/{styles-generic-content.7960b980b98f1d3d.css.map → styles-generic-content.3c8089706edb022d.css.map} +1 -1
- package/dist/client/styles-generic-content.95822f3a7d72b2af.js +1 -0
- package/dist/client/styles-generic-layout.42a5e62407bd0066.css +2 -0
- package/dist/client/{styles-generic-layout.55441b1a560f5c9f.css.map → styles-generic-layout.42a5e62407bd0066.css.map} +1 -1
- package/dist/client/styles-generic-layout.e3b1cbc7db109acc.js +1 -0
- package/dist/client/styles-generic-sidebar.2e998de436f774c4.css +2 -0
- package/dist/client/styles-generic-sidebar.2e998de436f774c4.css.map +1 -0
- package/dist/client/styles-generic-sidebar.9767d319bbbde061.js +1 -0
- package/dist/client/styles-generic-toc.109e07ffeb20bc67.css +2 -0
- package/dist/client/styles-generic-toc.109e07ffeb20bc67.css.map +1 -0
- package/dist/client/styles-generic-toc.56e46052fca1042a.js +1 -0
- package/dist/client/styles-global.50c705928b5966d2.css +2 -0
- package/dist/client/styles-global.50c705928b5966d2.css.map +1 -0
- package/dist/client/styles-global.5928df920ab8d790.js +1 -0
- package/dist/client/styles-heading-anchor.0eec5185ab9425b7.css +2 -0
- package/dist/client/{styles-heading-anchor.f2760897211efe98.css.map → styles-heading-anchor.0eec5185ab9425b7.css.map} +1 -1
- package/dist/client/styles-heading-anchor.69440b0832b0c7b6.js +1 -0
- package/dist/client/styles-homepage-body.a1dd591dfd38a0e2.js +1 -0
- package/dist/client/{styles-homepage-contributor-spotlight.f02bdd82c7536b72.css → styles-homepage-contributor-spotlight.38935642cba8718d.css} +2 -2
- package/dist/client/{styles-homepage-contributor-spotlight.f02bdd82c7536b72.css.map → styles-homepage-contributor-spotlight.38935642cba8718d.css.map} +1 -1
- package/dist/client/styles-homepage-contributor-spotlight.a872f7a5144621ce.js +1 -0
- package/dist/client/styles-homepage-footer.56ccee76430fb4b6.js +1 -0
- package/dist/client/styles-homepage-header.ef7007190d01e72b.js +1 -0
- package/dist/client/styles-homepage-hero.db4057884586bcc0.js +1 -0
- package/dist/client/styles-homepage.643e215e9b541f48.js +1 -0
- package/dist/client/styles-latest-news.b28826e707e5a793.js +1 -0
- package/dist/client/styles-latest-news.ef3b9e57333a87bc.css +2 -0
- package/dist/client/styles-latest-news.ef3b9e57333a87bc.css.map +1 -0
- package/dist/client/styles-left-sidebar.07f68fb381233e5e.css +2 -0
- package/dist/client/styles-left-sidebar.07f68fb381233e5e.css.map +1 -0
- package/dist/client/styles-left-sidebar.689072b681b6085c.js +1 -0
- package/dist/client/styles-logo.5fe2004c01665043.js +1 -0
- package/dist/client/styles-logo.f9c13d56f40d50b6.css +2 -0
- package/dist/client/styles-logo.f9c13d56f40d50b6.css.map +1 -0
- package/dist/client/styles-mandala.39843b917e3341c1.js +1 -0
- package/dist/client/styles-mandala.8fbfeb0567dbde40.css +2 -0
- package/dist/client/styles-mandala.8fbfeb0567dbde40.css.map +1 -0
- package/dist/client/styles-menu.0df94f3d4546f4e2.js +1 -0
- package/dist/client/styles-menu.5193bf2642ae7d64.css +2 -0
- package/dist/client/styles-menu.5193bf2642ae7d64.css.map +1 -0
- package/dist/client/styles-navigation.013b4a4ed330892a.css +2 -0
- package/dist/client/styles-navigation.013b4a4ed330892a.css.map +1 -0
- package/dist/client/styles-navigation.f10f27bc66c78348.js +1 -0
- package/dist/client/styles-not-found.db6d6367152f676d.js +1 -0
- package/dist/client/styles-observatory-landing.28dd60cf0de05bec.js +1 -0
- package/dist/client/styles-observatory-landing.7b47ee0004877825.css +2 -0
- package/dist/client/styles-observatory-landing.7b47ee0004877825.css.map +1 -0
- package/dist/client/styles-observatory-results.36b6175e7444ec4e.css +2 -0
- package/dist/client/styles-observatory-results.36b6175e7444ec4e.css.map +1 -0
- package/dist/client/styles-observatory-results.7ce6d37475f9cf58.js +1 -0
- package/dist/client/styles-page-layout.0d53ebc97d7b7bf1.js +1 -0
- package/dist/client/styles-page-layout.e52a43c97f04cf90.css +2 -0
- package/dist/client/{styles-page-layout.5db9be57df19de0c.css.map → styles-page-layout.e52a43c97f04cf90.css.map} +1 -1
- package/dist/client/styles-pagination.19bf90db76d7d8d3.css +2 -0
- package/dist/client/{styles-pagination.0b3aa3fd6f6d3808.css.map → styles-pagination.19bf90db76d7d8d3.css.map} +1 -1
- package/dist/client/styles-pagination.e6fa33b9eadd8ab2.js +1 -0
- package/dist/client/styles-playground.59775225856ba2c6.js +1 -0
- package/dist/client/styles-recent-contributions.c51e066b59d22fca.js +1 -0
- package/dist/client/styles-reference-layout.0ab1a4d92d4a0966.css +2 -0
- package/dist/client/styles-reference-layout.0ab1a4d92d4a0966.css.map +1 -0
- package/dist/client/styles-reference-layout.218edbd3288fad71.js +1 -0
- package/dist/client/styles-reference-toc.67439c41e5f07bef.js +1 -0
- package/dist/client/{styles-reference-toc.5ce4f97dbe6e3ed0.css → styles-reference-toc.9b9bd019efd16b86.css} +2 -2
- package/dist/client/{styles-reference-toc.5ce4f97dbe6e3ed0.css.map → styles-reference-toc.9b9bd019efd16b86.css.map} +1 -1
- package/dist/client/styles-sandbox.22c29067838f22d9.js +1 -0
- package/dist/client/styles-site-search.5d4b622a11b82915.js +1 -0
- package/dist/client/styles-site-search.ec3b6780533a8750.css +2 -0
- package/dist/client/{styles-site-search.cf345ef99e0d06b5.css.map → styles-site-search.ec3b6780533a8750.css.map} +1 -1
- package/dist/client/styles-translation-banner.b923aed537f60120.js +1 -0
- package/dist/client/styles-writer-toolbar.00468688f6144393.js +1 -0
- package/dist/client/styles-writer-toolbar.70bdeddd3734ab11.css +2 -0
- package/dist/client/styles-writer-toolbar.70bdeddd3734ab11.css.map +1 -0
- package/dist/client/styles.7fb7069c86aa338c.js +2 -0
- package/dist/client/styles.7fb7069c86aa338c.js.map +1 -0
- package/dist/client/users.f7e6f1f213744762.svg +1 -0
- package/dist/legacy/{1284.0939e1a7de12c23c.js → 1284.9609d9ed70761e2f.js} +3 -3
- package/dist/legacy/{1284.0939e1a7de12c23c.js.map → 1284.9609d9ed70761e2f.js.map} +1 -1
- package/dist/legacy/3957.798f0651121f0fa7.js.map +1 -1
- package/dist/legacy/{7664.eee0fe67e04785f4.js → 7664.7bf14ff753e36b72.js} +3 -3
- package/dist/legacy/7664.7bf14ff753e36b72.js.map +1 -0
- package/dist/legacy/{8716.9fde41ad50c3078d.js → 8716.0a9d049bf166f65a.js} +7 -7
- package/dist/legacy/{8716.9fde41ad50c3078d.js.map → 8716.0a9d049bf166f65a.js.map} +1 -1
- package/dist/legacy/afree.da56b83d257902e0.png +0 -0
- package/dist/legacy/{index.9db2264bb6151226.css → index.92ea4d5b7af91171.css} +2 -2
- package/dist/legacy/index.92ea4d5b7af91171.css.map +1 -0
- package/dist/legacy/{index.b760891bfcc63977.js → index.dd25b33b92ab6c72.js} +5 -5
- package/dist/legacy/index.dd25b33b92ab6c72.js.map +1 -0
- package/dist/legacy/stats.json +12 -12
- package/dist/ssr/index.js +483 -485
- package/dist/ssr/index.js.map +1 -1
- package/dist/ssr/results-icon.b469eb939df034e7.svg +1 -0
- package/dist/ssr/stats.json +54 -46
- package/dist/ssr/summary-icon.eff7a61e59b7e02f.svg +1 -0
- package/entry.client.js +1 -1
- package/entry.ssr.js +3 -4
- package/hooks/dialog-closedby.js +42 -0
- package/l10n/de.ftl +2 -2
- package/l10n/en-US.ftl +10 -10
- package/legacy/index.tsx +1 -0
- package/legacy/legacy.css +5 -0
- package/package.json +22 -21
- package/rspack.config.js +27 -11
- package/server.js +37 -3
- package/svgo.config.js +22 -11
- package/types/element-map.d.ts +1 -0
- package/types/fred.ts +5 -1
- package/components/css-formal-syntax/index.css +0 -10
- package/components/observatory/index.css +0 -406
- package/components/observatory-landing/faq.js +0 -16
- package/components/observatory-landing/feedback.js +0 -16
- package/dist/client/1197.25090f81ab4208bc.css +0 -32
- package/dist/client/1197.25090f81ab4208bc.css.map +0 -1
- package/dist/client/1624.5694c64f5e45232c.js +0 -69
- package/dist/client/1739.505aa54ed62222c8.js +0 -8
- package/dist/client/2254.5fbfe2d0124ff3ba.css +0 -2
- package/dist/client/2254.5fbfe2d0124ff3ba.css.map +0 -1
- package/dist/client/2448.92286b4e96ad1c02.js.map +0 -1
- package/dist/client/2826.2162e19b0f72cf75.js +0 -29
- package/dist/client/2826.2162e19b0f72cf75.js.map +0 -1
- package/dist/client/3536.d17eba9caa4089c1.js +0 -30
- package/dist/client/3536.d17eba9caa4089c1.js.map +0 -1
- package/dist/client/37.feff9590370f461a.js +0 -102
- package/dist/client/37.feff9590370f461a.js.map +0 -1
- package/dist/client/3769.d1f1fcf335099c33.js.map +0 -1
- package/dist/client/3892.62b28110dbb3645e.js +0 -5
- package/dist/client/3892.62b28110dbb3645e.js.map +0 -1
- package/dist/client/391.ead0b358d96c9c13.js +0 -8
- package/dist/client/391.ead0b358d96c9c13.js.map +0 -1
- package/dist/client/4036.5ca9997e4c034473.js.map +0 -1
- package/dist/client/4045.c0fd898eab0b2a5c.js +0 -8
- package/dist/client/4045.c0fd898eab0b2a5c.js.map +0 -1
- package/dist/client/4531.4ae011f8a64a2b27.js +0 -34
- package/dist/client/4531.4ae011f8a64a2b27.js.map +0 -1
- package/dist/client/5531.3f07c9b4290520c7.js +0 -387
- package/dist/client/5837.52bd8ccde0085adc.js.map +0 -1
- package/dist/client/614.01075c8e848f77c4.css +0 -2
- package/dist/client/614.01075c8e848f77c4.css.map +0 -1
- package/dist/client/6213.32f53c1c3ef65496.js +0 -20
- package/dist/client/6213.32f53c1c3ef65496.js.map +0 -1
- package/dist/client/665.bfa5abb72f818c34.js +0 -34
- package/dist/client/665.bfa5abb72f818c34.js.map +0 -1
- package/dist/client/6681.4bc549fb34f3fd5c.js +0 -6
- package/dist/client/6955.90a316f179d37d80.js +0 -52
- package/dist/client/6955.90a316f179d37d80.js.map +0 -1
- package/dist/client/7326.b1ad5a6bece08bb2.js.map +0 -1
- package/dist/client/7345.6d89013575f169db.js +0 -16
- package/dist/client/7345.6d89013575f169db.js.map +0 -1
- package/dist/client/7461.c7551ade83fa6056.js +0 -35
- package/dist/client/7461.c7551ade83fa6056.js.map +0 -1
- package/dist/client/7509.780e429ccb3e9290.js +0 -9
- package/dist/client/7509.780e429ccb3e9290.js.map +0 -1
- package/dist/client/781.389e02e257b52721.css +0 -2
- package/dist/client/781.389e02e257b52721.css.map +0 -1
- package/dist/client/7898.7fd3ac2396a8dd7b.js +0 -45
- package/dist/client/7898.7fd3ac2396a8dd7b.js.map +0 -1
- package/dist/client/8877.6b7cc9370ff77f02.js +0 -2
- package/dist/client/8877.6b7cc9370ff77f02.js.map +0 -1
- package/dist/client/8896.85df788778cc02ca.js +0 -9
- package/dist/client/8896.85df788778cc02ca.js.map +0 -1
- package/dist/client/8911.e1fd0ac2f979c2ea.js.map +0 -1
- package/dist/client/917.f2371f7a8ef08c84.js +0 -17
- package/dist/client/917.f2371f7a8ef08c84.js.map +0 -1
- package/dist/client/9222.f3820fec7e0a91be.js +0 -104
- package/dist/client/9222.f3820fec7e0a91be.js.map +0 -1
- package/dist/client/9632.b317ca4ae5930b4a.js.map +0 -1
- package/dist/client/index.e36c34deca671725.js +0 -251
- package/dist/client/index.e36c34deca671725.js.map +0 -1
- package/dist/client/jetbrains-mono-cyrillic.4be0050294dbaee4.woff2 +0 -0
- package/dist/client/jetbrains-mono-italic-cyrillic.789710e9fe5a2b03.woff2 +0 -0
- package/dist/client/jetbrains-mono-italic-latin-extended.58430489c22fda09.woff2 +0 -0
- package/dist/client/jetbrains-mono-italic-latin.80ad93ea1dcec528.woff2 +0 -0
- package/dist/client/jetbrains-mono-latin-extended.2b8ab8f35e622fdb.woff2 +0 -0
- package/dist/client/jetbrains-mono-latin.eaa3472268346b6c.woff2 +0 -0
- package/dist/client/runtime.51020603a07b972d.js.map +0 -1
- package/dist/client/styles-a11y-menu.53797029a4c05806.css +0 -2
- package/dist/client/styles-a11y-menu.53797029a4c05806.css.map +0 -1
- package/dist/client/styles-a11y-menu.8c2ae6bc250fdde3.js +0 -1
- package/dist/client/styles-advertising.f01a816ffb81826d.js +0 -1
- package/dist/client/styles-article-footer.3bc45ecc7223c0ee.css +0 -2
- package/dist/client/styles-article-footer.3bc45ecc7223c0ee.css.map +0 -1
- package/dist/client/styles-article-footer.abc86d1bc28dbbea.js +0 -1
- package/dist/client/styles-banner.dd24262bb896879a.js +0 -1
- package/dist/client/styles-baseline-indicator.26595fbb926e3339.js +0 -1
- package/dist/client/styles-baseline-indicator.32a52f7b51085fbb.css.map +0 -1
- package/dist/client/styles-blog-index.7af1563c6077a7be.css +0 -2
- package/dist/client/styles-blog-index.7af1563c6077a7be.css.map +0 -1
- package/dist/client/styles-blog-index.805cf1995d84466a.js +0 -1
- package/dist/client/styles-blog-post.5824db4f15723a68.css +0 -2
- package/dist/client/styles-blog-post.5824db4f15723a68.css.map +0 -1
- package/dist/client/styles-blog-post.87f4fe5450147ce8.js +0 -1
- package/dist/client/styles-breadcrumbs-bar.474628c11d128ace.js +0 -1
- package/dist/client/styles-breadcrumbs.b0241eed8398fe84.js +0 -1
- package/dist/client/styles-button.bd90715982da863b.js +0 -1
- package/dist/client/styles-content-section.a1f8a5f77270d1dc.js +0 -1
- package/dist/client/styles-content-section.f47b61c45a723af0.css +0 -2
- package/dist/client/styles-content-section.f47b61c45a723af0.css.map +0 -1
- package/dist/client/styles-contributor-spotlight.a77d55cfef159e66.css +0 -2
- package/dist/client/styles-contributor-spotlight.a77d55cfef159e66.css.map +0 -1
- package/dist/client/styles-contributor-spotlight.a992b1d366637c5d.js +0 -1
- package/dist/client/styles-curriculum-about.4b80aa2f2b88e8e4.js +0 -1
- package/dist/client/styles-curriculum-about.b8d113b14323c909.css +0 -2
- package/dist/client/styles-curriculum-about.b8d113b14323c909.css.map +0 -1
- package/dist/client/styles-curriculum-default.190eba828fd99e0a.js +0 -1
- package/dist/client/styles-curriculum-default.ef46db3751d8e999.css +0 -0
- package/dist/client/styles-curriculum-landing.56209b30561d82e0.css +0 -2
- package/dist/client/styles-curriculum-landing.56209b30561d82e0.css.map +0 -1
- package/dist/client/styles-curriculum-landing.e73c9557dd2057aa.js +0 -1
- package/dist/client/styles-curriculum-module.7fc982bc6793fa48.js +0 -1
- package/dist/client/styles-curriculum-module.c7271eb90af85eba.css +0 -2
- package/dist/client/styles-curriculum-module.c7271eb90af85eba.css.map +0 -1
- package/dist/client/styles-curriculum-overview.d00ecdc305f40125.js +0 -1
- package/dist/client/styles-curriculum-overview.ef46db3751d8e999.css +0 -0
- package/dist/client/styles-featured-articles.27e767c8b538f066.js +0 -1
- package/dist/client/styles-featured-articles.c518f93ad0470cdf.css +0 -2
- package/dist/client/styles-featured-articles.c518f93ad0470cdf.css.map +0 -1
- package/dist/client/styles-footer.c1a53f0a58f04928.css +0 -2
- package/dist/client/styles-footer.e86ec0a935d5937f.js +0 -1
- package/dist/client/styles-generic-about.27a13c39db15963c.js +0 -1
- package/dist/client/styles-generic-about.481f176f22ba0def.css +0 -2
- package/dist/client/styles-generic-about.481f176f22ba0def.css.map +0 -1
- package/dist/client/styles-generic-community.44405e7e3938a4b6.js +0 -1
- package/dist/client/styles-generic-community.ddbcb9e0488bf017.css +0 -2
- package/dist/client/styles-generic-community.ddbcb9e0488bf017.css.map +0 -1
- package/dist/client/styles-generic-content.a2ddd6aac780a65f.js +0 -1
- package/dist/client/styles-generic-layout.55441b1a560f5c9f.css +0 -2
- package/dist/client/styles-generic-layout.670f75c4f806be84.js +0 -1
- package/dist/client/styles-generic-sidebar.515ed6dc89aec542.css +0 -2
- package/dist/client/styles-generic-sidebar.515ed6dc89aec542.css.map +0 -1
- package/dist/client/styles-generic-sidebar.d1528b01acb49222.js +0 -1
- package/dist/client/styles-generic-toc.88e45e1e72c77b73.css +0 -2
- package/dist/client/styles-generic-toc.88e45e1e72c77b73.css.map +0 -1
- package/dist/client/styles-generic-toc.db854e6e0376fb6b.js +0 -1
- package/dist/client/styles-global.698ebe57a5418ca2.css +0 -2
- package/dist/client/styles-global.698ebe57a5418ca2.css.map +0 -1
- package/dist/client/styles-global.cb63a51fc1146957.js +0 -1
- package/dist/client/styles-heading-anchor.6ffff34f5421dc9f.js +0 -1
- package/dist/client/styles-heading-anchor.f2760897211efe98.css +0 -2
- package/dist/client/styles-homepage-body.4a9eaf99a6d5a434.js +0 -1
- package/dist/client/styles-homepage-contributor-spotlight.a91a262ee949a587.js +0 -1
- package/dist/client/styles-homepage-footer.cddd4004e597dbdf.js +0 -1
- package/dist/client/styles-homepage-header.6fc6295b2124ce59.js +0 -1
- package/dist/client/styles-homepage-hero.d56f468fb0364b60.js +0 -1
- package/dist/client/styles-homepage.be456abdb86e4bd2.js +0 -1
- package/dist/client/styles-latest-news.1b5fd7a95688fea4.css +0 -2
- package/dist/client/styles-latest-news.1b5fd7a95688fea4.css.map +0 -1
- package/dist/client/styles-latest-news.f725dd4127faabc2.js +0 -1
- package/dist/client/styles-left-sidebar.135a5bc6ad04c4f0.css +0 -2
- package/dist/client/styles-left-sidebar.135a5bc6ad04c4f0.css.map +0 -1
- package/dist/client/styles-left-sidebar.6cdadac4a1db951d.js +0 -1
- package/dist/client/styles-logo.8e7830628a9d7ef5.js +0 -1
- package/dist/client/styles-logo.a89a79f82f933ef6.css +0 -2
- package/dist/client/styles-logo.a89a79f82f933ef6.css.map +0 -1
- package/dist/client/styles-mandala.41af6b0b37aa7987.js +0 -1
- package/dist/client/styles-mandala.96281d90e09ea84c.css +0 -2
- package/dist/client/styles-mandala.96281d90e09ea84c.css.map +0 -1
- package/dist/client/styles-menu.786218f8a3e51b45.js +0 -1
- package/dist/client/styles-menu.d6b6e63ef2bff0d6.css +0 -2
- package/dist/client/styles-menu.d6b6e63ef2bff0d6.css.map +0 -1
- package/dist/client/styles-navigation.94adc2be697cca49.css +0 -2
- package/dist/client/styles-navigation.94adc2be697cca49.css.map +0 -1
- package/dist/client/styles-navigation.fac8722caf14abc8.js +0 -1
- package/dist/client/styles-not-found.f42949546ffd210c.js +0 -1
- package/dist/client/styles-observatory-landing.994044845e174ebc.js +0 -1
- package/dist/client/styles-observatory-landing.ef46db3751d8e999.css +0 -0
- package/dist/client/styles-observatory-results.2ebe1e1263bf9901.js +0 -1
- package/dist/client/styles-observatory-results.ef46db3751d8e999.css +0 -0
- package/dist/client/styles-page-layout.17e57aa7087c3c14.js +0 -1
- package/dist/client/styles-page-layout.5db9be57df19de0c.css +0 -2
- package/dist/client/styles-pagination.0b3aa3fd6f6d3808.css +0 -2
- package/dist/client/styles-pagination.8e0e077c056abb08.js +0 -1
- package/dist/client/styles-playground.6ba82a762ed428cd.js +0 -1
- package/dist/client/styles-recent-contributions.049ea82f38aea973.js +0 -1
- package/dist/client/styles-reference-layout.3fdc304c65153216.css +0 -2
- package/dist/client/styles-reference-layout.3fdc304c65153216.css.map +0 -1
- package/dist/client/styles-reference-layout.dffb8a58fa542929.js +0 -1
- package/dist/client/styles-reference-toc.885940cc1b62f05f.js +0 -1
- package/dist/client/styles-sandbox.28b391e75fd280b4.js +0 -1
- package/dist/client/styles-site-search.442cfc8fc77298a8.js +0 -1
- package/dist/client/styles-site-search.cf345ef99e0d06b5.css +0 -2
- package/dist/client/styles-translation-banner.ddf203bc7bb2e1bc.js +0 -1
- package/dist/client/styles.23fb47137258e781.js +0 -2
- package/dist/client/styles.23fb47137258e781.js.map +0 -1
- package/dist/legacy/7664.eee0fe67e04785f4.js.map +0 -1
- package/dist/legacy/afree.23e42bd4c44a110f.png +0 -0
- package/dist/legacy/index.9db2264bb6151226.css.map +0 -1
- package/dist/legacy/index.b760891bfcc63977.js.map +0 -1
- package/hooks/css-formal-syntax.js +0 -21
- /package/dist/client/{1342.b05de4cd80d4c221.js.LICENSE.txt → 1342.a66390274e8adda1.js.LICENSE.txt} +0 -0
- /package/dist/client/{2448.92286b4e96ad1c02.js.LICENSE.txt → 2448.34e8a46d8ac913b9.js.LICENSE.txt} +0 -0
- /package/dist/client/{4036.5ca9997e4c034473.js.LICENSE.txt → 4036.4aa9a690073ccbac.js.LICENSE.txt} +0 -0
- /package/dist/client/{4045.c0fd898eab0b2a5c.js.LICENSE.txt → 4045.ec4c143648ab2280.js.LICENSE.txt} +0 -0
- /package/dist/client/{4531.4ae011f8a64a2b27.js.LICENSE.txt → 4531.5f4701b319065b2b.js.LICENSE.txt} +0 -0
- /package/dist/client/{5557.247c4c4c61d91b4d.js.LICENSE.txt → 5557.3923ba7ade67d4c8.js.LICENSE.txt} +0 -0
- /package/dist/client/{8468.add3c4feb6c9e926.js.LICENSE.txt → 833.a99cc1ff95a9361c.js.LICENSE.txt} +0 -0
- /package/dist/client/{917.f2371f7a8ef08c84.js.LICENSE.txt → 8468.f45cbbf88e617172.js.LICENSE.txt} +0 -0
- /package/dist/client/{9222.f3820fec7e0a91be.js.LICENSE.txt → 917.f2551a4b63ec4d86.js.LICENSE.txt} +0 -0
- /package/dist/legacy/{1284.0939e1a7de12c23c.js.LICENSE.txt → 1284.9609d9ed70761e2f.js.LICENSE.txt} +0 -0
- /package/dist/legacy/{7664.eee0fe67e04785f4.js.LICENSE.txt → 7664.7bf14ff753e36b72.js.LICENSE.txt} +0 -0
- /package/dist/legacy/{8716.9fde41ad50c3078d.js.LICENSE.txt → 8716.0a9d049bf166f65a.js.LICENSE.txt} +0 -0
- /package/dist/legacy/{index.b760891bfcc63977.js.LICENSE.txt → index.dd25b33b92ab6c72.js.LICENSE.txt} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="19" viewBox="0 0 20 19"><path d="M15.45 12.73 20 4.86v13.69H0v-18h2v12.54l5.5-9.54L14 7.33 18.24 0l1.73 1-5.23 9.05L8.23 6.3 2.31 16.55h2.26l4.39-7.56z"/></svg>
|
package/dist/ssr/stats.json
CHANGED
|
@@ -9,11 +9,11 @@
|
|
|
9
9
|
"assets": [
|
|
10
10
|
{
|
|
11
11
|
"name": "index.js",
|
|
12
|
-
"size":
|
|
12
|
+
"size": 1403647
|
|
13
13
|
}
|
|
14
14
|
],
|
|
15
15
|
"filteredAssets": 0,
|
|
16
|
-
"assetsSize":
|
|
16
|
+
"assetsSize": 1403647,
|
|
17
17
|
"auxiliaryAssets": [
|
|
18
18
|
{
|
|
19
19
|
"name": "desktop-saving-page.bbb8eedefb3e848f.png",
|
|
@@ -55,14 +55,14 @@
|
|
|
55
55
|
"name": "mobile-open-article-actions.bb9cc7ddc6a32e29.png",
|
|
56
56
|
"size": 12911
|
|
57
57
|
},
|
|
58
|
-
{
|
|
59
|
-
"name": "monitor.11d946399ebf690d.svg",
|
|
60
|
-
"size": 262
|
|
61
|
-
},
|
|
62
58
|
{
|
|
63
59
|
"name": "scrimba-logo.0c5b5b4efd2b23dc.svg",
|
|
64
60
|
"size": 3160
|
|
65
61
|
},
|
|
62
|
+
{
|
|
63
|
+
"name": "monitor.11d946399ebf690d.svg",
|
|
64
|
+
"size": 262
|
|
65
|
+
},
|
|
66
66
|
{
|
|
67
67
|
"name": "mobile-add-note.4079b8dbc761053b.png",
|
|
68
68
|
"size": 13784
|
|
@@ -91,26 +91,26 @@
|
|
|
91
91
|
"name": "playground-example.e8bb2d0fba1ddf61.png",
|
|
92
92
|
"size": 104164
|
|
93
93
|
},
|
|
94
|
-
{
|
|
95
|
-
"name": "updates_search.135043f07c29f425.png",
|
|
96
|
-
"size": 44837
|
|
97
|
-
},
|
|
98
94
|
{
|
|
99
95
|
"name": "cog.f23af856fab34421.svg",
|
|
100
96
|
"size": 431
|
|
101
97
|
},
|
|
102
98
|
{
|
|
103
|
-
"name": "
|
|
104
|
-
"size":
|
|
99
|
+
"name": "updates_search.135043f07c29f425.png",
|
|
100
|
+
"size": 44837
|
|
105
101
|
},
|
|
106
102
|
{
|
|
107
|
-
"name": "
|
|
108
|
-
"size":
|
|
103
|
+
"name": "desktop-collections-dashboard-delete.89fa6e8e94365a8f.png",
|
|
104
|
+
"size": 71180
|
|
109
105
|
},
|
|
110
106
|
{
|
|
111
107
|
"name": "desktop-collections-three-dot-menu.d249007e01bd16d2.png",
|
|
112
108
|
"size": 92505
|
|
113
109
|
},
|
|
110
|
+
{
|
|
111
|
+
"name": "lightbulb.f54f9e803373ffd2.svg",
|
|
112
|
+
"size": 312
|
|
113
|
+
},
|
|
114
114
|
{
|
|
115
115
|
"name": "chrome.63fe87abc1b86c49.svg",
|
|
116
116
|
"size": 451
|
|
@@ -139,26 +139,26 @@
|
|
|
139
139
|
"name": "report-feedback.b19751ac764910b5.png",
|
|
140
140
|
"size": 133704
|
|
141
141
|
},
|
|
142
|
-
{
|
|
143
|
-
"name": "samsung-internet.f241f6953ef66c29.svg",
|
|
144
|
-
"size": 966
|
|
145
|
-
},
|
|
146
142
|
{
|
|
147
143
|
"name": "webview.69c6470100eb7da1.svg",
|
|
148
144
|
"size": 456
|
|
149
145
|
},
|
|
150
146
|
{
|
|
151
|
-
"name": "
|
|
152
|
-
"size":
|
|
147
|
+
"name": "samsung-internet.f241f6953ef66c29.svg",
|
|
148
|
+
"size": 966
|
|
153
149
|
},
|
|
154
150
|
{
|
|
155
|
-
"name": "
|
|
156
|
-
"size":
|
|
151
|
+
"name": "filter.b77a4ccbfb57e2ef.svg",
|
|
152
|
+
"size": 345
|
|
157
153
|
},
|
|
158
154
|
{
|
|
159
155
|
"name": "bookmark-check.22b3511032ad3541.svg",
|
|
160
156
|
"size": 272
|
|
161
157
|
},
|
|
158
|
+
{
|
|
159
|
+
"name": "circle-help.574fc498f309634e.svg",
|
|
160
|
+
"size": 277
|
|
161
|
+
},
|
|
162
162
|
{
|
|
163
163
|
"name": "playground-sample.4df135480b78db7b.png",
|
|
164
164
|
"size": 63058
|
|
@@ -175,14 +175,14 @@
|
|
|
175
175
|
"name": "example-question-editing.d0a77e1a7e21b7c0.png",
|
|
176
176
|
"size": 124679
|
|
177
177
|
},
|
|
178
|
-
{
|
|
179
|
-
"name": "mobile-collections-dashboard-edit-entry.a33fc6d7fe02231a.png",
|
|
180
|
-
"size": 52042
|
|
181
|
-
},
|
|
182
178
|
{
|
|
183
179
|
"name": "triangle-alert.cff4c57ccef57da3.svg",
|
|
184
180
|
"size": 286
|
|
185
181
|
},
|
|
182
|
+
{
|
|
183
|
+
"name": "mobile-collections-dashboard-edit-entry.a33fc6d7fe02231a.png",
|
|
184
|
+
"size": 52042
|
|
185
|
+
},
|
|
186
186
|
{
|
|
187
187
|
"name": "circle-slash.c109868d4bdda8e2.svg",
|
|
188
188
|
"size": 240
|
|
@@ -191,14 +191,14 @@
|
|
|
191
191
|
"name": "desktop-offline-user-menu.3dcb4eed9c4a236c.png",
|
|
192
192
|
"size": 8173
|
|
193
193
|
},
|
|
194
|
-
{
|
|
195
|
-
"name": "bookmark.431a822761ea8a1e.svg",
|
|
196
|
-
"size": 247
|
|
197
|
-
},
|
|
198
194
|
{
|
|
199
195
|
"name": "smartphone.1a49e06c0e294c6b.svg",
|
|
200
196
|
"size": 265
|
|
201
197
|
},
|
|
198
|
+
{
|
|
199
|
+
"name": "bookmark.431a822761ea8a1e.svg",
|
|
200
|
+
"size": 247
|
|
201
|
+
},
|
|
202
202
|
{
|
|
203
203
|
"name": "nodejs.efc13657f2bf62f7.svg",
|
|
204
204
|
"size": 311
|
|
@@ -211,14 +211,14 @@
|
|
|
211
211
|
"name": "star-notification.da1d20efb93ff663.png",
|
|
212
212
|
"size": 57142
|
|
213
213
|
},
|
|
214
|
-
{
|
|
215
|
-
"name": "edge.29d1f7df37cf6b7b.svg",
|
|
216
|
-
"size": 868
|
|
217
|
-
},
|
|
218
214
|
{
|
|
219
215
|
"name": "mobile-collections-dashboard-edit.f9425801f0496a6a.png",
|
|
220
216
|
"size": 107307
|
|
221
217
|
},
|
|
218
|
+
{
|
|
219
|
+
"name": "edge.29d1f7df37cf6b7b.svg",
|
|
220
|
+
"size": 868
|
|
221
|
+
},
|
|
222
222
|
{
|
|
223
223
|
"name": "updates_filter.1c6bfe2143f10758.png",
|
|
224
224
|
"size": 39502
|
|
@@ -291,6 +291,10 @@
|
|
|
291
291
|
"name": "landing-scrim.bab0746da9622c1c.png",
|
|
292
292
|
"size": 46620
|
|
293
293
|
},
|
|
294
|
+
{
|
|
295
|
+
"name": "results-icon.b469eb939df034e7.svg",
|
|
296
|
+
"size": 219
|
|
297
|
+
},
|
|
294
298
|
{
|
|
295
299
|
"name": "cancel.7362f2cdf3515e0d.svg",
|
|
296
300
|
"size": 219
|
|
@@ -317,7 +321,7 @@
|
|
|
317
321
|
},
|
|
318
322
|
{
|
|
319
323
|
"name": "index.js.map",
|
|
320
|
-
"size":
|
|
324
|
+
"size": 4171140
|
|
321
325
|
},
|
|
322
326
|
{
|
|
323
327
|
"name": "deno.aed70d20abbf1067.svg",
|
|
@@ -339,14 +343,14 @@
|
|
|
339
343
|
"name": "desktop-offline-clear-data.c09fc9bdc06a57cc.png",
|
|
340
344
|
"size": 18641
|
|
341
345
|
},
|
|
342
|
-
{
|
|
343
|
-
"name": "fullscreen-enter.452bcbaed6904ec7.svg",
|
|
344
|
-
"size": 291
|
|
345
|
-
},
|
|
346
346
|
{
|
|
347
347
|
"name": "info.d40b80f84482feba.svg",
|
|
348
348
|
"size": 248
|
|
349
349
|
},
|
|
350
|
+
{
|
|
351
|
+
"name": "fullscreen-enter.452bcbaed6904ec7.svg",
|
|
352
|
+
"size": 291
|
|
353
|
+
},
|
|
350
354
|
{
|
|
351
355
|
"name": "external-link.4f3a2dc8e402cae5.svg",
|
|
352
356
|
"size": 275
|
|
@@ -359,6 +363,10 @@
|
|
|
359
363
|
"name": "rate-answers.50835df6a04a1c77.png",
|
|
360
364
|
"size": 147834
|
|
361
365
|
},
|
|
366
|
+
{
|
|
367
|
+
"name": "summary-icon.eff7a61e59b7e02f.svg",
|
|
368
|
+
"size": 411
|
|
369
|
+
},
|
|
362
370
|
{
|
|
363
371
|
"name": "curriculum-partner-banner-illustration-large-light.be191e3b1b4cbd8c.svg",
|
|
364
372
|
"size": 19422
|
|
@@ -435,22 +443,22 @@
|
|
|
435
443
|
"name": "check.0440cf8a72ac2317.svg",
|
|
436
444
|
"size": 214
|
|
437
445
|
},
|
|
438
|
-
{
|
|
439
|
-
"name": "chevron-right.a81fc439dd5e4839.svg",
|
|
440
|
-
"size": 212
|
|
441
|
-
},
|
|
442
446
|
{
|
|
443
447
|
"name": "mobile-save-page-step-one.f058692ffb0ac877.png",
|
|
444
448
|
"size": 52200
|
|
445
449
|
},
|
|
446
450
|
{
|
|
447
|
-
"name": "
|
|
448
|
-
"size":
|
|
451
|
+
"name": "chevron-right.a81fc439dd5e4839.svg",
|
|
452
|
+
"size": 212
|
|
449
453
|
},
|
|
450
454
|
{
|
|
451
455
|
"name": "scrim-hexagons.e59318adb5550050.svg",
|
|
452
456
|
"size": 947
|
|
453
457
|
},
|
|
458
|
+
{
|
|
459
|
+
"name": "unwatch-page.60a0cb971631515e.png",
|
|
460
|
+
"size": 106041
|
|
461
|
+
},
|
|
454
462
|
{
|
|
455
463
|
"name": "opera.ebd6fbbb8600e404.svg",
|
|
456
464
|
"size": 600
|
|
@@ -500,7 +508,7 @@
|
|
|
500
508
|
"size": 135602
|
|
501
509
|
}
|
|
502
510
|
],
|
|
503
|
-
"auxiliaryAssetsSize":
|
|
511
|
+
"auxiliaryAssetsSize": 8632403,
|
|
504
512
|
"children": {},
|
|
505
513
|
"childAssets": {}
|
|
506
514
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="21" viewBox="0 0 16 21"><path d="M9 6.041c0 .89.721 1.611 1.61 1.611 1.436 0 2.155-1.735 1.14-2.75S9 4.606 9 6.042M2 .652h7.172a2 2 0 0 1 1.414.586l4.828 4.829A2 2 0 0 1 16 7.48v11.171a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-16c0-1.11.89-2 2-2m1 17a1 1 0 1 0 2 0v-4a1 1 0 0 0-2 0zm4 0a1 1 0 1 0 2 0v-6a1 1 0 0 0-2 0zm4 0a1 1 0 1 0 2 0v-2a1 1 0 0 0-2 0z"/></svg>
|
package/entry.client.js
CHANGED
|
@@ -3,11 +3,11 @@ import "@lit-labs/ssr-client/lit-element-hydrate-support.js";
|
|
|
3
3
|
|
|
4
4
|
// hooks:
|
|
5
5
|
import "./hooks/glean-init.js";
|
|
6
|
+
import "./hooks/dialog-closedby.js";
|
|
6
7
|
import "./hooks/load-elements.js";
|
|
7
8
|
import "./hooks/sidebar-scroll-to-current.js";
|
|
8
9
|
import "./components/navigation/hook.js";
|
|
9
10
|
import "./hooks/toc-highlight.js";
|
|
10
11
|
import "./hooks/code-examples.js";
|
|
11
12
|
import "./hooks/live-samples.js";
|
|
12
|
-
import "./hooks/css-formal-syntax.js";
|
|
13
13
|
import "./hooks/skip-to-search.js";
|
package/entry.ssr.js
CHANGED
|
@@ -40,10 +40,10 @@ for (const [name, def] of customElements.__definitions) {
|
|
|
40
40
|
|
|
41
41
|
/**
|
|
42
42
|
* @param {string} path
|
|
43
|
-
* @param {import("@
|
|
43
|
+
* @param {import("@fred").PartialContext} partialContext
|
|
44
44
|
* @param {import("@fred").CompilationStats} compilationStats
|
|
45
45
|
*/
|
|
46
|
-
export async function render(path,
|
|
46
|
+
export async function render(path, partialContext, compilationStats) {
|
|
47
47
|
const locale = path.split("/")[1] || "en-US";
|
|
48
48
|
if (locale === "qa") {
|
|
49
49
|
path = path.replace("/qa/", "/en-US/");
|
|
@@ -52,9 +52,8 @@ export async function render(path, page, compilationStats) {
|
|
|
52
52
|
const context = {
|
|
53
53
|
path,
|
|
54
54
|
...(await addFluent(locale)),
|
|
55
|
-
...
|
|
55
|
+
...partialContext,
|
|
56
56
|
};
|
|
57
|
-
|
|
58
57
|
/** @type {import("./components/server/types.js").AsyncLocalStorageContents} */
|
|
59
58
|
const storageContents = {
|
|
60
59
|
componentsUsed: new Set(),
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* dialog closedby polyfill based on https://github.com/tak-dcxi/dialog-closedby-polyfill
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
*
|
|
6
|
+
* Copyright (c) 2025 Takahiro Arai
|
|
7
|
+
*
|
|
8
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
9
|
+
* of this software and associated documentation files (the "Software"), to deal
|
|
10
|
+
* in the Software without restriction, including without limitation the rights
|
|
11
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
12
|
+
* copies of the Software, and to permit persons to whom the Software is
|
|
13
|
+
* furnished to do so, subject to the following conditions:
|
|
14
|
+
*
|
|
15
|
+
* The above copyright notice and this permission notice shall be included in all
|
|
16
|
+
* copies or substantial portions of the Software.
|
|
17
|
+
*
|
|
18
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
19
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
20
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
21
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
22
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
23
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
24
|
+
* SOFTWARE.
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
if (!("closedBy" in HTMLDialogElement.prototype)) {
|
|
28
|
+
addEventListener("click", (event) => {
|
|
29
|
+
const source = event.composedPath()[0];
|
|
30
|
+
if (
|
|
31
|
+
source instanceof HTMLDialogElement &&
|
|
32
|
+
source.getAttribute("closedby") === "any"
|
|
33
|
+
) {
|
|
34
|
+
const rect = source.getBoundingClientRect();
|
|
35
|
+
const { clientX: x, clientY: y } = event;
|
|
36
|
+
const inside =
|
|
37
|
+
rect.top <= y && y <= rect.bottom && rect.left <= x && x <= rect.right;
|
|
38
|
+
|
|
39
|
+
if (!inside) source.close();
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
package/l10n/de.ftl
CHANGED
|
@@ -6,7 +6,7 @@ reference-toc-header = In diesem Artikel
|
|
|
6
6
|
|
|
7
7
|
footer-tagline = Dein Bauplan für ein besseres Internet.
|
|
8
8
|
footer-mofo = Besuche die gemeinnützige Muttergesellschaft der <a data-l10n-name="moco">Mozilla Corporation</a>, die <a data-l10n-name="mofo">Mozilla Foundation</a>.
|
|
9
|
-
footer-copyright = Teile dieses Inhalts sind ©1998–
|
|
9
|
+
footer-copyright = Teile dieses Inhalts sind ©1998–{ $year } von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfügbar unter <a data-l10n-name="cc">einer Creative-Commons-Lizenz</a>.
|
|
10
10
|
|
|
11
11
|
search-modal-site-search = Erweiterte Suche nach <em>{ $query }</em>
|
|
12
12
|
|
|
@@ -39,7 +39,7 @@ No = Nein
|
|
|
39
39
|
Submit = Abschicken
|
|
40
40
|
Yes = Ja
|
|
41
41
|
|
|
42
|
-
|
|
42
|
+
obs-report = Report
|
|
43
43
|
|
|
44
44
|
obs-title = HTTP Observatory
|
|
45
45
|
obs-landing-intro = Seit 2016 verbessert HTTP Observatory die Sicherheit durch Analyse der Einhaltung bewährter Sicherheitspraktiken. Es hat durch 47 Millionen Scans Einblicke in über 6,9 Millionen Websites geliefert.
|
package/l10n/en-US.ftl
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# TODO Use comments, see: https://firefox-source-docs.mozilla.org/l10n/fluent/review.html#comments
|
|
2
2
|
# TODO Consider using terms, see: https://firefox-source-docs.mozilla.org/l10n/fluent/review.html#terms and https://projectfluent.org/fluent/guide/references.html#message-references
|
|
3
3
|
|
|
4
|
-
article-footer-last-modified = This page was last modified on <time data-l10n-name="date">{ $date }</
|
|
4
|
+
article-footer-last-modified = This page was last modified on <time data-l10n-name="date">{ $date }</time> by <a data-l10n-name="contributors">MDN contributors</a>.
|
|
5
5
|
article-footer-source-title = Folder: { $folder } (Opens in a new tab)
|
|
6
6
|
|
|
7
|
-
baseline-asterisk =
|
|
7
|
+
baseline-asterisk = Some parts of this feature may have varying levels of support.
|
|
8
8
|
baseline-high-extra = This feature is well established and works across many devices and browser versions. It’s been available across browsers since { $date }.
|
|
9
9
|
baseline-low-extra = Since { $date }, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
|
|
10
10
|
baseline-not-extra = This feature is not Baseline because it does not work in some of the most widely-used browsers.
|
|
@@ -24,7 +24,7 @@ not-found-back = Go back to the home page
|
|
|
24
24
|
reference-toc-header = In this article
|
|
25
25
|
|
|
26
26
|
footer-mofo = Visit <a data-l10n-name="moco">Mozilla Corporation’s</a> not-for-profit parent, the <a data-l10n-name="mofo">Mozilla Foundation</a>.
|
|
27
|
-
footer-copyright = Portions of this content are ©1998–
|
|
27
|
+
footer-copyright = Portions of this content are ©1998–{ $year } by individual mozilla.org contributors. Content available under <a data-l10n-name="cc">a Creative Commons license</a>.
|
|
28
28
|
|
|
29
29
|
search-modal-site-search = Site search for <em>{ $query }</em>
|
|
30
30
|
|
|
@@ -50,14 +50,14 @@ blog-post-not-found = Blog post not found.
|
|
|
50
50
|
blog-previous = Previous post
|
|
51
51
|
blog-next = Next post
|
|
52
52
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
obs-title =
|
|
56
|
-
obs-landing-intro = Launched in 2016, the
|
|
57
|
-
obs-assessment = Developed by Mozilla, the
|
|
53
|
+
-brand-name-obs = HTTP Observatory
|
|
54
|
+
obs-report = Report
|
|
55
|
+
obs-title = { -brand-name-obs }
|
|
56
|
+
obs-landing-intro = Launched in 2016, the { -brand-name-obs } enhances web security by analyzing compliance with best security practices. It has provided insights to over 6.9 million websites through 47 million scans.
|
|
57
|
+
obs-assessment = Developed by Mozilla, the { -brand-name-obs } performs an in-depth assessment of a site’s HTTP headers and other key security configurations.
|
|
58
58
|
obs-scanning = Its automated scanning process provides developers and website administrators with detailed, actionable feedback, focusing on identifying and addressing potential security vulnerabilities.
|
|
59
59
|
obs-security = The tool is instrumental in helping developers and website administrators strengthen their sites against common security threats in a constantly advancing digital environment.
|
|
60
|
-
obs-mdn = The
|
|
60
|
+
obs-mdn = The { -brand-name-obs } provides effective security insights, guided by Mozilla's expertise and commitment to a safer and more secure internet and based on well-established trends and guidelines.
|
|
61
61
|
|
|
62
62
|
|
|
63
63
|
compat-loading = Loading…
|
|
@@ -108,7 +108,7 @@ compat-support-flags =
|
|
|
108
108
|
[one] {" "}to <code data-l10n-name="value">{ $flag_value }</code>
|
|
109
109
|
*[other] {""}
|
|
110
110
|
}{"."}
|
|
111
|
-
{
|
|
111
|
+
{ $flag_type ->
|
|
112
112
|
[preference] To change preferences in { $browser_name }, visit { $browser_pref_url }.
|
|
113
113
|
*[other] {""}
|
|
114
114
|
}
|
package/legacy/index.tsx
CHANGED
|
@@ -8,6 +8,7 @@ import { GleanProvider } from "@mdn/yari/client/src/telemetry/glean-context";
|
|
|
8
8
|
import "@mdn/yari/client/src/app.scss";
|
|
9
9
|
import "@mdn/yari/client/src/document/index.scss";
|
|
10
10
|
|
|
11
|
+
import "./legacy.css";
|
|
11
12
|
import "../hooks/legacy-theme-controller.js";
|
|
12
13
|
|
|
13
14
|
const root = ReactDOM.createRoot(document.getElementById("root")!);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mdn/fred",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"repository": "https://github.com/mdn/fred",
|
|
5
5
|
"license": "MPL-2.0",
|
|
6
6
|
"author": "MDN Web Docs",
|
|
@@ -41,11 +41,11 @@
|
|
|
41
41
|
"@fluent/bundle": "^0.19.0",
|
|
42
42
|
"@lit-labs/ssr": "^3.3.1",
|
|
43
43
|
"@lit-labs/ssr-client": "^1.1.7",
|
|
44
|
-
"@lit/task": "^1.0.
|
|
44
|
+
"@lit/task": "^1.0.3",
|
|
45
45
|
"@mdn/watify": "^1.1.3",
|
|
46
|
-
"@mozilla/glean": "^5.0.
|
|
46
|
+
"@mozilla/glean": "^5.0.5",
|
|
47
47
|
"codemirror": "^6.0.1",
|
|
48
|
-
"compression": "^1.8.
|
|
48
|
+
"compression": "^1.8.1",
|
|
49
49
|
"concurrently": "^9.2.0",
|
|
50
50
|
"cookie-parser": "^1.4.7",
|
|
51
51
|
"express": "^5.0.1",
|
|
@@ -53,8 +53,9 @@
|
|
|
53
53
|
"he": "^1.2.0",
|
|
54
54
|
"http-proxy-middleware": "^3.0.3",
|
|
55
55
|
"insane": "^2.6.2",
|
|
56
|
-
"lit": "^3.
|
|
57
|
-
"lit-html": "^3.
|
|
56
|
+
"lit": "^3.3.1",
|
|
57
|
+
"lit-html": "^3.3.1",
|
|
58
|
+
"open-editor": "^5.1.0",
|
|
58
59
|
"prism-svelte": "^0.5.0",
|
|
59
60
|
"prismjs": "^1.29.0"
|
|
60
61
|
},
|
|
@@ -63,18 +64,18 @@
|
|
|
63
64
|
"@codemirror/commands": "^6.8.1",
|
|
64
65
|
"@codemirror/language": "^6.11.0",
|
|
65
66
|
"@codemirror/lint": "^6.8.5",
|
|
66
|
-
"@codemirror/view": "^6.
|
|
67
|
+
"@codemirror/view": "^6.38.1",
|
|
67
68
|
"@csstools/postcss-global-data": "^3.0.0",
|
|
68
69
|
"@eslint/compat": "^1.2.7",
|
|
69
|
-
"@eslint/js": "^9.
|
|
70
|
+
"@eslint/js": "^9.32.0",
|
|
70
71
|
"@jackolope/lit-analyzer": "^3.2.0",
|
|
71
|
-
"@jackolope/ts-lit-plugin": "^3.1.
|
|
72
|
-
"@mdn/browser-compat-data": "^6.0.
|
|
72
|
+
"@jackolope/ts-lit-plugin": "^3.1.6",
|
|
73
|
+
"@mdn/browser-compat-data": "^6.0.36",
|
|
73
74
|
"@mdn/rari": "0.1.46",
|
|
74
|
-
"@mdn/yari": "^5.0.
|
|
75
|
-
"@rsdoctor/rspack-plugin": "^1.1.
|
|
76
|
-
"@rspack/cli": "^1.4.
|
|
77
|
-
"@rspack/core": "^1.4.
|
|
75
|
+
"@mdn/yari": "^5.0.2",
|
|
76
|
+
"@rsdoctor/rspack-plugin": "^1.1.10",
|
|
77
|
+
"@rspack/cli": "^1.4.10",
|
|
78
|
+
"@rspack/core": "^1.4.10",
|
|
78
79
|
"@svgr/webpack": "^8.1.0",
|
|
79
80
|
"@types/compression": "^1.8.1",
|
|
80
81
|
"@types/cookie-parser": "^1.4.8",
|
|
@@ -83,19 +84,19 @@
|
|
|
83
84
|
"@types/insane": "^1.0.0",
|
|
84
85
|
"@types/prismjs": "^1.26.5",
|
|
85
86
|
"@types/webpack-hot-middleware": "^2.25.9",
|
|
86
|
-
"@typescript-eslint/eslint-plugin": "^8.
|
|
87
|
+
"@typescript-eslint/eslint-plugin": "^8.38.0",
|
|
87
88
|
"css-loader": "^7.1.2",
|
|
88
89
|
"css-minimizer-webpack-plugin": "^7.0.2",
|
|
89
|
-
"eslint": "^9.
|
|
90
|
-
"eslint-config-prettier": "^10.1.
|
|
90
|
+
"eslint": "^9.32.0",
|
|
91
|
+
"eslint-config-prettier": "^10.1.8",
|
|
91
92
|
"eslint-plugin-import": "^2.31.0",
|
|
92
|
-
"eslint-plugin-jsdoc": "^51.
|
|
93
|
+
"eslint-plugin-jsdoc": "^51.4.1",
|
|
93
94
|
"eslint-plugin-lit": "^2.0.0",
|
|
94
|
-
"eslint-plugin-n": "^17.21.
|
|
95
|
+
"eslint-plugin-n": "^17.21.3",
|
|
95
96
|
"eslint-plugin-unicorn": "^59.0.0",
|
|
96
97
|
"eslint-plugin-wc": "^3.0.0",
|
|
97
98
|
"globals": "^16.3.0",
|
|
98
|
-
"lefthook": "^1.12.
|
|
99
|
+
"lefthook": "^1.12.2",
|
|
99
100
|
"postcss": "^8.5.3",
|
|
100
101
|
"postcss-custom-media": "^11.0.5",
|
|
101
102
|
"postcss-loader": "^8.1.1",
|
|
@@ -106,7 +107,7 @@
|
|
|
106
107
|
"sass-loader": "^16.0.5",
|
|
107
108
|
"source-map-support": "^0.5.21",
|
|
108
109
|
"spdy": "^4.0.2",
|
|
109
|
-
"stylelint": "^16.
|
|
110
|
+
"stylelint": "^16.23.0",
|
|
110
111
|
"stylelint-config-recess-order": "^7.1.0",
|
|
111
112
|
"stylelint-config-standard": "^38.0.0",
|
|
112
113
|
"svgo-loader": "^4.0.0",
|
package/rspack.config.js
CHANGED
|
@@ -12,6 +12,7 @@ import { StatsWriterPlugin } from "webpack-stats-plugin";
|
|
|
12
12
|
|
|
13
13
|
import { CSPHashPlugin } from "./build/plugins/csp-hash.js";
|
|
14
14
|
import { GenerateElementMapPlugin } from "./build/plugins/generate-element-map.js";
|
|
15
|
+
import { override as svgoOverride } from "./svgo.config.js";
|
|
15
16
|
|
|
16
17
|
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
17
18
|
|
|
@@ -80,15 +81,6 @@ const common = {
|
|
|
80
81
|
new StatsWriterPlugin({
|
|
81
82
|
fields: ["publicPath", "entrypoints"],
|
|
82
83
|
}),
|
|
83
|
-
new rspack.DefinePlugin({
|
|
84
|
-
"process.env": JSON.stringify({
|
|
85
|
-
...Object.fromEntries(
|
|
86
|
-
Object.entries(process.env).filter(([key]) =>
|
|
87
|
-
key.startsWith("FRED_"),
|
|
88
|
-
),
|
|
89
|
-
),
|
|
90
|
-
}),
|
|
91
|
-
}),
|
|
92
84
|
],
|
|
93
85
|
optimization: {
|
|
94
86
|
minimizer: [
|
|
@@ -156,17 +148,41 @@ const common = {
|
|
|
156
148
|
|
|
157
149
|
/** @type {import("@rspack/core").RspackOptions} */
|
|
158
150
|
const clientAndSsrCommon = {
|
|
151
|
+
plugins: [
|
|
152
|
+
new rspack.DefinePlugin({
|
|
153
|
+
"process.env": JSON.stringify({
|
|
154
|
+
...Object.fromEntries(
|
|
155
|
+
Object.entries(process.env).filter(([key]) =>
|
|
156
|
+
key.startsWith("FRED_"),
|
|
157
|
+
),
|
|
158
|
+
),
|
|
159
|
+
}),
|
|
160
|
+
}),
|
|
161
|
+
],
|
|
159
162
|
module: {
|
|
160
163
|
rules: [
|
|
161
164
|
{
|
|
162
165
|
test: /\.svg$/i,
|
|
163
|
-
loader: "svgo-loader",
|
|
164
166
|
oneOf: [
|
|
165
167
|
{
|
|
166
168
|
resourceQuery: /lit/,
|
|
167
|
-
|
|
169
|
+
use: ["./build/loaders/lit-svg.js", "svgo-loader"],
|
|
168
170
|
},
|
|
169
171
|
{
|
|
172
|
+
loader: "svgo-loader",
|
|
173
|
+
options: svgoOverride(
|
|
174
|
+
{
|
|
175
|
+
cleanupIds: false,
|
|
176
|
+
},
|
|
177
|
+
[
|
|
178
|
+
{
|
|
179
|
+
name: "cleanupIds",
|
|
180
|
+
params: {
|
|
181
|
+
preserve: ["light", "dark"],
|
|
182
|
+
},
|
|
183
|
+
},
|
|
184
|
+
],
|
|
185
|
+
),
|
|
170
186
|
type: "asset/resource",
|
|
171
187
|
},
|
|
172
188
|
],
|
package/server.js
CHANGED
|
@@ -4,9 +4,10 @@ import { Worker } from "node:worker_threads";
|
|
|
4
4
|
|
|
5
5
|
import cookieParser from "cookie-parser";
|
|
6
6
|
import express from "express";
|
|
7
|
-
|
|
8
7
|
import { createProxyMiddleware } from "http-proxy-middleware";
|
|
8
|
+
import openEditor from "open-editor";
|
|
9
9
|
|
|
10
|
+
import { WRITER_MODE } from "./components/env/index.js";
|
|
10
11
|
import { handleRunner } from "./vendor/yari/libs/play/index.js";
|
|
11
12
|
|
|
12
13
|
import "source-map-support/register.js";
|
|
@@ -45,9 +46,14 @@ if (process.env.NODE_ENV === "production") {
|
|
|
45
46
|
async function serverRenderMiddleware(req, res, page) {
|
|
46
47
|
try {
|
|
47
48
|
let html;
|
|
49
|
+
/** @type {import("@fred").PartialContext} */
|
|
50
|
+
const context = {
|
|
51
|
+
localServer: true,
|
|
52
|
+
...page,
|
|
53
|
+
};
|
|
48
54
|
if (prodRender) {
|
|
49
55
|
// implies devMode === false
|
|
50
|
-
html = await prodRender(
|
|
56
|
+
html = await prodRender(context);
|
|
51
57
|
} else {
|
|
52
58
|
/** @type {Stats} */
|
|
53
59
|
const stats = res.locals.webpack.devMiddleware.stats;
|
|
@@ -65,7 +71,7 @@ async function serverRenderMiddleware(req, res, page) {
|
|
|
65
71
|
/** @type {import("./build/types.js").WorkerData} */
|
|
66
72
|
workerData: {
|
|
67
73
|
reqPath: req.path,
|
|
68
|
-
|
|
74
|
+
context,
|
|
69
75
|
compilationStats,
|
|
70
76
|
},
|
|
71
77
|
},
|
|
@@ -177,6 +183,21 @@ export async function startServer() {
|
|
|
177
183
|
},
|
|
178
184
|
);
|
|
179
185
|
|
|
186
|
+
if (WRITER_MODE) {
|
|
187
|
+
app.get("/_open", async (req, _res) => {
|
|
188
|
+
const { filepath } = req.query;
|
|
189
|
+
const { CONTENT_ROOT, CONTENT_TRANSLATED_ROOT } = process.env;
|
|
190
|
+
if (typeof filepath === "string") {
|
|
191
|
+
const absolutePath = fileURLToPath(
|
|
192
|
+
import.meta.resolve(
|
|
193
|
+
`${filepath.startsWith("en-us") ? CONTENT_ROOT : CONTENT_TRANSLATED_ROOT}/${filepath}`,
|
|
194
|
+
),
|
|
195
|
+
);
|
|
196
|
+
openEditor([absolutePath]);
|
|
197
|
+
}
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
|
|
180
201
|
const RARI_URL = process.env.RARI_URL || "http://localhost:8083";
|
|
181
202
|
app.use(
|
|
182
203
|
createProxyMiddleware({
|
|
@@ -277,6 +298,19 @@ export async function startServer() {
|
|
|
277
298
|
);
|
|
278
299
|
}
|
|
279
300
|
|
|
301
|
+
// live sample assets
|
|
302
|
+
play.use(
|
|
303
|
+
createProxyMiddleware({
|
|
304
|
+
target: RARI_URL,
|
|
305
|
+
changeOrigin: true,
|
|
306
|
+
proxyTimeout: 20_000,
|
|
307
|
+
timeout: 20_000,
|
|
308
|
+
headers: {
|
|
309
|
+
Connection: "keep-alive",
|
|
310
|
+
},
|
|
311
|
+
}),
|
|
312
|
+
);
|
|
313
|
+
|
|
280
314
|
const httpServer = app.listen(3000, () => {
|
|
281
315
|
console.log(
|
|
282
316
|
`Server started at ${http2 ? "https" : "http"}://localhost:3000`,
|