@mdn/fred 0.0.4 → 0.0.5
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/.prettierignore +1 -0
- package/.release-please-manifest.json +1 -1
- package/CHANGELOG.md +19 -0
- package/components/color/global.css +2 -0
- package/components/homepage-hero/server.js +0 -1
- package/components/placement-sidebar/element.css +7 -0
- package/components/reference-layout/server.css +2 -0
- package/components/search-modal/element.css +131 -4
- package/components/search-modal/element.js +60 -25
- package/dist/client/1739.1435a6d3f1a2dd88.js +8 -0
- package/dist/client/1739.1435a6d3f1a2dd88.js.map +1 -0
- package/dist/client/2776.435ecffa5f77c7eb.js +43 -0
- package/dist/client/2776.435ecffa5f77c7eb.js.map +1 -0
- package/dist/client/{8483.0c0da6fab68fab50.js → 8483.651683d5e2cbae52.js} +2 -2
- package/dist/client/{8483.0c0da6fab68fab50.js.map → 8483.651683d5e2cbae52.js.map} +1 -1
- package/dist/client/{9565.5e45ab3e0d622510.js → 9565.faafbc9f4c1268c1.js} +2 -2
- package/dist/client/9565.faafbc9f4c1268c1.js.map +1 -0
- package/dist/client/{index.1e455f7bb8386557.js → index.f81a73f443949b54.js} +2 -2
- package/dist/client/{index.1e455f7bb8386557.js.map → index.f81a73f443949b54.js.map} +1 -1
- package/dist/client/{runtime.49d8cdacf2e0c2df.js → runtime.a1cce37ae8fd8f1d.js} +2 -2
- package/dist/client/{runtime.49d8cdacf2e0c2df.js.map → runtime.a1cce37ae8fd8f1d.js.map} +1 -1
- package/dist/client/stats.json +159 -159
- package/dist/client/{styles-global.15e503218e977c18.js → styles-global.29cd4720c8834abd.js} +1 -1
- package/dist/client/{styles-global.8acd1554a2791e3c.css → styles-global.f515b2bde4d7df93.css} +2 -2
- package/dist/client/styles-global.f515b2bde4d7df93.css.map +1 -0
- package/dist/client/{styles-reference-layout.4b0aca3ae954f961.css → styles-reference-layout.ac37f9e3a27faaac.css} +2 -2
- package/dist/client/styles-reference-layout.ac37f9e3a27faaac.css.map +1 -0
- package/dist/legacy/{index.ae67e107a2bc75bb.js → index.b481dadaaa935e27.js} +3 -3
- package/dist/legacy/{index.ae67e107a2bc75bb.js.map → index.b481dadaaa935e27.js.map} +1 -1
- package/dist/legacy/stats.json +8 -8
- package/dist/ssr/index.js +22 -11
- package/dist/ssr/index.js.map +1 -1
- package/dist/ssr/stats.json +4 -4
- package/l10n/en-US.ftl +1 -1
- package/package.json +1 -1
- package/dist/client/1739.16064f8d04091fb6.js +0 -8
- package/dist/client/1739.16064f8d04091fb6.js.map +0 -1
- package/dist/client/2776.f1ca2b5f474ba69f.js +0 -32
- package/dist/client/2776.f1ca2b5f474ba69f.js.map +0 -1
- package/dist/client/9565.5e45ab3e0d622510.js.map +0 -1
- package/dist/client/styles-global.8acd1554a2791e3c.css.map +0 -1
- package/dist/client/styles-reference-layout.4b0aca3ae954f961.css.map +0 -1
- /package/dist/legacy/{index.ae67e107a2bc75bb.js.LICENSE.txt → index.b481dadaaa935e27.js.LICENSE.txt} +0 -0
package/.prettierignore
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
CHANGELOG.md
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.0.5](https://github.com/mdn/fred/compare/v0.0.4...v0.0.5) (2025-07-01)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* **homepage-hero:** avoid non-link underline ([#287](https://github.com/mdn/fred/issues/287)) ([919f789](https://github.com/mdn/fred/commit/919f789b89e1afdb3610a509aa2e70c665616704))
|
|
9
|
+
* **placement:** add focus-visible to sidebar ([#280](https://github.com/mdn/fred/issues/280)) ([7381c00](https://github.com/mdn/fred/commit/7381c00b1fb9ca769d902da8bd7c76f1f6b33d76))
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
### Enhancements
|
|
13
|
+
|
|
14
|
+
* **search-modal:** update blur, mark, links ([#309](https://github.com/mdn/fred/issues/309)) ([8ce49b3](https://github.com/mdn/fred/commit/8ce49b3b4f508ce0ba735e4c9d0b3f4155234b3c))
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Miscellaneous
|
|
18
|
+
|
|
19
|
+
* **deps-dev:** bump the dev group with 2 updates ([#307](https://github.com/mdn/fred/issues/307)) ([48f89f3](https://github.com/mdn/fred/commit/48f89f3b1410bf7cb8d18d73a00cad6c396a012a))
|
|
20
|
+
* **search-modal:** add styles ([#304](https://github.com/mdn/fred/issues/304)) ([4e08eff](https://github.com/mdn/fred/commit/4e08effaf9a8080cea33c0b61ce44f509facee64))
|
|
21
|
+
|
|
3
22
|
## [0.0.4](https://github.com/mdn/fred/compare/v0.0.3...v0.0.4) (2025-06-30)
|
|
4
23
|
|
|
5
24
|
|
|
@@ -16,9 +16,11 @@
|
|
|
16
16
|
:root {
|
|
17
17
|
--color-white: hsl(0deg 0% 100%);
|
|
18
18
|
--color-white-alpha-25: hsl(0deg 0% 100% / 25%);
|
|
19
|
+
--color-white-alpha-75: hsl(0deg 0% 100% / 75%);
|
|
19
20
|
|
|
20
21
|
--color-black: hsl(0deg 0% 0%);
|
|
21
22
|
--color-black-alpha-25: hsl(0deg 0% 0% / 25%);
|
|
23
|
+
--color-black-alpha-75: hsl(0deg 0% 0% / 75%);
|
|
22
24
|
}
|
|
23
25
|
|
|
24
26
|
/* Gray */
|
|
@@ -35,9 +35,16 @@
|
|
|
35
35
|
border: 1px solid var(--color-border-primary);
|
|
36
36
|
border-radius: var(--border-radius);
|
|
37
37
|
|
|
38
|
+
&:has(> .placement-link:focus-visible) {
|
|
39
|
+
outline: auto;
|
|
40
|
+
}
|
|
41
|
+
|
|
38
42
|
.placement-link {
|
|
43
|
+
display: block;
|
|
44
|
+
|
|
39
45
|
width: 100%;
|
|
40
46
|
height: 100%;
|
|
47
|
+
|
|
41
48
|
padding: 0;
|
|
42
49
|
|
|
43
50
|
> img {
|
|
@@ -5,11 +5,138 @@
|
|
|
5
5
|
}
|
|
6
6
|
|
|
7
7
|
dialog {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
padding: 0;
|
|
9
|
+
|
|
10
|
+
background-color: var(--color-background-primary);
|
|
11
|
+
border: 1px solid var(--color-border-primary);
|
|
12
|
+
border-radius: 0.5rem;
|
|
13
|
+
|
|
14
|
+
/* Desktop menu */
|
|
15
|
+
@media (width > 1006px) {
|
|
16
|
+
width: calc(var(--layout-content-max) + 1rem);
|
|
17
|
+
max-height: calc(100% - var(--sticky-header-height) - 2rem);
|
|
18
|
+
margin: calc(var(--sticky-header-height) + 1rem) auto 1rem;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/* Mobile menu */
|
|
22
|
+
@media (width <= 1006px) {
|
|
23
|
+
width: 100%;
|
|
24
|
+
max-height: calc(100% - 2rem);
|
|
25
|
+
margin: 1rem auto;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
&[open] {
|
|
29
|
+
display: flex;
|
|
30
|
+
flex-direction: column;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
&::backdrop {
|
|
34
|
+
background-color: light-dark(
|
|
35
|
+
var(--color-white-alpha-75),
|
|
36
|
+
var(--color-black-alpha-75)
|
|
37
|
+
);
|
|
38
|
+
backdrop-filter: blur(3px);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
progress {
|
|
43
|
+
width: calc(100% - 2rem);
|
|
44
|
+
margin: 0 auto 0.5rem;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
form {
|
|
48
|
+
display: grid;
|
|
49
|
+
|
|
50
|
+
grid-template-columns: min-content 1fr;
|
|
51
|
+
|
|
52
|
+
gap: 0.5rem;
|
|
53
|
+
place-items: center;
|
|
54
|
+
|
|
55
|
+
padding: 1rem;
|
|
56
|
+
|
|
57
|
+
font-size: var(--font-size-large);
|
|
58
|
+
|
|
59
|
+
&::before {
|
|
60
|
+
width: 1em;
|
|
61
|
+
height: 1em;
|
|
62
|
+
|
|
63
|
+
content: "";
|
|
64
|
+
|
|
65
|
+
background-color: var(--color-border-secondary);
|
|
66
|
+
|
|
67
|
+
mask-image: url("../icon/search.svg");
|
|
68
|
+
mask-size: contain;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
input {
|
|
73
|
+
width: 100%;
|
|
74
|
+
|
|
75
|
+
padding: 0;
|
|
76
|
+
margin: 0;
|
|
77
|
+
|
|
78
|
+
font-size: inherit;
|
|
79
|
+
|
|
80
|
+
outline: none;
|
|
81
|
+
|
|
82
|
+
background-color: transparent;
|
|
83
|
+
border: none;
|
|
84
|
+
|
|
85
|
+
&::placeholder {
|
|
86
|
+
color: var(--color-text-secondary);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
ul {
|
|
91
|
+
padding: 0;
|
|
92
|
+
margin: 0;
|
|
93
|
+
|
|
94
|
+
overflow: auto;
|
|
95
|
+
|
|
96
|
+
overscroll-behavior: contain;
|
|
97
|
+
|
|
98
|
+
&:has(li) {
|
|
99
|
+
border-top: 1px solid var(--color-border-primary);
|
|
100
|
+
}
|
|
11
101
|
}
|
|
12
102
|
|
|
13
103
|
li[data-selected] {
|
|
14
|
-
background:
|
|
104
|
+
background: var(--color-background-blue);
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
li {
|
|
108
|
+
list-style-type: none;
|
|
109
|
+
|
|
110
|
+
&:not([data-selected]):hover {
|
|
111
|
+
background-color: var(--color-background-secondary);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
li > * {
|
|
116
|
+
width: 100%;
|
|
117
|
+
padding: 0.5rem 1.5rem;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
a {
|
|
121
|
+
display: grid;
|
|
122
|
+
color: var(--color-link-normal);
|
|
123
|
+
text-decoration: none;
|
|
124
|
+
|
|
125
|
+
&:visited {
|
|
126
|
+
color: var(--color-link-visited);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
.title {
|
|
131
|
+
font-size: var(--font-size-large);
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
.slug {
|
|
135
|
+
font-size: var(--font-size-small);
|
|
136
|
+
color: var(--color-text-secondary);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
mark {
|
|
140
|
+
color: var(--color-text-primary);
|
|
141
|
+
background-color: light-dark(var(--color-yellow-80), var(--color-yellow-20));
|
|
15
142
|
}
|
|
@@ -64,27 +64,46 @@ export class MDNSearchModal extends L10nMixin(LitElement) {
|
|
|
64
64
|
|
|
65
65
|
/** @param {KeyboardEvent} event */
|
|
66
66
|
_keydown(event) {
|
|
67
|
-
const results = (this._queryIndex.value?.length || 0) + 1;
|
|
68
67
|
switch (event.key) {
|
|
69
68
|
case "ArrowUp": {
|
|
70
69
|
event.preventDefault();
|
|
71
|
-
|
|
72
|
-
this._selected = value < 0 ? results + value : value;
|
|
70
|
+
this._select(this._selected - 1);
|
|
73
71
|
break;
|
|
74
72
|
}
|
|
75
73
|
case "ArrowDown":
|
|
76
74
|
event.preventDefault();
|
|
77
|
-
this.
|
|
75
|
+
this._select(this._selected + 1);
|
|
78
76
|
break;
|
|
79
77
|
default:
|
|
80
78
|
return;
|
|
81
79
|
}
|
|
82
80
|
}
|
|
83
81
|
|
|
82
|
+
/** @returns {HTMLElement|null} */
|
|
83
|
+
_getSelectedItem() {
|
|
84
|
+
return this.shadowRoot?.querySelector("[data-selected] a") ?? null;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/** @param {number} index */
|
|
88
|
+
_select(index) {
|
|
89
|
+
const results = (this._queryIndex.value?.length || 0) + 1;
|
|
90
|
+
const value = index % results;
|
|
91
|
+
this._selected = value < 0 ? results + index : value;
|
|
92
|
+
setTimeout(() => {
|
|
93
|
+
const item = this._getSelectedItem();
|
|
94
|
+
if (item instanceof HTMLElement) {
|
|
95
|
+
item.scrollIntoView({
|
|
96
|
+
behavior: "smooth",
|
|
97
|
+
block: "nearest",
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
}, 0);
|
|
101
|
+
}
|
|
102
|
+
|
|
84
103
|
/** @param {SubmitEvent} event */
|
|
85
104
|
_submit(event) {
|
|
86
105
|
event.preventDefault();
|
|
87
|
-
const item = this.
|
|
106
|
+
const item = this._getSelectedItem();
|
|
88
107
|
if (item instanceof HTMLElement) {
|
|
89
108
|
item.click();
|
|
90
109
|
}
|
|
@@ -157,6 +176,12 @@ export class MDNSearchModal extends L10nMixin(LitElement) {
|
|
|
157
176
|
document.removeEventListener("keydown", this._globalKeydown);
|
|
158
177
|
}
|
|
159
178
|
|
|
179
|
+
_renderLoadingSearchIndex() {
|
|
180
|
+
return html`<progress
|
|
181
|
+
aria-label=${this.l10n`Loading search index…`}
|
|
182
|
+
></progress>`;
|
|
183
|
+
}
|
|
184
|
+
|
|
160
185
|
render() {
|
|
161
186
|
const siteSearchIndex = this._queryIndex.value?.length || 0;
|
|
162
187
|
return html`
|
|
@@ -167,24 +192,32 @@ export class MDNSearchModal extends L10nMixin(LitElement) {
|
|
|
167
192
|
.value=${this._query}
|
|
168
193
|
autofocus
|
|
169
194
|
@input=${this._input}
|
|
195
|
+
placeholder=${this.l10n`Search`}
|
|
196
|
+
aria-label=${this.l10n`Search`}
|
|
170
197
|
/>
|
|
171
198
|
</form>
|
|
199
|
+
${this._queryIndex.render({
|
|
200
|
+
initial: this._renderLoadingSearchIndex.bind(this),
|
|
201
|
+
pending: this._renderLoadingSearchIndex.bind(this),
|
|
202
|
+
})}
|
|
172
203
|
<ul>
|
|
173
204
|
${this._queryIndex.render({
|
|
174
|
-
initial: () => html`<progress></progress>`,
|
|
175
|
-
pending: () => html`<progress></progress>`,
|
|
176
205
|
complete: (results) =>
|
|
177
206
|
results?.map(
|
|
178
207
|
({ title, url }, i) => html`
|
|
179
208
|
<li ?data-selected=${this._selected === i} data-result=${i}>
|
|
180
|
-
<a href=${url}
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
209
|
+
<a href=${url}
|
|
210
|
+
><span class="title"
|
|
211
|
+
>${HighlightMatch(title, this._query)}</span
|
|
212
|
+
>
|
|
213
|
+
<span class="slug"
|
|
214
|
+
>${url
|
|
215
|
+
.split("/")
|
|
216
|
+
.slice(1)
|
|
217
|
+
.filter((p) => !["docs", this.locale].includes(p))
|
|
218
|
+
.join(" / ")}</span
|
|
219
|
+
>
|
|
220
|
+
</a>
|
|
188
221
|
</li>
|
|
189
222
|
`,
|
|
190
223
|
),
|
|
@@ -196,15 +229,17 @@ export class MDNSearchModal extends L10nMixin(LitElement) {
|
|
|
196
229
|
>
|
|
197
230
|
<a
|
|
198
231
|
href=${`/${this.locale}/search?${new URLSearchParams({ q: this._query })}`}
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
232
|
+
><span class="title"
|
|
233
|
+
>${this.l10n.raw({
|
|
234
|
+
id: "search-modal-site-search",
|
|
235
|
+
args: {
|
|
236
|
+
query: this._query,
|
|
237
|
+
},
|
|
238
|
+
elements: {
|
|
239
|
+
query: { tag: "code" },
|
|
240
|
+
},
|
|
241
|
+
})}</span
|
|
242
|
+
></a
|
|
208
243
|
>
|
|
209
244
|
</li>`
|
|
210
245
|
: nothing}
|
|
@@ -215,7 +250,7 @@ export class MDNSearchModal extends L10nMixin(LitElement) {
|
|
|
215
250
|
|
|
216
251
|
updated() {
|
|
217
252
|
if (this._shiftFocus) {
|
|
218
|
-
const selected = this.
|
|
253
|
+
const selected = this._getSelectedItem();
|
|
219
254
|
if (selected instanceof HTMLElement) {
|
|
220
255
|
selected.focus();
|
|
221
256
|
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export const __webpack_ids__=["1739"];export const __webpack_modules__={73594:function(e,a,o){o.r(a),o.d(a,{MDNHomepageSearch:()=>MDNHomepageSearch});var r=o(14703),t=o(69535),n=o(39187),s=o(8036);let MDNHomepageSearch=class MDNHomepageSearch extends(0,t.q)(r.oi){static styles=s.Z;_showModal(){let e=document.querySelector("#search");e instanceof n.MDNSearchModal?e.showModal():console.error("MDNSearchModal not found!")}render(){return(0,r.dy)`<button
|
|
2
|
+
class="mdn-homepage-search"
|
|
3
|
+
title=${this.l10n`Search the site`}
|
|
4
|
+
@click=${this._showModal}
|
|
5
|
+
>
|
|
6
|
+
${this.l10n`Search`}
|
|
7
|
+
</button>`}};customElements.define("mdn-homepage-search",MDNHomepageSearch)},8036:function(e,a,o){o.d(a,{Z:()=>p});var r=o(14703),t=o(8081),n=o.n(t),s=o(23645),c=o.n(s),i=o(61667),l=o.n(i),d=new o.U(o(99454)),m=c()(n()),h=l()(d);m.push([e.id,`.mdn-homepage-search{border-color:var(--color-border-primary);border-radius:2em;border-style:solid;display:flex;font-size:var(--font-size-large);gap:.5ch;justify-content:center;margin:0 auto;padding:1em}.mdn-homepage-search:after{background-color:var(--color-text-primary);content:"";display:inline-block;flex-shrink:0;height:1.1em;-webkit-mask-image:url(${h});mask-image:url(${h});-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:1.1em}button{cursor:pointer}`,""]);let p=(0,r.iv)([m.toString()])}};
|
|
8
|
+
//# sourceMappingURL=1739.1435a6d3f1a2dd88.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"1739.1435a6d3f1a2dd88.js","sources":["webpack://@mdn/fred/./components/homepage-search/element.js","webpack://@mdn/fred/./components/homepage-search/element.css"],"sourcesContent":["import { LitElement, html } from \"lit\";\n\nimport { L10nMixin } from \"../../l10n/mixin.js\";\nimport { MDNSearchModal } from \"../search-modal/element.js\";\n\nimport styles from \"./element.css?lit\";\n\nexport class MDNHomepageSearch extends L10nMixin(LitElement) {\n static styles = styles;\n\n _showModal() {\n const search = document.querySelector(\"#search\");\n if (search instanceof MDNSearchModal) {\n search.showModal();\n } else {\n console.error(\"MDNSearchModal not found!\");\n }\n }\n\n render() {\n return html`<button\n class=\"mdn-homepage-search\"\n title=${this.l10n`Search the site`}\n @click=${this._showModal}\n >\n ${this.l10n`Search`}\n </button>`;\n }\n}\ncustomElements.define(\"mdn-homepage-search\", MDNHomepageSearch);\n","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\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"../icon/search.svg\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.mdn-homepage-search{border-color:var(--color-border-primary);border-radius:2em;border-style:solid;display:flex;font-size:var(--font-size-large);gap:.5ch;justify-content:center;margin:0 auto;padding:1em}.mdn-homepage-search:after{background-color:var(--color-text-primary);content:\"\";display:inline-block;flex-shrink:0;height:1.1em;-webkit-mask-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});mask-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:1.1em}button{cursor:pointer}`, \"\"]);\n// Exports\nexport default css([___CSS_LOADER_EXPORT___.toString()]);\n"],"names":["MDNHomepageSearch","s","document","console","customElements"],"mappings":"qMAOO,IAAMA,kBAAN,MAAMA,yBAA0B,QAAU,IAAU,EACzD,OAAO,OAASC,EAAA,CAAM,AAAC,AAEvB,aAAa,CACX,IAAM,EAASC,SAAS,aAAa,CAAC,UAClC,cAAkB,gBAAc,CAClC,EAAO,SAAS,GAEhBC,QAAQ,KAAK,CAAC,4BAElB,CAEA,QAAS,CACP,MAAO,QAAI,CAAC;;YAEJ,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;aAC5B,EAAE,IAAI,CAAC,UAAU,CAAC;;MAEzB,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aACb,CAAC,AACZ,CACF,EACAC,eAAe,MAAM,CAAC,sBAAuBJ,kB,kHCxBzC,EAAgC,kBAChC,EAA0B,IAA4B,KACtD,EAAqC,IAAgC,GAEzE,EAAwB,IAAI,CAAC,CAAC,EAAO,EAAE,CAAE,CAAC,mWAAmW,EAAE,EAAmC,iBAAiB,EAAE,EAAmC,oIAAoI,CAAC,CAAE,GAAG,EAElnB,MAAe,SAAI,CAAC,EAAwB,QAAQ,GAAG,C"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
export const __webpack_ids__=["2776"];export const __webpack_modules__={61667:function(e){e.exports=function(e,t){return(t||(t={}),e&&(e=String(e.__esModule?e.default:e),/^['"].*['"]$/.test(e)&&(e=e.slice(1,-1)),t.hash&&(e+=t.hash),/["'() \t\n]|(%20)/.test(e)||t.needQuotes))?'"'.concat(e.replace(/"/g,'\\"').replace(/\n/g,"\\n"),'"'):e}},99454:function(e,t,r){e.exports=r.p+"search.5dd31cbeea7d1af9.svg"},39187:function(e,t,r){r.r(t),r.d(t,{MDNSearchModal:()=>MDNSearchModal,splitQuery:()=>s});var o=r(35470),a=r(14703),i=r(69535),l=r(1613);let MDNSearchModal=class MDNSearchModal extends(0,i.q)(a.oi){static styles=l.Z;static properties={_index:{state:!0},_query:{state:!0},_selected:{state:!0},_shiftFocus:{state:!0}};constructor(){super(),this._index=void 0,this._query="",this._selected=0,this._shiftFocus=!1}async _loadIndex(){this._index||(this._index=this._fetchIndex())}async _fetchIndex(){let e=await fetch(`/${this.locale}/search-index.json`),t=await e.json();return{flex:t.map(({title:e,url:t},r)=>({index:r,title:e.toLowerCase(),slugTail:t.split("/").pop()?.toLowerCase()||""})),items:t}}showModal(){this._loadIndex(),this.shadowRoot?.querySelector("dialog")?.showModal(),this.shadowRoot?.querySelector("input")?.select()}_input({target:e}){e instanceof HTMLInputElement&&(this._query=e.value)}_keydown(e){switch(e.key){case"ArrowUp":e.preventDefault(),this._select(this._selected-1);break;case"ArrowDown":e.preventDefault(),this._select(this._selected+1);break;default:return}}_getSelectedItem(){return this.shadowRoot?.querySelector("[data-selected] a")??null}_select(e){let t=(this._queryIndex.value?.length||0)+1,r=e%t;this._selected=r<0?t+e:r,setTimeout(()=>{let e=this._getSelectedItem();e instanceof HTMLElement&&e.scrollIntoView({behavior:"smooth",block:"nearest"})},0)}_submit(e){e.preventDefault();let t=this._getSelectedItem();t instanceof HTMLElement&&t.click()}_focus({target:e}){if(e instanceof HTMLElement){let t=e.closest("[data-result]");if(t instanceof HTMLElement){let e=Number.parseInt(t.dataset.result||"NaN",10);Number.isNaN(e)||(this._selected=e,this._shiftFocus=!0)}else this._shiftFocus=!1}}_globalKeydown(e){let t=e.composedPath()?.[0]||e.target;if(t instanceof HTMLElement&&(["TEXTAREA","INPUT"].includes(t.tagName)||t.isContentEditable))return;let r=globalThis.getSelection()?.toString(),o=e.key,a=e.ctrlKey||e.metaKey,i="k"===o&&a&&!e.shiftKey;("/"===o&&!a||i)&&(e.preventDefault(),this.showModal(),r&&(this._query=r))}_queryIndex=new o.iQ(this,{args:()=>[this._index,this._query],task:async([e,t])=>{if(e&&t){var r=t,o=await e;let a=r.toLowerCase().trim(),i=s(r);return o.flex.filter(({title:e})=>i.every(t=>e.includes(t))).map(({index:e,title:t,slugTail:r})=>[Number([t,r].includes(a)),e]).sort(([e],[t])=>t-e).map(([e,t])=>t).slice(0,10).map(e=>e&&(o.items||[])[e]).filter(Boolean)}}});connectedCallback(){super.connectedCallback(),this._globalKeydown=this._globalKeydown.bind(this),document.addEventListener("keydown",this._globalKeydown),this._loadIndex=this._loadIndex.bind(this),this.renderRoot.addEventListener("mouseover",this._loadIndex)}disconnectedCallback(){super.disconnectedCallback(),this.renderRoot.removeEventListener("mouseover",this._loadIndex),document.removeEventListener("keydown",this._globalKeydown)}_renderLoadingSearchIndex(){return(0,a.dy)`<progress
|
|
2
|
+
aria-label=${this.l10n`Loading search index…`}
|
|
3
|
+
></progress>`}render(){let e=this._queryIndex.value?.length||0;return(0,a.dy)`
|
|
4
|
+
<dialog @keydown=${this._keydown} @focusin=${this._focus} closedby="any">
|
|
5
|
+
<form @submit=${this._submit}>
|
|
6
|
+
<input
|
|
7
|
+
type="text"
|
|
8
|
+
.value=${this._query}
|
|
9
|
+
autofocus
|
|
10
|
+
@input=${this._input}
|
|
11
|
+
placeholder=${this.l10n`Search`}
|
|
12
|
+
aria-label=${this.l10n`Search`}
|
|
13
|
+
/>
|
|
14
|
+
</form>
|
|
15
|
+
${this._queryIndex.render({initial:this._renderLoadingSearchIndex.bind(this),pending:this._renderLoadingSearchIndex.bind(this)})}
|
|
16
|
+
<ul>
|
|
17
|
+
${this._queryIndex.render({complete:e=>e?.map(({title:e,url:t},r)=>(0,a.dy)`
|
|
18
|
+
<li ?data-selected=${this._selected===r} data-result=${r}>
|
|
19
|
+
<a href=${t}
|
|
20
|
+
><span class="title"
|
|
21
|
+
>${(function(e,t){let r=s(t),o=r.map(e=>e.replaceAll(/[.*+?^${}()|[\]\\]/g,String.raw`\$&`)).map(e=>`(${e})`).join("|");return e.split(RegExp(o,"gi")).filter(Boolean).map(e=>r.includes(e.toLowerCase())?(0,a.dy)`<mark>${e}</mark>`:e)})(e,this._query)}</span
|
|
22
|
+
>
|
|
23
|
+
<span class="slug"
|
|
24
|
+
>${t.split("/").slice(1).filter(e=>!["docs",this.locale].includes(e)).join(" / ")}</span
|
|
25
|
+
>
|
|
26
|
+
</a>
|
|
27
|
+
</li>
|
|
28
|
+
`)})}
|
|
29
|
+
${this._query?(0,a.dy)`<li
|
|
30
|
+
?data-selected=${this._selected===e}
|
|
31
|
+
data-result=${e}
|
|
32
|
+
>
|
|
33
|
+
<a
|
|
34
|
+
href=${`/${this.locale}/search?${new URLSearchParams({q:this._query})}`}
|
|
35
|
+
><span class="title"
|
|
36
|
+
>${this.l10n.raw({id:"search-modal-site-search",args:{query:this._query},elements:{query:{tag:"code"}}})}</span
|
|
37
|
+
></a
|
|
38
|
+
>
|
|
39
|
+
</li>`:a.Ld}
|
|
40
|
+
</ul>
|
|
41
|
+
</dialog>
|
|
42
|
+
`}updated(){if(this._shiftFocus){let e=this._getSelectedItem();e instanceof HTMLElement&&e.focus()}}};function s(e){return(e=e.trim().toLowerCase()).startsWith(".")||e.endsWith(".")?e.split(/[ ,]+/):e.split(/[ ,.]+/)}customElements.define("mdn-search-modal",MDNSearchModal)},1613:function(e,t,r){r.d(t,{Z:()=>g});var o=r(14703),a=r(8081),i=r.n(a),l=r(23645),s=r.n(l),n=r(61667),d=r.n(n),c=new r.U(r(99454)),h=s()(i()),u=d()(c);h.push([e.id,`*,:after,:before{box-sizing:border-box}dialog{background-color:var(--color-background-primary);border:1px solid var(--color-border-primary);border-radius:.5rem;padding:0}@media (min-width:1006.02px){dialog{margin:calc(var(--sticky-header-height) + 1rem) auto 1rem;max-height:calc(100% - var(--sticky-header-height) - 2rem);width:calc(var(--layout-content-max) + 1rem)}}@media (max-width:1006px){dialog{margin:1rem auto;max-height:calc(100% - 2rem);width:100%}}dialog[open]{display:flex;flex-direction:column}dialog::backdrop{--csstools-light-dark-toggle--1:var(--csstools-color-scheme--light) var(--color-black-alpha-75);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background-color:var(--csstools-light-dark-toggle--1,var(--color-white-alpha-75))}@supports (color:light-dark(red,red)){dialog::backdrop{background-color:light-dark(var(--color-white-alpha-75),var(--color-black-alpha-75))}}progress{margin:0 auto .5rem;width:calc(100% - 2rem)}form{display:grid;font-size:var(--font-size-large);gap:.5rem;grid-template-columns:min-content 1fr;padding:1rem;place-items:center}form:before{background-color:var(--color-border-secondary);content:"";height:1em;-webkit-mask-image:url(${u});mask-image:url(${u});-webkit-mask-size:contain;mask-size:contain;width:1em}input{background-color:initial;border:none;font-size:inherit;margin:0;outline:none;padding:0;width:100%}input::placeholder{color:var(--color-text-secondary)}ul{margin:0;overflow:auto;overscroll-behavior:contain;padding:0}ul:has(li){border-top:1px solid var(--color-border-primary)}li[data-selected]{background:var(--color-background-blue)}li{list-style-type:none}li:not([data-selected]):hover{background-color:var(--color-background-secondary)}li>*{padding:.5rem 1.5rem;width:100%}a{color:var(--color-link-normal);display:grid;-webkit-text-decoration:none;text-decoration:none}a:visited{color:var(--color-link-visited)}.title{font-size:var(--font-size-large)}.slug{color:var(--color-text-secondary);font-size:var(--font-size-small)}mark{color:var(--color-text-primary);--csstools-light-dark-toggle--0:var(--csstools-color-scheme--light) var(--color-yellow-20);background-color:var(--csstools-light-dark-toggle--0,var(--color-yellow-80))}@supports (color:light-dark(red,red)){mark{background-color:light-dark(var(--color-yellow-80),var(--color-yellow-20))}}`,""]);let g=(0,o.iv)([h.toString()])}};
|
|
43
|
+
//# sourceMappingURL=2776.435ecffa5f77c7eb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"2776.435ecffa5f77c7eb.js","sources":["webpack://@mdn/fred/./node_modules/css-loader/dist/runtime/getUrl.js","webpack://@mdn/fred/./components/search-modal/element.js","webpack://@mdn/fred/./components/search-modal/element.css"],"sourcesContent":["\"use strict\";\n\nmodule.exports = function (url, options) {\n if (!options) {\n options = {};\n }\n if (!url) {\n return url;\n }\n url = String(url.__esModule ? url.default : url);\n\n // If url is already wrapped in quotes, remove them\n if (/^['\"].*['\"]$/.test(url)) {\n url = url.slice(1, -1);\n }\n if (options.hash) {\n url += options.hash;\n }\n\n // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n if (/[\"'() \\t\\n]|(%20)/.test(url) || options.needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, \"\\\\n\"), \"\\\"\");\n }\n return url;\n};","import { Task } from \"@lit/task\";\nimport { LitElement, html, nothing } from \"lit\";\n\nimport { L10nMixin } from \"../../l10n/mixin.js\";\n\nimport styles from \"./element.css?lit\";\n\nexport class MDNSearchModal extends L10nMixin(LitElement) {\n static styles = styles;\n\n static properties = {\n _index: { state: true },\n _query: { state: true },\n _selected: { state: true },\n _shiftFocus: { state: true },\n };\n\n constructor() {\n super();\n /** @type {Promise<import(\"./types.js\").SearchIndex> | undefined} */\n this._index = undefined;\n this._query = \"\";\n this._selected = 0;\n this._shiftFocus = false;\n }\n\n async _loadIndex() {\n if (this._index) {\n return;\n }\n\n this._index = this._fetchIndex();\n }\n\n async _fetchIndex() {\n const res = await fetch(`/${this.locale}/search-index.json`);\n /** @type {import(\"./types.js\").SearchIndexItem[]} */\n const items = await res.json();\n /** @type {import(\"./types.js\").SearchIndexFlexItem[]} */\n const flex = items.map(({ title, url }, index) => ({\n index,\n title: title.toLowerCase(),\n slugTail: url.split(\"/\").pop()?.toLowerCase() || \"\",\n }));\n\n return {\n flex,\n items,\n };\n }\n\n showModal() {\n this._loadIndex();\n this.shadowRoot?.querySelector(\"dialog\")?.showModal();\n this.shadowRoot?.querySelector(\"input\")?.select();\n }\n\n /** @param {InputEvent} event */\n _input({ target }) {\n if (target instanceof HTMLInputElement) {\n this._query = target.value;\n }\n }\n\n /** @param {KeyboardEvent} event */\n _keydown(event) {\n switch (event.key) {\n case \"ArrowUp\": {\n event.preventDefault();\n this._select(this._selected - 1);\n break;\n }\n case \"ArrowDown\":\n event.preventDefault();\n this._select(this._selected + 1);\n break;\n default:\n return;\n }\n }\n\n /** @returns {HTMLElement|null} */\n _getSelectedItem() {\n return this.shadowRoot?.querySelector(\"[data-selected] a\") ?? null;\n }\n\n /** @param {number} index */\n _select(index) {\n const results = (this._queryIndex.value?.length || 0) + 1;\n const value = index % results;\n this._selected = value < 0 ? results + index : value;\n setTimeout(() => {\n const item = this._getSelectedItem();\n if (item instanceof HTMLElement) {\n item.scrollIntoView({\n behavior: \"smooth\",\n block: \"nearest\",\n });\n }\n }, 0);\n }\n\n /** @param {SubmitEvent} event */\n _submit(event) {\n event.preventDefault();\n const item = this._getSelectedItem();\n if (item instanceof HTMLElement) {\n item.click();\n }\n }\n\n /** @param {FocusEvent} event */\n _focus({ target }) {\n if (target instanceof HTMLElement) {\n const focused = target.closest(\"[data-result]\");\n if (focused instanceof HTMLElement) {\n const index = Number.parseInt(focused.dataset.result || \"NaN\", 10);\n if (!Number.isNaN(index)) {\n this._selected = index;\n this._shiftFocus = true;\n }\n } else {\n this._shiftFocus = false;\n }\n }\n }\n\n /** @param {KeyboardEvent} event */\n _globalKeydown(event) {\n const target = event.composedPath()?.[0] || event.target;\n const isTextField =\n target instanceof HTMLElement &&\n ([\"TEXTAREA\", \"INPUT\"].includes(target.tagName) ||\n target.isContentEditable);\n\n if (isTextField) {\n return;\n }\n\n const selection = globalThis.getSelection()?.toString();\n const keyPressed = event.key;\n const ctrlOrMetaPressed = event.ctrlKey || event.metaKey;\n const isSlash = keyPressed === \"/\" && !ctrlOrMetaPressed;\n const isCtrlK = keyPressed === \"k\" && ctrlOrMetaPressed && !event.shiftKey;\n\n if (isSlash || isCtrlK) {\n event.preventDefault();\n this.showModal();\n if (selection) {\n this._query = selection;\n }\n }\n }\n\n _queryIndex = new Task(this, {\n args: () => [this._index, this._query],\n task: async ([index, query]) => {\n if (!index || !query) {\n return;\n }\n return quickSearch(query, await index);\n },\n });\n\n connectedCallback() {\n super.connectedCallback();\n this._globalKeydown = this._globalKeydown.bind(this);\n document.addEventListener(\"keydown\", this._globalKeydown);\n this._loadIndex = this._loadIndex.bind(this);\n this.renderRoot.addEventListener(\"mouseover\", this._loadIndex);\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.renderRoot.removeEventListener(\"mouseover\", this._loadIndex);\n document.removeEventListener(\"keydown\", this._globalKeydown);\n }\n\n _renderLoadingSearchIndex() {\n return html`<progress\n aria-label=${this.l10n`Loading search index…`}\n ></progress>`;\n }\n\n render() {\n const siteSearchIndex = this._queryIndex.value?.length || 0;\n return html`\n <dialog @keydown=${this._keydown} @focusin=${this._focus} closedby=\"any\">\n <form @submit=${this._submit}>\n <input\n type=\"text\"\n .value=${this._query}\n autofocus\n @input=${this._input}\n placeholder=${this.l10n`Search`}\n aria-label=${this.l10n`Search`}\n />\n </form>\n ${this._queryIndex.render({\n initial: this._renderLoadingSearchIndex.bind(this),\n pending: this._renderLoadingSearchIndex.bind(this),\n })}\n <ul>\n ${this._queryIndex.render({\n complete: (results) =>\n results?.map(\n ({ title, url }, i) => html`\n <li ?data-selected=${this._selected === i} data-result=${i}>\n <a href=${url}\n ><span class=\"title\"\n >${HighlightMatch(title, this._query)}</span\n >\n <span class=\"slug\"\n >${url\n .split(\"/\")\n .slice(1)\n .filter((p) => ![\"docs\", this.locale].includes(p))\n .join(\" / \")}</span\n >\n </a>\n </li>\n `,\n ),\n })}\n ${this._query\n ? html`<li\n ?data-selected=${this._selected === siteSearchIndex}\n data-result=${siteSearchIndex}\n >\n <a\n href=${`/${this.locale}/search?${new URLSearchParams({ q: this._query })}`}\n ><span class=\"title\"\n >${this.l10n.raw({\n id: \"search-modal-site-search\",\n args: {\n query: this._query,\n },\n elements: {\n query: { tag: \"code\" },\n },\n })}</span\n ></a\n >\n </li>`\n : nothing}\n </ul>\n </dialog>\n `;\n }\n\n updated() {\n if (this._shiftFocus) {\n const selected = this._getSelectedItem();\n if (selected instanceof HTMLElement) {\n selected.focus();\n }\n }\n }\n}\n\ncustomElements.define(\"mdn-search-modal\", MDNSearchModal);\n\n/**\n * @param {string} input\n * @param {import(\"./types.js\").SearchIndex} index\n * @returns {import(\"./types.js\").SearchResultItem[]}\n */\nfunction quickSearch(input, index) {\n const inputValueLC = input.toLowerCase().trim();\n const q = splitQuery(input);\n const indexResults = index.flex\n .filter(({ title }) => q.every((q) => title.includes(q)))\n .map(({ index, title, slugTail }) => {\n const exact = Number([title, slugTail].includes(inputValueLC));\n return /** @type {const} */ ([exact, index]);\n })\n .sort(([aExact], [bExact]) => bExact - aExact) // Boost exact matches.\n .map(([_, i]) => i)\n .slice(0, 10);\n\n return indexResults.map((i) => i && (index.items || [])[i]).filter(Boolean);\n}\n\n/**\n * Used by quicksearch and sidebar filters.\n * @param {string} term\n * @returns {string[]}\n */\nexport function splitQuery(term) {\n term = term.trim().toLowerCase();\n return term.startsWith(\".\") || term.endsWith(\".\")\n ? // Dot is probably meaningful.\n term.split(/[ ,]+/)\n : // Dot is probably just a word separator.\n term.split(/[ ,.]+/);\n}\n\n/**\n * @param {string} title\n * @param {string} query\n */\nfunction HighlightMatch(title, query) {\n // Split on highlight term and include term into parts, ignore case.\n const words = splitQuery(query);\n // $& means the whole matched string\n const regexWords = words.map((s) =>\n s.replaceAll(/[.*+?^${}()|[\\]\\\\]/g, String.raw`\\$&`),\n );\n const regex = regexWords.map((word) => `(${word})`).join(\"|\");\n const parts = title.split(new RegExp(regex, \"gi\"));\n return parts\n .filter(Boolean)\n .map((part) =>\n words.includes(part.toLowerCase()) ? html`<mark>${part}</mark>` : part,\n );\n}\n","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\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"../icon/search.svg\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `*,:after,:before{box-sizing:border-box}dialog{background-color:var(--color-background-primary);border:1px solid var(--color-border-primary);border-radius:.5rem;padding:0}@media (min-width:1006.02px){dialog{margin:calc(var(--sticky-header-height) + 1rem) auto 1rem;max-height:calc(100% - var(--sticky-header-height) - 2rem);width:calc(var(--layout-content-max) + 1rem)}}@media (max-width:1006px){dialog{margin:1rem auto;max-height:calc(100% - 2rem);width:100%}}dialog[open]{display:flex;flex-direction:column}dialog::backdrop{--csstools-light-dark-toggle--1:var(--csstools-color-scheme--light) var(--color-black-alpha-75);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background-color:var(--csstools-light-dark-toggle--1,var(--color-white-alpha-75))}@supports (color:light-dark(red,red)){dialog::backdrop{background-color:light-dark(var(--color-white-alpha-75),var(--color-black-alpha-75))}}progress{margin:0 auto .5rem;width:calc(100% - 2rem)}form{display:grid;font-size:var(--font-size-large);gap:.5rem;grid-template-columns:min-content 1fr;padding:1rem;place-items:center}form:before{background-color:var(--color-border-secondary);content:\"\";height:1em;-webkit-mask-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});mask-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});-webkit-mask-size:contain;mask-size:contain;width:1em}input{background-color:initial;border:none;font-size:inherit;margin:0;outline:none;padding:0;width:100%}input::placeholder{color:var(--color-text-secondary)}ul{margin:0;overflow:auto;overscroll-behavior:contain;padding:0}ul:has(li){border-top:1px solid var(--color-border-primary)}li[data-selected]{background:var(--color-background-blue)}li{list-style-type:none}li:not([data-selected]):hover{background-color:var(--color-background-secondary)}li>*{padding:.5rem 1.5rem;width:100%}a{color:var(--color-link-normal);display:grid;-webkit-text-decoration:none;text-decoration:none}a:visited{color:var(--color-link-visited)}.title{font-size:var(--font-size-large)}.slug{color:var(--color-text-secondary);font-size:var(--font-size-small)}mark{color:var(--color-text-primary);--csstools-light-dark-toggle--0:var(--csstools-color-scheme--light) var(--color-yellow-20);background-color:var(--csstools-light-dark-toggle--0,var(--color-yellow-80))}@supports (color:light-dark(red,red)){mark{background-color:light-dark(var(--color-yellow-80),var(--color-yellow-20))}}`, \"\"]);\n// Exports\nexport default css([___CSS_LOADER_EXPORT___.toString()]);\n"],"names":["String","MDNSearchModal","fetch","HTMLInputElement","e","setTimeout","HTMLElement","Number","t","globalThis","i","s","Boolean","document","RegExp","URLSearchParams","customElements"],"mappings":"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"}
|
|
@@ -28,5 +28,5 @@ export const __webpack_ids__=["8483"];export const __webpack_modules__={61667:fu
|
|
|
28
28
|
<mdn-placement-note></mdn-placement-note>
|
|
29
29
|
</div>
|
|
30
30
|
<mdn-placement-no></mdn-placement-no>
|
|
31
|
-
</section>`}};customElements.define("mdn-placement-sidebar",MDNPlacementSidebar)},64686:function(e,t,i){i.d(t,{Z:()=>g});var a=i(14703),n=i(8081),r=i.n(n),o=i(23645),l=i.n(o),s=i(61667),c=i.n(s),d=new i.U(i(73981)),m=l()(r()),p=c()(d);m.push([e.id,`.sidebar-placement{display:flex;flex-direction:column;height:fit-content;margin:1rem 0;max-width:12rem;min-height:22rem}.sidebar-placement .placement-container{--side-background-light:#111;--side-color-light:#fff;--side-background-dark:#111;--side-color-dark:#fff;--csstools-light-dark-toggle--0:var(--csstools-color-scheme--light) var(--side-background-dark);--side-background:var(--csstools-light-dark-toggle--0,var(--side-background-light));--csstools-light-dark-toggle--1:var(--csstools-color-scheme--light) var(--side-color-dark);--side-color:var(--csstools-light-dark-toggle--1,var(--side-color-light));--border-radius:0.5rem;border:1px solid var(--color-border-primary);border-radius:var(--border-radius);margin:0;min-height:20rem;overflow:hidden;position:relative;width:11rem}@supports (color:light-dark(red,red)){.sidebar-placement .placement-container{--side-background:light-dark(var(--side-background-light),var(--side-background-dark));--side-color:light-dark(var(--side-color-light),var(--side-color-dark))}}@supports not (color:light-dark(tan,tan)){:is(.sidebar-placement .placement-container) *{--csstools-light-dark-toggle--0:var(--csstools-color-scheme--light) var(--side-background-dark);--side-background:var(--csstools-light-dark-toggle--0,var(--side-background-light));--csstools-light-dark-toggle--1:var(--csstools-color-scheme--light) var(--side-color-dark);--side-color:var(--csstools-light-dark-toggle--1,var(--side-color-light))}}:is(.sidebar-placement .placement-container) .placement-link{height:100%;padding:0;width:100%}:is(:is(.sidebar-placement .placement-container) .placement-link)>img{height:auto;width:100%}:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content{background:linear-gradient(to top,var(--side-background) 9rem,#0000 12rem,#0000);border-radius:var(--border-radius);color:var(--side-color);display:flex;flex-direction:column;gap:.25rem;height:100%;justify-content:end;line-height:1.25;position:absolute;top:0;width:100%}:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-heading{font-size:.8875rem;padding:0 1rem}:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-copy{font-size:.75rem;padding:0 1rem}:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-cta{--color:var(--side-color);--icon-primary:var(--color);background-color:#ffffff11;border:2px solid;border-radius:2rem;color:var(--color);font-size:.75rem;font-weight:600;margin:.5rem auto 1rem 1rem;padding:.5em 1em;transition:all .3s ease-in-out}:is(:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-cta):after{transition:all .3s ease-in-out}:is(:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-cta):hover{--color:var(--side-background);background-color:var(--side-color)}:is(:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-cta):after{background-color:var(--color);content:"";display:inline-flex;height:.625rem;margin-left:.25rem;-webkit-mask-image:url(${p});mask-image:url(${p});-webkit-mask-size:cover;mask-size:cover;width:.625rem}.sidebar-placement mdn-placement-note{position:absolute;right:0;top:0}@media (min-width:31rem){.sidebar-placement.horizontal{align-self:flex-end;max-width:30rem;min-height:12rem}.sidebar-placement.horizontal .placement-container{height:10rem;min-height:0;width:25rem}:is(:is(.sidebar-placement.horizontal .placement-container) .placement-link)>img{height:100%;position:absolute;width:auto;z-index:1}:is(:is(.sidebar-placement.horizontal .placement-container) .placement-link) .placement-content{align-items:end;background:var(--side-background);flex-direction:column;height:100%;justify-content:end;left:0;padding-left:10rem;width:auto}}`,""]);let g=(0,a.iv)([m.toString()])}};
|
|
32
|
-
//# sourceMappingURL=8483.
|
|
31
|
+
</section>`}};customElements.define("mdn-placement-sidebar",MDNPlacementSidebar)},64686:function(e,t,i){i.d(t,{Z:()=>g});var a=i(14703),n=i(8081),r=i.n(n),o=i(23645),l=i.n(o),s=i(61667),c=i.n(s),d=new i.U(i(73981)),m=l()(r()),p=c()(d);m.push([e.id,`.sidebar-placement{display:flex;flex-direction:column;height:fit-content;margin:1rem 0;max-width:12rem;min-height:22rem}.sidebar-placement .placement-container{--side-background-light:#111;--side-color-light:#fff;--side-background-dark:#111;--side-color-dark:#fff;--csstools-light-dark-toggle--0:var(--csstools-color-scheme--light) var(--side-background-dark);--side-background:var(--csstools-light-dark-toggle--0,var(--side-background-light));--csstools-light-dark-toggle--1:var(--csstools-color-scheme--light) var(--side-color-dark);--side-color:var(--csstools-light-dark-toggle--1,var(--side-color-light));--border-radius:0.5rem;border:1px solid var(--color-border-primary);border-radius:var(--border-radius);margin:0;min-height:20rem;overflow:hidden;position:relative;width:11rem}@supports (color:light-dark(red,red)){.sidebar-placement .placement-container{--side-background:light-dark(var(--side-background-light),var(--side-background-dark));--side-color:light-dark(var(--side-color-light),var(--side-color-dark))}}@supports not (color:light-dark(tan,tan)){:is(.sidebar-placement .placement-container) *{--csstools-light-dark-toggle--0:var(--csstools-color-scheme--light) var(--side-background-dark);--side-background:var(--csstools-light-dark-toggle--0,var(--side-background-light));--csstools-light-dark-toggle--1:var(--csstools-color-scheme--light) var(--side-color-dark);--side-color:var(--csstools-light-dark-toggle--1,var(--side-color-light))}}:is(.sidebar-placement .placement-container):has(>.placement-link:focus-visible){outline:auto}:is(.sidebar-placement .placement-container) .placement-link{display:block;height:100%;padding:0;width:100%}:is(:is(.sidebar-placement .placement-container) .placement-link)>img{height:auto;width:100%}:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content{background:linear-gradient(to top,var(--side-background) 9rem,#0000 12rem,#0000);border-radius:var(--border-radius);color:var(--side-color);display:flex;flex-direction:column;gap:.25rem;height:100%;justify-content:end;line-height:1.25;position:absolute;top:0;width:100%}:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-heading{font-size:.8875rem;padding:0 1rem}:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-copy{font-size:.75rem;padding:0 1rem}:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-cta{--color:var(--side-color);--icon-primary:var(--color);background-color:#ffffff11;border:2px solid;border-radius:2rem;color:var(--color);font-size:.75rem;font-weight:600;margin:.5rem auto 1rem 1rem;padding:.5em 1em;transition:all .3s ease-in-out}:is(:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-cta):after{transition:all .3s ease-in-out}:is(:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-cta):hover{--color:var(--side-background);background-color:var(--side-color)}:is(:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-cta):after{background-color:var(--color);content:"";display:inline-flex;height:.625rem;margin-left:.25rem;-webkit-mask-image:url(${p});mask-image:url(${p});-webkit-mask-size:cover;mask-size:cover;width:.625rem}.sidebar-placement mdn-placement-note{position:absolute;right:0;top:0}@media (min-width:31rem){.sidebar-placement.horizontal{align-self:flex-end;max-width:30rem;min-height:12rem}.sidebar-placement.horizontal .placement-container{height:10rem;min-height:0;width:25rem}:is(:is(.sidebar-placement.horizontal .placement-container) .placement-link)>img{height:100%;position:absolute;width:auto;z-index:1}:is(:is(.sidebar-placement.horizontal .placement-container) .placement-link) .placement-content{align-items:end;background:var(--side-background);flex-direction:column;height:100%;justify-content:end;left:0;padding-left:10rem;width:auto}}`,""]);let g=(0,a.iv)([m.toString()])}};
|
|
32
|
+
//# sourceMappingURL=8483.651683d5e2cbae52.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"8483.0c0da6fab68fab50.js","sources":["webpack://@mdn/fred/./node_modules/css-loader/dist/runtime/getUrl.js","webpack://@mdn/fred/./components/placement-sidebar/element.js","webpack://@mdn/fred/./components/placement-sidebar/element.css"],"sourcesContent":["\"use strict\";\n\nmodule.exports = function (url, options) {\n if (!options) {\n options = {};\n }\n if (!url) {\n return url;\n }\n url = String(url.__esModule ? url.default : url);\n\n // If url is already wrapped in quotes, remove them\n if (/^['\"].*['\"]$/.test(url)) {\n url = url.slice(1, -1);\n }\n if (options.hash) {\n url += options.hash;\n }\n\n // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n if (/[\"'() \\t\\n]|(%20)/.test(url) || options.needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, \"\\\\n\"), \"\\\"\");\n }\n return url;\n};","import { LitElement, html, nothing } from \"lit\";\nimport { ref } from \"lit/directives/ref.js\";\nimport { styleMap } from \"lit/directives/style-map.js\";\n\nimport \"../placement-note/element.js\";\nimport \"../placement-no/element.js\";\n\nimport { PlacementMixin } from \"../placement/mixin.js\";\n\nimport styles from \"./element.css?lit\";\n\n/**\n * @import * as Placements from \"../placement/types.js\";\n */\n\nexport class MDNPlacementSidebar extends PlacementMixin(LitElement) {\n static styles = styles;\n\n static properties = {\n horizontal: { type: Boolean },\n };\n\n constructor() {\n super();\n this.horizontal = false;\n }\n\n /**\n *\n * @param {Placements.PlacementContextData} placementContext\n * @returns\n */\n renderComplete(placementContext) {\n const { side: data } = placementContext;\n if (!data) {\n return nothing;\n }\n const {\n status,\n click,\n view,\n copy,\n image,\n alt,\n cta,\n colors,\n version,\n heading,\n } = data;\n if (status !== \"success\") {\n return nothing;\n }\n if (!this._viewedUrl) {\n this._viewedUrl = view;\n this._version = version;\n }\n const { textColor, backgroundColor, textColorDark, backgroundColorDark } =\n colors || {};\n const styles = Object.fromEntries(\n [\n [\"--side-background-light\", backgroundColor],\n [\"--side-color-light\", textColor],\n [\"--side-background-dark\", backgroundColorDark || backgroundColor],\n [\"--side-color-dark\", textColorDark || textColor],\n ].filter(([_, v]) => Boolean(v)),\n );\n\n return html`<section\n class=${`sidebar-placement ${this.horizontal ? \"horizontal\" : \"\"}`}\n >\n <div\n ${ref(this._placementRef)}\n class=\"placement-container\"\n style=${styleMap(styles)}\n >\n <a\n class=\"placement-link\"\n data-glean=\"pong: pong->click side\"\n href=${this.clickLink(click, version)}\n target=\"_blank\"\n rel=\"sponsored noreferrer\"\n ><img\n src=${this.imgLink(image)}\n aria-hidden=${!alt}\n alt=${alt || \"\"}\n width=\"125px\"\n height=\"125px\"\n />\n <div class=\"placement-content\">\n <strong class=\"placement-heading\">${heading}</strong>\n <span class=\"placement-copy\">${copy}</span>\n <span class=\"placement-cta external\">${cta}</span>\n </div>\n </a>\n <mdn-placement-note></mdn-placement-note>\n </div>\n <mdn-placement-no></mdn-placement-no>\n </section>`;\n }\n}\n\ncustomElements.define(\"mdn-placement-sidebar\", MDNPlacementSidebar);\n","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\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"../icon/external-link.svg\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.sidebar-placement{display:flex;flex-direction:column;height:fit-content;margin:1rem 0;max-width:12rem;min-height:22rem}.sidebar-placement .placement-container{--side-background-light:#111;--side-color-light:#fff;--side-background-dark:#111;--side-color-dark:#fff;--csstools-light-dark-toggle--0:var(--csstools-color-scheme--light) var(--side-background-dark);--side-background:var(--csstools-light-dark-toggle--0,var(--side-background-light));--csstools-light-dark-toggle--1:var(--csstools-color-scheme--light) var(--side-color-dark);--side-color:var(--csstools-light-dark-toggle--1,var(--side-color-light));--border-radius:0.5rem;border:1px solid var(--color-border-primary);border-radius:var(--border-radius);margin:0;min-height:20rem;overflow:hidden;position:relative;width:11rem}@supports (color:light-dark(red,red)){.sidebar-placement .placement-container{--side-background:light-dark(var(--side-background-light),var(--side-background-dark));--side-color:light-dark(var(--side-color-light),var(--side-color-dark))}}@supports not (color:light-dark(tan,tan)){:is(.sidebar-placement .placement-container) *{--csstools-light-dark-toggle--0:var(--csstools-color-scheme--light) var(--side-background-dark);--side-background:var(--csstools-light-dark-toggle--0,var(--side-background-light));--csstools-light-dark-toggle--1:var(--csstools-color-scheme--light) var(--side-color-dark);--side-color:var(--csstools-light-dark-toggle--1,var(--side-color-light))}}:is(.sidebar-placement .placement-container) .placement-link{height:100%;padding:0;width:100%}:is(:is(.sidebar-placement .placement-container) .placement-link)>img{height:auto;width:100%}:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content{background:linear-gradient(to top,var(--side-background) 9rem,#0000 12rem,#0000);border-radius:var(--border-radius);color:var(--side-color);display:flex;flex-direction:column;gap:.25rem;height:100%;justify-content:end;line-height:1.25;position:absolute;top:0;width:100%}:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-heading{font-size:.8875rem;padding:0 1rem}:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-copy{font-size:.75rem;padding:0 1rem}:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-cta{--color:var(--side-color);--icon-primary:var(--color);background-color:#ffffff11;border:2px solid;border-radius:2rem;color:var(--color);font-size:.75rem;font-weight:600;margin:.5rem auto 1rem 1rem;padding:.5em 1em;transition:all .3s ease-in-out}:is(:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-cta):after{transition:all .3s ease-in-out}:is(:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-cta):hover{--color:var(--side-background);background-color:var(--side-color)}:is(:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-cta):after{background-color:var(--color);content:\"\";display:inline-flex;height:.625rem;margin-left:.25rem;-webkit-mask-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});mask-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});-webkit-mask-size:cover;mask-size:cover;width:.625rem}.sidebar-placement mdn-placement-note{position:absolute;right:0;top:0}@media (min-width:31rem){.sidebar-placement.horizontal{align-self:flex-end;max-width:30rem;min-height:12rem}.sidebar-placement.horizontal .placement-container{height:10rem;min-height:0;width:25rem}:is(:is(.sidebar-placement.horizontal .placement-container) .placement-link)>img{height:100%;position:absolute;width:auto;z-index:1}:is(:is(.sidebar-placement.horizontal .placement-container) .placement-link) .placement-content{align-items:end;background:var(--side-background);flex-direction:column;height:100%;justify-content:end;left:0;padding-left:10rem;width:auto}}`, \"\"]);\n// Exports\nexport default css([___CSS_LOADER_EXPORT___.toString()]);\n"],"names":["String","MDNPlacementSidebar","Boolean","h","b","Object","customElements"],"mappings":"0FAEA,EAAO,OAAO,CAAG,SAAU,CAAG,CAAE,CAAO,SACjC,AAAC,GACH,GAAU,CAAC,GAER,IAGL,EAAMA,OAAO,EAAI,UAAU,CAAG,EAAI,OAAO,CAAG,GAGxC,eAAe,IAAI,CAAC,IACtB,GAAM,EAAI,KAAK,CAAC,EAAG,GAAE,EAEnB,EAAQ,IAAI,EACd,IAAO,EAAQ,IAAI,AAAD,EAKhB,oBAAoB,IAAI,CAAC,IAAQ,EAAQ,UAAU,GAC9C,IAAK,MAAM,CAAC,EAAI,OAAO,CAAC,KAAM,OAAO,OAAO,CAAC,MAAO,OAAQ,KAE9D,CACT,C,+OCVO,IAAMC,oBAAN,MAAMA,2BAA4B,QAAe,IAAU,EAChE,OAAO,OAAS,GAAM,AAAC,AAEvB,QAAO,WAAa,CAClB,WAAY,CAAE,KAAMC,OAAQ,CAC9B,CAAE,AAEF,cAAc,CACZ,KAAK,GACL,IAAI,CAAC,UAAU,CAAG,EACpB,CAOA,eAAe,CAAgB,CAAE,CAC/B,GAAM,CAAE,KAAM,CAAI,CAAE,CAAG,EACvB,GAAI,CAAC,EACH,OAAO,IAAO,CAEhB,GAAM,CACJ,QAAM,CACN,OAAK,CACL,MAAI,CACJ,MAAI,CACJ,OAAK,CACL,KAAG,CACH,KAAG,CACH,QAAM,CACN,SAAO,CACPC,QAAAA,CAAO,CACR,CAAG,EACJ,GAAI,AAAW,YAAX,EACF,OAAO,IAAO,AAEX,KAAI,CAAC,UAAU,GAClB,IAAI,CAAC,UAAU,CAAG,EAClB,IAAI,CAAC,QAAQ,CAAG,GAElB,GAAM,CAAE,WAAS,CAAEC,gBAAAA,CAAe,CAAE,eAAa,CAAE,qBAAmB,CAAE,CACtE,GAAU,CAAC,EACP,EAASC,OAAO,WAAW,CAC/B,CACE,CAAC,0BAA2BD,EAAgB,CAC5C,CAAC,qBAAsB,EAAU,CACjC,CAAC,yBAA0B,GAAuBA,EAAgB,CAClE,CAAC,oBAAqB,GAAiB,EAAU,CAClD,CAAC,MAAM,CAAC,CAAC,CAAC,EAAG,EAAE,GAAK,EAAQ,IAG/B,MAAO,QAAI,CAAC;YACJ,EAAE,CAAC,kBAAkB,EAAE,IAAI,CAAC,UAAU,CAAG,aAAe,GAAG,CAAC,CAAC;;;QAGjE,EAAE,QAAI,IAAI,CAAC,aAAa,EAAE;;cAEpB,EAAE,QAAS,GAAQ;;;;;eAKlB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAO,GAAS;;;;gBAIhC,EAAE,IAAI,CAAC,OAAO,CAAC,GAAO;wBACd,EAAE,CAAC,EAAI;gBACf,EAAE,GAAO,GAAG;;;;;8CAKkB,EAAED,EAAQ;yCACf,EAAE,EAAK;iDACC,EAAE,EAAI;;;;;;cAMzC,CAAC,AACb,CACF,EAEAG,eAAe,MAAM,CAAC,wBAAyBL,oB,mHChG3C,EAAgC,kBAChC,EAA0B,IAA4B,KACtD,EAAqC,IAAgC,GAEzE,EAAwB,IAAI,CAAC,CAAC,EAAO,EAAE,CAAE,CAAC,ynGAAynG,EAAE,EAAmC,iBAAiB,EAAE,EAAmC,qrBAAqrB,CAAC,CAAE,GAAG,EAEz7H,MAAe,SAAI,CAAC,EAAwB,QAAQ,GAAG,C"}
|
|
1
|
+
{"version":3,"file":"8483.651683d5e2cbae52.js","sources":["webpack://@mdn/fred/./node_modules/css-loader/dist/runtime/getUrl.js","webpack://@mdn/fred/./components/placement-sidebar/element.js","webpack://@mdn/fred/./components/placement-sidebar/element.css"],"sourcesContent":["\"use strict\";\n\nmodule.exports = function (url, options) {\n if (!options) {\n options = {};\n }\n if (!url) {\n return url;\n }\n url = String(url.__esModule ? url.default : url);\n\n // If url is already wrapped in quotes, remove them\n if (/^['\"].*['\"]$/.test(url)) {\n url = url.slice(1, -1);\n }\n if (options.hash) {\n url += options.hash;\n }\n\n // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n if (/[\"'() \\t\\n]|(%20)/.test(url) || options.needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, \"\\\\n\"), \"\\\"\");\n }\n return url;\n};","import { LitElement, html, nothing } from \"lit\";\nimport { ref } from \"lit/directives/ref.js\";\nimport { styleMap } from \"lit/directives/style-map.js\";\n\nimport \"../placement-note/element.js\";\nimport \"../placement-no/element.js\";\n\nimport { PlacementMixin } from \"../placement/mixin.js\";\n\nimport styles from \"./element.css?lit\";\n\n/**\n * @import * as Placements from \"../placement/types.js\";\n */\n\nexport class MDNPlacementSidebar extends PlacementMixin(LitElement) {\n static styles = styles;\n\n static properties = {\n horizontal: { type: Boolean },\n };\n\n constructor() {\n super();\n this.horizontal = false;\n }\n\n /**\n *\n * @param {Placements.PlacementContextData} placementContext\n * @returns\n */\n renderComplete(placementContext) {\n const { side: data } = placementContext;\n if (!data) {\n return nothing;\n }\n const {\n status,\n click,\n view,\n copy,\n image,\n alt,\n cta,\n colors,\n version,\n heading,\n } = data;\n if (status !== \"success\") {\n return nothing;\n }\n if (!this._viewedUrl) {\n this._viewedUrl = view;\n this._version = version;\n }\n const { textColor, backgroundColor, textColorDark, backgroundColorDark } =\n colors || {};\n const styles = Object.fromEntries(\n [\n [\"--side-background-light\", backgroundColor],\n [\"--side-color-light\", textColor],\n [\"--side-background-dark\", backgroundColorDark || backgroundColor],\n [\"--side-color-dark\", textColorDark || textColor],\n ].filter(([_, v]) => Boolean(v)),\n );\n\n return html`<section\n class=${`sidebar-placement ${this.horizontal ? \"horizontal\" : \"\"}`}\n >\n <div\n ${ref(this._placementRef)}\n class=\"placement-container\"\n style=${styleMap(styles)}\n >\n <a\n class=\"placement-link\"\n data-glean=\"pong: pong->click side\"\n href=${this.clickLink(click, version)}\n target=\"_blank\"\n rel=\"sponsored noreferrer\"\n ><img\n src=${this.imgLink(image)}\n aria-hidden=${!alt}\n alt=${alt || \"\"}\n width=\"125px\"\n height=\"125px\"\n />\n <div class=\"placement-content\">\n <strong class=\"placement-heading\">${heading}</strong>\n <span class=\"placement-copy\">${copy}</span>\n <span class=\"placement-cta external\">${cta}</span>\n </div>\n </a>\n <mdn-placement-note></mdn-placement-note>\n </div>\n <mdn-placement-no></mdn-placement-no>\n </section>`;\n }\n}\n\ncustomElements.define(\"mdn-placement-sidebar\", MDNPlacementSidebar);\n","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\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"../icon/external-link.svg\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.sidebar-placement{display:flex;flex-direction:column;height:fit-content;margin:1rem 0;max-width:12rem;min-height:22rem}.sidebar-placement .placement-container{--side-background-light:#111;--side-color-light:#fff;--side-background-dark:#111;--side-color-dark:#fff;--csstools-light-dark-toggle--0:var(--csstools-color-scheme--light) var(--side-background-dark);--side-background:var(--csstools-light-dark-toggle--0,var(--side-background-light));--csstools-light-dark-toggle--1:var(--csstools-color-scheme--light) var(--side-color-dark);--side-color:var(--csstools-light-dark-toggle--1,var(--side-color-light));--border-radius:0.5rem;border:1px solid var(--color-border-primary);border-radius:var(--border-radius);margin:0;min-height:20rem;overflow:hidden;position:relative;width:11rem}@supports (color:light-dark(red,red)){.sidebar-placement .placement-container{--side-background:light-dark(var(--side-background-light),var(--side-background-dark));--side-color:light-dark(var(--side-color-light),var(--side-color-dark))}}@supports not (color:light-dark(tan,tan)){:is(.sidebar-placement .placement-container) *{--csstools-light-dark-toggle--0:var(--csstools-color-scheme--light) var(--side-background-dark);--side-background:var(--csstools-light-dark-toggle--0,var(--side-background-light));--csstools-light-dark-toggle--1:var(--csstools-color-scheme--light) var(--side-color-dark);--side-color:var(--csstools-light-dark-toggle--1,var(--side-color-light))}}:is(.sidebar-placement .placement-container):has(>.placement-link:focus-visible){outline:auto}:is(.sidebar-placement .placement-container) .placement-link{display:block;height:100%;padding:0;width:100%}:is(:is(.sidebar-placement .placement-container) .placement-link)>img{height:auto;width:100%}:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content{background:linear-gradient(to top,var(--side-background) 9rem,#0000 12rem,#0000);border-radius:var(--border-radius);color:var(--side-color);display:flex;flex-direction:column;gap:.25rem;height:100%;justify-content:end;line-height:1.25;position:absolute;top:0;width:100%}:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-heading{font-size:.8875rem;padding:0 1rem}:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-copy{font-size:.75rem;padding:0 1rem}:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-cta{--color:var(--side-color);--icon-primary:var(--color);background-color:#ffffff11;border:2px solid;border-radius:2rem;color:var(--color);font-size:.75rem;font-weight:600;margin:.5rem auto 1rem 1rem;padding:.5em 1em;transition:all .3s ease-in-out}:is(:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-cta):after{transition:all .3s ease-in-out}:is(:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-cta):hover{--color:var(--side-background);background-color:var(--side-color)}:is(:is(:is(:is(.sidebar-placement .placement-container) .placement-link)>.placement-content) .placement-cta):after{background-color:var(--color);content:\"\";display:inline-flex;height:.625rem;margin-left:.25rem;-webkit-mask-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});mask-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});-webkit-mask-size:cover;mask-size:cover;width:.625rem}.sidebar-placement mdn-placement-note{position:absolute;right:0;top:0}@media (min-width:31rem){.sidebar-placement.horizontal{align-self:flex-end;max-width:30rem;min-height:12rem}.sidebar-placement.horizontal .placement-container{height:10rem;min-height:0;width:25rem}:is(:is(.sidebar-placement.horizontal .placement-container) .placement-link)>img{height:100%;position:absolute;width:auto;z-index:1}:is(:is(.sidebar-placement.horizontal .placement-container) .placement-link) .placement-content{align-items:end;background:var(--side-background);flex-direction:column;height:100%;justify-content:end;left:0;padding-left:10rem;width:auto}}`, \"\"]);\n// Exports\nexport default css([___CSS_LOADER_EXPORT___.toString()]);\n"],"names":["String","MDNPlacementSidebar","Boolean","h","b","Object","customElements"],"mappings":"0FAEA,EAAO,OAAO,CAAG,SAAU,CAAG,CAAE,CAAO,SACjC,AAAC,GACH,GAAU,CAAC,GAER,IAGL,EAAMA,OAAO,EAAI,UAAU,CAAG,EAAI,OAAO,CAAG,GAGxC,eAAe,IAAI,CAAC,IACtB,GAAM,EAAI,KAAK,CAAC,EAAG,GAAE,EAEnB,EAAQ,IAAI,EACd,IAAO,EAAQ,IAAI,AAAD,EAKhB,oBAAoB,IAAI,CAAC,IAAQ,EAAQ,UAAU,GAC9C,IAAK,MAAM,CAAC,EAAI,OAAO,CAAC,KAAM,OAAO,OAAO,CAAC,MAAO,OAAQ,KAE9D,CACT,C,+OCVO,IAAMC,oBAAN,MAAMA,2BAA4B,QAAe,IAAU,EAChE,OAAO,OAAS,GAAM,AAAC,AAEvB,QAAO,WAAa,CAClB,WAAY,CAAE,KAAMC,OAAQ,CAC9B,CAAE,AAEF,cAAc,CACZ,KAAK,GACL,IAAI,CAAC,UAAU,CAAG,EACpB,CAOA,eAAe,CAAgB,CAAE,CAC/B,GAAM,CAAE,KAAM,CAAI,CAAE,CAAG,EACvB,GAAI,CAAC,EACH,OAAO,IAAO,CAEhB,GAAM,CACJ,QAAM,CACN,OAAK,CACL,MAAI,CACJ,MAAI,CACJ,OAAK,CACL,KAAG,CACH,KAAG,CACH,QAAM,CACN,SAAO,CACPC,QAAAA,CAAO,CACR,CAAG,EACJ,GAAI,AAAW,YAAX,EACF,OAAO,IAAO,AAEX,KAAI,CAAC,UAAU,GAClB,IAAI,CAAC,UAAU,CAAG,EAClB,IAAI,CAAC,QAAQ,CAAG,GAElB,GAAM,CAAE,WAAS,CAAEC,gBAAAA,CAAe,CAAE,eAAa,CAAE,qBAAmB,CAAE,CACtE,GAAU,CAAC,EACP,EAASC,OAAO,WAAW,CAC/B,CACE,CAAC,0BAA2BD,EAAgB,CAC5C,CAAC,qBAAsB,EAAU,CACjC,CAAC,yBAA0B,GAAuBA,EAAgB,CAClE,CAAC,oBAAqB,GAAiB,EAAU,CAClD,CAAC,MAAM,CAAC,CAAC,CAAC,EAAG,EAAE,GAAK,EAAQ,IAG/B,MAAO,QAAI,CAAC;YACJ,EAAE,CAAC,kBAAkB,EAAE,IAAI,CAAC,UAAU,CAAG,aAAe,GAAG,CAAC,CAAC;;;QAGjE,EAAE,QAAI,IAAI,CAAC,aAAa,EAAE;;cAEpB,EAAE,QAAS,GAAQ;;;;;eAKlB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAO,GAAS;;;;gBAIhC,EAAE,IAAI,CAAC,OAAO,CAAC,GAAO;wBACd,EAAE,CAAC,EAAI;gBACf,EAAE,GAAO,GAAG;;;;;8CAKkB,EAAED,EAAQ;yCACf,EAAE,EAAK;iDACC,EAAE,EAAI;;;;;;cAMzC,CAAC,AACb,CACF,EAEAG,eAAe,MAAM,CAAC,wBAAyBL,oB,mHChG3C,EAAgC,kBAChC,EAA0B,IAA4B,KACtD,EAAqC,IAAgC,GAEzE,EAAwB,IAAI,CAAC,CAAC,EAAO,EAAE,CAAE,CAAC,quGAAquG,EAAE,EAAmC,iBAAiB,EAAE,EAAmC,qrBAAqrB,CAAC,CAAE,GAAG,EAEriI,MAAe,SAAI,CAAC,EAAwB,QAAQ,GAAG,C"}
|
|
@@ -12,7 +12,7 @@ baseline-supported-in = Supported in { $browsers }
|
|
|
12
12
|
baseline-unsupported-in = Not widely supported in { $browsers }
|
|
13
13
|
baseline-supported-and-unsupported-in = Supported in { $supported }, but not widely supported in { $unsupported }
|
|
14
14
|
|
|
15
|
-
homepage-hero-title = Resources for
|
|
15
|
+
homepage-hero-title = Resources for Developers,<br> by Developers
|
|
16
16
|
homepage-hero-description = Documenting <a data-l10n-name="css">CSS</a>, <a data-l10n-name="html">HTML</a>, and <a data-l10n-name="js">JavaScript</a>, since 2005.
|
|
17
17
|
|
|
18
18
|
not-found-title = Page not found
|
|
@@ -154,4 +154,4 @@ obs-mdn = Das HTTP Observatory bietet wirksame Sicherheitseinblicke auf Grundlag
|
|
|
154
154
|
`,"zh-CN":`blog-toc-title = 在本文中
|
|
155
155
|
`,"zh-TW":`blog-toc-title = 在本文中
|
|
156
156
|
`},l=["i","strong","br","em"],c=["title","aria-label"];let Fluent=class Fluent{constructor(e="en-US",t=[]){this.locale=e,this.usBundle=Fluent.constructBundle(new o.Yk(e),[r]),t.length>0&&(this.bundle=Fluent.constructBundle(new o.Yk(e),[r,...t]))}static constructBundle(e,t=[]){for(let n of t){let t=e.addResource(new o.WZ(n),{allowOverrides:!0});t.length>0&&console.error(t)}return e}get(e,t,n,o){let a=this.getMessage(e,t,n);if(a)return Fluent.sanitize(a,o)}static sanitize(e,t={}){let n={};for(let e of Object.values(t))n[e.tag]=[...Object.keys(e).filter(e=>"tag"!==e),...c];let o=[...Object.values(t).map(e=>e.tag),...l],r=!0,s=a(e,{allowedAttributes:n,allowedTags:o,allowedSchemes:["http","https","mailto"],filter(e){let n=e.attrs["data-l10n-name"];if(n)for(let[o,a]of Object.entries(t[n]||{}))e.attrs[o]=a;return!!(l.includes(e.tag)||n&&Object.keys(t).includes(n)&&t[n]?.tag===e.tag)&&(r=!1,!0)}},!0);return r?s:(0,i.A)(s)}getMessage(e,t,n={},o=this.bundle,a=!1){let i,r=o?o.getMessage(e):void 0;if("qa"===this.locale)return`[${e}${t?`.${t}`:""}]`;if(!r){if(a)return;return this.getMessage(e,t,n,this.usBundle,!0)}if(t){if(!(i=r.attributes[t])){if(a)return;return this.getMessage(e,t,n,this.usBundle,!0)}}else r.value&&(i=r.value);if(!i||!o)return"";let s=[],l=o?.formatPattern(i,n,s);return s.length>0&&console.error(s),l}};let d=new Map;function u(e){if(e){if(!d.has(e)){let t=s[e],n=new Fluent(e,t?[t]:void 0);d.set(e,n)}return d.get(e)}}let p=e=>class extends e{constructor(...e){super(...e);let t=function(){let e=globalThis.__MDNServerContext?.getStore(),t=globalThis.__MDNClientContext;return e||t}();this.locale=t.locale,this.l10n=function(e){function t(t,n){if("string"==typeof t){let n=u(e)?.get(t),o=`[${t}]`,a=e=>{let t=e[0];return n||t||o};return a.toString=()=>"string"==typeof n&&n||o,a}return t[0]||""}return t.raw=function({id:t,attr:n,args:o,elements:a}){let i=u(e);return i?i.get(t,n,o,a):`[${t}]`},t}(this.locale)}}}};
|
|
157
|
-
//# sourceMappingURL=9565.
|
|
157
|
+
//# sourceMappingURL=9565.faafbc9f4c1268c1.js.map
|