@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,387 @@
|
|
|
1
|
+
export const __webpack_ids__=["5531"];export const __webpack_modules__={7790:function(t,e,a){t.exports=a.p+"results-icon.b469eb939df034e7.svg"},52003:function(t,e,a){t.exports=a.p+"summary-icon.eff7a61e59b7e02f.svg"},80478:function(t,e,a){a.r(e),a.d(e,{MDNObservatoryResults:()=>MDNObservatoryResults});var s=a(35470),r=a(14703),o=a(66176),i=a(57964),l=a(28110);let n=(0,r.YP)`<svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" fill="none" viewBox="0 0 22 22"><path fill="#DFD172" d="m18 0-1.26 2.75L14 4l2.74 1.26L18 8l1.25-2.74L22 4l-2.75-1.25M8 3 5.5 8.5 0 11l5.5 2.5L8 19l2.5-5.5L16 11l-5.5-2.5M18 14l-1.26 2.74L14 18l2.74 1.25L18 22l1.25-2.75L22 18l-2.75-1.26"/></svg>`,d=(0,r.YP)`<svg width="22" height="22" class="arrow" viewBox="0 0 22 22"><path d="M12.124 1.733a1 1 0 0 1 1.673 0l8.811 13.423a1 1 0 0 1-.835 1.548l-17.614.007a1 1 0 0 1-.837-1.548Z"/></svg>`;a(90811);let c=["unsafeInline","unsafeEval","unsafeObjects","unsafeInlineStyle","insecureSchemeActive","insecureSchemePassive","antiClickjacking","defaultNone","insecureBaseUri","insecureFormAction","strictDynamic"],b=new Set(["insecureBaseUri","insecureFormAction","insecureSchemeActive","insecureSchemePassive","unsafeEval","unsafeInline","unsafeInlineStyle","unsafeObjects"]);a(55072),a(42678),a(93305),a(32570);let MDNObservatoryResults=class MDNObservatoryResults extends r.oi{static styles=i.Z;constructor(){super(),this.host=null,this.selectedTab=0,this._usePostInApi=!1}static properties={host:{type:String},selectedTab:{state:!0,type:Number},_usePostInApi:{state:!0,type:Boolean}};_apiTask=new s.iQ(this,{args:()=>[this.host],task:async([t],{signal:e})=>{if(!t)throw Error("No host provided");try{let a=await fetch(`${o._v}/api/v2/analyze?host=${encodeURIComponent(t)}`,{signal:e,method:this._usePostInApi?"POST":"GET"});if(!a.ok){let t=`${a.status}: ${a.statusText}`;try{let e=await a.json();e.error&&(t=e.message)}catch{}throw Error(t)}return await a.json()}catch(t){throw Error("Observatory API request for scan data failed",{cause:t})}}});connectedCallback(){super.connectedCallback(),this._updateSelectedTab=this._updateSelectedTab.bind(this),this.selectedTab=this._getSelectedTab(),globalThis.addEventListener("hashchange",this._updateSelectedTab)}disconnectedCallback(){super.disconnectedCallback(),globalThis.removeEventListener("hashchange",this._updateSelectedTab)}firstUpdated(){let t=new URLSearchParams(globalThis.location.search);this.host=t.get("host")}_updateSelectedTab(){this.selectedTab=this._getSelectedTab()}_getSelectedTab(){let t=["scoring","csp","cookies","headers","history","benchmark"].indexOf(globalThis.location.hash.replace("#",""));return -1===t?0:t}async _rescan(t){t.preventDefault(),this.host&&(this._usePostInApi=!0,this._apiTask.run())}_handleTabSelect(t,e){this.selectedTab=t,globalThis.history.replaceState("","",globalThis.location.pathname+globalThis.location.search+"#"+e)}render(){return this.host?this._apiTask.render({pending:()=>(0,r.dy)` <label class="visually-hidden" for="progress-bar">
|
|
2
|
+
Rescanning ${this.host} </label
|
|
3
|
+
><mdn-progress-bar id="progress-bar"></mdn-progress-bar>`,complete:t=>(0,r.dy)`
|
|
4
|
+
<section class="summary">
|
|
5
|
+
${(function({result:t,host:e,rescan:a}){return(0,r.dy)`
|
|
6
|
+
<h2 class="summary">
|
|
7
|
+
Scan summary:
|
|
8
|
+
<span class="host">${(0,l.Ju)(e,t)}</span>
|
|
9
|
+
</h2>
|
|
10
|
+
<section class="scan-result">
|
|
11
|
+
<section class="grade-trend">
|
|
12
|
+
<div class="overall">
|
|
13
|
+
<button
|
|
14
|
+
popovertarget="grade-popover"
|
|
15
|
+
aria-label="show info tooltip"
|
|
16
|
+
class="info-tooltip"
|
|
17
|
+
tabindex="0"
|
|
18
|
+
>
|
|
19
|
+
<div
|
|
20
|
+
class=${`grade grade-${t.scan.grade?.[0]?.toLowerCase()}`}
|
|
21
|
+
>
|
|
22
|
+
${(0,l.x8)(t.scan.grade)}
|
|
23
|
+
</div>
|
|
24
|
+
${function(t){let e=o.Xu.map(e=>(0,r.dy)`
|
|
25
|
+
<tr class=${t.scan.grade===e.grade?"current":""}>
|
|
26
|
+
<td>${(0,l.x8)(e.grade)}</td>
|
|
27
|
+
<td>
|
|
28
|
+
${e.scoreText}
|
|
29
|
+
${t.scan.grade===e.grade&&e.stars?n:""}
|
|
30
|
+
</td>
|
|
31
|
+
</tr>
|
|
32
|
+
`);return(0,r.dy)`
|
|
33
|
+
<span
|
|
34
|
+
popover
|
|
35
|
+
id="grade-popover"
|
|
36
|
+
aria-describedby="grade-table"
|
|
37
|
+
class="tooltip-popup"
|
|
38
|
+
>
|
|
39
|
+
${d}
|
|
40
|
+
<table class="grade-tooltip" id="grades-table" role="tooltip">
|
|
41
|
+
<thead>
|
|
42
|
+
<tr>
|
|
43
|
+
<th>Grade</th>
|
|
44
|
+
<th>Score</th>
|
|
45
|
+
</tr>
|
|
46
|
+
</thead>
|
|
47
|
+
<tbody>
|
|
48
|
+
${e}
|
|
49
|
+
</tbody>
|
|
50
|
+
</table>
|
|
51
|
+
</span>
|
|
52
|
+
`}(t)}
|
|
53
|
+
</button>
|
|
54
|
+
</div>
|
|
55
|
+
${function({result:t}){switch(function(t){let[e,a]=t.history.length>0?[t.history.at(-2)?.score,t.history.at(-2)?.grade]:[void 0,void 0],s=t.scan.score,r=t.scan.grade;return"number"==typeof s&&"number"==typeof e&&r!==a&&s!==e?e<s?"up":"down":"none"}(t)){case"up":return(0,r.dy)`
|
|
56
|
+
<div class="trend">
|
|
57
|
+
<span class="arrow-up" aria-hidden="true"> ↗︎ </span>
|
|
58
|
+
since last scan
|
|
59
|
+
</div>
|
|
60
|
+
`;case"down":return(0,r.dy)`
|
|
61
|
+
<div class="trend">
|
|
62
|
+
<span class="arrow-down" aria-hidden="true"> ↘︎ </span>
|
|
63
|
+
since last scan
|
|
64
|
+
</div>
|
|
65
|
+
`;default:return r.Ld}}({result:t})}
|
|
66
|
+
</section>
|
|
67
|
+
<section class="data">
|
|
68
|
+
<div>
|
|
69
|
+
<a href="/en-US/observatory/docs/tests_and_scoring" target="_blank">
|
|
70
|
+
<span class="label">Score</span></a
|
|
71
|
+
>: ${t.scan.score} / 100
|
|
72
|
+
</div>
|
|
73
|
+
<div>
|
|
74
|
+
<a href="#history"> <span class="label">Scan Time</span></a
|
|
75
|
+
>:
|
|
76
|
+
<mdn-observatory-human-duration
|
|
77
|
+
.date=${new Date(t.scan.scanned_at)}
|
|
78
|
+
></mdn-observatory-human-duration>
|
|
79
|
+
</div>
|
|
80
|
+
<a href="/en-US/observatory/docs/tests_and_scoring" target="_blank">
|
|
81
|
+
<span class="label">Tests Passed</span></a
|
|
82
|
+
>: ${t.scan.tests_passed} / 
|
|
83
|
+
${t.scan.tests_quantity}
|
|
84
|
+
</section>
|
|
85
|
+
<section class="actions">
|
|
86
|
+
<mdn-observatory-rescan-button
|
|
87
|
+
.from=${new Date(t.scan.scanned_at)}
|
|
88
|
+
.duration=${60}
|
|
89
|
+
@click=${a}
|
|
90
|
+
></mdn-observatory-rescan-button>
|
|
91
|
+
<div class="scan-another">
|
|
92
|
+
<a href="/en-US/observatory"> Scan another website </a>
|
|
93
|
+
</div>
|
|
94
|
+
</section>
|
|
95
|
+
</section>
|
|
96
|
+
`})({result:t,host:this.host||"",rescan:this._rescan})}
|
|
97
|
+
</section>
|
|
98
|
+
<section class="results">
|
|
99
|
+
${(function({result:t,selectedTab:e=0,onTabSelect:a}){let s=[{label:"Scoring",key:"scoring",element:(0,r.dy)`${function({result:t}){let e=90>=(t.scan.score||0)&&Object.entries(t.tests).find(([t,e])=>e.score_modifier>0);if(0===Object.keys(t.tests).length)return(0,r.dy)`No tests found.`;let a=o.DQ.map(e=>{let a=t.tests[e];return a?(0,r.dy)`
|
|
100
|
+
<tr>
|
|
101
|
+
<td data-header="Test">
|
|
102
|
+
<a
|
|
103
|
+
href=${a.link}
|
|
104
|
+
target="_blank"
|
|
105
|
+
rel="noreferrer"
|
|
106
|
+
class=${a.link.startsWith("/")?"":"external"}
|
|
107
|
+
>
|
|
108
|
+
${a.title}
|
|
109
|
+
</a>
|
|
110
|
+
</td>
|
|
111
|
+
${null===a.pass?(0,r.dy)`<td data-header="Score">-</td>`:(0,r.dy)` <td class="score" data-header="Score">
|
|
112
|
+
<span>
|
|
113
|
+
<span class="obs-score-value">
|
|
114
|
+
${function({overallScore:t,scoreModifier:e}){let a=t>=90,s=(0,l.x8)(`${e>0?`+${e}`:e}`);return(0,r.dy)`
|
|
115
|
+
<span class=${!a&&e>0?"not-counted":""}>
|
|
116
|
+
${!a&&e>0?(0,r.dy)`0<sup><a href="#bonus-points-explanation">*</a></sup>`:s}
|
|
117
|
+
</span>
|
|
118
|
+
`}({overallScore:t.scan.score||0,scoreModifier:a.score_modifier})}
|
|
119
|
+
</span>
|
|
120
|
+
${(0,l.nq)({pass:a.pass})}
|
|
121
|
+
</span>
|
|
122
|
+
</td>`}
|
|
123
|
+
<td data-header="Reason" .innerHTML=${a.score_description}></td>
|
|
124
|
+
<td
|
|
125
|
+
data-header="Advice"
|
|
126
|
+
.innerHTML=${a.recommendation||'<p class="obs-none">None</p>'}
|
|
127
|
+
></td>
|
|
128
|
+
</tr>
|
|
129
|
+
`:null});return(0,r.dy)`
|
|
130
|
+
<table class="tests">
|
|
131
|
+
<thead>
|
|
132
|
+
<tr>
|
|
133
|
+
<th>Test</th>
|
|
134
|
+
<th>Score</th>
|
|
135
|
+
<th>Reason</th>
|
|
136
|
+
<th>Recommendation</th>
|
|
137
|
+
</tr>
|
|
138
|
+
</thead>
|
|
139
|
+
<tbody>
|
|
140
|
+
${a}
|
|
141
|
+
</tbody>
|
|
142
|
+
</table>
|
|
143
|
+
${e?(0,r.dy)` <section class="footnote" id="bonus-points-explanation">
|
|
144
|
+
<sup>*</sup> Normally awards bonus points, however, in this case they
|
|
145
|
+
are not included in the overall score (
|
|
146
|
+
<a href="/en-US/observatory/docs/tests_and_scoring" target="_blank">
|
|
147
|
+
find out why
|
|
148
|
+
</a>
|
|
149
|
+
).
|
|
150
|
+
</section>`:null}
|
|
151
|
+
`}({result:t})}`},{label:"CSP analysis",key:"csp",element:(0,r.dy)`${function({result:t}){let e=t.tests["content-security-policy"]?.policy,a=t.tests["content-security-policy"]?.pass||!1;if(!e)return t.tests["content-security-policy"]?.result==="csp-not-implemented-but-reporting-enabled"?(0,r.dy)`
|
|
152
|
+
<table class="csp">
|
|
153
|
+
<tbody>
|
|
154
|
+
<tr>
|
|
155
|
+
<td>
|
|
156
|
+
<p>
|
|
157
|
+
<code>Content-Security-Policy-Report-Only</code> header
|
|
158
|
+
detected. Implement an enforced policy; see
|
|
159
|
+
<a href="/en-US/docs/Web/HTTP/CSP" target="_blank">
|
|
160
|
+
MDN's Content Security Policy (CSP) documentation </a
|
|
161
|
+
>.
|
|
162
|
+
</p>
|
|
163
|
+
</td>
|
|
164
|
+
</tr>
|
|
165
|
+
</tbody>
|
|
166
|
+
</table>
|
|
167
|
+
`:(0,r.dy)`
|
|
168
|
+
<table class="csp">
|
|
169
|
+
<tbody>
|
|
170
|
+
<tr>
|
|
171
|
+
<td>
|
|
172
|
+
<p>No CSP headers detected</p>
|
|
173
|
+
</td>
|
|
174
|
+
</tr>
|
|
175
|
+
</tbody>
|
|
176
|
+
</table>
|
|
177
|
+
`;let s=c.map(t=>{if(!e[t])return null;let a=e[t];return(0,r.dy)`
|
|
178
|
+
<tr>
|
|
179
|
+
<td data-header="Test" .innerHTML=${a.description}></td>
|
|
180
|
+
<td data-header="Pass">
|
|
181
|
+
${(0,l.nq)({pass:b.has(t)?!a.pass:a.pass})}
|
|
182
|
+
</td>
|
|
183
|
+
<td data-header="Info" .innerHTML=${a.info}></td>
|
|
184
|
+
</tr>
|
|
185
|
+
`});return(0,r.dy)`
|
|
186
|
+
<div class="detail-header">
|
|
187
|
+
<p class="arrow">${(0,l.nq)({pass:a})}</p>
|
|
188
|
+
<div
|
|
189
|
+
class="detail-header-content"
|
|
190
|
+
.innerHTML=${t.tests["content-security-policy"]?.score_description??'<p class="obs-none">None</p>'}
|
|
191
|
+
></div>
|
|
192
|
+
</div>
|
|
193
|
+
|
|
194
|
+
<table class="csp">
|
|
195
|
+
<thead>
|
|
196
|
+
<tr>
|
|
197
|
+
<th>Test</th>
|
|
198
|
+
<th>Result</th>
|
|
199
|
+
<th>Info</th>
|
|
200
|
+
</tr>
|
|
201
|
+
</thead>
|
|
202
|
+
<tbody>
|
|
203
|
+
${s}
|
|
204
|
+
</tbody>
|
|
205
|
+
</table>
|
|
206
|
+
`}({result:t})}`},{label:"Cookies",key:"cookies",element:(0,r.dy)`${function({result:t}){let e=t.tests.cookies?.data,a=t.tests.cookies?.pass;if(!e||0===Object.keys(e).length)return(0,r.dy)`
|
|
207
|
+
<table class="cookies">
|
|
208
|
+
<tbody>
|
|
209
|
+
<tr>
|
|
210
|
+
<td>No cookies detected</td>
|
|
211
|
+
</tr>
|
|
212
|
+
</tbody>
|
|
213
|
+
</table>
|
|
214
|
+
`;let s=Object.entries(e).map(([t,e])=>(0,r.dy)`
|
|
215
|
+
<tr>
|
|
216
|
+
<td data-header="Name" class="cookie-name">${t}</td>
|
|
217
|
+
<td data-header="Expires">
|
|
218
|
+
${e.expires?(0,l.EK)({expires:e.expires}):"Session"}
|
|
219
|
+
</td>
|
|
220
|
+
<td data-header="Path">
|
|
221
|
+
<code>${e.path}</code>
|
|
222
|
+
</td>
|
|
223
|
+
<td data-header="Secure">${(0,l.nq)({pass:e.secure})}</td>
|
|
224
|
+
<td data-header="HttpOnly">${(0,l.nq)({pass:e.httponly})}</td>
|
|
225
|
+
<td data-header="SameSite">
|
|
226
|
+
${e.samesite?(0,r.dy)`<code>${(0,l.M2)(e.samesite)}</code>`:"-"}
|
|
227
|
+
</td>
|
|
228
|
+
<td data-header="Prefixed">${(0,l.Tv)({cookieName:t})}</td>
|
|
229
|
+
</tr>
|
|
230
|
+
`);return(0,r.dy)`
|
|
231
|
+
<div class="detail-header">
|
|
232
|
+
<p class="arrow">
|
|
233
|
+
${(0,l.nq)({pass:void 0===a?null:a})}
|
|
234
|
+
</p>
|
|
235
|
+
<div
|
|
236
|
+
class="detail-header-content"
|
|
237
|
+
.innerHTML=${t.tests.cookies?.score_description??'<p class="obs-none">None</p>'}
|
|
238
|
+
></div>
|
|
239
|
+
</div>
|
|
240
|
+
<table class="cookies">
|
|
241
|
+
<thead>
|
|
242
|
+
<tr>
|
|
243
|
+
<th>Name</th>
|
|
244
|
+
<th>
|
|
245
|
+
<a
|
|
246
|
+
target="_blank"
|
|
247
|
+
href="/en-US/docs/Web/Security/Practical_implementation_guides/Cookies#expires"
|
|
248
|
+
>Expires</a
|
|
249
|
+
>
|
|
250
|
+
</th>
|
|
251
|
+
<th>
|
|
252
|
+
<a
|
|
253
|
+
target="_blank"
|
|
254
|
+
href="/en-US/docs/Web/Security/Practical_implementation_guides/Cookies#path"
|
|
255
|
+
>Path</a
|
|
256
|
+
>
|
|
257
|
+
</th>
|
|
258
|
+
<th>
|
|
259
|
+
<a
|
|
260
|
+
target="_blank"
|
|
261
|
+
href="/en-US/docs/Web/Security/Practical_implementation_guides/Cookies#secure"
|
|
262
|
+
>Secure</a
|
|
263
|
+
>
|
|
264
|
+
</th>
|
|
265
|
+
<th>
|
|
266
|
+
<a
|
|
267
|
+
target="_blank"
|
|
268
|
+
href="/en-US/docs/Web/Security/Practical_implementation_guides/Cookies#httponly"
|
|
269
|
+
>HttpOnly</a
|
|
270
|
+
>
|
|
271
|
+
</th>
|
|
272
|
+
<th>
|
|
273
|
+
<a
|
|
274
|
+
target="_blank"
|
|
275
|
+
href="/en-US/docs/Web/Security/Practical_implementation_guides/Cookies#samesite"
|
|
276
|
+
>SameSite</a
|
|
277
|
+
>
|
|
278
|
+
</th>
|
|
279
|
+
<th>
|
|
280
|
+
<a
|
|
281
|
+
target="_blank"
|
|
282
|
+
href="/en-US/docs/Web/Security/Practical_implementation_guides/Cookies#name"
|
|
283
|
+
>Prefix</a
|
|
284
|
+
>
|
|
285
|
+
</th>
|
|
286
|
+
</tr>
|
|
287
|
+
</thead>
|
|
288
|
+
<tbody>
|
|
289
|
+
${s}
|
|
290
|
+
</tbody>
|
|
291
|
+
</table>
|
|
292
|
+
`}({result:t})}`},{label:"Raw server headers",key:"headers",element:(0,r.dy)`${function({result:t}){if(!t.scan.response_headers)return(0,r.dy)`
|
|
293
|
+
<table class="headers">
|
|
294
|
+
<tbody>
|
|
295
|
+
<tr>
|
|
296
|
+
<td>No headers detected</td>
|
|
297
|
+
</tr>
|
|
298
|
+
</tbody>
|
|
299
|
+
</table>
|
|
300
|
+
`;let e=Object.entries(t.scan.response_headers).map(([t,e])=>(0,r.dy)`
|
|
301
|
+
<tr>
|
|
302
|
+
<td data-header="Header">
|
|
303
|
+
<mdn-observatory-header-link header=${t}>
|
|
304
|
+
${(0,l.bU)(t)}
|
|
305
|
+
</mdn-observatory-header-link>
|
|
306
|
+
</td>
|
|
307
|
+
<td data-header="Value">${e}</td>
|
|
308
|
+
</tr>
|
|
309
|
+
`);return(0,r.dy)`
|
|
310
|
+
<table class="headers">
|
|
311
|
+
<thead>
|
|
312
|
+
<tr>
|
|
313
|
+
<th>Header</th>
|
|
314
|
+
<th>Value</th>
|
|
315
|
+
</tr>
|
|
316
|
+
</thead>
|
|
317
|
+
<tbody>
|
|
318
|
+
${e}
|
|
319
|
+
</tbody>
|
|
320
|
+
</table>
|
|
321
|
+
`}({result:t})}`},{label:"Scan history",key:"history",element:(0,r.dy)`${function({result:t}){if(0===t.history.length)return r.Ld;let e=[...t.history].reverse().map(({scanned_at:t,score:e,grade:a})=>(0,r.dy)`
|
|
322
|
+
<tr>
|
|
323
|
+
<td data-header="Date">${(0,l.o0)(new Date(t))}</td>
|
|
324
|
+
<td data-header="Score">${e}</td>
|
|
325
|
+
<td data-header="Grade">${(0,l.x8)(a)}</td>
|
|
326
|
+
</tr>
|
|
327
|
+
`);return(0,r.dy)`
|
|
328
|
+
<h2>Changes in score over time</h2>
|
|
329
|
+
<table class="history">
|
|
330
|
+
<thead>
|
|
331
|
+
<tr>
|
|
332
|
+
<th>Date</th>
|
|
333
|
+
<th>Score</th>
|
|
334
|
+
<th>Grade</th>
|
|
335
|
+
</tr>
|
|
336
|
+
</thead>
|
|
337
|
+
<tbody>
|
|
338
|
+
${e}
|
|
339
|
+
</tbody>
|
|
340
|
+
</table>
|
|
341
|
+
`}({result:t})}`},{label:"Benchmark comparison",key:"benchmark",element:(0,r.dy)`${function({result:t}){return(0,r.dy)`
|
|
342
|
+
<h2>Performance trends from the past year</h2>
|
|
343
|
+
<mdn-observatory-comparison-table
|
|
344
|
+
.result=${t}
|
|
345
|
+
></mdn-observatory-comparison-table>
|
|
346
|
+
<p>
|
|
347
|
+
Refer to this graph to assess the website's current status. By following
|
|
348
|
+
the recommendations provided and rescanning, you can expect an improvement
|
|
349
|
+
in the website's grade.
|
|
350
|
+
</p>
|
|
351
|
+
`}({result:t})}`}].map((t,s)=>(0,r.dy)`
|
|
352
|
+
<li id="tabs-${s}" class="tabs-list-item">
|
|
353
|
+
<input
|
|
354
|
+
class="visually-hidden"
|
|
355
|
+
id="tab-${s}"
|
|
356
|
+
name="selected"
|
|
357
|
+
type="radio"
|
|
358
|
+
role="tab"
|
|
359
|
+
.checked=${s===e}
|
|
360
|
+
aria-controls="tab-container-${s}"
|
|
361
|
+
@change=${()=>a(s,t.key)}
|
|
362
|
+
/>
|
|
363
|
+
<label for="tab-${s}" id="tab-label-${s}">${t.label}</label>
|
|
364
|
+
<section
|
|
365
|
+
class="tab-content"
|
|
366
|
+
role="tabpanel"
|
|
367
|
+
aria-labelledby="tab-label-${s}"
|
|
368
|
+
id="tab-container-${s}"
|
|
369
|
+
>
|
|
370
|
+
<div class="scroll-container">${t.element}</div>
|
|
371
|
+
</section>
|
|
372
|
+
</li>
|
|
373
|
+
`);return(0,r.dy)`
|
|
374
|
+
<section class="scan-results">
|
|
375
|
+
<h2 class="result" id="scan-results-header">Scan results</h2>
|
|
376
|
+
<ol
|
|
377
|
+
class="tabs-list"
|
|
378
|
+
role="tablist"
|
|
379
|
+
aria-labelledby="scan-results-header"
|
|
380
|
+
>
|
|
381
|
+
${s}
|
|
382
|
+
</ol>
|
|
383
|
+
</section>
|
|
384
|
+
`})({result:t,selectedTab:this.selectedTab,onTabSelect:(t,e)=>this._handleTabSelect(t,e)})}
|
|
385
|
+
</section>
|
|
386
|
+
</div>`,error:t=>(0,r.dy)`<div class="error">${t}</div>`}):r.Ld}};customElements.define("mdn-observatory-results",MDNObservatoryResults)},57964:function(t,e,a){a.d(e,{Z:()=>y});var s=a(14703),r=a(8081),o=a.n(r),i=a(23645),l=a.n(i),n=a(54681),d=a(62249),c=a(61667),b=a.n(c),h=new a.U(a(52003)),p=new a.U(a(7790)),g=l()(o());g.i(n.Z),g.i(d.Z);var u=b()(h),m=b()(p);g.push([t.id,`:host{line-height:var(--font-line-content)}.scan-result{column-gap:2rem;display:grid;grid-template-areas:"grade data actions";grid-template-columns:auto 3fr 1fr;justify-content:space-between;max-width:var(--max-width)}.scan-result a{color:var(--color-text-primary)}.scan-result{background-color:var(--color-background-primary);border-radius:.3rem;margin-bottom:3rem;padding:2rem}@media (width <= 1200px){.scan-result{align-items:flex-start;grid-template-areas:"grade data actions";grid-template-columns:auto 1fr auto;justify-content:space-between;row-gap:calc(var(--spacing)/2)}}@media (width <= 992px){.scan-result{grid-template-areas:"grade data " "grade actions";grid-template-columns:min-content 1fr}}.trend{margin-top:1rem}.arrow-down{color:var(--observatory-arrow-down-color)}.arrow-up{color:var(--observatory-arrow-up-color)}h2{font-size:var(--font-size-large);font-weight:var(--font-weight-bold);margin-bottom:1rem;margin-top:1.5rem}h2:before{background-color:var(--color-text-primary);content:"";display:inline-block;-webkit-mask-position:left;mask-position:left;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}h2 .host{font-weight:var(--font-weight-normal)}h2.summary:before{height:1.4rem;-webkit-mask-image:url(${u});mask-image:url(${u});width:2rem}h2.result:before{height:1.2rem;-webkit-mask-image:url(${m});mask-image:url(${m});width:2rem}code{font-weight:var(--font-weight-bold)}.grade-trend{grid-area:grade;justify-self:start}.data{grid-area:data}.actions{grid-area:actions}@media (width <= 992px){.actions{margin-top:1rem}}mdn-observatory-rescan-button{min-width:30rem}.info-tooltip{background:none;border:none;cursor:pointer;display:inline-block;position:relative}.scan-another{font-size:var(--font-size-small);font-weight:var(--font-weight-normal);margin-top:1.2rem}.grade,.label{font-weight:var(--font-weight-bold)}.grade{background:var(--grade-bg);border:1px solid var(--grade-border);border-radius:.2em;color:var(--grade-border);display:inline-block;font-size:var(--font-size-large);height:5rem;line-height:5rem;text-align:center;width:5rem}.grade-a{--grade-bg:var(--observatory-grade-a-bg);--grade-border:var(--observatory-grade-a-border)}.grade-b{--grade-bg:var(--observatory-grade-b-bg);--grade-border:var(--observatory-grade-b-border)}.grade-c{--grade-bg:var(--observatory-grade-c-bg);--grade-border:var(--observatory-grade-c-border)}.grade-d{--grade-bg:var(--observatory-grade-d-bg);--grade-border:var(--observatory-grade-d-border)}.grade-f{--grade-bg:var(--observatory-grade-f-bg);--grade-border:var(--observatory-grade-f-border)}.tooltip-popup{--tooltip-offset:-6.3rem;--csstools-light-dark-toggle--0:var(--csstools-color-scheme--light) #696969;--color-tooltip:var(--csstools-light-dark-toggle--0,#b3b3b3);--csstools-light-dark-toggle--1:var(--csstools-color-scheme--light) #1b1b1b;--color-tooltip-highlight:var(--csstools-light-dark-toggle--1,#fff);--csstools-light-dark-toggle--2:var(--csstools-color-scheme--light) #fff;--color-bg-tooltip:var(--csstools-light-dark-toggle--2,#1b1b1b);background-color:var(--color-bg-tooltip);border-radius:var(--border-radius);border-width:0;color:var(--color-tooltip);inset:unset;line-height:var(--font-line-content);margin-top:.5rem;max-width:min(100vw,20rem);overflow:visible;padding:1.5rem;position:relative;text-align:center;transform:translateX(var(--tooltip-offset));width:max-content;z-index:1}@supports (color:light-dark(red,red)){.tooltip-popup{--color-tooltip:light-dark(#b3b3b3,#696969);--color-tooltip-highlight:light-dark(#fff,#1b1b1b);--color-bg-tooltip:light-dark(#1b1b1b,#fff)}}@supports not (color:light-dark(tan,tan)){.tooltip-popup *{--csstools-light-dark-toggle--0:var(--csstools-color-scheme--light) #696969;--color-tooltip:var(--csstools-light-dark-toggle--0,#b3b3b3);--csstools-light-dark-toggle--1:var(--csstools-color-scheme--light) #1b1b1b;--color-tooltip-highlight:var(--csstools-light-dark-toggle--1,#fff);--csstools-light-dark-toggle--2:var(--csstools-color-scheme--light) #fff;--color-bg-tooltip:var(--csstools-light-dark-toggle--2,#1b1b1b)}}.tooltip-popup .arrow{margin-left:-1rem;margin-top:-2rem;padding:0;position:absolute;fill:var(--color-bg-tooltip)}.tooltip-popup table{border:0;border-collapse:collapse;white-space:nowrap;width:10rem}:is(.tooltip-popup table) tr{color:var(--color-tooltip);font-size:var(--font-size-small)}.current:is(:is(.tooltip-popup table) tr){color:var(--color-tooltip-highlight);font-weight:var(--font-weight-bold)}:is(.tooltip-popup table) td,:is(.tooltip-popup table) th{background-color:unset;border:0;font-weight:var(--font-body);text-align:left;width:50%}:is(.tooltip-popup table) th{font-size:var(--font-size-normal);padding:0 0 .75rem}:is(.tooltip-popup table) td{padding:0}:is(:is(.tooltip-popup table) td) svg{vertical-align:-.3rem}.scroll-container{margin-bottom:1.5rem;margin-top:.8rem;overflow-x:auto;overscroll-behavior-x:none}.detail-header{display:flex;gap:.5rem;padding:0 1.5rem 0 0}.detail-header .arrow{color:var(--color-text-secondary)}.detail-header .detail-header-title{font-weight:var(--font-weight-bold);padding-right:.2rem}.detail-header p{margin:1rem 0}:is(.obs-pass-icon svg.pass) path{fill:var(--observatory-pass-icon-bg)}:is(.obs-pass-icon svg.pass) circle{fill:var(--observatory-pass-icon-color)}:is(.obs-pass-icon svg.fail) path{fill:var(--observatory-fail-icon-bg)}:is(.obs-pass-icon svg.fail) circle{fill:var(--observatory-fail-icon-color)}.footnote{font-size:var(--font-size-small);margin-top:1rem}.scan-results table{background:var(--observatory-table-bg);border:none;border-collapse:collapse;min-width:calc(992px - 14rem);width:100%}:is(.scan-results table) th{background:var(--observatory-table-header-bg);color:var(--color-text-secondary);font-weight:500;vertical-align:top}:is(:is(.scan-results table) th) tr{background-color:unset}:is(.scan-results table) tr:nth-child(2n){background-color:var(--observatory-table-bg-alternate)}:is(.scan-results table) td{overflow-wrap:anywhere;padding:.5rem 1.5rem;vertical-align:top}.cookie-name:is(:is(.scan-results table) td):first-child{max-width:15rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score:is(:is(.scan-results table) td)>span{display:flex;flex-direction:row;justify-content:space-between}:is(.scan-results table) a{color:var(--color-text-primary);-webkit-text-decoration:underline;text-decoration:underline;text-decoration-color:var(--color-text-secondary)}:is(:is(.scan-results table) a):active,:is(:is(.scan-results table) a):hover{-webkit-text-decoration:none;text-decoration:none}:is(.scan-results table) span.not-counted{color:var(--color-text-secondary)}:is(:is(.scan-results table) span.not-counted) a{-webkit-text-decoration:none;text-decoration:none}:is(.tests:is(.scan-results table) th,.tests:is(.scan-results table) td):first-of-type{width:25%}.tests:is(.scan-results table) td.score{white-space:nowrap}:is(.csp:is(.scan-results table) th,.csp:is(.scan-results table) td):first-of-type{width:45%}:is(.headers:is(.scan-results table) th,.headers:is(.scan-results table) td):first-of-type{width:30%}:is(.cookies:is(.scan-results table) th,.cookies:is(.scan-results table) td):nth-of-type(n+3){text-align:center}:is(.scan-results table) td,:is(.scan-results table) th{border:none;padding:1.5rem}:is(:is(.scan-results table) th,:is(.scan-results table) td) :first-child{margin-top:0}:is(:is(.scan-results table) th,:is(.scan-results table) td) :last-child{margin-bottom:0}:is(.scan-results table) .icon{height:1.3rem;width:1.3rem}@media (width <= 426px){:is(:is(:is(.scan-results table) td) .iso-date) code{font-size:x-small}}@media (width <= 992px){.scan-results table{min-width:0}:is(.scan-results table) thead{display:none}:is(.scan-results table) tbody{display:block}:is(.scan-results table) tr{display:grid;grid-template-columns:max-content auto}:is(.scan-results table) tr:nth-of-type(odd){background:var(--observatory-table-header-bg)}:is(.scan-results table) td{column-gap:2em;display:grid;grid-auto-flow:column;grid-column:span 2;grid-template-columns:subgrid}:is(:is(.scan-results table) td) .humanized-duration{display:none}:is(.scan-results table) td:before{content:attr(data-header);display:inline;font-weight:var(--font-weight-bold)}:is(.tests:is(.scan-results table),.csp:is(.scan-results table),.headers:is(.scan-results table),.cookies:is(.scan-results table)) td:first-of-type{width:auto}:is(.scan-results table) td:not(:last-of-type){padding-bottom:0}:is(.scan-results table) td:nth-of-type(n+2){padding-top:.75rem}.cookies:is(.scan-results table) td:nth-of-type(n+3){text-align:left}:is(.scan-results table) td.score{display:grid}:is(:is(.scan-results table) td.score)>span{display:block}:is(:is(.scan-results table) td.score) .obs-pass-icon{display:inline-block;height:1.5em;vertical-align:top}}ol.tabs-list{column-gap:3rem;display:grid;grid-template-areas:"tab-0 tab-1 tab-2 tab-3 tab-4 tab-5 ." "hr hr hr hr hr hr hr " "mod mod mod mod mod mod mod";grid-template-columns:repeat(6,max-content) 1fr;margin:0;overflow-x:auto;overscroll-behavior-x:none;padding:0}@media (width <= 992px){ol.tabs-list{column-gap:1.75rem;grid-template-columns:repeat(6,max-content) auto}}ol.tabs-list:before{border:none;border-top:1px solid var(--color-border-primary);content:"";grid-area:hr;margin:0;width:100%}ol.tabs-list input[type=radio]:not(:checked)~.tab-content{display:none}ol.tabs-list li.tabs-list-item{display:contents}:is(ol.tabs-list li.tabs-list-item)>input:checked+label{border-bottom:2px solid var(--observatory-accent);color:var(--color-text-primary)}:is(ol.tabs-list li.tabs-list-item)>input:not(:checked)+label:hover{border-bottom:2px solid var(--observatory-accent-light);color:var(--color-text-primary)}:is(ol.tabs-list li.tabs-list-item)>input:checked:focus-visible+label{outline-color:var(--accent-primary);outline-offset:1px;outline-style:auto}:is(ol.tabs-list li.tabs-list-item)>input:not(:checked)+label{color:var(--color-text-secondary);opacity:.775}:is(ol.tabs-list li.tabs-list-item)>label{cursor:pointer;height:2.2rem;width:max-content}#tabs-0:is(ol.tabs-list li.tabs-list-item)>input,#tabs-0:is(ol.tabs-list li.tabs-list-item)>label{grid-area:tab-0}#tabs-1:is(ol.tabs-list li.tabs-list-item)>input,#tabs-1:is(ol.tabs-list li.tabs-list-item)>label{grid-area:tab-1}#tabs-2:is(ol.tabs-list li.tabs-list-item)>input,#tabs-2:is(ol.tabs-list li.tabs-list-item)>label{grid-area:tab-2}#tabs-3:is(ol.tabs-list li.tabs-list-item)>input,#tabs-3:is(ol.tabs-list li.tabs-list-item)>label{grid-area:tab-3}#tabs-4:is(ol.tabs-list li.tabs-list-item)>input,#tabs-4:is(ol.tabs-list li.tabs-list-item)>label{grid-area:tab-4}#tabs-5:is(ol.tabs-list li.tabs-list-item)>input,#tabs-5:is(ol.tabs-list li.tabs-list-item)>label{grid-area:tab-5}:is(ol.tabs-list li.tabs-list-item)>section.tab-content{grid-area:mod;left:0;margin:0;position:sticky;width:calc(100vw - 18rem)}@media (1200px < width){:is(ol.tabs-list li.tabs-list-item)>section.tab-content{width:100%}}@media (width <= 769px){:is(ol.tabs-list li.tabs-list-item)>section.tab-content{width:calc(100vw - 2rem)}}`,""]);let y=(0,s.iv)([g.toString()])}};
|
|
387
|
+
//# sourceMappingURL=5531.ff59053d35a9ebc5.js.map
|