@mdn/fred 0.0.2 → 0.0.4

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.
Files changed (918) hide show
  1. package/.github/workflows/npm-publish.yml +20 -5
  2. package/.release-please-manifest.json +3 -0
  3. package/CHANGELOG.md +11 -0
  4. package/components/advertising/server.js +1 -1
  5. package/components/blog-index/server.js +1 -1
  6. package/components/blog-post/server.js +1 -1
  7. package/components/homepage-hero/server.css +6 -0
  8. package/components/observatory-landing/faq.js +1 -1
  9. package/components/observatory-landing/feedback.js +1 -1
  10. package/components/observatory-landing/server.js +1 -1
  11. package/components/observatory-results/server.js +1 -1
  12. package/components/reference-toc/server.js +1 -1
  13. package/dist/client/{5837.f6d4c078ffaaacdd.js → 5837.52bd8ccde0085adc.js} +2 -2
  14. package/dist/client/5837.52bd8ccde0085adc.js.map +1 -0
  15. package/dist/client/{7293.b60a1f58515f31a2.js → 7293.b57f88f90b72c988.js} +2 -2
  16. package/dist/client/{7293.b60a1f58515f31a2.js.map → 7293.b57f88f90b72c988.js.map} +1 -1
  17. package/dist/client/{8551.e33e50ee71f44812.js → 8551.4cf05a456e8b9b36.js} +2 -2
  18. package/dist/client/8551.4cf05a456e8b9b36.js.map +1 -0
  19. package/dist/client/9551.23d0a332e0083e6c.js +16 -0
  20. package/dist/client/9551.23d0a332e0083e6c.js.map +1 -0
  21. package/dist/client/{index.8d7599b1e095fcd3.js → index.1e455f7bb8386557.js} +2 -2
  22. package/dist/client/{index.8d7599b1e095fcd3.js.map → index.1e455f7bb8386557.js.map} +1 -1
  23. package/dist/client/{runtime.25188d4f5ff249c3.js → runtime.49d8cdacf2e0c2df.js} +2 -2
  24. package/dist/client/{runtime.25188d4f5ff249c3.js.map → runtime.49d8cdacf2e0c2df.js.map} +1 -1
  25. package/dist/client/stats.json +409 -409
  26. package/dist/client/styles-a11y-menu.3ddb63a73a9c8c9b.js +1 -0
  27. package/dist/client/styles-advertising.89daa4b1babb5d7c.js +1 -0
  28. package/dist/client/styles-article-footer.aad4b81dfb2f25aa.js +1 -0
  29. package/dist/client/styles-banner.b00e4ed105869308.js +1 -0
  30. package/dist/client/styles-baseline-indicator.b4fff7b664a71278.js +1 -0
  31. package/dist/client/styles-blog-index.bfa0b41dd840cec9.js +1 -0
  32. package/dist/client/styles-blog-post.589bea0672ef6cfe.js +1 -0
  33. package/dist/client/styles-breadcrumbs-bar.1135acbe7353b72f.js +1 -0
  34. package/dist/client/styles-breadcrumbs.41165c22e7482511.js +1 -0
  35. package/dist/client/styles-button.9f72d7a8fee3a671.js +1 -0
  36. package/dist/client/styles-content-section.ff53f1079444e3be.js +1 -0
  37. package/dist/client/styles-contributor-spotlight.9a65604ef7cf6f72.js +1 -0
  38. package/dist/client/styles-curriculum-about.8da72a5697ee54c6.js +1 -0
  39. package/dist/client/styles-curriculum-default.36e79c6e85e661a6.js +1 -0
  40. package/dist/client/styles-curriculum-landing.92b1373346b15e6a.js +1 -0
  41. package/dist/client/styles-curriculum-module.45185c94b78788e1.js +1 -0
  42. package/dist/client/styles-curriculum-overview.61995cbb01819033.js +1 -0
  43. package/dist/client/styles-featured-articles.616852431f1e0ee4.js +1 -0
  44. package/dist/client/styles-footer.f16abca2043e46bb.js +1 -0
  45. package/dist/client/styles-generic-about.14bc0114374d65e7.js +1 -0
  46. package/dist/client/styles-generic-community.614ed8dfbcb62ea7.js +1 -0
  47. package/dist/client/styles-generic-content.32ed38732d0f3b45.js +1 -0
  48. package/dist/client/styles-generic-layout.b69ebe87382c0d4a.js +1 -0
  49. package/dist/client/styles-generic-sidebar.08698c1b14c8b476.js +1 -0
  50. package/dist/client/styles-generic-toc.30e78be425cba070.js +1 -0
  51. package/dist/client/{styles-global.4ec6e147aeff7673.js → styles-global.15e503218e977c18.js} +1 -1
  52. package/dist/client/styles-heading-anchor.e8129df53b41bd49.js +1 -0
  53. package/dist/client/styles-homepage-body.0b19b0a2038d4e78.js +1 -0
  54. package/dist/client/styles-homepage-contributor-spotlight.8daa31290a0a5f18.js +1 -0
  55. package/dist/client/styles-homepage-footer.78ba9c3277b58bf3.js +1 -0
  56. package/dist/client/styles-homepage-header.be93cd932f41267d.js +1 -0
  57. package/dist/client/styles-homepage-hero.4ed7235d37aa37cf.js +1 -0
  58. package/dist/client/{styles-homepage-hero.ca54e4bc0c0b420e.css → styles-homepage-hero.6d83a175f7f76d29.css} +2 -2
  59. package/dist/client/styles-homepage-hero.6d83a175f7f76d29.css.map +1 -0
  60. package/dist/client/styles-homepage.4da96775e9ab92bf.js +1 -0
  61. package/dist/client/styles-latest-news.80e70c9afcc04226.js +1 -0
  62. package/dist/client/styles-left-sidebar.58bfaf3c10109a49.js +1 -0
  63. package/dist/client/styles-logo.53efe8dc644a9839.js +1 -0
  64. package/dist/client/styles-mandala.52b580d4cf59fa4f.js +1 -0
  65. package/dist/client/styles-menu.ab201de6ebb3686a.js +1 -0
  66. package/dist/client/styles-navigation.176cffc5e646d9a9.js +1 -0
  67. package/dist/client/styles-not-found.a35e816ca45b2bf5.js +1 -0
  68. package/dist/client/styles-observatory-landing.b162eac949784932.js +1 -0
  69. package/dist/client/styles-observatory-results.d902d3f1dbcf45d7.js +1 -0
  70. package/dist/client/styles-page-layout.a371293b6209ae16.js +1 -0
  71. package/dist/client/styles-pagination.1310b1c891cb6a5a.js +1 -0
  72. package/dist/client/styles-playground.88e73c644d4c1008.js +1 -0
  73. package/dist/client/styles-recent-contributions.c27a16f4c3f97461.js +1 -0
  74. package/dist/client/styles-reference-layout.f009e8667518e87e.js +1 -0
  75. package/dist/client/styles-reference-toc.f201a765d7115477.js +1 -0
  76. package/dist/client/styles-sandbox.7d80ef02b6c1e504.js +1 -0
  77. package/dist/client/styles-translation-banner.ccf3c42b9943fc48.js +1 -0
  78. package/dist/client/{styles.911adb13c338ef51.js → styles.4f05a7e79fd0f3ee.js} +2 -2
  79. package/dist/client/{styles.911adb13c338ef51.js.map → styles.4f05a7e79fd0f3ee.js.map} +1 -1
  80. package/dist/legacy/1284.8a84929ca476234f.css +2 -0
  81. package/dist/legacy/1284.8a84929ca476234f.css.map +1 -0
  82. package/dist/legacy/1284.a10cb8e8305b767b.js +3 -0
  83. package/dist/legacy/1284.a10cb8e8305b767b.js.LICENSE.txt +9 -0
  84. package/dist/legacy/1284.a10cb8e8305b767b.js.map +1 -0
  85. package/dist/legacy/1517.fadaef8d7b596750.css +2 -0
  86. package/dist/legacy/1517.fadaef8d7b596750.css.map +1 -0
  87. package/dist/legacy/3340.c981163ed7c77693.js +2 -0
  88. package/dist/legacy/3340.c981163ed7c77693.js.map +1 -0
  89. package/dist/legacy/3957.f8e46976a249fa14.js +2 -0
  90. package/dist/legacy/3957.f8e46976a249fa14.js.map +1 -0
  91. package/dist/legacy/4556.0aa13ceaa4c2e447.js +2 -0
  92. package/dist/legacy/4556.0aa13ceaa4c2e447.js.map +1 -0
  93. package/dist/legacy/4557.a558cd3f5c086426.js +2 -0
  94. package/dist/legacy/4557.a558cd3f5c086426.js.map +1 -0
  95. package/dist/legacy/5194.3857c0f3afcafde0.js +2 -0
  96. package/dist/legacy/5194.3857c0f3afcafde0.js.map +1 -0
  97. package/dist/legacy/5379.ea44a3dd0291562a.js +2 -0
  98. package/dist/legacy/5379.ea44a3dd0291562a.js.map +1 -0
  99. package/dist/legacy/5575.a67696c41cc35a58.js +3 -0
  100. package/dist/legacy/5575.a67696c41cc35a58.js.LICENSE.txt +8 -0
  101. package/dist/legacy/5575.a67696c41cc35a58.js.map +1 -0
  102. package/dist/legacy/68.98f82bad90460bf6.js +2 -0
  103. package/dist/legacy/68.98f82bad90460bf6.js.map +1 -0
  104. package/dist/legacy/6883.5757a779418effad.js +178 -0
  105. package/dist/legacy/6883.5757a779418effad.js.LICENSE.txt +11 -0
  106. package/dist/legacy/6883.5757a779418effad.js.map +1 -0
  107. package/dist/legacy/7742.118e7ffb2d429b0f.js +60 -0
  108. package/dist/legacy/7742.118e7ffb2d429b0f.js.LICENSE.txt +5 -0
  109. package/dist/legacy/7742.118e7ffb2d429b0f.js.map +1 -0
  110. package/dist/legacy/7742.9db50026de3e9e58.css +2 -0
  111. package/dist/legacy/7742.9db50026de3e9e58.css.map +1 -0
  112. package/dist/legacy/8302.7cd3ab5a2318d719.js +4 -0
  113. package/dist/legacy/8302.7cd3ab5a2318d719.js.LICENSE.txt +17 -0
  114. package/dist/legacy/8302.7cd3ab5a2318d719.js.map +1 -0
  115. package/dist/legacy/8779.257d53536a0d5f02.css +2 -0
  116. package/dist/legacy/8779.257d53536a0d5f02.css.map +1 -0
  117. package/dist/legacy/9022.c6e57a39a2810cc3.js +2 -0
  118. package/dist/legacy/9022.c6e57a39a2810cc3.js.map +1 -0
  119. package/dist/legacy/BarlowCondensed-SemiBold.199288b668a15dc1.woff2 +0 -0
  120. package/dist/legacy/Inter.var.730e8169368baf37.woff2 +0 -0
  121. package/dist/legacy/add-filled.80d402757a60674d.svg +10 -0
  122. package/dist/legacy/add.9310d8fcf4d12ca9.svg +12 -0
  123. package/dist/legacy/afree.23e42bd4c44a110f.png +0 -0
  124. package/dist/legacy/ai-help.ab31f935f670437e.svg +1 -0
  125. package/dist/legacy/ai-help_dark.046ff33d604ca485.png +0 -0
  126. package/dist/legacy/ai-help_light.e220f39b5cafabef.png +0 -0
  127. package/dist/legacy/alert-circle.3335c0d7f5b2c5b6.svg +3 -0
  128. package/dist/legacy/altname.42d2e41d11030519.svg +3 -0
  129. package/dist/legacy/bell-filled.54210b230d4cd96a.svg +3 -0
  130. package/dist/legacy/bell-ring.42eae9e00cdc5670.svg +3 -0
  131. package/dist/legacy/bell.84639befc6b81f54.svg +10 -0
  132. package/dist/legacy/bluesky.6217395adda884d6.svg +1 -0
  133. package/dist/legacy/bookmark-filled.2871e99c943c520a.svg +3 -0
  134. package/dist/legacy/bookmark.697100550aca63ed.svg +3 -0
  135. package/dist/legacy/cancel.6ead14b4cb8b4694.svg +3 -0
  136. package/dist/legacy/chatgpt.bbca9c9c3aceadc0.svg +1 -0
  137. package/dist/legacy/checkmark.78b83561190aa5be.svg +3 -0
  138. package/dist/legacy/chevron.5d373c9173be10ac.svg +3 -0
  139. package/dist/legacy/chrome.34c80ba0e9389a43.svg +1 -0
  140. package/dist/legacy/clippy.04b042246b8eb5d3.svg +12 -0
  141. package/dist/legacy/collections.4d2b375ee696cf2e.png +0 -0
  142. package/dist/legacy/critical.0569cc36ffba11c5.svg +2 -0
  143. package/dist/legacy/curriculum-about-covered.fc1bc064f68bdc94.svg +25 -0
  144. package/dist/legacy/curriculum-about-detail.cde5aac4bc0382ff.svg +25 -0
  145. package/dist/legacy/curriculum-about-educators.cc26cdf6c8251004.svg +25 -0
  146. package/dist/legacy/curriculum-about-not.c0afc382d860ab0c.svg +25 -0
  147. package/dist/legacy/curriculum-about-students.6e789e80d10071b4.svg +25 -0
  148. package/dist/legacy/curriculum-bullet.e4cc51ab8d7a7353.svg +27 -0
  149. package/dist/legacy/curriculum-landing-about-beginner.5166f339392ce8a9.svg +25 -0
  150. package/dist/legacy/curriculum-landing-about-bullet.046c6d7e69f09789.svg +27 -0
  151. package/dist/legacy/curriculum-landing-about-free.a611c33d1ba7e33d.svg +25 -0
  152. package/dist/legacy/curriculum-landing-about-pace.77a202dd136a4d3c.svg +25 -0
  153. package/dist/legacy/curriculum-landing-arrow.458ced8a8dee9e19.svg +26 -0
  154. package/dist/legacy/curriculum-landing-started-advanced.977e749fb909b586.svg +37 -0
  155. package/dist/legacy/curriculum-landing-started-beginner.02e09619ed6e3f6b.svg +37 -0
  156. package/dist/legacy/curriculum-landing-started-educator.47e9cc52f38138b9.svg +37 -0
  157. package/dist/legacy/curriculum-landing-started-employment.9434f729055ae3ce.svg +37 -0
  158. package/dist/legacy/curriculum-mdn-resource.ce11df2c516049b5.svg +27 -0
  159. package/dist/legacy/curriculum-next.1e2c24ff7c72f8f3.svg +3 -0
  160. package/dist/legacy/curriculum-partner-bg.b95320464e0fc574.svg +20 -0
  161. package/dist/legacy/curriculum-prev.76a80bfc2bf346bf.svg +3 -0
  162. package/dist/legacy/curriculum-scrim-bg.e316aaae40a106ee.svg +24 -0
  163. package/dist/legacy/deno.6e66cc38cdfcb577.svg +1 -0
  164. package/dist/legacy/deprecated.c40ec2e5fa028b18.svg +3 -0
  165. package/dist/legacy/desktop.9916908187575ee8.svg +8 -0
  166. package/dist/legacy/disabled.0a3139cf317f8e73.svg +3 -0
  167. package/dist/legacy/edge.975e09d9c765224d.svg +1 -0
  168. package/dist/legacy/edit-filled.4ff5b1542e5f26cd.svg +1 -0
  169. package/dist/legacy/edit.b33bc30018dbe30a.svg +4 -0
  170. package/dist/legacy/ellipses.9bbbfb1a5bab025d.svg +5 -0
  171. package/dist/legacy/experimental.317e4709a9ee5689.svg +2 -0
  172. package/dist/legacy/external.deb9bcd511070d4f.svg +6 -0
  173. package/dist/legacy/eye-filled.513619bc9ac64fd9.svg +11 -0
  174. package/dist/legacy/eye.1d6bc09fd049c172.svg +11 -0
  175. package/dist/legacy/feed.d5d1bf625dc6b397.svg +1 -0
  176. package/dist/legacy/feedback.d387aa9ea5798baf.svg +1 -0
  177. package/dist/legacy/filter.9b5baf25968c04db.svg +3 -0
  178. package/dist/legacy/footnote.e51e2440d994efe8.svg +1 -0
  179. package/dist/legacy/fullscreen-enter.f9cca2e305a7a0dc.svg +24 -0
  180. package/dist/legacy/github-mark-small.bd8d47c6d1b4b950.svg +1 -0
  181. package/dist/legacy/high-dark.abe249f56b9c62f9.svg +1 -0
  182. package/dist/legacy/high.ed4c328bec7a5dd4.svg +1 -0
  183. package/dist/legacy/highlight.4843af48997a8fb8.svg +5 -0
  184. package/dist/legacy/history.0214bce82868c39a.svg +3 -0
  185. package/dist/legacy/ie.4c16845326d86ba9.svg +1 -0
  186. package/dist/legacy/index.95b67ebc43207ce9.css +2 -0
  187. package/dist/legacy/index.95b67ebc43207ce9.css.map +1 -0
  188. package/dist/legacy/index.ae67e107a2bc75bb.js +6 -0
  189. package/dist/legacy/index.ae67e107a2bc75bb.js.LICENSE.txt +85 -0
  190. package/dist/legacy/index.ae67e107a2bc75bb.js.map +1 -0
  191. package/dist/legacy/information.8a003538c18a7e2d.svg +5 -0
  192. package/dist/legacy/language.718cb4a62260b684.svg +6 -0
  193. package/dist/legacy/lightbulb-question.7fbc672959b52326.svg +3 -0
  194. package/dist/legacy/limited-dark.0d15ef53cc4ad5ef.svg +1 -0
  195. package/dist/legacy/limited.2e37fd0b788967df.svg +1 -0
  196. package/dist/legacy/low-dark.7a79f7b7368ef5c0.svg +1 -0
  197. package/dist/legacy/low.0e3be746b80df89e.svg +1 -0
  198. package/dist/legacy/m-logo.75ea8b51ac6d6271.svg +9 -0
  199. package/dist/legacy/mastodon.fffa3e16e0b2db59.svg +3 -0
  200. package/dist/legacy/menu-filled.420d33b5b8431346.svg +8 -0
  201. package/dist/legacy/menu.360c324943803a41.svg +5 -0
  202. package/dist/legacy/message.fbba45f4c3a1d6f2.svg +3 -0
  203. package/dist/legacy/mobile.3a8d7a34c723487a.svg +3 -0
  204. package/dist/legacy/more.e2fcd5fd16099c48.svg +5 -0
  205. package/dist/legacy/new-topic.c44c2b02f1b782d6.svg +3 -0
  206. package/dist/legacy/next.444bedba48443091.svg +3 -0
  207. package/dist/legacy/no.c0dfcd03ea37bca6.svg +3 -0
  208. package/dist/legacy/nodejs.2d9a0f9022cb52ad.svg +1 -0
  209. package/dist/legacy/nonstandard.cd4aec5f2f0a3c65.svg +3 -0
  210. package/dist/legacy/note-deprecated.373dd62cee35d969.svg +3 -0
  211. package/dist/legacy/note-info.eacdd4a9f2821d63.svg +3 -0
  212. package/dist/legacy/note-warning.cd4aec5f2f0a3c65.svg +3 -0
  213. package/dist/legacy/opera.ad21150bc9f8e600.svg +1 -0
  214. package/dist/legacy/padlock.e6e46d7305e05ed1.svg +4 -0
  215. package/dist/legacy/partial.f19850f9f004b1b2.svg +3 -0
  216. package/dist/legacy/play.ba68e261a8be081c.svg +4 -0
  217. package/dist/legacy/playground.c87b7174563d837f.png +0 -0
  218. package/dist/legacy/prefix.2977e3d4b9fb9a82.svg +5 -0
  219. package/dist/legacy/preview.7f907b4753312e8b.svg +2 -0
  220. package/dist/legacy/previous.5b9f782377e19f50.svg +3 -0
  221. package/dist/legacy/prism-abap-js.065c2ef845645dcc.js +2 -0
  222. package/dist/legacy/prism-abap-js.065c2ef845645dcc.js.map +1 -0
  223. package/dist/legacy/prism-abnf-js.9f54518cb96a5f84.js +2 -0
  224. package/dist/legacy/prism-abnf-js.9f54518cb96a5f84.js.map +1 -0
  225. package/dist/legacy/prism-actionscript-js.bd37ca935477738b.js +2 -0
  226. package/dist/legacy/prism-actionscript-js.bd37ca935477738b.js.map +1 -0
  227. package/dist/legacy/prism-ada-js.37afda8c3e854d0c.js +2 -0
  228. package/dist/legacy/prism-ada-js.37afda8c3e854d0c.js.map +1 -0
  229. package/dist/legacy/prism-agda-js.59b2d1f7c1270529.js +2 -0
  230. package/dist/legacy/prism-agda-js.59b2d1f7c1270529.js.map +1 -0
  231. package/dist/legacy/prism-al-js.87450c93fc25e3b0.js +2 -0
  232. package/dist/legacy/prism-al-js.87450c93fc25e3b0.js.map +1 -0
  233. package/dist/legacy/prism-antlr4-js.970086b80a3f5174.js +2 -0
  234. package/dist/legacy/prism-antlr4-js.970086b80a3f5174.js.map +1 -0
  235. package/dist/legacy/prism-apacheconf-js.fe4e4ddaef660339.js +2 -0
  236. package/dist/legacy/prism-apacheconf-js.fe4e4ddaef660339.js.map +1 -0
  237. package/dist/legacy/prism-apex-js.8a3af9ff6d392dbb.js +2 -0
  238. package/dist/legacy/prism-apex-js.8a3af9ff6d392dbb.js.map +1 -0
  239. package/dist/legacy/prism-apl-js.af0b2027efb67aee.js +2 -0
  240. package/dist/legacy/prism-apl-js.af0b2027efb67aee.js.map +1 -0
  241. package/dist/legacy/prism-applescript-js.774f7843a71944c2.js +2 -0
  242. package/dist/legacy/prism-applescript-js.774f7843a71944c2.js.map +1 -0
  243. package/dist/legacy/prism-aql-js.dfc16bd7b3627870.js +2 -0
  244. package/dist/legacy/prism-aql-js.dfc16bd7b3627870.js.map +1 -0
  245. package/dist/legacy/prism-arduino-js.fffd7cb41b6f86f2.js +2 -0
  246. package/dist/legacy/prism-arduino-js.fffd7cb41b6f86f2.js.map +1 -0
  247. package/dist/legacy/prism-arff-js.7b1b50526660298d.js +2 -0
  248. package/dist/legacy/prism-arff-js.7b1b50526660298d.js.map +1 -0
  249. package/dist/legacy/prism-armasm-js.ca02943bebec1278.js +2 -0
  250. package/dist/legacy/prism-armasm-js.ca02943bebec1278.js.map +1 -0
  251. package/dist/legacy/prism-arturo-js.3d3aeba91965c2d3.js +2 -0
  252. package/dist/legacy/prism-arturo-js.3d3aeba91965c2d3.js.map +1 -0
  253. package/dist/legacy/prism-asciidoc-js.4c63cf8587b079bd.js +2 -0
  254. package/dist/legacy/prism-asciidoc-js.4c63cf8587b079bd.js.map +1 -0
  255. package/dist/legacy/prism-asm6502-js.f67d5fc0a76e1352.js +2 -0
  256. package/dist/legacy/prism-asm6502-js.f67d5fc0a76e1352.js.map +1 -0
  257. package/dist/legacy/prism-asmatmel-js.ac4a012894f4f21a.js +2 -0
  258. package/dist/legacy/prism-asmatmel-js.ac4a012894f4f21a.js.map +1 -0
  259. package/dist/legacy/prism-aspnet-js.af5f934c9de385ac.js +2 -0
  260. package/dist/legacy/prism-aspnet-js.af5f934c9de385ac.js.map +1 -0
  261. package/dist/legacy/prism-autohotkey-js.6c06b8e2194913a3.js +2 -0
  262. package/dist/legacy/prism-autohotkey-js.6c06b8e2194913a3.js.map +1 -0
  263. package/dist/legacy/prism-autoit-js.45462f011be40def.js +2 -0
  264. package/dist/legacy/prism-autoit-js.45462f011be40def.js.map +1 -0
  265. package/dist/legacy/prism-avisynth-js.72fb1eb90651e172.js +2 -0
  266. package/dist/legacy/prism-avisynth-js.72fb1eb90651e172.js.map +1 -0
  267. package/dist/legacy/prism-avro-idl-js.eb9489bffdc2514d.js +2 -0
  268. package/dist/legacy/prism-avro-idl-js.eb9489bffdc2514d.js.map +1 -0
  269. package/dist/legacy/prism-awk-js.7489c018ad99a00b.js +2 -0
  270. package/dist/legacy/prism-awk-js.7489c018ad99a00b.js.map +1 -0
  271. package/dist/legacy/prism-bash-js.c4736ca125bdb11b.js +2 -0
  272. package/dist/legacy/prism-bash-js.c4736ca125bdb11b.js.map +1 -0
  273. package/dist/legacy/prism-basic-js.32ccfcfd83800dfe.js +2 -0
  274. package/dist/legacy/prism-basic-js.32ccfcfd83800dfe.js.map +1 -0
  275. package/dist/legacy/prism-batch-js.c73ec6d9d03bc6c2.js +2 -0
  276. package/dist/legacy/prism-batch-js.c73ec6d9d03bc6c2.js.map +1 -0
  277. package/dist/legacy/prism-bbcode-js.d2f98c847308cc9e.js +2 -0
  278. package/dist/legacy/prism-bbcode-js.d2f98c847308cc9e.js.map +1 -0
  279. package/dist/legacy/prism-bbj-js.ca04c9ac043e0cf1.js +2 -0
  280. package/dist/legacy/prism-bbj-js.ca04c9ac043e0cf1.js.map +1 -0
  281. package/dist/legacy/prism-bicep-js.ffc77db23d986cb7.js +2 -0
  282. package/dist/legacy/prism-bicep-js.ffc77db23d986cb7.js.map +1 -0
  283. package/dist/legacy/prism-birb-js.823301111a64edc5.js +2 -0
  284. package/dist/legacy/prism-birb-js.823301111a64edc5.js.map +1 -0
  285. package/dist/legacy/prism-bison-js.209dce152adc379a.js +2 -0
  286. package/dist/legacy/prism-bison-js.209dce152adc379a.js.map +1 -0
  287. package/dist/legacy/prism-bnf-js.4cce2b549a999dde.js +2 -0
  288. package/dist/legacy/prism-bnf-js.4cce2b549a999dde.js.map +1 -0
  289. package/dist/legacy/prism-bqn-js.ef80b027153d8e25.js +2 -0
  290. package/dist/legacy/prism-bqn-js.ef80b027153d8e25.js.map +1 -0
  291. package/dist/legacy/prism-brainfuck-js.3da54af2fa1c640c.js +2 -0
  292. package/dist/legacy/prism-brainfuck-js.3da54af2fa1c640c.js.map +1 -0
  293. package/dist/legacy/prism-brightscript-js.0fe2fcc86ce81701.js +2 -0
  294. package/dist/legacy/prism-brightscript-js.0fe2fcc86ce81701.js.map +1 -0
  295. package/dist/legacy/prism-bro-js.5c2139f05170545e.js +2 -0
  296. package/dist/legacy/prism-bro-js.5c2139f05170545e.js.map +1 -0
  297. package/dist/legacy/prism-bsl-js.4f855065fb67ae4c.js +2 -0
  298. package/dist/legacy/prism-bsl-js.4f855065fb67ae4c.js.map +1 -0
  299. package/dist/legacy/prism-c-js.3963deebbb60bd72.js +2 -0
  300. package/dist/legacy/prism-c-js.3963deebbb60bd72.js.map +1 -0
  301. package/dist/legacy/prism-cfscript-js.e468437a4dff965d.js +2 -0
  302. package/dist/legacy/prism-cfscript-js.e468437a4dff965d.js.map +1 -0
  303. package/dist/legacy/prism-chaiscript-js.18f76e99ca78b229.js +2 -0
  304. package/dist/legacy/prism-chaiscript-js.18f76e99ca78b229.js.map +1 -0
  305. package/dist/legacy/prism-cil-js.40bc7326d966260e.js +2 -0
  306. package/dist/legacy/prism-cil-js.40bc7326d966260e.js.map +1 -0
  307. package/dist/legacy/prism-cilkc-js.30d0f36167d6ecc6.js +2 -0
  308. package/dist/legacy/prism-cilkc-js.30d0f36167d6ecc6.js.map +1 -0
  309. package/dist/legacy/prism-cilkcpp-js.f412735d8428093a.js +2 -0
  310. package/dist/legacy/prism-cilkcpp-js.f412735d8428093a.js.map +1 -0
  311. package/dist/legacy/prism-clike-js.68b8ebbf1bab8ba6.js +2 -0
  312. package/dist/legacy/prism-clike-js.68b8ebbf1bab8ba6.js.map +1 -0
  313. package/dist/legacy/prism-clojure-js.784ec9e089cec2be.js +2 -0
  314. package/dist/legacy/prism-clojure-js.784ec9e089cec2be.js.map +1 -0
  315. package/dist/legacy/prism-cmake-js.3d0082f798e40c43.js +2 -0
  316. package/dist/legacy/prism-cmake-js.3d0082f798e40c43.js.map +1 -0
  317. package/dist/legacy/prism-cobol-js.1f2837d1de7ba9e0.js +2 -0
  318. package/dist/legacy/prism-cobol-js.1f2837d1de7ba9e0.js.map +1 -0
  319. package/dist/legacy/prism-coffeescript-js.43fe3d4a895c9dd0.js +2 -0
  320. package/dist/legacy/prism-coffeescript-js.43fe3d4a895c9dd0.js.map +1 -0
  321. package/dist/legacy/prism-concurnas-js.848e0d8983d43881.js +2 -0
  322. package/dist/legacy/prism-concurnas-js.848e0d8983d43881.js.map +1 -0
  323. package/dist/legacy/prism-cooklang-js.78b2ac93cbb28f01.js +2 -0
  324. package/dist/legacy/prism-cooklang-js.78b2ac93cbb28f01.js.map +1 -0
  325. package/dist/legacy/prism-coq-js.eb9d70dccdccd8ee.js +2 -0
  326. package/dist/legacy/prism-coq-js.eb9d70dccdccd8ee.js.map +1 -0
  327. package/dist/legacy/prism-core-js.e021c4ed977b7b46.js +3 -0
  328. package/dist/legacy/prism-core-js.e021c4ed977b7b46.js.LICENSE.txt +8 -0
  329. package/dist/legacy/prism-core-js.e021c4ed977b7b46.js.map +1 -0
  330. package/dist/legacy/prism-cpp-js.d0da177439198e3e.js +2 -0
  331. package/dist/legacy/prism-cpp-js.d0da177439198e3e.js.map +1 -0
  332. package/dist/legacy/prism-crystal-js.0d662808471e4233.js +2 -0
  333. package/dist/legacy/prism-crystal-js.0d662808471e4233.js.map +1 -0
  334. package/dist/legacy/prism-csharp-js.4ace3f83ab9e51ca.js +2 -0
  335. package/dist/legacy/prism-csharp-js.4ace3f83ab9e51ca.js.map +1 -0
  336. package/dist/legacy/prism-cshtml-js.ec14560be43d0ef9.js +2 -0
  337. package/dist/legacy/prism-cshtml-js.ec14560be43d0ef9.js.map +1 -0
  338. package/dist/legacy/prism-csp-js.c79e9507a3e6c6e5.js +2 -0
  339. package/dist/legacy/prism-csp-js.c79e9507a3e6c6e5.js.map +1 -0
  340. package/dist/legacy/prism-css-extras-js.e19c1eef3c813cb1.js +2 -0
  341. package/dist/legacy/prism-css-extras-js.e19c1eef3c813cb1.js.map +1 -0
  342. package/dist/legacy/prism-css-js.f8df4b07dbbb8110.js +2 -0
  343. package/dist/legacy/prism-css-js.f8df4b07dbbb8110.js.map +1 -0
  344. package/dist/legacy/prism-csv-js.ca0343683cdffdce.js +2 -0
  345. package/dist/legacy/prism-csv-js.ca0343683cdffdce.js.map +1 -0
  346. package/dist/legacy/prism-cue-js.06de9eb3bfcb6717.js +2 -0
  347. package/dist/legacy/prism-cue-js.06de9eb3bfcb6717.js.map +1 -0
  348. package/dist/legacy/prism-cypher-js.28ebf0b4a882f767.js +2 -0
  349. package/dist/legacy/prism-cypher-js.28ebf0b4a882f767.js.map +1 -0
  350. package/dist/legacy/prism-d-js.d6a79cbd4ddcd192.js +2 -0
  351. package/dist/legacy/prism-d-js.d6a79cbd4ddcd192.js.map +1 -0
  352. package/dist/legacy/prism-dart-js.5dd239fc22ea1035.js +2 -0
  353. package/dist/legacy/prism-dart-js.5dd239fc22ea1035.js.map +1 -0
  354. package/dist/legacy/prism-dataweave-js.a301ff77002f050b.js +2 -0
  355. package/dist/legacy/prism-dataweave-js.a301ff77002f050b.js.map +1 -0
  356. package/dist/legacy/prism-dax-js.0a248857c2b69dd1.js +2 -0
  357. package/dist/legacy/prism-dax-js.0a248857c2b69dd1.js.map +1 -0
  358. package/dist/legacy/prism-dhall-js.36ad25138084fa7d.js +2 -0
  359. package/dist/legacy/prism-dhall-js.36ad25138084fa7d.js.map +1 -0
  360. package/dist/legacy/prism-diff-js.6eb48101fbddc314.js +2 -0
  361. package/dist/legacy/prism-diff-js.6eb48101fbddc314.js.map +1 -0
  362. package/dist/legacy/prism-django-js.cd752a03848964c9.js +2 -0
  363. package/dist/legacy/prism-django-js.cd752a03848964c9.js.map +1 -0
  364. package/dist/legacy/prism-dns-zone-file-js.97244dbba9406c4c.js +2 -0
  365. package/dist/legacy/prism-dns-zone-file-js.97244dbba9406c4c.js.map +1 -0
  366. package/dist/legacy/prism-docker-js.47f9f17ef57217d4.js +2 -0
  367. package/dist/legacy/prism-docker-js.47f9f17ef57217d4.js.map +1 -0
  368. package/dist/legacy/prism-dot-js.043adf1a9532d336.js +2 -0
  369. package/dist/legacy/prism-dot-js.043adf1a9532d336.js.map +1 -0
  370. package/dist/legacy/prism-ebnf-js.b0c92c040db7540a.js +2 -0
  371. package/dist/legacy/prism-ebnf-js.b0c92c040db7540a.js.map +1 -0
  372. package/dist/legacy/prism-editorconfig-js.27fb2b797dd8e4da.js +2 -0
  373. package/dist/legacy/prism-editorconfig-js.27fb2b797dd8e4da.js.map +1 -0
  374. package/dist/legacy/prism-eiffel-js.0617c0ccc783c347.js +2 -0
  375. package/dist/legacy/prism-eiffel-js.0617c0ccc783c347.js.map +1 -0
  376. package/dist/legacy/prism-ejs-js.c9c68f5089511537.js +2 -0
  377. package/dist/legacy/prism-ejs-js.c9c68f5089511537.js.map +1 -0
  378. package/dist/legacy/prism-elixir-js.cb5b61e19e959fc9.js +2 -0
  379. package/dist/legacy/prism-elixir-js.cb5b61e19e959fc9.js.map +1 -0
  380. package/dist/legacy/prism-elm-js.2592214667974e6f.js +2 -0
  381. package/dist/legacy/prism-elm-js.2592214667974e6f.js.map +1 -0
  382. package/dist/legacy/prism-erb-js.d70dc73aeedbd388.js +2 -0
  383. package/dist/legacy/prism-erb-js.d70dc73aeedbd388.js.map +1 -0
  384. package/dist/legacy/prism-erlang-js.32f32a44c5b2f47b.js +2 -0
  385. package/dist/legacy/prism-erlang-js.32f32a44c5b2f47b.js.map +1 -0
  386. package/dist/legacy/prism-etlua-js.ef20bc08dc8fe2eb.js +2 -0
  387. package/dist/legacy/prism-etlua-js.ef20bc08dc8fe2eb.js.map +1 -0
  388. package/dist/legacy/prism-excel-formula-js.14f8224a62f3c247.js +2 -0
  389. package/dist/legacy/prism-excel-formula-js.14f8224a62f3c247.js.map +1 -0
  390. package/dist/legacy/prism-factor-js.7fdf5cfb5036f6d1.js +2 -0
  391. package/dist/legacy/prism-factor-js.7fdf5cfb5036f6d1.js.map +1 -0
  392. package/dist/legacy/prism-false-js.fecbf39f8793f86e.js +2 -0
  393. package/dist/legacy/prism-false-js.fecbf39f8793f86e.js.map +1 -0
  394. package/dist/legacy/prism-firestore-security-rules-js.00e0d8c0a5b9dde3.js +2 -0
  395. package/dist/legacy/prism-firestore-security-rules-js.00e0d8c0a5b9dde3.js.map +1 -0
  396. package/dist/legacy/prism-flow-js.6573302ec7e569d8.js +2 -0
  397. package/dist/legacy/prism-flow-js.6573302ec7e569d8.js.map +1 -0
  398. package/dist/legacy/prism-fortran-js.15ff306aa3ea08b8.js +2 -0
  399. package/dist/legacy/prism-fortran-js.15ff306aa3ea08b8.js.map +1 -0
  400. package/dist/legacy/prism-fsharp-js.64b92ed69706c108.js +2 -0
  401. package/dist/legacy/prism-fsharp-js.64b92ed69706c108.js.map +1 -0
  402. package/dist/legacy/prism-ftl-js.f4a23b20ea43487e.js +2 -0
  403. package/dist/legacy/prism-ftl-js.f4a23b20ea43487e.js.map +1 -0
  404. package/dist/legacy/prism-gap-js.4c99a398f1e5fc72.js +2 -0
  405. package/dist/legacy/prism-gap-js.4c99a398f1e5fc72.js.map +1 -0
  406. package/dist/legacy/prism-gcode-js.1b5798050811b233.js +2 -0
  407. package/dist/legacy/prism-gcode-js.1b5798050811b233.js.map +1 -0
  408. package/dist/legacy/prism-gdscript-js.57ebb74c439e9082.js +2 -0
  409. package/dist/legacy/prism-gdscript-js.57ebb74c439e9082.js.map +1 -0
  410. package/dist/legacy/prism-gedcom-js.a5ce074e62c22e92.js +2 -0
  411. package/dist/legacy/prism-gedcom-js.a5ce074e62c22e92.js.map +1 -0
  412. package/dist/legacy/prism-gettext-js.ce0da100a2e3e5a8.js +2 -0
  413. package/dist/legacy/prism-gettext-js.ce0da100a2e3e5a8.js.map +1 -0
  414. package/dist/legacy/prism-gherkin-js.4e47ded25437182c.js +2 -0
  415. package/dist/legacy/prism-gherkin-js.4e47ded25437182c.js.map +1 -0
  416. package/dist/legacy/prism-git-js.952b94296e787802.js +2 -0
  417. package/dist/legacy/prism-git-js.952b94296e787802.js.map +1 -0
  418. package/dist/legacy/prism-glsl-js.28385e6afacc2c39.js +2 -0
  419. package/dist/legacy/prism-glsl-js.28385e6afacc2c39.js.map +1 -0
  420. package/dist/legacy/prism-gml-js.0994258c6d8e2287.js +2 -0
  421. package/dist/legacy/prism-gml-js.0994258c6d8e2287.js.map +1 -0
  422. package/dist/legacy/prism-gn-js.3e89d9138f84c1b0.js +2 -0
  423. package/dist/legacy/prism-gn-js.3e89d9138f84c1b0.js.map +1 -0
  424. package/dist/legacy/prism-go-js.6ff00572fcf0248d.js +2 -0
  425. package/dist/legacy/prism-go-js.6ff00572fcf0248d.js.map +1 -0
  426. package/dist/legacy/prism-go-module-js.0b3ceaec32ceba28.js +2 -0
  427. package/dist/legacy/prism-go-module-js.0b3ceaec32ceba28.js.map +1 -0
  428. package/dist/legacy/prism-gradle-js.05e27f1b9f5aced9.js +2 -0
  429. package/dist/legacy/prism-gradle-js.05e27f1b9f5aced9.js.map +1 -0
  430. package/dist/legacy/prism-graphql-js.f5013759dfa50a6b.js +2 -0
  431. package/dist/legacy/prism-graphql-js.f5013759dfa50a6b.js.map +1 -0
  432. package/dist/legacy/prism-groovy-js.a76fbe16dce5080a.js +2 -0
  433. package/dist/legacy/prism-groovy-js.a76fbe16dce5080a.js.map +1 -0
  434. package/dist/legacy/prism-haml-js.37538cf91297d8fc.js +2 -0
  435. package/dist/legacy/prism-haml-js.37538cf91297d8fc.js.map +1 -0
  436. package/dist/legacy/prism-handlebars-js.e1a9771eed504377.js +2 -0
  437. package/dist/legacy/prism-handlebars-js.e1a9771eed504377.js.map +1 -0
  438. package/dist/legacy/prism-haskell-js.3627e0915562ca44.js +2 -0
  439. package/dist/legacy/prism-haskell-js.3627e0915562ca44.js.map +1 -0
  440. package/dist/legacy/prism-haxe-js.bec5ae3678655676.js +2 -0
  441. package/dist/legacy/prism-haxe-js.bec5ae3678655676.js.map +1 -0
  442. package/dist/legacy/prism-hcl-js.30dbcbae990bc966.js +2 -0
  443. package/dist/legacy/prism-hcl-js.30dbcbae990bc966.js.map +1 -0
  444. package/dist/legacy/prism-hlsl-js.8cebde13f4530830.js +2 -0
  445. package/dist/legacy/prism-hlsl-js.8cebde13f4530830.js.map +1 -0
  446. package/dist/legacy/prism-hoon-js.64cfefa2d9e8a2cd.js +2 -0
  447. package/dist/legacy/prism-hoon-js.64cfefa2d9e8a2cd.js.map +1 -0
  448. package/dist/legacy/prism-hpkp-js.fe3c755cead4261f.js +2 -0
  449. package/dist/legacy/prism-hpkp-js.fe3c755cead4261f.js.map +1 -0
  450. package/dist/legacy/prism-hsts-js.fd4774b39a052d56.js +2 -0
  451. package/dist/legacy/prism-hsts-js.fd4774b39a052d56.js.map +1 -0
  452. package/dist/legacy/prism-http-js.6a1674b96913e1d2.js +2 -0
  453. package/dist/legacy/prism-http-js.6a1674b96913e1d2.js.map +1 -0
  454. package/dist/legacy/prism-ichigojam-js.2aa0fb0434dc0ba0.js +2 -0
  455. package/dist/legacy/prism-ichigojam-js.2aa0fb0434dc0ba0.js.map +1 -0
  456. package/dist/legacy/prism-icon-js.dae48fdeb769c90c.js +2 -0
  457. package/dist/legacy/prism-icon-js.dae48fdeb769c90c.js.map +1 -0
  458. package/dist/legacy/prism-icu-message-format-js.b01a3652df333f15.js +2 -0
  459. package/dist/legacy/prism-icu-message-format-js.b01a3652df333f15.js.map +1 -0
  460. package/dist/legacy/prism-idris-js.4915cbf2aaf1e259.js +2 -0
  461. package/dist/legacy/prism-idris-js.4915cbf2aaf1e259.js.map +1 -0
  462. package/dist/legacy/prism-iecst-js.f79f065cbe6d9ff9.js +2 -0
  463. package/dist/legacy/prism-iecst-js.f79f065cbe6d9ff9.js.map +1 -0
  464. package/dist/legacy/prism-ignore-js.5fe2f6385139746c.js +2 -0
  465. package/dist/legacy/prism-ignore-js.5fe2f6385139746c.js.map +1 -0
  466. package/dist/legacy/prism-inform7-js.4aba19ba0de6fd81.js +2 -0
  467. package/dist/legacy/prism-inform7-js.4aba19ba0de6fd81.js.map +1 -0
  468. package/dist/legacy/prism-ini-js.da6b4bd40630e6f0.js +2 -0
  469. package/dist/legacy/prism-ini-js.da6b4bd40630e6f0.js.map +1 -0
  470. package/dist/legacy/prism-io-js.e2e5ed7961fe03a2.js +2 -0
  471. package/dist/legacy/prism-io-js.e2e5ed7961fe03a2.js.map +1 -0
  472. package/dist/legacy/prism-j-js.f1fa07dada3cfced.js +2 -0
  473. package/dist/legacy/prism-j-js.f1fa07dada3cfced.js.map +1 -0
  474. package/dist/legacy/prism-java-js.08e5feb02674c6c7.js +2 -0
  475. package/dist/legacy/prism-java-js.08e5feb02674c6c7.js.map +1 -0
  476. package/dist/legacy/prism-javadoc-js.72c60ee45b7040a2.js +2 -0
  477. package/dist/legacy/prism-javadoc-js.72c60ee45b7040a2.js.map +1 -0
  478. package/dist/legacy/prism-javadoclike-js.dc334a342b6020dd.js +2 -0
  479. package/dist/legacy/prism-javadoclike-js.dc334a342b6020dd.js.map +1 -0
  480. package/dist/legacy/prism-javascript-js.e251785abe437649.js +2 -0
  481. package/dist/legacy/prism-javascript-js.e251785abe437649.js.map +1 -0
  482. package/dist/legacy/prism-javastacktrace-js.16d656522cf7e42d.js +2 -0
  483. package/dist/legacy/prism-javastacktrace-js.16d656522cf7e42d.js.map +1 -0
  484. package/dist/legacy/prism-jexl-js.bc969a596de4e5af.js +2 -0
  485. package/dist/legacy/prism-jexl-js.bc969a596de4e5af.js.map +1 -0
  486. package/dist/legacy/prism-jolie-js.33b7f101d659d811.js +2 -0
  487. package/dist/legacy/prism-jolie-js.33b7f101d659d811.js.map +1 -0
  488. package/dist/legacy/prism-jq-js.0ea442fd843ad9f8.js +2 -0
  489. package/dist/legacy/prism-jq-js.0ea442fd843ad9f8.js.map +1 -0
  490. package/dist/legacy/prism-js-extras-js.6e073fde2bdf4b3d.js +2 -0
  491. package/dist/legacy/prism-js-extras-js.6e073fde2bdf4b3d.js.map +1 -0
  492. package/dist/legacy/prism-js-templates-js.9ef27e25ceedd205.js +2 -0
  493. package/dist/legacy/prism-js-templates-js.9ef27e25ceedd205.js.map +1 -0
  494. package/dist/legacy/prism-jsdoc-js.065483e1ad0355e4.js +2 -0
  495. package/dist/legacy/prism-jsdoc-js.065483e1ad0355e4.js.map +1 -0
  496. package/dist/legacy/prism-json-js.d0f7c8e494205056.js +2 -0
  497. package/dist/legacy/prism-json-js.d0f7c8e494205056.js.map +1 -0
  498. package/dist/legacy/prism-json5-js.7fc8011683fbb461.js +2 -0
  499. package/dist/legacy/prism-json5-js.7fc8011683fbb461.js.map +1 -0
  500. package/dist/legacy/prism-jsonp-js.fa6e2ee38cb730e8.js +2 -0
  501. package/dist/legacy/prism-jsonp-js.fa6e2ee38cb730e8.js.map +1 -0
  502. package/dist/legacy/prism-jsstacktrace-js.f57174f8d31822dd.js +2 -0
  503. package/dist/legacy/prism-jsstacktrace-js.f57174f8d31822dd.js.map +1 -0
  504. package/dist/legacy/prism-jsx-js.94701e2a3b086ae4.js +2 -0
  505. package/dist/legacy/prism-jsx-js.94701e2a3b086ae4.js.map +1 -0
  506. package/dist/legacy/prism-julia-js.108bb422cf317785.js +2 -0
  507. package/dist/legacy/prism-julia-js.108bb422cf317785.js.map +1 -0
  508. package/dist/legacy/prism-keepalived-js.e3dd9ca0053167fc.js +2 -0
  509. package/dist/legacy/prism-keepalived-js.e3dd9ca0053167fc.js.map +1 -0
  510. package/dist/legacy/prism-keyman-js.9cc1e659dba2b684.js +2 -0
  511. package/dist/legacy/prism-keyman-js.9cc1e659dba2b684.js.map +1 -0
  512. package/dist/legacy/prism-kotlin-js.6be2ab600d7645f7.js +2 -0
  513. package/dist/legacy/prism-kotlin-js.6be2ab600d7645f7.js.map +1 -0
  514. package/dist/legacy/prism-kumir-js.3a9a46af0f9bbf3b.js +2 -0
  515. package/dist/legacy/prism-kumir-js.3a9a46af0f9bbf3b.js.map +1 -0
  516. package/dist/legacy/prism-kusto-js.bce9fde2205047d9.js +2 -0
  517. package/dist/legacy/prism-kusto-js.bce9fde2205047d9.js.map +1 -0
  518. package/dist/legacy/prism-latex-js.d3fa74bc54ac219d.js +2 -0
  519. package/dist/legacy/prism-latex-js.d3fa74bc54ac219d.js.map +1 -0
  520. package/dist/legacy/prism-latte-js.bf6c471a6748937b.js +2 -0
  521. package/dist/legacy/prism-latte-js.bf6c471a6748937b.js.map +1 -0
  522. package/dist/legacy/prism-less-js.59746649c545800f.js +2 -0
  523. package/dist/legacy/prism-less-js.59746649c545800f.js.map +1 -0
  524. package/dist/legacy/prism-lilypond-js.3d69618fe9236e25.js +2 -0
  525. package/dist/legacy/prism-lilypond-js.3d69618fe9236e25.js.map +1 -0
  526. package/dist/legacy/prism-linker-script-js.d90196ac2f9aab45.js +2 -0
  527. package/dist/legacy/prism-linker-script-js.d90196ac2f9aab45.js.map +1 -0
  528. package/dist/legacy/prism-liquid-js.40e5a33158a20784.js +2 -0
  529. package/dist/legacy/prism-liquid-js.40e5a33158a20784.js.map +1 -0
  530. package/dist/legacy/prism-lisp-js.5d696adcdb25a133.js +2 -0
  531. package/dist/legacy/prism-lisp-js.5d696adcdb25a133.js.map +1 -0
  532. package/dist/legacy/prism-livescript-js.c5706c6b0607bd28.js +2 -0
  533. package/dist/legacy/prism-livescript-js.c5706c6b0607bd28.js.map +1 -0
  534. package/dist/legacy/prism-llvm-js.0903041f8dacb466.js +2 -0
  535. package/dist/legacy/prism-llvm-js.0903041f8dacb466.js.map +1 -0
  536. package/dist/legacy/prism-log-js.86b7ed6d3a0b2391.js +2 -0
  537. package/dist/legacy/prism-log-js.86b7ed6d3a0b2391.js.map +1 -0
  538. package/dist/legacy/prism-lolcode-js.447f1ee4d1b435f9.js +2 -0
  539. package/dist/legacy/prism-lolcode-js.447f1ee4d1b435f9.js.map +1 -0
  540. package/dist/legacy/prism-lua-js.031d6195024ea2fc.js +2 -0
  541. package/dist/legacy/prism-lua-js.031d6195024ea2fc.js.map +1 -0
  542. package/dist/legacy/prism-magma-js.ee053c202ca13c2f.js +2 -0
  543. package/dist/legacy/prism-magma-js.ee053c202ca13c2f.js.map +1 -0
  544. package/dist/legacy/prism-makefile-js.292c33b60f02ed0f.js +2 -0
  545. package/dist/legacy/prism-makefile-js.292c33b60f02ed0f.js.map +1 -0
  546. package/dist/legacy/prism-markdown-js.fe293c4ea58aa269.js +2 -0
  547. package/dist/legacy/prism-markdown-js.fe293c4ea58aa269.js.map +1 -0
  548. package/dist/legacy/prism-markup-js.4d87bbbbd6964c38.js +2 -0
  549. package/dist/legacy/prism-markup-js.4d87bbbbd6964c38.js.map +1 -0
  550. package/dist/legacy/prism-markup-templating-js.00588db99852e988.js +2 -0
  551. package/dist/legacy/prism-markup-templating-js.00588db99852e988.js.map +1 -0
  552. package/dist/legacy/prism-mata-js.ad16bd5d47e92730.js +2 -0
  553. package/dist/legacy/prism-mata-js.ad16bd5d47e92730.js.map +1 -0
  554. package/dist/legacy/prism-matlab-js.6386bc7bad3554e5.js +2 -0
  555. package/dist/legacy/prism-matlab-js.6386bc7bad3554e5.js.map +1 -0
  556. package/dist/legacy/prism-maxscript-js.1b388abdfef0caeb.js +2 -0
  557. package/dist/legacy/prism-maxscript-js.1b388abdfef0caeb.js.map +1 -0
  558. package/dist/legacy/prism-mel-js.91bee55a86c1aa4f.js +2 -0
  559. package/dist/legacy/prism-mel-js.91bee55a86c1aa4f.js.map +1 -0
  560. package/dist/legacy/prism-mermaid-js.d06ecf7cfa667b31.js +2 -0
  561. package/dist/legacy/prism-mermaid-js.d06ecf7cfa667b31.js.map +1 -0
  562. package/dist/legacy/prism-metafont-js.a8f425d4080ffc79.js +2 -0
  563. package/dist/legacy/prism-metafont-js.a8f425d4080ffc79.js.map +1 -0
  564. package/dist/legacy/prism-mizar-js.2aeac7e8424f0509.js +2 -0
  565. package/dist/legacy/prism-mizar-js.2aeac7e8424f0509.js.map +1 -0
  566. package/dist/legacy/prism-mongodb-js.63eadb7c58929e0e.js +2 -0
  567. package/dist/legacy/prism-mongodb-js.63eadb7c58929e0e.js.map +1 -0
  568. package/dist/legacy/prism-monkey-js.3921ae4f5c0d0ed6.js +2 -0
  569. package/dist/legacy/prism-monkey-js.3921ae4f5c0d0ed6.js.map +1 -0
  570. package/dist/legacy/prism-moonscript-js.be4625776a3ca854.js +2 -0
  571. package/dist/legacy/prism-moonscript-js.be4625776a3ca854.js.map +1 -0
  572. package/dist/legacy/prism-n1ql-js.fa039f03ad55a259.js +2 -0
  573. package/dist/legacy/prism-n1ql-js.fa039f03ad55a259.js.map +1 -0
  574. package/dist/legacy/prism-n4js-js.239f7d8cb54eea69.js +2 -0
  575. package/dist/legacy/prism-n4js-js.239f7d8cb54eea69.js.map +1 -0
  576. package/dist/legacy/prism-nand2tetris-hdl-js.c00937e376f9b93d.js +2 -0
  577. package/dist/legacy/prism-nand2tetris-hdl-js.c00937e376f9b93d.js.map +1 -0
  578. package/dist/legacy/prism-naniscript-js.9556979b26b23f5c.js +2 -0
  579. package/dist/legacy/prism-naniscript-js.9556979b26b23f5c.js.map +1 -0
  580. package/dist/legacy/prism-nasm-js.5da6706a1ab651cd.js +2 -0
  581. package/dist/legacy/prism-nasm-js.5da6706a1ab651cd.js.map +1 -0
  582. package/dist/legacy/prism-neon-js.1b90e020131bf772.js +2 -0
  583. package/dist/legacy/prism-neon-js.1b90e020131bf772.js.map +1 -0
  584. package/dist/legacy/prism-nevod-js.6a70026ac9b42da8.js +2 -0
  585. package/dist/legacy/prism-nevod-js.6a70026ac9b42da8.js.map +1 -0
  586. package/dist/legacy/prism-nginx-js.0484ee4caa040484.js +2 -0
  587. package/dist/legacy/prism-nginx-js.0484ee4caa040484.js.map +1 -0
  588. package/dist/legacy/prism-nim-js.611fccfe4aba6d6e.js +2 -0
  589. package/dist/legacy/prism-nim-js.611fccfe4aba6d6e.js.map +1 -0
  590. package/dist/legacy/prism-nix-js.febdcdd61c71f619.js +2 -0
  591. package/dist/legacy/prism-nix-js.febdcdd61c71f619.js.map +1 -0
  592. package/dist/legacy/prism-nsis-js.3e5496e056e9db9a.js +2 -0
  593. package/dist/legacy/prism-nsis-js.3e5496e056e9db9a.js.map +1 -0
  594. package/dist/legacy/prism-objectivec-js.180434ce6054548c.js +2 -0
  595. package/dist/legacy/prism-objectivec-js.180434ce6054548c.js.map +1 -0
  596. package/dist/legacy/prism-ocaml-js.bf9dcf57f9a29a39.js +2 -0
  597. package/dist/legacy/prism-ocaml-js.bf9dcf57f9a29a39.js.map +1 -0
  598. package/dist/legacy/prism-odin-js.7b721e3d1b684659.js +2 -0
  599. package/dist/legacy/prism-odin-js.7b721e3d1b684659.js.map +1 -0
  600. package/dist/legacy/prism-opencl-js.13b4b9d4f4f39118.js +2 -0
  601. package/dist/legacy/prism-opencl-js.13b4b9d4f4f39118.js.map +1 -0
  602. package/dist/legacy/prism-openqasm-js.a4832007c207bb7c.js +2 -0
  603. package/dist/legacy/prism-openqasm-js.a4832007c207bb7c.js.map +1 -0
  604. package/dist/legacy/prism-oz-js.a68b61457999f162.js +2 -0
  605. package/dist/legacy/prism-oz-js.a68b61457999f162.js.map +1 -0
  606. package/dist/legacy/prism-parigp-js.813837fb2cb3848e.js +2 -0
  607. package/dist/legacy/prism-parigp-js.813837fb2cb3848e.js.map +1 -0
  608. package/dist/legacy/prism-parser-js.d861ed26358be268.js +2 -0
  609. package/dist/legacy/prism-parser-js.d861ed26358be268.js.map +1 -0
  610. package/dist/legacy/prism-pascal-js.b8a48e4dc166fbbd.js +2 -0
  611. package/dist/legacy/prism-pascal-js.b8a48e4dc166fbbd.js.map +1 -0
  612. package/dist/legacy/prism-pascaligo-js.5e8c26d142440a80.js +2 -0
  613. package/dist/legacy/prism-pascaligo-js.5e8c26d142440a80.js.map +1 -0
  614. package/dist/legacy/prism-pcaxis-js.7a9e5ead89f56c03.js +2 -0
  615. package/dist/legacy/prism-pcaxis-js.7a9e5ead89f56c03.js.map +1 -0
  616. package/dist/legacy/prism-peoplecode-js.5613e8087b187bf6.js +2 -0
  617. package/dist/legacy/prism-peoplecode-js.5613e8087b187bf6.js.map +1 -0
  618. package/dist/legacy/prism-perl-js.1e17cfcc71265946.js +2 -0
  619. package/dist/legacy/prism-perl-js.1e17cfcc71265946.js.map +1 -0
  620. package/dist/legacy/prism-php-extras-js.06a2919dbe250e23.js +2 -0
  621. package/dist/legacy/prism-php-extras-js.06a2919dbe250e23.js.map +1 -0
  622. package/dist/legacy/prism-php-js.435cbf9498304998.js +2 -0
  623. package/dist/legacy/prism-php-js.435cbf9498304998.js.map +1 -0
  624. package/dist/legacy/prism-phpdoc-js.0794353f2fa78e23.js +2 -0
  625. package/dist/legacy/prism-phpdoc-js.0794353f2fa78e23.js.map +1 -0
  626. package/dist/legacy/prism-plant-uml-js.999f416e6ceae53d.js +2 -0
  627. package/dist/legacy/prism-plant-uml-js.999f416e6ceae53d.js.map +1 -0
  628. package/dist/legacy/prism-plsql-js.aca761297c65e09a.js +2 -0
  629. package/dist/legacy/prism-plsql-js.aca761297c65e09a.js.map +1 -0
  630. package/dist/legacy/prism-powerquery-js.5b2d5110420b095b.js +2 -0
  631. package/dist/legacy/prism-powerquery-js.5b2d5110420b095b.js.map +1 -0
  632. package/dist/legacy/prism-powershell-js.af32ca6d68ccf4c1.js +2 -0
  633. package/dist/legacy/prism-powershell-js.af32ca6d68ccf4c1.js.map +1 -0
  634. package/dist/legacy/prism-processing-js.7bc908bca60ac6e1.js +2 -0
  635. package/dist/legacy/prism-processing-js.7bc908bca60ac6e1.js.map +1 -0
  636. package/dist/legacy/prism-prolog-js.5ad7f0b82b6ec36a.js +2 -0
  637. package/dist/legacy/prism-prolog-js.5ad7f0b82b6ec36a.js.map +1 -0
  638. package/dist/legacy/prism-promql-js.e16a0c7364962916.js +2 -0
  639. package/dist/legacy/prism-promql-js.e16a0c7364962916.js.map +1 -0
  640. package/dist/legacy/prism-properties-js.bf2cc84f3aeb4e8f.js +2 -0
  641. package/dist/legacy/prism-properties-js.bf2cc84f3aeb4e8f.js.map +1 -0
  642. package/dist/legacy/prism-protobuf-js.d177d74142093b0e.js +2 -0
  643. package/dist/legacy/prism-protobuf-js.d177d74142093b0e.js.map +1 -0
  644. package/dist/legacy/prism-psl-js.e75925a939552751.js +2 -0
  645. package/dist/legacy/prism-psl-js.e75925a939552751.js.map +1 -0
  646. package/dist/legacy/prism-pug-js.49daa74b017e9fb1.js +2 -0
  647. package/dist/legacy/prism-pug-js.49daa74b017e9fb1.js.map +1 -0
  648. package/dist/legacy/prism-puppet-js.3fe0723b1b9458f2.js +2 -0
  649. package/dist/legacy/prism-puppet-js.3fe0723b1b9458f2.js.map +1 -0
  650. package/dist/legacy/prism-pure-js.2b4a82c560030738.js +2 -0
  651. package/dist/legacy/prism-pure-js.2b4a82c560030738.js.map +1 -0
  652. package/dist/legacy/prism-purebasic-js.191dd1fdc0b7cf0d.js +2 -0
  653. package/dist/legacy/prism-purebasic-js.191dd1fdc0b7cf0d.js.map +1 -0
  654. package/dist/legacy/prism-purescript-js.4624ef7517ad0ff1.js +2 -0
  655. package/dist/legacy/prism-purescript-js.4624ef7517ad0ff1.js.map +1 -0
  656. package/dist/legacy/prism-python-js.cb4d1a9e182afe18.js +2 -0
  657. package/dist/legacy/prism-python-js.cb4d1a9e182afe18.js.map +1 -0
  658. package/dist/legacy/prism-q-js.6359c5df0b96916f.js +2 -0
  659. package/dist/legacy/prism-q-js.6359c5df0b96916f.js.map +1 -0
  660. package/dist/legacy/prism-qml-js.8e38cd7d47f9eab5.js +2 -0
  661. package/dist/legacy/prism-qml-js.8e38cd7d47f9eab5.js.map +1 -0
  662. package/dist/legacy/prism-qore-js.5043bbcf57664121.js +2 -0
  663. package/dist/legacy/prism-qore-js.5043bbcf57664121.js.map +1 -0
  664. package/dist/legacy/prism-qsharp-js.a5ded5acb97a3974.js +2 -0
  665. package/dist/legacy/prism-qsharp-js.a5ded5acb97a3974.js.map +1 -0
  666. package/dist/legacy/prism-r-js.fe1da844a241a794.js +2 -0
  667. package/dist/legacy/prism-r-js.fe1da844a241a794.js.map +1 -0
  668. package/dist/legacy/prism-racket-js.243127a0136a1fd9.js +2 -0
  669. package/dist/legacy/prism-racket-js.243127a0136a1fd9.js.map +1 -0
  670. package/dist/legacy/prism-reason-js.ba13a72b96d8a9ac.js +2 -0
  671. package/dist/legacy/prism-reason-js.ba13a72b96d8a9ac.js.map +1 -0
  672. package/dist/legacy/prism-regex-js.c2195d9813a4be7e.js +2 -0
  673. package/dist/legacy/prism-regex-js.c2195d9813a4be7e.js.map +1 -0
  674. package/dist/legacy/prism-rego-js.ab4439321e07a8b6.js +2 -0
  675. package/dist/legacy/prism-rego-js.ab4439321e07a8b6.js.map +1 -0
  676. package/dist/legacy/prism-renpy-js.de68844599cc121a.js +2 -0
  677. package/dist/legacy/prism-renpy-js.de68844599cc121a.js.map +1 -0
  678. package/dist/legacy/prism-rescript-js.ca7c3bbe14e44230.js +2 -0
  679. package/dist/legacy/prism-rescript-js.ca7c3bbe14e44230.js.map +1 -0
  680. package/dist/legacy/prism-rest-js.e022765b3961a314.js +2 -0
  681. package/dist/legacy/prism-rest-js.e022765b3961a314.js.map +1 -0
  682. package/dist/legacy/prism-rip-js.0011c4887214795c.js +2 -0
  683. package/dist/legacy/prism-rip-js.0011c4887214795c.js.map +1 -0
  684. package/dist/legacy/prism-roboconf-js.9e0752108cad4d38.js +2 -0
  685. package/dist/legacy/prism-roboconf-js.9e0752108cad4d38.js.map +1 -0
  686. package/dist/legacy/prism-robotframework-js.5c1aba48dfdd6dd4.js +2 -0
  687. package/dist/legacy/prism-robotframework-js.5c1aba48dfdd6dd4.js.map +1 -0
  688. package/dist/legacy/prism-ruby-js.a2c474dae8a08d60.js +2 -0
  689. package/dist/legacy/prism-ruby-js.a2c474dae8a08d60.js.map +1 -0
  690. package/dist/legacy/prism-rust-js.ed4811231e33b6cf.js +2 -0
  691. package/dist/legacy/prism-rust-js.ed4811231e33b6cf.js.map +1 -0
  692. package/dist/legacy/prism-sas-js.1aec60cb4e1938db.js +2 -0
  693. package/dist/legacy/prism-sas-js.1aec60cb4e1938db.js.map +1 -0
  694. package/dist/legacy/prism-sass-js.8339b4a50eaab48c.js +2 -0
  695. package/dist/legacy/prism-sass-js.8339b4a50eaab48c.js.map +1 -0
  696. package/dist/legacy/prism-scala-js.2525c75befe236d7.js +2 -0
  697. package/dist/legacy/prism-scala-js.2525c75befe236d7.js.map +1 -0
  698. package/dist/legacy/prism-scheme-js.050b4b78e73e1679.js +2 -0
  699. package/dist/legacy/prism-scheme-js.050b4b78e73e1679.js.map +1 -0
  700. package/dist/legacy/prism-scss-js.1b71fbe5fd69036f.js +2 -0
  701. package/dist/legacy/prism-scss-js.1b71fbe5fd69036f.js.map +1 -0
  702. package/dist/legacy/prism-shell-session-js.cd8729fa376bfe4e.js +2 -0
  703. package/dist/legacy/prism-shell-session-js.cd8729fa376bfe4e.js.map +1 -0
  704. package/dist/legacy/prism-smali-js.1b6a3ec1244c8798.js +2 -0
  705. package/dist/legacy/prism-smali-js.1b6a3ec1244c8798.js.map +1 -0
  706. package/dist/legacy/prism-smalltalk-js.2d66de6e678a8c58.js +2 -0
  707. package/dist/legacy/prism-smalltalk-js.2d66de6e678a8c58.js.map +1 -0
  708. package/dist/legacy/prism-smarty-js.22878628b09727a7.js +2 -0
  709. package/dist/legacy/prism-smarty-js.22878628b09727a7.js.map +1 -0
  710. package/dist/legacy/prism-sml-js.c45681f2a0119b23.js +2 -0
  711. package/dist/legacy/prism-sml-js.c45681f2a0119b23.js.map +1 -0
  712. package/dist/legacy/prism-solidity-js.3eeccdf62d5596f1.js +2 -0
  713. package/dist/legacy/prism-solidity-js.3eeccdf62d5596f1.js.map +1 -0
  714. package/dist/legacy/prism-solution-file-js.428513372476e1ae.js +2 -0
  715. package/dist/legacy/prism-solution-file-js.428513372476e1ae.js.map +1 -0
  716. package/dist/legacy/prism-soy-js.f55903a765bf57a6.js +2 -0
  717. package/dist/legacy/prism-soy-js.f55903a765bf57a6.js.map +1 -0
  718. package/dist/legacy/prism-sparql-js.292f19bc602daf23.js +2 -0
  719. package/dist/legacy/prism-sparql-js.292f19bc602daf23.js.map +1 -0
  720. package/dist/legacy/prism-splunk-spl-js.1c70acbce581a142.js +2 -0
  721. package/dist/legacy/prism-splunk-spl-js.1c70acbce581a142.js.map +1 -0
  722. package/dist/legacy/prism-sqf-js.0365a3c1eb183c31.js +2 -0
  723. package/dist/legacy/prism-sqf-js.0365a3c1eb183c31.js.map +1 -0
  724. package/dist/legacy/prism-sql-js.aa988143d04c1024.js +2 -0
  725. package/dist/legacy/prism-sql-js.aa988143d04c1024.js.map +1 -0
  726. package/dist/legacy/prism-squirrel-js.6c0c312007ff7d21.js +2 -0
  727. package/dist/legacy/prism-squirrel-js.6c0c312007ff7d21.js.map +1 -0
  728. package/dist/legacy/prism-stan-js.42724899cfc2140e.js +2 -0
  729. package/dist/legacy/prism-stan-js.42724899cfc2140e.js.map +1 -0
  730. package/dist/legacy/prism-stata-js.23c79f03dc46757d.js +2 -0
  731. package/dist/legacy/prism-stata-js.23c79f03dc46757d.js.map +1 -0
  732. package/dist/legacy/prism-stylus-js.7c5fa156d5625740.js +2 -0
  733. package/dist/legacy/prism-stylus-js.7c5fa156d5625740.js.map +1 -0
  734. package/dist/legacy/prism-supercollider-js.c7ec7a57826b2d98.js +2 -0
  735. package/dist/legacy/prism-supercollider-js.c7ec7a57826b2d98.js.map +1 -0
  736. package/dist/legacy/prism-svelte.8808b28328514feb.js +2 -0
  737. package/dist/legacy/prism-svelte.8808b28328514feb.js.map +1 -0
  738. package/dist/legacy/prism-swift-js.9438b2e277552dae.js +2 -0
  739. package/dist/legacy/prism-swift-js.9438b2e277552dae.js.map +1 -0
  740. package/dist/legacy/prism-systemd-js.258be7845a3c6b87.js +2 -0
  741. package/dist/legacy/prism-systemd-js.258be7845a3c6b87.js.map +1 -0
  742. package/dist/legacy/prism-t4-cs-js.4b0d6520fc183e47.js +2 -0
  743. package/dist/legacy/prism-t4-cs-js.4b0d6520fc183e47.js.map +1 -0
  744. package/dist/legacy/prism-t4-templating-js.3a0120f84562367e.js +2 -0
  745. package/dist/legacy/prism-t4-templating-js.3a0120f84562367e.js.map +1 -0
  746. package/dist/legacy/prism-t4-vb-js.115a843f0c461599.js +2 -0
  747. package/dist/legacy/prism-t4-vb-js.115a843f0c461599.js.map +1 -0
  748. package/dist/legacy/prism-tap-js.4c1975d902bab61d.js +2 -0
  749. package/dist/legacy/prism-tap-js.4c1975d902bab61d.js.map +1 -0
  750. package/dist/legacy/prism-tcl-js.8855327658953e16.js +2 -0
  751. package/dist/legacy/prism-tcl-js.8855327658953e16.js.map +1 -0
  752. package/dist/legacy/prism-textile-js.700df6ff64f48377.js +2 -0
  753. package/dist/legacy/prism-textile-js.700df6ff64f48377.js.map +1 -0
  754. package/dist/legacy/prism-toml-js.98228f10959d0f23.js +2 -0
  755. package/dist/legacy/prism-toml-js.98228f10959d0f23.js.map +1 -0
  756. package/dist/legacy/prism-tremor-js.8242dc6874b6fe4e.js +2 -0
  757. package/dist/legacy/prism-tremor-js.8242dc6874b6fe4e.js.map +1 -0
  758. package/dist/legacy/prism-tsx-js.f3c5b6688d9b9dc8.js +2 -0
  759. package/dist/legacy/prism-tsx-js.f3c5b6688d9b9dc8.js.map +1 -0
  760. package/dist/legacy/prism-tt2-js.0982ae48a7fd1e94.js +2 -0
  761. package/dist/legacy/prism-tt2-js.0982ae48a7fd1e94.js.map +1 -0
  762. package/dist/legacy/prism-turtle-js.b7bd655eedca7dcb.js +2 -0
  763. package/dist/legacy/prism-turtle-js.b7bd655eedca7dcb.js.map +1 -0
  764. package/dist/legacy/prism-twig-js.abf10c80fd25a0c7.js +2 -0
  765. package/dist/legacy/prism-twig-js.abf10c80fd25a0c7.js.map +1 -0
  766. package/dist/legacy/prism-typescript-js.8fb7a00ddf043946.js +2 -0
  767. package/dist/legacy/prism-typescript-js.8fb7a00ddf043946.js.map +1 -0
  768. package/dist/legacy/prism-typoscript-js.2d48ecd06922462e.js +2 -0
  769. package/dist/legacy/prism-typoscript-js.2d48ecd06922462e.js.map +1 -0
  770. package/dist/legacy/prism-unrealscript-js.39d4931dd098c82d.js +2 -0
  771. package/dist/legacy/prism-unrealscript-js.39d4931dd098c82d.js.map +1 -0
  772. package/dist/legacy/prism-uorazor-js.fd424c571a35c871.js +2 -0
  773. package/dist/legacy/prism-uorazor-js.fd424c571a35c871.js.map +1 -0
  774. package/dist/legacy/prism-uri-js.4e41435c4882e91c.js +2 -0
  775. package/dist/legacy/prism-uri-js.4e41435c4882e91c.js.map +1 -0
  776. package/dist/legacy/prism-v-js.653f893549574093.js +2 -0
  777. package/dist/legacy/prism-v-js.653f893549574093.js.map +1 -0
  778. package/dist/legacy/prism-vala-js.ba6d34d3c03151c6.js +2 -0
  779. package/dist/legacy/prism-vala-js.ba6d34d3c03151c6.js.map +1 -0
  780. package/dist/legacy/prism-vbnet-js.9f7cc80e2039017b.js +2 -0
  781. package/dist/legacy/prism-vbnet-js.9f7cc80e2039017b.js.map +1 -0
  782. package/dist/legacy/prism-velocity-js.78a5d47cfa1b2067.js +2 -0
  783. package/dist/legacy/prism-velocity-js.78a5d47cfa1b2067.js.map +1 -0
  784. package/dist/legacy/prism-verilog-js.d3f4c602d10aa668.js +2 -0
  785. package/dist/legacy/prism-verilog-js.d3f4c602d10aa668.js.map +1 -0
  786. package/dist/legacy/prism-vhdl-js.7bae14df05100493.js +2 -0
  787. package/dist/legacy/prism-vhdl-js.7bae14df05100493.js.map +1 -0
  788. package/dist/legacy/prism-vim-js.afbf3d103ca3f5c0.js +2 -0
  789. package/dist/legacy/prism-vim-js.afbf3d103ca3f5c0.js.map +1 -0
  790. package/dist/legacy/prism-visual-basic-js.48c86a976af34438.js +2 -0
  791. package/dist/legacy/prism-visual-basic-js.48c86a976af34438.js.map +1 -0
  792. package/dist/legacy/prism-warpscript-js.83f5e3804e80ef7d.js +2 -0
  793. package/dist/legacy/prism-warpscript-js.83f5e3804e80ef7d.js.map +1 -0
  794. package/dist/legacy/prism-wasm-js.40271b6ae29ccd13.js +2 -0
  795. package/dist/legacy/prism-wasm-js.40271b6ae29ccd13.js.map +1 -0
  796. package/dist/legacy/prism-web-idl-js.b70282f60143864d.js +2 -0
  797. package/dist/legacy/prism-web-idl-js.b70282f60143864d.js.map +1 -0
  798. package/dist/legacy/prism-wgsl-js.0f5f116222c70afc.js +2 -0
  799. package/dist/legacy/prism-wgsl-js.0f5f116222c70afc.js.map +1 -0
  800. package/dist/legacy/prism-wiki-js.23f96b369fed4c95.js +2 -0
  801. package/dist/legacy/prism-wiki-js.23f96b369fed4c95.js.map +1 -0
  802. package/dist/legacy/prism-wolfram-js.a1095f8e8711bab2.js +2 -0
  803. package/dist/legacy/prism-wolfram-js.a1095f8e8711bab2.js.map +1 -0
  804. package/dist/legacy/prism-wren-js.e6cfd49e178839f2.js +2 -0
  805. package/dist/legacy/prism-wren-js.e6cfd49e178839f2.js.map +1 -0
  806. package/dist/legacy/prism-xeora-js.391d93969f67a5ef.js +2 -0
  807. package/dist/legacy/prism-xeora-js.391d93969f67a5ef.js.map +1 -0
  808. package/dist/legacy/prism-xml-doc-js.7dd1eae5e2959c66.js +2 -0
  809. package/dist/legacy/prism-xml-doc-js.7dd1eae5e2959c66.js.map +1 -0
  810. package/dist/legacy/prism-xojo-js.7788e3f350026b0e.js +2 -0
  811. package/dist/legacy/prism-xojo-js.7788e3f350026b0e.js.map +1 -0
  812. package/dist/legacy/prism-xquery-js.0f78f65669a0036c.js +2 -0
  813. package/dist/legacy/prism-xquery-js.0f78f65669a0036c.js.map +1 -0
  814. package/dist/legacy/prism-yaml-js.aa9c12071c87375e.js +2 -0
  815. package/dist/legacy/prism-yaml-js.aa9c12071c87375e.js.map +1 -0
  816. package/dist/legacy/prism-yang-js.47db12e4f855f35b.js +2 -0
  817. package/dist/legacy/prism-yang-js.47db12e4f855f35b.js.map +1 -0
  818. package/dist/legacy/prism-zig-js.e8f80dce8ef78edb.js +2 -0
  819. package/dist/legacy/prism-zig-js.e8f80dce8ef78edb.js.map +1 -0
  820. package/dist/legacy/progress-check.04aea576a79527bc.svg +1 -0
  821. package/dist/legacy/progress-helper.6955282169495707.svg +1 -0
  822. package/dist/legacy/question-mark.423ba48d7301b007.svg +1 -0
  823. package/dist/legacy/queue.87b15609b41689ef.svg +3 -0
  824. package/dist/legacy/queued.14bb12453dfaadb3.svg +3 -0
  825. package/dist/legacy/quote.3ae06798cc589899.svg +3 -0
  826. package/dist/legacy/return.3934eafaaf18c979.svg +10 -0
  827. package/dist/legacy/safari.914bc957b75d733e.svg +1 -0
  828. package/dist/legacy/samsunginternet.6d98cb78e846f96b.svg +1 -0
  829. package/dist/legacy/scrim-bg.27f047d7e991dbe9.png +0 -0
  830. package/dist/legacy/scrim-hexagons.e59318adb5550050.svg +1 -0
  831. package/dist/legacy/scrimba-logo.0c5b5b4efd2b23dc.svg +1 -0
  832. package/dist/legacy/search.1a354d71e7a983d3.svg +4 -0
  833. package/dist/legacy/send.97ab75f4a3d4d2ea.svg +1 -0
  834. package/dist/legacy/server.482d6fe933e698c8.svg +1 -0
  835. package/dist/legacy/sidebar-filled.473e64fc5706119d.svg +9 -0
  836. package/dist/legacy/sidebar.f5c855c1f43aea2c.svg +6 -0
  837. package/dist/legacy/simple-firefox.a8097d7ed48625a7.svg +3 -0
  838. package/dist/legacy/small-arrow.7688fc1262388c91.svg +3 -0
  839. package/dist/legacy/star-filled.c9db99aeb16b1913.svg +10 -0
  840. package/dist/legacy/star.ad1e866563e32428.svg +10 -0
  841. package/dist/legacy/stats.json +56 -0
  842. package/dist/legacy/theme-dark.c4ed806b135c790e.svg +3 -0
  843. package/dist/legacy/theme-light.cf31f079f9e6e27c.svg +3 -0
  844. package/dist/legacy/theme-os-default.935f36dac65cabef.svg +10 -0
  845. package/dist/legacy/thumbs-down.6a5c08eb98ba1cad.svg +2 -0
  846. package/dist/legacy/thumbs-up.74cfbf8161e315db.svg +1 -0
  847. package/dist/legacy/trash-filled.08d1d96014b1fc95.svg +1 -0
  848. package/dist/legacy/trash.7f3db910c0f027df.svg +16 -0
  849. package/dist/legacy/twitter-x.35b91a4e4b88a724.svg +1 -0
  850. package/dist/legacy/unknown.48fb1303fdffa5de.svg +3 -0
  851. package/dist/legacy/updates.d204012185fe24de.png +0 -0
  852. package/dist/legacy/warning.9b94fc66d43115ba.svg +5 -0
  853. package/dist/legacy/webview.3abdc5c7966181b2.svg +1 -0
  854. package/dist/legacy/yes-circle.ba7d3389a6ed23f8.svg +1 -0
  855. package/dist/legacy/yes.39b8ee80cd467e41.svg +3 -0
  856. package/dist/ssr/7293.js +1 -1
  857. package/dist/ssr/7293.js.map +1 -1
  858. package/dist/ssr/9551.js +4 -4
  859. package/dist/ssr/9551.js.map +1 -1
  860. package/dist/ssr/index.js +3 -3
  861. package/dist/ssr/index.js.map +1 -1
  862. package/dist/ssr/stats.json +4 -4
  863. package/package.json +2 -2
  864. package/release-please-config.json +15 -0
  865. package/dist/client/5837.f6d4c078ffaaacdd.js.map +0 -1
  866. package/dist/client/8551.e33e50ee71f44812.js.map +0 -1
  867. package/dist/client/9551.495c74e2c7129b38.js +0 -16
  868. package/dist/client/9551.495c74e2c7129b38.js.map +0 -1
  869. package/dist/client/styles-a11y-menu.18fa89054eb7202a.js +0 -1
  870. package/dist/client/styles-advertising.90a05252519044ac.js +0 -1
  871. package/dist/client/styles-article-footer.2f72d43869e2fc04.js +0 -1
  872. package/dist/client/styles-banner.6c855e9feea9c071.js +0 -1
  873. package/dist/client/styles-baseline-indicator.0ee33f4434f78f8f.js +0 -1
  874. package/dist/client/styles-blog-index.63718eed7985555b.js +0 -1
  875. package/dist/client/styles-blog-post.e369a7b6bd7ee253.js +0 -1
  876. package/dist/client/styles-breadcrumbs-bar.0e5432b97f042a51.js +0 -1
  877. package/dist/client/styles-breadcrumbs.ffcf3e7f6aca4842.js +0 -1
  878. package/dist/client/styles-button.9ef7569f2eb2448b.js +0 -1
  879. package/dist/client/styles-content-section.8d683bcfa074d863.js +0 -1
  880. package/dist/client/styles-contributor-spotlight.08b1f6ed86daacc7.js +0 -1
  881. package/dist/client/styles-curriculum-about.399ca9fae70cdf42.js +0 -1
  882. package/dist/client/styles-curriculum-default.1d95308cf28d0cbe.js +0 -1
  883. package/dist/client/styles-curriculum-landing.75954cd6cee0580a.js +0 -1
  884. package/dist/client/styles-curriculum-module.1e885d2e7fbd00c6.js +0 -1
  885. package/dist/client/styles-curriculum-overview.7efe6d339fda7e6e.js +0 -1
  886. package/dist/client/styles-featured-articles.8a24cb5b80c4c61a.js +0 -1
  887. package/dist/client/styles-footer.c6cf58283ef90c67.js +0 -1
  888. package/dist/client/styles-generic-about.7b141a48f0710a55.js +0 -1
  889. package/dist/client/styles-generic-community.ab65d4d721e3667b.js +0 -1
  890. package/dist/client/styles-generic-content.c29785e714ffd1f5.js +0 -1
  891. package/dist/client/styles-generic-layout.5f207ab849f99ea7.js +0 -1
  892. package/dist/client/styles-generic-sidebar.7d35fed4f9bc1d3f.js +0 -1
  893. package/dist/client/styles-generic-toc.75b9d25451f88334.js +0 -1
  894. package/dist/client/styles-heading-anchor.723d7995b359e9c5.js +0 -1
  895. package/dist/client/styles-homepage-body.7804e89b5b1f5fb0.js +0 -1
  896. package/dist/client/styles-homepage-contributor-spotlight.99a49f2c25da44d8.js +0 -1
  897. package/dist/client/styles-homepage-footer.6110ddf33f932da9.js +0 -1
  898. package/dist/client/styles-homepage-header.9869e99567417f85.js +0 -1
  899. package/dist/client/styles-homepage-hero.ca54e4bc0c0b420e.css.map +0 -1
  900. package/dist/client/styles-homepage-hero.f3b9f1a51df08e48.js +0 -1
  901. package/dist/client/styles-homepage.3d3ddf3a45d9fb9f.js +0 -1
  902. package/dist/client/styles-latest-news.3ee704eb566845af.js +0 -1
  903. package/dist/client/styles-left-sidebar.b58f94d7797b94a3.js +0 -1
  904. package/dist/client/styles-logo.15cde079ff7cf413.js +0 -1
  905. package/dist/client/styles-mandala.fbf5df30c1569b80.js +0 -1
  906. package/dist/client/styles-menu.432117f56550a699.js +0 -1
  907. package/dist/client/styles-navigation.ae5b4029d77512c1.js +0 -1
  908. package/dist/client/styles-not-found.bb24f3d7153e6384.js +0 -1
  909. package/dist/client/styles-observatory-landing.6ccab12860b70065.js +0 -1
  910. package/dist/client/styles-observatory-results.8debe68c8c1054ba.js +0 -1
  911. package/dist/client/styles-page-layout.3855b7fd5c6c1e0f.js +0 -1
  912. package/dist/client/styles-pagination.5241370112fc2d33.js +0 -1
  913. package/dist/client/styles-playground.5fd947e80ea7bbbc.js +0 -1
  914. package/dist/client/styles-recent-contributions.96ef61f802ae3c05.js +0 -1
  915. package/dist/client/styles-reference-layout.f70ad6dcede0cc3e.js +0 -1
  916. package/dist/client/styles-reference-toc.4955096ec82f0e5e.js +0 -1
  917. package/dist/client/styles-sandbox.33cffca9447c527a.js +0 -1
  918. package/dist/client/styles-translation-banner.e5c9497137fa78db.js +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"68.98f82bad90460bf6.js","sources":["webpack://@mdn/fred/./node_modules/@mdn/yari/client/src/ui/molecules/paginator/index.tsx","webpack://@mdn/fred/./node_modules/@mdn/yari/client/src/ui/atoms/search/index.tsx","webpack://@mdn/fred/./node_modules/@mdn/yari/client/src/plus/search-filter/index.tsx","webpack://@mdn/fred/./node_modules/@mdn/yari/client/src/plus/common/index.tsx","webpack://@mdn/fred/./node_modules/@mdn/yari/client/src/plus/updates/index.tsx","webpack://@mdn/fred/./node_modules/@mdn/yari/client/src/plus/updates/api.ts","webpack://@mdn/fred/./node_modules/@mdn/yari/client/src/ui/atoms/container/index.tsx"],"sourcesContent":["import { Link, useSearchParams } from \"react-router-dom\";\nimport { range } from \"../../../utils\";\n\nconst PARAM = \"page\";\n\nfunction PageLink({\n page,\n children,\n onClick,\n disabled,\n}: {\n page: number;\n children?: React.ReactNode;\n onClick?: (page: number) => unknown;\n disabled?: boolean;\n}) {\n const [searchParams, setSearchParams] = useSearchParams();\n\n return (\n <Link\n to={{}}\n className={disabled ? \"disabled\" : \"\"}\n onClick={(event) => {\n event.preventDefault();\n if (disabled) {\n return;\n }\n\n onClick && onClick(page);\n setSearchParams({\n ...Object.fromEntries(searchParams.entries()),\n [PARAM]: page.toString(),\n });\n\n window.setTimeout(() => document.documentElement.scrollTo());\n }}\n >\n {children || page}\n </Link>\n );\n}\n\nexport function Paginator({\n first = 1,\n last,\n endPadding = 2,\n middlePadding = 2,\n onChange,\n}: {\n first?: number;\n last: number;\n endPadding?: number;\n middlePadding?: number;\n onChange?: (page: number, oldPage: number) => unknown;\n}) {\n const [searchParams] = useSearchParams();\n const current = parseInt(searchParams.get(PARAM) || \"\", 10) || first;\n const middleFirst = Math.max(current - middlePadding, first);\n const middleLast = Math.min(middleFirst + middlePadding * 2 + 1, last + 1);\n const left = range(first, Math.min(endPadding, middleFirst));\n const middle = range(middleFirst, middleLast);\n const right = range(Math.max(last + 1 - endPadding, middleLast), last + 1);\n\n const onClick = (page: number) => {\n onChange && onChange(page, current);\n };\n\n if (first === last) {\n // There are no pages, so return nothing\n return <></>;\n }\n\n return (\n <div className=\"pagination\">\n <PageLink\n page={current - 1}\n onClick={onClick}\n disabled={current === first}\n >\n ← Previous\n </PageLink>\n {left.map((page) => (\n <PageLink key={page} page={page} onClick={onClick} />\n ))}\n {Boolean(left.length) && left[left.length - 1] + 1 !== middle[0] && \"…\"}\n {middle.map((page) =>\n current === page ? (\n <span className=\"current-page\" key={page}>\n {page}\n </span>\n ) : (\n <PageLink key={page} page={page} onClick={onClick} />\n )\n )}\n {Boolean(right.length) &&\n middle[middle.length - 1] + 1 !== right[0] &&\n \"…\"}\n {right.map((page) => (\n <PageLink key={page} page={page} onClick={onClick} />\n ))}\n <PageLink\n page={current + 1}\n onClick={onClick}\n disabled={current === last}\n >\n Next →\n </PageLink>\n </div>\n );\n}\n","import * as React from \"react\";\n\nimport \"./index.scss\";\n\ntype SearchProps = {\n name: string;\n placeholder?: string;\n value?: string;\n isDisabled?: boolean;\n onBlurHandler?: (event: React.FocusEvent<HTMLInputElement>) => void;\n onChangeHandler?: (event: React.ChangeEvent<HTMLInputElement>) => void;\n onClickHandler?: (event: React.MouseEvent<Element>) => void;\n onFocusHandler?: (event: React.FocusEvent<Element>) => void;\n onResetHandler?: () => void;\n};\n\nexport const Search = ({\n name,\n isDisabled = false,\n onBlurHandler,\n onChangeHandler,\n onClickHandler,\n onFocusHandler,\n onResetHandler,\n placeholder,\n value,\n}: SearchProps) => {\n return (\n <div className=\"search-form search-widget\">\n <input\n type=\"search\"\n className=\"search-input-field\"\n name={name}\n placeholder={placeholder}\n value={value}\n disabled={isDisabled}\n onBlur={(e) =>\n onBlurHandler &&\n !e.currentTarget.parentElement?.contains(e.relatedTarget) &&\n onBlurHandler(e)\n }\n onFocus={onFocusHandler}\n onChange={onChangeHandler}\n onClick={onClickHandler}\n />\n\n {onResetHandler && (\n <button\n type=\"button\"\n className=\"button action has-icon clear-search-button\"\n onClick={onResetHandler}\n >\n <span className=\"button-wrap\">\n <span className=\"icon icon-cancel\"></span>\n <span className=\"visually-hidden\">Clear search input</span>\n </span>\n </button>\n )}\n\n <button\n type=\"submit\"\n disabled={isDisabled}\n className=\"button action has-icon search-button search-filter-button\"\n >\n <span className=\"button-wrap\">\n <span className=\"icon icon-search\"></span>\n <span className=\"visually-hidden\">Search</span>\n </span>\n </button>\n </div>\n );\n};\n","import React, { useEffect, useState } from \"react\";\n\nimport { Button } from \"../../ui/atoms/button\";\nimport { Search } from \"../../ui/atoms/search\";\nimport { Submenu } from \"../../ui/molecules/submenu\";\n\nimport \"./index.scss\";\nimport { DropdownMenu, DropdownMenuWrapper } from \"../../ui/molecules/dropdown\";\nimport { useSearchParams } from \"react-router-dom\";\nimport { camelUnwrap } from \"../../utils\";\n\nexport type AnyFilter = SelectFilter;\n\ntype SelectFilter = {\n type: \"select\";\n key: string;\n label: string;\n multiple?: {\n encode: (...values: string[]) => string;\n decode: (value: string) => string[];\n };\n options: {\n label: string;\n value: string;\n isDefault?: true;\n }[];\n};\n\nexport type AnySort = { label: string; param: string; isDefault?: true };\n\nenum Params {\n PAGE = \"page\",\n QUERY = \"q\",\n}\n\nexport default function SearchFilter({\n isDisabled = false,\n filters = [],\n sorts = [],\n onChange = (key, newValue, oldValue) => {},\n}: {\n isDisabled?: boolean;\n filters?: AnyFilter[];\n sorts?: AnySort[];\n onChange?: (\n key: string,\n newValue: string | null,\n oldValue: string | null\n ) => unknown;\n}) {\n const [searchParams, setSearchParams] = useSearchParams();\n\n const [openFilter, setOpenFilter] = useState<string | null>(null);\n const [isSortingOpen, setIsSortingOpen] = useState<boolean>(false);\n const [terms, setTerms] = useState<string>(\"\");\n\n useEffect(\n () => setTerms(searchParams.get(Params.QUERY) ?? \"\"),\n [searchParams]\n );\n\n const sortedParams = (params: URLSearchParams): URLSearchParams =>\n new URLSearchParams(\n [...params.entries()].sort(([a], [b]) => a.localeCompare(b))\n );\n\n const replaceSearchParam = (key: string, value: string | null) => {\n setSearchParams((params) => {\n const oldValue = params.get(key);\n if (value) {\n params.set(key, value);\n } else {\n params.delete(key);\n }\n onChange(key, value, oldValue);\n params.delete(Params.PAGE);\n return sortedParams(params);\n });\n };\n\n const isDefaultFilter = (key: string, value: string) => {\n const filter = filters.find((filter) => filter.key === key) as AnyFilter;\n const option = filter.options.find((option) => option.value === value);\n return option?.isDefault ?? false;\n };\n\n const isCurrentFilter = (key: string, value: string) => {\n const currentValue = searchParams.get(key) ?? null;\n const filter = filters.find((filter) => filter.key === key) as AnyFilter;\n\n if (filter.multiple) {\n const values =\n typeof currentValue === \"string\"\n ? filter.multiple.decode(currentValue)\n : [];\n return values.includes(value);\n } else {\n return currentValue\n ? currentValue === value\n : isDefaultFilter(key, value);\n }\n };\n\n const isDefaultSort = (param: string) => {\n const sort = sorts.find((sort) => sort.param === param);\n return sort?.isDefault ?? false;\n };\n\n const isCurrentSort = (param: string) => {\n const [key, value] = param.split(\"=\", 2);\n const currentValue = searchParams.get(key) ?? null;\n return currentValue ? currentValue === value : isDefaultSort(param);\n };\n\n const toggleSelectedFilter = (key: string, value: string) => {\n const currentValue = searchParams.get(key) ?? null;\n const filter = filters.find((filter) => filter.key === key) as AnyFilter;\n let newValue: string | null;\n\n if (filter.multiple) {\n let values =\n typeof currentValue === \"string\"\n ? filter.multiple.decode(currentValue)\n : [];\n if (values.includes(value)) {\n values = values.filter((v) => v !== value);\n } else {\n values = [...values, value].sort();\n }\n if (values.length) {\n newValue = filter.multiple.encode(...values);\n } else {\n newValue = null;\n }\n } else if (isDefaultFilter(key, value)) {\n newValue = null;\n } else {\n newValue = currentValue !== value ? value : null;\n }\n\n replaceSearchParam(key, newValue);\n };\n\n const toggleSelectedSort = (param: string) => {\n const [key, value] = param.split(\"=\", 2);\n const newValue = isDefaultSort(param) ? \"\" : value;\n\n replaceSearchParam(key, newValue);\n };\n\n const setSelectedTerms = (newValue: string) => {\n replaceSearchParam(\"q\", newValue);\n };\n\n const filterMenus = filters.map((filter) => ({\n key: filter.key,\n label: filter.label,\n id: `filters-menu-${filter.key}`,\n items: filter.options.map((option) => ({\n component: () => (\n <Button\n isDisabled={isDisabled}\n type=\"action\"\n extraClasses={\n isCurrentFilter(filter.key, option.value) ? \"active-menu-item\" : \"\"\n }\n onClickHandler={() => {\n toggleSelectedFilter(filter.key, option.value);\n }}\n >\n {option.label}\n </Button>\n ),\n })),\n }));\n\n const sortMenu = {\n label: \"Sort\",\n id: \"sort-menu\",\n items: sorts.map((sort) => ({\n component: () => (\n <Button\n isDisabled={isDisabled}\n type=\"action\"\n extraClasses={isCurrentSort(sort.param) ? \"active-menu-item\" : \"\"}\n onClickHandler={() => toggleSelectedSort(sort.param)}\n >\n {sort.label}\n </Button>\n ),\n })),\n };\n\n return (\n <form\n className={`search-filter ${\n !filters.length ? \"inline-on-mobile\" : undefined\n }`}\n onSubmit={(event: React.FormEvent) => {\n event.preventDefault();\n setSelectedTerms(terms);\n }}\n >\n {filterMenus.map((filterMenu) => (\n <DropdownMenuWrapper\n key={filterMenu.key}\n className=\"search-filter-category search-filter-filters\"\n isOpen={openFilter === filterMenu.key}\n setIsOpen={(isOpen: boolean) =>\n setOpenFilter(isOpen ? filterMenu.key : null)\n }\n >\n <Button\n type=\"select\"\n aria-controls={filterMenu.id}\n aria-haspopup={\"menu\"}\n aria-expanded={openFilter === filterMenu.key}\n extraClasses={`${\n searchParams.get(filterMenu.key) ? \"active\" : \"\"\n } ${isDisabled ? \"inactive\" : \"\"}`}\n onClickHandler={() =>\n setOpenFilter(\n openFilter === filterMenu.key ? null : filterMenu.key\n )\n }\n isDisabled={filterMenu.items.length === 0}\n >\n {filterMenu.label}\n </Button>\n <DropdownMenu>\n <Submenu\n submenuId={filterMenu.id}\n menuEntry={filterMenu}\n isDropdown\n />\n </DropdownMenu>\n </DropdownMenuWrapper>\n ))}\n\n <Search\n isDisabled={isDisabled}\n name=\"terms\"\n placeholder=\"Filter by keyword\"\n value={terms}\n onBlurHandler={() =>\n // The updates event list uses `camelWrap()` to insert\n // zero-width spaces, so we `camelUnwrap()` them here.\n // Otherwise we would not find a copy-pasted feature.\n setSelectedTerms(camelUnwrap(terms))\n }\n onChangeHandler={(e) => setTerms(e.target.value)}\n onResetHandler={() => {\n setTerms(\"\");\n setSelectedTerms(\"\");\n }}\n />\n\n {sorts.length ? (\n <DropdownMenuWrapper\n className=\"search-filter-category search-filter-sorts\"\n isOpen={isSortingOpen}\n setIsOpen={setIsSortingOpen}\n >\n <Button\n type=\"select\"\n aria-controls={sortMenu.id}\n aria-haspopup={\"menu\"}\n aria-expanded={isSortingOpen || undefined}\n extraClasses={`${searchParams.get(\"sort\") ? \"active\" : \"\"} ${\n isDisabled ? \"inactive\" : \"\"\n }`}\n onClickHandler={() => {\n setIsSortingOpen(!isSortingOpen);\n }}\n >\n {sortMenu.label}\n </Button>\n <DropdownMenu>\n <Submenu submenuId={sortMenu.id} menuEntry={sortMenu} isDropdown />\n </DropdownMenu>\n </DropdownMenuWrapper>\n ) : null}\n </form>\n );\n}\n","import LogInLink from \"../../ui/atoms/login-link\";\nimport NoteCard from \"../../ui/molecules/notecards\";\nimport { getCategoryByPathname } from \"../../utils\";\n\nexport function NotSignedIn() {\n return (\n <div className=\"container\">\n <h3>You have not signed in</h3>\n <LogInLink />\n </div>\n );\n}\n\nexport function NotSubscriber() {\n return (\n <>\n <h2>You are signed in but not an active subscriber</h2>\n <LogInLink />\n </>\n );\n}\n\nexport function DataError({ error }: { error: Error }) {\n return (\n <NoteCard type=\"negative\">\n <h3>Server error</h3>\n <p>A server error occurred trying to get your collections.</p>\n <p>\n <code>{error.toString()}</code>\n </p>\n <a href={window.location.pathname}>Reload this page and try again.</a>\n </NoteCard>\n );\n}\n\nexport function _getIconLabel(url: string) {\n const category = getCategoryByPathname(url);\n\n if (!category) {\n return \"docs\";\n }\n\n if (category === \"javascript\") {\n return \"js\";\n }\n\n if (category === \"accessibility\") {\n return \"acc\";\n }\n\n return category;\n}\n","import Container from \"../../ui/atoms/container\";\n\nimport useSWR from \"swr\";\nimport { DocMetadata } from \"../../../../libs/types/document\";\nimport { FeatureId, MDN_PLUS_TITLE } from \"../../constants\";\nimport { useLocale, useScrollToTop, useViewedState } from \"../../hooks\";\nimport { Button } from \"../../ui/atoms/button\";\nimport { Icon } from \"../../ui/atoms/icon\";\nimport { Loading } from \"../../ui/atoms/loading\";\nimport Mandala from \"../../ui/molecules/mandala\";\nimport { Paginator } from \"../../ui/molecules/paginator\";\nimport BookmarkMenu from \"../../ui/organisms/article-actions/bookmark-menu\";\nimport { useUserData } from \"../../user-context\";\nimport { camelWrap, range } from \"../../utils\";\nimport { Event, Group, useUpdates } from \"./api\";\nimport \"./index.scss\";\nimport { useGleanClick } from \"../../telemetry/glean-context\";\nimport { PLUS_UPDATES } from \"../../telemetry/constants\";\nimport SearchFilter, { AnyFilter, AnySort } from \"../search-filter\";\nimport { useEffect, useState } from \"react\";\nimport { useSearchParams } from \"react-router-dom\";\nimport { DataError } from \"../common\";\nimport { useCollections } from \"../collections/api\";\nimport React from \"react\";\n\nconst LazyCompatTable = React.lazy(\n () => import(\"../../lit/compat/lazy-compat-table.js\")\n);\n\ntype EventWithStatus = Event & { status: Status };\ntype Status = \"added\" | \"removed\";\n\nconst CATEGORY_TO_NAME = {\n api: \"Web APIs\",\n css: \"CSS\",\n html: \"HTML\",\n http: \"HTTP\",\n javascript: \"JavaScript\",\n mathml: \"MathML\",\n svg: \"SVG\",\n webdriver: \"WebDriver\",\n webextensions: \"Web Extensions\",\n};\n\n// At some point, these should come from the API\n// or from @mdn/browser-compat-data directly.\nconst BROWSERS = {\n chrome: \"Chrome\",\n chrome_android: \"Chrome Android\",\n deno: \"Deno\",\n edge: \"Edge\",\n firefox: \"Firefox\",\n firefox_android: \"Firefox for Android\",\n ie: \"Internet Explorer\",\n nodejs: \"Node.js\",\n opera: \"Opera\",\n opera_android: \"Opera Android\",\n safari: \"Safari\",\n safari_ios: \"Safari on iOS\",\n samsunginternet_android: \"Samsung Internet\",\n webview_android: \"WebView Android\",\n};\n\nconst FILTERS: AnyFilter[] = [\n {\n type: \"select\",\n multiple: {\n encode: (...values: string[]) => values.join(\",\"),\n decode: (value: string) => value.split(\",\"),\n },\n label: \"Browser\",\n key: \"browsers\",\n options: Object.entries(BROWSERS).map(([value, label]) => ({\n label,\n value,\n })),\n },\n {\n type: \"select\",\n multiple: {\n encode: (...values: string[]) => values.join(\",\"),\n decode: (value: string) => value.split(\",\"),\n },\n label: \"Category\",\n key: \"category\",\n options: Object.entries(CATEGORY_TO_NAME)\n .sort(([, a], [, b]) => a.localeCompare(b))\n .map(([value, label]) => ({\n label,\n value,\n })),\n },\n {\n type: \"select\",\n label: \"Collections\",\n key: \"collections\",\n multiple: {\n encode: (...values: string[]) => values.join(\",\"),\n decode: (value: string) => value.split(\",\"),\n },\n options: [],\n },\n];\n\nconst SORTS: AnySort[] = [\n {\n label: \"Newest\",\n param: \"sort=desc\",\n isDefault: true,\n },\n {\n label: \"Oldest\",\n param: \"sort=asc\",\n },\n];\n\nexport default function Updates() {\n return <UpdatesLayout />;\n}\n\nconst useFilters = (canFilter: boolean) => {\n const [filters, setFilters] = useState(FILTERS);\n const { data, isLoading, error } = useCollections();\n useEffect(() => {\n if (!isLoading && data?.length && !error) {\n setFilters((old) =>\n old.map((val) => {\n if (val.key === \"collections\") {\n return {\n ...val,\n options: data\n ?.filter((collection) => collection.article_count > 0)\n .map((info) => {\n const label =\n info.name === \"Default\" ? \"Saved Articles\" : info.name;\n return {\n label,\n value: info.id,\n };\n }),\n };\n } else {\n return val;\n }\n })\n );\n }\n }, [isLoading, canFilter, data, error]);\n return filters;\n};\n\nfunction UpdatesLayout() {\n document.title = `Updates | ${MDN_PLUS_TITLE}`;\n useScrollToTop();\n const user = useUserData();\n const { data, error } = useUpdates();\n const gleanClick = useGleanClick();\n const [searchParams, setSearchParams] = useSearchParams();\n const { setViewed } = useViewedState();\n useEffect(() => setViewed(FeatureId.PLUS_UPDATES_V2));\n\n const hasFilters = [...searchParams.keys()].some((key) => key !== \"page\");\n\n const canFilter = user?.isAuthenticated === true;\n const filters = useFilters(canFilter);\n\n return (\n <div className=\"updates\">\n <header className=\"plus-header-mandala\">\n <Container>\n <h1>\n <div className=\"mandala-icon-wrapper\">\n <Mandala />\n <Icon name=\"bell-filled\" />\n </div>\n <span>Updates</span>\n </h1>\n <p>\n Stay up-to-date with the latest browser features.\n <br />\n <a\n href=\"https://survey.alchemer.com/s3/7149796/MDN-BCD-Updates\"\n target=\"_blank\"\n rel=\"noreferrer noopener\"\n className=\"external\"\n >\n We'd love to hear your feedback!\n </a>\n </p>\n </Container>\n </header>\n <Container>\n {canFilter && (\n <SearchFilter\n filters={filters}\n sorts={SORTS}\n isDisabled={!canFilter}\n onChange={(key, newValue, oldValue) =>\n gleanClick(\n `${PLUS_UPDATES.FILTER_CHANGE}_${key}: ${\n oldValue ?? \"(default)\"\n } -> ${newValue ?? \"(default)\"}`\n )\n }\n />\n )}\n\n {canFilter && hasFilters && (\n <Button\n type=\"action\"\n extraClasses=\"reset-filters\"\n onClickHandler={() => setSearchParams(\"\")}\n >\n Reset all filters\n </Button>\n )}\n\n {error && <DataError error={error} />}\n\n {data ? (\n <>\n {data.data.length ? (\n data.data.map((group) => (\n <GroupComponent\n key={group.browser + group.version}\n group={group}\n />\n ))\n ) : (\n <div className=\"notecard\">\n {hasFilters\n ? \"No updates match your filters.\"\n : \"No updates found.\"}\n </div>\n )}\n <Paginator\n last={data.last}\n onChange={(page, oldPage) =>\n gleanClick(`${PLUS_UPDATES.PAGE_CHANGE}: ${oldPage} -> ${page}`)\n }\n />\n </>\n ) : (\n <Loading />\n )}\n </Container>\n </div>\n );\n}\n\nfunction GroupComponent({ group }: { group: Group }) {\n const { release_date, events, browser, version, name } = group;\n const length = events.added.length + events.removed.length;\n const metadata = {\n icon: browserToIconName(browser),\n title: `${name} ${version}`,\n };\n\n const allEvents = [\n ...events.added.map((e) => ({ status: \"added\", ...e })),\n ...events.removed.map((e) => ({ status: \"removed\", ...e })),\n ].sort((a, b) => a.path.localeCompare(b.path)) as EventWithStatus[];\n\n return metadata ? (\n <div className=\"group\">\n <header>\n <Icon name={metadata.icon} />\n {metadata.title}\n <span className=\"number-badge\">\n {length} {length === 1 ? \"update\" : \"updates\"}\n </span>\n <time dateTime={release_date}>\n {new Date(release_date).toLocaleDateString(undefined, {\n dateStyle: \"medium\",\n })}\n </time>\n </header>\n {collapseEvents(allEvents).map((event) => (\n <EventComponent key={event.path} event={event} status={event.status} />\n ))}\n </div>\n ) : null;\n}\n\nfunction collapseEvents<T extends { path: string }>(events: T[]): T[] {\n return events.filter(\n (event) =>\n events.findIndex(\n (e) => e.path === event.path.split(\".\").slice(0, -1).join(\".\")\n ) === -1\n );\n}\n\nfunction EventComponent({ event, status }: { event: Event; status: Status }) {\n const [isOpen, setIsOpen] = useState(false);\n const [category, ...displayPath] = event.path.split(\".\");\n const engines = event.compat.engines;\n const gleanClick = useGleanClick();\n\n return (\n <details\n className={`category-${category}`}\n onToggle={({ target }) => {\n if (target instanceof HTMLDetailsElement) {\n setIsOpen(target.open);\n const source = target.open\n ? PLUS_UPDATES.EVENT_EXPAND\n : PLUS_UPDATES.EVENT_COLLAPSE;\n gleanClick(source);\n }\n }}\n >\n <summary>\n <code>{camelWrap(displayPath.join(\".\"))}</code>\n <i>{CATEGORY_TO_NAME[category]}</i>\n <EventStatus status={status} />\n {Boolean(engines.length) && (\n <span className=\"status\" title={`Supported in ${engines.join(\", \")}`}>\n <svg width=\"32\" height=\"9\" viewBox=\"0 0 32 9\" role=\"img\">\n {range(0, 3).map((n) => (\n <circle\n key={n}\n cx={4 + n * 12}\n cy=\"4.5\"\n r=\"4\"\n className={engines.length > n ? \"active\" : undefined}\n />\n ))}\n </svg>\n </span>\n )}\n <Icon name=\"chevron\" />\n </summary>\n {isOpen && <EventInnerComponent event={event} />}\n </details>\n );\n}\n\nfunction EventStatus({ status }: { status: Status }) {\n return <span className={`badge status-${status}`}>{status}</span>;\n}\n\nfunction EventInnerComponent({\n event: {\n path,\n compat: { mdn_url },\n },\n}: {\n event: Event;\n}) {\n const locale = useLocale();\n return (\n <div>\n <ArticleActions path={path} mdn_url={mdn_url} />\n <LazyCompatTable query={path} locale={locale} />\n </div>\n );\n}\n\nfunction ArticleActions({ path, mdn_url }: { path: string; mdn_url?: string }) {\n const userData = useUserData();\n const locale = useLocale();\n const url = mdn_url?.replace(\"https://developer.mozilla.org\", `/${locale}`);\n const searchUrl = `/${locale}/search?sort=relevance&locale=en-US${\n locale !== \"en-US\" ? `&locale=${locale}` : \"\"\n }&q=${encodeURIComponent(path)}`;\n const { data: doc } = useSWR<DocMetadata>(\n () => userData?.isAuthenticated && url && `${url}/metadata.json`,\n async (url) => {\n const response = await fetch(url);\n\n if (!response.ok) {\n throw Error(response.statusText);\n }\n\n return (await response.json()) as DocMetadata;\n },\n {\n revalidateIfStale: false,\n revalidateOnFocus: false,\n revalidateOnReconnect: false,\n }\n );\n\n return (\n <nav>\n <Button\n type=\"action\"\n icon={url ? \"external\" : \"search\"}\n size=\"small\"\n href={url || searchUrl}\n target=\"_blank\"\n extraClasses=\"link-button\"\n >\n {url ? \"See full article\" : \"Search for article\"}\n </Button>\n {url && (\n <>\n <BookmarkMenu doc={doc} />\n </>\n )}\n </nav>\n );\n}\n\nfunction browserToIconName(browser: string) {\n if (browser.startsWith(\"firefox\")) {\n return \"simple-firefox\";\n } else if (browser === \"webview_android\") {\n return \"webview\";\n } else if (browser === \"webview_ios\") {\n return \"safari\";\n } else {\n const browserStart = browser.split(\"_\")[0];\n return browserStart;\n }\n}\n","import useSWR from \"swr\";\nimport { useSearchParams } from \"react-router-dom\";\nimport { useUserData } from \"../../user-context\";\nimport { BCD_BASE_URL } from \"../../env\";\n\nexport interface Event {\n path: string;\n compat: {\n mdn_url?: string;\n source_file: string;\n spec_url?: string[];\n status: {\n deprecated: boolean;\n experimental: boolean;\n standard_track: boolean;\n };\n engines: string[];\n };\n}\n\nexport interface Group {\n browser: string;\n version: string;\n release_date: string;\n engine: string;\n engine_version: string;\n release_notes: string[];\n status: string;\n name: string;\n events: {\n added: Event[];\n removed: Event[];\n };\n}\n\ninterface Page {\n data: Group[];\n last: number;\n}\n\nfunction composeUrl({\n isAuthenticated,\n searchParams,\n}: {\n isAuthenticated: boolean;\n searchParams: URLSearchParams;\n}): string {\n let url = \"/api/v2/updates/\";\n let params = new URLSearchParams();\n\n for (const [key, value] of searchParams.entries()) {\n switch (key) {\n case \"page\":\n params.set(key, value);\n break;\n\n case \"collections\":\n if (isAuthenticated) {\n // Different endpoint for uncached personalized data.\n url += \"collections/\";\n params.set(key, value);\n }\n break;\n\n default:\n if (isAuthenticated) {\n params.set(key, value);\n }\n break;\n }\n }\n\n if ([...params.keys()].length) {\n url += `?${params.toString()}`;\n }\n\n return url;\n}\n\nexport function useUpdates() {\n const user = useUserData();\n const [searchParams] = useSearchParams();\n\n const url = composeUrl({\n isAuthenticated: user?.isAuthenticated || false,\n searchParams,\n });\n\n return useSWR(\n url,\n async (key) => {\n const res = await fetch(key);\n if (res.ok) {\n return (await res.json()) as Page;\n }\n if (res.status === 404) {\n return;\n }\n throw new Error(`${res.status}: ${res.statusText}`);\n },\n {\n revalidateOnFocus: false,\n revalidateIfStale: false,\n revalidateOnReconnect: false,\n }\n );\n}\n\nexport function useBCD(path: string) {\n return useSWR(\n `${BCD_BASE_URL}/bcd/api/v0/current/${path}.json`,\n async (key) => {\n const res = await fetch(key);\n if (res.ok) {\n return await res.json();\n }\n if (res.status === 404) {\n return;\n }\n throw new Error(`${res.status}: ${res.statusText}`);\n },\n {\n revalidateOnFocus: false,\n revalidateIfStale: false,\n revalidateOnReconnect: false,\n }\n );\n}\n","import \"./index.scss\";\n\nexport default function Container({\n children,\n extraClasses,\n optional,\n}: {\n children: React.ReactNode;\n extraClasses?: string;\n optional?: boolean;\n}) {\n return (\n <>\n {optional === true ? (\n <>{children}</>\n ) : (\n <div className={`container ${extraClasses || \"\"}`}>{children}</div>\n )}\n </>\n );\n}\n"],"names":["PARAM","PageLink","param","page","children","onClick","disabled","_useSearchParams","searchParams","setSearchParams","Link","event","Object","window","document","Paginator","first","last","endPadding","middlePadding","onChange","current","parseInt","middleFirst","Math","middleLast","left","range","middle","right","Boolean","Search","name","isDisabled","onBlurHandler","onChangeHandler","onClickHandler","onFocusHandler","onResetHandler","placeholder","value","e","_e_currentTarget_parentElement","SearchFilter","filters","sorts","key","newValue","oldValue","_useState","openFilter","setOpenFilter","_useState1","isSortingOpen","setIsSortingOpen","_useState2","terms","setTerms","useEffect","_searchParams_get","replaceSearchParam","params","URLSearchParams","a","b","isDefaultFilter","_option_isDefault","option","filter","isCurrentFilter","currentValue","values","isDefaultSort","_sort_isDefault","sort","isCurrentSort","_param_split","toggleSelectedFilter","_filter_multiple","v","toggleSelectedSort","setSelectedTerms","filterMenus","Button","sortMenu","undefined","filterMenu","DropdownMenuWrapper","isOpen","DropdownMenu","Submenu","camelUnwrap","DataError","error","NoteCard","LazyCompatTable","React","CATEGORY_TO_NAME","FILTERS","label","SORTS","Updates","UpdatesLayout","useFilters","canFilter","setFilters","_useCollections","data","isLoading","old","val","collection","info","MDN_PLUS_TITLE","useScrollToTop","user","url","useUserData","_useUpdates","composeUrl","isAuthenticated","_iteratorError","useSWR","res","fetch","Error","gleanClick","useGleanClick","setViewed","useViewedState","FeatureId","hasFilters","Container","Mandala","Icon","PLUS_UPDATES","group","GroupComponent","oldPage","Loading","browser","events","release_date","version","length","metadata","allEvents","Date","collapseEvents","EventComponent","status","setIsOpen","_event_path_split","category","displayPath","engines","target","HTMLDetailsElement","camelWrap","EventStatus","n","EventInnerComponent","path","mdn_url","locale","useLocale","ArticleActions","userData","searchUrl","encodeURIComponent","doc","_useSWR","response","BookmarkMenu","extraClasses","optional"],"mappings":"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"}
@@ -0,0 +1,178 @@
1
+ /*! For license information please see 6883.5757a779418effad.js.LICENSE.txt */
2
+ export const __webpack_ids__=["6883"];export const __webpack_modules__={44352:function(e,n,t){t.d(n,{Z:()=>tn});var r=t(87537),o=t.n(r),i=t(23645),A=t.n(i),a=t(61667),s=t.n(a),l=new t.U(t(97582)),c=new t.U(t(19194)),d=new t.U(t(24137)),b=new t.U(t(85649)),m=new t.U(t(71041)),p=new t.U(t(16883)),u=new t.U(t(22245)),C=new t.U(t(24536)),g=new t.U(t(91799)),h=new t.U(t(36524)),f=new t.U(t(41992)),v=new t.U(t(658)),w=new t.U(t(53693)),k=new t.U(t(63010)),y=new t.U(t(77649)),x=new t.U(t(32078)),$=new t.U(t(74142)),E=new t.U(t(56441)),B=new t.U(t(66969)),D=new t.U(t(21866)),_=new t.U(t(23542)),F=new t.U(t(69834)),U=new t.U(t(85658)),q=new t.U(t(62418)),G=new t.U(t(95086)),I=new t.U(t(54624)),z=new t.U(t(91651)),S=new t.U(t(57002)),N=new t.U(t(55843)),T=new t.U(t(45626)),J=new t.U(t(6608)),M=new t.U(t(16682)),R=new t.U(t(53904)),Y=new t.U(t(80517)),j=new t.U(t(91263)),O=new t.U(t(76508)),L=new t.U(t(37620)),H=new t.U(t(33288)),W=new t.U(t(59599)),K=new t.U(t(69473)),V=new t.U(t(40444)),Q=new t.U(t(57688)),P=new t.U(t(17986)),Z=new t.U(t(81273)),X=new t.U(t(26295)),ee=new t.U(t(81880)),en=new t.U(t(98434)),et=new t.U(t(59156)),er=new t.U(t(30114)),eo=new t.U(t(53413)),ei=new t.U(t(29189)),eA=new t.U(t(22272)),ea=new t.U(t(34485)),es=new t.U(t(90290)),el=new t.U(t(86133)),ec=new t.U(t(39938)),ed=new t.U(t(17144)),eb=new t.U(t(92643)),em=new t.U(t(55595)),ep=new t.U(t(8238)),eu=new t.U(t(32886)),eC=new t.U(t(19639)),eg=new t.U(t(67780)),eh=new t.U(t(28156)),ef=new t.U(t(40543)),ev=new t.U(t(45829)),ew=new t.U(t(80945)),ek=new t.U(t(77784)),ey=new t.U(t(42301)),ex=new t.U(t(41706)),e$=new t.U(t(55562)),eE=new t.U(t(39704)),eB=new t.U(t(14529)),eD=new t.U(t(12367)),e_=new t.U(t(75044)),eF=new t.U(t(18954)),eU=new t.U(t(2693)),eq=new t.U(t(35698)),eG=new t.U(t(78715)),eI=new t.U(t(92569)),ez=new t.U(t(5634)),eS=new t.U(t(22786)),eN=new t.U(t(31274)),eT=new t.U(t(92361)),eJ=new t.U(t(1334)),eM=new t.U(t(63405)),eR=A()(o()),eY=s()(l),ej=s()(c),eO=s()(d),eL=s()(b),eH=s()(m),eW=s()(p),eK=s()(u),eV=s()(C),eQ=s()(g),eP=s()(h),eZ=s()(f),eX=s()(v),e0=s()(w),e2=s()(k),e1=s()(y),e5=s()(x),e4=s()($),e6=s()(E),e3=s()(B),e8=s()(D),e9=s()(_),e7=s()(F),ne=s()(U),nn=s()(q),nt=s()(G),nr=s()(I),no=s()(z),ni=s()(S),nA=s()(N),na=s()(T),ns=s()(J),nl=s()(M),nc=s()(R),nd=s()(Y),nb=s()(j),nm=s()(O),np=s()(L),nu=s()(H),nC=s()(W),ng=s()(K),nh=s()(V),nf=s()(Q),nv=s()(P),nw=s()(Z),nk=s()(X),ny=s()(ee),nx=s()(en),n$=s()(et),nE=s()(er),nB=s()(eo),nD=s()(ei),n_=s()(eA),nF=s()(ea),nU=s()(es),nq=s()(el),nG=s()(ec),nI=s()(ed),nz=s()(eb),nS=s()(em),nN=s()(ep),nT=s()(eu),nJ=s()(eC),nM=s()(eg),nR=s()(eh),nY=s()(ef),nj=s()(ev),nO=s()(ew),nL=s()(ek),nH=s()(ey),nW=s()(ex),nK=s()(e$),nV=s()(eE),nQ=s()(eB),nP=s()(eD),nZ=s()(e_),nX=s()(eF),n0=s()(eU),n2=s()(eq),n1=s()(eG),n5=s()(eI),n4=s()(ez),n6=s()(eS),n3=s()(eN),n8=s()(eT),n9=s()(eJ),n7=s()(eM);eR.push([e.id,`button,.button{-webkit-appearance:none;appearance:none;background:none;border:none}.button{--button-bg: var(--button-primary-default);--button-bg-hover: var(--button-primary-hover);--button-bg-active: var(--button-primary-active);--button-border-color: var(--button-primary-default);--button-focus-effect: var(--focus-effect);--button-height: var(--form-elem-height, 2rem);--button-color: var(--background-primary);--button-font: var(--type-emphasis-m);--button-padding: 0.5rem;--button-radius: var(--elem-radius, 0.25rem);border-radius:var(--button-radius);cursor:pointer;display:inline-block;padding:0;-webkit-text-decoration:none;text-decoration:none}.button-wrap{align-items:center;background-color:var(--button-bg);border:1px solid var(--button-border-color);border-radius:var(--button-radius);color:var(--button-color);display:flex;font:var(--button-font);gap:.25rem;height:var(--button-height);justify-content:center;padding-left:var(--button-padding);padding-right:var(--button-padding);position:relative}.button .icon{background-color:var(--button-color);margin:0 -1px}.button:hover,.button.hover{--button-border-color: var(--button-bg-hover, var(--button-bg))}.button:hover .button-wrap,.button.hover .button-wrap{background-color:var(--button-bg-hover, var(--button-bg))}.button:active .button-wrap,.button.active .button-wrap{background-color:var(--button-bg-active, var(--button-bg))}.button:focus,.button.focus{outline:none}.button:focus .button-wrap,.button.focus .button-wrap{border:1px solid var(--button-secondary-border-focus);box-shadow:var(--button-focus-effect)}.button.button[disabled],.button.button.inactive{cursor:default;opacity:.65}.button.button[disabled]:hover,.button.button.inactive:hover{--button-bg-hover: unset}.button.button[disabled]:active,.button.button.inactive:active{--button-bg-active: unset}.button.small,.button.small .button-wrap{--button-height: 1.75rem;--button-padding: 0.25rem}.button.secondary{--button-bg: var(--button-secondary-default);--button-border-color: var(--border-primary);--button-color: var(--text-secondary);--button-bg-hover: var(--button-secondary-hover);--button-bg-active: var(--button-secondary-active)}.button.secondary:focus{--button-border-color: var(--button-secondary-border-focus)}.button.action{--button-bg: transparent;--button-border-color: var(--button-bg);--button-color: var(--text-secondary);--button-font: var(--type-label-s);--button-bg-hover: var(--button-secondary-hover);--button-bg-active: var(--button-secondary-active)}.button.action.has-icon{--button-font: var(--type-emphasis-m);text-transform:initial}.button.action:focus{--button-border-color: var(--button-secondary-border-focus)}.button.action .button-wrap{text-transform:var(--button-action-transform, uppercase)}.button.action.highlight{--button-color: var(--button-primary-default)}.button.select{--button-bg: var(--button-secondary-default);--button-bg-hover: var(--button-secondary-hover);--button-bg-active: var(--button-secondary-active);--button-border-color: var(--border-primary);--button-color: var(--text-secondary);-webkit-appearance:none;appearance:none;background:none;border:none;padding:0;-webkit-text-decoration:none;text-decoration:none}.button.select .button-wrap{box-shadow:var(--shadow-01);padding-right:26px;position:relative}.button.select .button-wrap::after{background-color:var(--icon-primary);content:"";display:block;height:16px;-webkit-mask-image:url(${eY});mask-image:url(${eY});-webkit-mask-size:cover;mask-size:cover;position:absolute;right:.5rem;top:calc(50% - .5rem);width:16px}.button.link{--button-bg: none;--button-bg-hover: none;--button-bg-active: none;--button-border-color: none;--button-focus-effect: none;--button-secondary-border-focus: none;--button-height: auto;--button-font: unset;--button-padding: 0;--button-radius: 0;--button-color: var(--text-link);-webkit-appearance:none;appearance:none;display:inline;-webkit-text-decoration:none;text-decoration:none}.button.link:focus-visible{outline-color:var(--accent-primary);outline-offset:1px;outline-style:auto}.icon{--size: var(--icon-size, 1rem);background-color:var(--icon-primary);display:inline-block;flex-shrink:0;height:var(--size);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;vertical-align:middle;width:var(--size)}.icon.icon-add-filled{-webkit-mask-image:url(${ej});mask-image:url(${ej})}.icon.icon-add{-webkit-mask-image:url(${eO});mask-image:url(${eO})}.icon.icon-altname{-webkit-mask-image:url(${eL});mask-image:url(${eL})}.icon.icon-bell{-webkit-mask-image:url(${eH});mask-image:url(${eH})}.icon.icon-bell-filled{-webkit-mask-image:url(${eW});mask-image:url(${eW})}.icon.icon-bell-ring{-webkit-mask-image:url(${eK});mask-image:url(${eK})}.icon.icon-bluesky{-webkit-mask-image:url(${eV});mask-image:url(${eV})}.icon.icon-bookmark-filled{-webkit-mask-image:url(${eQ});mask-image:url(${eQ})}.icon.icon-bookmark{-webkit-mask-image:url(${eP});mask-image:url(${eP})}.icon.icon-cancel{-webkit-mask-image:url(${eZ});mask-image:url(${eZ})}.icon.icon-chatgpt{-webkit-mask-image:url(${eX});mask-image:url(${eX})}.icon.icon-checkmark{-webkit-mask-image:url(${e0});mask-image:url(${e0})}.icon.icon-chevron{-webkit-mask-image:url(${e2});mask-image:url(${e2})}.icon.icon-chrome{-webkit-mask-image:url(${e1});mask-image:url(${e1})}.icon.icon-critical{-webkit-mask-image:url(${e5});mask-image:url(${e5})}.icon.icon-curriculum-next{-webkit-mask-image:url(${e4});mask-image:url(${e4})}.icon.icon-curriculum-prev{-webkit-mask-image:url(${e6});mask-image:url(${e6})}.icon.icon-deno{-webkit-mask-image:url(${e3});mask-image:url(${e3})}.icon.icon-deprecated{-webkit-mask-image:url(${e8});mask-image:url(${e8})}.icon.icon-desktop{-webkit-mask-image:url(${e9});mask-image:url(${e9})}.icon.icon-disabled{-webkit-mask-image:url(${e7});mask-image:url(${e7})}.icon.icon-edge{-webkit-mask-image:url(${ne});mask-image:url(${ne})}.icon.icon-edit{-webkit-mask-image:url(${nn});mask-image:url(${nn})}.icon.icon-edit-filled{-webkit-mask-image:url(${nt});mask-image:url(${nt})}.icon.icon-ellipses{-webkit-mask-image:url(${nr});mask-image:url(${nr})}.icon.icon-experimental{-webkit-mask-image:url(${no});mask-image:url(${no})}.icon.icon-external{-webkit-mask-image:url(${ni});mask-image:url(${ni})}.icon.icon-eye-filled{-webkit-mask-image:url(${nA});mask-image:url(${nA})}.icon.icon-eye{-webkit-mask-image:url(${na});mask-image:url(${na})}.icon.icon-feed{-webkit-mask-image:url(${ns});mask-image:url(${ns})}.icon.icon-filter{-webkit-mask-image:url(${nl});mask-image:url(${nl})}.icon.icon-footnote{-webkit-mask-image:url(${nc});mask-image:url(${nc})}.icon.icon-github-mark-small{-webkit-mask-image:url(${nd});mask-image:url(${nd})}.icon.icon-ie{-webkit-mask-image:url(${nb});mask-image:url(${nb})}.icon.icon-information{-webkit-mask-image:url(${nm});mask-image:url(${nm})}.icon.icon-highlight{-webkit-mask-image:url(${np});mask-image:url(${np})}.icon.icon-history{-webkit-mask-image:url(${nu});mask-image:url(${nu})}.icon.icon-language{-webkit-mask-image:url(${nC});mask-image:url(${nC})}.icon.icon-mastodon{-webkit-mask-image:url(${ng});mask-image:url(${ng})}.icon.icon-menu-filled{-webkit-mask-image:url(${nh});mask-image:url(${nh})}.icon.icon-menu{-webkit-mask-image:url(${nf});mask-image:url(${nf})}.icon.icon-mobile{-webkit-mask-image:url(${nv});mask-image:url(${nv})}.icon.icon-more{-webkit-mask-image:url(${nw});mask-image:url(${nw})}.icon.icon-theme-dark{-webkit-mask-image:url(${nk});mask-image:url(${nk})}.icon.icon-new-topic{-webkit-mask-image:url(${ny});mask-image:url(${ny})}.icon.icon-next{-webkit-mask-image:url(${nx});mask-image:url(${nx})}.icon.icon-no{-webkit-mask-image:url(${n$});mask-image:url(${n$})}.icon.icon-nodejs{-webkit-mask-image:url(${nE});mask-image:url(${nE})}.icon.icon-nonstandard{-webkit-mask-image:url(${nB});mask-image:url(${nB})}.icon.icon-note-info{-webkit-mask-image:url(${nD});mask-image:url(${nD})}.icon.icon-note-warning{-webkit-mask-image:url(${n_});mask-image:url(${n_})}.icon.icon-note-deprecated{-webkit-mask-image:url(${nF});mask-image:url(${nF})}.icon.icon-opera{-webkit-mask-image:url(${nU});mask-image:url(${nU})}.icon.icon-padlock{-webkit-mask-image:url(${nq});mask-image:url(${nq})}.icon.icon-partial{-webkit-mask-image:url(${nG});mask-image:url(${nG})}.icon.icon-play{-webkit-mask-image:url(${nI});mask-image:url(${nI})}.icon.icon-prefix{-webkit-mask-image:url(${nz});mask-image:url(${nz})}.icon.icon-preview{-webkit-mask-image:url(${nS});mask-image:url(${nS})}.icon.icon-previous{-webkit-mask-image:url(${nN});mask-image:url(${nN})}.icon.icon-question-mark{-webkit-mask-image:url(${nT});mask-image:url(${nT})}.icon.icon-queue{-webkit-mask-image:url(${nJ});mask-image:url(${nJ})}.icon.icon-queued{-webkit-mask-image:url(${nM});mask-image:url(${nM})}.icon.icon-quote{-webkit-mask-image:url(${nR});mask-image:url(${nR})}.icon.icon-return{-webkit-mask-image:url(${nY});mask-image:url(${nY})}.icon.icon-safari{-webkit-mask-image:url(${nj});mask-image:url(${nj})}.icon.icon-samsunginternet{-webkit-mask-image:url(${nO});mask-image:url(${nO})}.icon.icon-search{-webkit-mask-image:url(${nL});mask-image:url(${nL})}.icon.icon-send{-webkit-mask-image:url(${nH});mask-image:url(${nH})}.icon.icon-server{-webkit-mask-image:url(${nW});mask-image:url(${nW})}.icon.icon-sidebar{-webkit-mask-image:url(${nK});mask-image:url(${nK})}.icon.icon-simple-firefox{-webkit-mask-image:url(${nV});mask-image:url(${nV})}.icon.icon-small-arrow{-webkit-mask-image:url(${eY});mask-image:url(${eY})}.icon.icon-theme-light{-webkit-mask-image:url(${nQ});mask-image:url(${nQ})}.icon.icon-star-filled{-webkit-mask-image:url(${nP});mask-image:url(${nP})}.icon.icon-star{-webkit-mask-image:url(${nZ});mask-image:url(${nZ})}.icon.icon-theme-os-default{-webkit-mask-image:url(${nX});mask-image:url(${nX})}.icon.icon-thumbs-down{-webkit-mask-image:url(${n0});mask-image:url(${n0})}.icon.icon-thumbs-up{-webkit-mask-image:url(${n2});mask-image:url(${n2})}.icon.icon-trash{-webkit-mask-image:url(${n1});mask-image:url(${n1})}.icon.icon-trash-filled{-webkit-mask-image:url(${n5});mask-image:url(${n5})}.icon.icon-twitter-x{-webkit-mask-image:url(${n4});mask-image:url(${n4})}.icon.icon-unknown{-webkit-mask-image:url(${n6});mask-image:url(${n6})}.icon.icon-warning{-webkit-mask-image:url(${n3});mask-image:url(${n3})}.icon.icon-webview{-webkit-mask-image:url(${n8});mask-image:url(${n8})}.icon.icon-yes{-webkit-mask-image:url(${n9});mask-image:url(${n9})}.icon.icon-yes-circle{-webkit-mask-image:url(${n7});mask-image:url(${n7})}svg.icon{background:rgba(0,0,0,0);color:var(--icon-primary)}.icons-highlighted{align-items:center;display:flex;flex-direction:column}.icons-highlighted>span{height:var(--icon-size);line-height:0;width:var(--icon-size)}.icons-highlighted>span.icons-icon-wrapper{margin-top:-0.1rem}*{box-sizing:border-box}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}.visually-hidden{border:0 !important;clip:rect(1px, 1px, 1px, 1px) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;height:1px !important;margin:-1px !important;overflow:hidden !important;padding:0 !important;position:absolute !important;white-space:nowrap !important;width:1px !important}code{background:var(--code-background-inline);padding:.125rem .25rem;width:-webkit-fit-content;width:fit-content}a{color:var(--text-link)}.external:after{background-color:var(--icon-primary);content:"";display:inline-flex;height:10px;margin-left:4px;-webkit-mask-image:url(${ni});mask-image:url(${ni});-webkit-mask-size:cover;mask-size:cover;width:10px}table{display:grid;grid-auto-flow:row dense}table thead tr{display:contents}table thead tr th,table thead tr td{display:grid;grid-template-columns:subgrid}table tbody{display:contents}table tbody tr{display:contents}table tbody tr th,table tbody tr td{display:contents}table tbody tr th button,table tbody tr td button{display:grid;grid-template-columns:subgrid}table tbody tr th .timeline,table tbody tr td .timeline{grid-column:1/-1}.bc-on-github{font-size:var(--type-smaller-font-size)}.bc-table{border:1px solid var(--border-primary);border-collapse:separate;border-radius:var(--elem-radius);border-spacing:0;margin:0;width:100%}.bc-table td,.bc-table th{border:1px solid var(--border-secondary);border-width:0 0 1px 1px;font-size:var(--type-smaller-font-size);font-weight:500;padding:0;padding:.4rem}.bc-table td code,.bc-table th code{font-size:var(--type-smaller-font-size)}.bc-table th{background:var(--background-primary);padding:.4rem;vertical-align:bottom}.bc-table thead{line-height:1;white-space:nowrap}.bc-table tbody tr{height:3rem}@media(min-width: 426px){.bc-table tbody tr:last-child th,.bc-table tbody tr:last-child td{border-bottom-width:0}}.bc-table tbody tr th{border-left-width:0;vertical-align:middle}.bc-table tbody .bc-support{vertical-align:top}.bc-table tbody .bc-support button{cursor:pointer;width:100%}.bc-table tbody .bc-support.bc-supports-no>button>span{color:var(--text-primary-red)}.bc-table tbody .bc-support.bc-supports-partial>button>span{color:var(--text-primary-yellow)}.bc-table tbody .bc-support.bc-supports-preview>button>span{color:var(--text-primary-blue)}.bc-table tbody .bc-support.bc-supports-yes>button>span{color:var(--text-primary-green)}.bc-table .bc-supports{margin-bottom:1rem}.bc-table .bc-supports .icon-wrap{background:var(--background-primary)}.bc-table .bc-supports.bc-supports-removed-partial .bcd-cell-text-copy{color:var(--text-primary-yellow)}.bc-table .icon-wrap .bc-support-level{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute !important;width:1px}.bc-table .bc-support>button>.icon-wrap{display:block}.bc-table .bc-support .icon.icon-removed-partial{background-color:var(--icon-critical);-webkit-mask-image:url(${n$});mask-image:url(${n$})}.bc-table .bc-support .timeline .icon.icon-removed-partial{background-color:var(--icon-primary);-webkit-mask-image:url(${nG});mask-image:url(${nG})}.bc-table .bc-support.bc-supports-removed-partial .bcd-cell-text-copy{color:var(--text-primary-red)}.bc-table .bc-feature{align-items:center;border:none;display:flex;text-align:left;width:100%}.bc-table .bc-feature>*{border:none !important;flex-basis:max-content}.bc-table .bc-feature-depth-2{border-left:7px solid var(--border-primary)}.bc-table .bc-feature-depth-3{border-left:15px solid var(--border-primary)}.bc-table .timeline{display:none}.bc-table .bc-has-history:focus-within .timeline{display:initial}.bc-head-txt-label{line-height:1;text-orientation:sideways;transform:rotate(180deg);white-space:nowrap;writing-mode:vertical-rl}.bc-support{text-align:center;vertical-align:middle}.bc-level-no{background-color:var(--icon-critical)}.bc-level-preview{background-color:var(--icon-information)}.bc-legend-items-container{display:flex;flex-wrap:wrap;font-size:var(--type-smaller-font-size);gap:1.5rem;margin-bottom:2rem}.bc-legend-tip{font-size:var(--type-smaller-font-size);font-style:italic;font-variation-settings:"slnt" -10;margin-bottom:1rem;margin-top:0}.bc-legend-item{align-items:center;display:flex;gap:.5rem}.bc-legend-item-dt{display:flex}.bc-legend-item-dt .icon{background-color:var(--icon-primary)}.bc-platforms th{align-items:center;display:flex;justify-content:center}.bc-platforms td{border:none}.bc-browsers th{align-items:center;display:flex;flex-direction:column;gap:.25rem;justify-content:end;vertical-align:bottom}.bc-browsers td{border-width:0 0 1px}.bc-notes-list{margin:.5rem 0;position:relative;text-align:left;width:100%}.bc-notes-list:before{background:var(--border-primary);content:"";height:calc(100% - .25rem);left:7px;margin-top:.25rem;position:absolute;width:2px;z-index:-1}.bc-notes-list .bc-notes-wrapper:last-child dd:last-child{position:relative}.bc-notes-list .bc-notes-wrapper:last-child dd:last-child:before{background:var(--background-primary);bottom:0;content:"";height:calc(100% - 6px);left:7px;position:absolute;width:2px;z-index:-1}.bc-notes-list .bc-level-yes.icon.icon-yes{background-color:var(--icon-success);-webkit-mask-image:url(${n7});mask-image:url(${n7})}.bc-notes-list .bc-supports-dd .icon{background:var(--border-primary);border:3px solid var(--background-primary);border-radius:50%;-webkit-mask-image:none;mask-image:none}.bc-notes-list .bc-version-label{display:inline}.bc-notes-list abbr{margin-right:4px;-webkit-text-decoration:none;text-decoration:none}.bc-notes-list dd{margin-bottom:1rem;padding-left:1.5rem;text-indent:-1.5rem}.bc-notes-list dd:last-child{margin-bottom:2rem}.bc-notes-wrapper{color:var(--text-primary);margin-bottom:1rem}.bc-notes-wrapper:last-child{margin-bottom:0}dl.bc-notes-list dt.bc-supports{margin-top:1rem}dl.bc-notes-list dt.bc-supports:first-child{margin-top:0}dl.bc-notes-list dd.bc-supports-dd{margin-bottom:1rem}dl.bc-notes-list dd.bc-supports-dd:last-child{margin-bottom:0}.only-icon span{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute !important;width:1px}.bc-table-row-header{padding:.25em;text-align:left;width:100%}.bc-table-row-header code{overflow:hidden}.bc-table-row-header .bc-icons{display:inline-flex;gap:.5ch;margin-left:.5ch;vertical-align:text-top}.bc-table-row-header .bc-icons .icon{background-color:var(--icon-secondary)}.bc-table-row-header .bc-icons .icon:hover{background-color:var(--icon-primary)}.bc-github-link{font:var(--type-smaller-font-size)}.main-page-content .bc-legend dd,.main-page-content .bc-legend dt{margin-bottom:0;margin-left:0;margin-top:0}.main-page-content .bc-supports-dd{margin:0}@media(max-width: 425.98px){.bc-table{grid-template-columns:auto}.bc-table thead{display:none}.bc-table tr td.bc-support{border:none;border-top:1px solid var(--border-primary);display:block}.bc-table tr td.bc-support:last-child{border-bottom:1px solid var(--border-primary)}.bc-table .timeline{margin-left:.25rem}.bc-table tr:not(:first-of-type) .bc-feature{border-top:2px solid var(--border-primary)}.bc-table .bc-feature,.bc-table .bc-support>button{align-content:center;display:flex;flex-wrap:wrap;gap:.5rem}.bc-on-github a{white-space:nowrap}.table-container{overflow-x:auto}}@media(min-width: 426px){.bc-table{grid-template-columns:minmax(20vw, -webkit-min-content) repeat(var(--browser-count), auto);grid-template-columns:minmax(20vw, min-content) repeat(var(--browser-count), auto)}.bc-table thead{display:contents}.bc-table thead .bc-platforms th{vertical-align:revert}.bc-table tbody{--border: 1px solid var(--border-secondary)}.bc-table tbody tr:not(:first-child) th>*,.bc-table tbody tr:not(:first-child) td>*{border-top:var(--border)}.bc-table tbody tr:not(:first-child) .bc-feature{border-top:var(--border)}.bc-table tbody tr th:not(:first-child)>*,.bc-table tbody tr td:not(:first-child)>*{border-left:var(--border)}.bc-table td,.bc-table th{background:inherit;padding:.25rem}.bc-table td.bc-support{padding:0}.bc-table td.bc-support>button{padding:.25rem}.bc-table .timeline{border-left:none !important;border-top:var(--border)}.bc-table .bc-has-history:focus-within>button{--padding-bottom-offset: -2px;border-bottom:2px solid var(--text-primary)}.table-container{margin:0 -3rem;overflow:auto;width:100vw}.table-container-inner{min-width:-webkit-max-content;min-width:max-content;padding:0 3rem;position:relative}.table-container-inner:after{bottom:0;content:"";height:10px;position:absolute;right:0;width:10px}.bcd-cell-text-wrapper .bc-support-level,.bcd-cell-text-wrapper .bc-browser-name{display:none}.bc-notes-list{margin-left:20%;max-width:80vw;width:auto}.bc-support .bc-support-level{display:none}.bc-has-history{cursor:pointer}.bc-has-history>button:hover{background:var(--background-secondary)}}@media(min-width: 769px){.table-container{width:calc(100% + 6rem)}.table-container-inner{min-width:initial}.bc-on-github{text-align:right}.bc-table{grid-template-columns:minmax(25%, -webkit-max-content) repeat(var(--browser-count), calc(75% / var(--browser-count)));grid-template-columns:minmax(25%, max-content) repeat(var(--browser-count), calc(75% / var(--browser-count)))}.icon{--size: calc(1rem + 1px)}}@media(min-width: 1200px){.table-container{margin:0;width:100%}.table-container-inner{padding:0}.bc-table{grid-template-columns:minmax(33%, -webkit-max-content) repeat(var(--browser-count), calc(67% / var(--browser-count)));grid-template-columns:minmax(33%, max-content) repeat(var(--browser-count), calc(67% / var(--browser-count)))}}.bcd-cell-text-wrapper{display:flex;flex-direction:row;gap:.5rem}@media(min-width: 426px){.bcd-cell-text-wrapper{align-items:center;flex-direction:column}}.bcd-timeline-cell-text-wrapper{display:flex;flex-direction:row;gap:.25rem}.bcd-cell-text-copy{color:var(--text-primary)}.bc-supports-yes .bcd-cell-text-copy{color:var(--text-primary-green)}.bc-supports-partial .bcd-cell-text-copy{color:var(--text-primary-yellow)}.bc-supports-no .bcd-cell-text-copy{color:var(--text-primary-red)}.bcd-cell-icons{display:flex;gap:.5rem}@media(min-width: 426px){.bcd-cell-icons{display:block}}@media(min-width: 426px){.bc-table td.bc-support>button{padding-bottom:calc(.5rem + var(--padding-bottom-offset, 0px));padding-left:.25rem;padding-right:.25rem;padding-top:.5rem}}`,"",{version:3,sources:["webpack://./node_modules/@mdn/yari/client/src/ui/atoms/button/index.scss","webpack://./node_modules/@mdn/yari/client/src/ui/atoms/icon/index.scss","webpack://./node_modules/@mdn/yari/client/src/lit/compat/global.scss","webpack://./node_modules/@mdn/yari/client/src/lit/compat/index.scss","webpack://./node_modules/@mdn/minimalist/sass/mixins/_utils.scss","webpack://./node_modules/@mdn/yari/client/src/lit/compat/index-mobile.scss","webpack://./node_modules/@mdn/yari/client/src/lit/compat/index-desktop.scss","webpack://./node_modules/@mdn/yari/client/src/lit/compat/index-desktop-md.scss","webpack://./node_modules/@mdn/yari/client/src/lit/compat/index-desktop-xl.scss"],names:[],mappings:"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",sourcesContent:['button,\n.button {\n appearance: none;\n background: none;\n border: none;\n}\n\n.button {\n --button-bg: var(--button-primary-default);\n --button-bg-hover: var(--button-primary-hover);\n --button-bg-active: var(--button-primary-active);\n --button-border-color: var(--button-primary-default);\n --button-focus-effect: var(--focus-effect);\n --button-height: var(--form-elem-height, 2rem);\n --button-color: var(--background-primary);\n --button-font: var(--type-emphasis-m);\n --button-padding: 0.5rem;\n --button-radius: var(--elem-radius, 0.25rem);\n border-radius: var(--button-radius);\n\n cursor: pointer;\n display: inline-block;\n padding: 0;\n text-decoration: none;\n}\n\n.button-wrap {\n align-items: center;\n background-color: var(--button-bg);\n border: 1px solid var(--button-border-color);\n border-radius: var(--button-radius);\n color: var(--button-color);\n display: flex;\n font: var(--button-font);\n gap: 0.25rem;\n height: var(--button-height);\n justify-content: center;\n padding-left: var(--button-padding);\n padding-right: var(--button-padding);\n position: relative;\n}\n\n.button .icon {\n background-color: var(--button-color);\n margin: 0 -1px; // shrinks icon-only buttons to square.\n}\n\n/* Button States */\n\n.button:hover,\n.button.hover {\n // In most cases, we want the border to be the same color as the background.\n --button-border-color: var(--button-bg-hover, var(--button-bg));\n\n .button-wrap {\n background-color: var(--button-bg-hover, var(--button-bg));\n }\n}\n\n.button:active,\n.button.active {\n .button-wrap {\n background-color: var(--button-bg-active, var(--button-bg));\n }\n}\n\n.button:focus,\n.button.focus {\n outline: none;\n\n .button-wrap {\n border: 1px solid var(--button-secondary-border-focus);\n box-shadow: var(--button-focus-effect);\n }\n}\n\n.button.button[disabled],\n.button.button.inactive {\n cursor: default;\n opacity: 0.65;\n\n &:hover {\n --button-bg-hover: unset;\n }\n\n &:active {\n --button-bg-active: unset;\n }\n}\n\n/* Standard Button Modifiers */\n\n.button.small,\n.button.small .button-wrap {\n --button-height: 1.75rem;\n --button-padding: 0.25rem;\n}\n\n/* Secondary Version */\n\n.button.secondary {\n --button-bg: var(--button-secondary-default);\n --button-border-color: var(--border-primary);\n --button-color: var(--text-secondary);\n --button-bg-hover: var(--button-secondary-hover);\n --button-bg-active: var(--button-secondary-active);\n\n &:focus {\n --button-border-color: var(--button-secondary-border-focus);\n }\n}\n\n/* Action Version */\n\n.button.action {\n --button-bg: transparent;\n --button-border-color: var(--button-bg);\n --button-color: var(--text-secondary);\n --button-font: var(--type-label-s);\n --button-bg-hover: var(--button-secondary-hover);\n --button-bg-active: var(--button-secondary-active);\n\n &.has-icon {\n --button-font: var(--type-emphasis-m);\n text-transform: initial;\n }\n\n &:focus {\n --button-border-color: var(--button-secondary-border-focus);\n }\n\n .button-wrap {\n text-transform: var(--button-action-transform, uppercase);\n }\n\n &.highlight {\n --button-color: var(--button-primary-default);\n }\n}\n\n/* Select Version */\n.button.select {\n --button-bg: var(--button-secondary-default);\n --button-bg-hover: var(--button-secondary-hover);\n --button-bg-active: var(--button-secondary-active);\n --button-border-color: var(--border-primary);\n --button-color: var(--text-secondary);\n appearance: none;\n background: none;\n border: none;\n padding: 0;\n text-decoration: none;\n\n .button-wrap {\n box-shadow: var(--shadow-01);\n padding-right: 26px;\n position: relative;\n }\n\n .button-wrap::after {\n background-color: var(--icon-primary);\n content: "";\n display: block;\n height: 16px;\n mask-image: url("../../../assets/icons/small-arrow.svg");\n mask-size: cover;\n position: absolute;\n right: 0.5rem;\n top: calc(50% - 0.5rem);\n width: 16px;\n }\n}\n\n.button.link {\n --button-bg: none;\n --button-bg-hover: none;\n --button-bg-active: none;\n --button-border-color: none;\n --button-focus-effect: none;\n --button-secondary-border-focus: none;\n --button-height: auto;\n --button-font: unset;\n --button-padding: 0;\n --button-radius: 0;\n\n --button-color: var(--text-link);\n appearance: none;\n display: inline;\n text-decoration: none;\n\n &:focus-visible {\n outline-color: var(--accent-primary);\n outline-offset: 1px;\n outline-style: auto;\n }\n}\n\n/*\n.high-contrast-white {\n .button:focus {\n --button-border-color: var(--border-primary);\n --button-focus-effect: 0 0 0 4px var(--background-primary),\n 0 0 0 7px var(--border-primary);\n }\n}\n\n.high-contrast-black {\n .button:focus {\n --button-border-color: var(--border-primary);\n --button-focus-shadow: 0 0 0 4px var(--background-primary),\n 0 0 0 7px var(--border-primary);\n }\n\n .button {\n --button-color: var(--button-secondary-default);\n }\n\n .button.secondary {\n --button-border-color: var(--button-color);\n }\n\n .button.action {\n --button-color: var(--text-secondary);\n }\n}\n*/\n','$icons:\n "add-filled", "add", "altname", "bell", "bell-filled", "bell-ring", "bluesky",\n "bookmark-filled", "bookmark", "cancel", "chatgpt", "checkmark", "chevron",\n "chrome", "critical", "curriculum-next", "curriculum-prev", "deno",\n "deprecated", "desktop", "disabled", "edge", "edit", "edit-filled",\n "ellipses", "experimental", "external", "eye-filled", "eye", "feed", "filter",\n "footnote", "github-mark-small", "ie", "information", "highlight", "history",\n "language", "mastodon", "menu-filled", "menu", "mobile", "more", "theme-dark",\n "new-topic", "next", "no", "nodejs", "nonstandard", "note-info",\n "note-warning", "note-deprecated", "opera", "padlock", "partial", "play",\n "prefix", "preview", "previous", "question-mark", "queue", "queued", "quote",\n "return", "safari", "samsunginternet", "search", "send", "server", "sidebar",\n "simple-firefox", "small-arrow", "theme-light", "star-filled", "star",\n "theme-os-default", "thumbs-down", "thumbs-up", "trash", "trash-filled",\n "twitter-x", "unknown", "warning", "webview", "yes", "yes-circle";\n\n.icon {\n --size: var(--icon-size, 1rem);\n background-color: var(--icon-primary);\n display: inline-block;\n flex-shrink: 0;\n height: var(--size);\n mask-position: center;\n mask-repeat: no-repeat;\n vertical-align: middle;\n width: var(--size);\n\n @each $name in $icons {\n &.icon-#{$name} {\n mask-image: url("../../../assets/icons/" + $name + ".svg");\n }\n }\n}\n\n// The icon class is applied directly to SVGs sometimes. This\n// override un-breaks those.\nsvg.icon {\n background: transparent;\n color: var(--icon-primary);\n}\n\n.icons-highlighted {\n align-items: center;\n display: flex;\n flex-direction: column;\n\n > span {\n height: var(--icon-size);\n line-height: 0;\n width: var(--icon-size);\n\n &.icons-icon-wrapper {\n margin-top: -0.1rem;\n }\n }\n}\n','* {\n box-sizing: border-box;\n}\n\n/* Remove default margin */\nbody,\nh1,\nh2,\nh3,\nh4,\np,\nfigure,\nblockquote,\ndl,\ndd {\n margin: 0;\n}\n\n.visually-hidden {\n border: 0 !important;\n clip: rect(1px, 1px, 1px, 1px) !important;\n -webkit-clip-path: inset(50%) !important;\n clip-path: inset(50%) !important;\n height: 1px !important;\n margin: -1px !important;\n overflow: hidden !important;\n padding: 0 !important;\n position: absolute !important;\n white-space: nowrap !important;\n width: 1px !important;\n}\n\ncode {\n background: var(--code-background-inline);\n padding: 0.125rem 0.25rem;\n width: fit-content;\n}\n\na {\n color: var(--text-link);\n}\n\n.external:after {\n background-color: var(--icon-primary);\n content: "";\n display: inline-flex;\n height: 10px;\n margin-left: 4px;\n mask-image: url("../../assets/icons/external.svg");\n mask-size: cover;\n width: 10px;\n}\n','@use "sass:meta";\n@use "~@mdn/minimalist/sass/mixins/utils" as *;\n@use "../../ui/vars" as *;\n@use "../../ui/atoms/button";\n@use "../../ui/atoms/icon";\n\n@include meta.load-css("global");\n\n// Style for mobile *and* desktop.\n\ntable {\n display: grid;\n grid-auto-flow: row dense;\n\n thead {\n tr {\n display: contents;\n\n th,\n td {\n display: grid;\n grid-template-columns: subgrid;\n }\n }\n }\n\n tbody {\n display: contents;\n\n tr {\n display: contents;\n\n th,\n td {\n display: contents;\n\n button {\n display: grid;\n grid-template-columns: subgrid;\n }\n\n .timeline {\n grid-column: 1 / -1;\n }\n }\n }\n }\n}\n\n.bc-on-github {\n font-size: var(--type-smaller-font-size);\n}\n\n.bc-table {\n border: 1px solid var(--border-primary);\n border-collapse: separate;\n border-radius: var(--elem-radius);\n border-spacing: 0;\n margin: 0;\n width: 100%;\n\n td,\n th {\n border: 1px solid var(--border-secondary);\n border-width: 0 0 1px 1px;\n\n font-size: var(--type-smaller-font-size);\n font-weight: 500;\n padding: 0;\n padding: 0.4rem;\n\n code {\n font-size: var(--type-smaller-font-size);\n }\n }\n\n th {\n background: var(--background-primary);\n padding: 0.4rem;\n vertical-align: bottom;\n }\n\n thead {\n line-height: 1;\n white-space: nowrap;\n }\n\n // these props allow us to add border-radius to the table.\n // border-collapse: separate gets in the way of this\n // being easy.\n tbody {\n tr {\n height: 3rem;\n\n @media (min-width: $screen-sm) {\n &:last-child {\n th,\n td {\n border-bottom-width: 0;\n }\n }\n }\n\n th {\n border-left-width: 0;\n vertical-align: middle;\n }\n }\n\n .bc-support {\n vertical-align: top;\n\n button {\n cursor: pointer;\n width: 100%;\n }\n\n &.bc-supports-no > button > span {\n color: var(--text-primary-red);\n }\n\n &.bc-supports-partial > button > span {\n color: var(--text-primary-yellow);\n }\n\n &.bc-supports-preview > button > span {\n color: var(--text-primary-blue);\n }\n\n &.bc-supports-yes > button > span {\n color: var(--text-primary-green);\n }\n }\n }\n\n .bc-supports {\n margin-bottom: 1rem;\n\n .icon-wrap {\n background: var(--background-primary);\n }\n }\n\n .bc-supports.bc-supports-removed-partial {\n .bcd-cell-text-copy {\n color: var(--text-primary-yellow);\n }\n }\n\n .icon-wrap {\n .bc-support-level {\n @include visually-hidden;\n }\n }\n\n .bc-support {\n > button > .icon-wrap {\n display: block;\n }\n\n .icon.icon-removed-partial {\n background-color: var(--icon-critical);\n // override icon\n mask-image: url("../../assets/icons/no.svg");\n }\n\n .timeline .icon.icon-removed-partial {\n background-color: var(--icon-primary);\n mask-image: url("../../assets/icons/partial.svg");\n }\n }\n\n .bc-support.bc-supports-removed-partial {\n .bcd-cell-text-copy {\n color: var(--text-primary-red);\n }\n }\n\n .bc-feature {\n align-items: center;\n border: none;\n display: flex;\n text-align: left;\n width: 100%;\n\n > * {\n border: none !important;\n flex-basis: max-content;\n }\n }\n\n .bc-feature-depth-2 {\n border-left: 7px solid var(--border-primary);\n }\n\n .bc-feature-depth-3 {\n border-left: 15px solid var(--border-primary);\n }\n\n .timeline {\n display: none;\n }\n\n .bc-has-history:focus-within .timeline {\n display: initial;\n }\n}\n\n.bc-head-txt-label {\n line-height: 1;\n text-orientation: sideways;\n transform: rotate(180deg);\n white-space: nowrap;\n writing-mode: vertical-rl;\n}\n\n.bc-support {\n text-align: center;\n vertical-align: middle;\n}\n\n.bc-level-no {\n background-color: var(--icon-critical);\n}\n\n.bc-level-preview {\n background-color: var(--icon-information);\n}\n\n.bc-legend-items-container {\n display: flex;\n flex-wrap: wrap;\n font-size: var(--type-smaller-font-size);\n gap: 1.5rem;\n margin-bottom: 2rem;\n}\n\n.bc-legend-tip {\n font-size: var(--type-smaller-font-size);\n font-style: italic;\n font-variation-settings: "slnt" -10;\n margin-bottom: 1rem;\n margin-top: 0;\n}\n\n.bc-legend-item {\n align-items: center;\n display: flex;\n gap: 0.5rem;\n}\n\n.bc-legend-item-dt {\n display: flex;\n\n .icon {\n background-color: var(--icon-primary);\n }\n}\n\n// Row with desktop / mobile icons.\n.bc-platforms {\n th {\n align-items: center;\n display: flex;\n justify-content: center;\n }\n\n td {\n border: none;\n }\n}\n\n// Row with browser names.\n.bc-browsers {\n th {\n align-items: center;\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n justify-content: end;\n vertical-align: bottom;\n }\n\n td {\n border-width: 0 0 1px;\n }\n}\n\n.bc-notes-list {\n margin: 0.5rem 0;\n position: relative;\n text-align: left;\n width: 100%;\n\n &:before {\n background: var(--border-primary);\n content: "";\n height: calc(100% - 0.25rem);\n left: 7px;\n margin-top: 0.25rem;\n position: absolute;\n width: 2px;\n z-index: -1;\n }\n\n // complicated selector to cover the last bit of the grey line above.\n .bc-notes-wrapper:last-child dd:last-child {\n position: relative;\n\n &:before {\n background: var(--background-primary);\n bottom: 0;\n content: "";\n height: calc(100% - 6px);\n left: 7px;\n position: absolute;\n width: 2px;\n z-index: -1;\n }\n }\n\n .bc-level-yes.icon.icon-yes {\n // override icon\n background-color: var(--icon-success);\n mask-image: url("../../assets/icons/yes-circle.svg");\n }\n\n .bc-supports-dd {\n .icon {\n background: var(--border-primary);\n border: 3px solid var(--background-primary);\n border-radius: 50%;\n mask-image: none;\n }\n }\n\n .bc-version-label {\n display: inline;\n }\n\n abbr {\n margin-right: 4px;\n text-decoration: none;\n }\n\n dd {\n margin-bottom: 1rem;\n padding-left: 1.5rem;\n text-indent: -1.5rem;\n\n &:last-child {\n margin-bottom: 2rem;\n }\n }\n}\n\n.bc-notes-wrapper {\n color: var(--text-primary);\n margin-bottom: 1rem;\n\n &:last-child {\n margin-bottom: 0;\n }\n}\n\ndl.bc-notes-list {\n dt.bc-supports {\n margin-top: 1rem;\n\n &:first-child {\n margin-top: 0;\n }\n }\n\n dd.bc-supports-dd {\n margin-bottom: 1rem;\n\n &:last-child {\n margin-bottom: 0;\n }\n }\n}\n\n.only-icon span {\n @include visually-hidden();\n}\n\n.bc-table-row-header {\n padding: 0.25em;\n text-align: left;\n width: 100%;\n\n code {\n overflow: hidden;\n }\n\n .bc-icons {\n display: inline-flex;\n gap: 0.5ch;\n margin-left: 0.5ch;\n vertical-align: text-top;\n\n .icon {\n background-color: var(--icon-secondary);\n\n &:hover {\n background-color: var(--icon-primary);\n }\n }\n }\n}\n\n.bc-github-link {\n font: var(--type-smaller-font-size);\n}\n\n.main-page-content {\n .bc-legend {\n dd,\n dt {\n margin-bottom: 0;\n margin-left: 0;\n margin-top: 0;\n }\n }\n\n .bc-supports-dd {\n margin: 0;\n }\n}\n\n@include meta.load-css("index-mobile");\n@include meta.load-css("index-desktop");\n@include meta.load-css("index-desktop-md");\n@include meta.load-css("index-desktop-xl");\n\n.bcd-cell-text-wrapper {\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n\n @media (min-width: $screen-sm) {\n align-items: center;\n flex-direction: column;\n }\n}\n\n.bcd-timeline-cell-text-wrapper {\n display: flex;\n flex-direction: row;\n gap: 0.25rem;\n}\n\n.bcd-cell-text-copy {\n color: var(--text-primary);\n}\n\n.bc-supports-yes {\n .bcd-cell-text-copy {\n color: var(--text-primary-green);\n }\n}\n\n.bc-supports-partial {\n .bcd-cell-text-copy {\n color: var(--text-primary-yellow);\n }\n}\n\n.bc-supports-no {\n .bcd-cell-text-copy {\n color: var(--text-primary-red);\n }\n}\n\n.bcd-cell-icons {\n display: flex;\n gap: 0.5rem;\n\n @media (min-width: $screen-sm) {\n display: block;\n }\n}\n\n@media (min-width: $screen-sm) {\n .bc-table {\n td.bc-support > button {\n padding-bottom: calc(0.5rem + var(--padding-bottom-offset, 0px));\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n padding-top: 0.5rem;\n }\n }\n}\n','@use "../vars/" as *;\n\n/* Used with flexbox and grid. The new syntax is to use `gap`, but here\n we also provide the fallback of `grid-gap`. This is also why we need\n the stylelint-disable-line as the order is important */\n@mixin gap($width: $base-spacing) {\n grid-gap: $width;\n gap: $width; /* stylelint-disable-line order/properties-alphabetical-order */\n}\n\n/*\n * A simply utility for setting a max width on an element that constrains its\n * width to what is commonly known to be a readable line length for prose.\n */\n@mixin readable-line-length() {\n max-width: $max-line-length-fallback;\n max-width: 85ch;\n}\n\n/* \n * Hide an element visually, but not from screen readers\n * Use this mixin sparingly to avoid unnecessary code bloat\n * Instead, use the class `visually-hidden` directly on the\n * relevant element or component.\n */\n@mixin visually-hidden {\n border: 0;\n clip: rect(0 0 0 0);\n height: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n /* !important required to ensure element is hidden when mixin is applied */\n position: absolute !important; /* stylelint-disable-line declaration-no-important */\n width: 1px;\n}\n\n@mixin reset-visually-hidden {\n border: inherit;\n clip: inherit;\n height: inherit;\n margin: inherit;\n overflow: inherit;\n padding: inherit;\n position: inherit !important; /* stylelint-disable-line declaration-no-important */\n width: inherit;\n}\n\n/* A common reset for `ol` and `ul` elements */\n@mixin reset-list() {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n@mixin caret-arrow($color, $direction: right, $size: 6px, $thickness: 2px) {\n border: solid $color;\n border-width: 0 $thickness $thickness 0;\n content: "";\n display: inline-block;\n height: $size;\n width: $size;\n\n /* stylelint-disable block-closing-brace-newline-after */\n @if ($direction == up) {\n transform: rotate(-135deg);\n } @else if ($direction == left) {\n transform: rotate(135deg);\n } @else if ($direction == down) {\n transform: rotate(45deg);\n } @else if ($direction == right) {\n transform: rotate(-45deg);\n }\n}\n','@use "../../ui/vars" as *;\n\n// Style for mobile.\n\n@media (max-width: #{$screen-sm - 0.02}) {\n .bc-table {\n grid-template-columns: auto;\n\n thead {\n display: none;\n }\n\n tr {\n td.bc-support {\n border: none;\n border-top: 1px solid var(--border-primary);\n display: block;\n\n &:last-child {\n border-bottom: 1px solid var(--border-primary);\n }\n }\n }\n\n .timeline {\n // Align timeline icons with summary icon.\n margin-left: 0.25rem;\n }\n\n tr:not(:first-of-type) .bc-feature {\n // Feature separator.\n border-top: 2px solid var(--border-primary);\n }\n\n .bc-feature,\n .bc-support > button {\n align-content: center;\n display: flex;\n flex-wrap: wrap;\n gap: 0.5rem;\n }\n }\n\n .bc-on-github a {\n white-space: nowrap;\n }\n\n .table-container {\n overflow-x: auto;\n }\n}\n','@use "../../ui/vars" as *;\n\n// Style for desktop.\n\n@media (min-width: $screen-sm) {\n .bc-table {\n // Expand all columns.\n grid-template-columns: minmax(20vw, min-content) repeat(\n var(--browser-count),\n auto\n );\n\n thead {\n display: contents;\n\n .bc-platforms {\n th {\n vertical-align: revert;\n }\n }\n }\n\n tbody {\n --border: 1px solid var(--border-secondary);\n\n // Border.\n tr {\n &:not(:first-child) {\n th,\n td {\n > * {\n border-top: var(--border);\n }\n }\n\n .bc-feature {\n border-top: var(--border);\n }\n }\n\n th:not(:first-child),\n td:not(:first-child) {\n > * {\n border-left: var(--border);\n }\n }\n }\n }\n\n td,\n th {\n background: inherit;\n padding: 0.25rem;\n }\n\n td.bc-support {\n padding: 0;\n\n > button {\n padding: 0.25rem;\n }\n }\n\n .timeline {\n border-left: none !important;\n border-top: var(--border);\n }\n\n .bc-has-history:focus-within > button {\n // Highlight expanded item.\n --padding-bottom-offset: -2px;\n border-bottom: 2px solid var(--text-primary);\n }\n }\n\n .table-container {\n margin: 0 -3rem;\n overflow: auto;\n width: 100vw;\n }\n\n .table-container-inner {\n min-width: max-content;\n padding: 0 3rem;\n position: relative;\n\n &:after {\n bottom: 0;\n content: "";\n height: 10px;\n position: absolute;\n right: 0;\n width: 10px;\n }\n }\n\n .bcd-cell-text-wrapper {\n .bc-support-level,\n .bc-browser-name {\n display: none;\n }\n }\n\n .bc-notes-list {\n margin-left: 20%;\n max-width: 80vw;\n width: auto;\n }\n\n .bc-support {\n .bc-support-level {\n display: none;\n }\n }\n\n .bc-has-history {\n cursor: pointer;\n\n > button:hover {\n background: var(--background-secondary);\n }\n }\n}\n','@use "../../ui/vars" as *;\n\n@media (min-width: $screen-md) {\n .table-container {\n width: calc(100% + 6rem);\n }\n\n .table-container-inner {\n min-width: initial;\n }\n\n .bc-on-github {\n text-align: right;\n }\n\n .bc-table {\n // 25% for feature, 75% for browser columns.\n grid-template-columns: minmax(25%, max-content) repeat(\n var(--browser-count),\n calc(75% / var(--browser-count))\n );\n }\n\n .icon {\n // Workaround for Icons being cut by 1px at the top.\n --size: calc(1rem + 1px);\n }\n}\n','@use "../../ui/vars" as *;\n\n@media (min-width: $screen-xl) {\n .table-container {\n margin: 0;\n width: 100%;\n }\n\n .table-container-inner {\n padding: 0;\n }\n\n .bc-table {\n // 33% for feature, 67% for browser columns.\n grid-template-columns: minmax(33%, max-content) repeat(\n var(--browser-count),\n calc(67% / var(--browser-count))\n );\n }\n}\n'],sourceRoot:""}]);var te=new CSSStyleSheet;te.replaceSync(eR.toString());let tn=te},19194:function(e,n,t){e.exports=t.p+"add-filled.80d402757a60674d.svg"},24137:function(e,n,t){e.exports=t.p+"add.9310d8fcf4d12ca9.svg"},85649:function(e,n,t){e.exports=t.p+"altname.42d2e41d11030519.svg"},16883:function(e,n,t){e.exports=t.p+"bell-filled.54210b230d4cd96a.svg"},22245:function(e,n,t){e.exports=t.p+"bell-ring.42eae9e00cdc5670.svg"},71041:function(e,n,t){e.exports=t.p+"bell.84639befc6b81f54.svg"},24536:function(e,n,t){e.exports=t.p+"bluesky.6217395adda884d6.svg"},91799:function(e,n,t){e.exports=t.p+"bookmark-filled.2871e99c943c520a.svg"},36524:function(e,n,t){e.exports=t.p+"bookmark.697100550aca63ed.svg"},658:function(e,n,t){e.exports=t.p+"chatgpt.bbca9c9c3aceadc0.svg"},53693:function(e,n,t){e.exports=t.p+"checkmark.78b83561190aa5be.svg"},63010:function(e,n,t){e.exports=t.p+"chevron.5d373c9173be10ac.svg"},77649:function(e,n,t){e.exports=t.p+"chrome.34c80ba0e9389a43.svg"},32078:function(e,n,t){e.exports=t.p+"critical.0569cc36ffba11c5.svg"},74142:function(e,n,t){e.exports=t.p+"curriculum-next.1e2c24ff7c72f8f3.svg"},56441:function(e,n,t){e.exports=t.p+"curriculum-prev.76a80bfc2bf346bf.svg"},66969:function(e,n,t){e.exports=t.p+"deno.6e66cc38cdfcb577.svg"},21866:function(e,n,t){e.exports=t.p+"deprecated.c40ec2e5fa028b18.svg"},23542:function(e,n,t){e.exports=t.p+"desktop.9916908187575ee8.svg"},69834:function(e,n,t){e.exports=t.p+"disabled.0a3139cf317f8e73.svg"},85658:function(e,n,t){e.exports=t.p+"edge.975e09d9c765224d.svg"},95086:function(e,n,t){e.exports=t.p+"edit-filled.4ff5b1542e5f26cd.svg"},62418:function(e,n,t){e.exports=t.p+"edit.b33bc30018dbe30a.svg"},54624:function(e,n,t){e.exports=t.p+"ellipses.9bbbfb1a5bab025d.svg"},91651:function(e,n,t){e.exports=t.p+"experimental.317e4709a9ee5689.svg"},55843:function(e,n,t){e.exports=t.p+"eye-filled.513619bc9ac64fd9.svg"},45626:function(e,n,t){e.exports=t.p+"eye.1d6bc09fd049c172.svg"},6608:function(e,n,t){e.exports=t.p+"feed.d5d1bf625dc6b397.svg"},16682:function(e,n,t){e.exports=t.p+"filter.9b5baf25968c04db.svg"},53904:function(e,n,t){e.exports=t.p+"footnote.e51e2440d994efe8.svg"},80517:function(e,n,t){e.exports=t.p+"github-mark-small.bd8d47c6d1b4b950.svg"},37620:function(e,n,t){e.exports=t.p+"highlight.4843af48997a8fb8.svg"},33288:function(e,n,t){e.exports=t.p+"history.0214bce82868c39a.svg"},91263:function(e,n,t){e.exports=t.p+"ie.4c16845326d86ba9.svg"},76508:function(e,n,t){e.exports=t.p+"information.8a003538c18a7e2d.svg"},59599:function(e,n,t){e.exports=t.p+"language.718cb4a62260b684.svg"},69473:function(e,n,t){e.exports=t.p+"mastodon.fffa3e16e0b2db59.svg"},40444:function(e,n,t){e.exports=t.p+"menu-filled.420d33b5b8431346.svg"},57688:function(e,n,t){e.exports=t.p+"menu.360c324943803a41.svg"},17986:function(e,n,t){e.exports=t.p+"mobile.3a8d7a34c723487a.svg"},81273:function(e,n,t){e.exports=t.p+"more.e2fcd5fd16099c48.svg"},81880:function(e,n,t){e.exports=t.p+"new-topic.c44c2b02f1b782d6.svg"},98434:function(e,n,t){e.exports=t.p+"next.444bedba48443091.svg"},59156:function(e,n,t){e.exports=t.p+"no.c0dfcd03ea37bca6.svg"},30114:function(e,n,t){e.exports=t.p+"nodejs.2d9a0f9022cb52ad.svg"},53413:function(e,n,t){e.exports=t.p+"nonstandard.cd4aec5f2f0a3c65.svg"},34485:function(e,n,t){e.exports=t.p+"note-deprecated.373dd62cee35d969.svg"},29189:function(e,n,t){e.exports=t.p+"note-info.eacdd4a9f2821d63.svg"},22272:function(e,n,t){e.exports=t.p+"note-warning.cd4aec5f2f0a3c65.svg"},90290:function(e,n,t){e.exports=t.p+"opera.ad21150bc9f8e600.svg"},86133:function(e,n,t){e.exports=t.p+"padlock.e6e46d7305e05ed1.svg"},39938:function(e,n,t){e.exports=t.p+"partial.f19850f9f004b1b2.svg"},17144:function(e,n,t){e.exports=t.p+"play.ba68e261a8be081c.svg"},92643:function(e,n,t){e.exports=t.p+"prefix.2977e3d4b9fb9a82.svg"},55595:function(e,n,t){e.exports=t.p+"preview.7f907b4753312e8b.svg"},8238:function(e,n,t){e.exports=t.p+"previous.5b9f782377e19f50.svg"},32886:function(e,n,t){e.exports=t.p+"question-mark.423ba48d7301b007.svg"},19639:function(e,n,t){e.exports=t.p+"queue.87b15609b41689ef.svg"},67780:function(e,n,t){e.exports=t.p+"queued.14bb12453dfaadb3.svg"},28156:function(e,n,t){e.exports=t.p+"quote.3ae06798cc589899.svg"},40543:function(e,n,t){e.exports=t.p+"return.3934eafaaf18c979.svg"},45829:function(e,n,t){e.exports=t.p+"safari.914bc957b75d733e.svg"},80945:function(e,n,t){e.exports=t.p+"samsunginternet.6d98cb78e846f96b.svg"},77784:function(e,n,t){e.exports=t.p+"search.1a354d71e7a983d3.svg"},42301:function(e,n,t){e.exports=t.p+"send.97ab75f4a3d4d2ea.svg"},41706:function(e,n,t){e.exports=t.p+"server.482d6fe933e698c8.svg"},55562:function(e,n,t){e.exports=t.p+"sidebar.f5c855c1f43aea2c.svg"},39704:function(e,n,t){e.exports=t.p+"simple-firefox.a8097d7ed48625a7.svg"},97582:function(e,n,t){e.exports=t.p+"small-arrow.7688fc1262388c91.svg"},12367:function(e,n,t){e.exports=t.p+"star-filled.c9db99aeb16b1913.svg"},75044:function(e,n,t){e.exports=t.p+"star.ad1e866563e32428.svg"},26295:function(e,n,t){e.exports=t.p+"theme-dark.c4ed806b135c790e.svg"},14529:function(e,n,t){e.exports=t.p+"theme-light.cf31f079f9e6e27c.svg"},18954:function(e,n,t){e.exports=t.p+"theme-os-default.935f36dac65cabef.svg"},2693:function(e,n,t){e.exports=t.p+"thumbs-down.6a5c08eb98ba1cad.svg"},35698:function(e,n,t){e.exports=t.p+"thumbs-up.74cfbf8161e315db.svg"},92569:function(e,n,t){e.exports=t.p+"trash-filled.08d1d96014b1fc95.svg"},78715:function(e,n,t){e.exports=t.p+"trash.7f3db910c0f027df.svg"},5634:function(e,n,t){e.exports=t.p+"twitter-x.35b91a4e4b88a724.svg"},22786:function(e,n,t){e.exports=t.p+"unknown.48fb1303fdffa5de.svg"},31274:function(e,n,t){e.exports=t.p+"warning.9b94fc66d43115ba.svg"},92361:function(e,n,t){e.exports=t.p+"webview.3abdc5c7966181b2.svg"},63405:function(e,n,t){e.exports=t.p+"yes-circle.ba7d3389a6ed23f8.svg"},1334:function(e,n,t){e.exports=t.p+"yes.39b8ee80cd467e41.svg"},83069:function(e,n,t){t.r(n),t.d(n,{default:()=>j});var r=t(14703),o=t(68724),i=t(29140);let A=Symbol();let task_h=class task_h{get taskComplete(){return this.t||(1===this.i?this.t=new Promise((e,n)=>{this.o=e,this.h=n}):3===this.i?this.t=Promise.reject(this.l):this.t=Promise.resolve(this.u)),this.t}constructor(e,n,t){this.p=0,this.i=0,(this._=e).addController(this);let r="object"==typeof n?n:{task:n,args:t};this.v=r.task,this.j=r.args,this.m=r.argsEqual??a,this.k=r.onComplete,this.A=r.onError,this.autoRun=r.autoRun??!0,"initialValue"in r&&(this.u=r.initialValue,this.i=2,this.O=this.T?.())}hostUpdate(){!0===this.autoRun&&this.S()}hostUpdated(){"afterUpdate"===this.autoRun&&this.S()}T(){if(void 0===this.j)return;let e=this.j();if(!Array.isArray(e))throw Error("The args function must return an array");return e}async S(){let e=this.T(),n=this.O;this.O=e,e===n||void 0===e||void 0!==n&&this.m(n,e)||await this.run(e)}async run(e){let n,t;e??=this.T(),this.O=e,1===this.i?this.q?.abort():(this.t=void 0,this.o=void 0,this.h=void 0),this.i=1,"afterUpdate"===this.autoRun?queueMicrotask(()=>this._.requestUpdate()):this._.requestUpdate();let r=++this.p;this.q=new AbortController;let o=!1;try{n=await this.v(e,{signal:this.q.signal})}catch(e){o=!0,t=e}if(this.p===r){if(n===A)this.i=0;else{if(!1===o){try{this.k?.(n)}catch{}this.i=2,this.o?.(n)}else{try{this.A?.(t)}catch{}this.i=3,this.h?.(t)}this.u=n,this.l=t}this._.requestUpdate()}}abort(e){1===this.i&&this.q?.abort(e)}get value(){return this.u}get error(){return this.l}get status(){return this.i}render(e){switch(this.i){case 0:return e.initial?.();case 1:return e.pending?.();case 2:return e.complete?.(this.value);case 3:return e.error?.(this.error);default:throw Error("Unexpected status: "+this.i)}}};let a=(e,n)=>e===n||e.length===n.length&&e.every((e,t)=>!(0,i.Qu)(e,n[t]));var s=t(67294),l=t(49593),c=t(13566),d=t(32529);let{I:b}=d.Al;var m=t(50990);let p=(e,n)=>{let t=e._$AN;if(void 0===t)return!1;for(let e of t)e._$AO?.(n,!1),p(e,n);return!0},u=e=>{let n,t;do{if(void 0===(n=e._$AM))break;(t=n._$AN).delete(e),e=n}while(0===t?.size)},C=e=>{for(let n;n=e._$AM;e=n){let t=n._$AN;if(void 0===t)n._$AN=t=new Set;else if(t.has(e))break;t.add(e),f(n)}};function g(e){void 0!==this._$AN?(u(this),this._$AM=e,C(this)):this._$AM=e}function h(e,n=!1,t=0){let r=this._$AH,o=this._$AN;if(void 0!==o&&0!==o.size)if(n)if(Array.isArray(r))for(let e=t;e<r.length;e++)p(r[e],!1),u(r[e]);else null!=r&&(p(r,!1),u(r));else p(this,e)}let f=e=>{e.type==m.pX.CHILD&&(e._$AP??=h,e._$AQ??=g)};let async_directive_f=class async_directive_f extends m.Xe{constructor(){super(...arguments),this._$AN=void 0}_$AT(e,n,t){super._$AT(e,n,t),C(this),this.isConnected=e._$AU}_$AO(e,n=!0){e!==this.isConnected&&(this.isConnected=e,e?this.reconnected?.():this.disconnected?.()),n&&(p(this,e),u(this))}setValue(e){if(void 0===this._$Ct.strings)this._$Ct._$AI(e,this);else{let n=[...this._$Ct._$AH];n[this._$Ci]=e,this._$Ct._$AI(n,this,0)}}disconnected(){}reconnected(){}};let ref_h=class ref_h{};let v=new WeakMap,w=(0,m.XM)(class extends async_directive_f{render(e){return d.Ld}update(e,[n]){let t=n!==this.G;return t&&void 0!==this.G&&this.rt(void 0),(t||this.lt!==this.ct)&&(this.G=n,this.ht=e.options?.host,this.rt(this.ct=e.element)),d.Ld}rt(e){if(this.isConnected||(e=void 0),"function"==typeof this.G){let n=this.ht??globalThis,t=v.get(n);void 0===t&&(t=new WeakMap,v.set(n,t)),void 0!==t.get(this.G)&&this.G.call(this.ht,void 0),t.set(this.G,e),void 0!==e&&this.G.call(this.ht,e)}else this.G.value=e}get lt(){return"function"==typeof this.G?v.get(this.ht??globalThis)?.get(this.G):this.G?.value}disconnected(){this.lt===this.ct&&this.rt(void 0)}reconnected(){this.rt(this.ct)}});var k=t(67621);let y=["ie"];function x(e){return Array.isArray(e)?e[0]:e}function $(e){return Array.isArray(e)?e:[e]}function E(e,n="",t="",r=0,o=0){let i=[];for(let[A,a]of(t&&e.__compat&&i.push({name:t,compat:e.__compat,depth:r}),t&&(o=function(e){let n=[["",e]];do{let e=n.shift();if(!e)break;let[t,r]=e;if(r.__compat)return t.split(".").length;for(let[e,o]of Object.entries(r)){let r=t?`${t}.${e}`:e;"__compat"in o&&n.push([r,o])}}while(n.length);return 0}(e)),Object.entries(e)))"__compat"!==A&&("__compat"in a&&a.__compat&&i.push({name:n?`${n}.${A}`:A,compat:a.__compat,depth:r+1}),"__compat"in a&&i.push(...E(a,A,"",r+1,o)));return i}function B(e){return Array.isArray(e)&&e.length>1}function D(e,n){return"preview"===e||!!n&&"string"==typeof e&&!!n.releases[e]&&["beta","nightly","planned"].includes(n.releases[e].status)}function _(e){return!!(e.notes&&e.notes.length||e.impl_url&&e.impl_url.length)&&!e.version_removed&&!e.partial_implementation}function F(e){return U(e)||!!e.notes||!!e.impl_url}function U(e){return e.partial_implementation||!!e.alternative_name||!!e.flags||!!e.prefix||!!e.version_removed}function q(e){return!!e.version_added&&!F(e)}function G(e){if(!e)return;let n=$(e).find(e=>q(e));if(n)return n;let t=$(e).find(e=>!!e.version_added&&!U(e));if(t)return t;let r=$(e).find(e=>!e.version_removed&&(e.prefix||e.alternative_name));if(r)return r;let o=$(e).find(e=>!e.version_removed&&e.partial_implementation);if(o)return o;let i=$(e).find(e=>!e.version_removed&&e.flags);if(i)return i;let A=$(e).find(e=>e.version_removed);return A||x(e)}let I={yes:"Full support",partial:"Partial support",preview:"In development. Supported in a pre-release version.",no:"No support",unknown:"Compatibility unknown",experimental:"Experimental. Expect behavior to change in the future.",nonstandard:"Non-standard. Check cross-browser support before using.",deprecated:"Deprecated. Not for use in new websites.",footnote:"See implementation notes.",disabled:"User must explicitly enable this feature.",altname:"Uses a non-standard name.",prefix:"Requires a vendor prefix or different name for use.",more:"Has more compatibility info."};var z=t(44352),S=t(20291),N=t(80170);function T(e,n){let t;if(!e)return"unknown";let r=G(e);if(!r)return"unknown";let{flags:o,version_added:i,version_removed:A,partial_implementation:a}=r;return null===i?t="unknown":D(i,n)?t="preview":i?(t="yes",(A||o&&o.length)&&(t="no")):t="no",a&&(t=A?"removed-partial":"partial"),t}function J(e,n){return"string"!=typeof e?"?":"preview"===e?n.preview_name??"Preview":(e.startsWith("≤")&&(e=e.slice(1)),e=e.replace(/(\.0)+$/g,""))}let M=e=>class extends e{_gleanClick(e){window.dispatchEvent(new CustomEvent("glean-click",{detail:e}))}};let ViewedController=class ViewedController{#e;constructor(e,n,t,r={threshold:.5}){this.#e=e,this.#e.addController(this),this.target=n,this.callback=t,this.intersectionObserverOptions=r,this._visible=!document.hidden,this._timer=null,this._hasViewed=!1,this._onVisibilityChange=this.onVisibilityChange.bind(this)}hostConnected(){document.addEventListener("visibilitychange",this._onVisibilityChange)}hostDisconnected(){this.disconnectObserver(),document.removeEventListener("visibilitychange",this._onVisibilityChange)}hostUpdated(){let e=this.target.value;e?(this._observer=new IntersectionObserver(e=>{e.forEach(e=>this._checkAndSetTimer(e.isIntersecting))},this.intersectionObserverOptions),this._observer.observe(e)):console.error("[ViewedController] Target not found")}disconnectObserver(){this._observer&&this._observer.disconnect()}onVisibilityChange(){this._visible=!document.hidden,this._checkAndSetTimer()}_checkAndSetTimer(e=!1){!this._hasViewed&&this._visible&&e?null===this._timer&&(this._timer=window.setTimeout(()=>{this._hasViewed=!0,this.callback()},1e3)):null!==this._timer&&(clearTimeout(this._timer),this._timer=null)}};let R=`
3
+ <!-- Do not make changes below this line -->
4
+ <details>
5
+ <summary>MDN page report details</summary>
6
+
7
+ * Query: \`$QUERY_ID\`
8
+ * Report started: $DATE
9
+
10
+ </details>
11
+ `,Y={yes:"Full support",partial:"Partial support",preview:"In development. Supported in a pre-release version.",no:"No support",unknown:"Compatibility unknown",experimental:"Experimental. Expect behavior to change in the future.",nonstandard:"Non-standard. Check cross-browser support before using.",deprecated:"Deprecated. Not for use in new websites.",footnote:"See implementation notes.",disabled:"User must explicitly enable this feature.",altname:"Uses a non-standard name.",prefix:"Requires a vendor prefix or different name for use.",more:"Has more compatibility info."};let CompatTable=class CompatTable extends M(r.oi){static properties={query:{},locale:{},data:{},browserInfo:{attribute:"browserinfo"},_pathname:{state:!0},_platforms:{state:!0},_browsers:{state:!0}};static styles=z.Z;_tableRef=new ref_h;constructor(){super(),this.viewed=new ViewedController(this,this._tableRef,()=>this._gleanClick(`${N.EQ}: view -> ${this.query}`)),this.query="",this.data={},this.browserInfo={},this.locale="",this._pathname="",this._platforms=[],this._browsers=[]}get _breadcrumbs(){return this.query.split(".")}get _category(){return this._breadcrumbs[0]??""}get _name(){return this._breadcrumbs.at(-1)??""}connectedCallback(){super.connectedCallback(),this._pathname=window.location.pathname,[this._platforms,this._browsers]=function(e,n,t){let r=n.__compat&&"nodejs"in n.__compat.support,o=n.__compat&&"deno"in n.__compat.support,i=["desktop","mobile"];("javascript"===e||r||o)&&i.push("server");let A=[];for(let e of i){let n=Object.keys(t);A.push(...n.filter(n=>n in t&&t[n].type===e))}return"webextensions"===e&&(A=A.filter(e=>t[e].accepts_webextensions)),"javascript"===e||r||(A=A.filter(e=>"nodejs"!==e)),[i,[...A=A.filter(e=>!y.includes(e))]]}(this._category,this.data,this.browserInfo)}get _issueUrl(){let e=new URLSearchParams,n=R.replace(/\$DATE/g,new Date().toISOString()).replace(/\$QUERY_ID/g,this.query).trim();return e.set("mdn-url",`https://developer.mozilla.org${this._pathname}`),e.set("metadata",n),e.set("title",`${this.query} - <SUMMARIZE THE PROBLEM>`),e.set("template","data-problem.yml"),`https://github.com/mdn/browser-compat-data/issues/new?${e.toString()}`}_renderIssueLink(){let e=this.data.__compat?.source_file;return(0,r.dy)`<div class="bc-on-github">
12
+ <a
13
+ class="bc-github-link external external-icon"
14
+ href="#"
15
+ @click=${e=>{e.preventDefault(),window.open(this._issueUrl,"_blank","noopener,noreferrer")}}
16
+ target="_blank"
17
+ rel="noopener noreferrer"
18
+ title="Report an issue with this compatibility data"
19
+ >
20
+ Report problems with this compatibility data</a
21
+ >${e?(0,r.dy)` •
22
+ <a
23
+ class="bc-github-link external external-icon"
24
+ href=${`https://github.com/mdn/browser-compat-data/tree/main/${e}`}
25
+ target="_blank"
26
+ rel="noopener noreferrer"
27
+ title=${`File: ${e}`}
28
+ >
29
+ View data on GitHub
30
+ </a>`:null}
31
+ </div>`}_renderTable(){return(0,r.dy)`<figure class="table-container">
32
+ <figure class="table-container-inner">
33
+ ${this._renderIssueLink()}
34
+ <table
35
+ ${w(this._tableRef)}
36
+ class="bc-table bc-table-web"
37
+ style="--browser-count: ${Object.keys(this._browsers).length}"
38
+ >
39
+ ${this._renderTableHeader()} ${this._renderTableBody()}
40
+ </table>
41
+ </figure>
42
+ </figure>`}_renderTableHeader(){return(0,r.dy)`<thead>
43
+ ${this._renderPlatformHeaders()} ${this._renderBrowserHeaders()}
44
+ </thead>`}_renderPlatformHeaders(){let e=this._platforms.map(e=>({platform:e,browsers:this._browsers.filter(n=>this.browserInfo[n].type===e)})),n=e.map(({browsers:e})=>e.length);return(0,r.dy)`<tr class="bc-platforms">
45
+ <td></td>
46
+ ${e.map(({platform:e,browsers:t},o)=>{let i=t.length,A=`bc-platform bc-platform-${e}`,a=`icon icon-${e}`,s=2+n.slice(0,o).reduce((e,n)=>e+n,0);return(0,r.dy)`<th
47
+ class=${A}
48
+ colspan=${i}
49
+ title=${e}
50
+ style="grid-column: ${s} / ${s+i}"
51
+ >
52
+ <span class=${a}></span>
53
+ <span class="visually-hidden">${e}</span>
54
+ </th>`})}
55
+ </tr>`}_renderBrowserHeaders(){return(0,r.dy)`<tr class="bc-browsers">
56
+ <td></td>
57
+ ${this._browsers.map(e=>{var n;return(0,r.dy)`<th class=${`bc-browser bc-browser-${e}`}>
58
+ <div class=${`bc-head-txt-label bc-head-icon-${e}`}>
59
+ ${this.browserInfo[e]?.name}
60
+ </div>
61
+ <div
62
+ class=${`bc-head-icon-symbol icon icon-${(n=e).startsWith("firefox")?"simple-firefox":"webview_android"===n?"webview":"webview_ios"===n?"safari":n.split("_")[0]??""}`}
63
+ ></div>
64
+ </th>`})}
65
+ </tr>`}_renderTableBody(){let{data:e,_browsers:n,browserInfo:t,locale:o}=this,i=E(e,"",this._name);return i.length>100&&(i=i.filter(({depth:e})=>e<2)),i.length>100&&(i=i.filter(({compat:{status:e}})=>e?.standard_track)),i.length>100&&(i=i.filter(({compat:{status:e}})=>!e?.deprecated)),i.length>100&&(i=i.filter(({compat:{status:e}})=>!e?.experimental)),i.length>100&&(i=i.slice(0,100)),(0,r.dy)`<tbody>
66
+ ${i.map(e=>{let i,{name:A,compat:a,depth:s}=e,l=a.description?(0,r.dy)`<span>${(0,k.A)(a.description)}</span>`:(0,r.dy)`<code>${A}</code>`,d=(0,r.dy)`${l}${a.status&&this._renderStatusIcons(a.status)}`;if(a.mdn_url&&s>0){let e=a.mdn_url.replace(`/${S.ZW}/docs`,`/${o}/docs`);i=(0,r.dy)`<a
67
+ href=${e}
68
+ class="bc-table-row-header"
69
+ data-glean=${`${N.EQ}: link -> ${e}`}
70
+ >
71
+ ${d}
72
+ </a>`}else i=(0,r.dy)`<div class="bc-table-row-header">
73
+ ${d}
74
+ </div>`;let b=e=>{let n=this.shadowRoot?.activeElement,{currentTarget:t}=e;if(n instanceof HTMLElement&&t instanceof HTMLElement&&n.closest("td")===t.closest("td")){n.blur(),e.preventDefault();return}t instanceof HTMLElement&&setTimeout(()=>t.focus(),0)};return(0,r.dy)`<tr>
75
+ <th class=${`bc-feature bc-feature-depth-${s}`} scope="row">
76
+ ${i}
77
+ </th>
78
+ ${n.map(e=>{let n=t[e],o=a.support[e]??{version_added:null},i=T(o,n),A=this._renderNotes(n,o);return(0,r.dy)`<td
79
+ class=${`bc-support bc-browser-${e} bc-supports-${i} ${A?"bc-has-history":""}`}
80
+ >
81
+ <button
82
+ type="button"
83
+ title=${(0,c.o)(A&&"Toggle history")}
84
+ @mousedown=${b}
85
+ >
86
+ ${this._renderCellText(o,n)}
87
+ </button>
88
+ ${A&&(0,r.dy)`<div class="timeline" tabindex="0">
89
+ <dl class="bc-notes-list">${A}</dl>
90
+ </div>`}
91
+ </td>`})}
92
+ </tr>`})}
93
+ </tbody>`}_renderCellIcons(e){let n=G(e);if(!n)return null;let t=[n.prefix&&this._renderIcon("prefix"),_(n)&&this._renderIcon("footnote"),n.alternative_name&&this._renderIcon("altname"),n.flags&&this._renderIcon("disabled"),B(e)&&this._renderIcon("more")].filter(Boolean);return t.length?(0,r.dy)`<div class="bc-icons">${t}</div>`:null}_renderIcon(e){let n=e in Y?Y[e]:e;return(0,r.dy)`<abbr class="only-icon" title=${(0,c.o)(n)}>
94
+ <span>${e}</span>
95
+ <i class=${`icon icon-${e}`}></i>
96
+ </abbr>`}_renderStatusIcons(e){let n=[];return e.experimental&&n.push({title:"Experimental. Expect behavior to change in the future.",text:"Experimental",iconClassName:"icon-experimental"}),e.deprecated&&n.push({title:"Deprecated. Not for use in new websites.",text:"Deprecated",iconClassName:"icon-deprecated"}),e.standard_track||n.push({title:"Non-standard. Expect poor cross-browser support.",text:"Non-standard",iconClassName:"icon-nonstandard"}),0===n.length?null:(0,r.dy)`<div class="bc-icons">
97
+ ${n.map(e=>(0,r.dy)`<abbr
98
+ class=${`only-icon icon ${e.iconClassName}`}
99
+ title=${e.title}
100
+ >
101
+ <span>${e.text}</span>
102
+ </abbr>`)}
103
+ </div>`}_renderNotes(e,n){return $(n).slice().reverse().flatMap((t,o)=>{let i=[t.version_removed&&!$(n).some(e=>e.version_added===t.version_removed)?{iconName:"footnote",label:`Removed in ${J(t.version_removed,e)} and later`}:null,t.partial_implementation?{iconName:"footnote",label:"Partial support"}:null,t.prefix?{iconName:"prefix",label:`Implemented with the vendor prefix: ${t.prefix}`}:null,t.alternative_name?{iconName:"altname",label:`Alternate name: ${t.alternative_name}`}:null,t.flags?{iconName:"disabled",label:(()=>{let n="string"==typeof t.version_added,o="string"==typeof t.version_removed,i=t.flags||[];return(0,r.dy)`
104
+ ${[n&&`From version ${t.version_added}`,o&&`${n?" until":"Until"} ${t.version_removed} (exclusive)`,n||o?": this":"This"," feature is behind the",...i.map((e,n)=>{let t=e.value_to_set?(0,r.dy)` (needs to be set to
105
+ <code>${e.value_to_set}</code>)`:"";return[(0,r.dy)`<code>${e.name}</code>`,"preference"===e.type&&(0,r.dy)` preference${t}`,"runtime_flag"===e.type&&(0,r.dy)` runtime flag${t}`,n<i.length-1&&" and the "].filter(Boolean)}),".",e.pref_url&&i.some(e=>"preference"===e.type)&&` To change preferences in ${e.name}, visit ${e.pref_url}.`].filter(Boolean).map(e=>(0,r.dy)`${e}`)}
106
+ `})()}:null,t.notes?(Array.isArray(t.notes)?t.notes:[t.notes]).map(e=>({iconName:"footnote",label:e})):null,t.impl_url?(Array.isArray(t.impl_url)?t.impl_url:[t.impl_url]).map(e=>({iconName:"footnote",label:(0,r.dy)`See
107
+ <a href=${e}>${function(e){let n=e.match(/^https:\/\/(?:crbug\.com|webkit\.org\/b|bugzil\.la)\/([0-9]+)/i),t=n?n[1]:null;return t?`bug ${t}`:e}(e)}</a>.`})):null,D(t.version_added,e)?{iconName:"footnote",label:"Preview browser support"}:null,q(t)&&!D(t.version_added,e)?{iconName:"footnote",label:"Full support"}:!1===t.version_added&&!F(t)?{iconName:"footnote",label:"No support"}:null].flat().filter(Boolean);0===i.length&&i.push({iconName:"unknown",label:"Support unknown"});let A=i.filter(e=>null!==e),a=i.length>0;return(0===o||a)&&(0,r.dy)`<div class="bc-notes-wrapper">
108
+ <dt
109
+ class=${`bc-supports-${T(t,e)} bc-supports`}
110
+ >
111
+ ${this._renderCellText(t,e,!0)}
112
+ </dt>
113
+ ${A.map(({iconName:e,label:n})=>(0,r.dy)`<dd class="bc-supports-dd">
114
+ ${this._renderIcon(e)}${"string"==typeof n?(0,r.dy)`<span>${(0,k.A)(n)}</span>`:n}
115
+ </dd>`)}
116
+ ${!a?(0,r.dy)`<dd></dd>`:null}
117
+ </div>`}).filter(Boolean)}_renderCellText(e,n,t=!1){let o,i,A=G(e),a=A?.version_added??null,s=A?.version_last??null,l=function(e){if(e)return G(e)?.release_date}(e),c=T(e,n);switch(a){case null:o={isSupported:"unknown"};break;case!0:o={isSupported:s?"no":"yes"};break;case!1:o={isSupported:"no"};break;case"preview":o={isSupported:"preview"};break;default:o={isSupported:c,label:"string"!=typeof s?(0,r.dy)`${J(a,n)}`:(0,r.dy)`${J(a,n)}&#8202;&ndash;&#8202;${J(s,n)}`}}let d="";switch(o.isSupported){case"yes":d="Full support",i=o.label||"Yes";break;case"partial":d="Partial support",i=o.label||"Partial";break;case"removed-partial":t?(d="Partial support",i=o.label||"Partial"):(d="No support",i=o.label||"No");break;case"no":d="No support",i=o.label||"No";break;case"preview":d="Preview support",i=o.label||n.preview_name;break;case"unknown":d="Support unknown",i="?"}return d=`${n.name} – ${d}`,(0,r.dy)`<div
118
+ class=${t?"bcd-timeline-cell-text-wrapper":"bcd-cell-text-wrapper"}
119
+ >
120
+ <div class="bcd-cell-icons">
121
+ <span class="icon-wrap">
122
+ <abbr
123
+ class=${`
124
+ bc-level-${c}
125
+ icon
126
+ icon-${c}`}
127
+ title=${d}
128
+ >
129
+ <span class="bc-support-level">${d}</span>
130
+ </abbr>
131
+ </span>
132
+ </div>
133
+ <div class="bcd-cell-text-copy">
134
+ <span class="bc-browser-name">${n.name}</span>
135
+ <span
136
+ class="bc-version-label"
137
+ title=${l&&!t?`${n.name} ${a} – Release date: ${l}`:""}
138
+ >
139
+ ${!t||a?i:null}
140
+ ${l&&t?` (Release date: ${l})`:""}
141
+ </span>
142
+ </div>
143
+ ${e&&this._renderCellIcons(e)}
144
+ </div>`}_renderTableLegend(){let{_browsers:e,browserInfo:n}=this;if(!n)throw Error("Missing browser info");return(0,r.dy)`<section class="bc-legend">
145
+ <h3 class="visually-hidden" id="Legend">Legend</h3>
146
+ <p class="bc-legend-tip">
147
+ Tip: you can click/tap on a cell for more information.
148
+ </p>
149
+ <dl class="bc-legend-items-container">
150
+ ${(function(e,n,t,r){let o=new Set;for(let i of E(e,"",n)){let{status:e}=i.compat;for(let n of(e&&(e.experimental&&o.add("experimental"),e.deprecated&&o.add("deprecated"),e.standard_track||o.add("nonstandard")),r)){let e=i.compat.support[n]??{version_added:null};if(y.includes(n))continue;let r=x(e);for(let i of(r&&_(r)&&o.add("footnote"),$(e)))i.version_added?i.flags&&i.flags.length?o.add("no"):D(i.version_added,t[n])?o.add("preview"):o.add("yes"):null==i.version_added?o.add("unknown"):o.add("no"),i.partial_implementation&&o.add("partial"),i.prefix&&o.add("prefix"),i.alternative_name&&o.add("altname"),i.flags&&o.add("disabled");B(e)&&o.add("more")}}return Object.keys(I).filter(e=>o.has(e)).map(e=>[e,I[e]])})(this.data,this._name,n,e).map(([e,n])=>["yes","partial","no","unknown","preview"].includes(e)?(0,r.dy)`<div class="bc-legend-item">
151
+ <dt class="bc-legend-item-dt">
152
+ <span class=${`bc-supports-${e} bc-supports`}>
153
+ <abbr
154
+ class=${`bc-level bc-level-${e} icon icon-${e}`}
155
+ title=${n}
156
+ >
157
+ <span class="visually-hidden">${n}</span>
158
+ </abbr>
159
+ </span>
160
+ </dt>
161
+ <dd class="bc-legend-item-dd">${n}</dd>
162
+ </div>`:(0,r.dy)`<div class="bc-legend-item">
163
+ <dt class="bc-legend-item-dt">
164
+ <abbr
165
+ class="legend-icons icon icon-${e}"
166
+ title=${n}
167
+ ></abbr>
168
+ </dt>
169
+ <dd class="bc-legend-item-dd">${n}</dd>
170
+ </div>`)}
171
+ </dl>
172
+ </section>`}render(){return(0,r.dy)` ${this._renderTable()} ${this._renderTableLegend()} `}};customElements.define("compat-table",CompatTable);let LazyCompatTable=class LazyCompatTable extends r.oi{static properties={query:{},locale:{}};constructor(){super(),this.query="",this.locale=""}connectedCallback(){super.connectedCallback()}_dataTask=new task_h(this,{args:()=>[this.query],task:async([e],{signal:n})=>{let t=await fetch(`${l.AJ}/bcd/api/v0/current/${e}.json`,{signal:n});if(!t.ok)throw console.error("Failed to fetch BCD data:",t),Error(t.statusText);return t.json()}});render(){return this._dataTask.render({pending:()=>(0,r.dy)`<p>Loading...</p>`,complete:e=>e?(0,r.dy)`<compat-table
173
+ query=${this.query}
174
+ locale=${this.locale}
175
+ .data=${e.data}
176
+ .browserInfo=${e.browsers}
177
+ ></compat-table>`:(0,r.dy)`<p>No compatibility data found</p>`,error:e=>(0,r.dy)`<p>Error loading data: <code>${e}</code></p>`})}};customElements.define("lazy-compat-table",LazyCompatTable);let j=(0,o.L)({tagName:"lazy-compat-table",elementClass:LazyCompatTable,react:s})}};
178
+ //# sourceMappingURL=6883.5757a779418effad.js.map
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2017 Google LLC
4
+ * SPDX-License-Identifier: BSD-3-Clause
5
+ */
6
+
7
+ /**
8
+ * @license
9
+ * Copyright 2020 Google LLC
10
+ * SPDX-License-Identifier: BSD-3-Clause
11
+ */