@mdn/fred 2.3.0 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env-dist +0 -4
- package/CHANGELOG.md +40 -0
- package/components/article-footer/server.js +3 -1
- package/components/code-example/types.d.ts +1 -1
- package/components/env/index.js +0 -3
- package/components/issues-table/element.js +1 -1
- package/components/left-sidebar/server.css +14 -2
- package/components/live-sample-result/element.js +2 -0
- package/components/menu/tabs.json +4 -0
- package/components/outer-layout/server.js +8 -6
- package/components/placement/mixin.js +2 -2
- package/components/play-console/element.js +5 -1
- package/components/play-console/types.d.ts +1 -1
- package/components/record-visit/element.js +1 -1
- package/components/reference-layout/server.css +10 -0
- package/components/reference-layout/server.js +3 -1
- package/entry.client.js +0 -1
- package/hooks/live-samples.js +5 -3
- package/l10n/locales/de.ftl +288 -22
- package/l10n/locales/fr.ftl +256 -91
- package/l10n/parser/transform.js +0 -1
- package/l10n/template.ftl +5 -0
- package/legacy/index.tsx +2 -0
- package/out/service-worker.js +1 -1
- package/out/service-worker.js.map +1 -1
- package/out/static/client/1550.317cf910e7937050.js +321 -0
- package/out/static/client/1550.317cf910e7937050.js.map +1 -0
- package/out/static/client/{3094.58da3996c52b5264.js → 3094.ad202726cd671cc6.js} +2 -2
- package/out/static/client/3094.ad202726cd671cc6.js.map +1 -0
- package/out/static/client/{4204.c77e84ea2f8c359a.js → 4204.082860f577e883b1.js} +2 -2
- package/out/static/client/{4204.c77e84ea2f8c359a.js.map → 4204.082860f577e883b1.js.map} +1 -1
- package/out/static/client/{5330.8d5173f308b639bc.js → 5330.0fa70a944297da04.js} +7 -7
- package/out/static/client/{5330.8d5173f308b639bc.js.map → 5330.0fa70a944297da04.js.map} +1 -1
- package/out/static/client/5649.00f25ce181894101.js +2 -0
- package/out/static/client/5649.00f25ce181894101.js.map +1 -0
- package/out/static/client/6333.530138f4b30df5a7.js +317 -0
- package/out/static/client/6333.530138f4b30df5a7.js.map +1 -0
- package/out/static/client/6760.d97440f1ca6690c6.js.map +1 -1
- package/out/static/client/{8903.ce3ee42276c345b9.js → 8903.f870aafb338b203a.js} +2 -2
- package/out/static/client/{8903.ce3ee42276c345b9.js.map → 8903.f870aafb338b203a.js.map} +1 -1
- package/out/static/client/{index.880284fd3bb87ecf.js → index.3d355ddb095f80e1.js} +4 -4
- package/out/static/client/index.3d355ddb095f80e1.js.map +1 -0
- package/out/static/client/{runtime.9d7da16d8104c706.js → runtime.5998abbd768bf4b4.js} +2 -2
- package/out/static/client/{runtime.9d7da16d8104c706.js.map → runtime.5998abbd768bf4b4.js.map} +1 -1
- package/out/static/client/stats.json +284 -284
- package/out/static/client/styles-a11y-menu.e450c80bdecd73b0.js +1 -0
- package/out/static/client/styles-advertising.8680d559dfd1e6da.js +1 -0
- package/out/static/client/styles-article-footer.4c924cfce86cefb1.js +1 -0
- package/out/static/client/styles-banner.b2fd6f3f4890f119.js +1 -0
- package/out/static/client/styles-baseline-indicator.7bda150efbd00e44.js +1 -0
- package/out/static/client/styles-blog-index.ed9148eebbd54874.js +1 -0
- package/out/static/client/styles-blog-post.e23d949d4b39893e.js +1 -0
- package/out/static/client/styles-breadcrumbs-bar.e72110560a2a2d11.js +1 -0
- package/out/static/client/styles-breadcrumbs.3e8f4af57730f539.js +1 -0
- package/out/static/client/styles-button.4529576beae298ca.js +1 -0
- package/out/static/client/styles-content-section.6e6c01c92b1ef20d.js +1 -0
- package/out/static/client/styles-contributor-spotlight.b7bc7bc60baf8578.js +1 -0
- package/out/static/client/styles-curriculum-about.a146120bd6d81d2b.js +1 -0
- package/out/static/client/styles-curriculum-default.f9cffbec77bd6a2a.js +1 -0
- package/out/static/client/styles-curriculum-landing.64b11fc6617af9bf.js +1 -0
- package/out/static/client/styles-curriculum-module.a96942f28d9841bd.js +1 -0
- package/out/static/client/styles-curriculum-overview.62ec696fa6196a83.js +1 -0
- package/out/static/client/styles-featured-articles.aaed3d1876c9083b.js +1 -0
- package/out/static/client/styles-footer.c3e8b1950387a3f8.js +1 -0
- package/out/static/client/styles-generic-about.13ddd8305fa7ad8e.js +1 -0
- package/out/static/client/styles-generic-community.f60b231a4a172157.js +1 -0
- package/out/static/client/styles-generic-content.5124855e59a283a5.js +1 -0
- package/out/static/client/styles-generic-layout.813a99dd507e1bab.js +1 -0
- package/out/static/client/styles-generic-sidebar.1d92203f2d9da43d.js +1 -0
- package/out/static/client/styles-generic-toc.61b41b9e9f5f85d0.js +1 -0
- package/out/static/client/{styles-global.d51198f5229746cf.js → styles-global.aa9d5defd4680e6c.js} +1 -1
- package/out/static/client/styles-heading-anchor.df83d71ad077415d.js +1 -0
- package/out/static/client/styles-homepage-body.0df30491a320f9c7.js +1 -0
- package/out/static/client/styles-homepage-contributor-spotlight.b879a173e860f6a9.js +1 -0
- package/out/static/client/styles-homepage-footer.99f5e147d6f2b9ed.js +1 -0
- package/out/static/client/styles-homepage-header.43271f37ca9a57df.js +1 -0
- package/out/static/client/styles-homepage-hero.ae60620a6fed0008.js +1 -0
- package/out/static/client/styles-homepage.3dfe53192c32e305.js +1 -0
- package/out/static/client/styles-latest-news.8a03d3fba6e1cd47.js +1 -0
- package/out/static/client/{styles-left-sidebar.dc1db5a87a982579.css → styles-left-sidebar.6f954e8939555f77.css} +2 -2
- package/out/static/client/{styles-left-sidebar.dc1db5a87a982579.css.map → styles-left-sidebar.6f954e8939555f77.css.map} +1 -1
- package/out/static/client/styles-left-sidebar.c36264a47e1805b1.js +1 -0
- package/out/static/client/styles-logo.8f20fe059f2d43b6.js +1 -0
- package/out/static/client/styles-mandala.926fd25378dd7542.js +1 -0
- package/out/static/client/styles-menu.1d5ef33019535538.js +1 -0
- package/out/static/client/styles-navigation.5caf382b2b53c3c1.js +1 -0
- package/out/static/client/styles-not-found.7fa9aeb622dc059e.js +1 -0
- package/out/static/client/styles-observatory-landing.34dc1b73c5e94907.js +1 -0
- package/out/static/client/styles-observatory-results.74448918bd9b8126.js +1 -0
- package/out/static/client/styles-page-layout.fd2f866f258a840d.js +1 -0
- package/out/static/client/styles-pagination.6a917bf99443fbe0.js +1 -0
- package/out/static/client/styles-playground.f6d77d4376f8103b.js +1 -0
- package/out/static/client/styles-recent-contributions.05e0168e43678c69.js +1 -0
- package/out/static/client/styles-reference-layout.01f91b57466bc3d8.css +2 -0
- package/out/static/client/styles-reference-layout.01f91b57466bc3d8.css.map +1 -0
- package/out/static/client/styles-reference-layout.c225b05af4a496ec.js +1 -0
- package/out/static/client/styles-reference-toc.cefa20df1f0b9e55.js +1 -0
- package/out/static/client/styles-sandbox.39a70a5ffa12a531.js +1 -0
- package/out/static/client/styles-site-search.bb29f36fdd646b10.js +1 -0
- package/out/static/client/styles-social-image.29ca61210c11848e.js +1 -0
- package/out/static/client/styles-translation-banner.f7da234674dc43ff.js +1 -0
- package/out/static/client/styles-writer-toolbar.4743aa6e3fa72415.js +1 -0
- package/out/static/client/{styles.7ccaeb561f3fb889.js → styles.37aa6c605abf6990.js} +2 -2
- package/out/static/client/{styles.7ccaeb561f3fb889.js.map → styles.37aa6c605abf6990.js.map} +1 -1
- package/out/static/legacy/asset-manifest.json +5 -5
- package/out/static/legacy/{index.f31b95b1d9fb620a.js → index.3fd784dd246fb28b.js} +3 -3
- package/out/static/legacy/{index.f31b95b1d9fb620a.js.map → index.3fd784dd246fb28b.js.map} +1 -1
- package/out/static/legacy/{index.fb9f65c469ca30a7.html → index.b72bb30bdf1cb6b9.html} +1 -1
- package/out/static/legacy/stats.json +13 -13
- package/out/static/legacy/{yari.5a79950ba25352de.js → yari.4560ee30606e8a90.js} +3 -3
- package/out/static/legacy/{yari.5a79950ba25352de.js.map → yari.4560ee30606e8a90.js.map} +1 -1
- package/out/static/ssr/1550.js +256 -91
- package/out/static/ssr/1550.js.map +1 -1
- package/out/static/ssr/6333.js +288 -22
- package/out/static/ssr/6333.js.map +1 -1
- package/out/static/ssr/index.js +14 -12
- package/out/static/ssr/index.js.map +1 -1
- package/out/static/ssr/stats.json +4 -4
- package/package.json +16 -16
- package/server.js +5 -1
- package/test/unit/l10n/fixtures/simple-different.js +1 -1
- package/test/unit/l10n/fixtures/simple.js +1 -1
- package/test/unit/l10n/fixtures/tags-with-duplicates.js +1 -1
- package/test/unit/l10n/fixtures/tags-with-substitutions.js +1 -1
- package/test/unit/l10n/fixtures/tags.js +1 -1
- package/types/lit.ts +1 -1
- package/hooks/ga-init.d.ts +0 -5
- package/hooks/ga-init.js +0 -28
- package/out/static/client/1550.1bc9bf6c1f4edb2b.js +0 -156
- package/out/static/client/1550.1bc9bf6c1f4edb2b.js.map +0 -1
- package/out/static/client/3094.58da3996c52b5264.js.map +0 -1
- package/out/static/client/5649.0e40dc56a97136d2.js +0 -2
- package/out/static/client/5649.0e40dc56a97136d2.js.map +0 -1
- package/out/static/client/6333.4df091fca06fdbe0.js +0 -51
- package/out/static/client/6333.4df091fca06fdbe0.js.map +0 -1
- package/out/static/client/index.880284fd3bb87ecf.js.map +0 -1
- package/out/static/client/styles-a11y-menu.bf0e970df3199f5d.js +0 -1
- package/out/static/client/styles-advertising.d17c1cc85ea68d89.js +0 -1
- package/out/static/client/styles-article-footer.da648fa126c9ef35.js +0 -1
- package/out/static/client/styles-banner.3a9c208a543e4e08.js +0 -1
- package/out/static/client/styles-baseline-indicator.de2ebbf5d4d6d2c6.js +0 -1
- package/out/static/client/styles-blog-index.db438e20391403c5.js +0 -1
- package/out/static/client/styles-blog-post.4f8200c9e59f9064.js +0 -1
- package/out/static/client/styles-breadcrumbs-bar.56117b372f98e1bb.js +0 -1
- package/out/static/client/styles-breadcrumbs.31fef62b20adf891.js +0 -1
- package/out/static/client/styles-button.fd5bf1d0d6b9e233.js +0 -1
- package/out/static/client/styles-content-section.a196f33b9d9e316d.js +0 -1
- package/out/static/client/styles-contributor-spotlight.9e6a6225135a95e4.js +0 -1
- package/out/static/client/styles-curriculum-about.1596c8f7f696ec0b.js +0 -1
- package/out/static/client/styles-curriculum-default.6688b5588b7bb474.js +0 -1
- package/out/static/client/styles-curriculum-landing.978bdf31fe767e6b.js +0 -1
- package/out/static/client/styles-curriculum-module.22ad33bd781fedea.js +0 -1
- package/out/static/client/styles-curriculum-overview.73290072eaf98c47.js +0 -1
- package/out/static/client/styles-featured-articles.2426db4e569be912.js +0 -1
- package/out/static/client/styles-footer.9b7a6e88180fe92d.js +0 -1
- package/out/static/client/styles-generic-about.fbdd35941b30ecb4.js +0 -1
- package/out/static/client/styles-generic-community.0460f98e8202cbc3.js +0 -1
- package/out/static/client/styles-generic-content.d7ba09d8d6784d92.js +0 -1
- package/out/static/client/styles-generic-layout.4e8f7141d77a3d0a.js +0 -1
- package/out/static/client/styles-generic-sidebar.9a19341f843e26dc.js +0 -1
- package/out/static/client/styles-generic-toc.313908c6a50cd4f4.js +0 -1
- package/out/static/client/styles-heading-anchor.6f4f5ad03a7f9308.js +0 -1
- package/out/static/client/styles-homepage-body.0a3bdcbec90af911.js +0 -1
- package/out/static/client/styles-homepage-contributor-spotlight.d2b96c96fc38fcf8.js +0 -1
- package/out/static/client/styles-homepage-footer.f1c1120fd9eb434a.js +0 -1
- package/out/static/client/styles-homepage-header.cbe6e6608152438d.js +0 -1
- package/out/static/client/styles-homepage-hero.5b6ca92aaffb33ad.js +0 -1
- package/out/static/client/styles-homepage.3ed301c8c4ebaa04.js +0 -1
- package/out/static/client/styles-latest-news.9fcf156fdb6f0099.js +0 -1
- package/out/static/client/styles-left-sidebar.8afa4a0c07dc390a.js +0 -1
- package/out/static/client/styles-logo.4f1e847c0fafc690.js +0 -1
- package/out/static/client/styles-mandala.b5bc9b1e26685615.js +0 -1
- package/out/static/client/styles-menu.cdaed3d488edc7e5.js +0 -1
- package/out/static/client/styles-navigation.c30010b963de146d.js +0 -1
- package/out/static/client/styles-not-found.1931cd41c663a211.js +0 -1
- package/out/static/client/styles-observatory-landing.cfcf2761ceece549.js +0 -1
- package/out/static/client/styles-observatory-results.851694fe2b9402e8.js +0 -1
- package/out/static/client/styles-page-layout.242bde5d7a8b2118.js +0 -1
- package/out/static/client/styles-pagination.91d95daa63d13fc6.js +0 -1
- package/out/static/client/styles-playground.68430c102865ae2c.js +0 -1
- package/out/static/client/styles-recent-contributions.5d2b8bc44c3385b9.js +0 -1
- package/out/static/client/styles-reference-layout.f17861486ef2423f.css +0 -2
- package/out/static/client/styles-reference-layout.f17861486ef2423f.css.map +0 -1
- package/out/static/client/styles-reference-layout.fcb22f6809bd2f5b.js +0 -1
- package/out/static/client/styles-reference-toc.f1e6afe3660e67a1.js +0 -1
- package/out/static/client/styles-sandbox.939050c7574b6369.js +0 -1
- package/out/static/client/styles-site-search.712ba523882ce36e.js +0 -1
- package/out/static/client/styles-social-image.1f1abcf5b04e3219.js +0 -1
- package/out/static/client/styles-translation-banner.cae413f93f1335b6.js +0 -1
- package/out/static/client/styles-writer-toolbar.796f905329fa62ff.js +0 -1
- package/utils/dnt-helper.js +0 -59
- /package/out/static/client/{5330.8d5173f308b639bc.js.LICENSE.txt → 5330.0fa70a944297da04.js.LICENSE.txt} +0 -0
- /package/out/static/client/{index.880284fd3bb87ecf.js.LICENSE.txt → index.3d355ddb095f80e1.js.LICENSE.txt} +0 -0
- /package/out/static/legacy/{index.f31b95b1d9fb620a.js.LICENSE.txt → index.3fd784dd246fb28b.js.LICENSE.txt} +0 -0
- /package/out/static/legacy/{yari.5a79950ba25352de.js.LICENSE.txt → yari.4560ee30606e8a90.js.LICENSE.txt} +0 -0
|
@@ -0,0 +1,317 @@
|
|
|
1
|
+
export const __rspack_esm_id="6333";export const __rspack_esm_ids=["6333"];export const __webpack_modules__={89516(e,n,t){t.d(n,{default:()=>i});let i=`content-feedback-question = War diese \xdcbersetzung hilfreich?
|
|
2
|
+
content-feedback-reason = Warum war diese \xdcbersetzung nicht hilfreich?
|
|
3
|
+
content-feedback-thanks = Vielen Dank f\xfcr die R\xfcckmeldung!
|
|
4
|
+
|
|
5
|
+
footer-tagline = Der Bauplan f\xfcr ein besseres Internet.
|
|
6
|
+
footer-mofo = Besuche die gemeinn\xfctzige Muttergesellschaft der <a data-l10n-name="moco">Mozilla Corporation</a>, die <a data-l10n-name="mofo">Mozilla Foundation</a>.
|
|
7
|
+
footer-copyright = Teile dieses Inhalts sind \xa91998–{ $year } von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verf\xfcgbar unter <a data-l10n-name="cc">einer Creative-Commons-Lizenz</a>.
|
|
8
|
+
|
|
9
|
+
search-modal-site-search = Website-Suche nach <em>{ $query }</em>
|
|
10
|
+
|
|
11
|
+
site-search-search-stats = { $results } Dokumente gefunden.
|
|
12
|
+
site-search-suggestion-matches = { $relation ->
|
|
13
|
+
[gt] mehr als { $matches ->
|
|
14
|
+
[one] { $matches } \xdcbereinstimmung
|
|
15
|
+
*[other] { $matches } \xdcbereinstimmungen
|
|
16
|
+
}
|
|
17
|
+
*[eq] { $matches ->
|
|
18
|
+
[one] { $matches } \xdcbereinstimmung
|
|
19
|
+
*[other] { $matches } \xdcbereinstimmungen
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
blog-time-to-read = { $minutes ->
|
|
24
|
+
[one] { $minutes } Minute Lesezeit
|
|
25
|
+
*[other] { $minutes } Minuten Lesezeit
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
-brand-name-obs = HTTP Observatory
|
|
29
|
+
obs-report = Bericht
|
|
30
|
+
obs-title = { -brand-name-obs }
|
|
31
|
+
obs-landing-intro = Seit 2016 verbessert { -brand-name-obs } die Sicherheit durch Analyse der Einhaltung bew\xe4hrter Sicherheitspraktiken. Es hat durch 47 Millionen Scans Einblicke in \xfcber 6,9 Millionen Websites geliefert.
|
|
32
|
+
obs-assessment = Das von Mozilla entwickelte { -brand-name-obs } f\xfchrt eine umfassende Bewertung der HTTP-Header und weiterer zentraler Sicherheitskonfigurationen einer Website durch.
|
|
33
|
+
obs-scanning = Der automatisierte Scan-Prozess liefert detailliertes, handlungsorientiertes Feedback f\xfcr Entwicklungsteams und Website-Administration und konzentriert sich darauf, potenzielle Sicherheitsl\xfccken zu erkennen und zu beheben.
|
|
34
|
+
obs-security = Das Tool unterst\xfctzt Entwicklungsteams und Website-Administration dabei, Websites in einem sich stetig weiterentwickelnden digitalen Umfeld gegen h\xe4ufige Sicherheitsbedrohungen abzusichern.
|
|
35
|
+
obs-mdn = Das { -brand-name-obs } bietet wirksame Sicherheitseinblicke auf Grundlage von Mozillas Expertise und Engagement f\xfcr ein sichereres Internet sowie basierend auf etablierten Trends und Richtlinien.
|
|
36
|
+
|
|
37
|
+
article-footer-last-modified = Diese Seite wurde zuletzt am <time data-l10n-name="date">{ $date }</time> von <a data-l10n-name="contributors">MDN-Mitwirkenden</a> bearbeitet.
|
|
38
|
+
article-footer-source-title = Ordner: { $folder } (\xf6ffnet in neuem Tab)
|
|
39
|
+
baseline-asterisk = Einige Teile dieser Funktion werden m\xf6glicherweise unterschiedlich gut unterst\xfctzt.
|
|
40
|
+
baseline-high-extra = Diese Funktion ist gut etabliert und funktioniert auf vielen Ger\xe4ten und in vielen Browserversionen. Sie ist seit { $date } browser\xfcbergreifend verf\xfcgbar.
|
|
41
|
+
baseline-low-extra = Seit { $date } funktioniert diese Funktion auf aktuellen Ger\xe4ten und in aktuellen Browserversionen. Auf \xe4lteren Ger\xe4ten oder in \xe4lteren Browsern funktioniert sie m\xf6glicherweise nicht.
|
|
42
|
+
baseline-not-extra = Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
|
|
43
|
+
baseline-supported-in = Unterst\xfctzt in { $browsers }
|
|
44
|
+
baseline-unsupported-in = In { $browsers } nicht weitgehend unterst\xfctzt
|
|
45
|
+
baseline-supported-and-unsupported-in = Unterst\xfctzt in { $supported }, aber in { $unsupported } nicht weitgehend unterst\xfctzt
|
|
46
|
+
homepage-hero-title = Ressourcen f\xfcr Entwickelnde,<br> von Entwickelnden
|
|
47
|
+
homepage-hero-description = Dokumentation zu <a data-l10n-name="css">CSS</a>, <a data-l10n-name="html">HTML</a> und <a data-l10n-name="js">JavaScript</a> – seit 2005.
|
|
48
|
+
not-found-title = Seite nicht gefunden
|
|
49
|
+
not-found-description = Entschuldigung, die Seite <code data-l10n-name="url">{ $url }</code> wurde nicht gefunden.
|
|
50
|
+
not-found-fallback-english = <strong data-l10n-name="strong">Gute Nachricht:</strong> Die angeforderte Seite existiert auf <em data-l10n-name="em">Englisch</em>.
|
|
51
|
+
not-found-fallback-search = Die angeforderte Seite existiert nicht, aber Sie k\xf6nnten eine Website-Suche versuchen nach:
|
|
52
|
+
not-found-back = Zur\xfcck zur Startseite
|
|
53
|
+
compat-browser-version-date = { $browser } { $version } – Ver\xf6ffentlichungsdatum: { $date }
|
|
54
|
+
compat-browser-version-released = Ver\xf6ffentlichungsdatum: { $date }
|
|
55
|
+
compat-link-source-title = Datei: { $filename }
|
|
56
|
+
compat-support-prefix = Implementiert mit dem Hersteller-Pr\xe4fix: { $prefix }
|
|
57
|
+
compat-support-altname = Alternativer Name: { $altname }
|
|
58
|
+
compat-support-removed = Ab { $version } entfernt
|
|
59
|
+
compat-support-see-impl-url = Siehe <a data-l10n-name="impl_url">{ $label }</a>
|
|
60
|
+
compat-support-flags =
|
|
61
|
+
{ NUMBER($has_added) ->
|
|
62
|
+
[one] Ab Version { $version_added }
|
|
63
|
+
*[other] { "" }
|
|
64
|
+
}{ $has_last ->
|
|
65
|
+
[one]
|
|
66
|
+
{ NUMBER($has_added) ->
|
|
67
|
+
*[zero] Bis { $versionLast } muss
|
|
68
|
+
[one] { " " }bis { $versionLast } muss
|
|
69
|
+
}
|
|
70
|
+
*[zero]
|
|
71
|
+
{ NUMBER($has_added) ->
|
|
72
|
+
*[zero] muss
|
|
73
|
+
[one] { " " }muss
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
{ " " }die Einstellung <code data-l10n-name="name">{ $flag_name }</code>{ " " }
|
|
77
|
+
{ $flag_type ->
|
|
78
|
+
*[preference] explizit festgelegt werden
|
|
79
|
+
[runtime_flag] als Laufzeit-Flag explizit festgelegt werden
|
|
80
|
+
|
|
81
|
+
}{ NUMBER($has_value) ->
|
|
82
|
+
[one] { " " }auf <code data-l10n-name="value">{ $flag_value }</code>
|
|
83
|
+
*[other] { "" }
|
|
84
|
+
}{ "." }
|
|
85
|
+
{ NUMBER($has_pref_url) ->
|
|
86
|
+
[one]
|
|
87
|
+
{ $flag_type ->
|
|
88
|
+
[preference] Um die Einstellungen in { $browser_name } zu \xe4ndern, besuchen Sie { $browser_pref_url }.
|
|
89
|
+
*[other] { "" }
|
|
90
|
+
}
|
|
91
|
+
*[other] { "" }
|
|
92
|
+
}
|
|
93
|
+
compat-legend-yes = { compat-support-full }
|
|
94
|
+
compat-legend-partial = { compat-support-partial }
|
|
95
|
+
compat-legend-preview = In Entwicklung. In einer Vorabversion unterst\xfctzt.
|
|
96
|
+
compat-legend-no = { compat-support-no }
|
|
97
|
+
compat-legend-unknown = Kompatibilit\xe4t unbekannt
|
|
98
|
+
compat-legend-experimental = { compat-experimental }. Verhaltens\xe4nderungen in der Zukunft sind zu erwarten.
|
|
99
|
+
compat-legend-nonstandard = { compat-nonstandard }. \xdcberpr\xfcfen Sie die browser\xfcbergreifende Unterst\xfctzung vor der Verwendung.
|
|
100
|
+
compat-legend-deprecated = { compat-deprecated }. Nicht f\xfcr neue Websites verwenden.
|
|
101
|
+
compat-legend-footnote = Implementierungshinweise ansehen.
|
|
102
|
+
compat-legend-disabled = Diese Funktion muss explizit aktiviert werden.
|
|
103
|
+
compat-legend-altname = Verwendet einen nicht standardm\xe4\xdfigen Namen.
|
|
104
|
+
compat-legend-prefix = Erfordert ein Hersteller-Pr\xe4fix oder einen anderen Namen zur Verwendung.
|
|
105
|
+
compat-legend-more = Hat mehr Kompatibilit\xe4tsinformationen.
|
|
106
|
+
placement-note = Anzeige
|
|
107
|
+
placement-no = Keine Werbung erw\xfcnscht?
|
|
108
|
+
pagination-next = N\xe4chste Seite
|
|
109
|
+
pagination-prev = Vorherige Seite
|
|
110
|
+
pagination-current = Aktuelle Seite
|
|
111
|
+
pagination-goto = Zur Seite { $page }
|
|
112
|
+
logout = Abmelden
|
|
113
|
+
login = Anmelden
|
|
114
|
+
example-play-button-label = Abspielen
|
|
115
|
+
example-play-button-title = Beispiel im MDN Playground ausf\xfchren (\xf6ffnet in neuem Tab)
|
|
116
|
+
writer-reload-polling = Aktualisierung alle { $seconds } s
|
|
117
|
+
a11y-menu-skip-to-main-content = Zum Hauptinhalt springen
|
|
118
|
+
a11y-menu-skip-to-search = Zur Suche springen
|
|
119
|
+
article-footer-learn-how-to-contribute = Erfahren Sie, wie Sie beitragen k\xf6nnen
|
|
120
|
+
article-footer-view-this-page-on-github = Diese Seite auf GitHub ansehen
|
|
121
|
+
article-footer-this-will-take-you-to-github-to = Dies f\xfchrt Sie zu GitHub, um ein neues Problem zu melden.
|
|
122
|
+
article-footer-report-a-problem-with-this-conte = Ein Problem mit diesem Inhalt melden
|
|
123
|
+
baseline-indicator-baseline-cross = Baseline (nicht erf\xfcllt)
|
|
124
|
+
baseline-indicator-baseline-check = Baseline (erf\xfcllt)
|
|
125
|
+
baseline-indicator-limited-availability = Eingeschr\xe4nkt verf\xfcgbar
|
|
126
|
+
baseline-indicator-baseline = Baseline
|
|
127
|
+
baseline-indicator-widely-available = Weitgehend verf\xfcgbar
|
|
128
|
+
baseline-indicator-newly-available = Neu verf\xfcgbar
|
|
129
|
+
baseline-indicator-check = H\xe4kchen
|
|
130
|
+
baseline-indicator-cross = Kreuz
|
|
131
|
+
baseline-indicator-learn-more = Mehr erfahren
|
|
132
|
+
baseline-indicator-see-full-compatibility = Vollst\xe4ndige Kompatibilit\xe4t anzeigen
|
|
133
|
+
baseline-indicator-report-feedback = Feedback geben
|
|
134
|
+
blog-previous = Vorheriger Beitrag
|
|
135
|
+
blog-next = N\xe4chster Beitrag
|
|
136
|
+
blog-index-blog-it-better = Blog it better
|
|
137
|
+
reference-toc-header = In diesem Artikel
|
|
138
|
+
blog-post-not-found = Blogartikel nicht gefunden.
|
|
139
|
+
collection-save-button-save-in-collection = In einer Sammlung speichern
|
|
140
|
+
collection-save-button-remove = Entfernen
|
|
141
|
+
collection-save-button-save = Speichern
|
|
142
|
+
collection-save-button-add-to-collection = Zur Sammlung hinzuf\xfcgen
|
|
143
|
+
collection-save-button-collection = Sammlung:
|
|
144
|
+
collection-save-button-saved-articles = Gespeicherte Artikel
|
|
145
|
+
collection-save-button-new-collection = Neue Sammlung
|
|
146
|
+
collection-save-button-name = Name:
|
|
147
|
+
collection-save-button-note = Notiz:
|
|
148
|
+
collection-save-button-saving = Wird gespeichert…
|
|
149
|
+
collection-save-button-cancel = Abbrechen
|
|
150
|
+
collection-save-button-deleting = Wird gel\xf6scht…
|
|
151
|
+
collection-save-button-delete = L\xf6schen
|
|
152
|
+
theme-default = Systemeinstellung
|
|
153
|
+
color-theme-light = Hell
|
|
154
|
+
color-theme-dark = Dunkel
|
|
155
|
+
color-theme-switch-color-theme = Farbschema wechseln
|
|
156
|
+
color-theme-theme = Farbschema
|
|
157
|
+
compat-link-report-issue-title = Ein Problem mit diesen Kompatibilit\xe4tsdaten melden
|
|
158
|
+
compat-link-report-issue = Probleme mit diesen Kompatibilit\xe4tsdaten melden
|
|
159
|
+
compat-link-source = Daten auf GitHub ansehen
|
|
160
|
+
compat-experimental = Experimentell
|
|
161
|
+
compat-deprecated = Veraltet
|
|
162
|
+
compat-nonstandard = Nicht standardisiert
|
|
163
|
+
compat-support-partial = Teilweise unterst\xfctzt
|
|
164
|
+
compat-support-preview-browser = Unterst\xfctzung in einer Vorabversion des Browsers
|
|
165
|
+
compat-support-full = Vollst\xe4ndig unterst\xfctzt
|
|
166
|
+
compat-support-no = Nicht unterst\xfctzt
|
|
167
|
+
compat-support-unknown = Unterst\xfctzung unbekannt
|
|
168
|
+
compat-yes = Ja
|
|
169
|
+
compat-partial = Teilweise
|
|
170
|
+
compat-no = Nein
|
|
171
|
+
compat-support-preview = Unterst\xfctzt in Vorabversion
|
|
172
|
+
compat-legend = Legende
|
|
173
|
+
compat-legend-tip = Tipp: Sie k\xf6nnen auf eine Zelle klicken oder tippen, um weitere Informationen zu erhalten.
|
|
174
|
+
compat-link-report-missing-title = Fehlende Kompatibilit\xe4tsdaten melden
|
|
175
|
+
compat-link-report-missing = Dieses Problem melden
|
|
176
|
+
compat-js-required = JavaScript aktivieren, um diese Browser-Kompatibilit\xe4tstabelle anzuzeigen.
|
|
177
|
+
compat-loading = Wird geladen…
|
|
178
|
+
content-feedback-content-is-out-of-date = Inhalt ist veraltet
|
|
179
|
+
content-feedback-missing-information = Fehlende Informationen
|
|
180
|
+
content-feedback-code-examples-not-working-as-exp = Codebeispiele funktionieren nicht wie erwartet
|
|
181
|
+
content-feedback-other = Sonstiges
|
|
182
|
+
content-feedback-yes = Ja
|
|
183
|
+
content-feedback-no = Nein
|
|
184
|
+
content-feedback-submit = Absenden
|
|
185
|
+
contributor-spotlight-want-to-be-part-of-the-journey = M\xf6chten Sie Teil der Reise sein?
|
|
186
|
+
contributor-spotlight-our-constant-quest-for-innovatio = Unsere st\xe4ndige Suche nach Innovation beginnt hier, mit Ihnen. Jeder Teil von MDN (Dokumentationen, Demos und die Website selbst) entsteht aus unserer gro\xdfartigen offenen Entwicklergemeinschaft. Bitte machen Sie mit!
|
|
187
|
+
contributor-spotlight-get-involved = Mitmachen
|
|
188
|
+
contributor-spotlight-contributor-profile = Mitwirkendenprofil
|
|
189
|
+
copy-button-copied = Kopiert
|
|
190
|
+
copy-button-copy-failed = Kopieren fehlgeschlagen!
|
|
191
|
+
copy-button-copy = Kopieren
|
|
192
|
+
footer-mdn-on-github = MDN auf GitHub
|
|
193
|
+
footer-mdn-on-bluesky = MDN auf Bluesky
|
|
194
|
+
footer-mdn-on-x = MDN auf X
|
|
195
|
+
footer-mdn-on-mastodon = MDN auf Mastodon
|
|
196
|
+
footer-mdn-blog-rss-feed = MDN-Blog-RSS-Feed
|
|
197
|
+
footer-mdn = MDN
|
|
198
|
+
footer-about = \xdcber uns
|
|
199
|
+
footer-blog = Blog
|
|
200
|
+
footer-mozilla-careers = Jobs bei Mozilla
|
|
201
|
+
footer-advertise-with-us = Mit uns werben
|
|
202
|
+
footer-mdn-plus = MDN Plus
|
|
203
|
+
footer-product-help = Produkthilfe
|
|
204
|
+
footer-contribute = Mitmachen
|
|
205
|
+
footer-mdn-community = MDN-Community
|
|
206
|
+
footer-community-resources = Community-Ressourcen
|
|
207
|
+
footer-writing-guidelines = Schreibrichtlinien
|
|
208
|
+
footer-mdn-discord = MDN-Discord
|
|
209
|
+
footer-developers = Entwicklung
|
|
210
|
+
footer-web-technologies = Webtechnologien
|
|
211
|
+
footer-learn-web-development = Webentwicklung lernen
|
|
212
|
+
footer-guides = Leitf\xe4den
|
|
213
|
+
footer-tutorials = Tutorials
|
|
214
|
+
footer-glossary = Glossar
|
|
215
|
+
footer-hacks-blog = Hacks-Blog
|
|
216
|
+
footer-website-privacy-notice = Datenschutzerkl\xe4rung der Website
|
|
217
|
+
footer-telemetry-settings = Telemetrie-Einstellungen
|
|
218
|
+
footer-legal = Rechtliches
|
|
219
|
+
footer-community-participation-guidelin = Community-Teilnahmerichtlinien
|
|
220
|
+
footer-mdn-logo = MDN-Logo
|
|
221
|
+
footer-mozilla-logo = Mozilla-Logo
|
|
222
|
+
generic-toc__header = In diesem Artikel
|
|
223
|
+
homepage-body-featured-articles = Ausgew\xe4hlte Artikel
|
|
224
|
+
homepage-body-latest-news = Neuigkeiten
|
|
225
|
+
homepage-body-recent-contributions = Neueste Beitr\xe4ge
|
|
226
|
+
homepage-contributor-spotlight-contributor-spotlight = Mitwirkende im Fokus
|
|
227
|
+
homepage-contributor-spotlight-get-involved = Mitmachen
|
|
228
|
+
homepage-search-search-the-site = Website durchsuchen
|
|
229
|
+
homepage-search-search = Suche
|
|
230
|
+
interactive-example-reset = Zur\xfccksetzen
|
|
231
|
+
interactive-example-value-select = Wertauswahl
|
|
232
|
+
interactive-example-the-current-value-is-not-support = Der aktuelle Wert wird von Ihrem Browser nicht unterst\xfctzt.
|
|
233
|
+
interactive-example-run-example-and-show-console-ou = Beispiel ausf\xfchren und Konsolenausgabe anzeigen
|
|
234
|
+
interactive-example-run = Ausf\xfchren
|
|
235
|
+
interactive-example-reset-example-and-clear-console = Beispiel zur\xfccksetzen und Konsolenausgabe l\xf6schen
|
|
236
|
+
interactive-example-console-output = Konsolenausgabe
|
|
237
|
+
interactive-example-output = Ausgabe
|
|
238
|
+
issues-table-loading-issues = GitHub-Issues werden geladen…
|
|
239
|
+
issues-table-title = Titel
|
|
240
|
+
issues-table-repository = Repository
|
|
241
|
+
language-switcher-remember-language = Sprache merken
|
|
242
|
+
language-switcher-enable-this-setting-to-always-sw = Aktivieren Sie diese Einstellung, um immer zur aktuell ausgew\xe4hlten Sprache zu wechseln, wenn sie verf\xfcgbar ist. (Klicken Sie hier, um mehr zu erfahren.)
|
|
243
|
+
language-switcher-learn-more = Mehr erfahren
|
|
244
|
+
login-button-login = Anmelden
|
|
245
|
+
modal-exit-modal = Modal schlie\xdfen
|
|
246
|
+
navigation-toggle-navigation = Navigation umschalten
|
|
247
|
+
obs-about-title = \xdcber das HTTP Observatory
|
|
248
|
+
observatory-landing-read-our-faq = FAQ lesen
|
|
249
|
+
observatory-landing-report-feedback = Feedback geben
|
|
250
|
+
observatory-rescan-button-rescan = Erneut scannen
|
|
251
|
+
observatory-rescan-button-wait-a-minute-to-rescan = Warten Sie eine Minute, um erneut zu scannen
|
|
252
|
+
observatory-results-report-feedback = Feedback geben
|
|
253
|
+
observatory-results-faq = FAQ
|
|
254
|
+
observatory-tests-and-scores-loading-tests-and-scoring-data = Tests und Bewertungsdaten werden geladen…
|
|
255
|
+
observatory-tests-and-scores-see = Siehe
|
|
256
|
+
observatory-tests-and-scores-for-guidance = f\xfcr weitere Hinweise.
|
|
257
|
+
observatory-tests-and-scores-test-result = Testergebnis
|
|
258
|
+
observatory-tests-and-scores-description = Beschreibung
|
|
259
|
+
observatory-tests-and-scores-modifier = Modifikator
|
|
260
|
+
observatory-tests-and-scores-failed-to-load-tests-and-scoring = Tests und Bewertungsdaten konnten nicht geladen werden. Bitte versuchen Sie es sp\xe4ter erneut.
|
|
261
|
+
pagination-pagination = Seitennavigation
|
|
262
|
+
playground-do-you-really-want-to-clear-ever = Wirklich alles l\xf6schen?
|
|
263
|
+
playground-do-you-really-want-to-revert-you = Alle \xc4nderungen zur\xfccksetzen?
|
|
264
|
+
playground-playground = Playground
|
|
265
|
+
playground-format = Formatieren
|
|
266
|
+
playground-run = Ausf\xfchren
|
|
267
|
+
playground-share = Teilen
|
|
268
|
+
playground-clear = Leeren
|
|
269
|
+
playground-reset = Zur\xfccksetzen
|
|
270
|
+
playground-seeing-something-inappropriate = Sehen Sie etwas Unangemessenes?
|
|
271
|
+
playground-console = Konsole
|
|
272
|
+
playground-share-markdown = Markdown teilen
|
|
273
|
+
playground-copy-markdown-to-clipboard = Markdown in die Zwischenablage kopieren
|
|
274
|
+
playground-share-data-url = Code via Daten-URL teilen
|
|
275
|
+
playground-copy-data-url-to-clipboard = Daten-URL in die Zwischenablage kopieren
|
|
276
|
+
playground-share-your-code-via-permalink = Code via Permalink teilen
|
|
277
|
+
playground-copy-to-clipboard = In die Zwischenablage kopieren
|
|
278
|
+
playground-create-link = Link erstellen
|
|
279
|
+
playground-report-this-malicious-or-inappro = Diesen Playground wegen sch\xe4dlicher oder unangemessener Inhalte melden
|
|
280
|
+
playground-can-you-please-share-some-detail = Bitte beschreiben Sie kurz, was an diesem Inhalt problematisch ist:
|
|
281
|
+
playground-cancel = Abbrechen
|
|
282
|
+
playground-report = Melden
|
|
283
|
+
recently-visited-recently-visited = Zuletzt besucht
|
|
284
|
+
scrim-inline-clicking-will-load-content-from = Durch Klicken werden Inhalte von scrimba.com geladen
|
|
285
|
+
scrim-inline-toggle-fullscreen = Vollbild umschalten
|
|
286
|
+
scrim-inline-open-on-scrimba = Auf Scrimba \xf6ffnen
|
|
287
|
+
scrim-inline-load-scrim-and-open-dialog = Scrim laden und Dialog \xf6ffnen.
|
|
288
|
+
search-button-search-the-site = Website durchsuchen
|
|
289
|
+
search-modal-loading-search-index = Suchindex wird geladen…
|
|
290
|
+
search-modal-search = Suche
|
|
291
|
+
search-modal-exit-search = Suche schlie\xdfen
|
|
292
|
+
sidebar-filter-filter-sidebar = Seitenleiste filtern
|
|
293
|
+
sidebar-filter-filter = Filtern
|
|
294
|
+
sidebar-filter-clear-filter-input = Filterfeld leeren
|
|
295
|
+
site-search-search = Suchen
|
|
296
|
+
site-search-previous = Zur\xfcck
|
|
297
|
+
site-search-next = Weiter
|
|
298
|
+
site-search-suggestions-text = Meinten Sie:
|
|
299
|
+
site-search-searching = Suche l\xe4uft…
|
|
300
|
+
site-search-language = Sprache
|
|
301
|
+
site-search-both = Beides
|
|
302
|
+
specifications-list-this-feature-does-not-appear-to = Diese Funktion scheint in keiner Spezifikation definiert zu sein.
|
|
303
|
+
specifications-list-specification = Spezifikation
|
|
304
|
+
survey-hide-this-survey = Diese Umfrage ausblenden
|
|
305
|
+
survey-take-survey-opens-in-a-new-tab = An der Umfrage teilnehmen (\xf6ffnet in neuem Tab)
|
|
306
|
+
toggle-sidebar-toggle-sidebar = Seitenleiste umschalten
|
|
307
|
+
user-menu-ai-help = KI-Hilfe
|
|
308
|
+
user-menu-collections = Sammlungen
|
|
309
|
+
user-menu-updates = Updates
|
|
310
|
+
user-menu-settings = Meine Einstellungen
|
|
311
|
+
user-menu-help = Hilfe
|
|
312
|
+
user-menu-feedback = Feedback
|
|
313
|
+
user-menu-user = Konto
|
|
314
|
+
writer-open-editor-open-in-editor = Im Editor \xf6ffnen
|
|
315
|
+
writer-toolbar-view-on-mdn = Auf MDN anzeigen
|
|
316
|
+
`}};
|
|
317
|
+
//# sourceMappingURL=6333.530138f4b30df5a7.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"6333.530138f4b30df5a7.js","sources":["webpack://@mdn/fred/./l10n/locales/de.ftl"],"sourcesContent":["export default `content-feedback-question = War diese Übersetzung hilfreich?\ncontent-feedback-reason = Warum war diese Übersetzung nicht hilfreich?\ncontent-feedback-thanks = Vielen Dank für die Rückmeldung!\n\nfooter-tagline = Der Bauplan für ein besseres Internet.\nfooter-mofo = Besuche die gemeinnützige Muttergesellschaft der <a data-l10n-name=\"moco\">Mozilla Corporation</a>, die <a data-l10n-name=\"mofo\">Mozilla Foundation</a>.\nfooter-copyright = Teile dieses Inhalts sind ©1998–{ \\$year } von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfügbar unter <a data-l10n-name=\"cc\">einer Creative-Commons-Lizenz</a>.\n\nsearch-modal-site-search = Website-Suche nach <em>{ \\$query }</em>\n\nsite-search-search-stats = { \\$results } Dokumente gefunden.\nsite-search-suggestion-matches = { \\$relation ->\n [gt] mehr als { \\$matches ->\n [one] { \\$matches } Übereinstimmung\n *[other] { \\$matches } Übereinstimmungen\n }\n *[eq] { \\$matches ->\n [one] { \\$matches } Übereinstimmung\n *[other] { \\$matches } Übereinstimmungen\n }\n}\n\nblog-time-to-read = { \\$minutes ->\n [one] { \\$minutes } Minute Lesezeit\n *[other] { \\$minutes } Minuten Lesezeit\n}\n\n-brand-name-obs = HTTP Observatory\nobs-report = Bericht\nobs-title = { -brand-name-obs }\nobs-landing-intro = Seit 2016 verbessert { -brand-name-obs } die Sicherheit durch Analyse der Einhaltung bewährter Sicherheitspraktiken. Es hat durch 47 Millionen Scans Einblicke in über 6,9 Millionen Websites geliefert.\nobs-assessment = Das von Mozilla entwickelte { -brand-name-obs } führt eine umfassende Bewertung der HTTP-Header und weiterer zentraler Sicherheitskonfigurationen einer Website durch.\nobs-scanning = Der automatisierte Scan-Prozess liefert detailliertes, handlungsorientiertes Feedback für Entwicklungsteams und Website-Administration und konzentriert sich darauf, potenzielle Sicherheitslücken zu erkennen und zu beheben.\nobs-security = Das Tool unterstützt Entwicklungsteams und Website-Administration dabei, Websites in einem sich stetig weiterentwickelnden digitalen Umfeld gegen häufige Sicherheitsbedrohungen abzusichern.\nobs-mdn = Das { -brand-name-obs } bietet wirksame Sicherheitseinblicke auf Grundlage von Mozillas Expertise und Engagement für ein sichereres Internet sowie basierend auf etablierten Trends und Richtlinien.\n\narticle-footer-last-modified = Diese Seite wurde zuletzt am <time data-l10n-name=\"date\">{ \\$date }</time> von <a data-l10n-name=\"contributors\">MDN-Mitwirkenden</a> bearbeitet.\narticle-footer-source-title = Ordner: { \\$folder } (öffnet in neuem Tab)\nbaseline-asterisk = Einige Teile dieser Funktion werden möglicherweise unterschiedlich gut unterstützt.\nbaseline-high-extra = Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit { \\$date } browserübergreifend verfügbar.\nbaseline-low-extra = Seit { \\$date } funktioniert diese Funktion auf aktuellen Geräten und in aktuellen Browserversionen. Auf älteren Geräten oder in älteren Browsern funktioniert sie möglicherweise nicht.\nbaseline-not-extra = Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.\nbaseline-supported-in = Unterstützt in { \\$browsers }\nbaseline-unsupported-in = In { \\$browsers } nicht weitgehend unterstützt\nbaseline-supported-and-unsupported-in = Unterstützt in { \\$supported }, aber in { \\$unsupported } nicht weitgehend unterstützt\nhomepage-hero-title = Ressourcen für Entwickelnde,<br> von Entwickelnden\nhomepage-hero-description = Dokumentation zu <a data-l10n-name=\"css\">CSS</a>, <a data-l10n-name=\"html\">HTML</a> und <a data-l10n-name=\"js\">JavaScript</a> – seit 2005.\nnot-found-title = Seite nicht gefunden\nnot-found-description = Entschuldigung, die Seite <code data-l10n-name=\"url\">{ \\$url }</code> wurde nicht gefunden.\nnot-found-fallback-english = <strong data-l10n-name=\"strong\">Gute Nachricht:</strong> Die angeforderte Seite existiert auf <em data-l10n-name=\"em\">Englisch</em>.\nnot-found-fallback-search = Die angeforderte Seite existiert nicht, aber Sie könnten eine Website-Suche versuchen nach:\nnot-found-back = Zurück zur Startseite\ncompat-browser-version-date = { \\$browser } { \\$version } – Veröffentlichungsdatum: { \\$date }\ncompat-browser-version-released = Veröffentlichungsdatum: { \\$date }\ncompat-link-source-title = Datei: { \\$filename }\ncompat-support-prefix = Implementiert mit dem Hersteller-Präfix: { \\$prefix }\ncompat-support-altname = Alternativer Name: { \\$altname }\ncompat-support-removed = Ab { \\$version } entfernt\ncompat-support-see-impl-url = Siehe <a data-l10n-name=\"impl_url\">{ \\$label }</a>\ncompat-support-flags =\n { NUMBER(\\$has_added) ->\n [one] Ab Version { \\$version_added }\n *[other] { \"\" }\n }{ \\$has_last ->\n [one]\n { NUMBER(\\$has_added) ->\n *[zero] Bis { \\$versionLast } muss\n [one] { \" \" }bis { \\$versionLast } muss\n }\n *[zero]\n { NUMBER(\\$has_added) ->\n *[zero] muss\n [one] { \" \" }muss\n }\n }\n { \" \" }die Einstellung <code data-l10n-name=\"name\">{ \\$flag_name }</code>{ \" \" }\n { \\$flag_type ->\n *[preference] explizit festgelegt werden\n [runtime_flag] als Laufzeit-Flag explizit festgelegt werden\n\n }{ NUMBER(\\$has_value) ->\n [one] { \" \" }auf <code data-l10n-name=\"value\">{ \\$flag_value }</code>\n *[other] { \"\" }\n }{ \".\" }\n { NUMBER(\\$has_pref_url) ->\n [one]\n { \\$flag_type ->\n [preference] Um die Einstellungen in { \\$browser_name } zu ändern, besuchen Sie { \\$browser_pref_url }.\n *[other] { \"\" }\n }\n *[other] { \"\" }\n }\ncompat-legend-yes = { compat-support-full }\ncompat-legend-partial = { compat-support-partial }\ncompat-legend-preview = In Entwicklung. In einer Vorabversion unterstützt.\ncompat-legend-no = { compat-support-no }\ncompat-legend-unknown = Kompatibilität unbekannt\ncompat-legend-experimental = { compat-experimental }. Verhaltensänderungen in der Zukunft sind zu erwarten.\ncompat-legend-nonstandard = { compat-nonstandard }. Überprüfen Sie die browserübergreifende Unterstützung vor der Verwendung.\ncompat-legend-deprecated = { compat-deprecated }. Nicht für neue Websites verwenden.\ncompat-legend-footnote = Implementierungshinweise ansehen.\ncompat-legend-disabled = Diese Funktion muss explizit aktiviert werden.\ncompat-legend-altname = Verwendet einen nicht standardmäßigen Namen.\ncompat-legend-prefix = Erfordert ein Hersteller-Präfix oder einen anderen Namen zur Verwendung.\ncompat-legend-more = Hat mehr Kompatibilitätsinformationen.\nplacement-note = Anzeige\nplacement-no = Keine Werbung erwünscht?\npagination-next = Nächste Seite\npagination-prev = Vorherige Seite\npagination-current = Aktuelle Seite\npagination-goto = Zur Seite { \\$page }\nlogout = Abmelden\nlogin = Anmelden\nexample-play-button-label = Abspielen\nexample-play-button-title = Beispiel im MDN Playground ausführen (öffnet in neuem Tab)\nwriter-reload-polling = Aktualisierung alle { \\$seconds } s\na11y-menu-skip-to-main-content = Zum Hauptinhalt springen\na11y-menu-skip-to-search = Zur Suche springen\narticle-footer-learn-how-to-contribute = Erfahren Sie, wie Sie beitragen können\narticle-footer-view-this-page-on-github = Diese Seite auf GitHub ansehen\narticle-footer-this-will-take-you-to-github-to = Dies führt Sie zu GitHub, um ein neues Problem zu melden.\narticle-footer-report-a-problem-with-this-conte = Ein Problem mit diesem Inhalt melden\nbaseline-indicator-baseline-cross = Baseline (nicht erfüllt)\nbaseline-indicator-baseline-check = Baseline (erfüllt)\nbaseline-indicator-limited-availability = Eingeschränkt verfügbar\nbaseline-indicator-baseline = Baseline\nbaseline-indicator-widely-available = Weitgehend verfügbar\nbaseline-indicator-newly-available = Neu verfügbar\nbaseline-indicator-check = Häkchen\nbaseline-indicator-cross = Kreuz\nbaseline-indicator-learn-more = Mehr erfahren\nbaseline-indicator-see-full-compatibility = Vollständige Kompatibilität anzeigen\nbaseline-indicator-report-feedback = Feedback geben\nblog-previous = Vorheriger Beitrag\nblog-next = Nächster Beitrag\nblog-index-blog-it-better = Blog it better\nreference-toc-header = In diesem Artikel\nblog-post-not-found = Blogartikel nicht gefunden.\ncollection-save-button-save-in-collection = In einer Sammlung speichern\ncollection-save-button-remove = Entfernen\ncollection-save-button-save = Speichern\ncollection-save-button-add-to-collection = Zur Sammlung hinzufügen\ncollection-save-button-collection = Sammlung:\ncollection-save-button-saved-articles = Gespeicherte Artikel\ncollection-save-button-new-collection = Neue Sammlung\ncollection-save-button-name = Name:\ncollection-save-button-note = Notiz:\ncollection-save-button-saving = Wird gespeichert…\ncollection-save-button-cancel = Abbrechen\ncollection-save-button-deleting = Wird gelöscht…\ncollection-save-button-delete = Löschen\ntheme-default = Systemeinstellung\ncolor-theme-light = Hell\ncolor-theme-dark = Dunkel\ncolor-theme-switch-color-theme = Farbschema wechseln\ncolor-theme-theme = Farbschema\ncompat-link-report-issue-title = Ein Problem mit diesen Kompatibilitätsdaten melden\ncompat-link-report-issue = Probleme mit diesen Kompatibilitätsdaten melden\ncompat-link-source = Daten auf GitHub ansehen\ncompat-experimental = Experimentell\ncompat-deprecated = Veraltet\ncompat-nonstandard = Nicht standardisiert\ncompat-support-partial = Teilweise unterstützt\ncompat-support-preview-browser = Unterstützung in einer Vorabversion des Browsers\ncompat-support-full = Vollständig unterstützt\ncompat-support-no = Nicht unterstützt\ncompat-support-unknown = Unterstützung unbekannt\ncompat-yes = Ja\ncompat-partial = Teilweise\ncompat-no = Nein\ncompat-support-preview = Unterstützt in Vorabversion\ncompat-legend = Legende\ncompat-legend-tip = Tipp: Sie können auf eine Zelle klicken oder tippen, um weitere Informationen zu erhalten.\ncompat-link-report-missing-title = Fehlende Kompatibilitätsdaten melden\ncompat-link-report-missing = Dieses Problem melden\ncompat-js-required = JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.\ncompat-loading = Wird geladen…\ncontent-feedback-content-is-out-of-date = Inhalt ist veraltet\ncontent-feedback-missing-information = Fehlende Informationen\ncontent-feedback-code-examples-not-working-as-exp = Codebeispiele funktionieren nicht wie erwartet\ncontent-feedback-other = Sonstiges\ncontent-feedback-yes = Ja\ncontent-feedback-no = Nein\ncontent-feedback-submit = Absenden\ncontributor-spotlight-want-to-be-part-of-the-journey = Möchten Sie Teil der Reise sein?\ncontributor-spotlight-our-constant-quest-for-innovatio = Unsere ständige Suche nach Innovation beginnt hier, mit Ihnen. Jeder Teil von MDN (Dokumentationen, Demos und die Website selbst) entsteht aus unserer großartigen offenen Entwicklergemeinschaft. Bitte machen Sie mit!\ncontributor-spotlight-get-involved = Mitmachen\ncontributor-spotlight-contributor-profile = Mitwirkendenprofil\ncopy-button-copied = Kopiert\ncopy-button-copy-failed = Kopieren fehlgeschlagen!\ncopy-button-copy = Kopieren\nfooter-mdn-on-github = MDN auf GitHub\nfooter-mdn-on-bluesky = MDN auf Bluesky\nfooter-mdn-on-x = MDN auf X\nfooter-mdn-on-mastodon = MDN auf Mastodon\nfooter-mdn-blog-rss-feed = MDN-Blog-RSS-Feed\nfooter-mdn = MDN\nfooter-about = Über uns\nfooter-blog = Blog\nfooter-mozilla-careers = Jobs bei Mozilla\nfooter-advertise-with-us = Mit uns werben\nfooter-mdn-plus = MDN Plus\nfooter-product-help = Produkthilfe\nfooter-contribute = Mitmachen\nfooter-mdn-community = MDN-Community\nfooter-community-resources = Community-Ressourcen\nfooter-writing-guidelines = Schreibrichtlinien\nfooter-mdn-discord = MDN-Discord\nfooter-developers = Entwicklung\nfooter-web-technologies = Webtechnologien\nfooter-learn-web-development = Webentwicklung lernen\nfooter-guides = Leitfäden\nfooter-tutorials = Tutorials\nfooter-glossary = Glossar\nfooter-hacks-blog = Hacks-Blog\nfooter-website-privacy-notice = Datenschutzerklärung der Website\nfooter-telemetry-settings = Telemetrie-Einstellungen\nfooter-legal = Rechtliches\nfooter-community-participation-guidelin = Community-Teilnahmerichtlinien\nfooter-mdn-logo = MDN-Logo\nfooter-mozilla-logo = Mozilla-Logo\ngeneric-toc__header = In diesem Artikel\nhomepage-body-featured-articles = Ausgewählte Artikel\nhomepage-body-latest-news = Neuigkeiten\nhomepage-body-recent-contributions = Neueste Beiträge\nhomepage-contributor-spotlight-contributor-spotlight = Mitwirkende im Fokus\nhomepage-contributor-spotlight-get-involved = Mitmachen\nhomepage-search-search-the-site = Website durchsuchen\nhomepage-search-search = Suche\ninteractive-example-reset = Zurücksetzen\ninteractive-example-value-select = Wertauswahl\ninteractive-example-the-current-value-is-not-support = Der aktuelle Wert wird von Ihrem Browser nicht unterstützt.\ninteractive-example-run-example-and-show-console-ou = Beispiel ausführen und Konsolenausgabe anzeigen\ninteractive-example-run = Ausführen\ninteractive-example-reset-example-and-clear-console = Beispiel zurücksetzen und Konsolenausgabe löschen\ninteractive-example-console-output = Konsolenausgabe\ninteractive-example-output = Ausgabe\nissues-table-loading-issues = GitHub-Issues werden geladen…\nissues-table-title = Titel\nissues-table-repository = Repository\nlanguage-switcher-remember-language = Sprache merken\nlanguage-switcher-enable-this-setting-to-always-sw = Aktivieren Sie diese Einstellung, um immer zur aktuell ausgewählten Sprache zu wechseln, wenn sie verfügbar ist. (Klicken Sie hier, um mehr zu erfahren.)\nlanguage-switcher-learn-more = Mehr erfahren\nlogin-button-login = Anmelden\nmodal-exit-modal = Modal schließen\nnavigation-toggle-navigation = Navigation umschalten\nobs-about-title = Über das HTTP Observatory\nobservatory-landing-read-our-faq = FAQ lesen\nobservatory-landing-report-feedback = Feedback geben\nobservatory-rescan-button-rescan = Erneut scannen\nobservatory-rescan-button-wait-a-minute-to-rescan = Warten Sie eine Minute, um erneut zu scannen\nobservatory-results-report-feedback = Feedback geben\nobservatory-results-faq = FAQ\nobservatory-tests-and-scores-loading-tests-and-scoring-data = Tests und Bewertungsdaten werden geladen…\nobservatory-tests-and-scores-see = Siehe\nobservatory-tests-and-scores-for-guidance = für weitere Hinweise.\nobservatory-tests-and-scores-test-result = Testergebnis\nobservatory-tests-and-scores-description = Beschreibung\nobservatory-tests-and-scores-modifier = Modifikator\nobservatory-tests-and-scores-failed-to-load-tests-and-scoring = Tests und Bewertungsdaten konnten nicht geladen werden. Bitte versuchen Sie es später erneut.\npagination-pagination = Seitennavigation\nplayground-do-you-really-want-to-clear-ever = Wirklich alles löschen?\nplayground-do-you-really-want-to-revert-you = Alle Änderungen zurücksetzen?\nplayground-playground = Playground\nplayground-format = Formatieren\nplayground-run = Ausführen\nplayground-share = Teilen\nplayground-clear = Leeren\nplayground-reset = Zurücksetzen\nplayground-seeing-something-inappropriate = Sehen Sie etwas Unangemessenes?\nplayground-console = Konsole\nplayground-share-markdown = Markdown teilen\nplayground-copy-markdown-to-clipboard = Markdown in die Zwischenablage kopieren\nplayground-share-data-url = Code via Daten-URL teilen\nplayground-copy-data-url-to-clipboard = Daten-URL in die Zwischenablage kopieren\nplayground-share-your-code-via-permalink = Code via Permalink teilen\nplayground-copy-to-clipboard = In die Zwischenablage kopieren\nplayground-create-link = Link erstellen\nplayground-report-this-malicious-or-inappro = Diesen Playground wegen schädlicher oder unangemessener Inhalte melden\nplayground-can-you-please-share-some-detail = Bitte beschreiben Sie kurz, was an diesem Inhalt problematisch ist:\nplayground-cancel = Abbrechen\nplayground-report = Melden\nrecently-visited-recently-visited = Zuletzt besucht\nscrim-inline-clicking-will-load-content-from = Durch Klicken werden Inhalte von scrimba.com geladen\nscrim-inline-toggle-fullscreen = Vollbild umschalten\nscrim-inline-open-on-scrimba = Auf Scrimba öffnen\nscrim-inline-load-scrim-and-open-dialog = Scrim laden und Dialog öffnen.\nsearch-button-search-the-site = Website durchsuchen\nsearch-modal-loading-search-index = Suchindex wird geladen…\nsearch-modal-search = Suche\nsearch-modal-exit-search = Suche schließen\nsidebar-filter-filter-sidebar = Seitenleiste filtern\nsidebar-filter-filter = Filtern\nsidebar-filter-clear-filter-input = Filterfeld leeren\nsite-search-search = Suchen\nsite-search-previous = Zurück\nsite-search-next = Weiter\nsite-search-suggestions-text = Meinten Sie:\nsite-search-searching = Suche läuft…\nsite-search-language = Sprache\nsite-search-both = Beides\nspecifications-list-this-feature-does-not-appear-to = Diese Funktion scheint in keiner Spezifikation definiert zu sein.\nspecifications-list-specification = Spezifikation\nsurvey-hide-this-survey = Diese Umfrage ausblenden\nsurvey-take-survey-opens-in-a-new-tab = An der Umfrage teilnehmen (öffnet in neuem Tab)\ntoggle-sidebar-toggle-sidebar = Seitenleiste umschalten\nuser-menu-ai-help = KI-Hilfe\nuser-menu-collections = Sammlungen\nuser-menu-updates = Updates\nuser-menu-settings = Meine Einstellungen\nuser-menu-help = Hilfe\nuser-menu-feedback = Feedback\nuser-menu-user = Konto\nwriter-open-editor-open-in-editor = Im Editor öffnen\nwriter-toolbar-view-on-mdn = Auf MDN anzeigen\n`;"],"names":[],"mappings":"iJAAA,MAAe,CAAC;AAChB;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,A"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"6760.d97440f1ca6690c6.js","sources":["webpack://@mdn/fred/./components/play-console/element.css","webpack://@mdn/fred/./components/play-console/utils.js","webpack://@mdn/fred/./components/play-console/element.js"],"sourcesContent":["import { css } from \"lit\";\n// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{background-color:var(--color-background-secondary);box-sizing:border-box;display:flex;flex-direction:column;font-size:var(--font-size-small);margin:0;overflow:auto;width:100%}ul{list-style:none;margin:0;padding:0}li{padding:0 .5em;white-space:nowrap}li:before{content:\"> \";vertical-align:top;width:.75rem}code,li:before{display:inline-block}code{font-family:var(--font-family-code);margin:0;tab-size:4;white-space:pre-wrap;width:calc(100% - .75rem)}`, \"\"]);\n// Exports\nexport default css([___CSS_LOADER_EXPORT___.toString()]);\n","// Copied from https://github.com/mdn/bob/blob/9da42cd641d7f2a9796bf3406e74cad411ce9438/editor/js/editor-libs/console-utils.ts\n/**\n * Formats arrays:\n * - quotes around strings in arrays\n * - square brackets around arrays\n * - adds commas appropriately (with spacing)\n * - identifies empty slots\n * designed to be used recursively\n * @param {any} input - The output to log.\n * @returns Formatted output as a string.\n */\nexport function formatArray(input) {\n let output = \"\";\n for (let i = 0, l = input.length; i < l; i++) {\n if (typeof input[i] === \"string\") {\n output += '\"' + input[i] + '\"';\n } else if (Array.isArray(input[i])) {\n output += \"Array [\";\n output += formatArray(input[i]);\n output += \"]\";\n } else if (Object.prototype.hasOwnProperty.call(input, i)) {\n output += formatOutput(input[i]);\n } else {\n let emptyCount = 1;\n while (i + 1 < l && !Object.prototype.hasOwnProperty.call(input, i + 1)) {\n emptyCount++;\n i++;\n }\n output +=\n emptyCount === 1 ? \"<1 empty slot>\" : `<${emptyCount} empty slots>`;\n }\n\n if (i < input.length - 1) {\n output += \", \";\n }\n }\n return output;\n}\n\n/**\n * Formats objects:\n * ArrayBuffer, DataView, SharedArrayBuffer,\n * Int8Array, Int16Array, Int32Array,\n * Uint8Array, Uint16Array, Uint32Array,\n * Uint8ClampedArray, Float32Array, Float64Array\n * Symbol\n * @param {any} input - The output to log.\n * @returns Formatted output as a string.\n */\nexport function formatObject(input) {\n const bufferDataViewRegExp = /^(ArrayBuffer|SharedArrayBuffer|DataView)$/;\n const complexArrayRegExp =\n /^(Int8Array|Int16Array|Int32Array|Uint8Array|Uint16Array|Uint32Array|Uint8ClampedArray|Float32Array|Float64Array|BigInt64Array|BigUint64Array)$/;\n\n const objectName = input.constructor ? input.constructor.name : input;\n\n if (objectName === \"String\") {\n // String object\n return `String { \"${input.valueOf()}\" }`;\n }\n\n if (input === JSON) {\n // console.log(JSON) is output as \"JSON {}\" in browser console\n return `JSON {}`;\n }\n\n if (objectName.match && bufferDataViewRegExp.test(objectName)) {\n return objectName + \" {}\";\n }\n\n if (objectName.match && complexArrayRegExp.test(objectName)) {\n const arrayLength = input.length;\n\n return arrayLength > 0\n ? objectName + \" [\" + formatArray(input) + \"]\"\n : objectName + \" []\";\n }\n\n if (objectName === \"Symbol\" && input !== undefined) {\n return input.toString();\n }\n\n if (objectName === \"Object\") {\n if (input?._MDNPlaySerializedObject) {\n return input._MDNPlaySerializedObject;\n }\n let formattedChild = \"\";\n let start = true;\n for (const key in input) {\n if (Object.prototype.hasOwnProperty.call(input, key)) {\n if (start) {\n start = false;\n } else {\n formattedChild = formattedChild + \", \";\n }\n formattedChild = formattedChild + key + \": \" + formatOutput(input[key]);\n }\n }\n return objectName + \" { \" + formattedChild + \" }\";\n }\n\n // Special object created with `OrdinaryObjectCreate(null)` returned by, for\n // example, named capture groups in https://mzl.la/2RERfQL\n // @see https://github.com/mdn/bob/issues/574#issuecomment-858213621\n if (!input.constructor && !input.prototype) {\n let formattedChild = \"\";\n let start = true;\n for (const key in input) {\n if (start) {\n start = false;\n } else {\n formattedChild = formattedChild + \", \";\n }\n formattedChild = formattedChild + key + \": \" + formatOutput(input[key]);\n }\n return \"Object { \" + formattedChild + \" }\";\n }\n\n return input;\n}\n\n/**\n * Formats output to indicate its type:\n * - quotes around strings\n * - single quotes around strings containing double quotes\n * - square brackets around arrays\n * (also copes with arrays of arrays)\n * does NOT detect Int32Array etc\n * @param {any} input - The output to log.\n * @returns Formatted output as a string.\n */\nexport function formatOutput(input) {\n if (input === undefined || input === null || typeof input === \"boolean\") {\n return String(input);\n } else if (typeof input === \"number\") {\n // Negative zero\n if (Object.is(input, -0)) {\n return \"-0\";\n }\n return String(input);\n } else if (typeof input === \"bigint\") {\n return String(input) + \"n\";\n } else if (typeof input === \"string\") {\n // string literal\n return input.includes('\"') ? \"'\" + input + \"'\" : '\"' + input + '\"';\n } else if (Array.isArray(input)) {\n // check the contents of the array\n return \"Array [\" + formatArray(input) + \"]\";\n } else {\n return formatObject(input);\n }\n}\n","import { LitElement, html } from \"lit\";\n\nimport styles from \"./element.css?lit\";\nimport { formatOutput } from \"./utils.js\";\n\n/** @import { VConsole } from \"./types.js\" */\n\n/** @implements {Partial<Console>} */\nclass VirtualConsole {\n #host;\n\n /** @param {MDNPlayConsole} host */\n constructor(host) {\n this.#host = host;\n }\n\n clear() {\n this.#host._messages = [];\n }\n\n /** @param {...any} args */\n debug(...args) {\n return this.log(...args);\n }\n\n /** @param {...any} args */\n error(...args) {\n return this.log(...args);\n }\n\n /** @param {...any} args */\n info(...args) {\n return this.log(...args);\n }\n\n /** @param {...any} args */\n log(...args) {\n if (args.length > 1 && typeof args[0] === \"string\") {\n // https://developer.mozilla.org/en-US/docs/Web/API/console#using_string_substitutions\n // TODO: add unit testing of this\n args[0] = args[0].replaceAll(\n /%(?:\\.([0-9]+))?(.)/g,\n (match, formatArg, format) => {\n switch (format) {\n case \"o\":\n case \"O\": {\n const O = args.splice(1, 1)[0];\n return formatOutput(O);\n }\n case \"d\":\n case \"i\": {\n const i = args.splice(1, 1)[0];\n return Math.trunc(i).toFixed(0).padStart(formatArg, \"0\");\n }\n case \"s\": {\n const s = args.splice(1, 1)[0];\n return s.toString();\n }\n case \"f\": {\n const f = args.splice(1, 1)[0];\n return (typeof f === \"number\" ? f : Number.parseFloat(f)).toFixed(\n formatArg ?? 6,\n );\n }\n case \"c\":\n // TODO: Not implemented yet, so just remove the argument\n args.splice(1, 1);\n return \"\";\n case \"%\":\n return \"%\";\n default:\n return match;\n }\n },\n );\n }\n this.#host._messages = [\n ...this.#host._messages,\n args.map((x) => formatOutput(x)).join(\" \"),\n ];\n }\n\n /** @param {...any} args */\n warn(...args) {\n return this.log(...args);\n }\n}\n\nexport class MDNPlayConsole extends LitElement {\n static properties = {\n _messages: { state: true },\n };\n\n static styles = styles;\n\n constructor() {\n super();\n this.vconsole = new VirtualConsole(this);\n /** @type {string[]} */\n this._messages = [];\n }\n\n /** @param {CustomEvent<VConsole>} e */\n onConsole({ detail }) {\n if (detail.prop in this.vconsole) {\n const prop = /** @type {keyof typeof this.vconsole} */ (detail.prop);\n detail.args ? this.vconsole[prop](...detail.args) : this.vconsole[prop]();\n } else {\n this.vconsole.warn(\n \"[Playground] Unsupported console message (see browser console)\",\n );\n }\n }\n\n render() {\n return html`\n <ul aria-live=\"polite\">\n ${this._messages.map(\n (message) => html`<li><code>${message}</code></li>`,\n )}\n </ul>\n `;\n }\n\n updated() {\n this.scrollTo({ top: this.scrollHeight });\n }\n}\n\ncustomElements.define(\"mdn-play-console\", MDNPlayConsole);\n"],"names":["Array","Object","String","JSON","VirtualConsole","Math","Number","MDNPlayConsole","s","customElements"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"6760.d97440f1ca6690c6.js","sources":["webpack://@mdn/fred/./components/play-console/element.css","webpack://@mdn/fred/./components/play-console/utils.js","webpack://@mdn/fred/./components/play-console/element.js"],"sourcesContent":["import { css } from \"lit\";\n// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{background-color:var(--color-background-secondary);box-sizing:border-box;display:flex;flex-direction:column;font-size:var(--font-size-small);margin:0;overflow:auto;width:100%}ul{list-style:none;margin:0;padding:0}li{padding:0 .5em;white-space:nowrap}li:before{content:\"> \";vertical-align:top;width:.75rem}code,li:before{display:inline-block}code{font-family:var(--font-family-code);margin:0;tab-size:4;white-space:pre-wrap;width:calc(100% - .75rem)}`, \"\"]);\n// Exports\nexport default css([___CSS_LOADER_EXPORT___.toString()]);\n","// Copied from https://github.com/mdn/bob/blob/9da42cd641d7f2a9796bf3406e74cad411ce9438/editor/js/editor-libs/console-utils.ts\n/**\n * Formats arrays:\n * - quotes around strings in arrays\n * - square brackets around arrays\n * - adds commas appropriately (with spacing)\n * - identifies empty slots\n * designed to be used recursively\n * @param {any} input - The output to log.\n * @returns Formatted output as a string.\n */\nexport function formatArray(input) {\n let output = \"\";\n for (let i = 0, l = input.length; i < l; i++) {\n if (typeof input[i] === \"string\") {\n output += '\"' + input[i] + '\"';\n } else if (Array.isArray(input[i])) {\n output += \"Array [\";\n output += formatArray(input[i]);\n output += \"]\";\n } else if (Object.prototype.hasOwnProperty.call(input, i)) {\n output += formatOutput(input[i]);\n } else {\n let emptyCount = 1;\n while (i + 1 < l && !Object.prototype.hasOwnProperty.call(input, i + 1)) {\n emptyCount++;\n i++;\n }\n output +=\n emptyCount === 1 ? \"<1 empty slot>\" : `<${emptyCount} empty slots>`;\n }\n\n if (i < input.length - 1) {\n output += \", \";\n }\n }\n return output;\n}\n\n/**\n * Formats objects:\n * ArrayBuffer, DataView, SharedArrayBuffer,\n * Int8Array, Int16Array, Int32Array,\n * Uint8Array, Uint16Array, Uint32Array,\n * Uint8ClampedArray, Float32Array, Float64Array\n * Symbol\n * @param {any} input - The output to log.\n * @returns Formatted output as a string.\n */\nexport function formatObject(input) {\n const bufferDataViewRegExp = /^(ArrayBuffer|SharedArrayBuffer|DataView)$/;\n const complexArrayRegExp =\n /^(Int8Array|Int16Array|Int32Array|Uint8Array|Uint16Array|Uint32Array|Uint8ClampedArray|Float32Array|Float64Array|BigInt64Array|BigUint64Array)$/;\n\n const objectName = input.constructor ? input.constructor.name : input;\n\n if (objectName === \"String\") {\n // String object\n return `String { \"${input.valueOf()}\" }`;\n }\n\n if (input === JSON) {\n // console.log(JSON) is output as \"JSON {}\" in browser console\n return `JSON {}`;\n }\n\n if (objectName.match && bufferDataViewRegExp.test(objectName)) {\n return objectName + \" {}\";\n }\n\n if (objectName.match && complexArrayRegExp.test(objectName)) {\n const arrayLength = input.length;\n\n return arrayLength > 0\n ? objectName + \" [\" + formatArray(input) + \"]\"\n : objectName + \" []\";\n }\n\n if (objectName === \"Symbol\" && input !== undefined) {\n return input.toString();\n }\n\n if (objectName === \"Object\") {\n if (input?._MDNPlaySerializedObject) {\n return input._MDNPlaySerializedObject;\n }\n let formattedChild = \"\";\n let start = true;\n for (const key in input) {\n if (Object.prototype.hasOwnProperty.call(input, key)) {\n if (start) {\n start = false;\n } else {\n formattedChild = formattedChild + \", \";\n }\n formattedChild = formattedChild + key + \": \" + formatOutput(input[key]);\n }\n }\n return objectName + \" { \" + formattedChild + \" }\";\n }\n\n // Special object created with `OrdinaryObjectCreate(null)` returned by, for\n // example, named capture groups in https://mzl.la/2RERfQL\n // @see https://github.com/mdn/bob/issues/574#issuecomment-858213621\n if (!input.constructor && !input.prototype) {\n let formattedChild = \"\";\n let start = true;\n for (const key in input) {\n if (start) {\n start = false;\n } else {\n formattedChild = formattedChild + \", \";\n }\n formattedChild = formattedChild + key + \": \" + formatOutput(input[key]);\n }\n return \"Object { \" + formattedChild + \" }\";\n }\n\n return input;\n}\n\n/**\n * Formats output to indicate its type:\n * - quotes around strings\n * - single quotes around strings containing double quotes\n * - square brackets around arrays\n * (also copes with arrays of arrays)\n * does NOT detect Int32Array etc\n * @param {any} input - The output to log.\n * @returns Formatted output as a string.\n */\nexport function formatOutput(input) {\n if (input === undefined || input === null || typeof input === \"boolean\") {\n return String(input);\n } else if (typeof input === \"number\") {\n // Negative zero\n if (Object.is(input, -0)) {\n return \"-0\";\n }\n return String(input);\n } else if (typeof input === \"bigint\") {\n return String(input) + \"n\";\n } else if (typeof input === \"string\") {\n // string literal\n return input.includes('\"') ? \"'\" + input + \"'\" : '\"' + input + '\"';\n } else if (Array.isArray(input)) {\n // check the contents of the array\n return \"Array [\" + formatArray(input) + \"]\";\n } else {\n return formatObject(input);\n }\n}\n","import { LitElement, html } from \"lit\";\n\nimport styles from \"./element.css?lit\";\nimport { formatOutput } from \"./utils.js\";\n\n/** @import { VConsole } from \"./types.js\" */\n\n/** @implements {Partial<Console>} */\nclass VirtualConsole {\n #host;\n\n /** @param {MDNPlayConsole} host */\n constructor(host) {\n this.#host = host;\n }\n\n clear() {\n this.#host._messages = [];\n }\n\n /** @param {...any} args */\n debug(...args) {\n return this.log(...args);\n }\n\n /** @param {...any} args */\n error(...args) {\n return this.log(...args);\n }\n\n /** @param {...any} args */\n info(...args) {\n return this.log(...args);\n }\n\n /** @param {...any} args */\n log(...args) {\n if (args.length > 1 && typeof args[0] === \"string\") {\n // https://developer.mozilla.org/en-US/docs/Web/API/console#using_string_substitutions\n // TODO: add unit testing of this\n args[0] = args[0].replaceAll(\n /%(?:\\.([0-9]+))?(.)/g,\n (match, formatArg, format) => {\n switch (format) {\n case \"o\":\n case \"O\": {\n const O = args.splice(1, 1)[0];\n return formatOutput(O);\n }\n case \"d\":\n case \"i\": {\n const i = args.splice(1, 1)[0];\n return Math.trunc(i).toFixed(0).padStart(formatArg, \"0\");\n }\n case \"s\": {\n const s = args.splice(1, 1)[0];\n return s.toString();\n }\n case \"f\": {\n const f = args.splice(1, 1)[0];\n return (typeof f === \"number\" ? f : Number.parseFloat(f)).toFixed(\n formatArg ?? 6,\n );\n }\n case \"c\":\n // TODO: Not implemented yet, so just remove the argument\n args.splice(1, 1);\n return \"\";\n case \"%\":\n return \"%\";\n default:\n return match;\n }\n },\n );\n }\n this.#host._messages = [\n ...this.#host._messages,\n args.map((x) => formatOutput(x)).join(\" \"),\n ];\n }\n\n /** @param {...any} args */\n warn(...args) {\n return this.log(...args);\n }\n}\n\nexport class MDNPlayConsole extends LitElement {\n static properties = {\n _messages: { state: true },\n };\n\n static styles = styles;\n\n constructor() {\n super();\n this.vconsole = new VirtualConsole(this);\n /** @type {string[]} */\n this._messages = [];\n }\n\n /** @param {CustomEvent<VConsole>} e */\n onConsole({ detail }) {\n if (detail.prop in this.vconsole) {\n const prop = /** @type {keyof typeof this.vconsole} */ (detail.prop);\n if (detail.args) {\n this.vconsole[prop](...detail.args);\n } else {\n this.vconsole[prop]();\n }\n } else {\n this.vconsole.warn(\n \"[Playground] Unsupported console message (see browser console)\",\n );\n }\n }\n\n render() {\n return html`\n <ul aria-live=\"polite\">\n ${this._messages.map(\n (message) => html`<li><code>${message}</code></li>`,\n )}\n </ul>\n `;\n }\n\n updated() {\n this.scrollTo({ top: this.scrollHeight });\n }\n}\n\ncustomElements.define(\"mdn-play-console\", MDNPlayConsole);\n"],"names":["Array","Object","String","JSON","VirtualConsole","Math","Number","MDNPlayConsole","s","customElements"],"mappings":"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"}
|