@mdn/fred 2.6.1 → 2.6.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +48 -0
- package/components/compat-table/element.js +1 -6
- package/components/content-section/server.css +16 -0
- package/l10n/fluent.js +35 -5
- package/l10n/locales/de.ftl +17 -17
- package/l10n/locales/en-US.ftl +15 -15
- package/l10n/locales/fr.ftl +17 -17
- package/l10n/locales/zh-CN.ftl +17 -17
- package/l10n/template.ftl +17 -17
- package/out/service-worker.js +1 -1
- package/out/static/client/{1111.53dba753dc3eb961.js → 1111.c87a899e1dfa66e2.js} +3 -3
- package/out/static/client/{1111.53dba753dc3eb961.js.map → 1111.c87a899e1dfa66e2.js.map} +1 -1
- package/out/static/client/{1550.c301ea407e875fce.js → 1550.28c1604f8ddeb85d.js} +19 -19
- package/out/static/client/1550.28c1604f8ddeb85d.js.map +1 -0
- package/out/static/client/{6002.a03e92074fe12303.js → 6002.b8ee179b783a6ed9.js} +7 -8
- package/out/static/client/6002.b8ee179b783a6ed9.js.map +1 -0
- package/out/static/client/6216.96bf25a9941b1705.js +2 -0
- package/out/static/client/6216.96bf25a9941b1705.js.map +1 -0
- package/out/static/client/{6333.530138f4b30df5a7.js → 6333.d2c9af5b65988046.js} +18 -18
- package/out/static/client/6333.d2c9af5b65988046.js.map +1 -0
- package/out/static/client/6703.19836388dfba3a26.js +3 -0
- package/out/static/client/6703.19836388dfba3a26.js.map +1 -0
- package/out/static/client/{9456.a17794342ff9086a.js → 9456.c664136cffa5c45c.js} +18 -18
- package/out/static/client/9456.c664136cffa5c45c.js.map +1 -0
- package/out/static/client/{index.1aa902f2877f6169.js → index.8d9d3fc7007ac6c9.js} +24 -24
- package/out/static/client/index.8d9d3fc7007ac6c9.js.map +1 -0
- package/out/static/client/{runtime.dc0d40fc704cab38.js → runtime.b626b01b6203a207.js} +2 -2
- package/out/static/client/{runtime.dc0d40fc704cab38.js.map → runtime.b626b01b6203a207.js.map} +1 -1
- package/out/static/client/stats.json +197 -197
- package/out/static/client/{styles-content-section.447b2154ef6d091d.css → styles-content-section.64d82cff4db3bf61.css} +2 -2
- package/out/static/client/styles-content-section.64d82cff4db3bf61.css.map +1 -0
- package/out/static/client/{styles-global.64aa0c760d2688b4.js → styles-global.bbe62c66bfdbcd4d.js} +1 -1
- package/out/static/client/styles-global.e9f66980fd6d9827.css +2 -0
- package/out/static/client/styles-global.e9f66980fd6d9827.css.map +1 -0
- package/out/static/legacy/{1689.9711944d8ca293fe.js → 1689.c0b991fb10a9e7cb.js} +3 -3
- package/out/static/legacy/{1689.9711944d8ca293fe.js.map → 1689.c0b991fb10a9e7cb.js.map} +1 -1
- package/out/static/legacy/{1745.98ac3d247214830b.js → 1745.82a1f10c1503c733.js} +3 -3
- package/out/static/legacy/{1745.98ac3d247214830b.js.map → 1745.82a1f10c1503c733.js.map} +1 -1
- package/out/static/legacy/{6186.d28521fe744f5fce.js → 6186.b6bdcd96fbe2e1b9.js} +3 -3
- package/out/static/legacy/{6186.d28521fe744f5fce.js.map → 6186.b6bdcd96fbe2e1b9.js.map} +1 -1
- package/out/static/legacy/6753.b8ce73a4530c7c97.js +27 -0
- package/out/static/legacy/6753.b8ce73a4530c7c97.js.map +1 -0
- package/out/static/legacy/asset-manifest.json +13 -13
- package/out/static/legacy/{index.9dc3c2419a5a39a3.js → index.3434d57e71ba6934.js} +4 -4
- package/out/static/legacy/{index.9dc3c2419a5a39a3.js.map → index.3434d57e71ba6934.js.map} +1 -1
- package/out/static/legacy/{index.e64d272f9892581a.html → index.c93dd3065fbda85c.html} +1 -1
- package/out/static/legacy/stats.json +10 -10
- package/out/static/legacy/{yari.c83cdb7dea1873d5.js → yari.04fc2a81492d16ef.js} +4 -4
- package/out/static/legacy/{yari.c83cdb7dea1873d5.js.map → yari.04fc2a81492d16ef.js.map} +1 -1
- package/out/static/ssr/1550.js +18 -18
- package/out/static/ssr/1550.js.map +1 -1
- package/out/static/ssr/6333.js +17 -17
- package/out/static/ssr/6333.js.map +1 -1
- package/out/static/ssr/9456.js +17 -17
- package/out/static/ssr/9456.js.map +1 -1
- package/out/static/ssr/index.js +31 -32
- package/out/static/ssr/index.js.map +1 -1
- package/out/static/ssr/stats.json +4 -4
- package/package.json +18 -18
- package/scripts/tests.js +90 -113
- package/test/README.md +7 -9
- package/out/static/client/1550.c301ea407e875fce.js.map +0 -1
- package/out/static/client/6002.a03e92074fe12303.js.map +0 -1
- package/out/static/client/6216.78a5cbef9a158ef8.js +0 -2
- package/out/static/client/6216.78a5cbef9a158ef8.js.map +0 -1
- package/out/static/client/6333.530138f4b30df5a7.js.map +0 -1
- package/out/static/client/6703.145548dea2dbb16d.js +0 -3
- package/out/static/client/6703.145548dea2dbb16d.js.map +0 -1
- package/out/static/client/9456.a17794342ff9086a.js.map +0 -1
- package/out/static/client/index.1aa902f2877f6169.js.map +0 -1
- package/out/static/client/styles-content-section.447b2154ef6d091d.css.map +0 -1
- package/out/static/client/styles-global.653c021fe5dca598.css +0 -2
- package/out/static/client/styles-global.653c021fe5dca598.css.map +0 -1
- package/out/static/legacy/6753.c3e5bc5b6a088f28.js +0 -27
- package/out/static/legacy/6753.c3e5bc5b6a088f28.js.map +0 -1
- /package/out/static/client/{1111.53dba753dc3eb961.js.LICENSE.txt → 1111.c87a899e1dfa66e2.js.LICENSE.txt} +0 -0
- /package/out/static/client/{6703.145548dea2dbb16d.js.LICENSE.txt → 6703.19836388dfba3a26.js.LICENSE.txt} +0 -0
- /package/out/static/client/{index.1aa902f2877f6169.js.LICENSE.txt → index.8d9d3fc7007ac6c9.js.LICENSE.txt} +0 -0
- /package/out/static/legacy/{1689.9711944d8ca293fe.js.LICENSE.txt → 1689.c0b991fb10a9e7cb.js.LICENSE.txt} +0 -0
- /package/out/static/legacy/{1745.98ac3d247214830b.js.LICENSE.txt → 1745.82a1f10c1503c733.js.LICENSE.txt} +0 -0
- /package/out/static/legacy/{6186.d28521fe744f5fce.js.LICENSE.txt → 6186.b6bdcd96fbe2e1b9.js.LICENSE.txt} +0 -0
- /package/out/static/legacy/{6753.c3e5bc5b6a088f28.js.LICENSE.txt → 6753.b8ce73a4530c7c97.js.LICENSE.txt} +0 -0
- /package/out/static/legacy/{index.9dc3c2419a5a39a3.js.LICENSE.txt → index.3434d57e71ba6934.js.LICENSE.txt} +0 -0
- /package/out/static/legacy/{yari.c83cdb7dea1873d5.js.LICENSE.txt → yari.04fc2a81492d16ef.js.LICENSE.txt} +0 -0
|
@@ -9,11 +9,11 @@
|
|
|
9
9
|
"assets": [
|
|
10
10
|
{
|
|
11
11
|
"name": "index.js",
|
|
12
|
-
"size":
|
|
12
|
+
"size": 1435173
|
|
13
13
|
}
|
|
14
14
|
],
|
|
15
15
|
"filteredAssets": 0,
|
|
16
|
-
"assetsSize":
|
|
16
|
+
"assetsSize": 1435173,
|
|
17
17
|
"auxiliaryAssets": [
|
|
18
18
|
{
|
|
19
19
|
"name": "desktop-saving-page.bbb8eedefb3e848f.png",
|
|
@@ -317,7 +317,7 @@
|
|
|
317
317
|
},
|
|
318
318
|
{
|
|
319
319
|
"name": "index.js.map",
|
|
320
|
-
"size":
|
|
320
|
+
"size": 4307814
|
|
321
321
|
},
|
|
322
322
|
{
|
|
323
323
|
"name": "deno.aed70d20abbf1067.svg",
|
|
@@ -512,7 +512,7 @@
|
|
|
512
512
|
"size": 135602
|
|
513
513
|
}
|
|
514
514
|
],
|
|
515
|
-
"auxiliaryAssetsSize":
|
|
515
|
+
"auxiliaryAssetsSize": 8770815,
|
|
516
516
|
"children": {},
|
|
517
517
|
"childAssets": {}
|
|
518
518
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mdn/fred",
|
|
3
|
-
"version": "2.6.
|
|
3
|
+
"version": "2.6.4",
|
|
4
4
|
"repository": "https://github.com/mdn/fred",
|
|
5
5
|
"license": "MPL-2.0",
|
|
6
6
|
"author": "MDN Web Docs",
|
|
@@ -42,10 +42,10 @@
|
|
|
42
42
|
"@codemirror/state": "^6.6.0",
|
|
43
43
|
"@codemirror/theme-one-dark": "^6.1.2",
|
|
44
44
|
"@fluent/bundle": "^0.19.0",
|
|
45
|
-
"@lit-labs/ssr": "^4.
|
|
45
|
+
"@lit-labs/ssr": "^4.1.0",
|
|
46
46
|
"@lit-labs/ssr-client": "^1.1.8",
|
|
47
47
|
"@lit/task": "^1.0.3",
|
|
48
|
-
"@mdn/rari": "0.2.
|
|
48
|
+
"@mdn/rari": "0.2.25",
|
|
49
49
|
"@mdn/watify": "^1.1.9",
|
|
50
50
|
"@mozilla/glean": "^5.0.8",
|
|
51
51
|
"codemirror": "^6.0.1",
|
|
@@ -57,8 +57,8 @@
|
|
|
57
57
|
"he": "^1.2.0",
|
|
58
58
|
"http-proxy-middleware": "^3.0.3",
|
|
59
59
|
"insane": "^2.6.2",
|
|
60
|
-
"lit": "^3.3.
|
|
61
|
-
"lit-html": "^3.3.
|
|
60
|
+
"lit": "^3.3.3",
|
|
61
|
+
"lit-html": "^3.3.3",
|
|
62
62
|
"open-editor": "^6.0.0",
|
|
63
63
|
"prism-svelte": "^0.5.0",
|
|
64
64
|
"prismjs": "^1.29.0",
|
|
@@ -69,14 +69,14 @@
|
|
|
69
69
|
"@codemirror/commands": "^6.10.3",
|
|
70
70
|
"@codemirror/language": "^6.12.3",
|
|
71
71
|
"@codemirror/lint": "^6.9.6",
|
|
72
|
-
"@codemirror/view": "^6.
|
|
72
|
+
"@codemirror/view": "^6.43.0",
|
|
73
73
|
"@csstools/postcss-global-data": "^4.0.0",
|
|
74
|
-
"@eslint/compat": "^2.0
|
|
74
|
+
"@eslint/compat": "^2.1.0",
|
|
75
75
|
"@eslint/js": "^9.39.4",
|
|
76
76
|
"@fluent/syntax": "^0.19.0",
|
|
77
77
|
"@jackolope/lit-analyzer": "^3.2.0",
|
|
78
78
|
"@jackolope/ts-lit-plugin": "^3.1.6",
|
|
79
|
-
"@mdn/browser-compat-data": "^7.3.
|
|
79
|
+
"@mdn/browser-compat-data": "^7.3.16",
|
|
80
80
|
"@mdn/yari": "^5.1.2",
|
|
81
81
|
"@rsdoctor/rspack-plugin": "^1.5.0",
|
|
82
82
|
"@rspack/cli": "^1.7.11",
|
|
@@ -101,35 +101,35 @@
|
|
|
101
101
|
"css-loader": "^7.1.4",
|
|
102
102
|
"css-minimizer-webpack-plugin": "^8.0.0",
|
|
103
103
|
"dexie": "^4.4.2",
|
|
104
|
-
"downshift": "^9.3.
|
|
104
|
+
"downshift": "^9.3.3",
|
|
105
105
|
"eslint": "^9.39.4",
|
|
106
106
|
"eslint-config-prettier": "^10.1.8",
|
|
107
107
|
"eslint-plugin-import": "^2.31.0",
|
|
108
|
-
"eslint-plugin-jsdoc": "^
|
|
109
|
-
"eslint-plugin-lit": "^2.
|
|
108
|
+
"eslint-plugin-jsdoc": "^63.0.0",
|
|
109
|
+
"eslint-plugin-lit": "^2.3.1",
|
|
110
110
|
"eslint-plugin-n": "^18.0.1",
|
|
111
111
|
"eslint-plugin-unicorn": "^64.0.0",
|
|
112
112
|
"eslint-plugin-wc": "^3.1.0",
|
|
113
113
|
"globals": "^17.6.0",
|
|
114
|
-
"lefthook": "^2.1.
|
|
115
|
-
"postcss": "^8.5.
|
|
114
|
+
"lefthook": "^2.1.8",
|
|
115
|
+
"postcss": "^8.5.15",
|
|
116
116
|
"postcss-custom-media": "^12.0.1",
|
|
117
117
|
"postcss-loader": "^8.2.1",
|
|
118
118
|
"postcss-mixins": "^12.1.2",
|
|
119
|
-
"postcss-preset-env": "^11.
|
|
119
|
+
"postcss-preset-env": "^11.3.0",
|
|
120
120
|
"prettier": "^3.8.3",
|
|
121
121
|
"resolve-url-loader": "^5.0.0",
|
|
122
122
|
"rspack-manifest-plugin": "^5.2.1",
|
|
123
|
-
"sass-embedded": "^1.
|
|
124
|
-
"sass-loader": "^16.0.
|
|
123
|
+
"sass-embedded": "^1.100.0",
|
|
124
|
+
"sass-loader": "^16.0.8",
|
|
125
125
|
"spdy": "^4.0.2",
|
|
126
|
-
"stylelint": "^17.
|
|
126
|
+
"stylelint": "^17.12.0",
|
|
127
127
|
"stylelint-config-recess-order": "^7.7.0",
|
|
128
128
|
"stylelint-config-standard": "^40.0.0",
|
|
129
129
|
"svgo-loader": "^5.0.0",
|
|
130
130
|
"ts-morph": "^28.0.0",
|
|
131
131
|
"typescript": "^6.0.3",
|
|
132
|
-
"typescript-eslint": "^8.59.
|
|
132
|
+
"typescript-eslint": "^8.59.4",
|
|
133
133
|
"webpack-dev-middleware": "^8.0.3",
|
|
134
134
|
"webpack-hot-middleware": "^2.26.1",
|
|
135
135
|
"webpack-merge": "^6.0.1",
|
package/scripts/tests.js
CHANGED
|
@@ -1,126 +1,103 @@
|
|
|
1
|
+
import { execSync } from "node:child_process";
|
|
2
|
+
|
|
1
3
|
import { rariBin } from "@mdn/rari";
|
|
2
4
|
import { concurrently } from "concurrently";
|
|
3
5
|
import yargs from "yargs";
|
|
4
6
|
import { hideBin } from "yargs/helpers";
|
|
5
7
|
|
|
6
|
-
|
|
7
|
-
.
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
describe: "run unit tests",
|
|
14
|
-
type: "boolean",
|
|
15
|
-
default: true,
|
|
16
|
-
})
|
|
17
|
-
.option("e2e", {
|
|
18
|
-
describe: "run e2e tests",
|
|
19
|
-
type: "boolean",
|
|
20
|
-
default: false,
|
|
21
|
-
})
|
|
22
|
-
.option("rari", {
|
|
23
|
-
describe: "run rari",
|
|
24
|
-
type: "boolean",
|
|
25
|
-
default: false,
|
|
26
|
-
})
|
|
27
|
-
.option("fred", {
|
|
28
|
-
describe: "run fred in this mode",
|
|
29
|
-
type: "string",
|
|
30
|
-
choices: ["preview", "dev"],
|
|
31
|
-
})
|
|
32
|
-
.option("content", {
|
|
33
|
-
describe: "run fred and rari from this content repo",
|
|
34
|
-
type: "string",
|
|
8
|
+
await yargs(hideBin(process.argv))
|
|
9
|
+
.command("lint", "run linters", {}, () => {
|
|
10
|
+
try {
|
|
11
|
+
execSync(`npx lefthook run --force pre-push`, { stdio: "inherit" });
|
|
12
|
+
} catch {
|
|
13
|
+
process.exitCode = 1;
|
|
14
|
+
}
|
|
35
15
|
})
|
|
36
|
-
.
|
|
37
|
-
|
|
38
|
-
|
|
16
|
+
.command("unit", "run unit tests", {}, () => {
|
|
17
|
+
try {
|
|
18
|
+
execSync(`node --test "**/*.test.js"`, { stdio: "inherit" });
|
|
19
|
+
} catch {
|
|
20
|
+
process.exitCode = 1;
|
|
39
21
|
}
|
|
40
|
-
return true;
|
|
41
22
|
})
|
|
42
|
-
.
|
|
23
|
+
.command(
|
|
24
|
+
"e2e",
|
|
25
|
+
"run e2e tests",
|
|
26
|
+
(yargs) =>
|
|
27
|
+
yargs
|
|
28
|
+
.option("rari", {
|
|
29
|
+
describe: "run rari",
|
|
30
|
+
type: "boolean",
|
|
31
|
+
default: false,
|
|
32
|
+
})
|
|
33
|
+
.option("fred", {
|
|
34
|
+
describe: "run fred in this mode",
|
|
35
|
+
type: "string",
|
|
36
|
+
choices: ["preview", "dev"],
|
|
37
|
+
})
|
|
38
|
+
.option("content", {
|
|
39
|
+
describe: "run fred and rari from this content repo",
|
|
40
|
+
type: "string",
|
|
41
|
+
})
|
|
42
|
+
.check((argv) => {
|
|
43
|
+
if (argv.content && (argv.rari || argv.fred)) {
|
|
44
|
+
throw new Error("--content cannot be used with --rari or --fred");
|
|
45
|
+
}
|
|
46
|
+
return true;
|
|
47
|
+
}),
|
|
48
|
+
async (argv) => {
|
|
49
|
+
/** @type {import("concurrently").ConcurrentlyCommandInput[]} */
|
|
50
|
+
const jobs = [
|
|
51
|
+
{
|
|
52
|
+
command: `npx wdio run wdio.conf.js`,
|
|
53
|
+
name: "wdio",
|
|
54
|
+
prefixColor: "green",
|
|
55
|
+
},
|
|
56
|
+
];
|
|
43
57
|
|
|
44
|
-
|
|
58
|
+
if (argv.content) {
|
|
59
|
+
jobs.push({
|
|
60
|
+
cwd: argv.content,
|
|
61
|
+
command: `npm start`,
|
|
62
|
+
name: "content",
|
|
63
|
+
prefixColor: "blue",
|
|
64
|
+
});
|
|
65
|
+
}
|
|
45
66
|
|
|
46
|
-
if (argv.
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
},
|
|
54
|
-
]).result,
|
|
55
|
-
);
|
|
56
|
-
}
|
|
67
|
+
if (argv.fred === "preview") {
|
|
68
|
+
jobs.push({
|
|
69
|
+
command: `npm run preview`,
|
|
70
|
+
name: "server",
|
|
71
|
+
prefixColor: "red",
|
|
72
|
+
});
|
|
73
|
+
}
|
|
57
74
|
|
|
58
|
-
if (argv.
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
},
|
|
66
|
-
]).result,
|
|
67
|
-
);
|
|
68
|
-
}
|
|
75
|
+
if (argv.fred === "dev") {
|
|
76
|
+
jobs.push({
|
|
77
|
+
command: `npm run dev`,
|
|
78
|
+
name: "server",
|
|
79
|
+
prefixColor: "red",
|
|
80
|
+
});
|
|
81
|
+
}
|
|
69
82
|
|
|
70
|
-
if (argv.
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
},
|
|
78
|
-
];
|
|
79
|
-
|
|
80
|
-
if (argv.content) {
|
|
81
|
-
jobs.push({
|
|
82
|
-
cwd: argv.content,
|
|
83
|
-
command: `npm start`,
|
|
84
|
-
name: "content",
|
|
85
|
-
prefixColor: "blue",
|
|
86
|
-
});
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
if (argv.fred === "preview") {
|
|
90
|
-
jobs.push({
|
|
91
|
-
command: `npm run preview`,
|
|
92
|
-
name: "server",
|
|
93
|
-
prefixColor: "red",
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
if (argv.fred === "dev") {
|
|
98
|
-
jobs.push({
|
|
99
|
-
command: `npm run dev`,
|
|
100
|
-
name: "server",
|
|
101
|
-
prefixColor: "red",
|
|
102
|
-
});
|
|
103
|
-
}
|
|
83
|
+
if (argv.rari) {
|
|
84
|
+
jobs.push({
|
|
85
|
+
command: `"${rariBin}" serve`,
|
|
86
|
+
name: "rari",
|
|
87
|
+
prefixColor: "blue",
|
|
88
|
+
});
|
|
89
|
+
}
|
|
104
90
|
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
}).result,
|
|
119
|
-
);
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
try {
|
|
123
|
-
await Promise.all(runs);
|
|
124
|
-
} catch {
|
|
125
|
-
process.exitCode = 1;
|
|
126
|
-
}
|
|
91
|
+
try {
|
|
92
|
+
await concurrently(jobs, {
|
|
93
|
+
killOthersOn: ["failure", "success"],
|
|
94
|
+
restartTries: 0,
|
|
95
|
+
successCondition: "first",
|
|
96
|
+
}).result;
|
|
97
|
+
} catch {
|
|
98
|
+
process.exitCode = 1;
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
)
|
|
102
|
+
.demandCommand()
|
|
103
|
+
.parseAsync();
|
package/test/README.md
CHANGED
|
@@ -2,28 +2,26 @@
|
|
|
2
2
|
|
|
3
3
|
## Running tests
|
|
4
4
|
|
|
5
|
-
Tests can be run through the test running script: `npm test
|
|
5
|
+
Tests can be run through the test running script: `npm test -- <command>`.
|
|
6
6
|
|
|
7
|
-
View
|
|
8
|
-
|
|
9
|
-
Options are default on or off depending on whether they need a specific environment setup to run. E.g. the e2e tests don't run by default because you need to run a rari and fred server.
|
|
7
|
+
View available commands with: `npm test -- --help`.
|
|
10
8
|
|
|
11
9
|
### Examples
|
|
12
10
|
|
|
13
|
-
To run
|
|
11
|
+
To run unit tests:
|
|
14
12
|
|
|
15
13
|
```
|
|
16
|
-
npm test --
|
|
14
|
+
npm test -- unit
|
|
17
15
|
```
|
|
18
16
|
|
|
19
17
|
To run e2e tests against already running fred and rari servers:
|
|
20
18
|
|
|
21
19
|
```
|
|
22
|
-
npm test --
|
|
20
|
+
npm test -- e2e
|
|
23
21
|
```
|
|
24
22
|
|
|
25
|
-
To
|
|
23
|
+
To run e2e tests and bring up a fred dev server and rari server:
|
|
26
24
|
|
|
27
25
|
```
|
|
28
|
-
npm test --
|
|
26
|
+
npm test -- e2e --fred dev --rari
|
|
29
27
|
```
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"1550.c301ea407e875fce.js","sources":["webpack://@mdn/fred/./l10n/locales/fr.ftl"],"sourcesContent":["export default `article-footer-last-modified = Cette page a été modifiée le <time data-l10n-name=\"date\">{ \\$date }</time> par les <a data-l10n-name=\"contributors\">contributeur·ice·s du MDN</a>.\narticle-footer-source-title = Dossier : { \\$folder } (Ouvre un onglet)\nbaseline-asterisk = Certaines parties de cette fonctionnalité peuvent bénéficier de prise en charge variables.\nbaseline-high-extra = Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis { \\$date }.\nbaseline-low-extra = Depuis { \\$date }, cette fonctionnalité fonctionne sur les appareils et les versions de navigateur les plus récents. Elle peut ne pas fonctionner sur les appareils ou navigateurs plus anciens.\nbaseline-not-extra = Cette fonctionnalité n'est pas Compatible car elle ne fonctionne pas dans certains des navigateurs les plus utilisés.\nbaseline-supported-in = Pris en charge dans { \\$browsers }\nbaseline-unsupported-in = Pas complètement pris en charge dans { \\$browsers }\nbaseline-supported-and-unsupported-in = Pris en charge dans { \\$supported }, mais pas complètement pris en charge dans { \\$unsupported }\nhomepage-hero-title = Des ressources pour les Développeuses et Développeurs,<br> par des Développeuses et Développeurs\nhomepage-hero-description = Documenter le <a data-l10n-name=\"css\">CSS</a>, le <a data-l10n-name=\"html\">HTML</a> et le <a data-l10n-name=\"js\">JavaScript</a>, depuis 2005.\nnot-found-title = Page non trouvée\nnot-found-description = Désolé, la page <code data-l10n-name=\"url\">{ \\$url }</code> n'a pas été trouvée.\nnot-found-fallback-english = <strong data-l10n-name=\"strong\">Bonne nouvelle :</strong> La page que vous cherchez existe en <em data-l10n-name=\"em\">Anglais</em>.\nnot-found-fallback-search = La page que vous avez demandée n'existe pas, mais vous pouvez essayer une recherche sur le site pour :\nnot-found-back = Retour à la page d'accueil\nfooter-mofo = Visitez la société mère à but non lucratif de <a data-l10n-name=\"moco\">Mozilla Corporation</a>, la <a data-l10n-name=\"mofo\">Fondation Mozilla</a>.\nfooter-copyright = Certaines parties de ce contenu sont protégées par le droit d'auteur ©1998—{ \\$year } des contributeurs individuels de mozilla.org. Contenu disponible sous <a data-l10n-name=\"cc\">une licence Creative Commons</a>.\nsearch-modal-site-search = Rechercher sur le site <em>{ \\$query }</em>\nsite-search-search-stats = { \\$results } documents trouvés.\nsite-search-suggestion-matches =\n { \\$relation ->\n [gt]\n plus que { \\$matches ->\n [one] { \\$matches } trouvé\n *[other] { \\$matches } trouvés\n }\n *[eq]\n { \\$matches ->\n [one] { \\$matches } trouvé\n *[other] { \\$matches } trouvés\n }\n }\nblog-time-to-read =\n { \\$minutes ->\n [one] { \\$minutes } minute de lecture\n *[other] { \\$minutes } minutes de lecture\n }\n-brand-name-obs = HTTP Observatory\nobs-report = Rapport\nobs-title = { -brand-name-obs }\nobs-landing-intro = Lancé en 2016, { -brand-name-obs } améliore la sécurité du Web en analysant la conformité aux meilleures pratiques en matière de sécurité. Il a fourni des informations à plus de 6,9 millions de sites web grâce à 47 millions d'analyses.\nobs-assessment = Développé par Mozilla, { -brand-name-obs } effectue une évaluation approfondie des en-têtes HTTP d'un site et d'autres configurations de sécurité clés.\nobs-scanning = Son processus d'analyse automatisé fournit aux développeur·euse·s et aux administrateur·ice·s de sites web des commentaires détaillés et exploitables, axés sur l'identification et la résolution des failles de sécurité potentielles.\nobs-security = Cet outil aide les développeur·euse·s et les administrateur·ice·s de sites web à renforcer la sécurité de leurs sites contre les menaces courantes dans un environnement numérique en constante évolution.\nobs-mdn = { -brand-name-obs } fournit des informations efficaces en matière de sécurité, guidées par l'expertise et l'engagement de Mozilla en faveur d'un Internet plus sûr et plus sécurisé, et basées sur des tendances et des directives bien établies.\ncompat-browser-version-date = { \\$browser } { \\$version } — Date de sortie : { \\$date }\ncompat-browser-version-released = Date de sortie : { \\$date }\ncompat-link-source-title = Fichier : { \\$filename }\ncompat-support-prefix = Implémenté avec le préfixe vendeur : { \\$prefix }\ncompat-support-altname = Nom alternatif : { \\$altname }\ncompat-support-removed = Supprimé en version { \\$version } et supérieure\ncompat-support-see-impl-url = Voir <a data-l10n-name=\"impl_url\">{ \\$label }</a>\ncompat-support-flags =\n { NUMBER(\\$has_added) ->\n [one] De la version { \\$version_added }\n *[other] { \"\" }\n }{ \\$has_last ->\n [one]\n { NUMBER(\\$has_added) ->\n *[zero] Jusqu'à la version { \\$versionLast }, les utilisateur·ice·s\n [one] { \" \" }jusqu'à { \\$versionLast }, les utilisateur·ice·s\n }\n *[zero]\n { NUMBER(\\$has_added) ->\n *[zero] Les utilisateur·ice·s\n [one] {\" \"}les utilisateur·ice·s\n }\n }\n { \" \" }doivent explicitement définir\n { \\$flag_type ->\n *[preference] la préférence\n [runtime_flag] l'indicateur d'exécution\n }\n { \" \" }<code data-l10n-name=\"name\">{ \\$flag_name }</code>\n { NUMBER(\\$has_value) ->\n [one] { \" \" }à <code data-l10n-name=\"value\">{ \\$flag_value }</code>\n *[other] { \"\" }\n }{\".\"}\n { NUMBER(\\$has_pref_url) ->\n [one]\n { \\$flag_type ->\n [preference] Pour changer vos préférences sur le navigateur { \\$browser_name }, visitez { \\$browser_pref_url }.\n *[other] { \"\" }\n }\n *[other] { \"\" }\n }\ncompat-legend-yes = { compat-support-full }\ncompat-legend-partial = { compat-support-partial }\ncompat-legend-preview = En cours de développement. Pris en charge dans une pré-version.\ncompat-legend-no = { compat-support-no }\ncompat-legend-unknown = Compatibilité inconnue\ncompat-legend-experimental = { compat-experimental }. Attendez-vous à ce que les comportements changent à l'avenir.\ncompat-legend-nonstandard = { compat-nonstandard }. Vérifiez la compatibilité entre les navigateurs avant utilisation.\ncompat-legend-deprecated = { compat-deprecated }. Ne pas utiliser dans les nouveaux sites web.\ncompat-legend-footnote = Voir les notes de mise en application.\ncompat-legend-disabled = L'utilisateur·ice doit explicitement activer cette fonctionnalité.\ncompat-legend-altname = Utilise un nom hors standard.\ncompat-legend-prefix = Nécessite un préfixe vendeur ou un nom différent pour être utilisé.\ncompat-legend-more = Contient davantage d'informations sur la compatibilité.\nplacement-note = Publicité\nplacement-no = Vous ne voulez pas voir de publicités ?\npagination-next = Page suivante\npagination-prev = Page précédente\npagination-current = Page actuelle\npagination-goto = Aller à la page { \\$page }\nlogout = Se déconnecter\nlogin = Se connecter\nexample-play-button-label = Exécuter\nexample-play-button-title = Exécutez l'exemple dans MDN Playground (ouvre un nouvel onglet)\nwriter-reload-polling = Analyse toutes les { \\$seconds }s\na11y-menu-skip-to-main-content = Passer au contenu principal\na11y-menu-skip-to-search = Passer à la recherche\narticle-footer-title = Aider à améliorer MDN\narticle-footer-learn-how-to-contribute = Apprendre à contribuer\narticle-footer-view-this-page-on-github = Voir cette page sur GitHub\narticle-footer-this-will-take-you-to-github-to = Cela vous mènera à GitHub pour créer un nouveau problème.\narticle-footer-report-a-problem-with-this-conte = Signaler un problème avec ce contenu\nbaseline-indicator-baseline-cross = Croix de Baseline\nbaseline-indicator-baseline-check = Coche de Baseline\nbaseline-indicator-limited-availability = Disponibilité limitée\nbaseline-indicator-baseline = Baseline\nbaseline-indicator-widely-available = Large disponibilité\nbaseline-indicator-newly-available = Nouvellement disponible\nbaseline-indicator-check = coche\nbaseline-indicator-cross = croix\nbaseline-indicator-learn-more = En savoir plus\nbaseline-indicator-see-full-compatibility = Voir la compatibilité complète\nbaseline-indicator-report-feedback = Faire un retour\nblog-previous = Article précédent\nblog-next = Article suivant\nblog-index-blog-it-better = Bloguez mieux\nreference-toc-header = Dans cet article\nblog-post-not-found = Article de blog introuvable.\ncollection-save-button-save-in-collection = Enregistrer dans la collection\ncollection-save-button-remove = Supprimer\ncollection-save-button-save = Enregistrer\ncollection-save-button-add-to-collection = Ajouter à la collection\ncollection-save-button-collection = Collection :\ncollection-save-button-saved-articles = Articles enregistrés\ncollection-save-button-new-collection = Nouvelle collection\ncollection-save-button-name = Nom :\ncollection-save-button-note = Note :\ncollection-save-button-saving = Enregistrement…\ncollection-save-button-cancel = Annuler\ncollection-save-button-deleting = Suppression…\ncollection-save-button-delete = Supprimer\ntheme-default = Automatique\ncolor-theme-light = Clair\ncolor-theme-dark = Sombre\ncolor-theme-switch-color-theme = Changer le thème de couleur\ncolor-theme-theme = Thème\ncompat-link-report-issue-title = Signaler un problème avec ces données de compatibilité\ncompat-link-report-issue = Signaler des problèmes avec ces données de compatibilité\ncompat-link-source = Voir les données sur GitHub\ncompat-experimental = Expérimental\ncompat-deprecated = Obsolète\ncompat-nonstandard = Non standard\ncompat-support-partial = Prise en charge partielle\ncompat-support-preview-browser = Pris en charge dans une pré-version du navigateur\ncompat-support-full = Prise en charge complète\ncompat-support-no = Pas de prise en charge\ncompat-support-unknown = Prise en charge inconnue\ncompat-support-preview = Pris en charge dans une pré-version.\ncompat-yes = Oui\ncompat-partial = Partiel\ncompat-no = Non\ncompat-legend = Légende\ncompat-legend-tip = Astuce : cliquer/appuyer sur une cellule pour obtenir plus d'informations.\ncompat-link-report-missing-title = Signaler des données de compatibilité manquantes\ncompat-link-report-missing = Signaler le problème\ncompat-js-required = Activez JavaScript pour afficher ce tableau de compatibilité des navigateurs.\ncompat-loading = Chargement…\ncontent-feedback-content-is-out-of-date = Le contenu n'est pas à jour\ncontent-feedback-missing-information = Informations manquantes\ncontent-feedback-code-examples-not-working-as-exp = Les exemples de code ne fonctionnent pas comme prévu\ncontent-feedback-other = Autre\ncontent-feedback-question = Cette page vous a-t-elle été utile ?\ncontent-feedback-yes = Oui\ncontent-feedback-no = Non\ncontent-feedback-reason = Pourquoi cette page ne vous a-t-elle pas été utile ?\ncontent-feedback-submit = Envoyer\ncontent-feedback-thanks = Merci pour votre commentaire !\ncontributor-spotlight-want-to-be-part-of-the-journey = Voulez-vous faire partie de l'aventure ?\ncontributor-spotlight-our-constant-quest-for-innovatio = Notre quête constante d'innovation commence ici, avec vous. Chaque partie de MDN (docs, démos et le site lui-même) provient de notre incroyable communauté ouverte de développeur·euse·s. Rejoignez-nous !\ncontributor-spotlight-get-involved = Participez\ncontributor-spotlight-contributor-profile = Profil de contributeur·ice\ncopy-button-copied = Copié\ncopy-button-copy-failed = Échec de la copie !\ncopy-button-copy = Copier\nfooter-mdn-on-github = MDN sur GitHub\nfooter-mdn-on-bluesky = MDN sur Bluesky\nfooter-mdn-on-x = MDN sur X\nfooter-mdn-on-mastodon = MDN sur Mastodon\nfooter-mdn-blog-rss-feed = Flux RSS du blog MDN\nfooter-mdn = MDN\nfooter-about = À propos\nfooter-blog = Blog\nfooter-mozilla-careers = Offres d'emploi chez Mozilla\nfooter-advertise-with-us = Faites de la publicité avec nous\nfooter-mdn-plus = MDN Plus\nfooter-product-help = Assistance produit\nfooter-contribute = Contribuer\nfooter-mdn-community = Communauté MDN\nfooter-community-resources = Ressources communautaires\nfooter-writing-guidelines = Directives de rédaction\nfooter-mdn-discord = Discord MDN\nfooter-developers = Développeur·euse·s\nfooter-web-technologies = Technologies web\nfooter-learn-web-development = Apprendre le développement web\nfooter-guides = Guides\nfooter-tutorials = Tutoriels\nfooter-glossary = Glossaire\nfooter-hacks-blog = Blog Hacks\nfooter-website-privacy-notice = Politique de confidentialité du site web\nfooter-telemetry-settings = Paramètres de télémétrie\nfooter-legal = Mentions légales\nfooter-community-participation-guidelin = Directives de participation communautaire\nfooter-mdn-logo = Logo MDN\nfooter-tagline = Votre modèle pour un internet meilleur.\nfooter-mozilla-logo = Logo Mozilla\ngeneric-toc__header = Dans cet article\nhomepage-body-featured-articles = Articles en vedette\nhomepage-body-latest-news = Dernières nouvelles\nhomepage-body-recent-contributions = Contributions récentes\nhomepage-contributor-spotlight-contributor-spotlight = Projecteur sur les contributeur·ice·s\nhomepage-contributor-spotlight-get-involved = Participez\nhomepage-search-search-the-site = Rechercher sur le site\nhomepage-search-search = Rechercher\ninteractive-example-reset = Réinitialiser\ninteractive-example-value-select = Sélectionner une valeur\ninteractive-example-the-current-value-is-not-support = La valeur actuelle n'est pas prise en charge par votre navigateur.\ninteractive-example-run-example-and-show-console-ou = Exécuter l'exemple et afficher la sortie de la console\ninteractive-example-run = Exécuter\ninteractive-example-reset-example-and-clear-console = Réinitialiser l'exemple et effacer la console\ninteractive-example-console-output = Sortie de la console\ninteractive-example-output = Sortie\nissues-table-loading-issues = chargement des problèmes…\nissues-table-title = Titre\nissues-table-repository = Dépôt\nlanguage-switcher-remember-language = Se souvenir de la langue\nlanguage-switcher-enable-this-setting-to-always-sw = Activez ce paramètre pour toujours passer à la langue actuelle lorsque disponible. (Cliquez pour en savoir plus.)\nlanguage-switcher-learn-more = En savoir plus\nlogin-button-login = Se connecter\nmodal-exit-modal = Quitter la fenêtre contextuelle\nnavigation-toggle-navigation = Basculer la navigation\nobs-about-title = À propos de l'HTTP Observatory\nobservatory-landing-read-our-faq = Lire notre FAQ\nobservatory-landing-report-feedback = Faire un retour\nobservatory-rescan-button-rescan = Re-scanner\nobservatory-rescan-button-wait-a-minute-to-rescan = Attendez une minute pour re-scanner\nobservatory-results-report-feedback = Faire un retour\nobservatory-results-faq = FAQ\nobservatory-tests-and-scores-loading-tests-and-scoring-data = Chargement des tests et des données de notation...\nobservatory-tests-and-scores-see = Voir\nobservatory-tests-and-scores-for-guidance = pour des conseils.\nobservatory-tests-and-scores-test-result = Résultat du test\nobservatory-tests-and-scores-description = Description\nobservatory-tests-and-scores-modifier = Modifier\nobservatory-tests-and-scores-failed-to-load-tests-and-scoring = Échec du chargement des tests et des données de notation. Veuillez réessayer plus tard.\nbrand-web-docs = MDN Web Docs\nblog-rss-title = Flux RSS du Blog MDN\nmeta-description = Le site MDN Web Docs fournit des informations sur les technologies Web ouvertes, y compris HTML, CSS et les API pour les sites Web et les applications Web progressives.\nlogo-alt = Logo MDN\npagination-pagination = Pagination\nplayground-do-you-really-want-to-clear-ever = Voulez-vous vraiment tout effacer ?\nplayground-do-you-really-want-to-revert-you = Voulez-vous vraiment revenir sur vos modifications ?\nplayground-playground = Terrain d'essai\nplayground-format = Format\nplayground-run = Exécuter\nplayground-share = Partager\nplayground-clear = Effacer\nplayground-reset = Réinitialiser\nplayground-seeing-something-inappropriate = Voir quelque chose d'inapproprié ?\nplayground-user-shared-warning = Il s'agit d'un terrain d'essai partagé par un·e utilisateur·ice.<br>Inspectez toujours le code avant de l'exécuter.\nplayground-console = Console\nplayground-share-markdown = Partager le Markdown\nplayground-copy-markdown-to-clipboard = Copier le Markdown dans le presse-papiers\nplayground-share-data-url = Partager l'URL des données\nplayground-copy-data-url-to-clipboard = Copier l'URL des données dans le presse-papiers\nplayground-share-your-code-via-permalink = Partager votre code avec un lien permanent\nplayground-copy-to-clipboard = Copier dans le presse-papiers\nplayground-create-link = Créer un lien\nplayground-report-this-malicious-or-inappro = Signaler ce terrain d'essai partagé comme malveillant ou inapproprié.\nplayground-can-you-please-share-some-detail = Pouvez-vous partager quelques détails sur ce qui ne va pas avec ce contenu :\nplayground-cancel = Annuler\nplayground-report = Signaler\nrecently-visited-recently-visited = Récemment visité\nscrim-inline-clicking-will-load-content-from = Cliquer chargera le contenu depuis scrimba.com\nscrim-inline-toggle-fullscreen = Basculer en plein écran\nscrim-inline-open-on-scrimba = Ouvrir sur Scrimba\nscrim-inline-load-scrim-and-open-dialog = Charger le scrim et ouvrir la boîte de dialogue.\nsearch-button-search-the-site = Rechercher sur le site\nsearch-modal-loading-search-index = Chargement de l'index de recherche…\nsearch-modal-search = Rechercher\nsearch-modal-exit-search = Quitter la recherche\nsidebar-filter-filter-sidebar = Filtrer la barre latérale\nsidebar-filter-filter = Filtrer\nsidebar-filter-clear-filter-input = Effacer le filtre\nsite-search-search = Rechercher\nsite-search-previous = Précédent\nsite-search-next = Suivant\nsite-search-suggestions-text = Voulez-vous dire…\nsite-search-searching = Recherche en cours…\nsite-search-language = Langue\nsite-search-both = Les deux\nspecifications-list-this-feature-does-not-appear-to = Cette fonctionnalité ne semble pas être définie dans une spécification.\nspecifications-list-specification = Spécification\nsurvey-hide-this-survey = Masquer ce sondage\nsurvey-take-survey-opens-in-a-new-tab = Participer au sondage (s'ouvre dans un nouvel onglet)\ntoggle-sidebar-toggle-sidebar = Basculer la barre latérale\nuser-menu-ai-help = Aide IA\nuser-menu-collections = Collections\nuser-menu-updates = Mises à jour\nuser-menu-settings = Mes paramètres\nuser-menu-help = Aide\nuser-menu-feedback = Retour\nuser-menu-user = Utilisateur·ice\nwriter-open-editor-open-in-editor = Ouvrir dans l'éditeur\nwriter-toolbar-view-on-mdn = Voir sur MDN\n`;"],"names":[],"mappings":"iJAAA,MAAe,CAAC;AAChB;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;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"}
|