Skip to content

Commit a586347

Browse files
committed
Add provider sync script
1 parent 98b6bc5 commit a586347

File tree

6 files changed

+7514
-630
lines changed

6 files changed

+7514
-630
lines changed

deno.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@
1010
"author": "@extractus",
1111
"license": "MIT",
1212
"tasks": {
13-
"build": "deno run -A ./scripts/build_npm.ts"
13+
"build": "deno run -A ./scripts/build_npm.ts",
14+
"sync": "deno run --allow-net --allow-write --allow-read scripts/sync.ts"
1415
},
1516
"imports": {
1617
"@deno/dnt": "jsr:@deno/dnt@^0.41.2"

scripts/sync.ts

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
#!/usr/bin/env deno run --allow-net --allow-write --allow-read
2+
3+
import { existsSync } from "https://deno.land/std/fs/exists.ts"
4+
5+
import { getJson } from "../utils/retrieve.ts";
6+
import { simplify } from "../utils/provider.ts";
7+
8+
const source = "https://oembed.com/providers.json";
9+
const latest = "./utils/providers.latest.ts";
10+
const prev = "./utils/providers.prev.ts";
11+
const original = "./utils/providers.original.json";
12+
13+
const saveOriginal = (data: any, file: string) => {
14+
15+
};
16+
17+
const sync = async () => {
18+
try {
19+
const result = await getJson(source);
20+
Deno.writeTextFileSync(original, JSON.stringify(result, undefined, 2), { create: true });
21+
22+
const arr = simplify(result);
23+
const data = JSON.stringify(arr, undefined, 2);
24+
25+
// backup previous version
26+
if (existsSync(latest)) {
27+
Deno.copyFileSync(latest, prev);
28+
}
29+
30+
const syncTime = new Date().toISOString();
31+
32+
Deno.writeTextFileSync(
33+
latest,
34+
[
35+
`// provider data, synchronized at ${syncTime}`,
36+
"",
37+
`export const providers = ${data};`,
38+
"",
39+
].join("\n"),
40+
{ create: true }
41+
);
42+
43+
console.log("Providers list has been updated");
44+
} catch (err) {
45+
console.trace(err);
46+
}
47+
};
48+
49+
sync();
File renamed without changes.

0 commit comments

Comments
 (0)