@frictionless-ts/table 1.0.1 → 1.0.2
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/build/plugins/arrow/table/load.spec.js +6 -6
- package/build/plugins/csv/table/load.spec.js +4 -4
- package/build/plugins/json/table/load.spec.js +7 -7
- package/build/plugins/ods/table/load.spec.js +4 -4
- package/build/plugins/ods/table/test.js +2 -2
- package/build/plugins/parquet/table/load.spec.js +4 -4
- package/build/plugins/xlxs/table/load.spec.js +4 -4
- package/build/plugins/xlxs/table/test.js +2 -2
- package/build/table/inspect.js +6 -6
- package/package.json +3 -3
|
@@ -28,20 +28,20 @@ describe("loadArrowTable", () => {
|
|
|
28
28
|
{ id: 2, name: "中文" },
|
|
29
29
|
]);
|
|
30
30
|
});
|
|
31
|
-
it("should load remote file", async () => {
|
|
31
|
+
it.skip("should load remote file", async () => {
|
|
32
32
|
const table = await loadArrowTable({
|
|
33
|
-
path: "https://
|
|
33
|
+
path: "https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/arrow/table/fixtures/table.arrow",
|
|
34
34
|
});
|
|
35
35
|
expect((await table.collect()).toRecords()).toEqual([
|
|
36
36
|
{ id: 1, name: "english" },
|
|
37
37
|
{ id: 2, name: "中文" },
|
|
38
38
|
]);
|
|
39
39
|
});
|
|
40
|
-
it("should load remote file (multipart)", async () => {
|
|
40
|
+
it.skip("should load remote file (multipart)", async () => {
|
|
41
41
|
const table = await loadArrowTable({
|
|
42
42
|
path: [
|
|
43
|
-
"https://
|
|
44
|
-
"https://
|
|
43
|
+
"https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/arrow/table/fixtures/table.arrow",
|
|
44
|
+
"https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/arrow/table/fixtures/table.arrow",
|
|
45
45
|
],
|
|
46
46
|
});
|
|
47
47
|
expect((await table.collect()).toRecords()).toEqual([
|
|
@@ -53,4 +53,4 @@ describe("loadArrowTable", () => {
|
|
|
53
53
|
});
|
|
54
54
|
});
|
|
55
55
|
});
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGx1Z2lucy9hcnJvdy90YWJsZS9sb2FkLnNwZWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBQzFELE9BQU8sS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ25DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFFMUMsWUFBWSxFQUFFLENBQUE7QUFFZCxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsR0FBRyxFQUFFO0lBQzlCLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLEVBQUU7UUFDL0IsRUFBRSxDQUFDLHdCQUF3QixFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ3RDLE1BQU0sSUFBSSxHQUFHLGVBQWUsRUFBRSxDQUFBO1lBQzlCLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUE7WUFFcEUsTUFBTSxLQUFLLEdBQUcsTUFBTSxjQUFjLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFBO1lBQzVDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUM7Z0JBQ2xELEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFO2dCQUMxQixFQUFFLEVBQUUsRUFBRSxDQUFD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cEZpbGVQYXRoIH0gZnJvbSBcIkBmcmljdGlvbmxlc3MtdHMvZGF0YXNldFwiXG5pbXBvcnQgKiBhcyBwbCBmcm9tIFwibm9kZWpzLXBvbGFyc1wiXG5pbXBvcnQgeyBkZXNjcmliZSwgZXhwZWN0LCBpdCB9IGZyb20gXCJ2aXRlc3RcIlxuaW1wb3J0IHsgdXNlUmVjb3JkaW5nIH0gZnJvbSBcInZpdGVzdC1wb2xseVwiXG5pbXBvcnQgeyBsb2FkQXJyb3dUYWJsZSB9IGZyb20gXCIuL2xvYWQudHNcIlxuXG51c2VSZWNvcmRpbmcoKVxuXG5kZXNjcmliZShcImxvYWRBcnJvd1RhYmxlXCIsICgpID0+IHtcbiAgZGVzY3JpYmUoXCJmaWxlIHZhcmlhdGlvbnNcIiwgKCkgPT4ge1xuICAgIGl0KFwic2hvdWxkIGxvYWQgbG9jYWwgZmlsZVwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBwYXRoID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIHBsLkRhdGFGcmFtZSh7IGlkOiBbMSwgMl0sIG5hbWU6IFtcImVuZ2xpc2hcIiwgXCLkuK3mlodcIl0gfSkud3JpdGVJUEMocGF0aClcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQXJyb3dUYWJsZSh7IHBhdGggfSlcbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIGxvYWQgbG9jYWwgZmlsZSAobXVsdGlwYXJ0KVwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBwYXRoMSA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBjb25zdCBwYXRoMiA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBwbC5EYXRhRnJhbWUoeyBpZDogWzEsIDJdLCBuYW1lOiBbXCJlbmdsaXNoXCIsIFwi5Lit5paHXCJdIH0pLndyaXRlSVBDKHBhdGgxKVxuICAgICAgcGwuRGF0YUZyYW1lKHsgaWQ6IFsxLCAyXSwgbmFtZTogW1wiZW5nbGlzaFwiLCBcIuS4reaWh1wiXSB9KS53cml0ZUlQQyhwYXRoMilcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQXJyb3dUYWJsZSh7IHBhdGg6IFtwYXRoMSwgcGF0aDJdIH0pXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0LnNraXAoXCJzaG91bGQgbG9hZCByZW1vdGUgZmlsZVwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRBcnJvd1RhYmxlKHtcbiAgICAgICAgcGF0aDogXCJodHRwczovL2dpdGh1Yi5jb20vZnJpY3Rpb25sZXNzZGF0YS9mcmljdGlvbmxlc3MtdHMvcmF3L3JlZnMvaGVhZHMvbWFpbi90YWJsZS9wbHVnaW5zL2Fycm93L3RhYmxlL2ZpeHR1cmVzL3RhYmxlLmFycm93XCIsXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG5cbiAgICBpdC5za2lwKFwic2hvdWxkIGxvYWQgcmVtb3RlIGZpbGUgKG11bHRpcGFydClcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQXJyb3dUYWJsZSh7XG4gICAgICAgIHBhdGg6IFtcbiAgICAgICAgICBcImh0dHBzOi8vZ2l0aHViLmNvbS9mcmljdGlvbmxlc3NkYXRhL2ZyaWN0aW9ubGVzcy10cy9yYXcvcmVmcy9oZWFkcy9tYWluL3RhYmxlL3BsdWdpbnMvYXJyb3cvdGFibGUvZml4dHVyZXMvdGFibGUuYXJyb3dcIixcbiAgICAgICAgICBcImh0dHBzOi8vZ2l0aHViLmNvbS9mcmljdGlvbmxlc3NkYXRhL2ZyaWN0aW9ubGVzcy10cy9yYXcvcmVmcy9oZWFkcy9tYWluL3RhYmxlL3BsdWdpbnMvYXJyb3cvdGFibGUvZml4dHVyZXMvdGFibGUuYXJyb3dcIixcbiAgICAgICAgXSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgXSlcbiAgICB9KVxuICB9KVxufSlcbiJdfQ==
|
|
@@ -25,7 +25,7 @@ describe("loadCsvTable", () => {
|
|
|
25
25
|
});
|
|
26
26
|
it.fails("should load remote file", async () => {
|
|
27
27
|
const table = await loadCsvTable({
|
|
28
|
-
path: "https://raw.githubusercontent.com/
|
|
28
|
+
path: "https://raw.githubusercontent.com/frictionlessdata/frictionless-ts/refs/heads/main/csv/table/fixtures/table.csv",
|
|
29
29
|
});
|
|
30
30
|
expect((await table.collect()).toRecords()).toEqual([
|
|
31
31
|
{ id: 1, name: "english" },
|
|
@@ -35,8 +35,8 @@ describe("loadCsvTable", () => {
|
|
|
35
35
|
it.fails("should load remote file (multipart)", async () => {
|
|
36
36
|
const table = await loadCsvTable({
|
|
37
37
|
path: [
|
|
38
|
-
"https://raw.githubusercontent.com/
|
|
39
|
-
"https://raw.githubusercontent.com/
|
|
38
|
+
"https://raw.githubusercontent.com/frictionlessdata/frictionless-ts/refs/heads/main/csv/table/fixtures/table.csv",
|
|
39
|
+
"https://raw.githubusercontent.com/frictionlessdata/frictionless-ts/refs/heads/main/csv/table/fixtures/table.csv",
|
|
40
40
|
],
|
|
41
41
|
});
|
|
42
42
|
expect((await table.collect()).toRecords()).toEqual([
|
|
@@ -290,4 +290,4 @@ describe("loadCsvTable (format=tsv)", () => {
|
|
|
290
290
|
]);
|
|
291
291
|
});
|
|
292
292
|
});
|
|
293
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGx1Z2lucy9jc3YvdGFibGUvbG9hZC5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDcEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBQ3hELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQzNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFFeEMsWUFBWSxFQUFFLENBQUE7QUFFZCxRQUFRLENBQUMsY0FBYyxFQUFFLEdBQUcsRUFBRTtJQUM1QixFQUFFLENBQUMsd0JBQXdCLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDdEMsTUFBTSxJQUFJLEdBQUcsTUFBTSxhQUFhLENBQUMsMEJBQTBCLENBQUMsQ0FBQTtRQUM1RCxNQUFNLEtBQUssR0FBRyxNQUFNLFlBQVksQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUE7UUFFMUMsTUFBTSxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQztZQUNsRCxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRTtZQUMxQixFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRTtTQUN0QixDQUFDLENBQUE7SUFDSixDQUFDLENBQUMsQ0FBQTtJQUVGLEVBQUUsQ0FBQyxvQ0FBb0MsRUFBRSxLQUFLLElBQUksRUFBRTtRQUNsRCxNQUFNLEtBQUssR0FBRyxNQUFNLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO1FBQ3ZELE1BQU0s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QUFFLElBQUksRUFBRSxTQUFTLEVBQUU7WUFDMUIsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7U0FDdEIsQ0FBQyxDQUFBO0lBQ0osQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1ZmZlciB9IGZyb20gXCJub2RlOmJ1ZmZlclwiXG5pbXBvcnQgeyB3cml0ZVRlbXBGaWxlIH0gZnJvbSBcIkBmcmljdGlvbmxlc3MtdHMvZGF0YXNldFwiXG5pbXBvcnQgeyBkZXNjcmliZSwgZXhwZWN0LCBpdCB9IGZyb20gXCJ2aXRlc3RcIlxuaW1wb3J0IHsgdXNlUmVjb3JkaW5nIH0gZnJvbSBcInZpdGVzdC1wb2xseVwiXG5pbXBvcnQgeyBsb2FkQ3N2VGFibGUgfSBmcm9tIFwiLi9sb2FkLnRzXCJcblxudXNlUmVjb3JkaW5nKClcblxuZGVzY3JpYmUoXCJsb2FkQ3N2VGFibGVcIiwgKCkgPT4ge1xuICBpdChcInNob3VsZCBsb2FkIGxvY2FsIGZpbGVcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFwiaWQsbmFtZVxcbjEsZW5nbGlzaFxcbjIs5Lit5paHXCIpXG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoeyBwYXRoIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0KFwic2hvdWxkIGxvYWQgbG9jYWwgZmlsZSAobXVsdGlwYXJ0KVwiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgcGF0aDEgPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFwiaWQsbmFtZVxcbjEsZW5nbGlzaFwiKVxuICAgIGNvbnN0IHBhdGgyID0gYXdhaXQgd3JpdGVUZW1wRmlsZShcImlkLG5hbWVcXG4yLOS4reaWh1xcbjMsZ2VybWFuXCIpXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7IHBhdGg6IFtwYXRoMSwgcGF0aDJdIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIHsgaWQ6IDMsIG5hbWU6IFwiZ2VybWFuXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0LmZhaWxzKFwic2hvdWxkIGxvYWQgcmVtb3RlIGZpbGVcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZENzdlRhYmxlKHtcbiAgICAgIHBhdGg6IFwiaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2RhdGlzdGhxL2Rwa2l0L3JlZnMvaGVhZHMvbWFpbi9jc3YvdGFibGUvZml4dHVyZXMvdGFibGUuY3N2XCIsXG4gICAgfSlcblxuICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgIF0pXG4gIH0pXG5cbiAgaXQuZmFpbHMoXCJzaG91bGQgbG9hZCByZW1vdGUgZmlsZSAobXVsdGlwYXJ0KVwiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoe1xuICAgICAgcGF0aDogW1xuICAgICAgICBcImh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9kYXRpc3RocS9kcGtpdC9yZWZzL2hlYWRzL21haW4vY3N2L3RhYmxlL2ZpeHR1cmVzL3RhYmxlLmNzdlwiLFxuICAgICAgICBcImh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9kYXRpc3RocS9kcGtpdC9yZWZzL2hlYWRzL21haW4vY3N2L3RhYmxlL2ZpeHR1cmVzL3RhYmxlLmNzdlwiLFxuICAgICAgXSxcbiAgICB9KVxuXG4gICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgIF0pXG4gIH0pXG5cbiAgaXQoXCJzaG91bGQgaGFuZGxlIHdpbmRvd3MgbGluZSB0ZXJtaW5hdG9yIGJ5IGRlZmF1bHRcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFwiaWQsbmFtZVxcclxcbjEsZW5nbGlzaFxcclxcbjIs5Lit5paHXCIpXG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoeyBwYXRoIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0KFwic2hvdWxkIGhhbmRsZSBjdXN0b20gZGVsaW1pdGVyXCIsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBwYXRoID0gYXdhaXQgd3JpdGVUZW1wRmlsZShcImlkfG5hbWVcXG4xfGFsaWNlXFxuMnxib2JcIilcbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBkZWxpbWl0ZXI6IFwifFwiIH0sXG4gICAgfSlcblxuICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICB7IGlkOiAxLCBuYW1lOiBcImFsaWNlXCIgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6IFwiYm9iXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0KFwic2hvdWxkIGhhbmRsZSBmaWxlcyB3aXRob3V0IGhlYWRlclwiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoXCIxLGFsaWNlXFxuMixib2JcIilcbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBoZWFkZXI6IGZhbHNlIH0sXG4gICAgfSlcblxuICAgIGNvbnN0IHJlY29yZHMgPSAoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKVxuICAgIGV4cGVjdChyZWNvcmRzKS50b0VxdWFsKFtcbiAgICAgIHsgZmllbGQxOiAxLCBmaWVsZDI6IFwiYWxpY2VcIiB9LFxuICAgICAgeyBmaWVsZDE6IDIsIGZpZWxkMjogXCJib2JcIiB9LFxuICAgIF0pXG4gIH0pXG5cbiAgaXQoXCJzaG91bGQgaGFuZGxlIGN1c3RvbSBsaW5lIHRlcm1pbmF0b3JcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFwiaWQsbmFtZXwxLGFsaWNlfDIsYm9iXCIpXG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoe1xuICAgICAgcGF0aCxcbiAgICAgIGRpYWxlY3Q6IHsgbGluZVRlcm1pbmF0b3I6IFwifFwiIH0sXG4gICAgfSlcblxuICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICB7IGlkOiAxLCBuYW1lOiBcImFsaWNlXCIgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6IFwiYm9iXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0LnNraXAoXCJzaG91bGQgaGFuZGxlIGVzY2FwZSBjaGFyXCIsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBwYXRoID0gYXdhaXQgd3JpdGVUZW1wRmlsZShcbiAgICAgIFwiaWQsbmFtZVxcbjEsYXBwbGV8LGZydWl0c1xcbjIsb3JhbmdlfCxmcnVpdHNcIixcbiAgICApXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBlc2NhcGVDaGFyOiBcInxcIiB9LFxuICAgIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJhcHBsZSxmcnVpdHNcIiB9LFxuICAgICAgeyBpZDogMiwgbmFtZTogXCJvcmFuZ2UsZnJ1aXRzXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0KFwic2hvdWxkIGhhbmRsZSBjdXN0b20gcXVvdGUgY2hhcmFjdGVyXCIsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBwYXRoID0gYXdhaXQgd3JpdGVUZW1wRmlsZShcImlkLG5hbWVcXG4xLCdhbGljZSBzbWl0aCdcXG4yLCdib2Igam9uZXMnXCIpXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBxdW90ZUNoYXI6IFwiJ1wiIH0sXG4gICAgfSlcblxuICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICB7IGlkOiAxLCBuYW1lOiBcImFsaWNlIHNtaXRoXCIgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6IFwiYm9iIGpvbmVzXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0KFwic2hvdWxkIGhhbmRsZSBkb3VibGUgcXVvdGUgYnkgZGVmYXVsdFwiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoXG4gICAgICAnaWQsbmFtZVxcbjEsXCJhbGljZVwiXCJzbWl0aFwiXFxuMixcImJvYlwiXCJqb25lc1wiJyxcbiAgICApXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBkb3VibGVRdW90ZTogdHJ1ZSB9LFxuICAgIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogJ2FsaWNlXCJzbWl0aCcgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6ICdib2JcImpvbmVzJyB9LFxuICAgIF0pXG4gIH0pXG5cbiAgaXQuc2tpcChcInNob3VsZCBoYW5kbGUgZGlzYWJsaW5nIGRvdWJsZSBxdW90ZVwiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoXG4gICAgICAnaWQsbmFtZVxcbjEsXCJhbGljZVwiXCJzbWl0aFwiXFxuMixcImJvYlwiXCJqb25lc1wiJyxcbiAgICApXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBkb3VibGVRdW90ZTogZmFsc2UgfSxcbiAgICB9KVxuXG4gICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiYWxpY2VzbWl0aFwiIH0sXG4gICAgICB7IGlkOiAyLCBuYW1lOiBcImJvYmpvbmVzXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0KFwic2hvdWxkIGhhbmRsZSBjb21tZW50IGNoYXJhY3RlclwiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoXG4gICAgICBcIiMgVGhpcyBpcyBhIGNvbW1lbnRcXG5pZCxuYW1lXFxuMSxhbGljZVxcbiMgQW5vdGhlciBjb21tZW50XFxuMixib2JcIixcbiAgICApXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBjb21tZW50Q2hhcjogXCIjXCIgfSxcbiAgICB9KVxuXG4gICAgY29uc3QgcmVjb3JkcyA9IChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpXG4gICAgZXhwZWN0KHJlY29yZHMpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJhbGljZVwiIH0sXG4gICAgICB7IGlkOiAyLCBuYW1lOiBcImJvYlwiIH0sXG4gICAgXSlcbiAgfSlcblxuICBpdChcInNob3VsZCBzdXBwb3J0IGhlYWRlclJvd3NcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFwiI2NvbW1lbnRcXG5pZCxuYW1lXFxuMSxhbGljZVxcbjIsYm9iXCIpXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBoZWFkZXJSb3dzOiBbMl0gfSxcbiAgICB9KVxuXG4gICAgY29uc3QgcmVjb3JkcyA9IChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpXG4gICAgZXhwZWN0KHJlY29yZHMpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJhbGljZVwiIH0sXG4gICAgICB7IGlkOiAyLCBuYW1lOiBcImJvYlwiIH0sXG4gICAgXSlcbiAgfSlcblxuICBpdChcInNob3VsZCBzdXBwb3J0IGhlYWRlckpvaW5cIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFxuICAgICAgXCIjY29tbWVudFxcbmlkLG5hbWVcXG5pbnQsc3RyXFxuMSxhbGljZVxcbjIsYm9iXCIsXG4gICAgKVxuXG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoe1xuICAgICAgcGF0aCxcbiAgICAgIGRpYWxlY3Q6IHsgaGVhZGVyUm93czogWzIsIDNdLCBoZWFkZXJKb2luOiBcIl9cIiB9LFxuICAgIH0pXG5cbiAgICBjb25zdCByZWNvcmRzID0gKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKClcbiAgICBleHBlY3QocmVjb3JkcykudG9FcXVhbChbXG4gICAgICB7IGlkX2ludDogMSwgbmFtZV9zdHI6IFwiYWxpY2VcIiB9LFxuICAgICAgeyBpZF9pbnQ6IDIsIG5hbWVfc3RyOiBcImJvYlwiIH0sXG4gICAgXSlcbiAgfSlcblxuICBpdChcInNob3VsZCBzdXBwb3J0IGNvbW1lbnRSb3dzXCIsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBwYXRoID0gYXdhaXQgd3JpdGVUZW1wRmlsZShcImlkLG5hbWVcXG4xLGFsaWNlXFxuY29tbWVudFxcbjIsYm9iXCIpXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBjb21tZW50Um93czogWzNdIH0sXG4gICAgfSlcblxuICAgIGNvbnN0IHJlY29yZHMgPSAoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKVxuICAgIGV4cGVjdChyZWNvcmRzKS50b0VxdWFsKFtcbiAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiYWxpY2VcIiB9LFxuICAgICAgeyBpZDogMiwgbmFtZTogXCJib2JcIiB9LFxuICAgIF0pXG4gIH0pXG5cbiAgaXQoXCJzaG91bGQgc3VwcG9ydCBoZWFkZXJSb3dzIGFuZCBjb21tZW50Um93c1wiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoXG4gICAgICBcIiNjb21tZW50XFxuaWQsbmFtZVxcbjEsYWxpY2VcXG4jY29tbWVudFxcbjIsYm9iXCIsXG4gICAgKVxuXG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoe1xuICAgICAgcGF0aCxcbiAgICAgIGRpYWxlY3Q6IHsgaGVhZGVyUm93czogWzJdLCBjb21tZW50Um93czogWzRdIH0sXG4gICAgfSlcblxuICAgIGNvbnN0IHJlY29yZHMgPSAoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKVxuICAgIGV4cGVjdChyZWNvcmRzKS50b0VxdWFsKFtcbiAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiYWxpY2VcIiB9LFxuICAgICAgeyBpZDogMiwgbmFtZTogXCJib2JcIiB9LFxuICAgIF0pXG4gIH0pXG5cbiAgaXQoXCJzaG91bGQgc3VwcG9ydCBoZWFkZXJKb2luIGFuZCBjb21tZW50Um93c1wiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoXG4gICAgICBcIiNjb21tZW50XFxuaWQsbmFtZVxcbmludCxzdHJcXG4xLGFsaWNlXFxuI2NvbW1lbnRcXG4yLGJvYlwiLFxuICAgIClcblxuICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZENzdlRhYmxlKHtcbiAgICAgIHBhdGgsXG4gICAgICBkaWFsZWN0OiB7IGhlYWRlclJvd3M6IFsyLCAzXSwgaGVhZGVySm9pbjogXCJfXCIsIGNvbW1lbnRSb3dzOiBbNV0gfSxcbiAgICB9KVxuXG4gICAgY29uc3QgcmVjb3JkcyA9IChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpXG4gICAgZXhwZWN0KHJlY29yZHMpLnRvRXF1YWwoW1xuICAgICAgeyBpZF9pbnQ6IDEsIG5hbWVfc3RyOiBcImFsaWNlXCIgfSxcbiAgICAgIHsgaWRfaW50OiAyLCBuYW1lX3N0cjogXCJib2JcIiB9LFxuICAgIF0pXG4gIH0pXG5cbiAgaXQoXCJzaG91bGQgaGFuZGxlIG51bGwgc2VxdWVuY2VcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFxuICAgICAgXCJpZCxuYW1lLGFnZVxcbjEsYWxpY2UsMjVcXG4yLE4vQSwzMFxcbjMsYm9iLE4vQVwiLFxuICAgIClcbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBudWxsU2VxdWVuY2U6IFwiTi9BXCIgfSxcbiAgICB9KVxuXG4gICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiYWxpY2VcIiwgYWdlOiAyNSB9LFxuICAgICAgeyBpZDogMiwgbmFtZTogbnVsbCwgYWdlOiAzMCB9LFxuICAgICAgeyBpZDogMywgbmFtZTogXCJib2JcIiwgYWdlOiBudWxsIH0sXG4gICAgXSlcbiAgfSlcblxuICBpdChcInNob3VsZCBoYW5kbGUgc2tpcCBpbml0aWFsIHNwYWNlXCIsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBwYXRoID0gYXdhaXQgd3JpdGVUZW1wRmlsZShcbiAgICAgIFwiaWQsbmFtZSxjYXRlZ29yeVxcbjEsIGFsaWNlLCBmcnVpdHNcXG4yLCAgYm9iLCAgdmVnZXRhYmxlc1xcbjMsY2hhcmxpZSxncmFpbnNcIixcbiAgICApXG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoe1xuICAgICAgcGF0aCxcbiAgICAgIGRpYWxlY3Q6IHsgc2tpcEluaXRpYWxTcGFjZTogdHJ1ZSB9LFxuICAgIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJhbGljZVwiLCBjYXRlZ29yeTogXCJmcnVpdHNcIiB9LFxuICAgICAgeyBpZDogMiwgbmFtZTogXCJib2JcIiwgY2F0ZWdvcnk6IFwidmVnZXRhYmxlc1wiIH0sXG4gICAgICB7IGlkOiAzLCBuYW1lOiBcImNoYXJsaWVcIiwgY2F0ZWdvcnk6IFwiZ3JhaW5zXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0KFwic2hvdWxkIGhhbmRsZSBtdWx0aXBsZSBkaWFsZWN0IG9wdGlvbnMgdG9nZXRoZXJcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFxuICAgICAgXCIjY29tbWVudFxcbmlkfCdmdWxsIG5hbWUnfGFnZVxcbjF8J2FsaWNlIHNtaXRoJ3wyNVxcbjJ8J2JvYiBqb25lcyd8MzBcIixcbiAgICApXG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoe1xuICAgICAgcGF0aCxcbiAgICAgIGRpYWxlY3Q6IHtcbiAgICAgICAgZGVsaW1pdGVyOiBcInxcIixcbiAgICAgICAgcXVvdGVDaGFyOiBcIidcIixcbiAgICAgICAgY29tbWVudENoYXI6IFwiI1wiLFxuICAgICAgICBoZWFkZXI6IHRydWUsXG4gICAgICB9LFxuICAgIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgXCJmdWxsIG5hbWVcIjogXCJhbGljZSBzbWl0aFwiLCBhZ2U6IDI1IH0sXG4gICAgICB7IGlkOiAyLCBcImZ1bGwgbmFtZVwiOiBcImJvYiBqb25lc1wiLCBhZ2U6IDMwIH0sXG4gICAgXSlcbiAgfSlcblxuICBpdChcInNob3VsZCBoYW5kbGUgdXRmOCBlbmNvZGluZ1wiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoXG4gICAgICBCdWZmZXIuZnJvbShcImlkLG5hbWVcXG4xLGNhZsOpXFxuMixuYcOvdmVcIiwgXCJ1dGY4XCIpLFxuICAgIClcblxuICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZENzdlRhYmxlKHtcbiAgICAgIHBhdGgsXG4gICAgICBlbmNvZGluZzogXCJ1dGY4XCIsXG4gICAgfSlcblxuICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICB7IGlkOiAxLCBuYW1lOiBcImNhZsOpXCIgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6IFwibmHDr3ZlXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIC8vIFRPRE86IGN1cnJlbnRseSBub3Qgc3VwcG9ydGVkIGJ5IG5vZGVqcy1wb2xhcnNcbiAgaXQuc2tpcChcInNob3VsZCBoYW5kbGUgdXRmMTYgZW5jb2RpbmdcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFxuICAgICAgQnVmZmVyLmZyb20oXCJpZCxuYW1lXFxuMSxjYWbDqVxcbjIsbmHDr3ZlXCIsIFwidXRmMTZsZVwiKSxcbiAgICApXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZW5jb2Rpbmc6IFwidXRmMTZcIixcbiAgICB9KVxuXG4gICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiY2Fmw6lcIiB9LFxuICAgICAgeyBpZDogMiwgbmFtZTogXCJuYcOvdmVcIiB9LFxuICAgIF0pXG4gIH0pXG5cbiAgLy8gVE9ETzogY3VycmVudGx5IG5vdCBzdXBwb3J0ZWQgYnkgbm9kZWpzLXBvbGFyc1xuICBpdC5za2lwKFwic2hvdWxkIGhhbmRsZSBsYXRpbjEgZW5jb2RpbmdcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFxuICAgICAgQnVmZmVyLmZyb20oXCJpZCxuYW1lXFxuMSxjYWbDqVxcbjIscsOpc3Vtw6lcIiwgXCJsYXRpbjFcIiksXG4gICAgKVxuXG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoe1xuICAgICAgcGF0aCxcbiAgICAgIGVuY29kaW5nOiBcImxhdGluMVwiLFxuICAgIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJjYWbDqVwiIH0sXG4gICAgICB7IGlkOiAyLCBuYW1lOiBcInLDqXN1bcOpXCIgfSxcbiAgICBdKVxuICB9KVxufSlcblxuZGVzY3JpYmUoXCJsb2FkQ3N2VGFibGUgKGZvcm1hdD10c3YpXCIsICgpID0+IHtcbiAgaXQoXCJzaG91bGQgbG9hZCBsb2NhbCBmaWxlXCIsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBwYXRoID0gYXdhaXQgd3JpdGVUZW1wRmlsZShcImlkXFx0bmFtZVxcbjFcXHRlbmdsaXNoXFxuMlxcdOS4reaWh1wiKVxuICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZENzdlRhYmxlKHsgcGF0aCwgZm9ybWF0OiBcInRzdlwiIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICBdKVxuICB9KVxufSlcbiJdfQ==
|
|
293
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGx1Z2lucy9jc3YvdGFibGUvbG9hZC5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDcEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBQ3hELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQzNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFFeEMsWUFBWSxFQUFFLENBQUE7QUFFZCxRQUFRLENBQUMsY0FBYyxFQUFFLEdBQUcsRUFBRTtJQUM1QixFQUFFLENBQUMsd0JBQXdCLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDdEMsTUFBTSxJQUFJLEdBQUcsTUFBTSxhQUFhLENBQUMsMEJBQTBCLENBQUMsQ0FBQTtRQUM1RCxNQUFNLEtBQUssR0FBRyxNQUFNLFlBQVksQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUE7UUFFMUMsTUFBTSxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQztZQUNsRCxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRTtZQUMxQixFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRTtTQUN0QixDQUFDLENBQUE7SUFDSixDQUFDLENBQUMsQ0FBQTtJQUVGLEVBQUUsQ0FBQyxvQ0FBb0MsRUFBRSxLQUFLLElBQUksRUFBRTtRQUNsRCxNQUFNLEtBQUssR0FBRyxNQUFNLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO1FBQ3ZELE1BQU0s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QUFFLElBQUksRUFBRSxTQUFTLEVBQUU7WUFDMUIsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7U0FDdEIsQ0FBQyxDQUFBO0lBQ0osQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1ZmZlciB9IGZyb20gXCJub2RlOmJ1ZmZlclwiXG5pbXBvcnQgeyB3cml0ZVRlbXBGaWxlIH0gZnJvbSBcIkBmcmljdGlvbmxlc3MtdHMvZGF0YXNldFwiXG5pbXBvcnQgeyBkZXNjcmliZSwgZXhwZWN0LCBpdCB9IGZyb20gXCJ2aXRlc3RcIlxuaW1wb3J0IHsgdXNlUmVjb3JkaW5nIH0gZnJvbSBcInZpdGVzdC1wb2xseVwiXG5pbXBvcnQgeyBsb2FkQ3N2VGFibGUgfSBmcm9tIFwiLi9sb2FkLnRzXCJcblxudXNlUmVjb3JkaW5nKClcblxuZGVzY3JpYmUoXCJsb2FkQ3N2VGFibGVcIiwgKCkgPT4ge1xuICBpdChcInNob3VsZCBsb2FkIGxvY2FsIGZpbGVcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFwiaWQsbmFtZVxcbjEsZW5nbGlzaFxcbjIs5Lit5paHXCIpXG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoeyBwYXRoIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0KFwic2hvdWxkIGxvYWQgbG9jYWwgZmlsZSAobXVsdGlwYXJ0KVwiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgcGF0aDEgPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFwiaWQsbmFtZVxcbjEsZW5nbGlzaFwiKVxuICAgIGNvbnN0IHBhdGgyID0gYXdhaXQgd3JpdGVUZW1wRmlsZShcImlkLG5hbWVcXG4yLOS4reaWh1xcbjMsZ2VybWFuXCIpXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7IHBhdGg6IFtwYXRoMSwgcGF0aDJdIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIHsgaWQ6IDMsIG5hbWU6IFwiZ2VybWFuXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0LmZhaWxzKFwic2hvdWxkIGxvYWQgcmVtb3RlIGZpbGVcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZENzdlRhYmxlKHtcbiAgICAgIHBhdGg6IFwiaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2ZyaWN0aW9ubGVzc2RhdGEvZnJpY3Rpb25sZXNzLXRzL3JlZnMvaGVhZHMvbWFpbi9jc3YvdGFibGUvZml4dHVyZXMvdGFibGUuY3N2XCIsXG4gICAgfSlcblxuICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgIF0pXG4gIH0pXG5cbiAgaXQuZmFpbHMoXCJzaG91bGQgbG9hZCByZW1vdGUgZmlsZSAobXVsdGlwYXJ0KVwiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoe1xuICAgICAgcGF0aDogW1xuICAgICAgICBcImh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9mcmljdGlvbmxlc3NkYXRhL2ZyaWN0aW9ubGVzcy10cy9yZWZzL2hlYWRzL21haW4vY3N2L3RhYmxlL2ZpeHR1cmVzL3RhYmxlLmNzdlwiLFxuICAgICAgICBcImh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9mcmljdGlvbmxlc3NkYXRhL2ZyaWN0aW9ubGVzcy10cy9yZWZzL2hlYWRzL21haW4vY3N2L3RhYmxlL2ZpeHR1cmVzL3RhYmxlLmNzdlwiLFxuICAgICAgXSxcbiAgICB9KVxuXG4gICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgIF0pXG4gIH0pXG5cbiAgaXQoXCJzaG91bGQgaGFuZGxlIHdpbmRvd3MgbGluZSB0ZXJtaW5hdG9yIGJ5IGRlZmF1bHRcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFwiaWQsbmFtZVxcclxcbjEsZW5nbGlzaFxcclxcbjIs5Lit5paHXCIpXG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoeyBwYXRoIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0KFwic2hvdWxkIGhhbmRsZSBjdXN0b20gZGVsaW1pdGVyXCIsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBwYXRoID0gYXdhaXQgd3JpdGVUZW1wRmlsZShcImlkfG5hbWVcXG4xfGFsaWNlXFxuMnxib2JcIilcbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBkZWxpbWl0ZXI6IFwifFwiIH0sXG4gICAgfSlcblxuICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICB7IGlkOiAxLCBuYW1lOiBcImFsaWNlXCIgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6IFwiYm9iXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0KFwic2hvdWxkIGhhbmRsZSBmaWxlcyB3aXRob3V0IGhlYWRlclwiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoXCIxLGFsaWNlXFxuMixib2JcIilcbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBoZWFkZXI6IGZhbHNlIH0sXG4gICAgfSlcblxuICAgIGNvbnN0IHJlY29yZHMgPSAoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKVxuICAgIGV4cGVjdChyZWNvcmRzKS50b0VxdWFsKFtcbiAgICAgIHsgZmllbGQxOiAxLCBmaWVsZDI6IFwiYWxpY2VcIiB9LFxuICAgICAgeyBmaWVsZDE6IDIsIGZpZWxkMjogXCJib2JcIiB9LFxuICAgIF0pXG4gIH0pXG5cbiAgaXQoXCJzaG91bGQgaGFuZGxlIGN1c3RvbSBsaW5lIHRlcm1pbmF0b3JcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFwiaWQsbmFtZXwxLGFsaWNlfDIsYm9iXCIpXG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoe1xuICAgICAgcGF0aCxcbiAgICAgIGRpYWxlY3Q6IHsgbGluZVRlcm1pbmF0b3I6IFwifFwiIH0sXG4gICAgfSlcblxuICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICB7IGlkOiAxLCBuYW1lOiBcImFsaWNlXCIgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6IFwiYm9iXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0LnNraXAoXCJzaG91bGQgaGFuZGxlIGVzY2FwZSBjaGFyXCIsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBwYXRoID0gYXdhaXQgd3JpdGVUZW1wRmlsZShcbiAgICAgIFwiaWQsbmFtZVxcbjEsYXBwbGV8LGZydWl0c1xcbjIsb3JhbmdlfCxmcnVpdHNcIixcbiAgICApXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBlc2NhcGVDaGFyOiBcInxcIiB9LFxuICAgIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJhcHBsZSxmcnVpdHNcIiB9LFxuICAgICAgeyBpZDogMiwgbmFtZTogXCJvcmFuZ2UsZnJ1aXRzXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0KFwic2hvdWxkIGhhbmRsZSBjdXN0b20gcXVvdGUgY2hhcmFjdGVyXCIsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBwYXRoID0gYXdhaXQgd3JpdGVUZW1wRmlsZShcImlkLG5hbWVcXG4xLCdhbGljZSBzbWl0aCdcXG4yLCdib2Igam9uZXMnXCIpXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBxdW90ZUNoYXI6IFwiJ1wiIH0sXG4gICAgfSlcblxuICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICB7IGlkOiAxLCBuYW1lOiBcImFsaWNlIHNtaXRoXCIgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6IFwiYm9iIGpvbmVzXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0KFwic2hvdWxkIGhhbmRsZSBkb3VibGUgcXVvdGUgYnkgZGVmYXVsdFwiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoXG4gICAgICAnaWQsbmFtZVxcbjEsXCJhbGljZVwiXCJzbWl0aFwiXFxuMixcImJvYlwiXCJqb25lc1wiJyxcbiAgICApXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBkb3VibGVRdW90ZTogdHJ1ZSB9LFxuICAgIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogJ2FsaWNlXCJzbWl0aCcgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6ICdib2JcImpvbmVzJyB9LFxuICAgIF0pXG4gIH0pXG5cbiAgaXQuc2tpcChcInNob3VsZCBoYW5kbGUgZGlzYWJsaW5nIGRvdWJsZSBxdW90ZVwiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoXG4gICAgICAnaWQsbmFtZVxcbjEsXCJhbGljZVwiXCJzbWl0aFwiXFxuMixcImJvYlwiXCJqb25lc1wiJyxcbiAgICApXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBkb3VibGVRdW90ZTogZmFsc2UgfSxcbiAgICB9KVxuXG4gICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiYWxpY2VzbWl0aFwiIH0sXG4gICAgICB7IGlkOiAyLCBuYW1lOiBcImJvYmpvbmVzXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0KFwic2hvdWxkIGhhbmRsZSBjb21tZW50IGNoYXJhY3RlclwiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoXG4gICAgICBcIiMgVGhpcyBpcyBhIGNvbW1lbnRcXG5pZCxuYW1lXFxuMSxhbGljZVxcbiMgQW5vdGhlciBjb21tZW50XFxuMixib2JcIixcbiAgICApXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBjb21tZW50Q2hhcjogXCIjXCIgfSxcbiAgICB9KVxuXG4gICAgY29uc3QgcmVjb3JkcyA9IChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpXG4gICAgZXhwZWN0KHJlY29yZHMpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJhbGljZVwiIH0sXG4gICAgICB7IGlkOiAyLCBuYW1lOiBcImJvYlwiIH0sXG4gICAgXSlcbiAgfSlcblxuICBpdChcInNob3VsZCBzdXBwb3J0IGhlYWRlclJvd3NcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFwiI2NvbW1lbnRcXG5pZCxuYW1lXFxuMSxhbGljZVxcbjIsYm9iXCIpXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBoZWFkZXJSb3dzOiBbMl0gfSxcbiAgICB9KVxuXG4gICAgY29uc3QgcmVjb3JkcyA9IChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpXG4gICAgZXhwZWN0KHJlY29yZHMpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJhbGljZVwiIH0sXG4gICAgICB7IGlkOiAyLCBuYW1lOiBcImJvYlwiIH0sXG4gICAgXSlcbiAgfSlcblxuICBpdChcInNob3VsZCBzdXBwb3J0IGhlYWRlckpvaW5cIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFxuICAgICAgXCIjY29tbWVudFxcbmlkLG5hbWVcXG5pbnQsc3RyXFxuMSxhbGljZVxcbjIsYm9iXCIsXG4gICAgKVxuXG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoe1xuICAgICAgcGF0aCxcbiAgICAgIGRpYWxlY3Q6IHsgaGVhZGVyUm93czogWzIsIDNdLCBoZWFkZXJKb2luOiBcIl9cIiB9LFxuICAgIH0pXG5cbiAgICBjb25zdCByZWNvcmRzID0gKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKClcbiAgICBleHBlY3QocmVjb3JkcykudG9FcXVhbChbXG4gICAgICB7IGlkX2ludDogMSwgbmFtZV9zdHI6IFwiYWxpY2VcIiB9LFxuICAgICAgeyBpZF9pbnQ6IDIsIG5hbWVfc3RyOiBcImJvYlwiIH0sXG4gICAgXSlcbiAgfSlcblxuICBpdChcInNob3VsZCBzdXBwb3J0IGNvbW1lbnRSb3dzXCIsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBwYXRoID0gYXdhaXQgd3JpdGVUZW1wRmlsZShcImlkLG5hbWVcXG4xLGFsaWNlXFxuY29tbWVudFxcbjIsYm9iXCIpXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBjb21tZW50Um93czogWzNdIH0sXG4gICAgfSlcblxuICAgIGNvbnN0IHJlY29yZHMgPSAoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKVxuICAgIGV4cGVjdChyZWNvcmRzKS50b0VxdWFsKFtcbiAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiYWxpY2VcIiB9LFxuICAgICAgeyBpZDogMiwgbmFtZTogXCJib2JcIiB9LFxuICAgIF0pXG4gIH0pXG5cbiAgaXQoXCJzaG91bGQgc3VwcG9ydCBoZWFkZXJSb3dzIGFuZCBjb21tZW50Um93c1wiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoXG4gICAgICBcIiNjb21tZW50XFxuaWQsbmFtZVxcbjEsYWxpY2VcXG4jY29tbWVudFxcbjIsYm9iXCIsXG4gICAgKVxuXG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoe1xuICAgICAgcGF0aCxcbiAgICAgIGRpYWxlY3Q6IHsgaGVhZGVyUm93czogWzJdLCBjb21tZW50Um93czogWzRdIH0sXG4gICAgfSlcblxuICAgIGNvbnN0IHJlY29yZHMgPSAoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKVxuICAgIGV4cGVjdChyZWNvcmRzKS50b0VxdWFsKFtcbiAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiYWxpY2VcIiB9LFxuICAgICAgeyBpZDogMiwgbmFtZTogXCJib2JcIiB9LFxuICAgIF0pXG4gIH0pXG5cbiAgaXQoXCJzaG91bGQgc3VwcG9ydCBoZWFkZXJKb2luIGFuZCBjb21tZW50Um93c1wiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoXG4gICAgICBcIiNjb21tZW50XFxuaWQsbmFtZVxcbmludCxzdHJcXG4xLGFsaWNlXFxuI2NvbW1lbnRcXG4yLGJvYlwiLFxuICAgIClcblxuICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZENzdlRhYmxlKHtcbiAgICAgIHBhdGgsXG4gICAgICBkaWFsZWN0OiB7IGhlYWRlclJvd3M6IFsyLCAzXSwgaGVhZGVySm9pbjogXCJfXCIsIGNvbW1lbnRSb3dzOiBbNV0gfSxcbiAgICB9KVxuXG4gICAgY29uc3QgcmVjb3JkcyA9IChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpXG4gICAgZXhwZWN0KHJlY29yZHMpLnRvRXF1YWwoW1xuICAgICAgeyBpZF9pbnQ6IDEsIG5hbWVfc3RyOiBcImFsaWNlXCIgfSxcbiAgICAgIHsgaWRfaW50OiAyLCBuYW1lX3N0cjogXCJib2JcIiB9LFxuICAgIF0pXG4gIH0pXG5cbiAgaXQoXCJzaG91bGQgaGFuZGxlIG51bGwgc2VxdWVuY2VcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFxuICAgICAgXCJpZCxuYW1lLGFnZVxcbjEsYWxpY2UsMjVcXG4yLE4vQSwzMFxcbjMsYm9iLE4vQVwiLFxuICAgIClcbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZGlhbGVjdDogeyBudWxsU2VxdWVuY2U6IFwiTi9BXCIgfSxcbiAgICB9KVxuXG4gICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiYWxpY2VcIiwgYWdlOiAyNSB9LFxuICAgICAgeyBpZDogMiwgbmFtZTogbnVsbCwgYWdlOiAzMCB9LFxuICAgICAgeyBpZDogMywgbmFtZTogXCJib2JcIiwgYWdlOiBudWxsIH0sXG4gICAgXSlcbiAgfSlcblxuICBpdChcInNob3VsZCBoYW5kbGUgc2tpcCBpbml0aWFsIHNwYWNlXCIsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBwYXRoID0gYXdhaXQgd3JpdGVUZW1wRmlsZShcbiAgICAgIFwiaWQsbmFtZSxjYXRlZ29yeVxcbjEsIGFsaWNlLCBmcnVpdHNcXG4yLCAgYm9iLCAgdmVnZXRhYmxlc1xcbjMsY2hhcmxpZSxncmFpbnNcIixcbiAgICApXG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoe1xuICAgICAgcGF0aCxcbiAgICAgIGRpYWxlY3Q6IHsgc2tpcEluaXRpYWxTcGFjZTogdHJ1ZSB9LFxuICAgIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJhbGljZVwiLCBjYXRlZ29yeTogXCJmcnVpdHNcIiB9LFxuICAgICAgeyBpZDogMiwgbmFtZTogXCJib2JcIiwgY2F0ZWdvcnk6IFwidmVnZXRhYmxlc1wiIH0sXG4gICAgICB7IGlkOiAzLCBuYW1lOiBcImNoYXJsaWVcIiwgY2F0ZWdvcnk6IFwiZ3JhaW5zXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIGl0KFwic2hvdWxkIGhhbmRsZSBtdWx0aXBsZSBkaWFsZWN0IG9wdGlvbnMgdG9nZXRoZXJcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFxuICAgICAgXCIjY29tbWVudFxcbmlkfCdmdWxsIG5hbWUnfGFnZVxcbjF8J2FsaWNlIHNtaXRoJ3wyNVxcbjJ8J2JvYiBqb25lcyd8MzBcIixcbiAgICApXG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoe1xuICAgICAgcGF0aCxcbiAgICAgIGRpYWxlY3Q6IHtcbiAgICAgICAgZGVsaW1pdGVyOiBcInxcIixcbiAgICAgICAgcXVvdGVDaGFyOiBcIidcIixcbiAgICAgICAgY29tbWVudENoYXI6IFwiI1wiLFxuICAgICAgICBoZWFkZXI6IHRydWUsXG4gICAgICB9LFxuICAgIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgXCJmdWxsIG5hbWVcIjogXCJhbGljZSBzbWl0aFwiLCBhZ2U6IDI1IH0sXG4gICAgICB7IGlkOiAyLCBcImZ1bGwgbmFtZVwiOiBcImJvYiBqb25lc1wiLCBhZ2U6IDMwIH0sXG4gICAgXSlcbiAgfSlcblxuICBpdChcInNob3VsZCBoYW5kbGUgdXRmOCBlbmNvZGluZ1wiLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoXG4gICAgICBCdWZmZXIuZnJvbShcImlkLG5hbWVcXG4xLGNhZsOpXFxuMixuYcOvdmVcIiwgXCJ1dGY4XCIpLFxuICAgIClcblxuICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZENzdlRhYmxlKHtcbiAgICAgIHBhdGgsXG4gICAgICBlbmNvZGluZzogXCJ1dGY4XCIsXG4gICAgfSlcblxuICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICB7IGlkOiAxLCBuYW1lOiBcImNhZsOpXCIgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6IFwibmHDr3ZlXCIgfSxcbiAgICBdKVxuICB9KVxuXG4gIC8vIFRPRE86IGN1cnJlbnRseSBub3Qgc3VwcG9ydGVkIGJ5IG5vZGVqcy1wb2xhcnNcbiAgaXQuc2tpcChcInNob3VsZCBoYW5kbGUgdXRmMTYgZW5jb2RpbmdcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFxuICAgICAgQnVmZmVyLmZyb20oXCJpZCxuYW1lXFxuMSxjYWbDqVxcbjIsbmHDr3ZlXCIsIFwidXRmMTZsZVwiKSxcbiAgICApXG5cbiAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRDc3ZUYWJsZSh7XG4gICAgICBwYXRoLFxuICAgICAgZW5jb2Rpbmc6IFwidXRmMTZcIixcbiAgICB9KVxuXG4gICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiY2Fmw6lcIiB9LFxuICAgICAgeyBpZDogMiwgbmFtZTogXCJuYcOvdmVcIiB9LFxuICAgIF0pXG4gIH0pXG5cbiAgLy8gVE9ETzogY3VycmVudGx5IG5vdCBzdXBwb3J0ZWQgYnkgbm9kZWpzLXBvbGFyc1xuICBpdC5za2lwKFwic2hvdWxkIGhhbmRsZSBsYXRpbjEgZW5jb2RpbmdcIiwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKFxuICAgICAgQnVmZmVyLmZyb20oXCJpZCxuYW1lXFxuMSxjYWbDqVxcbjIscsOpc3Vtw6lcIiwgXCJsYXRpbjFcIiksXG4gICAgKVxuXG4gICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkQ3N2VGFibGUoe1xuICAgICAgcGF0aCxcbiAgICAgIGVuY29kaW5nOiBcImxhdGluMVwiLFxuICAgIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJjYWbDqVwiIH0sXG4gICAgICB7IGlkOiAyLCBuYW1lOiBcInLDqXN1bcOpXCIgfSxcbiAgICBdKVxuICB9KVxufSlcblxuZGVzY3JpYmUoXCJsb2FkQ3N2VGFibGUgKGZvcm1hdD10c3YpXCIsICgpID0+IHtcbiAgaXQoXCJzaG91bGQgbG9hZCBsb2NhbCBmaWxlXCIsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBwYXRoID0gYXdhaXQgd3JpdGVUZW1wRmlsZShcImlkXFx0bmFtZVxcbjFcXHRlbmdsaXNoXFxuMlxcdOS4reaWh1wiKVxuICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZENzdlRhYmxlKHsgcGF0aCwgZm9ybWF0OiBcInRzdlwiIH0pXG5cbiAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICBdKVxuICB9KVxufSlcbiJdfQ==
|
|
@@ -30,7 +30,7 @@ describe("loadJsonTable", () => {
|
|
|
30
30
|
});
|
|
31
31
|
it("should load remote file", async () => {
|
|
32
32
|
const table = await loadJsonTable({
|
|
33
|
-
path: "https://
|
|
33
|
+
path: "https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/json/table/fixtures/table.json",
|
|
34
34
|
});
|
|
35
35
|
expect((await table.collect()).toRecords()).toEqual([
|
|
36
36
|
{ id: 1, name: "english" },
|
|
@@ -40,8 +40,8 @@ describe("loadJsonTable", () => {
|
|
|
40
40
|
it("should load remote file (multipart)", async () => {
|
|
41
41
|
const table = await loadJsonTable({
|
|
42
42
|
path: [
|
|
43
|
-
"https://
|
|
44
|
-
"https://
|
|
43
|
+
"https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/json/table/fixtures/table.json",
|
|
44
|
+
"https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/json/table/fixtures/table.json",
|
|
45
45
|
],
|
|
46
46
|
});
|
|
47
47
|
expect((await table.collect()).toRecords()).toEqual([
|
|
@@ -131,7 +131,7 @@ describe("loadJsonTable (format=jsonl)", () => {
|
|
|
131
131
|
});
|
|
132
132
|
it("should load remote file", async () => {
|
|
133
133
|
const table = await loadJsonTable({
|
|
134
|
-
path: "https://
|
|
134
|
+
path: "https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/json/table/fixtures/table.jsonl",
|
|
135
135
|
format: "jsonl",
|
|
136
136
|
});
|
|
137
137
|
expect((await table.collect()).toRecords()).toEqual([
|
|
@@ -142,8 +142,8 @@ describe("loadJsonTable (format=jsonl)", () => {
|
|
|
142
142
|
it("should load remote file (multipart)", async () => {
|
|
143
143
|
const table = await loadJsonTable({
|
|
144
144
|
path: [
|
|
145
|
-
"https://
|
|
146
|
-
"https://
|
|
145
|
+
"https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/json/table/fixtures/table.jsonl",
|
|
146
|
+
"https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/json/table/fixtures/table.jsonl",
|
|
147
147
|
],
|
|
148
148
|
format: "jsonl",
|
|
149
149
|
});
|
|
@@ -197,4 +197,4 @@ describe("loadJsonTable (format=jsonl)", () => {
|
|
|
197
197
|
});
|
|
198
198
|
});
|
|
199
199
|
});
|
|
200
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGx1Z2lucy9qc29uL3RhYmxlL2xvYWQuc3BlYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDeEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBQzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUV6QyxZQUFZLEVBQUUsQ0FBQTtBQUVkLFFBQVEsQ0FBQyxlQUFlLEVBQUUsR0FBRyxFQUFFO0lBQzdCLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLEVBQUU7UUFDL0IsRUFBRSxDQUFDLHdCQUF3QixFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ3RDLE1BQU0sSUFBSSxHQUFHLGtEQUFrRCxDQUFBO1lBQy9ELE1BQU0sSUFBSSxHQUFHLE1BQU0sYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFBO1lBRXRDLE1BQU0sS0FBSyxHQUFHLE1BQU0sYUFBYSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQTtZQUUzQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDO2dCQUNsRCxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRTtnQkFDMUIsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7YUFDdEIsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7UUFFRixFQUFFLENBQUMsb0NBQW9DLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDbEQsTUFBTSxJQUFJLEdBQUcsa0RBQWtELENBQUE7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TUFBTSxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUE7WUFFdEMsTUFBTSxLQUFLLEdBQUcsTUFBTSxhQUFhLENBQUM7Z0JBQ2hDLElBQUk7Z0JBQ0osTUFBTSxFQUFFLE9BQU87Z0JBQ2YsT0FBTyxFQUFFLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRTthQUNoQyxDQUFDLENBQUE7WUFFRixNQUFNLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDO2dCQUNsRCxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRTtnQkFDMUIsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7YUFDdEIsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgd3JpdGVUZW1wRmlsZSB9IGZyb20gXCJAZnJpY3Rpb25sZXNzLXRzL2RhdGFzZXRcIlxuaW1wb3J0IHsgZGVzY3JpYmUsIGV4cGVjdCwgaXQgfSBmcm9tIFwidml0ZXN0XCJcbmltcG9ydCB7IHVzZVJlY29yZGluZyB9IGZyb20gXCJ2aXRlc3QtcG9sbHlcIlxuaW1wb3J0IHsgbG9hZEpzb25UYWJsZSB9IGZyb20gXCIuL2xvYWQudHNcIlxuXG51c2VSZWNvcmRpbmcoKVxuXG5kZXNjcmliZShcImxvYWRKc29uVGFibGVcIiwgKCkgPT4ge1xuICBkZXNjcmliZShcImZpbGUgdmFyaWF0aW9uc1wiLCAoKSA9PiB7XG4gICAgaXQoXCJzaG91bGQgbG9hZCBsb2NhbCBmaWxlXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJvZHkgPSAnW3tcImlkXCI6MSxcIm5hbWVcIjpcImVuZ2xpc2hcIn0se1wiaWRcIjoyLFwibmFtZVwiOlwi5Lit5paHXCJ9XSdcbiAgICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKGJvZHkpXG5cbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZEpzb25UYWJsZSh7IHBhdGggfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgbG9hZCBsb2NhbCBmaWxlIChtdWx0aXBhcnQpXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJvZHkgPSAnW3tcImlkXCI6MSxcIm5hbWVcIjpcImVuZ2xpc2hcIn0se1wiaWRcIjoyLFwibmFtZVwiOlwi5Lit5paHXCJ9XSdcbiAgICAgIGNvbnN0IHBhdGgxID0gYXdhaXQgd3JpdGVUZW1wRmlsZShib2R5KVxuICAgICAgY29uc3QgcGF0aDIgPSBhd2FpdCB3cml0ZVRlbXBGaWxlKGJvZHkpXG5cbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZEpzb25UYWJsZSh7XG4gICAgICAgIHBhdGg6IFtwYXRoMSwgcGF0aDJdLFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBsb2FkIHJlbW90ZSBmaWxlXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZEpzb25UYWJsZSh7XG4gICAgICAgIHBhdGg6IFwiaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2RhdGlzdGhxL2Rwa2l0L3JlZnMvaGVhZHMvbWFpbi9qc29uL3RhYmxlL2ZpeHR1cmVzL3RhYmxlLmpzb25cIixcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIGxvYWQgcmVtb3RlIGZpbGUgKG11bHRpcGFydClcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkSnNvblRhYmxlKHtcbiAgICAgICAgcGF0aDogW1xuICAgICAgICAgIFwiaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2RhdGlzdGhxL2Rwa2l0L3JlZnMvaGVhZHMvbWFpbi9qc29uL3RhYmxlL2ZpeHR1cmVzL3RhYmxlLmpzb25cIixcbiAgICAgICAgICBcImh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9kYXRpc3RocS9kcGtpdC9yZWZzL2hlYWRzL21haW4vanNvbi90YWJsZS9maXh0dXJlcy90YWJsZS5qc29uXCIsXG4gICAgICAgIF0sXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcbiAgfSlcblxuICBkZXNjcmliZShcImRpYWxlY3QgdmFyaWF0aW9uc1wiLCAoKSA9PiB7XG4gICAgaXQoXCJzaG91bGQgaGFuZGxlIHByb3BlcnR5XCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJvZHkgPSAne1wia2V5XCI6IFt7XCJpZFwiOjEsXCJuYW1lXCI6XCJlbmdsaXNoXCJ9LHtcImlkXCI6MixcIm5hbWVcIjpcIuS4reaWh1wifV19J1xuICAgICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoYm9keSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkSnNvblRhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZGlhbGVjdDogeyBwcm9wZXJ0eTogXCJrZXlcIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgaGFuZGxlIGl0ZW0ga2V5c1wiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBib2R5ID0gJ1t7XCJpZFwiOjEsXCJuYW1lXCI6XCJlbmdsaXNoXCJ9LHtcImlkXCI6MixcIm5hbWVcIjpcIuS4reaWh1wifV0nXG4gICAgICBjb25zdCBwYXRoID0gYXdhaXQgd3JpdGVUZW1wRmlsZShib2R5KVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRKc29uVGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGl0ZW1LZXlzOiBbXCJuYW1lXCJdIH0sXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgaGFuZGxlIGl0ZW0gdHlwZSAoYXJyYXkpXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJvZHkgPSAnW1tcImlkXCIsXCJuYW1lXCJdLFsxLFwiZW5nbGlzaFwiXSxbMixcIuS4reaWh1wiXV0nXG4gICAgICBjb25zdCBwYXRoID0gYXdhaXQgd3JpdGVUZW1wRmlsZShib2R5KVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRKc29uVGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGl0ZW1UeXBlOiBcImFycmF5XCIgfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIGxvYWQgaXRlbSB0eXBlIChvYmplY3QpXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJvZHkgPSAnW3tcImlkXCI6MSxcIm5hbWVcIjpcImVuZ2xpc2hcIn0se1wiaWRcIjoyLFwibmFtZVwiOlwi5Lit5paHXCJ9XSdcbiAgICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKGJvZHkpXG5cbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZEpzb25UYWJsZSh7XG4gICAgICAgIHBhdGgsXG4gICAgICAgIGRpYWxlY3Q6IHsgaXRlbVR5cGU6IFwib2JqZWN0XCIgfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcbiAgfSlcbn0pXG5cbmRlc2NyaWJlKFwibG9hZEpzb25UYWJsZSAoZm9ybWF0PWpzb25sKVwiLCAoKSA9PiB7XG4gIGRlc2NyaWJlKFwiZmlsZSB2YXJpYXRpb25zXCIsICgpID0+IHtcbiAgICBpdChcInNob3VsZCBsb2FkIGxvY2FsIGZpbGVcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgYm9keSA9ICd7XCJpZFwiOjEsXCJuYW1lXCI6XCJlbmdsaXNoXCJ9XFxue1wiaWRcIjoyLFwibmFtZVwiOlwi5Lit5paHXCJ9J1xuICAgICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoYm9keSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkSnNvblRhYmxlKHsgcGF0aCwgZm9ybWF0OiBcImpzb25sXCIgfSlcbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIGxvYWQgbG9jYWwgZmlsZSAobXVsdGlwYXJ0KVwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBib2R5ID0gJ3tcImlkXCI6MSxcIm5hbWVcIjpcImVuZ2xpc2hcIn1cXG57XCJpZFwiOjIsXCJuYW1lXCI6XCLkuK3mlodcIn0nXG4gICAgICBjb25zdCBwYXRoMSA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoYm9keSlcbiAgICAgIGNvbnN0IHBhdGgyID0gYXdhaXQgd3JpdGVUZW1wRmlsZShib2R5KVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRKc29uVGFibGUoe1xuICAgICAgICBwYXRoOiBbcGF0aDEsIHBhdGgyXSxcbiAgICAgICAgZm9ybWF0OiBcImpzb25sXCIsXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIGxvYWQgcmVtb3RlIGZpbGVcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkSnNvblRhYmxlKHtcbiAgICAgICAgcGF0aDogXCJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vZGF0aXN0aHEvZHBraXQvcmVmcy9oZWFkcy9tYWluL2pzb24vdGFibGUvZml4dHVyZXMvdGFibGUuanNvbmxcIixcbiAgICAgICAgZm9ybWF0OiBcImpzb25sXCIsXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBsb2FkIHJlbW90ZSBmaWxlIChtdWx0aXBhcnQpXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZEpzb25UYWJsZSh7XG4gICAgICAgIHBhdGg6IFtcbiAgICAgICAgICBcImh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9kYXRpc3RocS9kcGtpdC9yZWZzL2hlYWRzL21haW4vanNvbi90YWJsZS9maXh0dXJlcy90YWJsZS5qc29ubFwiLFxuICAgICAgICAgIFwiaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2RhdGlzdGhxL2Rwa2l0L3JlZnMvaGVhZHMvbWFpbi9qc29uL3RhYmxlL2ZpeHR1cmVzL3RhYmxlLmpzb25sXCIsXG4gICAgICAgIF0sXG4gICAgICAgIGZvcm1hdDogXCJqc29ubFwiLFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG4gIH0pXG5cbiAgZGVzY3JpYmUoXCJkaWFsZWN0IHZhcmlhdGlvbnNcIiwgKCkgPT4ge1xuICAgIGl0KFwic2hvdWxkIGhhbmRsZSBpdGVtIGtleXNcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgYm9keSA9ICd7XCJpZFwiOjEsXCJuYW1lXCI6XCJlbmdsaXNoXCJ9XFxue1wiaWRcIjoyLFwibmFtZVwiOlwi5Lit5paHXCJ9J1xuICAgICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoYm9keSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkSnNvblRhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZm9ybWF0OiBcImpzb25sXCIsXG4gICAgICAgIGRpYWxlY3Q6IHsgaXRlbUtleXM6IFtcIm5hbWVcIl0gfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBoYW5kbGUgaXRlbSB0eXBlIChhcnJheSlcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgYm9keSA9ICdbXCJpZFwiLFwibmFtZVwiXVxcblsxLFwiZW5nbGlzaFwiXVxcblsyLFwi5Lit5paHXCJdJ1xuICAgICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoYm9keSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkSnNvblRhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZm9ybWF0OiBcImpzb25sXCIsXG4gICAgICAgIGRpYWxlY3Q6IHsgaXRlbVR5cGU6IFwiYXJyYXlcIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgbG9hZCBpdGVtIHR5cGUgKG9iamVjdClcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgYm9keSA9ICd7XCJpZFwiOjEsXCJuYW1lXCI6XCJlbmdsaXNoXCJ9XFxue1wiaWRcIjoyLFwibmFtZVwiOlwi5Lit5paHXCJ9J1xuICAgICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoYm9keSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkSnNvblRhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZm9ybWF0OiBcImpzb25sXCIsXG4gICAgICAgIGRpYWxlY3Q6IHsgaXRlbVR5cGU6IFwib2JqZWN0XCIgfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcbiAgfSlcbn0pXG4iXX0=
|
|
200
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGx1Z2lucy9qc29uL3RhYmxlL2xvYWQuc3BlYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDeEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBQzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUV6QyxZQUFZLEVBQUUsQ0FBQTtBQUVkLFFBQVEsQ0FBQyxlQUFlLEVBQUUsR0FBRyxFQUFFO0lBQzdCLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLEVBQUU7UUFDL0IsRUFBRSxDQUFDLHdCQUF3QixFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ3RDLE1BQU0sSUFBSSxHQUFHLGtEQUFrRCxDQUFBO1lBQy9ELE1BQU0sSUFBSSxHQUFHLE1BQU0sYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFBO1lBRXRDLE1BQU0sS0FBSyxHQUFHLE1BQU0sYUFBYSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQTtZQUUzQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDO2dCQUNsRCxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRTtnQkFDMUIsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7YUFDdEIsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7UUFFRixFQUFFLENBQUMsb0NBQW9DLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDbEQsTUFBTSxJQUFJLEdBQUcsa0RBQWtELENBQUE7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TUFBTSxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUE7WUFFdEMsTUFBTSxLQUFLLEdBQUcsTUFBTSxhQUFhLENBQUM7Z0JBQ2hDLElBQUk7Z0JBQ0osTUFBTSxFQUFFLE9BQU87Z0JBQ2YsT0FBTyxFQUFFLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRTthQUNoQyxDQUFDLENBQUE7WUFFRixNQUFNLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDO2dCQUNsRCxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRTtnQkFDMUIsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7YUFDdEIsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgd3JpdGVUZW1wRmlsZSB9IGZyb20gXCJAZnJpY3Rpb25sZXNzLXRzL2RhdGFzZXRcIlxuaW1wb3J0IHsgZGVzY3JpYmUsIGV4cGVjdCwgaXQgfSBmcm9tIFwidml0ZXN0XCJcbmltcG9ydCB7IHVzZVJlY29yZGluZyB9IGZyb20gXCJ2aXRlc3QtcG9sbHlcIlxuaW1wb3J0IHsgbG9hZEpzb25UYWJsZSB9IGZyb20gXCIuL2xvYWQudHNcIlxuXG51c2VSZWNvcmRpbmcoKVxuXG5kZXNjcmliZShcImxvYWRKc29uVGFibGVcIiwgKCkgPT4ge1xuICBkZXNjcmliZShcImZpbGUgdmFyaWF0aW9uc1wiLCAoKSA9PiB7XG4gICAgaXQoXCJzaG91bGQgbG9hZCBsb2NhbCBmaWxlXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJvZHkgPSAnW3tcImlkXCI6MSxcIm5hbWVcIjpcImVuZ2xpc2hcIn0se1wiaWRcIjoyLFwibmFtZVwiOlwi5Lit5paHXCJ9XSdcbiAgICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKGJvZHkpXG5cbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZEpzb25UYWJsZSh7IHBhdGggfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgbG9hZCBsb2NhbCBmaWxlIChtdWx0aXBhcnQpXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJvZHkgPSAnW3tcImlkXCI6MSxcIm5hbWVcIjpcImVuZ2xpc2hcIn0se1wiaWRcIjoyLFwibmFtZVwiOlwi5Lit5paHXCJ9XSdcbiAgICAgIGNvbnN0IHBhdGgxID0gYXdhaXQgd3JpdGVUZW1wRmlsZShib2R5KVxuICAgICAgY29uc3QgcGF0aDIgPSBhd2FpdCB3cml0ZVRlbXBGaWxlKGJvZHkpXG5cbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZEpzb25UYWJsZSh7XG4gICAgICAgIHBhdGg6IFtwYXRoMSwgcGF0aDJdLFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBsb2FkIHJlbW90ZSBmaWxlXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZEpzb25UYWJsZSh7XG4gICAgICAgIHBhdGg6IFwiaHR0cHM6Ly9naXRodWIuY29tL2ZyaWN0aW9ubGVzc2RhdGEvZnJpY3Rpb25sZXNzLXRzL3Jhdy9yZWZzL2hlYWRzL21haW4vdGFibGUvcGx1Z2lucy9qc29uL3RhYmxlL2ZpeHR1cmVzL3RhYmxlLmpzb25cIixcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIGxvYWQgcmVtb3RlIGZpbGUgKG11bHRpcGFydClcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkSnNvblRhYmxlKHtcbiAgICAgICAgcGF0aDogW1xuICAgICAgICAgIFwiaHR0cHM6Ly9naXRodWIuY29tL2ZyaWN0aW9ubGVzc2RhdGEvZnJpY3Rpb25sZXNzLXRzL3Jhdy9yZWZzL2hlYWRzL21haW4vdGFibGUvcGx1Z2lucy9qc29uL3RhYmxlL2ZpeHR1cmVzL3RhYmxlLmpzb25cIixcbiAgICAgICAgICBcImh0dHBzOi8vZ2l0aHViLmNvbS9mcmljdGlvbmxlc3NkYXRhL2ZyaWN0aW9ubGVzcy10cy9yYXcvcmVmcy9oZWFkcy9tYWluL3RhYmxlL3BsdWdpbnMvanNvbi90YWJsZS9maXh0dXJlcy90YWJsZS5qc29uXCIsXG4gICAgICAgIF0sXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcbiAgfSlcblxuICBkZXNjcmliZShcImRpYWxlY3QgdmFyaWF0aW9uc1wiLCAoKSA9PiB7XG4gICAgaXQoXCJzaG91bGQgaGFuZGxlIHByb3BlcnR5XCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJvZHkgPSAne1wia2V5XCI6IFt7XCJpZFwiOjEsXCJuYW1lXCI6XCJlbmdsaXNoXCJ9LHtcImlkXCI6MixcIm5hbWVcIjpcIuS4reaWh1wifV19J1xuICAgICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoYm9keSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkSnNvblRhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZGlhbGVjdDogeyBwcm9wZXJ0eTogXCJrZXlcIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgaGFuZGxlIGl0ZW0ga2V5c1wiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBib2R5ID0gJ1t7XCJpZFwiOjEsXCJuYW1lXCI6XCJlbmdsaXNoXCJ9LHtcImlkXCI6MixcIm5hbWVcIjpcIuS4reaWh1wifV0nXG4gICAgICBjb25zdCBwYXRoID0gYXdhaXQgd3JpdGVUZW1wRmlsZShib2R5KVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRKc29uVGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGl0ZW1LZXlzOiBbXCJuYW1lXCJdIH0sXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgaGFuZGxlIGl0ZW0gdHlwZSAoYXJyYXkpXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJvZHkgPSAnW1tcImlkXCIsXCJuYW1lXCJdLFsxLFwiZW5nbGlzaFwiXSxbMixcIuS4reaWh1wiXV0nXG4gICAgICBjb25zdCBwYXRoID0gYXdhaXQgd3JpdGVUZW1wRmlsZShib2R5KVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRKc29uVGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGl0ZW1UeXBlOiBcImFycmF5XCIgfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIGxvYWQgaXRlbSB0eXBlIChvYmplY3QpXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJvZHkgPSAnW3tcImlkXCI6MSxcIm5hbWVcIjpcImVuZ2xpc2hcIn0se1wiaWRcIjoyLFwibmFtZVwiOlwi5Lit5paHXCJ9XSdcbiAgICAgIGNvbnN0IHBhdGggPSBhd2FpdCB3cml0ZVRlbXBGaWxlKGJvZHkpXG5cbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZEpzb25UYWJsZSh7XG4gICAgICAgIHBhdGgsXG4gICAgICAgIGRpYWxlY3Q6IHsgaXRlbVR5cGU6IFwib2JqZWN0XCIgfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcbiAgfSlcbn0pXG5cbmRlc2NyaWJlKFwibG9hZEpzb25UYWJsZSAoZm9ybWF0PWpzb25sKVwiLCAoKSA9PiB7XG4gIGRlc2NyaWJlKFwiZmlsZSB2YXJpYXRpb25zXCIsICgpID0+IHtcbiAgICBpdChcInNob3VsZCBsb2FkIGxvY2FsIGZpbGVcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgYm9keSA9ICd7XCJpZFwiOjEsXCJuYW1lXCI6XCJlbmdsaXNoXCJ9XFxue1wiaWRcIjoyLFwibmFtZVwiOlwi5Lit5paHXCJ9J1xuICAgICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoYm9keSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkSnNvblRhYmxlKHsgcGF0aCwgZm9ybWF0OiBcImpzb25sXCIgfSlcbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIGxvYWQgbG9jYWwgZmlsZSAobXVsdGlwYXJ0KVwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBib2R5ID0gJ3tcImlkXCI6MSxcIm5hbWVcIjpcImVuZ2xpc2hcIn1cXG57XCJpZFwiOjIsXCJuYW1lXCI6XCLkuK3mlodcIn0nXG4gICAgICBjb25zdCBwYXRoMSA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoYm9keSlcbiAgICAgIGNvbnN0IHBhdGgyID0gYXdhaXQgd3JpdGVUZW1wRmlsZShib2R5KVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRKc29uVGFibGUoe1xuICAgICAgICBwYXRoOiBbcGF0aDEsIHBhdGgyXSxcbiAgICAgICAgZm9ybWF0OiBcImpzb25sXCIsXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIGxvYWQgcmVtb3RlIGZpbGVcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkSnNvblRhYmxlKHtcbiAgICAgICAgcGF0aDogXCJodHRwczovL2dpdGh1Yi5jb20vZnJpY3Rpb25sZXNzZGF0YS9mcmljdGlvbmxlc3MtdHMvcmF3L3JlZnMvaGVhZHMvbWFpbi90YWJsZS9wbHVnaW5zL2pzb24vdGFibGUvZml4dHVyZXMvdGFibGUuanNvbmxcIixcbiAgICAgICAgZm9ybWF0OiBcImpzb25sXCIsXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBsb2FkIHJlbW90ZSBmaWxlIChtdWx0aXBhcnQpXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZEpzb25UYWJsZSh7XG4gICAgICAgIHBhdGg6IFtcbiAgICAgICAgICBcImh0dHBzOi8vZ2l0aHViLmNvbS9mcmljdGlvbmxlc3NkYXRhL2ZyaWN0aW9ubGVzcy10cy9yYXcvcmVmcy9oZWFkcy9tYWluL3RhYmxlL3BsdWdpbnMvanNvbi90YWJsZS9maXh0dXJlcy90YWJsZS5qc29ubFwiLFxuICAgICAgICAgIFwiaHR0cHM6Ly9naXRodWIuY29tL2ZyaWN0aW9ubGVzc2RhdGEvZnJpY3Rpb25sZXNzLXRzL3Jhdy9yZWZzL2hlYWRzL21haW4vdGFibGUvcGx1Z2lucy9qc29uL3RhYmxlL2ZpeHR1cmVzL3RhYmxlLmpzb25sXCIsXG4gICAgICAgIF0sXG4gICAgICAgIGZvcm1hdDogXCJqc29ubFwiLFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG4gIH0pXG5cbiAgZGVzY3JpYmUoXCJkaWFsZWN0IHZhcmlhdGlvbnNcIiwgKCkgPT4ge1xuICAgIGl0KFwic2hvdWxkIGhhbmRsZSBpdGVtIGtleXNcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgYm9keSA9ICd7XCJpZFwiOjEsXCJuYW1lXCI6XCJlbmdsaXNoXCJ9XFxue1wiaWRcIjoyLFwibmFtZVwiOlwi5Lit5paHXCJ9J1xuICAgICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoYm9keSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkSnNvblRhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZm9ybWF0OiBcImpzb25sXCIsXG4gICAgICAgIGRpYWxlY3Q6IHsgaXRlbUtleXM6IFtcIm5hbWVcIl0gfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBoYW5kbGUgaXRlbSB0eXBlIChhcnJheSlcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgYm9keSA9ICdbXCJpZFwiLFwibmFtZVwiXVxcblsxLFwiZW5nbGlzaFwiXVxcblsyLFwi5Lit5paHXCJdJ1xuICAgICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoYm9keSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkSnNvblRhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZm9ybWF0OiBcImpzb25sXCIsXG4gICAgICAgIGRpYWxlY3Q6IHsgaXRlbVR5cGU6IFwiYXJyYXlcIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgbG9hZCBpdGVtIHR5cGUgKG9iamVjdClcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgYm9keSA9ICd7XCJpZFwiOjEsXCJuYW1lXCI6XCJlbmdsaXNoXCJ9XFxue1wiaWRcIjoyLFwibmFtZVwiOlwi5Lit5paHXCJ9J1xuICAgICAgY29uc3QgcGF0aCA9IGF3YWl0IHdyaXRlVGVtcEZpbGUoYm9keSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkSnNvblRhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZm9ybWF0OiBcImpzb25sXCIsXG4gICAgICAgIGRpYWxlY3Q6IHsgaXRlbVR5cGU6IFwib2JqZWN0XCIgfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcbiAgfSlcbn0pXG4iXX0=
|
|
@@ -32,7 +32,7 @@ describe("loadOdsTable", () => {
|
|
|
32
32
|
});
|
|
33
33
|
it("should load remote file", async () => {
|
|
34
34
|
const table = await loadOdsTable({
|
|
35
|
-
path: "https://
|
|
35
|
+
path: "https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/ods/table/fixtures/table.ods",
|
|
36
36
|
});
|
|
37
37
|
expect((await table.collect()).toRecords()).toEqual([
|
|
38
38
|
{ id: 1, name: "english" },
|
|
@@ -42,8 +42,8 @@ describe("loadOdsTable", () => {
|
|
|
42
42
|
it("should load multipart remote file", async () => {
|
|
43
43
|
const table = await loadOdsTable({
|
|
44
44
|
path: [
|
|
45
|
-
"https://
|
|
46
|
-
"https://
|
|
45
|
+
"https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/ods/table/fixtures/table.ods",
|
|
46
|
+
"https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/ods/table/fixtures/table.ods",
|
|
47
47
|
],
|
|
48
48
|
});
|
|
49
49
|
expect((await table.collect()).toRecords()).toEqual([
|
|
@@ -164,4 +164,4 @@ describe("loadOdsTable", () => {
|
|
|
164
164
|
});
|
|
165
165
|
});
|
|
166
166
|
});
|
|
167
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGx1Z2lucy9vZHMvdGFibGUvbG9hZC5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUMxRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsTUFBTSxRQUFRLENBQUE7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFFekMsWUFBWSxFQUFFLENBQUE7QUFFZCxNQUFNLElBQUksR0FBRyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQTtBQUMzQixNQUFNLElBQUksR0FBRyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQTtBQUMzQixNQUFNLElBQUksR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQTtBQUV0QixNQUFNLE9BQU8sR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFBO0FBQzFDLE1BQU0sT0FBTyxHQUFHLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUE7QUFFckMsUUFBUSxDQUFDLGNBQWMsRUFBRSxHQUFHLEVBQUU7SUFDNUIsUUFBUSxDQUFDLGlCQUFpQixFQUFFLEdBQUcsRUFBRTtRQUMvQixFQUFFLENBQUMsd0JBQXdCLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDdEMsTUFBTSxJQUFJLEdBQUcsZUFBZSxFQUFFLENBQUE7WUFDOUIsTUFBTSxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFB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QUFFO2FBQzlCLENBQUMsQ0FBQTtZQUVGLE1BQU0sQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUM7Z0JBQ2xELE9BQU87Z0JBQ1AsT0FBTztnQkFDUCxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTthQUMxQixDQUFDLENBQUE7UUFDSixDQUFDLENBQUMsQ0FBQTtRQUVGLEVBQUUsQ0FBQyw0QkFBNEIsRUFBRSxLQUFLLElBQUksRUFBRTtZQUMxQyxNQUFNLElBQUksR0FBRyxlQUFlLEVBQUUsQ0FBQTtZQUM5QixNQUFNLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUVsRCxNQUFNLEtBQUssR0FBRyxNQUFNLFlBQVksQ0FBQztnQkFDL0IsSUFBSTtnQkFDSixPQUFPLEVBQUUsRUFBRSxXQUFXLEVBQUUsR0FBRyxFQUFFO2FBQzlCLENBQUMsQ0FBQTtZQUVGLE1BQU0sQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUM7Z0JBQ2xELE9BQU87Z0JBQ1AsT0FBTztnQkFDUCxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRTthQUN0QixDQUFDLENBQUE7UUFDSixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUMsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRUZW1wRmlsZVBhdGggfSBmcm9tIFwiQGZyaWN0aW9ubGVzcy10cy9kYXRhc2V0XCJcbmltcG9ydCB7IGRlc2NyaWJlLCBleHBlY3QsIGl0IH0gZnJvbSBcInZpdGVzdFwiXG5pbXBvcnQgeyB1c2VSZWNvcmRpbmcgfSBmcm9tIFwidml0ZXN0LXBvbGx5XCJcbmltcG9ydCB7IGxvYWRPZHNUYWJsZSB9IGZyb20gXCIuL2xvYWQudHNcIlxuaW1wb3J0IHsgd3JpdGVUZXN0RGF0YSB9IGZyb20gXCIuL3Rlc3QudHNcIlxuXG51c2VSZWNvcmRpbmcoKVxuXG5jb25zdCByb3cxID0gW1wiaWRcIiwgXCJuYW1lXCJdXG5jb25zdCByb3cyID0gWzEsIFwiZW5nbGlzaFwiXVxuY29uc3Qgcm93MyA9IFsyLCBcIuS4reaWh1wiXVxuXG5jb25zdCByZWNvcmQxID0geyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfVxuY29uc3QgcmVjb3JkMiA9IHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfVxuXG5kZXNjcmliZShcImxvYWRPZHNUYWJsZVwiLCAoKSA9PiB7XG4gIGRlc2NyaWJlKFwiZmlsZSB2YXJpYXRpb25zXCIsICgpID0+IHtcbiAgICBpdChcInNob3VsZCBsb2FkIGxvY2FsIGZpbGVcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cxLCByb3cyLCByb3czXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkT2RzVGFibGUoeyBwYXRoIH0pXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW3JlY29yZDEsIHJlY29yZDJdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBsb2FkIGxvY2FsIGZpbGUgKG11bHRpcGFydClcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aDEgPSBnZXRUZW1wRmlsZVBhdGgoKVxuICAgICAgY29uc3QgcGF0aDIgPSBnZXRUZW1wRmlsZVBhdGgoKVxuICAgICAgYXdhaXQgd3JpdGVUZXN0RGF0YShwYXRoMSwgW3JvdzEsIHJvdzIsIHJvdzNdKVxuICAgICAgYXdhaXQgd3JpdGVUZXN0RGF0YShwYXRoMiwgW3JvdzEsIHJvdzIsIHJvdzNdKVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRPZHNUYWJsZSh7IHBhdGg6IFtwYXRoMSwgcGF0aDJdIH0pXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICByZWNvcmQxLFxuICAgICAgICByZWNvcmQyLFxuICAgICAgICByZWNvcmQxLFxuICAgICAgICByZWNvcmQyLFxuICAgICAgXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgbG9hZCByZW1vdGUgZmlsZVwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRPZHNUYWJsZSh7XG4gICAgICAgIHBhdGg6IFwiaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2RhdGlzdGhxL2Rwa2l0L3JlZnMvaGVhZHMvbWFpbi9vZHMvdGFibGUvZml4dHVyZXMvdGFibGUub2RzXCIsXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBsb2FkIG11bHRpcGFydCByZW1vdGUgZmlsZVwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRPZHNUYWJsZSh7XG4gICAgICAgIHBhdGg6IFtcbiAgICAgICAgICBcImh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9kYXRpc3RocS9kcGtpdC9yZWZzL2hlYWRzL21haW4vb2RzL3RhYmxlL2ZpeHR1cmVzL3RhYmxlLm9kc1wiLFxuICAgICAgICAgIFwiaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2RhdGlzdGhxL2Rwa2l0L3JlZnMvaGVhZHMvbWFpbi9vZHMvdGFibGUvZml4dHVyZXMvdGFibGUub2RzXCIsXG4gICAgICAgIF0sXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcbiAgfSlcblxuICBkZXNjcmliZShcImRpYWxlY3QgdmFyaWF0aW9uc1wiLCAoKSA9PiB7XG4gICAgaXQoXCJzaG91bGQgc3VwcG9ydCBzaGVldE51bWJlclwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBwYXRoID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aCwgW3JvdzEsIHJvdzIsIHJvdzNdLCB7IHNoZWV0TnVtYmVyOiAyIH0pXG5cbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZE9kc1RhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZGlhbGVjdDogeyBzaGVldE51bWJlcjogMiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtyZWNvcmQxLCByZWNvcmQyXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgc3VwcG9ydCBzaGVldE5hbWVcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cxLCByb3cyLCByb3czXSwgeyBzaGVldE5hbWU6IFwiU2hlZXQyXCIgfSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkT2RzVGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IHNoZWV0TmFtZTogXCJTaGVldDJcIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtyZWNvcmQxLCByZWNvcmQyXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgc3VwcG9ydCBubyBoZWFkZXJcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cyLCByb3czXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkT2RzVGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGhlYWRlcjogZmFsc2UgfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgZmllbGQxOiAxLCBmaWVsZDI6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgZmllbGQxOiAyLCBmaWVsZDI6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIHN1cHBvcnQgaGVhZGVyUm93cyBvZmZzZXRcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cxLCByb3cyLCByb3czXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkT2RzVGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGhlYWRlclJvd3M6IFsyXSB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyAxOiAyLCBlbmdsaXNoOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBzdXBwb3J0IG11bHRpbGluZSBoZWFkZXJSb3dzXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHBhdGggPSBnZXRUZW1wRmlsZVBhdGgoKVxuICAgICAgYXdhaXQgd3JpdGVUZXN0RGF0YShwYXRoLCBbcm93MSwgcm93Miwgcm93M10pXG5cbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZE9kc1RhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZGlhbGVjdDogeyBoZWFkZXJSb3dzOiBbMSwgMl0gfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgXCJpZCAxXCI6IDIsIFwibmFtZSBlbmdsaXNoXCI6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIHN1cHBvcnQgaGVhZGVySm9pblwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBwYXRoID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aCwgW3JvdzEsIHJvdzIsIHJvdzNdKVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRPZHNUYWJsZSh7XG4gICAgICAgIHBhdGgsXG4gICAgICAgIGRpYWxlY3Q6IHsgaGVhZGVyUm93czogWzEsIDJdLCBoZWFkZXJKb2luOiBcIi1cIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyBcImlkLTFcIjogMiwgXCJuYW1lLWVuZ2xpc2hcIjogXCLkuK3mlodcIiB9LFxuICAgICAgXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgc3VwcG9ydCBjb21tZW50Um93c1wiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBwYXRoID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aCwgW3JvdzEsIHJvdzIsIHJvdzNdKVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRPZHNUYWJsZSh7XG4gICAgICAgIHBhdGgsXG4gICAgICAgIGRpYWxlY3Q6IHsgY29tbWVudFJvd3M6IFsyXSB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtyZWNvcmQyXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgc3VwcG9ydCBjb21tZW50Q2hhclwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBwYXRoID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aCwgW3JvdzEsIHJvdzIsIHJvdzMsIFtcIiNjb21tZW50XCJdXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkT2RzVGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGNvbW1lbnRDaGFyOiBcIiNcIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtyZWNvcmQxLCByZWNvcmQyXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgaGFuZGxlIGxvbmdlciByb3dzXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHBhdGggPSBnZXRUZW1wRmlsZVBhdGgoKVxuICAgICAgYXdhaXQgd3JpdGVUZXN0RGF0YShwYXRoLCBbcm93MSwgcm93Miwgcm93MywgWzMsIFwiZ2VybWFuXCIsIFwiYmFkXCJdXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkT2RzVGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGNvbW1lbnRDaGFyOiBcIiNcIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgcmVjb3JkMSxcbiAgICAgICAgcmVjb3JkMixcbiAgICAgICAgeyBpZDogMywgbmFtZTogXCJnZXJtYW5cIiB9LFxuICAgICAgXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgaGFuZGxlIHNob3J0ZXIgcm93c1wiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBwYXRoID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aCwgW3JvdzEsIHJvdzIsIHJvdzMsIFszXV0pXG5cbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZE9kc1RhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZGlhbGVjdDogeyBjb21tZW50Q2hhcjogXCIjXCIgfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHJlY29yZDEsXG4gICAgICAgIHJlY29yZDIsXG4gICAgICAgIHsgaWQ6IDMsIG5hbWU6IG51bGwgfSxcbiAgICAgIF0pXG4gICAgfSlcbiAgfSlcbn0pXG4iXX0=
|
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGx1Z2lucy9vZHMvdGFibGUvbG9hZC5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUMxRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsTUFBTSxRQUFRLENBQUE7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFFekMsWUFBWSxFQUFFLENBQUE7QUFFZCxNQUFNLElBQUksR0FBRyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQTtBQUMzQixNQUFNLElBQUksR0FBRyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQTtBQUMzQixNQUFNLElBQUksR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQTtBQUV0QixNQUFNLE9BQU8sR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFBO0FBQzFDLE1BQU0sT0FBTyxHQUFHLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUE7QUFFckMsUUFBUSxDQUFDLGNBQWMsRUFBRSxHQUFHLEVBQUU7SUFDNUIsUUFBUSxDQUFDLGlCQUFpQixFQUFFLEdBQUcsRUFBRTtRQUMvQixFQUFFLENBQUMsd0JBQXdCLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDdEMsTUFBTSxJQUFJLEdBQUcsZUFBZSxFQUFFLENBQUE7WUFDOUIsTUFBTSxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFB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QUFFO2FBQzlCLENBQUMsQ0FBQTtZQUVGLE1BQU0sQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUM7Z0JBQ2xELE9BQU87Z0JBQ1AsT0FBTztnQkFDUCxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTthQUMxQixDQUFDLENBQUE7UUFDSixDQUFDLENBQUMsQ0FBQTtRQUVGLEVBQUUsQ0FBQyw0QkFBNEIsRUFBRSxLQUFLLElBQUksRUFBRTtZQUMxQyxNQUFNLElBQUksR0FBRyxlQUFlLEVBQUUsQ0FBQTtZQUM5QixNQUFNLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUVsRCxNQUFNLEtBQUssR0FBRyxNQUFNLFlBQVksQ0FBQztnQkFDL0IsSUFBSTtnQkFDSixPQUFPLEVBQUUsRUFBRSxXQUFXLEVBQUUsR0FBRyxFQUFFO2FBQzlCLENBQUMsQ0FBQTtZQUVGLE1BQU0sQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUM7Z0JBQ2xELE9BQU87Z0JBQ1AsT0FBTztnQkFDUCxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRTthQUN0QixDQUFDLENBQUE7UUFDSixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUMsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRUZW1wRmlsZVBhdGggfSBmcm9tIFwiQGZyaWN0aW9ubGVzcy10cy9kYXRhc2V0XCJcbmltcG9ydCB7IGRlc2NyaWJlLCBleHBlY3QsIGl0IH0gZnJvbSBcInZpdGVzdFwiXG5pbXBvcnQgeyB1c2VSZWNvcmRpbmcgfSBmcm9tIFwidml0ZXN0LXBvbGx5XCJcbmltcG9ydCB7IGxvYWRPZHNUYWJsZSB9IGZyb20gXCIuL2xvYWQudHNcIlxuaW1wb3J0IHsgd3JpdGVUZXN0RGF0YSB9IGZyb20gXCIuL3Rlc3QudHNcIlxuXG51c2VSZWNvcmRpbmcoKVxuXG5jb25zdCByb3cxID0gW1wiaWRcIiwgXCJuYW1lXCJdXG5jb25zdCByb3cyID0gWzEsIFwiZW5nbGlzaFwiXVxuY29uc3Qgcm93MyA9IFsyLCBcIuS4reaWh1wiXVxuXG5jb25zdCByZWNvcmQxID0geyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfVxuY29uc3QgcmVjb3JkMiA9IHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfVxuXG5kZXNjcmliZShcImxvYWRPZHNUYWJsZVwiLCAoKSA9PiB7XG4gIGRlc2NyaWJlKFwiZmlsZSB2YXJpYXRpb25zXCIsICgpID0+IHtcbiAgICBpdChcInNob3VsZCBsb2FkIGxvY2FsIGZpbGVcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cxLCByb3cyLCByb3czXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkT2RzVGFibGUoeyBwYXRoIH0pXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW3JlY29yZDEsIHJlY29yZDJdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBsb2FkIGxvY2FsIGZpbGUgKG11bHRpcGFydClcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aDEgPSBnZXRUZW1wRmlsZVBhdGgoKVxuICAgICAgY29uc3QgcGF0aDIgPSBnZXRUZW1wRmlsZVBhdGgoKVxuICAgICAgYXdhaXQgd3JpdGVUZXN0RGF0YShwYXRoMSwgW3JvdzEsIHJvdzIsIHJvdzNdKVxuICAgICAgYXdhaXQgd3JpdGVUZXN0RGF0YShwYXRoMiwgW3JvdzEsIHJvdzIsIHJvdzNdKVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRPZHNUYWJsZSh7IHBhdGg6IFtwYXRoMSwgcGF0aDJdIH0pXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICByZWNvcmQxLFxuICAgICAgICByZWNvcmQyLFxuICAgICAgICByZWNvcmQxLFxuICAgICAgICByZWNvcmQyLFxuICAgICAgXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgbG9hZCByZW1vdGUgZmlsZVwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRPZHNUYWJsZSh7XG4gICAgICAgIHBhdGg6IFwiaHR0cHM6Ly9naXRodWIuY29tL2ZyaWN0aW9ubGVzc2RhdGEvZnJpY3Rpb25sZXNzLXRzL3Jhdy9yZWZzL2hlYWRzL21haW4vdGFibGUvcGx1Z2lucy9vZHMvdGFibGUvZml4dHVyZXMvdGFibGUub2RzXCIsXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBsb2FkIG11bHRpcGFydCByZW1vdGUgZmlsZVwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRPZHNUYWJsZSh7XG4gICAgICAgIHBhdGg6IFtcbiAgICAgICAgICBcImh0dHBzOi8vZ2l0aHViLmNvbS9mcmljdGlvbmxlc3NkYXRhL2ZyaWN0aW9ubGVzcy10cy9yYXcvcmVmcy9oZWFkcy9tYWluL3RhYmxlL3BsdWdpbnMvb2RzL3RhYmxlL2ZpeHR1cmVzL3RhYmxlLm9kc1wiLFxuICAgICAgICAgIFwiaHR0cHM6Ly9naXRodWIuY29tL2ZyaWN0aW9ubGVzc2RhdGEvZnJpY3Rpb25sZXNzLXRzL3Jhdy9yZWZzL2hlYWRzL21haW4vdGFibGUvcGx1Z2lucy9vZHMvdGFibGUvZml4dHVyZXMvdGFibGUub2RzXCIsXG4gICAgICAgIF0sXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcbiAgfSlcblxuICBkZXNjcmliZShcImRpYWxlY3QgdmFyaWF0aW9uc1wiLCAoKSA9PiB7XG4gICAgaXQoXCJzaG91bGQgc3VwcG9ydCBzaGVldE51bWJlclwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBwYXRoID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aCwgW3JvdzEsIHJvdzIsIHJvdzNdLCB7IHNoZWV0TnVtYmVyOiAyIH0pXG5cbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZE9kc1RhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZGlhbGVjdDogeyBzaGVldE51bWJlcjogMiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtyZWNvcmQxLCByZWNvcmQyXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgc3VwcG9ydCBzaGVldE5hbWVcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cxLCByb3cyLCByb3czXSwgeyBzaGVldE5hbWU6IFwiU2hlZXQyXCIgfSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkT2RzVGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IHNoZWV0TmFtZTogXCJTaGVldDJcIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtyZWNvcmQxLCByZWNvcmQyXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgc3VwcG9ydCBubyBoZWFkZXJcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cyLCByb3czXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkT2RzVGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGhlYWRlcjogZmFsc2UgfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgZmllbGQxOiAxLCBmaWVsZDI6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgZmllbGQxOiAyLCBmaWVsZDI6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIHN1cHBvcnQgaGVhZGVyUm93cyBvZmZzZXRcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cxLCByb3cyLCByb3czXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkT2RzVGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGhlYWRlclJvd3M6IFsyXSB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyAxOiAyLCBlbmdsaXNoOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBzdXBwb3J0IG11bHRpbGluZSBoZWFkZXJSb3dzXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHBhdGggPSBnZXRUZW1wRmlsZVBhdGgoKVxuICAgICAgYXdhaXQgd3JpdGVUZXN0RGF0YShwYXRoLCBbcm93MSwgcm93Miwgcm93M10pXG5cbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZE9kc1RhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZGlhbGVjdDogeyBoZWFkZXJSb3dzOiBbMSwgMl0gfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgXCJpZCAxXCI6IDIsIFwibmFtZSBlbmdsaXNoXCI6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIHN1cHBvcnQgaGVhZGVySm9pblwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBwYXRoID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aCwgW3JvdzEsIHJvdzIsIHJvdzNdKVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRPZHNUYWJsZSh7XG4gICAgICAgIHBhdGgsXG4gICAgICAgIGRpYWxlY3Q6IHsgaGVhZGVyUm93czogWzEsIDJdLCBoZWFkZXJKb2luOiBcIi1cIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyBcImlkLTFcIjogMiwgXCJuYW1lLWVuZ2xpc2hcIjogXCLkuK3mlodcIiB9LFxuICAgICAgXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgc3VwcG9ydCBjb21tZW50Um93c1wiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBwYXRoID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aCwgW3JvdzEsIHJvdzIsIHJvdzNdKVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRPZHNUYWJsZSh7XG4gICAgICAgIHBhdGgsXG4gICAgICAgIGRpYWxlY3Q6IHsgY29tbWVudFJvd3M6IFsyXSB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtyZWNvcmQyXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgc3VwcG9ydCBjb21tZW50Q2hhclwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBwYXRoID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aCwgW3JvdzEsIHJvdzIsIHJvdzMsIFtcIiNjb21tZW50XCJdXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkT2RzVGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGNvbW1lbnRDaGFyOiBcIiNcIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtyZWNvcmQxLCByZWNvcmQyXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgaGFuZGxlIGxvbmdlciByb3dzXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHBhdGggPSBnZXRUZW1wRmlsZVBhdGgoKVxuICAgICAgYXdhaXQgd3JpdGVUZXN0RGF0YShwYXRoLCBbcm93MSwgcm93Miwgcm93MywgWzMsIFwiZ2VybWFuXCIsIFwiYmFkXCJdXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkT2RzVGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGNvbW1lbnRDaGFyOiBcIiNcIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgcmVjb3JkMSxcbiAgICAgICAgcmVjb3JkMixcbiAgICAgICAgeyBpZDogMywgbmFtZTogXCJnZXJtYW5cIiB9LFxuICAgICAgXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgaGFuZGxlIHNob3J0ZXIgcm93c1wiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBwYXRoID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aCwgW3JvdzEsIHJvdzIsIHJvdzMsIFszXV0pXG5cbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZE9kc1RhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZGlhbGVjdDogeyBjb21tZW50Q2hhcjogXCIjXCIgfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHJlY29yZDEsXG4gICAgICAgIHJlY29yZDIsXG4gICAgICAgIHsgaWQ6IDMsIG5hbWU6IG51bGwgfSxcbiAgICAgIF0pXG4gICAgfSlcbiAgfSlcbn0pXG4iXX0=
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { readFile } from "node:fs/promises";
|
|
2
2
|
import { writeFile } from "node:fs/promises";
|
|
3
3
|
import { read, utils, write } from "xlsx";
|
|
4
|
-
// We intentionally don't use
|
|
4
|
+
// We intentionally don't use frictionless's function here to isolate the tests
|
|
5
5
|
export async function readTestData(path) {
|
|
6
6
|
const buffer = await readFile(path);
|
|
7
7
|
const book = read(buffer, { type: "buffer" });
|
|
@@ -20,4 +20,4 @@ export async function writeTestData(path, rows, options) {
|
|
|
20
20
|
const buffer = write(book, { type: "buffer", bookType: "ods" });
|
|
21
21
|
await writeFile(path, buffer);
|
|
22
22
|
}
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BsdWdpbnMvb2RzL3RhYmxlL3Rlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFFekMsK0VBQStFO0FBRS9FLE1BQU0sQ0FBQyxLQUFLLFVBQVUsWUFBWSxDQUFDLElBQVk7SUFDN0MsTUFBTSxNQUFNLEdBQUcsTUFBTSxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDbkMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFBO0lBQzdDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDcEMsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUE7SUFDNUQsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQTtBQUNoRCxDQUFDO0FBRUQsTUFBTSxDQUFDLEtBQUssVUFBVSxhQUFhLENBQ2pDLElBQVksRUFDWixJQUFpQixFQUNqQixPQUFzRDtJQUV0RCxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUE7SUFDN0IsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUN0QyxNQUFNLFdBQVcsR0FBRyxPQUFPLEVBQUUsV0FBVyxJQUFJLENBQUMsQ0FBQTtJQUU3QyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsV0FBVyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDckMsTUFBTSxTQUFTLEdBQUcsT0FBTyxFQUFFLFNBQVMsSUFBSSxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQTtRQUN2RCxLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQTtJQUNqRCxDQUFDO0lBRUQsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUE7SUFDL0QsTUFBTSxTQUFTLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFBO0FBQy9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZWFkRmlsZSB9IGZyb20gXCJub2RlOmZzL3Byb21pc2VzXCJcbmltcG9ydCB7IHdyaXRlRmlsZSB9IGZyb20gXCJub2RlOmZzL3Byb21pc2VzXCJcbmltcG9ydCB7IHJlYWQsIHV0aWxzLCB3cml0ZSB9IGZyb20gXCJ4bHN4XCJcblxuLy8gV2UgaW50ZW50aW9uYWxseSBkb24ndCB1c2UgZnJpY3Rpb25sZXNzJ3MgZnVuY3Rpb24gaGVyZSB0byBpc29sYXRlIHRoZSB0ZXN0c1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVhZFRlc3REYXRhKHBhdGg6IHN0cmluZykge1xuICBjb25zdCBidWZmZXIgPSBhd2FpdCByZWFkRmlsZShwYXRoKVxuICBjb25zdCBib29rID0gcmVhZChidWZmZXIsIHsgdHlwZTogXCJidWZmZXJcIiB9KVxuICBjb25zdCBzaGVldE5hbWUgPSBib29rLlNoZWV0TmFtZXNbMF1cbiAgY29uc3Qgc2hlZXQgPSBzaGVldE5hbWUgPyBib29rLlNoZWV0c1tzaGVldE5hbWVdIDogdW5kZWZpbmVkXG4gIHJldHVybiBzaGVldCA/IHV0aWxzLnNoZWV0X3RvX2pzb24oc2hlZXQpIDogW11cbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHdyaXRlVGVzdERhdGEoXG4gIHBhdGg6IHN0cmluZyxcbiAgcm93czogdW5rbm93bltdW10sXG4gIG9wdGlvbnM/OiB7IHNoZWV0TnVtYmVyPzogbnVtYmVyOyBzaGVldE5hbWU/OiBzdHJpbmcgfSxcbikge1xuICBjb25zdCBib29rID0gdXRpbHMuYm9va19uZXcoKVxuICBjb25zdCBzaGVldCA9IHV0aWxzLmFvYV90b19zaGVldChyb3dzKVxuICBjb25zdCBzaGVldE51bWJlciA9IG9wdGlvbnM/LnNoZWV0TnVtYmVyID8/IDFcblxuICBmb3IgKGxldCBpID0gMDsgaSA8IHNoZWV0TnVtYmVyOyBpKyspIHtcbiAgICBjb25zdCBzaGVldE5hbWUgPSBvcHRpb25zPy5zaGVldE5hbWUgPz8gYFNoZWV0JHtpICsgMX1gXG4gICAgdXRpbHMuYm9va19hcHBlbmRfc2hlZXQoYm9vaywgc2hlZXQsIHNoZWV0TmFtZSlcbiAgfVxuXG4gIGNvbnN0IGJ1ZmZlciA9IHdyaXRlKGJvb2ssIHsgdHlwZTogXCJidWZmZXJcIiwgYm9va1R5cGU6IFwib2RzXCIgfSlcbiAgYXdhaXQgd3JpdGVGaWxlKHBhdGgsIGJ1ZmZlcilcbn1cbiJdfQ==
|
|
@@ -30,7 +30,7 @@ describe("loadParquetTable", () => {
|
|
|
30
30
|
});
|
|
31
31
|
it("should load remote file", async () => {
|
|
32
32
|
const table = await loadParquetTable({
|
|
33
|
-
path: "https://
|
|
33
|
+
path: "https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/parquet/table/fixtures/table.parquet",
|
|
34
34
|
});
|
|
35
35
|
expect((await table.collect()).toRecords()).toEqual([
|
|
36
36
|
{ id: 1, name: "english" },
|
|
@@ -40,8 +40,8 @@ describe("loadParquetTable", () => {
|
|
|
40
40
|
it("should load remote file (multipart)", async () => {
|
|
41
41
|
const table = await loadParquetTable({
|
|
42
42
|
path: [
|
|
43
|
-
"https://
|
|
44
|
-
"https://
|
|
43
|
+
"https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/parquet/table/fixtures/table.parquet",
|
|
44
|
+
"https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/parquet/table/fixtures/table.parquet",
|
|
45
45
|
],
|
|
46
46
|
});
|
|
47
47
|
expect((await table.collect()).toRecords()).toEqual([
|
|
@@ -53,4 +53,4 @@ describe("loadParquetTable", () => {
|
|
|
53
53
|
});
|
|
54
54
|
});
|
|
55
55
|
});
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGx1Z2lucy9wYXJxdWV0L3RhYmxlL2xvYWQuc3BlYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDMUQsT0FBTyxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDbkMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBQzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sV0FBVyxDQUFBO0FBRTVDLFlBQVksRUFBRSxDQUFBO0FBRWQsUUFBUSxDQUFDLGtCQUFrQixFQUFFLEdBQUcsRUFBRTtJQUNoQyxRQUFRLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxFQUFFO1FBQy9CLEVBQUUsQ0FBQyx3QkFBd0IsRUFBRSxLQUFLLElBQUksRUFBRTtZQUN0QyxNQUFNLElBQUksR0FBRyxlQUFlLEVBQUUsQ0FBQTtZQUM5QixFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFBO1lBRXhFLE1BQU0sS0FBSyxHQUFHLE1BQU0sZ0JBQWdCLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFBO1lBQzlDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUM7Z0JBQ2xELEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFO2dCQUMxQixFQUFFLEVBQUUsRUFB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aCB9IGZyb20gXCJAZnJpY3Rpb25sZXNzLXRzL2RhdGFzZXRcIlxuaW1wb3J0ICogYXMgcGwgZnJvbSBcIm5vZGVqcy1wb2xhcnNcIlxuaW1wb3J0IHsgZGVzY3JpYmUsIGV4cGVjdCwgaXQgfSBmcm9tIFwidml0ZXN0XCJcbmltcG9ydCB7IHVzZVJlY29yZGluZyB9IGZyb20gXCJ2aXRlc3QtcG9sbHlcIlxuaW1wb3J0IHsgbG9hZFBhcnF1ZXRUYWJsZSB9IGZyb20gXCIuL2xvYWQudHNcIlxuXG51c2VSZWNvcmRpbmcoKVxuXG5kZXNjcmliZShcImxvYWRQYXJxdWV0VGFibGVcIiwgKCkgPT4ge1xuICBkZXNjcmliZShcImZpbGUgdmFyaWF0aW9uc1wiLCAoKSA9PiB7XG4gICAgaXQoXCJzaG91bGQgbG9hZCBsb2NhbCBmaWxlXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHBhdGggPSBnZXRUZW1wRmlsZVBhdGgoKVxuICAgICAgcGwuRGF0YUZyYW1lKHsgaWQ6IFsxLCAyXSwgbmFtZTogW1wiZW5nbGlzaFwiLCBcIuS4reaWh1wiXSB9KS53cml0ZVBhcnF1ZXQocGF0aClcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkUGFycXVldFRhYmxlKHsgcGF0aCB9KVxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgbG9hZCBsb2NhbCBmaWxlIChtdWx0aXBhcnQpXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHBhdGgxID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGNvbnN0IHBhdGgyID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIHBsLkRhdGFGcmFtZSh7IGlkOiBbMSwgMl0sIG5hbWU6IFtcImVuZ2xpc2hcIiwgXCLkuK3mlodcIl0gfSkud3JpdGVQYXJxdWV0KFxuICAgICAgICBwYXRoMSxcbiAgICAgIClcbiAgICAgIHBsLkRhdGFGcmFtZSh7IGlkOiBbMSwgMl0sIG5hbWU6IFtcImVuZ2xpc2hcIiwgXCLkuK3mlodcIl0gfSkud3JpdGVQYXJxdWV0KFxuICAgICAgICBwYXRoMixcbiAgICAgIClcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkUGFycXVldFRhYmxlKHsgcGF0aDogW3BhdGgxLCBwYXRoMl0gfSlcbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgbG9hZCByZW1vdGUgZmlsZVwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRQYXJxdWV0VGFibGUoe1xuICAgICAgICBwYXRoOiBcImh0dHBzOi8vZ2l0aHViLmNvbS9mcmljdGlvbmxlc3NkYXRhL2ZyaWN0aW9ubGVzcy10cy9yYXcvcmVmcy9oZWFkcy9tYWluL3RhYmxlL3BsdWdpbnMvcGFycXVldC90YWJsZS9maXh0dXJlcy90YWJsZS5wYXJxdWV0XCIsXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBsb2FkIHJlbW90ZSBmaWxlIChtdWx0aXBhcnQpXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZFBhcnF1ZXRUYWJsZSh7XG4gICAgICAgIHBhdGg6IFtcbiAgICAgICAgICBcImh0dHBzOi8vZ2l0aHViLmNvbS9mcmljdGlvbmxlc3NkYXRhL2ZyaWN0aW9ubGVzcy10cy9yYXcvcmVmcy9oZWFkcy9tYWluL3RhYmxlL3BsdWdpbnMvcGFycXVldC90YWJsZS9maXh0dXJlcy90YWJsZS5wYXJxdWV0XCIsXG4gICAgICAgICAgXCJodHRwczovL2dpdGh1Yi5jb20vZnJpY3Rpb25sZXNzZGF0YS9mcmljdGlvbmxlc3MtdHMvcmF3L3JlZnMvaGVhZHMvbWFpbi90YWJsZS9wbHVnaW5zL3BhcnF1ZXQvdGFibGUvZml4dHVyZXMvdGFibGUucGFycXVldFwiLFxuICAgICAgICBdLFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG4gIH0pXG59KVxuIl19
|
|
@@ -32,7 +32,7 @@ describe("loadXlsxTable", () => {
|
|
|
32
32
|
});
|
|
33
33
|
it("should load remote file", async () => {
|
|
34
34
|
const table = await loadXlsxTable({
|
|
35
|
-
path: "https://
|
|
35
|
+
path: "https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/xlxs/table/fixtures/table.xlsx",
|
|
36
36
|
});
|
|
37
37
|
expect((await table.collect()).toRecords()).toEqual([
|
|
38
38
|
{ id: 1, name: "english" },
|
|
@@ -42,8 +42,8 @@ describe("loadXlsxTable", () => {
|
|
|
42
42
|
it("should load multipart remote file", async () => {
|
|
43
43
|
const table = await loadXlsxTable({
|
|
44
44
|
path: [
|
|
45
|
-
"https://
|
|
46
|
-
"https://
|
|
45
|
+
"https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/xlxs/table/fixtures/table.xlsx",
|
|
46
|
+
"https://github.com/frictionlessdata/frictionless-ts/raw/refs/heads/main/table/plugins/xlxs/table/fixtures/table.xlsx",
|
|
47
47
|
],
|
|
48
48
|
});
|
|
49
49
|
expect((await table.collect()).toRecords()).toEqual([
|
|
@@ -164,4 +164,4 @@ describe("loadXlsxTable", () => {
|
|
|
164
164
|
});
|
|
165
165
|
});
|
|
166
166
|
});
|
|
167
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGx1Z2lucy94bHhzL3RhYmxlL2xvYWQuc3BlYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDMUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBQzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBRXpDLFlBQVksRUFBRSxDQUFBO0FBRWQsTUFBTSxJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUE7QUFDM0IsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUE7QUFDM0IsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUE7QUFFdEIsTUFBTSxPQUFPLEdBQUcsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQTtBQUMxQyxNQUFNLE9BQU8sR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFBO0FBRXJDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsR0FBRyxFQUFFO0lBQzdCLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLEVBQUU7UUFDL0IsRUFBRSxDQUFDLHdCQUF3QixFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ3RDLE1BQU0sSUFBSSxHQUFHLGVBQWUsRUFBRSxDQUFBO1lBQzlCLE1BQU0sYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FB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RUFBRTthQUM5QixDQUFDLENBQUE7WUFFRixNQUFNLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDO2dCQUNsRCxPQUFPO2dCQUNQLE9BQU87Z0JBQ1AsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUU7YUFDMUIsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7UUFFRixFQUFFLENBQUMsNEJBQTRCLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDMUMsTUFBTSxJQUFJLEdBQUcsZUFBZSxFQUFFLENBQUE7WUFDOUIsTUFBTSxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFFbEQsTUFBTSxLQUFLLEdBQUcsTUFBTSxhQUFhLENBQUM7Z0JBQ2hDLElBQUk7Z0JBQ0osT0FBTyxFQUFFLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBRTthQUM5QixDQUFDLENBQUE7WUFFRixNQUFNLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDO2dCQUNsRCxPQUFPO2dCQUNQLE9BQU87Z0JBQ1AsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7YUFDdEIsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0VGVtcEZpbGVQYXRoIH0gZnJvbSBcIkBmcmljdGlvbmxlc3MtdHMvZGF0YXNldFwiXG5pbXBvcnQgeyBkZXNjcmliZSwgZXhwZWN0LCBpdCB9IGZyb20gXCJ2aXRlc3RcIlxuaW1wb3J0IHsgdXNlUmVjb3JkaW5nIH0gZnJvbSBcInZpdGVzdC1wb2xseVwiXG5pbXBvcnQgeyBsb2FkWGxzeFRhYmxlIH0gZnJvbSBcIi4vbG9hZC50c1wiXG5pbXBvcnQgeyB3cml0ZVRlc3REYXRhIH0gZnJvbSBcIi4vdGVzdC50c1wiXG5cbnVzZVJlY29yZGluZygpXG5cbmNvbnN0IHJvdzEgPSBbXCJpZFwiLCBcIm5hbWVcIl1cbmNvbnN0IHJvdzIgPSBbMSwgXCJlbmdsaXNoXCJdXG5jb25zdCByb3czID0gWzIsIFwi5Lit5paHXCJdXG5cbmNvbnN0IHJlY29yZDEgPSB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9XG5jb25zdCByZWNvcmQyID0geyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9XG5cbmRlc2NyaWJlKFwibG9hZFhsc3hUYWJsZVwiLCAoKSA9PiB7XG4gIGRlc2NyaWJlKFwiZmlsZSB2YXJpYXRpb25zXCIsICgpID0+IHtcbiAgICBpdChcInNob3VsZCBsb2FkIGxvY2FsIGZpbGVcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cxLCByb3cyLCByb3czXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkWGxzeFRhYmxlKHsgcGF0aCB9KVxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtyZWNvcmQxLCByZWNvcmQyXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgbG9hZCBsb2NhbCBmaWxlIChtdWx0aXBhcnQpXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHBhdGgxID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGNvbnN0IHBhdGgyID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aDEsIFtyb3cxLCByb3cyLCByb3czXSlcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aDIsIFtyb3cxLCByb3cyLCByb3czXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkWGxzeFRhYmxlKHsgcGF0aDogW3BhdGgxLCBwYXRoMl0gfSlcbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHJlY29yZDEsXG4gICAgICAgIHJlY29yZDIsXG4gICAgICAgIHJlY29yZDEsXG4gICAgICAgIHJlY29yZDIsXG4gICAgICBdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBsb2FkIHJlbW90ZSBmaWxlXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZFhsc3hUYWJsZSh7XG4gICAgICAgIHBhdGg6IFwiaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2RhdGlzdGhxL2Rwa2l0L3JlZnMvaGVhZHMvbWFpbi94bHN4L3RhYmxlL2ZpeHR1cmVzL3RhYmxlLnhsc3hcIixcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIGxvYWQgbXVsdGlwYXJ0IHJlbW90ZSBmaWxlXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZFhsc3hUYWJsZSh7XG4gICAgICAgIHBhdGg6IFtcbiAgICAgICAgICBcImh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9kYXRpc3RocS9kcGtpdC9yZWZzL2hlYWRzL21haW4veGxzeC90YWJsZS9maXh0dXJlcy90YWJsZS54bHN4XCIsXG4gICAgICAgICAgXCJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vZGF0aXN0aHEvZHBraXQvcmVmcy9oZWFkcy9tYWluL3hsc3gvdGFibGUvZml4dHVyZXMvdGFibGUueGxzeFwiLFxuICAgICAgICBdLFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG4gIH0pXG5cbiAgZGVzY3JpYmUoXCJkaWFsZWN0IHZhcmlhdGlvbnNcIiwgKCkgPT4ge1xuICAgIGl0KFwic2hvdWxkIHN1cHBvcnQgc2hlZXROdW1iZXJcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cxLCByb3cyLCByb3czXSwgeyBzaGVldE51bWJlcjogMiB9KVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRYbHN4VGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IHNoZWV0TnVtYmVyOiAyIH0sXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW3JlY29yZDEsIHJlY29yZDJdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBzdXBwb3J0IHNoZWV0TmFtZVwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBwYXRoID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aCwgW3JvdzEsIHJvdzIsIHJvdzNdLCB7IHNoZWV0TmFtZTogXCJTaGVldDJcIiB9KVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRYbHN4VGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IHNoZWV0TmFtZTogXCJTaGVldDJcIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtyZWNvcmQxLCByZWNvcmQyXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgc3VwcG9ydCBubyBoZWFkZXJcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cyLCByb3czXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkWGxzeFRhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZGlhbGVjdDogeyBoZWFkZXI6IGZhbHNlIH0sXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IGZpZWxkMTogMSwgZmllbGQyOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGZpZWxkMTogMiwgZmllbGQyOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBzdXBwb3J0IGhlYWRlclJvd3Mgb2Zmc2V0XCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHBhdGggPSBnZXRUZW1wRmlsZVBhdGgoKVxuICAgICAgYXdhaXQgd3JpdGVUZXN0RGF0YShwYXRoLCBbcm93MSwgcm93Miwgcm93M10pXG5cbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZFhsc3hUYWJsZSh7XG4gICAgICAgIHBhdGgsXG4gICAgICAgIGRpYWxlY3Q6IHsgaGVhZGVyUm93czogWzJdIH0sXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IDE6IDIsIGVuZ2xpc2g6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIHN1cHBvcnQgbXVsdGlsaW5lIGhlYWRlclJvd3NcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cxLCByb3cyLCByb3czXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkWGxzeFRhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZGlhbGVjdDogeyBoZWFkZXJSb3dzOiBbMSwgMl0gfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgXCJpZCAxXCI6IDIsIFwibmFtZSBlbmdsaXNoXCI6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIHN1cHBvcnQgaGVhZGVySm9pblwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBwYXRoID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aCwgW3JvdzEsIHJvdzIsIHJvdzNdKVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRYbHN4VGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGhlYWRlclJvd3M6IFsxLCAyXSwgaGVhZGVySm9pbjogXCItXCIgfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgXCJpZC0xXCI6IDIsIFwibmFtZS1lbmdsaXNoXCI6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIHN1cHBvcnQgY29tbWVudFJvd3NcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cxLCByb3cyLCByb3czXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkWGxzeFRhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZGlhbGVjdDogeyBjb21tZW50Um93czogWzJdIH0sXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW3JlY29yZDJdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBzdXBwb3J0IGNvbW1lbnRDaGFyXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHBhdGggPSBnZXRUZW1wRmlsZVBhdGgoKVxuICAgICAgYXdhaXQgd3JpdGVUZXN0RGF0YShwYXRoLCBbcm93MSwgcm93Miwgcm93MywgW1wiI2NvbW1lbnRcIl1dKVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRYbHN4VGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGNvbW1lbnRDaGFyOiBcIiNcIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtyZWNvcmQxLCByZWNvcmQyXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgaGFuZGxlIGxvbmdlciByb3dzXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHBhdGggPSBnZXRUZW1wRmlsZVBhdGgoKVxuICAgICAgYXdhaXQgd3JpdGVUZXN0RGF0YShwYXRoLCBbcm93MSwgcm93Miwgcm93MywgWzMsIFwiZ2VybWFuXCIsIFwiYmFkXCJdXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkWGxzeFRhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZGlhbGVjdDogeyBjb21tZW50Q2hhcjogXCIjXCIgfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHJlY29yZDEsXG4gICAgICAgIHJlY29yZDIsXG4gICAgICAgIHsgaWQ6IDMsIG5hbWU6IFwiZ2VybWFuXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIGhhbmRsZSBzaG9ydGVyIHJvd3NcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cxLCByb3cyLCByb3czLCBbM11dKVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRYbHN4VGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGNvbW1lbnRDaGFyOiBcIiNcIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgcmVjb3JkMSxcbiAgICAgICAgcmVjb3JkMixcbiAgICAgICAgeyBpZDogMywgbmFtZTogbnVsbCB9LFxuICAgICAgXSlcbiAgICB9KVxuICB9KVxufSlcbiJdfQ==
|
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGx1Z2lucy94bHhzL3RhYmxlL2xvYWQuc3BlYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDMUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBQzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBRXpDLFlBQVksRUFBRSxDQUFBO0FBRWQsTUFBTSxJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUE7QUFDM0IsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUE7QUFDM0IsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUE7QUFFdEIsTUFBTSxPQUFPLEdBQUcsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQTtBQUMxQyxNQUFNLE9BQU8sR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFBO0FBRXJDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsR0FBRyxFQUFFO0lBQzdCLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLEVBQUU7UUFDL0IsRUFBRSxDQUFDLHdCQUF3QixFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ3RDLE1BQU0sSUFBSSxHQUFHLGVBQWUsRUFBRSxDQUFBO1lBQzlCLE1BQU0sYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FB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RUFBRTthQUM5QixDQUFDLENBQUE7WUFFRixNQUFNLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDO2dCQUNsRCxPQUFPO2dCQUNQLE9BQU87Z0JBQ1AsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUU7YUFDMUIsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7UUFFRixFQUFFLENBQUMsNEJBQTRCLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDMUMsTUFBTSxJQUFJLEdBQUcsZUFBZSxFQUFFLENBQUE7WUFDOUIsTUFBTSxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFFbEQsTUFBTSxLQUFLLEdBQUcsTUFBTSxhQUFhLENBQUM7Z0JBQ2hDLElBQUk7Z0JBQ0osT0FBTyxFQUFFLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBRTthQUM5QixDQUFDLENBQUE7WUFFRixNQUFNLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDO2dCQUNsRCxPQUFPO2dCQUNQLE9BQU87Z0JBQ1AsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7YUFDdEIsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0VGVtcEZpbGVQYXRoIH0gZnJvbSBcIkBmcmljdGlvbmxlc3MtdHMvZGF0YXNldFwiXG5pbXBvcnQgeyBkZXNjcmliZSwgZXhwZWN0LCBpdCB9IGZyb20gXCJ2aXRlc3RcIlxuaW1wb3J0IHsgdXNlUmVjb3JkaW5nIH0gZnJvbSBcInZpdGVzdC1wb2xseVwiXG5pbXBvcnQgeyBsb2FkWGxzeFRhYmxlIH0gZnJvbSBcIi4vbG9hZC50c1wiXG5pbXBvcnQgeyB3cml0ZVRlc3REYXRhIH0gZnJvbSBcIi4vdGVzdC50c1wiXG5cbnVzZVJlY29yZGluZygpXG5cbmNvbnN0IHJvdzEgPSBbXCJpZFwiLCBcIm5hbWVcIl1cbmNvbnN0IHJvdzIgPSBbMSwgXCJlbmdsaXNoXCJdXG5jb25zdCByb3czID0gWzIsIFwi5Lit5paHXCJdXG5cbmNvbnN0IHJlY29yZDEgPSB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9XG5jb25zdCByZWNvcmQyID0geyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9XG5cbmRlc2NyaWJlKFwibG9hZFhsc3hUYWJsZVwiLCAoKSA9PiB7XG4gIGRlc2NyaWJlKFwiZmlsZSB2YXJpYXRpb25zXCIsICgpID0+IHtcbiAgICBpdChcInNob3VsZCBsb2FkIGxvY2FsIGZpbGVcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cxLCByb3cyLCByb3czXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkWGxzeFRhYmxlKHsgcGF0aCB9KVxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtyZWNvcmQxLCByZWNvcmQyXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgbG9hZCBsb2NhbCBmaWxlIChtdWx0aXBhcnQpXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHBhdGgxID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGNvbnN0IHBhdGgyID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aDEsIFtyb3cxLCByb3cyLCByb3czXSlcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aDIsIFtyb3cxLCByb3cyLCByb3czXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkWGxzeFRhYmxlKHsgcGF0aDogW3BhdGgxLCBwYXRoMl0gfSlcbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHJlY29yZDEsXG4gICAgICAgIHJlY29yZDIsXG4gICAgICAgIHJlY29yZDEsXG4gICAgICAgIHJlY29yZDIsXG4gICAgICBdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBsb2FkIHJlbW90ZSBmaWxlXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZFhsc3hUYWJsZSh7XG4gICAgICAgIHBhdGg6IFwiaHR0cHM6Ly9naXRodWIuY29tL2ZyaWN0aW9ubGVzc2RhdGEvZnJpY3Rpb25sZXNzLXRzL3Jhdy9yZWZzL2hlYWRzL21haW4vdGFibGUvcGx1Z2lucy94bHhzL3RhYmxlL2ZpeHR1cmVzL3RhYmxlLnhsc3hcIixcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgaWQ6IDEsIG5hbWU6IFwiZW5nbGlzaFwiIH0sXG4gICAgICAgIHsgaWQ6IDIsIG5hbWU6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIGxvYWQgbXVsdGlwYXJ0IHJlbW90ZSBmaWxlXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZFhsc3hUYWJsZSh7XG4gICAgICAgIHBhdGg6IFtcbiAgICAgICAgICBcImh0dHBzOi8vZ2l0aHViLmNvbS9mcmljdGlvbmxlc3NkYXRhL2ZyaWN0aW9ubGVzcy10cy9yYXcvcmVmcy9oZWFkcy9tYWluL3RhYmxlL3BsdWdpbnMveGx4cy90YWJsZS9maXh0dXJlcy90YWJsZS54bHN4XCIsXG4gICAgICAgICAgXCJodHRwczovL2dpdGh1Yi5jb20vZnJpY3Rpb25sZXNzZGF0YS9mcmljdGlvbmxlc3MtdHMvcmF3L3JlZnMvaGVhZHMvbWFpbi90YWJsZS9wbHVnaW5zL3hseHMvdGFibGUvZml4dHVyZXMvdGFibGUueGxzeFwiLFxuICAgICAgICBdLFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgeyBpZDogMSwgbmFtZTogXCJlbmdsaXNoXCIgfSxcbiAgICAgICAgeyBpZDogMiwgbmFtZTogXCLkuK3mlodcIiB9LFxuICAgICAgICB7IGlkOiAxLCBuYW1lOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGlkOiAyLCBuYW1lOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG4gIH0pXG5cbiAgZGVzY3JpYmUoXCJkaWFsZWN0IHZhcmlhdGlvbnNcIiwgKCkgPT4ge1xuICAgIGl0KFwic2hvdWxkIHN1cHBvcnQgc2hlZXROdW1iZXJcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cxLCByb3cyLCByb3czXSwgeyBzaGVldE51bWJlcjogMiB9KVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRYbHN4VGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IHNoZWV0TnVtYmVyOiAyIH0sXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW3JlY29yZDEsIHJlY29yZDJdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBzdXBwb3J0IHNoZWV0TmFtZVwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBwYXRoID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aCwgW3JvdzEsIHJvdzIsIHJvdzNdLCB7IHNoZWV0TmFtZTogXCJTaGVldDJcIiB9KVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRYbHN4VGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IHNoZWV0TmFtZTogXCJTaGVldDJcIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtyZWNvcmQxLCByZWNvcmQyXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgc3VwcG9ydCBubyBoZWFkZXJcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cyLCByb3czXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkWGxzeFRhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZGlhbGVjdDogeyBoZWFkZXI6IGZhbHNlIH0sXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IGZpZWxkMTogMSwgZmllbGQyOiBcImVuZ2xpc2hcIiB9LFxuICAgICAgICB7IGZpZWxkMTogMiwgZmllbGQyOiBcIuS4reaWh1wiIH0sXG4gICAgICBdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBzdXBwb3J0IGhlYWRlclJvd3Mgb2Zmc2V0XCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHBhdGggPSBnZXRUZW1wRmlsZVBhdGgoKVxuICAgICAgYXdhaXQgd3JpdGVUZXN0RGF0YShwYXRoLCBbcm93MSwgcm93Miwgcm93M10pXG5cbiAgICAgIGNvbnN0IHRhYmxlID0gYXdhaXQgbG9hZFhsc3hUYWJsZSh7XG4gICAgICAgIHBhdGgsXG4gICAgICAgIGRpYWxlY3Q6IHsgaGVhZGVyUm93czogWzJdIH0sXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW1xuICAgICAgICB7IDE6IDIsIGVuZ2xpc2g6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIHN1cHBvcnQgbXVsdGlsaW5lIGhlYWRlclJvd3NcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cxLCByb3cyLCByb3czXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkWGxzeFRhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZGlhbGVjdDogeyBoZWFkZXJSb3dzOiBbMSwgMl0gfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgXCJpZCAxXCI6IDIsIFwibmFtZSBlbmdsaXNoXCI6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIHN1cHBvcnQgaGVhZGVySm9pblwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBwYXRoID0gZ2V0VGVtcEZpbGVQYXRoKClcbiAgICAgIGF3YWl0IHdyaXRlVGVzdERhdGEocGF0aCwgW3JvdzEsIHJvdzIsIHJvdzNdKVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRYbHN4VGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGhlYWRlclJvd3M6IFsxLCAyXSwgaGVhZGVySm9pbjogXCItXCIgfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHsgXCJpZC0xXCI6IDIsIFwibmFtZS1lbmdsaXNoXCI6IFwi5Lit5paHXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIHN1cHBvcnQgY29tbWVudFJvd3NcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cxLCByb3cyLCByb3czXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkWGxzeFRhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZGlhbGVjdDogeyBjb21tZW50Um93czogWzJdIH0sXG4gICAgICB9KVxuXG4gICAgICBleHBlY3QoKGF3YWl0IHRhYmxlLmNvbGxlY3QoKSkudG9SZWNvcmRzKCkpLnRvRXF1YWwoW3JlY29yZDJdKVxuICAgIH0pXG5cbiAgICBpdChcInNob3VsZCBzdXBwb3J0IGNvbW1lbnRDaGFyXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHBhdGggPSBnZXRUZW1wRmlsZVBhdGgoKVxuICAgICAgYXdhaXQgd3JpdGVUZXN0RGF0YShwYXRoLCBbcm93MSwgcm93Miwgcm93MywgW1wiI2NvbW1lbnRcIl1dKVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRYbHN4VGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGNvbW1lbnRDaGFyOiBcIiNcIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtyZWNvcmQxLCByZWNvcmQyXSlcbiAgICB9KVxuXG4gICAgaXQoXCJzaG91bGQgaGFuZGxlIGxvbmdlciByb3dzXCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHBhdGggPSBnZXRUZW1wRmlsZVBhdGgoKVxuICAgICAgYXdhaXQgd3JpdGVUZXN0RGF0YShwYXRoLCBbcm93MSwgcm93Miwgcm93MywgWzMsIFwiZ2VybWFuXCIsIFwiYmFkXCJdXSlcblxuICAgICAgY29uc3QgdGFibGUgPSBhd2FpdCBsb2FkWGxzeFRhYmxlKHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgZGlhbGVjdDogeyBjb21tZW50Q2hhcjogXCIjXCIgfSxcbiAgICAgIH0pXG5cbiAgICAgIGV4cGVjdCgoYXdhaXQgdGFibGUuY29sbGVjdCgpKS50b1JlY29yZHMoKSkudG9FcXVhbChbXG4gICAgICAgIHJlY29yZDEsXG4gICAgICAgIHJlY29yZDIsXG4gICAgICAgIHsgaWQ6IDMsIG5hbWU6IFwiZ2VybWFuXCIgfSxcbiAgICAgIF0pXG4gICAgfSlcblxuICAgIGl0KFwic2hvdWxkIGhhbmRsZSBzaG9ydGVyIHJvd3NcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gICAgICBhd2FpdCB3cml0ZVRlc3REYXRhKHBhdGgsIFtyb3cxLCByb3cyLCByb3czLCBbM11dKVxuXG4gICAgICBjb25zdCB0YWJsZSA9IGF3YWl0IGxvYWRYbHN4VGFibGUoe1xuICAgICAgICBwYXRoLFxuICAgICAgICBkaWFsZWN0OiB7IGNvbW1lbnRDaGFyOiBcIiNcIiB9LFxuICAgICAgfSlcblxuICAgICAgZXhwZWN0KChhd2FpdCB0YWJsZS5jb2xsZWN0KCkpLnRvUmVjb3JkcygpKS50b0VxdWFsKFtcbiAgICAgICAgcmVjb3JkMSxcbiAgICAgICAgcmVjb3JkMixcbiAgICAgICAgeyBpZDogMywgbmFtZTogbnVsbCB9LFxuICAgICAgXSlcbiAgICB9KVxuICB9KVxufSlcbiJdfQ==
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { readFile } from "node:fs/promises";
|
|
2
2
|
import { writeFile } from "node:fs/promises";
|
|
3
3
|
import { read, utils, write } from "xlsx";
|
|
4
|
-
// We intentionally don't use
|
|
4
|
+
// We intentionally don't use frictionless's function here to isolate the tests
|
|
5
5
|
export async function readTestData(path) {
|
|
6
6
|
const buffer = await readFile(path);
|
|
7
7
|
const book = read(buffer, { type: "buffer" });
|
|
@@ -20,4 +20,4 @@ export async function writeTestData(path, rows, options) {
|
|
|
20
20
|
const buffer = write(book, { type: "buffer", bookType: "xlsx" });
|
|
21
21
|
await writeFile(path, buffer);
|
|
22
22
|
}
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BsdWdpbnMveGx4cy90YWJsZS90ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFDNUMsT0FBTyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBRXpDLCtFQUErRTtBQUUvRSxNQUFNLENBQUMsS0FBSyxVQUFVLFlBQVksQ0FBQyxJQUFZO0lBQzdDLE1BQU0sTUFBTSxHQUFHLE1BQU0sUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQ25DLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQTtJQUM3QyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ3BDLE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFBO0lBQzVELE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUE7QUFDaEQsQ0FBQztBQUVELE1BQU0sQ0FBQyxLQUFLLFVBQVUsYUFBYSxDQUNqQyxJQUFZLEVBQ1osSUFBaUIsRUFDakIsT0FBc0Q7SUFFdEQsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFBO0lBQzdCLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDdEMsTUFBTSxXQUFXLEdBQUcsT0FBTyxFQUFFLFdBQVcsSUFBSSxDQUFDLENBQUE7SUFFN0MsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFdBQVcsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQ3JDLE1BQU0sU0FBUyxHQUFHLE9BQU8sRUFBRSxTQUFTLElBQUksUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUE7UUFDdkQsS0FBSyxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUE7SUFDakQsQ0FBQztJQUVELE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFBO0lBQ2hFLE1BQU0sU0FBUyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQTtBQUMvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVhZEZpbGUgfSBmcm9tIFwibm9kZTpmcy9wcm9taXNlc1wiXG5pbXBvcnQgeyB3cml0ZUZpbGUgfSBmcm9tIFwibm9kZTpmcy9wcm9taXNlc1wiXG5pbXBvcnQgeyByZWFkLCB1dGlscywgd3JpdGUgfSBmcm9tIFwieGxzeFwiXG5cbi8vIFdlIGludGVudGlvbmFsbHkgZG9uJ3QgdXNlIGZyaWN0aW9ubGVzcydzIGZ1bmN0aW9uIGhlcmUgdG8gaXNvbGF0ZSB0aGUgdGVzdHNcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlYWRUZXN0RGF0YShwYXRoOiBzdHJpbmcpIHtcbiAgY29uc3QgYnVmZmVyID0gYXdhaXQgcmVhZEZpbGUocGF0aClcbiAgY29uc3QgYm9vayA9IHJlYWQoYnVmZmVyLCB7IHR5cGU6IFwiYnVmZmVyXCIgfSlcbiAgY29uc3Qgc2hlZXROYW1lID0gYm9vay5TaGVldE5hbWVzWzBdXG4gIGNvbnN0IHNoZWV0ID0gc2hlZXROYW1lID8gYm9vay5TaGVldHNbc2hlZXROYW1lXSA6IHVuZGVmaW5lZFxuICByZXR1cm4gc2hlZXQgPyB1dGlscy5zaGVldF90b19qc29uKHNoZWV0KSA6IFtdXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB3cml0ZVRlc3REYXRhKFxuICBwYXRoOiBzdHJpbmcsXG4gIHJvd3M6IHVua25vd25bXVtdLFxuICBvcHRpb25zPzogeyBzaGVldE51bWJlcj86IG51bWJlcjsgc2hlZXROYW1lPzogc3RyaW5nIH0sXG4pIHtcbiAgY29uc3QgYm9vayA9IHV0aWxzLmJvb2tfbmV3KClcbiAgY29uc3Qgc2hlZXQgPSB1dGlscy5hb2FfdG9fc2hlZXQocm93cylcbiAgY29uc3Qgc2hlZXROdW1iZXIgPSBvcHRpb25zPy5zaGVldE51bWJlciA/PyAxXG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBzaGVldE51bWJlcjsgaSsrKSB7XG4gICAgY29uc3Qgc2hlZXROYW1lID0gb3B0aW9ucz8uc2hlZXROYW1lID8/IGBTaGVldCR7aSArIDF9YFxuICAgIHV0aWxzLmJvb2tfYXBwZW5kX3NoZWV0KGJvb2ssIHNoZWV0LCBzaGVldE5hbWUpXG4gIH1cblxuICBjb25zdCBidWZmZXIgPSB3cml0ZShib29rLCB7IHR5cGU6IFwiYnVmZmVyXCIsIGJvb2tUeXBlOiBcInhsc3hcIiB9KVxuICBhd2FpdCB3cml0ZUZpbGUocGF0aCwgYnVmZmVyKVxufVxuIl19
|
package/build/table/inspect.js
CHANGED
|
@@ -131,21 +131,21 @@ async function inspectRows(mapping, table, options) {
|
|
|
131
131
|
const rowCheckTable = table
|
|
132
132
|
.withRowCount()
|
|
133
133
|
.withColumn(pl.col("row_nr").add(1))
|
|
134
|
-
.rename({ row_nr: "
|
|
134
|
+
.rename({ row_nr: "frictionless:number" })
|
|
135
135
|
.withColumn(pl
|
|
136
136
|
.when(check.isErrorExpr)
|
|
137
137
|
.then(pl.lit(JSON.stringify(check.errorTemplate)))
|
|
138
138
|
.otherwise(pl.lit(null))
|
|
139
|
-
.alias("
|
|
139
|
+
.alias("frictionless:error"));
|
|
140
140
|
const rowCheckFrame = await rowCheckTable
|
|
141
|
-
.filter(pl.col("
|
|
141
|
+
.filter(pl.col("frictionless:error").isNotNull())
|
|
142
142
|
.head(maxRowErrors)
|
|
143
143
|
.collect();
|
|
144
144
|
for (const row of rowCheckFrame.toRecords()) {
|
|
145
|
-
const errorTemplate = JSON.parse(row["
|
|
145
|
+
const errorTemplate = JSON.parse(row["frictionless:error"]);
|
|
146
146
|
errors.push({
|
|
147
147
|
...errorTemplate,
|
|
148
|
-
rowNumber: row["
|
|
148
|
+
rowNumber: row["frictionless:number"],
|
|
149
149
|
});
|
|
150
150
|
}
|
|
151
151
|
if (errors.length > maxErrors) {
|
|
@@ -162,4 +162,4 @@ async function inspectRows(mapping, table, options) {
|
|
|
162
162
|
}
|
|
163
163
|
return errors;
|
|
164
164
|
}
|
|
165
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zcGVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RhYmxlL2luc3BlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sU0FBUyxDQUFBO0FBSXhCLE9BQU8sS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ25DLE9BQU8sSUFBSSxNQUFNLE9BQU8sQ0FBQTtBQUN4QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFHcEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFFMUQsTUFBTSxDQUFDLEtBQUssVUFBVSxZQUFZLENBQ2hDLEtBQVksRUFDWixPQUlDO0lBRUQsTUFBTSxFQUFFLE1BQU0sRUFBRSxVQUFVLEdBQUcsR0FBRyxFQUFFLFNBQVMsR0FBRyxJQUFJLEVBQUUsR0FBRyxPQUFPLElBQUksRUFBRSxDQUFBO0lBQ3BFLE1BQU0sTUFBTSxHQUFpQixFQUFFLENBQUE7SUFFL0IsSUFBSSxNQUFNLEVBQUUsQ0FBQztRQUNYLE1BQU0sTUFBTSxHQUFHLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUNyRCxNQUFNLFlBQVksR0FBRyxlQUFlLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ25ELE1BQU0sT0FBTyxHQUFHLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUE7UUFFeEQsTUFBTSxXQUFXLEdBQUcsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDL0MsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLFdBQVcsQ0FBQyxDQUFBO1FBRTNCLE1BQU0sV0FBVyxHQUFHLE1BQU0sYUFBYSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFBO1FBQ3RFLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxXQUFXLENBQUMsQ0FBQTtRQUUzQixNQUFNLFNBQVMsR0FBRyxNQUFNLFdBQVcsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQTtRQUNsRSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUE7SUFDM0IsQ0FBQztJQUVELE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUE7QUFDbkMsQ0FBQztBQUVELFNBQVMsa0JBQWtCLENBQUMsT0FBc0I7SUFDaEQsTUFBTSxNQUFNLEdBQWlCLEVBQUUsQ0FBQTtJQUMvQixNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsSUFBSSxPQUFPLENBQUE7SUFFekQsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUE7SUFDcEMsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUE7SUFFMUMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUM3QyxNQUFNLFdBQVcsR0FBRyxZQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFBO0lBRXpELE1BQU0sYUFBYSxHQUFHLE1BQU07U0FDekIsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxRQUFRLENBQUM7U0FDNUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFBO0lBRTNCLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQTtJQUN2RCxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsTUFBTSxHQUFHLFlBQVksQ0FBQyxNQUFNLENBQUE7SUFFekQsTUFBTSxVQUFVLEdBQUcsU0FBUyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQTtJQUNoRCxNQUFNLFlBQVksR0FBRyxTQUFTLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFBO0lBQ2xELE1BQU0sb0JBQW9CLEdBQUcsU0FBUyxDQUFDLGFBQWEsRUFBRSxXQUFXLENBQUMsQ0FBQTtJQUVsRSxJQUFJLFdBQVcsS0FBSyxPQUFPLEVBQUUsQ0FBQztRQUM1QixJQUFJLFdBQVcsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNwQixNQUFNLENBQUMsSUFBSSxDQUFDO2dCQUNWLElBQUksRUFBRSxjQUFjO2dCQUNwQixVQUFVLEVBQUUsVUFBVTthQUN2QixDQUFDLENBQUE7UUFDSixDQUFDO1FBRUQsSUFBSSxhQUFhLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDdEIsTUFBTSxDQUFDLElBQUksQ0FBQztnQkFDVixJQUFJLEVBQUUsZ0JBQWdCO2dCQUN0QixVQUFVLEVBQUUsWUFBWTthQUN6QixDQUFDLENBQUE7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUksV0FBVyxLQUFLLE9BQU8sRUFBRSxDQUFDO1FBQzVCLElBQUksVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUMxQixNQUFNLENBQUMsSUFBSSxDQUFDO2dCQUNWLElBQUksRUFBRSxjQUFjO2dCQUNwQixVQUFVLEVBQUUsVUFBVTthQUN2QixDQUFDLENBQUE7UUFDSixDQUFDO1FBRUQsSUFBSSxvQkFBb0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDcEMsTUFBTSxDQUFDLElBQUksQ0FBQztnQkFDVixJQUFJLEVBQUUsZ0JBQWdCO2dCQUN0QixVQUFVLEVBQUUsb0JBQW9CO2FBQ2pDLENBQUMsQ0FBQTtRQUNKLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxXQUFXLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDN0IsSUFBSSxvQkFBb0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDcEMsTUFBTSxDQUFDLElBQUksQ0FBQztnQkFDVixJQUFJLEVBQUUsZ0JBQWdCO2dCQUN0QixVQUFVLEVBQUUsb0JBQW9CO2FBQ2pDLENBQUMsQ0FBQTtRQUNKLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxXQUFXLEtBQUssVUFBVSxFQUFFLENBQUM7UUFDL0IsSUFBSSxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzFCLE1BQU0sQ0FBQyxJQUFJLENBQUM7Z0JBQ1YsSUFBSSxFQUFFLGNBQWM7Z0JBQ3BCLFVBQVUsRUFBRSxVQUFVO2FBQ3ZCLENBQUMsQ0FBQTtRQUNKLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxXQUFXLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDOUIsSUFBSSxZQUFZLENBQUMsTUFBTSxLQUFLLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUMxQyxNQUFNLENBQUMsSUFBSSxDQUFDO2dCQUNWLElBQUksRUFBRSxnQkFBZ0I7Z0JBQ3RCLFVBQVUsRUFBRSxZQUFZO2FBQ3pCLENBQUMsQ0FBQTtRQUNKLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxNQUFNLENBQUE7QUFDZixDQUFDO0FBRUQsS0FBSyxVQUFVLGFBQWEsQ0FDMUIsT0FBc0IsRUFDdEIsS0FBWSxFQUNaLE9BRUM7SUFFRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsT0FBTyxDQUFBO0lBQzdCLE1BQU0sTUFBTSxHQUFpQixFQUFFLENBQUE7SUFDL0IsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUE7SUFDcEMsTUFBTSxXQUFXLEdBQUcsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLE1BQU0sQ0FBQTtJQUNwQyxNQUFNLGVBQWUsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFBO0lBQzdDLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUUzRCxNQUFNLGtCQUFrQixHQUFHLEtBQUssRUFBRSxLQUFhLEVBQUUsS0FBWSxFQUFFLEVBQUU7UUFDL0QsTUFBTSxZQUFZLEdBQUcsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQTtRQUM1RCxJQUFJLENBQUMsWUFBWTtZQUFFLE9BQU07UUFFekIsTUFBTSxXQUFXLEdBQUcsTUFBTSxZQUFZLENBQUMsWUFBWSxFQUFFLEtBQUssRUFBRTtZQUMxRCxTQUFTLEVBQUUsY0FBYztTQUMxQixDQUFDLENBQUE7UUFFRixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsV0FBVyxDQUFDLENBQUE7UUFDM0IsSUFBSSxNQUFNLENBQUMsTUFBTSxHQUFHLFNBQVMsRUFBRSxDQUFDO1lBQzlCLGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQTtRQUN6QixDQUFDO0lBQ0gsQ0FBQyxDQUFBO0lBRUQsSUFBSSxDQUFDO1FBQ0gsTUFBTSxJQUFJLENBQ1IsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUNwRSxFQUFFLFdBQVcsRUFBRSxDQUNoQixDQUFBO0lBQ0gsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixNQUFNLFNBQVMsR0FBRyxLQUFLLFlBQVksS0FBSyxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssWUFBWSxDQUFBO1FBQ3ZFLElBQUksQ0FBQyxTQUFTO1lBQUUsTUFBTSxLQUFLLENBQUE7SUFDN0IsQ0FBQztJQUVELE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQztBQUVELEtBQUssVUFBVSxXQUFXLENBQ3hCLE9BQXNCLEVBQ3RCLEtBQVksRUFDWixPQUE4QjtJQUU5QixNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsT0FBTyxDQUFBO0lBQzdCLE1BQU0sTUFBTSxHQUFpQixFQUFFLENBQUE7SUFDL0IsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUE7SUFDcEMsTUFBTSxXQUFXLEdBQUcsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUE7SUFDeEMsTUFBTSxlQUFlLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQTtJQUM3QyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7SUFFekQsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLEVBQUUsS0FBVSxFQUFFLEVBQUU7UUFDNUMsTUFBTSxhQUFhLEdBQUcsS0FBSzthQUN4QixZQUFZLEVBQUU7YUFDZCxVQUFVLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDbkMsTUFBTSxDQUFDLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxDQUFDO2FBQ2xDLFVBQVUsQ0FDVCxFQUFFO2FBQ0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUM7YUFDdkIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQzthQUNqRCxTQUFTLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUN2QixLQUFLLENBQUMsYUFBYSxDQUFDLENBQ3hCLENBQUE7UUFFSCxNQUFNLGFBQWEsR0FBRyxNQUFNLGFBQWE7YUFDdEMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7YUFDekMsSUFBSSxDQUFDLFlBQVksQ0FBQzthQUNsQixPQUFPLEVBQUUsQ0FBQTtRQUVaLEtBQUssTUFBTSxHQUFHLElBQUksYUFBYSxDQUFDLFNBQVMsRUFBVyxFQUFFLENBQUM7WUFDckQsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQWEsQ0FBQTtZQUNoRSxNQUFNLENBQUMsSUFBSSxDQUFDO2dCQUNWLEdBQUcsYUFBYTtnQkFDaEIsU0FBUyxFQUFFLEdBQUcsQ0FBQyxjQUFjLENBQUM7YUFDL0IsQ0FBQyxDQUFBO1FBQ0osQ0FBQztRQUVELElBQUksTUFBTSxDQUFDLE1BQU0sR0FBRyxTQUFTLEVBQUUsQ0FBQztZQUM5QixlQUFlLENBQUMsS0FBSyxFQUFFLENBQUE7UUFDekIsQ0FBQztJQUNILENBQUMsQ0FBQTtJQUVELElBQUksQ0FBQztRQUNILE1BQU0sSUFBSSxDQUNSLENBQUMsR0FBRyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3pFLEVBQUUsV0FBVyxFQUFFLENBQ2hCLENBQUE7SUFDSCxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE1BQU0sU0FBUyxHQUFHLEtBQUssWUFBWSxLQUFLLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxZQUFZLENBQUE7UUFDdkUsSUFBSSxDQUFDLFNBQVM7WUFBRSxNQUFNLEtBQUssQ0FBQTtJQUM3QixDQUFDO0lBRUQsT0FBTyxNQUFNLENBQUE7QUFDZixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IG9zIGZyb20gXCJub2RlOm9zXCJcbmltcG9ydCB0eXBlIHsgRmllbGQsIFNjaGVtYSB9IGZyb20gXCJAZnJpY3Rpb25sZXNzLXRzL21ldGFkYXRhXCJcbmltcG9ydCB0eXBlIHsgUm93RXJyb3IgfSBmcm9tIFwiQGZyaWN0aW9ubGVzcy10cy9tZXRhZGF0YVwiXG5pbXBvcnQgdHlwZSB7IFRhYmxlRXJyb3IgfSBmcm9tIFwiQGZyaWN0aW9ubGVzcy10cy9tZXRhZGF0YVwiXG5pbXBvcnQgKiBhcyBwbCBmcm9tIFwibm9kZWpzLXBvbGFyc1wiXG5pbXBvcnQgcEFsbCBmcm9tIFwicC1hbGxcIlxuaW1wb3J0IHsgaW5zcGVjdEZpZWxkIH0gZnJvbSBcIi4uL2ZpZWxkL2luZGV4LnRzXCJcbmltcG9ydCB7IGFycmF5RGlmZiB9IGZyb20gXCIuLi9oZWxwZXJzLnRzXCJcbmltcG9ydCB7IG1hdGNoU2NoZW1hRmllbGQgfSBmcm9tIFwiLi4vc2NoZW1hL2luZGV4LnRzXCJcbmltcG9ydCB7IGdldFBvbGFyc1NjaGVtYSB9IGZyb20gXCIuLi9zY2hlbWEvaW5kZXgudHNcIlxuaW1wb3J0IHR5cGUgeyBTY2hlbWFNYXBwaW5nIH0gZnJvbSBcIi4uL3NjaGVtYS9pbmRleC50c1wiXG5pbXBvcnQgdHlwZSB7IFRhYmxlIH0gZnJvbSBcIi4vVGFibGUudHNcIlxuaW1wb3J0IHsgY3JlYXRlQ2hlY2tzUm93VW5pcXVlIH0gZnJvbSBcIi4vY2hlY2tzL3VuaXF1ZS50c1wiXG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBpbnNwZWN0VGFibGUoXG4gIHRhYmxlOiBUYWJsZSxcbiAgb3B0aW9ucz86IHtcbiAgICBzY2hlbWE/OiBTY2hlbWFcbiAgICBzYW1wbGVSb3dzPzogbnVtYmVyXG4gICAgbWF4RXJyb3JzPzogbnVtYmVyXG4gIH0sXG4pIHtcbiAgY29uc3QgeyBzY2hlbWEsIHNhbXBsZVJvd3MgPSAxMDAsIG1heEVycm9ycyA9IDEwMDAgfSA9IG9wdGlvbnMgPz8ge31cbiAgY29uc3QgZXJyb3JzOiBUYWJsZUVycm9yW10gPSBbXVxuXG4gIGlmIChzY2hlbWEpIHtcbiAgICBjb25zdCBzYW1wbGUgPSBhd2FpdCB0YWJsZS5oZWFkKHNhbXBsZVJvd3MpLmNvbGxlY3QoKVxuICAgIGNvbnN0IHBvbGFyc1NjaGVtYSA9IGdldFBvbGFyc1NjaGVtYShzYW1wbGUuc2NoZW1hKVxuICAgIGNvbnN0IG1hcHBpbmcgPSB7IHNvdXJjZTogcG9sYXJzU2NoZW1hLCB0YXJnZXQ6IHNjaGVtYSB9XG5cbiAgICBjb25zdCBtYXRjaEVycm9ycyA9IGluc3BlY3RGaWVsZHNNYXRjaChtYXBwaW5nKVxuICAgIGVycm9ycy5wdXNoKC4uLm1hdGNoRXJyb3JzKVxuXG4gICAgY29uc3QgZmllbGRFcnJvcnMgPSBhd2FpdCBpbnNwZWN0RmllbGRzKG1hcHBpbmcsIHRhYmxlLCB7IG1heEVycm9ycyB9KVxuICAgIGVycm9ycy5wdXNoKC4uLmZpZWxkRXJyb3JzKVxuXG4gICAgY29uc3Qgcm93RXJyb3JzID0gYXdhaXQgaW5zcGVjdFJvd3MobWFwcGluZywgdGFibGUsIHsgbWF4RXJyb3JzIH0pXG4gICAgZXJyb3JzLnB1c2goLi4ucm93RXJyb3JzKVxuICB9XG5cbiAgcmV0dXJuIGVycm9ycy5zbGljZSgwLCBtYXhFcnJvcnMpXG59XG5cbmZ1bmN0aW9uIGluc3BlY3RGaWVsZHNNYXRjaChtYXBwaW5nOiBTY2hlbWFNYXBwaW5nKSB7XG4gIGNvbnN0IGVycm9yczogVGFibGVFcnJvcltdID0gW11cbiAgY29uc3QgZmllbGRzTWF0Y2ggPSBtYXBwaW5nLnRhcmdldC5maWVsZHNNYXRjaCA/PyBcImV4YWN0XCJcblxuICBjb25zdCBmaWVsZHMgPSBtYXBwaW5nLnRhcmdldC5maWVsZHNcbiAgY29uc3QgcG9sYXJzRmllbGRzID0gbWFwcGluZy5zb3VyY2UuZmllbGRzXG5cbiAgY29uc3QgbmFtZXMgPSBmaWVsZHMubWFwKGZpZWxkID0+IGZpZWxkLm5hbWUpXG4gIGNvbnN0IHBvbGFyc05hbWVzID0gcG9sYXJzRmllbGRzLm1hcChmaWVsZCA9PiBmaWVsZC5uYW1lKVxuXG4gIGNvbnN0IHJlcXVpcmVkTmFtZXMgPSBmaWVsZHNcbiAgICAuZmlsdGVyKGZpZWxkID0+IGZpZWxkLmNvbnN0cmFpbnRzPy5yZXF1aXJlZClcbiAgICAubWFwKGZpZWxkID0+IGZpZWxkLm5hbWUpXG5cbiAgY29uc3QgZXh0cmFGaWVsZHMgPSBwb2xhcnNGaWVsZHMubGVuZ3RoIC0gZmllbGRzLmxlbmd0aFxuICBjb25zdCBtaXNzaW5nRmllbGRzID0gZmllbGRzLmxlbmd0aCAtIHBvbGFyc0ZpZWxkcy5sZW5ndGhcblxuICBjb25zdCBleHRyYU5hbWVzID0gYXJyYXlEaWZmKHBvbGFyc05hbWVzLCBuYW1lcylcbiAgY29uc3QgbWlzc2luZ05hbWVzID0gYXJyYXlEaWZmKG5hbWVzLCBwb2xhcnNOYW1lcylcbiAgY29uc3QgbWlzc2luZ1JlcXVpcmVkTmFtZXMgPSBhcnJheURpZmYocmVxdWlyZWROYW1lcywgcG9sYXJzTmFtZXMpXG5cbiAgaWYgKGZpZWxkc01hdGNoID09PSBcImV4YWN0XCIpIHtcbiAgICBpZiAoZXh0cmFGaWVsZHMgPiAwKSB7XG4gICAgICBlcnJvcnMucHVzaCh7XG4gICAgICAgIHR5cGU6IFwiZmllbGRzL2V4dHJhXCIsXG4gICAgICAgIGZpZWxkTmFtZXM6IGV4dHJhTmFtZXMsXG4gICAgICB9KVxuICAgIH1cblxuICAgIGlmIChtaXNzaW5nRmllbGRzID4gMCkge1xuICAgICAgZXJyb3JzLnB1c2goe1xuICAgICAgICB0eXBlOiBcImZpZWxkcy9taXNzaW5nXCIsXG4gICAgICAgIGZpZWxkTmFtZXM6IG1pc3NpbmdOYW1lcyxcbiAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgaWYgKGZpZWxkc01hdGNoID09PSBcImVxdWFsXCIpIHtcbiAgICBpZiAoZXh0cmFOYW1lcy5sZW5ndGggPiAwKSB7XG4gICAgICBlcnJvcnMucHVzaCh7XG4gICAgICAgIHR5cGU6IFwiZmllbGRzL2V4dHJhXCIsXG4gICAgICAgIGZpZWxkTmFtZXM6IGV4dHJhTmFtZXMsXG4gICAgICB9KVxuICAgIH1cblxuICAgIGlmIChtaXNzaW5nUmVxdWlyZWROYW1lcy5sZW5ndGggPiAwKSB7XG4gICAgICBlcnJvcnMucHVzaCh7XG4gICAgICAgIHR5cGU6IFwiZmllbGRzL21pc3NpbmdcIixcbiAgICAgICAgZmllbGROYW1lczogbWlzc2luZ1JlcXVpcmVkTmFtZXMsXG4gICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIGlmIChmaWVsZHNNYXRjaCA9PT0gXCJzdWJzZXRcIikge1xuICAgIGlmIChtaXNzaW5nUmVxdWlyZWROYW1lcy5sZW5ndGggPiAwKSB7XG4gICAgICBlcnJvcnMucHVzaCh7XG4gICAgICAgIHR5cGU6IFwiZmllbGRzL21pc3NpbmdcIixcbiAgICAgICAgZmllbGROYW1lczogbWlzc2luZ1JlcXVpcmVkTmFtZXMsXG4gICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIGlmIChmaWVsZHNNYXRjaCA9PT0gXCJzdXBlcnNldFwiKSB7XG4gICAgaWYgKGV4dHJhTmFtZXMubGVuZ3RoID4gMCkge1xuICAgICAgZXJyb3JzLnB1c2goe1xuICAgICAgICB0eXBlOiBcImZpZWxkcy9leHRyYVwiLFxuICAgICAgICBmaWVsZE5hbWVzOiBleHRyYU5hbWVzLFxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBpZiAoZmllbGRzTWF0Y2ggPT09IFwicGFydGlhbFwiKSB7XG4gICAgaWYgKG1pc3NpbmdOYW1lcy5sZW5ndGggPT09IGZpZWxkcy5sZW5ndGgpIHtcbiAgICAgIGVycm9ycy5wdXNoKHtcbiAgICAgICAgdHlwZTogXCJmaWVsZHMvbWlzc2luZ1wiLFxuICAgICAgICBmaWVsZE5hbWVzOiBtaXNzaW5nTmFtZXMsXG4gICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBlcnJvcnNcbn1cblxuYXN5bmMgZnVuY3Rpb24gaW5zcGVjdEZpZWxkcyhcbiAgbWFwcGluZzogU2NoZW1hTWFwcGluZyxcbiAgdGFibGU6IFRhYmxlLFxuICBvcHRpb25zOiB7XG4gICAgbWF4RXJyb3JzOiBudW1iZXJcbiAgfSxcbikge1xuICBjb25zdCB7IG1heEVycm9ycyB9ID0gb3B0aW9uc1xuICBjb25zdCBlcnJvcnM6IFRhYmxlRXJyb3JbXSA9IFtdXG4gIGNvbnN0IGZpZWxkcyA9IG1hcHBpbmcudGFyZ2V0LmZpZWxkc1xuICBjb25zdCBjb25jdXJyZW5jeSA9IG9zLmNwdXMoKS5sZW5ndGhcbiAgY29uc3QgYWJvcnRDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpXG4gIGNvbnN0IG1heEZpZWxkRXJyb3JzID0gTWF0aC5jZWlsKG1heEVycm9ycyAvIGZpZWxkcy5sZW5ndGgpXG5cbiAgY29uc3QgY29sbGVjdEZpZWxkRXJyb3JzID0gYXN5bmMgKGluZGV4OiBudW1iZXIsIGZpZWxkOiBGaWVsZCkgPT4ge1xuICAgIGNvbnN0IGZpZWxkTWFwcGluZyA9IG1hdGNoU2NoZW1hRmllbGQobWFwcGluZywgZmllbGQsIGluZGV4KVxuICAgIGlmICghZmllbGRNYXBwaW5nKSByZXR1cm5cblxuICAgIGNvbnN0IGZpZWxkRXJyb3JzID0gYXdhaXQgaW5zcGVjdEZpZWxkKGZpZWxkTWFwcGluZywgdGFibGUsIHtcbiAgICAgIG1heEVycm9yczogbWF4RmllbGRFcnJvcnMsXG4gICAgfSlcblxuICAgIGVycm9ycy5wdXNoKC4uLmZpZWxkRXJyb3JzKVxuICAgIGlmIChlcnJvcnMubGVuZ3RoID4gbWF4RXJyb3JzKSB7XG4gICAgICBhYm9ydENvbnRyb2xsZXIuYWJvcnQoKVxuICAgIH1cbiAgfVxuXG4gIHRyeSB7XG4gICAgYXdhaXQgcEFsbChcbiAgICAgIGZpZWxkcy5tYXAoKGZpZWxkLCBpbmRleCkgPT4gKCkgPT4gY29sbGVjdEZpZWxkRXJyb3JzKGluZGV4LCBmaWVsZCkpLFxuICAgICAgeyBjb25jdXJyZW5jeSB9LFxuICAgIClcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBjb25zdCBpc0Fib3J0ZWQgPSBlcnJvciBpbnN0YW5jZW9mIEVycm9yICYmIGVycm9yLm5hbWUgPT09IFwiQWJvcnRFcnJvclwiXG4gICAgaWYgKCFpc0Fib3J0ZWQpIHRocm93IGVycm9yXG4gIH1cblxuICByZXR1cm4gZXJyb3JzXG59XG5cbmFzeW5jIGZ1bmN0aW9uIGluc3BlY3RSb3dzKFxuICBtYXBwaW5nOiBTY2hlbWFNYXBwaW5nLFxuICB0YWJsZTogVGFibGUsXG4gIG9wdGlvbnM6IHsgbWF4RXJyb3JzOiBudW1iZXIgfSxcbikge1xuICBjb25zdCB7IG1heEVycm9ycyB9ID0gb3B0aW9uc1xuICBjb25zdCBlcnJvcnM6IFRhYmxlRXJyb3JbXSA9IFtdXG4gIGNvbnN0IGZpZWxkcyA9IG1hcHBpbmcudGFyZ2V0LmZpZWxkc1xuICBjb25zdCBjb25jdXJyZW5jeSA9IG9zLmNwdXMoKS5sZW5ndGggLSAxXG4gIGNvbnN0IGFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKVxuICBjb25zdCBtYXhSb3dFcnJvcnMgPSBNYXRoLmNlaWwobWF4RXJyb3JzIC8gZmllbGRzLmxlbmd0aClcblxuICBjb25zdCBjb2xsZWN0Um93RXJyb3JzID0gYXN5bmMgKGNoZWNrOiBhbnkpID0+IHtcbiAgICBjb25zdCByb3dDaGVja1RhYmxlID0gdGFibGVcbiAgICAgIC53aXRoUm93Q291bnQoKVxuICAgICAgLndpdGhDb2x1bW4ocGwuY29sKFwicm93X25yXCIpLmFkZCgxKSlcbiAgICAgIC5yZW5hbWUoeyByb3dfbnI6IFwiZHBraXQ6bnVtYmVyXCIgfSlcbiAgICAgIC53aXRoQ29sdW1uKFxuICAgICAgICBwbFxuICAgICAgICAgIC53aGVuKGNoZWNrLmlzRXJyb3JFeHByKVxuICAgICAgICAgIC50aGVuKHBsLmxpdChKU09OLnN0cmluZ2lmeShjaGVjay5lcnJvclRlbXBsYXRlKSkpXG4gICAgICAgICAgLm90aGVyd2lzZShwbC5saXQobnVsbCkpXG4gICAgICAgICAgLmFsaWFzKFwiZHBraXQ6ZXJyb3JcIiksXG4gICAgICApXG5cbiAgICBjb25zdCByb3dDaGVja0ZyYW1lID0gYXdhaXQgcm93Q2hlY2tUYWJsZVxuICAgICAgLmZpbHRlcihwbC5jb2woXCJkcGtpdDplcnJvclwiKS5pc05vdE51bGwoKSlcbiAgICAgIC5oZWFkKG1heFJvd0Vycm9ycylcbiAgICAgIC5jb2xsZWN0KClcblxuICAgIGZvciAoY29uc3Qgcm93IG9mIHJvd0NoZWNrRnJhbWUudG9SZWNvcmRzKCkgYXMgYW55W10pIHtcbiAgICAgIGNvbnN0IGVycm9yVGVtcGxhdGUgPSBKU09OLnBhcnNlKHJvd1tcImRwa2l0OmVycm9yXCJdKSBhcyBSb3dFcnJvclxuICAgICAgZXJyb3JzLnB1c2goe1xuICAgICAgICAuLi5lcnJvclRlbXBsYXRlLFxuICAgICAgICByb3dOdW1iZXI6IHJvd1tcImRwa2l0Om51bWJlclwiXSxcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgaWYgKGVycm9ycy5sZW5ndGggPiBtYXhFcnJvcnMpIHtcbiAgICAgIGFib3J0Q29udHJvbGxlci5hYm9ydCgpXG4gICAgfVxuICB9XG5cbiAgdHJ5IHtcbiAgICBhd2FpdCBwQWxsKFxuICAgICAgWy4uLmNyZWF0ZUNoZWNrc1Jvd1VuaXF1ZShtYXBwaW5nKV0ubWFwKGl0ID0+ICgpID0+IGNvbGxlY3RSb3dFcnJvcnMoaXQpKSxcbiAgICAgIHsgY29uY3VycmVuY3kgfSxcbiAgICApXG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc3QgaXNBYm9ydGVkID0gZXJyb3IgaW5zdGFuY2VvZiBFcnJvciAmJiBlcnJvci5uYW1lID09PSBcIkFib3J0RXJyb3JcIlxuICAgIGlmICghaXNBYm9ydGVkKSB0aHJvdyBlcnJvclxuICB9XG5cbiAgcmV0dXJuIGVycm9yc1xufVxuIl19
|
|
165
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zcGVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RhYmxlL2luc3BlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sU0FBUyxDQUFBO0FBSXhCLE9BQU8sS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ25DLE9BQU8sSUFBSSxNQUFNLE9BQU8sQ0FBQTtBQUN4QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFHcEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFFMUQsTUFBTSxDQUFDLEtBQUssVUFBVSxZQUFZLENBQ2hDLEtBQVksRUFDWixPQUlDO0lBRUQsTUFBTSxFQUFFLE1BQU0sRUFBRSxVQUFVLEdBQUcsR0FBRyxFQUFFLFNBQVMsR0FBRyxJQUFJLEVBQUUsR0FBRyxPQUFPLElBQUksRUFBRSxDQUFBO0lBQ3BFLE1BQU0sTUFBTSxHQUFpQixFQUFFLENBQUE7SUFFL0IsSUFBSSxNQUFNLEVBQUUsQ0FBQztRQUNYLE1BQU0sTUFBTSxHQUFHLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUNyRCxNQUFNLFlBQVksR0FBRyxlQUFlLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ25ELE1BQU0sT0FBTyxHQUFHLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUE7UUFFeEQsTUFBTSxXQUFXLEdBQUcsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDL0MsTUFBTSxDQUFDLElBQUksQ0FBQyxH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LEtBQUssTUFBTSxHQUFHLElBQUksYUFBYSxDQUFDLFNBQVMsRUFBVyxFQUFFLENBQUM7WUFDckQsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsQ0FBYSxDQUFBO1lBQ3ZFLE1BQU0sQ0FBQyxJQUFJLENBQUM7Z0JBQ1YsR0FBRyxhQUFhO2dCQUNoQixTQUFTLEVBQUUsR0FBRyxDQUFDLHFCQUFxQixDQUFDO2FBQ3RDLENBQUMsQ0FBQTtRQUNKLENBQUM7UUFFRCxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsU0FBUyxFQUFFLENBQUM7WUFDOUIsZUFBZSxDQUFDLEtBQUssRUFBRSxDQUFBO1FBQ3pCLENBQUM7SUFDSCxDQUFDLENBQUE7SUFFRCxJQUFJLENBQUM7UUFDSCxNQUFNLElBQUksQ0FDUixDQUFDLEdBQUcscUJBQXFCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUN6RSxFQUFFLFdBQVcsRUFBRSxDQUNoQixDQUFBO0lBQ0gsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixNQUFNLFNBQVMsR0FBRyxLQUFLLFlBQVksS0FBSyxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssWUFBWSxDQUFBO1FBQ3ZFLElBQUksQ0FBQyxTQUFTO1lBQUUsTUFBTSxLQUFLLENBQUE7SUFDN0IsQ0FBQztJQUVELE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBvcyBmcm9tIFwibm9kZTpvc1wiXG5pbXBvcnQgdHlwZSB7IEZpZWxkLCBTY2hlbWEgfSBmcm9tIFwiQGZyaWN0aW9ubGVzcy10cy9tZXRhZGF0YVwiXG5pbXBvcnQgdHlwZSB7IFJvd0Vycm9yIH0gZnJvbSBcIkBmcmljdGlvbmxlc3MtdHMvbWV0YWRhdGFcIlxuaW1wb3J0IHR5cGUgeyBUYWJsZUVycm9yIH0gZnJvbSBcIkBmcmljdGlvbmxlc3MtdHMvbWV0YWRhdGFcIlxuaW1wb3J0ICogYXMgcGwgZnJvbSBcIm5vZGVqcy1wb2xhcnNcIlxuaW1wb3J0IHBBbGwgZnJvbSBcInAtYWxsXCJcbmltcG9ydCB7IGluc3BlY3RGaWVsZCB9IGZyb20gXCIuLi9maWVsZC9pbmRleC50c1wiXG5pbXBvcnQgeyBhcnJheURpZmYgfSBmcm9tIFwiLi4vaGVscGVycy50c1wiXG5pbXBvcnQgeyBtYXRjaFNjaGVtYUZpZWxkIH0gZnJvbSBcIi4uL3NjaGVtYS9pbmRleC50c1wiXG5pbXBvcnQgeyBnZXRQb2xhcnNTY2hlbWEgfSBmcm9tIFwiLi4vc2NoZW1hL2luZGV4LnRzXCJcbmltcG9ydCB0eXBlIHsgU2NoZW1hTWFwcGluZyB9IGZyb20gXCIuLi9zY2hlbWEvaW5kZXgudHNcIlxuaW1wb3J0IHR5cGUgeyBUYWJsZSB9IGZyb20gXCIuL1RhYmxlLnRzXCJcbmltcG9ydCB7IGNyZWF0ZUNoZWNrc1Jvd1VuaXF1ZSB9IGZyb20gXCIuL2NoZWNrcy91bmlxdWUudHNcIlxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaW5zcGVjdFRhYmxlKFxuICB0YWJsZTogVGFibGUsXG4gIG9wdGlvbnM/OiB7XG4gICAgc2NoZW1hPzogU2NoZW1hXG4gICAgc2FtcGxlUm93cz86IG51bWJlclxuICAgIG1heEVycm9ycz86IG51bWJlclxuICB9LFxuKSB7XG4gIGNvbnN0IHsgc2NoZW1hLCBzYW1wbGVSb3dzID0gMTAwLCBtYXhFcnJvcnMgPSAxMDAwIH0gPSBvcHRpb25zID8/IHt9XG4gIGNvbnN0IGVycm9yczogVGFibGVFcnJvcltdID0gW11cblxuICBpZiAoc2NoZW1hKSB7XG4gICAgY29uc3Qgc2FtcGxlID0gYXdhaXQgdGFibGUuaGVhZChzYW1wbGVSb3dzKS5jb2xsZWN0KClcbiAgICBjb25zdCBwb2xhcnNTY2hlbWEgPSBnZXRQb2xhcnNTY2hlbWEoc2FtcGxlLnNjaGVtYSlcbiAgICBjb25zdCBtYXBwaW5nID0geyBzb3VyY2U6IHBvbGFyc1NjaGVtYSwgdGFyZ2V0OiBzY2hlbWEgfVxuXG4gICAgY29uc3QgbWF0Y2hFcnJvcnMgPSBpbnNwZWN0RmllbGRzTWF0Y2gobWFwcGluZylcbiAgICBlcnJvcnMucHVzaCguLi5tYXRjaEVycm9ycylcblxuICAgIGNvbnN0IGZpZWxkRXJyb3JzID0gYXdhaXQgaW5zcGVjdEZpZWxkcyhtYXBwaW5nLCB0YWJsZSwgeyBtYXhFcnJvcnMgfSlcbiAgICBlcnJvcnMucHVzaCguLi5maWVsZEVycm9ycylcblxuICAgIGNvbnN0IHJvd0Vycm9ycyA9IGF3YWl0IGluc3BlY3RSb3dzKG1hcHBpbmcsIHRhYmxlLCB7IG1heEVycm9ycyB9KVxuICAgIGVycm9ycy5wdXNoKC4uLnJvd0Vycm9ycylcbiAgfVxuXG4gIHJldHVybiBlcnJvcnMuc2xpY2UoMCwgbWF4RXJyb3JzKVxufVxuXG5mdW5jdGlvbiBpbnNwZWN0RmllbGRzTWF0Y2gobWFwcGluZzogU2NoZW1hTWFwcGluZykge1xuICBjb25zdCBlcnJvcnM6IFRhYmxlRXJyb3JbXSA9IFtdXG4gIGNvbnN0IGZpZWxkc01hdGNoID0gbWFwcGluZy50YXJnZXQuZmllbGRzTWF0Y2ggPz8gXCJleGFjdFwiXG5cbiAgY29uc3QgZmllbGRzID0gbWFwcGluZy50YXJnZXQuZmllbGRzXG4gIGNvbnN0IHBvbGFyc0ZpZWxkcyA9IG1hcHBpbmcuc291cmNlLmZpZWxkc1xuXG4gIGNvbnN0IG5hbWVzID0gZmllbGRzLm1hcChmaWVsZCA9PiBmaWVsZC5uYW1lKVxuICBjb25zdCBwb2xhcnNOYW1lcyA9IHBvbGFyc0ZpZWxkcy5tYXAoZmllbGQgPT4gZmllbGQubmFtZSlcblxuICBjb25zdCByZXF1aXJlZE5hbWVzID0gZmllbGRzXG4gICAgLmZpbHRlcihmaWVsZCA9PiBmaWVsZC5jb25zdHJhaW50cz8ucmVxdWlyZWQpXG4gICAgLm1hcChmaWVsZCA9PiBmaWVsZC5uYW1lKVxuXG4gIGNvbnN0IGV4dHJhRmllbGRzID0gcG9sYXJzRmllbGRzLmxlbmd0aCAtIGZpZWxkcy5sZW5ndGhcbiAgY29uc3QgbWlzc2luZ0ZpZWxkcyA9IGZpZWxkcy5sZW5ndGggLSBwb2xhcnNGaWVsZHMubGVuZ3RoXG5cbiAgY29uc3QgZXh0cmFOYW1lcyA9IGFycmF5RGlmZihwb2xhcnNOYW1lcywgbmFtZXMpXG4gIGNvbnN0IG1pc3NpbmdOYW1lcyA9IGFycmF5RGlmZihuYW1lcywgcG9sYXJzTmFtZXMpXG4gIGNvbnN0IG1pc3NpbmdSZXF1aXJlZE5hbWVzID0gYXJyYXlEaWZmKHJlcXVpcmVkTmFtZXMsIHBvbGFyc05hbWVzKVxuXG4gIGlmIChmaWVsZHNNYXRjaCA9PT0gXCJleGFjdFwiKSB7XG4gICAgaWYgKGV4dHJhRmllbGRzID4gMCkge1xuICAgICAgZXJyb3JzLnB1c2goe1xuICAgICAgICB0eXBlOiBcImZpZWxkcy9leHRyYVwiLFxuICAgICAgICBmaWVsZE5hbWVzOiBleHRyYU5hbWVzLFxuICAgICAgfSlcbiAgICB9XG5cbiAgICBpZiAobWlzc2luZ0ZpZWxkcyA+IDApIHtcbiAgICAgIGVycm9ycy5wdXNoKHtcbiAgICAgICAgdHlwZTogXCJmaWVsZHMvbWlzc2luZ1wiLFxuICAgICAgICBmaWVsZE5hbWVzOiBtaXNzaW5nTmFtZXMsXG4gICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIGlmIChmaWVsZHNNYXRjaCA9PT0gXCJlcXVhbFwiKSB7XG4gICAgaWYgKGV4dHJhTmFtZXMubGVuZ3RoID4gMCkge1xuICAgICAgZXJyb3JzLnB1c2goe1xuICAgICAgICB0eXBlOiBcImZpZWxkcy9leHRyYVwiLFxuICAgICAgICBmaWVsZE5hbWVzOiBleHRyYU5hbWVzLFxuICAgICAgfSlcbiAgICB9XG5cbiAgICBpZiAobWlzc2luZ1JlcXVpcmVkTmFtZXMubGVuZ3RoID4gMCkge1xuICAgICAgZXJyb3JzLnB1c2goe1xuICAgICAgICB0eXBlOiBcImZpZWxkcy9taXNzaW5nXCIsXG4gICAgICAgIGZpZWxkTmFtZXM6IG1pc3NpbmdSZXF1aXJlZE5hbWVzLFxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBpZiAoZmllbGRzTWF0Y2ggPT09IFwic3Vic2V0XCIpIHtcbiAgICBpZiAobWlzc2luZ1JlcXVpcmVkTmFtZXMubGVuZ3RoID4gMCkge1xuICAgICAgZXJyb3JzLnB1c2goe1xuICAgICAgICB0eXBlOiBcImZpZWxkcy9taXNzaW5nXCIsXG4gICAgICAgIGZpZWxkTmFtZXM6IG1pc3NpbmdSZXF1aXJlZE5hbWVzLFxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBpZiAoZmllbGRzTWF0Y2ggPT09IFwic3VwZXJzZXRcIikge1xuICAgIGlmIChleHRyYU5hbWVzLmxlbmd0aCA+IDApIHtcbiAgICAgIGVycm9ycy5wdXNoKHtcbiAgICAgICAgdHlwZTogXCJmaWVsZHMvZXh0cmFcIixcbiAgICAgICAgZmllbGROYW1lczogZXh0cmFOYW1lcyxcbiAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgaWYgKGZpZWxkc01hdGNoID09PSBcInBhcnRpYWxcIikge1xuICAgIGlmIChtaXNzaW5nTmFtZXMubGVuZ3RoID09PSBmaWVsZHMubGVuZ3RoKSB7XG4gICAgICBlcnJvcnMucHVzaCh7XG4gICAgICAgIHR5cGU6IFwiZmllbGRzL21pc3NpbmdcIixcbiAgICAgICAgZmllbGROYW1lczogbWlzc2luZ05hbWVzLFxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZXJyb3JzXG59XG5cbmFzeW5jIGZ1bmN0aW9uIGluc3BlY3RGaWVsZHMoXG4gIG1hcHBpbmc6IFNjaGVtYU1hcHBpbmcsXG4gIHRhYmxlOiBUYWJsZSxcbiAgb3B0aW9uczoge1xuICAgIG1heEVycm9yczogbnVtYmVyXG4gIH0sXG4pIHtcbiAgY29uc3QgeyBtYXhFcnJvcnMgfSA9IG9wdGlvbnNcbiAgY29uc3QgZXJyb3JzOiBUYWJsZUVycm9yW10gPSBbXVxuICBjb25zdCBmaWVsZHMgPSBtYXBwaW5nLnRhcmdldC5maWVsZHNcbiAgY29uc3QgY29uY3VycmVuY3kgPSBvcy5jcHVzKCkubGVuZ3RoXG4gIGNvbnN0IGFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKVxuICBjb25zdCBtYXhGaWVsZEVycm9ycyA9IE1hdGguY2VpbChtYXhFcnJvcnMgLyBmaWVsZHMubGVuZ3RoKVxuXG4gIGNvbnN0IGNvbGxlY3RGaWVsZEVycm9ycyA9IGFzeW5jIChpbmRleDogbnVtYmVyLCBmaWVsZDogRmllbGQpID0+IHtcbiAgICBjb25zdCBmaWVsZE1hcHBpbmcgPSBtYXRjaFNjaGVtYUZpZWxkKG1hcHBpbmcsIGZpZWxkLCBpbmRleClcbiAgICBpZiAoIWZpZWxkTWFwcGluZykgcmV0dXJuXG5cbiAgICBjb25zdCBmaWVsZEVycm9ycyA9IGF3YWl0IGluc3BlY3RGaWVsZChmaWVsZE1hcHBpbmcsIHRhYmxlLCB7XG4gICAgICBtYXhFcnJvcnM6IG1heEZpZWxkRXJyb3JzLFxuICAgIH0pXG5cbiAgICBlcnJvcnMucHVzaCguLi5maWVsZEVycm9ycylcbiAgICBpZiAoZXJyb3JzLmxlbmd0aCA+IG1heEVycm9ycykge1xuICAgICAgYWJvcnRDb250cm9sbGVyLmFib3J0KClcbiAgICB9XG4gIH1cblxuICB0cnkge1xuICAgIGF3YWl0IHBBbGwoXG4gICAgICBmaWVsZHMubWFwKChmaWVsZCwgaW5kZXgpID0+ICgpID0+IGNvbGxlY3RGaWVsZEVycm9ycyhpbmRleCwgZmllbGQpKSxcbiAgICAgIHsgY29uY3VycmVuY3kgfSxcbiAgICApXG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc3QgaXNBYm9ydGVkID0gZXJyb3IgaW5zdGFuY2VvZiBFcnJvciAmJiBlcnJvci5uYW1lID09PSBcIkFib3J0RXJyb3JcIlxuICAgIGlmICghaXNBYm9ydGVkKSB0aHJvdyBlcnJvclxuICB9XG5cbiAgcmV0dXJuIGVycm9yc1xufVxuXG5hc3luYyBmdW5jdGlvbiBpbnNwZWN0Um93cyhcbiAgbWFwcGluZzogU2NoZW1hTWFwcGluZyxcbiAgdGFibGU6IFRhYmxlLFxuICBvcHRpb25zOiB7IG1heEVycm9yczogbnVtYmVyIH0sXG4pIHtcbiAgY29uc3QgeyBtYXhFcnJvcnMgfSA9IG9wdGlvbnNcbiAgY29uc3QgZXJyb3JzOiBUYWJsZUVycm9yW10gPSBbXVxuICBjb25zdCBmaWVsZHMgPSBtYXBwaW5nLnRhcmdldC5maWVsZHNcbiAgY29uc3QgY29uY3VycmVuY3kgPSBvcy5jcHVzKCkubGVuZ3RoIC0gMVxuICBjb25zdCBhYm9ydENvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKClcbiAgY29uc3QgbWF4Um93RXJyb3JzID0gTWF0aC5jZWlsKG1heEVycm9ycyAvIGZpZWxkcy5sZW5ndGgpXG5cbiAgY29uc3QgY29sbGVjdFJvd0Vycm9ycyA9IGFzeW5jIChjaGVjazogYW55KSA9PiB7XG4gICAgY29uc3Qgcm93Q2hlY2tUYWJsZSA9IHRhYmxlXG4gICAgICAud2l0aFJvd0NvdW50KClcbiAgICAgIC53aXRoQ29sdW1uKHBsLmNvbChcInJvd19uclwiKS5hZGQoMSkpXG4gICAgICAucmVuYW1lKHsgcm93X25yOiBcImZyaWN0aW9ubGVzczpudW1iZXJcIiB9KVxuICAgICAgLndpdGhDb2x1bW4oXG4gICAgICAgIHBsXG4gICAgICAgICAgLndoZW4oY2hlY2suaXNFcnJvckV4cHIpXG4gICAgICAgICAgLnRoZW4ocGwubGl0KEpTT04uc3RyaW5naWZ5KGNoZWNrLmVycm9yVGVtcGxhdGUpKSlcbiAgICAgICAgICAub3RoZXJ3aXNlKHBsLmxpdChudWxsKSlcbiAgICAgICAgICAuYWxpYXMoXCJmcmljdGlvbmxlc3M6ZXJyb3JcIiksXG4gICAgICApXG5cbiAgICBjb25zdCByb3dDaGVja0ZyYW1lID0gYXdhaXQgcm93Q2hlY2tUYWJsZVxuICAgICAgLmZpbHRlcihwbC5jb2woXCJmcmljdGlvbmxlc3M6ZXJyb3JcIikuaXNOb3ROdWxsKCkpXG4gICAgICAuaGVhZChtYXhSb3dFcnJvcnMpXG4gICAgICAuY29sbGVjdCgpXG5cbiAgICBmb3IgKGNvbnN0IHJvdyBvZiByb3dDaGVja0ZyYW1lLnRvUmVjb3JkcygpIGFzIGFueVtdKSB7XG4gICAgICBjb25zdCBlcnJvclRlbXBsYXRlID0gSlNPTi5wYXJzZShyb3dbXCJmcmljdGlvbmxlc3M6ZXJyb3JcIl0pIGFzIFJvd0Vycm9yXG4gICAgICBlcnJvcnMucHVzaCh7XG4gICAgICAgIC4uLmVycm9yVGVtcGxhdGUsXG4gICAgICAgIHJvd051bWJlcjogcm93W1wiZnJpY3Rpb25sZXNzOm51bWJlclwiXSxcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgaWYgKGVycm9ycy5sZW5ndGggPiBtYXhFcnJvcnMpIHtcbiAgICAgIGFib3J0Q29udHJvbGxlci5hYm9ydCgpXG4gICAgfVxuICB9XG5cbiAgdHJ5IHtcbiAgICBhd2FpdCBwQWxsKFxuICAgICAgWy4uLmNyZWF0ZUNoZWNrc1Jvd1VuaXF1ZShtYXBwaW5nKV0ubWFwKGl0ID0+ICgpID0+IGNvbGxlY3RSb3dFcnJvcnMoaXQpKSxcbiAgICAgIHsgY29uY3VycmVuY3kgfSxcbiAgICApXG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc3QgaXNBYm9ydGVkID0gZXJyb3IgaW5zdGFuY2VvZiBFcnJvciAmJiBlcnJvci5uYW1lID09PSBcIkFib3J0RXJyb3JcIlxuICAgIGlmICghaXNBYm9ydGVkKSB0aHJvdyBlcnJvclxuICB9XG5cbiAgcmV0dXJuIGVycm9yc1xufVxuIl19
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@frictionless-ts/table",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "1.0.
|
|
4
|
+
"version": "1.0.2",
|
|
5
5
|
"exports": "./build/index.js",
|
|
6
6
|
"sideEffects": false,
|
|
7
7
|
"files": [
|
|
@@ -36,8 +36,8 @@
|
|
|
36
36
|
"nodejs-polars": "^0.22.2",
|
|
37
37
|
"p-all": "^5.0.1",
|
|
38
38
|
"xlsx": "https://cdn.sheetjs.com/xlsx-0.20.3/xlsx-0.20.3.tgz",
|
|
39
|
-
"@frictionless-ts/metadata": "1.0.
|
|
40
|
-
"@frictionless-ts/dataset": "1.0.
|
|
39
|
+
"@frictionless-ts/metadata": "1.0.2",
|
|
40
|
+
"@frictionless-ts/dataset": "1.0.2"
|
|
41
41
|
},
|
|
42
42
|
"scripts": {
|
|
43
43
|
"build": "tsc"
|