diff --git a/.gitignore b/.gitignore index ec0cabb..ebe089d 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ /dist /.mfsu .swc +.DS_Store \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..d94a004 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "cSpell.words": ["Dexie"] +} diff --git a/README.md b/README.md index b55ba2b..dbb6d93 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,32 @@ # Kumi Koa + Umi = Kumi, an framework for Chrome extension + +## Directory structure + +```bash +├── config # Build and Environment Configuration +├── mock +├── public # Static resources +└── src + ├── assets # Media resources, including img, svg + ├── components # Frontend Public components + │ ├── AccountInfo + │ └── Guide + ├── constants # Static data structures + ├── extension # Chrome extension files + │ ├── background # Service worker + │ ├── common # some common tools or structures for Service Worker and content script + │ └── content # Content scripts, inject to WebSite + ├── models # Front-end status containers + ├── pages # Front-end pages (Popup UIs) + │ ├── Access + │ ├── Create + │ ├── Home + │ ├── Send + │ └── Table + ├── services # Front-end services (API definition) + │ └── demo + └── utils # Front-end utilities + └── tools +``` diff --git a/config/config.ts b/config/config.ts index ba293ef..6fe3a7f 100644 --- a/config/config.ts +++ b/config/config.ts @@ -1,9 +1,9 @@ import { defineConfig } from '@umijs/max' -// import fs from 'fs' +import fs from 'fs' import GenerateJsonPlugin from 'generate-json-webpack-plugin' +import path from 'path' +import type { Compiler } from 'webpack' -// import path from 'path' -// import type { Compiler } from 'webpack' import manifest from './manifest' import routes from './routes' @@ -35,10 +35,6 @@ export default defineConfig({ jsMinifierOptions: { keepNames: true, }, - codeSplitting: { - jsStrategy: 'depPerChunk', - jsStrategyOptions: {}, - }, polyfill: { imports: ['core-js/stable'], }, @@ -53,6 +49,21 @@ export default defineConfig({ memo.plugins.delete('hmr') } + memo.plugin('fixCSP').use( + class { + apply(compiler: Compiler) { + compiler.hooks.done.tap('fixCSP', () => { + const htmlPath = path.resolve(__dirname, '../dist/index.html') + const html = fs.readFileSync(htmlPath).toString() + fs.writeFileSync( + htmlPath, + html.replace(/