From 2c0810117e67c5de245abf0720dca01571bc25ab Mon Sep 17 00:00:00 2001 From: yalda Date: Wed, 6 Jul 2022 23:34:03 +0800 Subject: [PATCH] feat(temp):add inferno framework, update docs --- CHANGELOG.md | 4 +- index.js | 129 +++++++++++++++++--- index.spec.ts | 4 +- template-inferno-js/options.html | 13 ++ template-inferno-js/package.json | 33 +++++ template-inferno-js/popup.html | 13 ++ template-inferno-js/public/icons/logo.ico | Bin 0 -> 4429 bytes template-inferno-js/public/icons/logo.svg | 2 + template-inferno-js/public/img/logo-128.png | Bin 0 -> 3186 bytes template-inferno-js/public/img/logo-16.png | Bin 0 -> 486 bytes template-inferno-js/public/img/logo-34.png | Bin 0 -> 783 bytes template-inferno-js/public/img/logo-48.png | Bin 0 -> 1094 bytes template-inferno-js/src/assets/inferno.svg | 1 + template-inferno-js/src/assets/logo.png | Bin 0 -> 8176 bytes template-inferno-js/src/background/index.js | 3 + template-inferno-js/src/content/index.js | 3 + template-inferno-js/src/manifest.js | 36 ++++++ template-inferno-js/src/options/Options.css | 38 ++++++ template-inferno-js/src/options/Options.jsx | 22 ++++ template-inferno-js/src/options/index.css | 30 +++++ template-inferno-js/src/options/index.jsx | 5 + template-inferno-js/src/popup/Popup.css | 38 ++++++ template-inferno-js/src/popup/Popup.jsx | 22 ++++ template-inferno-js/src/popup/index.css | 30 +++++ template-inferno-js/src/popup/index.jsx | 5 + template-inferno-js/vite.config.js | 22 ++++ template-inferno-ts/options.html | 13 ++ template-inferno-ts/package.json | 34 ++++++ template-inferno-ts/popup.html | 13 ++ template-inferno-ts/public/icons/logo.ico | Bin 0 -> 4429 bytes template-inferno-ts/public/icons/logo.svg | 2 + template-inferno-ts/public/img/logo-128.png | Bin 0 -> 3186 bytes template-inferno-ts/public/img/logo-16.png | Bin 0 -> 486 bytes template-inferno-ts/public/img/logo-34.png | Bin 0 -> 783 bytes template-inferno-ts/public/img/logo-48.png | Bin 0 -> 1094 bytes template-inferno-ts/src/assets/inferno.svg | 1 + template-inferno-ts/src/assets/logo.png | Bin 0 -> 8176 bytes template-inferno-ts/src/background/index.ts | 3 + template-inferno-ts/src/content/index.ts | 3 + template-inferno-ts/src/global.d.ts | 1 + template-inferno-ts/src/manifest.ts | 36 ++++++ template-inferno-ts/src/options/Options.css | 38 ++++++ template-inferno-ts/src/options/Options.tsx | 22 ++++ template-inferno-ts/src/options/index.css | 30 +++++ template-inferno-ts/src/options/index.tsx | 5 + template-inferno-ts/src/popup/Popup.css | 38 ++++++ template-inferno-ts/src/popup/Popup.tsx | 22 ++++ template-inferno-ts/src/popup/index.css | 30 +++++ template-inferno-ts/src/popup/index.tsx | 5 + template-inferno-ts/tsconfig.json | 23 ++++ template-inferno-ts/tsconfig.node.json | 8 ++ template-inferno-ts/vite.config.ts | 22 ++++ template-lit-js/options.html | 2 +- template-lit-js/popup.html | 2 +- template-lit-ts/options.html | 2 +- template-lit-ts/popup.html | 2 +- template-preact-js/options.html | 2 +- template-preact-ts/options.html | 2 +- template-qwik-js/options.html | 2 +- template-qwik-ts/options.html | 2 +- template-react-js/options.html | 2 +- template-react-ts/options.html | 2 +- template-svelte-js/options.html | 2 +- template-svelte-ts/options.html | 2 +- template-vanilla-js/options.html | 2 +- template-vanilla-ts/options.html | 2 +- template-vue-js/options.html | 2 +- template-vue-ts/options.html | 2 +- 68 files changed, 794 insertions(+), 40 deletions(-) create mode 100644 template-inferno-js/options.html create mode 100644 template-inferno-js/package.json create mode 100644 template-inferno-js/popup.html create mode 100644 template-inferno-js/public/icons/logo.ico create mode 100644 template-inferno-js/public/icons/logo.svg create mode 100644 template-inferno-js/public/img/logo-128.png create mode 100644 template-inferno-js/public/img/logo-16.png create mode 100644 template-inferno-js/public/img/logo-34.png create mode 100644 template-inferno-js/public/img/logo-48.png create mode 100644 template-inferno-js/src/assets/inferno.svg create mode 100644 template-inferno-js/src/assets/logo.png create mode 100644 template-inferno-js/src/background/index.js create mode 100644 template-inferno-js/src/content/index.js create mode 100644 template-inferno-js/src/manifest.js create mode 100644 template-inferno-js/src/options/Options.css create mode 100644 template-inferno-js/src/options/Options.jsx create mode 100644 template-inferno-js/src/options/index.css create mode 100644 template-inferno-js/src/options/index.jsx create mode 100644 template-inferno-js/src/popup/Popup.css create mode 100644 template-inferno-js/src/popup/Popup.jsx create mode 100644 template-inferno-js/src/popup/index.css create mode 100644 template-inferno-js/src/popup/index.jsx create mode 100644 template-inferno-js/vite.config.js create mode 100644 template-inferno-ts/options.html create mode 100644 template-inferno-ts/package.json create mode 100644 template-inferno-ts/popup.html create mode 100644 template-inferno-ts/public/icons/logo.ico create mode 100644 template-inferno-ts/public/icons/logo.svg create mode 100644 template-inferno-ts/public/img/logo-128.png create mode 100644 template-inferno-ts/public/img/logo-16.png create mode 100644 template-inferno-ts/public/img/logo-34.png create mode 100644 template-inferno-ts/public/img/logo-48.png create mode 100644 template-inferno-ts/src/assets/inferno.svg create mode 100644 template-inferno-ts/src/assets/logo.png create mode 100644 template-inferno-ts/src/background/index.ts create mode 100644 template-inferno-ts/src/content/index.ts create mode 100644 template-inferno-ts/src/global.d.ts create mode 100644 template-inferno-ts/src/manifest.ts create mode 100644 template-inferno-ts/src/options/Options.css create mode 100644 template-inferno-ts/src/options/Options.tsx create mode 100644 template-inferno-ts/src/options/index.css create mode 100644 template-inferno-ts/src/options/index.tsx create mode 100644 template-inferno-ts/src/popup/Popup.css create mode 100644 template-inferno-ts/src/popup/Popup.tsx create mode 100644 template-inferno-ts/src/popup/index.css create mode 100644 template-inferno-ts/src/popup/index.tsx create mode 100644 template-inferno-ts/tsconfig.json create mode 100644 template-inferno-ts/tsconfig.node.json create mode 100644 template-inferno-ts/vite.config.ts diff --git a/CHANGELOG.md b/CHANGELOG.md index 3085eac..e45c91c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,9 +9,9 @@ Summary 5. version timestamp follow the yyyy.MM.dd format ``` -## 0.4.0 [2022.07.05] +## 0.4.0 [2022.07.06] -- feat: add qwik framework templates +- feat: add inferno framework templates - perf: update mustache CHANGELOG, README, DOCS, add tags & keywords - perf: cli framework selection use colors, and sorted by total ranking diff --git a/index.js b/index.js index 8b02443..e3088d3 100755 --- a/index.js +++ b/index.js @@ -12,60 +12,148 @@ import { red, ansi256, reset } from 'kolorist' const argv = minimist(process.argv.slice(2), { string: ['_'] }) const cwd = process.cwd() -const LangTempw = [ - { - name: 'react-js', - display: 'JavaScript', - kolor: ansi256(226), - }, - { - name: 'react-ts', - display: 'TypeScript', - kolor: ansi256(25), - }, -] - +/** + * sorted by total ranking + */ const Boilerplates = [ { name: 'react', // star:191 wd:15097 kolor: ansi256(81), + variants: [ + { + name: 'react-js', + display: 'JavaScript', + kolor: ansi256(226), + }, + { + name: 'react-ts', + display: 'TypeScript', + kolor: ansi256(25), + }, + ], }, { name: 'vue', // star:197 wd:3223 kolor: ansi256(36), + variants: [ + { + name: 'vue-js', + display: 'JavaScript', + kolor: ansi256(226), + }, + { + name: 'vue-ts', + display: 'TypeScript', + kolor: ansi256(25), + }, + ], }, { name: 'svelte', // star:60.3 wd:339 - kolor: ansi256(202), + kolor: ansi256(203), + variants: [ + { + name: 'svelte-js', + display: 'JavaScript', + kolor: ansi256(226), + }, + { + name: 'svelte-ts', + display: 'TypeScript', + kolor: ansi256(25), + }, + ], }, { name: 'preact', // star:32 wd:1385 kolor: ansi256(56), + variants: [ + { + name: 'preact-js', + display: 'JavaScript', + kolor: ansi256(226), + }, + { + name: 'preact-ts', + display: 'TypeScript', + kolor: ansi256(25), + }, + ], }, { name: 'solid', // star:19.9 wd:30 kolor: ansi256(25), + variants: [ + { + name: 'solid-js', + display: 'JavaScript', + kolor: ansi256(226), + }, + { + name: 'solid-ts', + display: 'TypeScript', + kolor: ansi256(25), + }, + ], }, { name: 'lit', // star:11.9 wd:306 kolor: ansi256(43), + variants: [ + { + name: 'lit-js', + display: 'JavaScript', + kolor: ansi256(226), + }, + { + name: 'lit-ts', + display: 'TypeScript', + kolor: ansi256(25), + }, + ], }, { - name: 'qwik', // star:4.5 wd:822 - kolor: ansi256(69), + name: 'inferno', // star:15.5 wd:88 + kolor: ansi256(202), + variants: [ + { + name: 'inferno-js', + display: 'JavaScript', + kolor: ansi256(226), + }, + { + name: 'inferno-ts', + display: 'TypeScript', + kolor: ansi256(25), + }, + ], }, // { - // name: 'alpinejs', // star: wd:9 + // name: 'alpinejs', // star: wd:93 // color: ansi256(1), // }, + // { + // name: 'qwik', // star:4.5 wd:0.8 + // kolor: ansi256(69), + // }, { name: 'vanilla', // star:0 wd:0 kolor: ansi256(230), + variants: [ + { + name: 'vanilla-js', + display: 'JavaScript', + kolor: ansi256(226), + }, + { + name: 'vanilla-ts', + display: 'TypeScript', + kolor: ansi256(25), + }, + ], }, ] -// .replace(/\S/, str => str.toUpperCase()) - const TEMPLATES = Boilerplates.map( (f) => (f.variants && f.variants.map((v) => v.name)) || [f.name], ).reduce((a, b) => a.concat(b), []) @@ -199,7 +287,7 @@ async function init() { // determine template template = variant || framework || template - console.log(`\nScaffolding project in ${root}...`) + console.log(`\nGenerating project in ${root}...`) // template boilerplate const templateDir = path.resolve(fileURLToPath(import.meta.url), '..', `template-${template}`) @@ -214,6 +302,7 @@ async function init() { now: new Date().format('yyyy.MM.dd'), //@ts-ignore nowYear: new Date().format('yyyy'), + framework: (framework.name || '').replace(/\S/, (str) => str.toUpperCase()), } const write = (file, content) => { diff --git a/index.spec.ts b/index.spec.ts index aaa0f9d..465cc0a 100644 --- a/index.spec.ts +++ b/index.spec.ts @@ -77,7 +77,7 @@ test('successfully scaffolds a project based on vue starter template', () => { const generatedFiles = readdirSync(genPath).sort() // Assertions - expect(stdout).toContain(`Scaffolding project in ${genPath}`) + expect(stdout).toContain(`Generating project in ${genPath}`) expect(templateFiles).toEqual(generatedFiles) }) @@ -88,6 +88,6 @@ test('works with the -t alias', () => { const generatedFiles = readdirSync(genPath).sort() // Assertions - expect(stdout).toContain(`Scaffolding project in ${genPath}`) + expect(stdout).toContain(`Generating project in ${genPath}`) expect(templateFiles).toEqual(generatedFiles) }) diff --git a/template-inferno-js/options.html b/template-inferno-js/options.html new file mode 100644 index 0000000..6034079 --- /dev/null +++ b/template-inferno-js/options.html @@ -0,0 +1,13 @@ + + + + + + + Chrome Extensioin + Inferno + JS + Vite App - Options + + +
+ + + diff --git a/template-inferno-js/package.json b/template-inferno-js/package.json new file mode 100644 index 0000000..15fbc3a --- /dev/null +++ b/template-inferno-js/package.json @@ -0,0 +1,33 @@ +{ + "name": "chrome-extension-inferno-js", + "version": "0.0.0", + "author": "", + "description": "", + "type": "module", + "license": "MIT", + "keywords": [ + "chrome-extension", + "inferno", + "infernojs", + "vite", + "create-chrome-ext" + ], + "engines": { + "node": ">=14.18.0" + }, + "scripts": { + "dev": "vite", + "build": "vite build", + "preview": "vite preview" + }, + "dependencies": { + "inferno": "^8.0.1" + }, + "devDependencies": { + "@babel/core": "7.x", + "@babel/parser": "7.x", + "@crxjs/vite-plugin": "^1.0.12", + "vite-plugin-inferno": "0.0.0", + "vite": "^2.9.13" + } +} diff --git a/template-inferno-js/popup.html b/template-inferno-js/popup.html new file mode 100644 index 0000000..d55009b --- /dev/null +++ b/template-inferno-js/popup.html @@ -0,0 +1,13 @@ + + + + + + + Chrome Extensioin + Inferno + JS + Vite App - Popup + + +
+ + + diff --git a/template-inferno-js/public/icons/logo.ico b/template-inferno-js/public/icons/logo.ico new file mode 100644 index 0000000000000000000000000000000000000000..3efc42b1b1ce65e6501770ae6f1a34f28376ca5c GIT binary patch literal 4429 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 \ No newline at end of file diff --git a/template-inferno-js/public/img/logo-128.png b/template-inferno-js/public/img/logo-128.png new file mode 100644 index 0000000000000000000000000000000000000000..831e55f536f43c7b977948f44cc52500481f32e8 GIT binary patch literal 3186 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 N002ovPDHLkV1jP8XM6wv literal 0 HcmV?d00001 diff --git a/template-inferno-js/public/img/logo-48.png b/template-inferno-js/public/img/logo-48.png new file mode 100644 index 0000000000000000000000000000000000000000..3afe57000b406ee3b0fa16570502334f814c78df GIT binary patch literal 1094 zcmV-M1iAZ(P)Px(07*naRA@upnoVdEK@`XTZ*@0{dKAQxiGnm+@S>n6MQi;4ZN2GHjEbHV4}PE* z^cLYj%Bl+~wFZiyb zQyJjnqB#pZzmW2QT?8!AF`_EVzy|}kZW(5J@uwf3Rr)Cb3?yP(nE3)X$ni=?3HU%n z2iphp_roAU0i1-n8%$Tj6g8xsc#l0;xK>MdO#nw&M*y5@h;!;nkJ_$xHb^`Wz=@kF z5M5Wd(?Ch)U3RXJu4bVsfRmWj3HF~h&?SATnNu3Bdo^-w5lDTmJ zdBV<^ZM{=Gq=o?;v|aDcRQT-(Ya4(I02YSnlZV~!5pP-P#2yD25V8F}_+prXvGzXO z^|mU?Dv3G5x(lF3Mc4oxXm|6Mr0h6AR#Ttc28DX6y;Dn0NKpE!ecCOH= zqf6eMlCHOW9AH4ix_xk;sw1rikbWAVo_05XuQ&r)5xdOby-@-n(3PZ{-&X{1gf*nH zfl7eoGoT7xORmo4IBdIK8)e0;E{6X^$B`0%PMp6r`D)7a|UGmkpN!-%!}p>;M;!z5cMS#@l720Fgodjtc78e zfL@YGS%&d4icyH*uO7Y3#jQb|&hl>EkG&%9Z zC;>3jCYhF>@+W08t`h$|DdouPJn9L!k#xP3>Wrz#WrdYyV5f>~)knQ%TICaidpq31 z6%~VFG8tj+C6IiREDDniOskB(jU$}ck^o~>n3v5eWQ2`&WxFhVScbVeFtu3R3yIhk zpZT7y@@B{zMBSBDn}GCs3#&3gBN0%o2`+F62-B26`CW zt&Hh2w)2Y(_2c!M6_9lg{O8@`> M07*qoM6N<$g5=lwCjbBd literal 0 HcmV?d00001 diff --git a/template-inferno-js/src/assets/inferno.svg b/template-inferno-js/src/assets/inferno.svg new file mode 100644 index 0000000..daaadfb --- /dev/null +++ b/template-inferno-js/src/assets/inferno.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/template-inferno-js/src/assets/logo.png b/template-inferno-js/src/assets/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..be58bff6e53d5bac665a8806232e5f2be0bb7049 GIT binary patch literal 8176 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 D3X6_E literal 0 HcmV?d00001 diff --git a/template-inferno-js/src/background/index.js b/template-inferno-js/src/background/index.js new file mode 100644 index 0000000..95a1239 --- /dev/null +++ b/template-inferno-js/src/background/index.js @@ -0,0 +1,3 @@ +console.info('chrome-ext template-inferno-js background script') + +export {} diff --git a/template-inferno-js/src/content/index.js b/template-inferno-js/src/content/index.js new file mode 100644 index 0000000..593374c --- /dev/null +++ b/template-inferno-js/src/content/index.js @@ -0,0 +1,3 @@ +console.info('chrome-ext template-inferno-js content script') + +export {} diff --git a/template-inferno-js/src/manifest.js b/template-inferno-js/src/manifest.js new file mode 100644 index 0000000..e41ff31 --- /dev/null +++ b/template-inferno-js/src/manifest.js @@ -0,0 +1,36 @@ +import { defineManifest } from '@crxjs/vite-plugin' + +export default defineManifest({ + name: 'create-chrome-ext', + description: '', + version: '0.0.0', + manifest_version: 3, + icons: { + 16: 'img/logo-16.png', + 32: 'img/logo-34.png', + 48: 'img/logo-48.png', + 128: 'img/logo-128.png', + }, + action: { + default_popup: 'popup.html', + default_icon: 'img/logo-48.png', + }, + options_page: 'options.html', + background: { + service_worker: 'src/background/index.js', + type: 'module', + }, + content_scripts: [ + { + matches: ['http://*/*', 'https://*/*'], + js: ['src/content/index.js'], + }, + ], + web_accessible_resources: [ + { + resources: ['img/logo-16.png', 'img/logo-34.png', 'img/logo-48.png', 'img/logo-128.png'], + matches: [], + }, + ], + permissions: [], +}) diff --git a/template-inferno-js/src/options/Options.css b/template-inferno-js/src/options/Options.css new file mode 100644 index 0000000..da8094d --- /dev/null +++ b/template-inferno-js/src/options/Options.css @@ -0,0 +1,38 @@ +:root { + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, + 'Open Sans', 'Helvetica Neue', sans-serif; +} + +main { + text-align: center; + padding: 1em; + margin: 0 auto; +} + +h3 { + color: #d81e06; + text-transform: uppercase; + font-size: 1.5rem; + font-weight: 200; + line-height: 1.2rem; + margin: 2rem auto; +} + +h6 { + font-size: 0.5rem; + color: #333333; + margin: 0.5rem; +} + +a { + font-size: 0.5rem; + margin: 0.5rem; + color: #cccccc; + text-decoration: none; +} + +@media (min-width: 480px) { + h3 { + max-width: none; + } +} diff --git a/template-inferno-js/src/options/Options.jsx b/template-inferno-js/src/options/Options.jsx new file mode 100644 index 0000000..42b1239 --- /dev/null +++ b/template-inferno-js/src/options/Options.jsx @@ -0,0 +1,22 @@ +import { Component } from 'inferno' +import './Options.css' + +export class Options extends Component { + render() { + const crx = 'create-chrome-ext' + + return ( +
+

Options Page!

+ +
v 0.0.0
+ + + Power by {crx} + +
+ ) + } +} + +export default Options diff --git a/template-inferno-js/src/options/index.css b/template-inferno-js/src/options/index.css new file mode 100644 index 0000000..8a3e44d --- /dev/null +++ b/template-inferno-js/src/options/index.css @@ -0,0 +1,30 @@ +:root { + font-family: Inter, Avenir, Helvetica, Arial, sans-serif; + font-size: 16px; + line-height: 24px; + font-weight: 400; + + color-scheme: light dark; + color: rgba(255, 255, 255, 0.87); + background-color: #242424; + + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + -webkit-text-size-adjust: 100%; +} + +@media (prefers-color-scheme: light) { + :root { + color: #213547; + background-color: #ffffff; + } + a:hover { + color: #747bff; + } +} + +body { + min-width: 20rem; +} diff --git a/template-inferno-js/src/options/index.jsx b/template-inferno-js/src/options/index.jsx new file mode 100644 index 0000000..518629f --- /dev/null +++ b/template-inferno-js/src/options/index.jsx @@ -0,0 +1,5 @@ +import { render } from 'inferno' +import './index.css' +import { Options } from './Options' + +render(, document.getElementById('app') ?? document.body) diff --git a/template-inferno-js/src/popup/Popup.css b/template-inferno-js/src/popup/Popup.css new file mode 100644 index 0000000..da8094d --- /dev/null +++ b/template-inferno-js/src/popup/Popup.css @@ -0,0 +1,38 @@ +:root { + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, + 'Open Sans', 'Helvetica Neue', sans-serif; +} + +main { + text-align: center; + padding: 1em; + margin: 0 auto; +} + +h3 { + color: #d81e06; + text-transform: uppercase; + font-size: 1.5rem; + font-weight: 200; + line-height: 1.2rem; + margin: 2rem auto; +} + +h6 { + font-size: 0.5rem; + color: #333333; + margin: 0.5rem; +} + +a { + font-size: 0.5rem; + margin: 0.5rem; + color: #cccccc; + text-decoration: none; +} + +@media (min-width: 480px) { + h3 { + max-width: none; + } +} diff --git a/template-inferno-js/src/popup/Popup.jsx b/template-inferno-js/src/popup/Popup.jsx new file mode 100644 index 0000000..fe6c166 --- /dev/null +++ b/template-inferno-js/src/popup/Popup.jsx @@ -0,0 +1,22 @@ +import { Component } from 'inferno' +import './Popup.css' + +export class Popup extends Component { + render() { + const crx = 'create-chrome-ext' + + return ( +
+

Popup Page!

+ +
v 0.0.0
+ + + Power by {crx} + +
+ ) + } +} + +export default Popup diff --git a/template-inferno-js/src/popup/index.css b/template-inferno-js/src/popup/index.css new file mode 100644 index 0000000..8a3e44d --- /dev/null +++ b/template-inferno-js/src/popup/index.css @@ -0,0 +1,30 @@ +:root { + font-family: Inter, Avenir, Helvetica, Arial, sans-serif; + font-size: 16px; + line-height: 24px; + font-weight: 400; + + color-scheme: light dark; + color: rgba(255, 255, 255, 0.87); + background-color: #242424; + + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + -webkit-text-size-adjust: 100%; +} + +@media (prefers-color-scheme: light) { + :root { + color: #213547; + background-color: #ffffff; + } + a:hover { + color: #747bff; + } +} + +body { + min-width: 20rem; +} diff --git a/template-inferno-js/src/popup/index.jsx b/template-inferno-js/src/popup/index.jsx new file mode 100644 index 0000000..104418b --- /dev/null +++ b/template-inferno-js/src/popup/index.jsx @@ -0,0 +1,5 @@ +import { render } from 'inferno' +import './index.css' +import { Popup } from './Popup' + +render(, document.getElementById('app') ?? document.body) diff --git a/template-inferno-js/vite.config.js b/template-inferno-js/vite.config.js new file mode 100644 index 0000000..b9c748f --- /dev/null +++ b/template-inferno-js/vite.config.js @@ -0,0 +1,22 @@ +import { defineConfig } from 'vite' +import { crx } from '@crxjs/vite-plugin' +import inferno from 'vite-plugin-inferno' + +import manifest from './src/manifest.js' + +// https://vitejs.dev/config/ +export default defineConfig(({ mode }) => { + return { + build: { + emptyOutDir: true, + outDir: 'build', + rollupOptions: { + output: { + chunkFileNames: 'assets/chunk-[hash].js', + }, + }, + }, + + plugins: [crx({ manifest }), inferno()], + } +}) diff --git a/template-inferno-ts/options.html b/template-inferno-ts/options.html new file mode 100644 index 0000000..539e5b0 --- /dev/null +++ b/template-inferno-ts/options.html @@ -0,0 +1,13 @@ + + + + + + + Chrome Extensioin + Inferno + TS + Vite App - Options + + +
+ + + diff --git a/template-inferno-ts/package.json b/template-inferno-ts/package.json new file mode 100644 index 0000000..da33f7e --- /dev/null +++ b/template-inferno-ts/package.json @@ -0,0 +1,34 @@ +{ + "name": "chrome-extension-inferno-js", + "version": "0.0.0", + "author": "", + "description": "", + "type": "module", + "license": "MIT", + "keywords": [ + "chrome-extension", + "inferno", + "infernojs", + "vite", + "create-chrome-ext" + ], + "engines": { + "node": ">=14.18.0" + }, + "scripts": { + "dev": "vite", + "build": "vite build", + "preview": "vite preview" + }, + "dependencies": { + "inferno": "^8.0.1" + }, + "devDependencies": { + "@babel/core": "7.x", + "@babel/parser": "7.x", + "@crxjs/vite-plugin": "^1.0.12", + "vite-plugin-inferno": "0.0.0", + "typescript": "^4.6.4", + "vite": "^2.9.13" + } +} diff --git a/template-inferno-ts/popup.html b/template-inferno-ts/popup.html new file mode 100644 index 0000000..f5acd90 --- /dev/null +++ b/template-inferno-ts/popup.html @@ -0,0 +1,13 @@ + + + + + + + Chrome Extensioin + Inferno + TS + Vite App - Popup + + +
+ + + diff --git a/template-inferno-ts/public/icons/logo.ico b/template-inferno-ts/public/icons/logo.ico new file mode 100644 index 0000000000000000000000000000000000000000..3efc42b1b1ce65e6501770ae6f1a34f28376ca5c GIT binary patch literal 4429 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 \ No newline at end of file diff --git a/template-inferno-ts/public/img/logo-128.png b/template-inferno-ts/public/img/logo-128.png new file mode 100644 index 0000000000000000000000000000000000000000..831e55f536f43c7b977948f44cc52500481f32e8 GIT binary patch literal 3186 zcmZu!XHXN&7Tpv=Kzf&6r3wgd@OK~))VW{F znM4Ihkfpv3sQb*n0sw=Yp{}-7nB#iEZC`$y^MhwIs_J(}JgbiHeyJVBV>l)e?z z7@9FV;2NiO-AHgX#ABW^v?g)bl+&KC92D};l(wJP+ktlu zUQ4D^Ysi5O^Mbvi+eq8~?{Bq<{IDRPb#3o}KX(bEm&Wt%0qmWip2$*WMaRWE-&U9? z|G3Z9!^RQs$>1JPN9GuJ$pO3?4(=U^q#No&+cxQ1x{q4@V_#omn51p}=*Y z?_4RKt-Yv^#PAnl?E|XN3XM677)rqB_CTFmlUeZDt}OCOln`x$@ps~*W}lBhfIrx1 zUgX%&zm5Yq@n1HvhYRW(0( zchp$+W%6TpO&%A?tlRj(2z73 zoyw3g%}GR7Rafm+ap0uuj7O?cBi9<#c)3AsU2=8u|7z|b$sZ?;T>&D1@36r}Rjc3068 zc6-BGBum#TZP`R9jJg4_jwD%Y$MiM)w~#4Jka85LJ)=|YC-et}D){LT@u z9VUfK%ztFN!_kg<>6@CQ$Bl0s{&{eln%#X2@BL#qe)-ZFlcwh2q*@x@H^!?gOg|*X zW42T9Fb9kxeo542olR?hmew3Laxn(p{%c9`%F?;w2*(fV8#}%Bp?WojBzz$OE8+JF z^5gqz!9X_PklXQ>?kZMuSKl~DXR=~DO2~eY9i<>y;uDpe{o9uw6Fw6WA-b8#e1X4Q z_Z#PbUSD;cn-MSdjY_vJ!`uXxNBgc>`Y=9sW9|$lOSU6<+r=S`0C_qG<6x8k4KFlx zv~>pkBV-Dv!Wpg{X(r;?cuQ&L9A$!Ukegn{_QD_+zc%KzMX?C*dU%`%O|={n9e7~D zz2D_u0|kV~Wke%v$>JRzNj=wiys zwgQ(57LLK8<;U_3g05X)#1MV;JQw}%;Bq&H`p6_Mi22%OA-6uP*axoB>o8%tOhy{k z`I4!mWA{Hri9pJ>qUeNn;rWn#2LcnmJJT$1P=W(iA+vC^@@~2^1m+5m;6_=^4DT)? z6}@l~a|(h6HZyur2uuXxuZP9%s}1H;KWgCot&Hk}=S zb`YLTQ5*a-EDGqe9|#gL;`%fp-Y6)Nqo|{@*&Ujr8qpgv)td)y)O}*IWahq^VwzFq z#JR?XixCBcCFz{EmRGRtaE>FTl&BTv()=Vb{S**b%3Z4PJ7s-k+lLcag?}=Jv53ZB zdOnJktVssh4-iBfmk;ctZ&-n|Ka`Q6NyxV5e3Uivp{ip|m!@mS%Z)bC*+o`Xp7q*HfM$A2MNIJD@XgY@6wNo$5H#9No6Xl3q zHpZmZ4nvHN-d7gbg~L6$MWW6;v`lG8CxB=}lkil+2*x6dcUCXjg_yfD5nCN$EGlu0 zKZ^DsTSAa5wG1%$iQN7Bncp2@!m>?_3lTckNnP*h{eD+N44444?pTbV zG(tQQ6mI`HhRV7O*j(kkQ5l{tc37ymp3Qx*ngbrPOVL5UL%>#i1Vd&fKJ7r6&7@WX zu^KOI$htvbEmmSJe;I8f4KrpVUSMs?P_XXGimymsk8$1k~>(x z0dW{15|$febn{#&Qf-iEuC$uxGYmd_0T6bz!B=bcJx(dbYY^yFdF(?UMqWTU?=;kl zUl)$g1AogWdgU@@^)m1p-6_;T>mjsR7gbt673=+gnh=d ziY1#BE`2!{ywETeXhnk#%Vu=-Io)2$xqaX30UqByuZ!LHilHpbcHAd5i_NlXDx)02 zUla&X8#bBc=$OvmU();x8;|6FBM_?3Vhn|)?sEjPcm(Hp!+A|8Dv2geK&A{+PvJ-Y z=YBC~GH@Lz48$^cJ4=CTGnz#n*r~&-Qz%h#rIot~2!!>_H>0-o_OwF6qLe|FO052g^fZ`fmx$A?y3Xw~| zra>yFncb#wL){h}zqDLLF|!BvOesB;U#X8DADt;{fQJ<<`0X;Q(`;GS{4}RSUo<*q z4k>M00V_r)Gmz22aChIqH#!IQUq$wj<~cSEAI%`O@jj^=LQ>G6micMkN?e{^AE?w2 zuwA??)x6jB1V~HGcdWOy#y1&Dfy+o!*tpccn2R13@XzDPorZ2VVqxZ;m-r=xhg@O} zJUZ;SVEWt1vUr3wJ$REgdl4Lj23fN0uKP^}3Z<5q@%|+lp@P}Yhem1VJ<=r&lFFgx z=jp0P-k;K!I;tbn)6QDk=@-+aMmn9p8PF2Z6>ajb&+jzb)QcjFpT4b*6BMNDY+%1} zG-n+T%x$WE(Lu|leuhVY_=|bs^cWnfvIpOxpObTuM6!r(Ralx*WkpvxA4xJ{$Zhr| zE3Z3#@VpirHrA$B?H5<^ocu;Tsl;ym23ljfpMK4h3*{s_Nx6SqsD1n+>u%z=b}Q>@ z@a<_;_tQ0h3-0QCLw6@}lAtn%mbTz)o13QJJ6Q;k9;*FpV9fQexnqdF7jMH$=m+chk21MBqffY{hpHot?1i3uTF!`L44Y*`}F?5+3uaeV!Juszg~{)Oo)vcH&f%L Qej@P)Px$ph-kQR5(wqlfP>eQ4~hcH?uPmyJ%@L5k$~nAqaM&P5uJ|3L#S?7VhO>h}+SblzZZS#7y{uj{AQjbX* zIeqARzsN0apQh6@k$AZiKyJ>?{^-Bb$0_!-qVzqmzXU8h&mW9}DT=NF^W|D^koS+N zlO>mg9#;v5TY}j}p(c!X8?^;Dx8C(-b+dF4I9CUR!bf03Co(PLNux=Nqz(XH1V9g% z*|r1wWD!f@C`-k&y=v)g1F)vgS^Cv*U=%>&snN4>0KqqPvt19tS89D-uzjj*(Xyrc z6+qIeVPUI2dZg}jaslbdm?OLa?uPx%$w@>(R9HvNm_JMuK@`TnZx0r2v6S1B#=En?#73|Ytgx_Ai8fl8sEKxBG{!2&FW_Uz@Xo%aU)3@R2JSD_k0R7v6@Qq!f z;6{Ggc@g9<5TugrxgwOwCIS5AhQjgu^4f!~z8gTkRELVy_1Vq9_C9oA8XIaFK;eIY0I*fY81({pb4AKl&s0oyycOV6 z8b|^M02~V&qqC`4Tf3n9T@ZavKp#ROjo?(iwstWMglAi^dL9YHoh+n{>2t;fspQN# z5gZIB$L(UxnXoNW(!hvPBQT6%0=Ghcl9-dCE7W20fK=fE8>q4 z4F{!4G>n5#4Im|#tjzAeidoxYW9 z_az}8wli2Ma+$g^7lm?LK@1fCTzXk^HmX7ox@($spy^6Kzw8VpDgyvKE7Y8`|8m6J zmiZLGnM7rPHi|8bL`p(_NOS2?aSx13}s*P++xE+XQJE4Hzmp>l)`t6Xk_1ROkF!#=pg#FT(w_ z?z04OHLB7N3SbiRBDlZpXNj%O>lObfM2<#1)PQ^kh3UeIvzRo)egi(Yz6vq3lm-9* N002ovPDHLkV1jP8XM6wv literal 0 HcmV?d00001 diff --git a/template-inferno-ts/public/img/logo-48.png b/template-inferno-ts/public/img/logo-48.png new file mode 100644 index 0000000000000000000000000000000000000000..3afe57000b406ee3b0fa16570502334f814c78df GIT binary patch literal 1094 zcmV-M1iAZ(P)Px(07*naRA@upnoVdEK@`XTZ*@0{dKAQxiGnm+@S>n6MQi;4ZN2GHjEbHV4}PE* z^cLYj%Bl+~wFZiyb zQyJjnqB#pZzmW2QT?8!AF`_EVzy|}kZW(5J@uwf3Rr)Cb3?yP(nE3)X$ni=?3HU%n z2iphp_roAU0i1-n8%$Tj6g8xsc#l0;xK>MdO#nw&M*y5@h;!;nkJ_$xHb^`Wz=@kF z5M5Wd(?Ch)U3RXJu4bVsfRmWj3HF~h&?SATnNu3Bdo^-w5lDTmJ zdBV<^ZM{=Gq=o?;v|aDcRQT-(Ya4(I02YSnlZV~!5pP-P#2yD25V8F}_+prXvGzXO z^|mU?Dv3G5x(lF3Mc4oxXm|6Mr0h6AR#Ttc28DX6y;Dn0NKpE!ecCOH= zqf6eMlCHOW9AH4ix_xk;sw1rikbWAVo_05XuQ&r)5xdOby-@-n(3PZ{-&X{1gf*nH zfl7eoGoT7xORmo4IBdIK8)e0;E{6X^$B`0%PMp6r`D)7a|UGmkpN!-%!}p>;M;!z5cMS#@l720Fgodjtc78e zfL@YGS%&d4icyH*uO7Y3#jQb|&hl>EkG&%9Z zC;>3jCYhF>@+W08t`h$|DdouPJn9L!k#xP3>Wrz#WrdYyV5f>~)knQ%TICaidpq31 z6%~VFG8tj+C6IiREDDniOskB(jU$}ck^o~>n3v5eWQ2`&WxFhVScbVeFtu3R3yIhk zpZT7y@@B{zMBSBDn}GCs3#&3gBN0%o2`+F62-B26`CW zt&Hh2w)2Y(_2c!M6_9lg{O8@`> M07*qoM6N<$g5=lwCjbBd literal 0 HcmV?d00001 diff --git a/template-inferno-ts/src/assets/inferno.svg b/template-inferno-ts/src/assets/inferno.svg new file mode 100644 index 0000000..daaadfb --- /dev/null +++ b/template-inferno-ts/src/assets/inferno.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/template-inferno-ts/src/assets/logo.png b/template-inferno-ts/src/assets/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..be58bff6e53d5bac665a8806232e5f2be0bb7049 GIT binary patch literal 8176 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 D3X6_E literal 0 HcmV?d00001 diff --git a/template-inferno-ts/src/background/index.ts b/template-inferno-ts/src/background/index.ts new file mode 100644 index 0000000..3220700 --- /dev/null +++ b/template-inferno-ts/src/background/index.ts @@ -0,0 +1,3 @@ +console.info('chrome-ext template-inferno-ts background script') + +export {} diff --git a/template-inferno-ts/src/content/index.ts b/template-inferno-ts/src/content/index.ts new file mode 100644 index 0000000..0f07f2f --- /dev/null +++ b/template-inferno-ts/src/content/index.ts @@ -0,0 +1,3 @@ +console.info('chrome-ext template-inferno-ts content script') + +export {} diff --git a/template-inferno-ts/src/global.d.ts b/template-inferno-ts/src/global.d.ts new file mode 100644 index 0000000..11f02fe --- /dev/null +++ b/template-inferno-ts/src/global.d.ts @@ -0,0 +1 @@ +/// diff --git a/template-inferno-ts/src/manifest.ts b/template-inferno-ts/src/manifest.ts new file mode 100644 index 0000000..3c64c7b --- /dev/null +++ b/template-inferno-ts/src/manifest.ts @@ -0,0 +1,36 @@ +import { defineManifest } from '@crxjs/vite-plugin' + +export default defineManifest({ + name: 'create-chrome-ext', + description: '', + version: '0.0.0', + manifest_version: 3, + icons: { + 16: 'img/logo-16.png', + 32: 'img/logo-34.png', + 48: 'img/logo-48.png', + 128: 'img/logo-128.png', + }, + action: { + default_popup: 'popup.html', + default_icon: 'img/logo-48.png', + }, + options_page: 'options.html', + background: { + service_worker: 'src/background/index.ts', + type: 'module', + }, + content_scripts: [ + { + matches: ['http://*/*', 'https://*/*'], + js: ['src/content/index.ts'], + }, + ], + web_accessible_resources: [ + { + resources: ['img/logo-16.png', 'img/logo-34.png', 'img/logo-48.png', 'img/logo-128.png'], + matches: [], + }, + ], + permissions: [], +}) diff --git a/template-inferno-ts/src/options/Options.css b/template-inferno-ts/src/options/Options.css new file mode 100644 index 0000000..da8094d --- /dev/null +++ b/template-inferno-ts/src/options/Options.css @@ -0,0 +1,38 @@ +:root { + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, + 'Open Sans', 'Helvetica Neue', sans-serif; +} + +main { + text-align: center; + padding: 1em; + margin: 0 auto; +} + +h3 { + color: #d81e06; + text-transform: uppercase; + font-size: 1.5rem; + font-weight: 200; + line-height: 1.2rem; + margin: 2rem auto; +} + +h6 { + font-size: 0.5rem; + color: #333333; + margin: 0.5rem; +} + +a { + font-size: 0.5rem; + margin: 0.5rem; + color: #cccccc; + text-decoration: none; +} + +@media (min-width: 480px) { + h3 { + max-width: none; + } +} diff --git a/template-inferno-ts/src/options/Options.tsx b/template-inferno-ts/src/options/Options.tsx new file mode 100644 index 0000000..42b1239 --- /dev/null +++ b/template-inferno-ts/src/options/Options.tsx @@ -0,0 +1,22 @@ +import { Component } from 'inferno' +import './Options.css' + +export class Options extends Component { + render() { + const crx = 'create-chrome-ext' + + return ( +
+

Options Page!

+ +
v 0.0.0
+ + + Power by {crx} + +
+ ) + } +} + +export default Options diff --git a/template-inferno-ts/src/options/index.css b/template-inferno-ts/src/options/index.css new file mode 100644 index 0000000..8a3e44d --- /dev/null +++ b/template-inferno-ts/src/options/index.css @@ -0,0 +1,30 @@ +:root { + font-family: Inter, Avenir, Helvetica, Arial, sans-serif; + font-size: 16px; + line-height: 24px; + font-weight: 400; + + color-scheme: light dark; + color: rgba(255, 255, 255, 0.87); + background-color: #242424; + + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + -webkit-text-size-adjust: 100%; +} + +@media (prefers-color-scheme: light) { + :root { + color: #213547; + background-color: #ffffff; + } + a:hover { + color: #747bff; + } +} + +body { + min-width: 20rem; +} diff --git a/template-inferno-ts/src/options/index.tsx b/template-inferno-ts/src/options/index.tsx new file mode 100644 index 0000000..b921d6a --- /dev/null +++ b/template-inferno-ts/src/options/index.tsx @@ -0,0 +1,5 @@ +import { render } from 'inferno' +import './index.css' +import { Options } from './Options' + +render(, document.getElementById('app')!) diff --git a/template-inferno-ts/src/popup/Popup.css b/template-inferno-ts/src/popup/Popup.css new file mode 100644 index 0000000..da8094d --- /dev/null +++ b/template-inferno-ts/src/popup/Popup.css @@ -0,0 +1,38 @@ +:root { + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, + 'Open Sans', 'Helvetica Neue', sans-serif; +} + +main { + text-align: center; + padding: 1em; + margin: 0 auto; +} + +h3 { + color: #d81e06; + text-transform: uppercase; + font-size: 1.5rem; + font-weight: 200; + line-height: 1.2rem; + margin: 2rem auto; +} + +h6 { + font-size: 0.5rem; + color: #333333; + margin: 0.5rem; +} + +a { + font-size: 0.5rem; + margin: 0.5rem; + color: #cccccc; + text-decoration: none; +} + +@media (min-width: 480px) { + h3 { + max-width: none; + } +} diff --git a/template-inferno-ts/src/popup/Popup.tsx b/template-inferno-ts/src/popup/Popup.tsx new file mode 100644 index 0000000..fe6c166 --- /dev/null +++ b/template-inferno-ts/src/popup/Popup.tsx @@ -0,0 +1,22 @@ +import { Component } from 'inferno' +import './Popup.css' + +export class Popup extends Component { + render() { + const crx = 'create-chrome-ext' + + return ( +
+

Popup Page!

+ +
v 0.0.0
+ + + Power by {crx} + +
+ ) + } +} + +export default Popup diff --git a/template-inferno-ts/src/popup/index.css b/template-inferno-ts/src/popup/index.css new file mode 100644 index 0000000..8a3e44d --- /dev/null +++ b/template-inferno-ts/src/popup/index.css @@ -0,0 +1,30 @@ +:root { + font-family: Inter, Avenir, Helvetica, Arial, sans-serif; + font-size: 16px; + line-height: 24px; + font-weight: 400; + + color-scheme: light dark; + color: rgba(255, 255, 255, 0.87); + background-color: #242424; + + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + -webkit-text-size-adjust: 100%; +} + +@media (prefers-color-scheme: light) { + :root { + color: #213547; + background-color: #ffffff; + } + a:hover { + color: #747bff; + } +} + +body { + min-width: 20rem; +} diff --git a/template-inferno-ts/src/popup/index.tsx b/template-inferno-ts/src/popup/index.tsx new file mode 100644 index 0000000..73a25cf --- /dev/null +++ b/template-inferno-ts/src/popup/index.tsx @@ -0,0 +1,5 @@ +import { render } from 'inferno' +import './index.css' +import { Popup } from './Popup' + +render(, document.getElementById('app')!) diff --git a/template-inferno-ts/tsconfig.json b/template-inferno-ts/tsconfig.json new file mode 100644 index 0000000..0a24dec --- /dev/null +++ b/template-inferno-ts/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "target": "ESNext", + "useDefineForClassFields": true, + "lib": ["DOM", "DOM.Iterable", "ESNext"], + "allowJs": false, + "skipLibCheck": true, + "esModuleInterop": false, + "allowSyntheticDefaultImports": true, + "strict": true, + "forceConsistentCasingInFileNames": true, + "module": "ESNext", + "moduleResolution": "Node", + "resolveJsonModule": true, + "isolatedModules": true, + "noEmit": true, + "jsx": "preserve", + "jsxFactory": "h", + "jsxFragmentFactory": "Fragment" + }, + "include": ["src"], + "references": [{ "path": "./tsconfig.node.json" }] +} diff --git a/template-inferno-ts/tsconfig.node.json b/template-inferno-ts/tsconfig.node.json new file mode 100644 index 0000000..65dbdb9 --- /dev/null +++ b/template-inferno-ts/tsconfig.node.json @@ -0,0 +1,8 @@ +{ + "compilerOptions": { + "composite": true, + "module": "ESNext", + "moduleResolution": "Node" + }, + "include": ["vite.config.ts"] +} diff --git a/template-inferno-ts/vite.config.ts b/template-inferno-ts/vite.config.ts new file mode 100644 index 0000000..4383e45 --- /dev/null +++ b/template-inferno-ts/vite.config.ts @@ -0,0 +1,22 @@ +import { defineConfig } from 'vite' +import { crx } from '@crxjs/vite-plugin' +import inferno from 'vite-plugin-inferno' + +import manifest from './src/manifest' + +// https://vitejs.dev/config/ +export default defineConfig(({ mode }) => { + return { + build: { + emptyOutDir: true, + outDir: 'build', + rollupOptions: { + output: { + chunkFileNames: 'assets/chunk-[hash].js', + }, + }, + }, + + plugins: [crx({ manifest }), inferno()], + } +}) diff --git a/template-lit-js/options.html b/template-lit-js/options.html index 3bbd8af..f58eac7 100644 --- a/template-lit-js/options.html +++ b/template-lit-js/options.html @@ -2,7 +2,7 @@ - + Chrome Extensioin + Lit + JS + Vite App - Options diff --git a/template-lit-js/popup.html b/template-lit-js/popup.html index 685d2c3..b4915ce 100644 --- a/template-lit-js/popup.html +++ b/template-lit-js/popup.html @@ -2,7 +2,7 @@ - + Chrome Extensioin + Lit + JS + Vite App - Popup diff --git a/template-lit-ts/options.html b/template-lit-ts/options.html index 288af96..5ac72e0 100644 --- a/template-lit-ts/options.html +++ b/template-lit-ts/options.html @@ -2,7 +2,7 @@ - + Chrome Extensioin + Lit + TS + Vite App - Options diff --git a/template-lit-ts/popup.html b/template-lit-ts/popup.html index 0a6793b..5f00fe3 100644 --- a/template-lit-ts/popup.html +++ b/template-lit-ts/popup.html @@ -2,7 +2,7 @@ - + Chrome Extensioin + Lit + TS + Vite App - Popup diff --git a/template-preact-js/options.html b/template-preact-js/options.html index 256106b..4dbf005 100644 --- a/template-preact-js/options.html +++ b/template-preact-js/options.html @@ -2,7 +2,7 @@ - + Chrome Extensioin + Preact + JS + Vite App - Options diff --git a/template-preact-ts/options.html b/template-preact-ts/options.html index 1bef303..7e85206 100644 --- a/template-preact-ts/options.html +++ b/template-preact-ts/options.html @@ -2,7 +2,7 @@ - + Chrome Extensioin + Preact + TS + Vite App - Options diff --git a/template-qwik-js/options.html b/template-qwik-js/options.html index 63660a8..0c02c3e 100644 --- a/template-qwik-js/options.html +++ b/template-qwik-js/options.html @@ -2,7 +2,7 @@ - + Chrome Extensioin + Qwik + JS + Vite App - Options diff --git a/template-qwik-ts/options.html b/template-qwik-ts/options.html index c93a838..895388f 100644 --- a/template-qwik-ts/options.html +++ b/template-qwik-ts/options.html @@ -2,7 +2,7 @@ - + Chrome Extensioin + Qwik + TS + Vite App - Options diff --git a/template-react-js/options.html b/template-react-js/options.html index 24739a9..8ec517c 100644 --- a/template-react-js/options.html +++ b/template-react-js/options.html @@ -2,7 +2,7 @@ - + Chrome Extensioin + React + JS + Vite App - Options diff --git a/template-react-ts/options.html b/template-react-ts/options.html index d3c73ce..2083993 100644 --- a/template-react-ts/options.html +++ b/template-react-ts/options.html @@ -2,7 +2,7 @@ - + Chrome Extensioin + React + TS + Vite App - Options diff --git a/template-svelte-js/options.html b/template-svelte-js/options.html index 2cd947e..23a741f 100644 --- a/template-svelte-js/options.html +++ b/template-svelte-js/options.html @@ -2,7 +2,7 @@ - + Chrome Extensioin + Svelte + JS + Vite App - Options diff --git a/template-svelte-ts/options.html b/template-svelte-ts/options.html index 2e810bf..b01bb55 100644 --- a/template-svelte-ts/options.html +++ b/template-svelte-ts/options.html @@ -2,7 +2,7 @@ - + Chrome Extensioin + Svelte + TS + Vite App - Options diff --git a/template-vanilla-js/options.html b/template-vanilla-js/options.html index b18ebb1..51b3926 100644 --- a/template-vanilla-js/options.html +++ b/template-vanilla-js/options.html @@ -2,7 +2,7 @@ - + Chrome Extensioin + Vanilla + JS + Vite App - Options diff --git a/template-vanilla-ts/options.html b/template-vanilla-ts/options.html index 015f115..9b1fe06 100644 --- a/template-vanilla-ts/options.html +++ b/template-vanilla-ts/options.html @@ -2,7 +2,7 @@ - + Chrome Extensioin + Vanilla + TS + Vite App - Options diff --git a/template-vue-js/options.html b/template-vue-js/options.html index 8cc4247..6868cdd 100644 --- a/template-vue-js/options.html +++ b/template-vue-js/options.html @@ -2,7 +2,7 @@ - + Chrome Extensioin + Vue + JS + Vite App - Options diff --git a/template-vue-ts/options.html b/template-vue-ts/options.html index 12ea39f..192beab 100644 --- a/template-vue-ts/options.html +++ b/template-vue-ts/options.html @@ -2,7 +2,7 @@ - + Chrome Extensioin + Vue + TS + Vite App - Options