esbuild-plugin-cache
URL importを使えるようにするesbuild plugin
import mapも使える
/icons/github.icondalcib/esbuild-plugin-cache
https://deno.land/x/esbuild_plugin_cache
exbuild --externalと衝突するのが難点
PR出したいtakker.icon
なんてPR書けばいいのかな?
enable the \`extenal\` optionでいいかな?
一旦Issue書いて、それを参照する形でPRだすのがよさそう
https://github.com/dalcib/esbuild-plugin-cache/issues/5 みたいに
タイトルはThrow Error when \`external\` is set
Accessing build options | esbuild - Pluginsを使えば良さそう
2021-05-25 17:22:40 できた
Denoから使うのが簡単
code:sh
git clone https://github.com/rhysd/react-vim-wasm
cd react-vim-wasm
deno run --prompt --allow-net=raw.githubusercontent.com,esm.sh,cdn.esm.sh --allow-read=./,~/.cache/esbuild --allow-write=./ --unstable -r=https://scrapbox.io/api/code/takker/esbuild-plugin-cache/sample.js https://scrapbox.io/api/code/takker/esbuild-plugin-cache/sample.js
code:sample.js
import * as esbuild from 'https://deno.land/x/esbuild/mod.js';
import { cache } from 'https://raw.githubusercontent.com/takker99/esbuild-plugin-cache/master/deno/mod.ts';
const importmap = {
imports: {
'vim-wasm': 'https://esm.sh/vim-wasm/vimwasm.js',
},
};
const {code} = await esbuild.build({
entryPoints: 'index.ts',
outfile: 'index.min.js',
bundle: true,
minify: true,
platform: 'neutral',
jsxFactory: 'h',
jsxFragment: 'Fragment',
external: 'react',
plugins: cache({ importmap, directory: './cache' }),
});
esbuild.stop();
#2021-05-25 04:14:21