@mdn/fred 2.0.1 → 2.1.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 +43 -0
- package/components/about-tabs/element.css +3 -2
- package/components/scrim-inline/element.css +0 -7
- package/components/scrim-inline/global.css +10 -0
- package/components/social-image/README.md +16 -0
- package/components/social-image/sandbox.js +23 -0
- package/components/social-image/server.css +28 -0
- package/components/social-image/server.js +13 -0
- package/l10n/fluent.js +8 -7
- package/out/service-worker.js +1 -1
- package/out/service-worker.js.map +1 -1
- package/out/static/client/5183.ed3575d7370b617c.js +64 -0
- package/out/static/client/5183.ed3575d7370b617c.js.map +1 -0
- package/out/static/client/7047.7084b7bcf9a47b7b.js +9 -0
- package/out/static/client/7047.7084b7bcf9a47b7b.js.map +1 -0
- package/out/static/client/{8292.88217634072b2959.js → 8292.5a4929a466c7b3ca.js} +2 -2
- package/out/static/client/{8292.88217634072b2959.js.map → 8292.5a4929a466c7b3ca.js.map} +1 -1
- package/out/static/client/{index.a7f592ef6e4f2a0e.js → index.0e1f202766cdb426.js} +3 -3
- package/out/static/client/{index.a7f592ef6e4f2a0e.js.map → index.0e1f202766cdb426.js.map} +1 -1
- package/out/static/client/{runtime.14f0bbf7912ff6c2.js → runtime.076e84c93222dfd0.js} +2 -2
- package/out/static/client/{runtime.14f0bbf7912ff6c2.js.map → runtime.076e84c93222dfd0.js.map} +1 -1
- package/out/static/client/stats.json +422 -386
- package/out/static/client/styles-a11y-menu.bf24a870a8a4969f.js +1 -0
- package/out/static/client/styles-advertising.9f2b7bddc08575fc.js +1 -0
- package/out/static/client/styles-article-footer.aa9f8d240980b0f4.js +1 -0
- package/out/static/client/styles-banner.e738836bac789a8b.js +1 -0
- package/out/static/client/styles-baseline-indicator.c062716f3d033dd8.js +1 -0
- package/out/static/client/styles-blog-index.818261c8123bc042.js +1 -0
- package/out/static/client/styles-blog-post.96ce1680245bbc86.js +1 -0
- package/out/static/client/styles-breadcrumbs-bar.ed7d1440bdccf98f.js +1 -0
- package/out/static/client/styles-breadcrumbs.7599a269dc584d75.js +1 -0
- package/out/static/client/styles-button.de6a7b9b7548d84b.js +1 -0
- package/out/static/client/styles-content-section.a8bd7fde04898354.js +1 -0
- package/out/static/client/styles-contributor-spotlight.adad2e813e1667fe.js +1 -0
- package/out/static/client/styles-curriculum-about.eefa128bb415258c.js +1 -0
- package/out/static/client/styles-curriculum-default.a2692218d2b1a1f9.js +1 -0
- package/out/static/client/styles-curriculum-landing.2d51b8fce8f12b8d.js +1 -0
- package/out/static/client/styles-curriculum-module.f4ae8920ee1c92ff.js +1 -0
- package/out/static/client/styles-curriculum-overview.2d7c17b0f0b9bd92.js +1 -0
- package/out/static/client/styles-featured-articles.c54e8f6b90567441.js +1 -0
- package/out/static/client/styles-footer.cff8d2b7669e06a9.js +1 -0
- package/out/static/client/styles-generic-about.b31b672a5d394108.js +1 -0
- package/out/static/client/styles-generic-community.f7e5df670c7aeaf3.js +1 -0
- package/out/static/client/styles-generic-content.1a9e4b87d8a12a85.js +1 -0
- package/out/static/client/styles-generic-layout.76e37948146a2f39.js +1 -0
- package/out/static/client/styles-generic-sidebar.c07d266d1382c357.js +1 -0
- package/out/static/client/styles-generic-toc.342bb77a42e3cc84.js +1 -0
- package/out/static/client/styles-global.63980d9c69df1f6a.css +2 -0
- package/out/static/client/styles-global.63980d9c69df1f6a.css.map +1 -0
- package/out/static/client/styles-global.c2e6118d3b833b4a.js +1 -0
- package/out/static/client/styles-heading-anchor.79390408a0c88875.js +1 -0
- package/out/static/client/styles-homepage-body.20c015a218d0bc96.js +1 -0
- package/out/static/client/styles-homepage-contributor-spotlight.21f37f11b3bd4bda.js +1 -0
- package/out/static/client/styles-homepage-footer.24e66b627b59d99f.js +1 -0
- package/out/static/client/styles-homepage-header.1a75fa94f8bab5a0.js +1 -0
- package/out/static/client/styles-homepage-hero.f1bf55f1be2d516d.js +1 -0
- package/out/static/client/styles-homepage.cd5bf6213bc06b4e.js +1 -0
- package/out/static/client/styles-latest-news.0f32a584ef1ed171.js +1 -0
- package/out/static/client/styles-left-sidebar.d7d52289da7ba969.js +1 -0
- package/out/static/client/styles-logo.1ff82941fc133017.js +1 -0
- package/out/static/client/styles-mandala.2a99de27a8c19d02.js +1 -0
- package/out/static/client/styles-menu.13c3394ada0512ef.js +1 -0
- package/out/static/client/styles-navigation.f857f577084aa7ef.js +1 -0
- package/out/static/client/styles-not-found.0bdc6a72643ebe34.js +1 -0
- package/out/static/client/styles-observatory-landing.e709efc8103ee08c.js +1 -0
- package/out/static/client/styles-observatory-results.e098740504c0c0f0.js +1 -0
- package/out/static/client/styles-page-layout.2ab75fc5b95edf1b.js +1 -0
- package/out/static/client/styles-pagination.667a2af3eaebe782.js +1 -0
- package/out/static/client/styles-playground.c1339745dabdf1f6.js +1 -0
- package/out/static/client/styles-recent-contributions.706333df420f227c.js +1 -0
- package/out/static/client/styles-reference-layout.6eaaea648e7e4dce.js +1 -0
- package/out/static/client/styles-reference-toc.dcb67aadb5032e3f.js +1 -0
- package/out/static/client/styles-sandbox.c14203f7b76d9e70.js +1 -0
- package/out/static/client/styles-site-search.ba674569591c3348.js +1 -0
- package/out/static/client/styles-social-image.47d082e57762bfb4.css +2 -0
- package/out/static/client/styles-social-image.47d082e57762bfb4.css.map +1 -0
- package/out/static/client/styles-social-image.f457942a12584899.js +1 -0
- package/out/static/client/styles-translation-banner.c0bf41a60bc2fe87.js +1 -0
- package/out/static/client/styles-writer-toolbar.e7438b6d8e7c99f4.js +1 -0
- package/out/static/client/{styles.519e2a3b2b0392d7.js → styles.cbf2ca4b84823096.js} +2 -2
- package/out/static/client/{styles.519e2a3b2b0392d7.js.map → styles.cbf2ca4b84823096.js.map} +1 -1
- package/out/static/legacy/{145.f57152daa80bc354.js → 145.e71ec0c1d16bfeb6.js} +2 -2
- package/out/static/legacy/{145.f57152daa80bc354.js.map → 145.e71ec0c1d16bfeb6.js.map} +1 -1
- package/out/static/legacy/{2439.db04dec0f2bfe008.js → 2439.152ddc8eff5390cc.js} +2 -2
- package/out/static/legacy/{2439.db04dec0f2bfe008.js.map → 2439.152ddc8eff5390cc.js.map} +1 -1
- package/out/static/legacy/{2569.2ed6f988d52f6cb2.js → 2569.41b52dfae9ff5dbd.js} +2 -2
- package/out/static/legacy/{2569.2ed6f988d52f6cb2.js.map → 2569.41b52dfae9ff5dbd.js.map} +1 -1
- package/out/static/legacy/{3097.5ee3eace96d8c3ea.js → 3097.89f8c27a39d2d759.js} +2 -2
- package/out/static/legacy/{3097.5ee3eace96d8c3ea.js.map → 3097.89f8c27a39d2d759.js.map} +1 -1
- package/out/static/legacy/{4624.5f395686fe61b4a3.js → 4624.831090754998070f.js} +2 -2
- package/out/static/legacy/{4624.5f395686fe61b4a3.js.map → 4624.831090754998070f.js.map} +1 -1
- package/out/static/legacy/{4944.dff54c3109113729.js → 4944.d5de2520acb6bc03.js} +2 -2
- package/out/static/legacy/{4944.dff54c3109113729.js.map → 4944.d5de2520acb6bc03.js.map} +1 -1
- package/out/static/legacy/{4968.12b8af0a52d054ac.js → 4968.c5c0429688b49438.js} +2 -2
- package/out/static/legacy/{4968.12b8af0a52d054ac.js.map → 4968.c5c0429688b49438.js.map} +1 -1
- package/out/static/legacy/{652.702c9f7893508b7f.js → 652.984bbafca5a127d6.js} +2 -2
- package/out/static/legacy/{652.702c9f7893508b7f.js.map → 652.984bbafca5a127d6.js.map} +1 -1
- package/out/static/legacy/{6542.8f8dc41c1b7b4f3d.js → 6542.9ae1d636a2097c7a.js} +2 -2
- package/out/static/legacy/{6542.8f8dc41c1b7b4f3d.js.map → 6542.9ae1d636a2097c7a.js.map} +1 -1
- package/out/static/legacy/{6786.d37ed4aa6d7a5c1a.js → 6786.c180a40232e02d98.js} +3 -3
- package/out/static/legacy/{6786.d37ed4aa6d7a5c1a.js.map → 6786.c180a40232e02d98.js.map} +1 -1
- package/out/static/legacy/{8292.88217634072b2959.js → 8292.5a4929a466c7b3ca.js} +2 -2
- package/out/static/legacy/{8292.88217634072b2959.js.map → 8292.5a4929a466c7b3ca.js.map} +1 -1
- package/out/static/legacy/{8315.525575601119f224.js → 8315.732f4f8af2f04044.js} +2 -2
- package/out/static/legacy/{8315.525575601119f224.js.map → 8315.732f4f8af2f04044.js.map} +1 -1
- package/out/static/legacy/{8769.d63b4369d16f3391.js → 8769.c0eb10a75d355ed3.js} +2 -2
- package/out/static/legacy/{8769.d63b4369d16f3391.js.map → 8769.c0eb10a75d355ed3.js.map} +1 -1
- package/out/static/legacy/{9380.d18451f1d350375d.js → 9380.2e09c0a94dc10112.js} +2 -2
- package/out/static/legacy/{9380.d18451f1d350375d.js.map → 9380.2e09c0a94dc10112.js.map} +1 -1
- package/out/static/legacy/asset-manifest.json +20 -20
- package/out/static/legacy/{index.0b85877f879160b2.js → index.5e65b9f52e86ad40.js} +5 -5
- package/out/static/legacy/{index.0b85877f879160b2.js.LICENSE.txt → index.5e65b9f52e86ad40.js.LICENSE.txt} +1 -1
- package/out/static/legacy/{index.0b85877f879160b2.js.map → index.5e65b9f52e86ad40.js.map} +1 -1
- package/out/static/legacy/{index.645247acbde1c666.html → index.6838304b64f32836.html} +1 -1
- package/out/static/legacy/stats.json +14 -14
- package/out/static/legacy/{yari.46e28128e98126d7.js → yari.c8f274d3a31b194e.js} +6 -6
- package/out/static/legacy/{yari.46e28128e98126d7.js.LICENSE.txt → yari.c8f274d3a31b194e.js.LICENSE.txt} +1 -1
- package/out/static/legacy/{yari.46e28128e98126d7.js.map → yari.c8f274d3a31b194e.js.map} +1 -1
- package/out/static/ssr/8292.js +1 -1
- package/out/static/ssr/8292.js.map +1 -1
- package/out/static/ssr/index.js +149 -142
- package/out/static/ssr/index.js.map +1 -1
- package/out/static/ssr/stats.json +4 -4
- package/out/twitter-card-summary.46ac2375.png +0 -0
- package/package.json +21 -20
- package/public/twitter-card-summary.46ac2375.png +0 -0
- package/server.js +12 -1
- package/out/static/client/5183.e4104aeffa888fd3.js +0 -64
- package/out/static/client/5183.e4104aeffa888fd3.js.map +0 -1
- package/out/static/client/7047.5a3c9165bf33e8ef.js +0 -9
- package/out/static/client/7047.5a3c9165bf33e8ef.js.map +0 -1
- package/out/static/client/styles-a11y-menu.49f604eb400e3a1b.js +0 -1
- package/out/static/client/styles-advertising.206d401ac1918107.js +0 -1
- package/out/static/client/styles-article-footer.bf7a12a8f26de9d8.js +0 -1
- package/out/static/client/styles-banner.045fd9429c0b4559.js +0 -1
- package/out/static/client/styles-baseline-indicator.1a9a989c5eed2bd0.js +0 -1
- package/out/static/client/styles-blog-index.07075fbe70ea701a.js +0 -1
- package/out/static/client/styles-blog-post.f096d7b72acc54c7.js +0 -1
- package/out/static/client/styles-breadcrumbs-bar.b6d2903779905507.js +0 -1
- package/out/static/client/styles-breadcrumbs.7b6a3fca16762395.js +0 -1
- package/out/static/client/styles-button.68557b262acc04d5.js +0 -1
- package/out/static/client/styles-content-section.8b58198fcbb512cd.js +0 -1
- package/out/static/client/styles-contributor-spotlight.65897b7d1c3de5e6.js +0 -1
- package/out/static/client/styles-curriculum-about.013603624423e8b7.js +0 -1
- package/out/static/client/styles-curriculum-default.8d3cc74e416d99c0.js +0 -1
- package/out/static/client/styles-curriculum-landing.95ce2c9c6203fda2.js +0 -1
- package/out/static/client/styles-curriculum-module.6bd730e94b6ab4b0.js +0 -1
- package/out/static/client/styles-curriculum-overview.31fd536067fb14e7.js +0 -1
- package/out/static/client/styles-featured-articles.122a3779cde55236.js +0 -1
- package/out/static/client/styles-footer.fedc4476f04ebc15.js +0 -1
- package/out/static/client/styles-generic-about.7e63ff8a4b7851ef.js +0 -1
- package/out/static/client/styles-generic-community.dae09a544431e63d.js +0 -1
- package/out/static/client/styles-generic-content.16d08aa39ea401b9.js +0 -1
- package/out/static/client/styles-generic-layout.3e4f2f4951ea186b.js +0 -1
- package/out/static/client/styles-generic-sidebar.b2e094fc3c0756ab.js +0 -1
- package/out/static/client/styles-generic-toc.cd70dab26a1241d4.js +0 -1
- package/out/static/client/styles-global.5f2ce7704ec8c59c.js +0 -1
- package/out/static/client/styles-global.8bc2a924c3985561.css +0 -2
- package/out/static/client/styles-global.8bc2a924c3985561.css.map +0 -1
- package/out/static/client/styles-heading-anchor.0deb48e0e151aba3.js +0 -1
- package/out/static/client/styles-homepage-body.cb1b213bec93efdd.js +0 -1
- package/out/static/client/styles-homepage-contributor-spotlight.1a2acbf06be6d425.js +0 -1
- package/out/static/client/styles-homepage-footer.3435c9576666f4a5.js +0 -1
- package/out/static/client/styles-homepage-header.6a6b4ebaf675e721.js +0 -1
- package/out/static/client/styles-homepage-hero.de64115a608af810.js +0 -1
- package/out/static/client/styles-homepage.09583f85e229d2de.js +0 -1
- package/out/static/client/styles-latest-news.d7d8beb1f187d6f5.js +0 -1
- package/out/static/client/styles-left-sidebar.62e4bdb34c86bc43.js +0 -1
- package/out/static/client/styles-logo.15608a14aefd9e51.js +0 -1
- package/out/static/client/styles-mandala.18c6e16ec318e10a.js +0 -1
- package/out/static/client/styles-menu.8011e6627accb1f3.js +0 -1
- package/out/static/client/styles-navigation.507be0a6a4278751.js +0 -1
- package/out/static/client/styles-not-found.5abe16a37f65b63a.js +0 -1
- package/out/static/client/styles-observatory-landing.2bda92fc6d68c4fc.js +0 -1
- package/out/static/client/styles-observatory-results.090bb92b82d036eb.js +0 -1
- package/out/static/client/styles-page-layout.ca4cbe58578a57eb.js +0 -1
- package/out/static/client/styles-pagination.cacd3f49e3de0552.js +0 -1
- package/out/static/client/styles-playground.1c172c9a3a8d9b79.js +0 -1
- package/out/static/client/styles-recent-contributions.45d4f26778c7ba5b.js +0 -1
- package/out/static/client/styles-reference-layout.d26c1e2e7b6dcf90.js +0 -1
- package/out/static/client/styles-reference-toc.bb1b05755fbc1108.js +0 -1
- package/out/static/client/styles-sandbox.a14cc003eeaa8914.js +0 -1
- package/out/static/client/styles-site-search.76d1310c8fe1b8fb.js +0 -1
- package/out/static/client/styles-translation-banner.c9804ae977f28550.js +0 -1
- package/out/static/client/styles-writer-toolbar.e88f55bfa22d6f0e.js +0 -1
- /package/out/static/client/{5183.e4104aeffa888fd3.js.LICENSE.txt → 5183.ed3575d7370b617c.js.LICENSE.txt} +0 -0
- /package/out/static/client/{index.a7f592ef6e4f2a0e.js.LICENSE.txt → index.0e1f202766cdb426.js.LICENSE.txt} +0 -0
- /package/out/static/legacy/{6786.d37ed4aa6d7a5c1a.js.LICENSE.txt → 6786.c180a40232e02d98.js.LICENSE.txt} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,48 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [2.1.0](https://github.com/mdn/fred/compare/v2.0.2...v2.1.0) (2026-01-27)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* **components:** add social-image ([#1230](https://github.com/mdn/fred/issues/1230)) ([1d795f7](https://github.com/mdn/fred/commit/1d795f75071075a9be10daabad4eb5c6f8c63d13))
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Bug Fixes
|
|
12
|
+
|
|
13
|
+
* **about-tabs:** apply styles correctly on hover ([#1234](https://github.com/mdn/fred/issues/1234)) ([b318c10](https://github.com/mdn/fred/commit/b318c106a3bb1b389e1d3419a236db3462d854b2))
|
|
14
|
+
* **l10n:** don't insert unicode directional isolates ([#1243](https://github.com/mdn/fred/issues/1243)) ([4c41385](https://github.com/mdn/fred/commit/4c41385331c0c1d99efaea62537ea4ce7b63fe20))
|
|
15
|
+
* **server:** handle HEAD requests + send Content-Length header ([#1241](https://github.com/mdn/fred/issues/1241)) ([b6801c3](https://github.com/mdn/fred/commit/b6801c310b23fedd2843f523cda1b84a1c1dd862))
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
### Miscellaneous
|
|
19
|
+
|
|
20
|
+
* **deps-dev:** bump @mdn/browser-compat-data from 7.2.4 to 7.2.5 ([#1254](https://github.com/mdn/fred/issues/1254)) ([facf4fa](https://github.com/mdn/fred/commit/facf4fae8478d686463f04a5581b1242d89c0061))
|
|
21
|
+
* **deps-dev:** bump eslint-plugin-jsdoc from 62.3.0 to 62.3.1 in the dev group ([#1246](https://github.com/mdn/fred/issues/1246)) ([a7dcfb5](https://github.com/mdn/fred/commit/a7dcfb5a88c60e531a13ab818197087e09f623fc))
|
|
22
|
+
* **deps-dev:** bump stylelint from 16.26.1 to 17.0.0 ([#1219](https://github.com/mdn/fred/issues/1219)) ([40d0b05](https://github.com/mdn/fred/commit/40d0b0594a8100cad1f4fb9b1d74ce3194721352))
|
|
23
|
+
* **deps-dev:** bump the dev group with 3 updates ([#1228](https://github.com/mdn/fred/issues/1228)) ([b226d39](https://github.com/mdn/fred/commit/b226d39790e5103524169bcec228420f7b13dec3))
|
|
24
|
+
* **deps-dev:** bump the dev group with 3 updates ([#1233](https://github.com/mdn/fred/issues/1233)) ([9c10307](https://github.com/mdn/fred/commit/9c103075e98d193a4c73ec93bf6a4ac6934e5635))
|
|
25
|
+
* **deps-dev:** bump the dev group with 3 updates ([#1242](https://github.com/mdn/fred/issues/1242)) ([10a9d5e](https://github.com/mdn/fred/commit/10a9d5e7cd052627590afddaa39b18a349b2e381))
|
|
26
|
+
* **deps-dev:** bump the dev group with 3 updates ([#1253](https://github.com/mdn/fred/issues/1253)) ([c2cfd21](https://github.com/mdn/fred/commit/c2cfd216987e9011d780b109db397b90cca3c4e1))
|
|
27
|
+
* **deps-dev:** bump typescript-eslint from 8.53.1 to 8.54.0 in the dev group ([#1259](https://github.com/mdn/fred/issues/1259)) ([739dac8](https://github.com/mdn/fred/commit/739dac8059f4daf0cef35633b5de967bd4d306a8))
|
|
28
|
+
* **deps:** bump @mdn/rari from 0.2.10 to 0.2.11 ([#1256](https://github.com/mdn/fred/issues/1256)) ([e9736d8](https://github.com/mdn/fred/commit/e9736d8aaac12d348c04c4a5d28d5d26c941a24e))
|
|
29
|
+
* **deps:** bump lodash from 4.17.21 to 4.17.23 ([#1245](https://github.com/mdn/fred/issues/1245)) ([9a773c2](https://github.com/mdn/fred/commit/9a773c2eb687153ea8f7701b2ead08be771572a9))
|
|
30
|
+
* **deps:** bump qs and body-parser ([#1239](https://github.com/mdn/fred/issues/1239)) ([126742e](https://github.com/mdn/fred/commit/126742e5abc6dc42ce8af5ae559d3258ae930c51))
|
|
31
|
+
* **deps:** bump qs, express and @rsdoctor/rspack-plugin ([#1237](https://github.com/mdn/fred/issues/1237)) ([7d1da1a](https://github.com/mdn/fred/commit/7d1da1a0d8b4beba235af445e4f35c5f61f472b8))
|
|
32
|
+
* **deps:** bump react-router and react-router-dom ([#1238](https://github.com/mdn/fred/issues/1238)) ([51491d7](https://github.com/mdn/fred/commit/51491d7c31d04ff6cce78fa5fbcd43f20cf5bcfa))
|
|
33
|
+
* **deps:** bump tar from 7.4.3 to 7.5.6 ([#1236](https://github.com/mdn/fred/issues/1236)) ([e95cbb5](https://github.com/mdn/fred/commit/e95cbb5806a2c1b641f555f05007d7ee3d82b8a9))
|
|
34
|
+
* **scrim-inline:** move global style out of element ([#1232](https://github.com/mdn/fred/issues/1232)) ([8821afe](https://github.com/mdn/fred/commit/8821afe0491c7d74d0277a6c6f9f76f09048cc59))
|
|
35
|
+
|
|
36
|
+
## [2.0.2](https://github.com/mdn/fred/compare/v2.0.1...v2.0.2) (2026-01-19)
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
### Miscellaneous
|
|
40
|
+
|
|
41
|
+
* **deps-dev:** bump @mdn/browser-compat-data from 7.2.3 to 7.2.4 ([#1218](https://github.com/mdn/fred/issues/1218)) ([986860e](https://github.com/mdn/fred/commit/986860e6304aac6248607ab9bbcd2d3902c39a3f))
|
|
42
|
+
* **deps-dev:** bump postcss-preset-env from 11.1.0 to 11.1.1 in the dev group ([#1216](https://github.com/mdn/fred/issues/1216)) ([dc08760](https://github.com/mdn/fred/commit/dc08760d2b302cedf43489a2174b5e5466ceae4e))
|
|
43
|
+
* **deps-dev:** bump the dev group with 6 updates ([#1223](https://github.com/mdn/fred/issues/1223)) ([ec2b761](https://github.com/mdn/fred/commit/ec2b761560dde6f7d76c4d51a042c95965f52f3b))
|
|
44
|
+
* **deps:** bump @mdn/rari from 0.2.9 to 0.2.10 ([#1226](https://github.com/mdn/fred/issues/1226)) ([63499c7](https://github.com/mdn/fred/commit/63499c7b51a4b14e25230f05852d65ebdd275f78))
|
|
45
|
+
|
|
3
46
|
## [2.0.1](https://github.com/mdn/fred/compare/v2.0.0...v2.0.1) (2026-01-15)
|
|
4
47
|
|
|
5
48
|
|
|
@@ -31,13 +31,14 @@
|
|
|
31
31
|
|
|
32
32
|
font-weight: normal;
|
|
33
33
|
|
|
34
|
-
color: var(--about-tablist-color);
|
|
34
|
+
color: var(--about-tablist-color) !important;
|
|
35
35
|
|
|
36
36
|
text-decoration: none;
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
+
::slotted([slot="tab"]:hover),
|
|
39
40
|
::slotted([slot="tab"].active) {
|
|
40
|
-
color: var(--about-tablist-active-color);
|
|
41
|
+
color: var(--about-tablist-active-color) !important;
|
|
41
42
|
border-bottom: 2px solid var(--about-tablist-active-border);
|
|
42
43
|
}
|
|
43
44
|
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Social Image
|
|
2
|
+
|
|
3
|
+
## Generating an image from the component
|
|
4
|
+
|
|
5
|
+
1. Navigate to the sandbox http://localhost:3000/sandbox#SocialImage
|
|
6
|
+
2. Screenshot the 1024px node from devtools
|
|
7
|
+
3. Copy to `fred/public/twitter-card-summary.png`
|
|
8
|
+
4. Compress the image:
|
|
9
|
+
|
|
10
|
+
a. Run pngquant to reduce the colours in the image, try `pngquant --speed 1 twitter-card-summary.png` first, and see if it's indistinguishable from the original
|
|
11
|
+
|
|
12
|
+
b. Run optipng to further compress the image without any quality loss: `optipng -o7 -zm1-9 twitter-card-summary-fs8.png`
|
|
13
|
+
|
|
14
|
+
5. Generate a hash for the image: `shasum twitter-card-summary-fs8.png | cut -c 1-8`
|
|
15
|
+
6. Rename the image, including the hash: `mv twitter-card-summary-fs8.png twitter-card-summary.46ac2375.png`
|
|
16
|
+
7. Cleanup the uncompressed image: `rm twitter-card-summary.png`
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/* eslint-disable lit/prefer-static-styles */
|
|
2
|
+
import { html } from "@lit-labs/ssr";
|
|
3
|
+
|
|
4
|
+
import { SandboxComponent } from "../sandbox/class.js";
|
|
5
|
+
|
|
6
|
+
import { SocialImage } from "./server.js";
|
|
7
|
+
|
|
8
|
+
export class SocialImageSandbox extends SandboxComponent {
|
|
9
|
+
render() {
|
|
10
|
+
// @ts-expect-error Can't provide context in sandbox yet
|
|
11
|
+
// but we don't need it for a static image
|
|
12
|
+
const image = SocialImage.render({});
|
|
13
|
+
|
|
14
|
+
return html`
|
|
15
|
+
<style>
|
|
16
|
+
.social-image:nth-of-type(2) {
|
|
17
|
+
--social-image-size: 1024px;
|
|
18
|
+
}
|
|
19
|
+
</style>
|
|
20
|
+
144px: ${image} 1024px: ${image}
|
|
21
|
+
`;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
.social-image {
|
|
2
|
+
--social-image-size: 144px;
|
|
3
|
+
position: relative;
|
|
4
|
+
|
|
5
|
+
display: flex;
|
|
6
|
+
|
|
7
|
+
align-items: center;
|
|
8
|
+
justify-content: center;
|
|
9
|
+
|
|
10
|
+
width: var(--social-image-size);
|
|
11
|
+
height: var(--social-image-size);
|
|
12
|
+
|
|
13
|
+
overflow: hidden;
|
|
14
|
+
|
|
15
|
+
color-scheme: dark;
|
|
16
|
+
|
|
17
|
+
background: var(--color-background-primary);
|
|
18
|
+
|
|
19
|
+
.logo {
|
|
20
|
+
height: 21%;
|
|
21
|
+
padding: 0;
|
|
22
|
+
|
|
23
|
+
.logo__image {
|
|
24
|
+
width: auto;
|
|
25
|
+
height: 100%;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { html } from "@lit-labs/ssr";
|
|
2
|
+
|
|
3
|
+
import { Logo } from "../logo/server.js";
|
|
4
|
+
import { ServerComponent } from "../server/index.js";
|
|
5
|
+
|
|
6
|
+
export class SocialImage extends ServerComponent {
|
|
7
|
+
/**
|
|
8
|
+
* @param {import("@fred").Context} context
|
|
9
|
+
*/
|
|
10
|
+
render(context) {
|
|
11
|
+
return html` <div class="social-image">${Logo.render(context)}</div> `;
|
|
12
|
+
}
|
|
13
|
+
}
|
package/l10n/fluent.js
CHANGED
|
@@ -42,15 +42,16 @@ export class Fluent {
|
|
|
42
42
|
constructor(locale = "en-US", resources = []) {
|
|
43
43
|
this.locale = locale;
|
|
44
44
|
|
|
45
|
-
this.usBundle = Fluent.constructBundle(
|
|
46
|
-
|
|
47
|
-
|
|
45
|
+
this.usBundle = Fluent.constructBundle(
|
|
46
|
+
new FluentBundle(locale, { useIsolating: false }),
|
|
47
|
+
[enUS_ftl],
|
|
48
|
+
);
|
|
48
49
|
|
|
49
50
|
if (resources.length > 0) {
|
|
50
|
-
this.bundle = Fluent.constructBundle(
|
|
51
|
-
|
|
52
|
-
...resources,
|
|
53
|
-
|
|
51
|
+
this.bundle = Fluent.constructBundle(
|
|
52
|
+
new FluentBundle(locale, { useIsolating: false }),
|
|
53
|
+
[enUS_ftl, ...resources],
|
|
54
|
+
);
|
|
54
55
|
}
|
|
55
56
|
}
|
|
56
57
|
|