vim-jpのuser情報をscrapbox json dataに変換
vim-jp slacklog/log-dataにあるuser情報をscrapbox json dataに変換してみる
/takker-test-vim-jp
2021-07-01 19:00:43 テスト終了
#generalへの参加日時をuser pageの作成日時にしたい
code:sh
deno run --allow-write=./users.json --allow-net=raw.githubusercontent.com -r=https://scrapbox.io/api/code/takker/vim-jpのuser情報をscrapbox_json_dataに変換/script.ts https://scrapbox.io/api/code/takker/vim-jpのuser情報をscrapbox_json_dataに変換/script.ts
code:script.ts
import {getUsers} from './mod.ts';
const pages = (await getUsers()).map(({name, image}) => ({
title: name,
lines: [
name,
[${image}],
'',
'#member',
],
}));
await Deno.writeTextFile('users.json', JSON.stringify({pages}));
library
code:mod.ts
type User = {
id: string;
name: string;
real_name: string;
profile: {
image_24?: string;
image_32?: string;
image_48?: string;
image_72?: string;
image_192?: string;
image_512?: string;
image_1024?: string;
image_original?: string;
};
};
export async function getUsers() {
const res = await fetch('https://raw.githubusercontent.com/vim-jp/slacklog/log-data/slacklog_data/users.json');
const users = (await res.json()) as User[];
return users.map(({
id,
name,
real_name,
profile: {
image_24,
image_32,
image_48,
image_72,
image_192,
image_512,
image_1024,
image_original,
},
}) =>{
const title = real_name || name;
const image = image_original || image_1024 || image_512 || image_192 || image_72 || image_48 || image_32 || image_24;
return {id, name: title, image};
});
}
#2021-07-02 00:25:07
#2021-07-01 18:40:48