extension-create 2.0.0-alpha.20 → 2.0.0-alpha.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/module.js +3 -3
- package/package.json +1 -1
package/dist/module.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var je=Object.create;var $=Object.defineProperty;var ze=Object.getOwnPropertyDescriptor;var Ve=Object.getOwnPropertyNames;var Xe=Object.getPrototypeOf,Le=Object.prototype.hasOwnProperty;var Ue=(e,n)=>{for(var t in n)$(e,t,{get:n[t],enumerable:!0})},N=(e,n,t,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let i of Ve(n))!Le.call(e,i)&&i!==t&&$(e,i,{get:()=>n[i],enumerable:!(o=ze(n,i))||o.enumerable});return e};var c=(e,n,t)=>(t=e!=null?je(Xe(e)):{},N(n||!e||!e.__esModule?$(t,"default",{value:e,enumerable:!0}):t,e)),Ye=e=>N($({},"__esModule",{value:!0}),e);var cn={};Ue(cn,{extensionCreate:()=>an});module.exports=Ye(cn);var
|
|
1
|
+
"use strict";var je=Object.create;var $=Object.defineProperty;var ze=Object.getOwnPropertyDescriptor;var Ve=Object.getOwnPropertyNames;var Xe=Object.getPrototypeOf,Le=Object.prototype.hasOwnProperty;var Ue=(e,n)=>{for(var t in n)$(e,t,{get:n[t],enumerable:!0})},N=(e,n,t,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let i of Ve(n))!Le.call(e,i)&&i!==t&&$(e,i,{get:()=>n[i],enumerable:!(o=ze(n,i))||o.enumerable});return e};var c=(e,n,t)=>(t=e!=null?je(Xe(e)):{},N(n||!e||!e.__esModule?$(t,"default",{value:e,enumerable:!0}):t,e)),Ye=e=>N($({},"__esModule",{value:!0}),e);var cn={};Ue(cn,{extensionCreate:()=>an});module.exports=Ye(cn);var _=c(require("path"));var w=c(require("path")),r=require("@colors/colors/safe"),G=c(require("fs/promises")),A=require("detect-package-manager");function O(e){let n=w.default.basename(e);return`Failed to write in the destination directory. Path for \`${n}\` is not writable.
|
|
2
2
|
Ensure you have write permissions for this folder.
|
|
3
3
|
Path: ${n}`}async function W(e,n){let t=w.default.basename(e),o=`
|
|
4
4
|
Conflict! Path to ${(0,r.cyan)(t)} includes conflicting files:
|
|
@@ -13,7 +13,7 @@ Path to conflicting directory: ${(0,r.underline)(e)}`,o}function j(){return"You
|
|
|
13
13
|
Now ${(0,r.brightBlue)(`cd ${(0,r.underline)(t)}`)} and ${(0,r.brightBlue)(`${i}`)} to open a new browser instance
|
|
14
14
|
with your extension installed, loaded, and enabled for development.
|
|
15
15
|
|
|
16
|
-
${(0,r.brightGreen)("You are ready")}. Time to hack on your extension!`}function X(e){return`\u{1F423} - Starting a new browser extension named ${(0,r.cyan)(e)}...`}function L(){return"\u{1F91E} - Checking if destination path is writeable..."}function U(){return"\u{1F50E} - Scanning for potential conflicting files..."}function Y(e,n){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't create directory ${(0,r.cyan)(e)}. ${n}`}function q(e){return`\u{1F537} - Writing ${(0,r.cyan)(e)} type definitions...`}function H(e){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Failed to write the extension type definition. ${e}`}function y(e,n){return n==="init"?`\u{1F9F0} - Installing ${(0,r.cyan)(e)}...`:`\u{1F9F0} - Installing ${(0,r.cyan)(e)} from template ${(0,r.brightBlue)(n)}...`}function v(e,n,t){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't find template ${(0,r.brightBlue)(n)} for ${(0,r.cyan)(e)}. ${t}`}function B(e){return`\u{1F332} - Initializing git repository for ${(0,r.cyan)(e)}...`}function K(e,n,t){return`Command ${e} ${n.join(" ")} failed with exit code ${t}`}function Q(e,n){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Child process error: Can't initialize ${(0,r.brightYellow)("git")} for ${(0,r.cyan)(e)}. ${n.message}`}function Z(e,n){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't initialize ${(0,r.brightYellow)("git")} for ${(0,r.cyan)(e)}. ${n.message||n.toString()}`}function ee(){return"\u{1F6E0} - Installing dependencies... (takes a moment)"}function ne(e,n,t){return`Command ${e} ${n.join(" ")} failed with exit code ${t}`}function te(e,n){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Child process error: Can't install dependencies for ${(0,r.cyan)(e)}. ${n}`}function ie(e,n){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't install dependencies for ${(0,r.cyan)(e)}. ${n.message||n.toString()}`}function re(){return"Symlink created successfully."}function oe(e,n){return`Failed to create symlink: ${e} ${n.join(" ")}`}function se(){return`\u{1F4DD} - Writing ${(0,r.brightYellow)("package.json")} metadata...`}function ae(e,n){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't write ${(0,r.brightYellow)("package.json")} for ${(0,r.cyan)(e)}. ${n}`}function ce(){return`\u{1F4DC} - Writing ${(0,r.brightYellow)("manifest.json")} metadata...`}function le(e,n){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't write ${(0,r.brightYellow)("manifest.json")} for ${(0,r.cyan)(e)}. ${n}`}function me(){return`\u{1F4C4} - Writing ${(0,r.brightYellow)("README.md")} metadata...`}function pe(){return`\u{1F648} - Writing ${(0,r.brightYellow)(".gitignore")} lines...`}function ge(e,n){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't write the ${(0,r.brightYellow)("README.md")} file for ${(0,r.cyan)(e)}. ${n}`}function de(e){return`\u{1F91D} - Ensuring ${(0,r.cyan)(e)} folder exists...`}function fe(e){return"Error while checking directory writability: "+e}var x=c(require("fs/promises")),h=c(require("path")),ue=require("detect-package-manager");async function
|
|
16
|
+
${(0,r.brightGreen)("You are ready")}. Time to hack on your extension!`}function X(e){return`\u{1F423} - Starting a new browser extension named ${(0,r.cyan)(e)}...`}function L(){return"\u{1F91E} - Checking if destination path is writeable..."}function U(){return"\u{1F50E} - Scanning for potential conflicting files..."}function Y(e,n){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't create directory ${(0,r.cyan)(e)}. ${n}`}function q(e){return`\u{1F537} - Writing ${(0,r.cyan)(e)} type definitions...`}function H(e){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Failed to write the extension type definition. ${e}`}function y(e,n){return n==="init"?`\u{1F9F0} - Installing ${(0,r.cyan)(e)}...`:`\u{1F9F0} - Installing ${(0,r.cyan)(e)} from template ${(0,r.brightBlue)(n)}...`}function v(e,n,t){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't find template ${(0,r.brightBlue)(n)} for ${(0,r.cyan)(e)}. ${t}`}function B(e){return`\u{1F332} - Initializing git repository for ${(0,r.cyan)(e)}...`}function K(e,n,t){return`Command ${e} ${n.join(" ")} failed with exit code ${t}`}function Q(e,n){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Child process error: Can't initialize ${(0,r.brightYellow)("git")} for ${(0,r.cyan)(e)}. ${n.message}`}function Z(e,n){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't initialize ${(0,r.brightYellow)("git")} for ${(0,r.cyan)(e)}. ${n.message||n.toString()}`}function ee(){return"\u{1F6E0} - Installing dependencies... (takes a moment)"}function ne(e,n,t){return`Command ${e} ${n.join(" ")} failed with exit code ${t}`}function te(e,n){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Child process error: Can't install dependencies for ${(0,r.cyan)(e)}. ${n}`}function ie(e,n){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't install dependencies for ${(0,r.cyan)(e)}. ${n.message||n.toString()}`}function re(){return"Symlink created successfully."}function oe(e,n){return`Failed to create symlink: ${e} ${n.join(" ")}`}function se(){return`\u{1F4DD} - Writing ${(0,r.brightYellow)("package.json")} metadata...`}function ae(e,n){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't write ${(0,r.brightYellow)("package.json")} for ${(0,r.cyan)(e)}. ${n}`}function ce(){return`\u{1F4DC} - Writing ${(0,r.brightYellow)("manifest.json")} metadata...`}function le(e,n){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't write ${(0,r.brightYellow)("manifest.json")} for ${(0,r.cyan)(e)}. ${n}`}function me(){return`\u{1F4C4} - Writing ${(0,r.brightYellow)("README.md")} metadata...`}function pe(){return`\u{1F648} - Writing ${(0,r.brightYellow)(".gitignore")} lines...`}function ge(e,n){return`${(0,r.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't write the ${(0,r.brightYellow)("README.md")} file for ${(0,r.cyan)(e)}. ${n}`}function de(e){return`\u{1F91D} - Ensuring ${(0,r.cyan)(e)} folder exists...`}function fe(e){return"Error while checking directory writability: "+e}var x=c(require("fs/promises")),h=c(require("path")),ue=require("detect-package-manager");async function C(e,n){let t=await x.default.readdir(e,{withFileTypes:!0});return await x.default.mkdir(n,{recursive:!0}),await Promise.all(t.map(async o=>{let i=h.default.join(e,o.name),s=h.default.join(n,o.name);o.isDirectory()?await C(i,s):await x.default.copyFile(i,s)}))}async function f(){let e=await(0,ue.detect)(),n="npm";if(process.env.npm_config_user_agent&&process.env.npm_config_user_agent.includes("pnpm"))return"pnpm";switch(e){case"yarn":n="yarn";break;case"pnpm":n="pnpm";break;default:n="npm"}return n}function we(e){let n=h.default.resolve(__dirname,"template");return h.default.resolve(e,n)}async function ye(e,n){try{return console.log(de(n)),await x.default.mkdir(e,{recursive:!0}),!0}catch(t){return console.log(fe(t)),!1}}function xe(e){return e!=="init"}function he(e){return e.includes("typescript")||e.includes("react")||e.includes("preact")||e.includes("svelte")||e.includes("solid")}var Ee=c(require("path")),S=c(require("fs/promises"));var qe=["LICENSE","node_modules"];async function $e(e,n){console.log(X(n));try{let t=await ye(e,n);console.log(L()),t||(console.error(O(e)),process.exit(1));let o=await S.default.readdir(e);console.log(U());let i=await Promise.all(o.filter(s=>!s.startsWith(".")).filter(s=>!s.endsWith(".log")).filter(s=>!qe.includes(s)).map(async s=>(await S.default.lstat(Ee.default.join(e,s))).isDirectory()?`${s}/`:`${s}`));if(i.length>0){let s=await W(e,i);throw new Error(s)}}catch(t){console.error(Y(n,t)),process.exit(1)}}var ve=c(require("path"));async function be(e,n,t){let o=ve.default.resolve(__dirname,"template");try{console.log(y(n,t)),await C(o,e)}catch(i){console.error(v(n,t,i)),process.exit(1)}}var b=c(require("path")),k=c(require("fs/promises")),ke=c(require("go-git-it"));async function De(e,n,t){let o=b.default.dirname(e),s=`https://github.com/extension-js/extension.js/tree/main/examples/${t}`;try{if(await k.default.mkdir(e,{recursive:!0}),process.env.EXTENSION_ENV==="development"){console.log(y(n,t));let a=b.default.join(__dirname,"..","..","..","examples",t);await k.default.cp(a,e,{recursive:!0})}else await(0,ke.default)(s,o,y(n,t)),await k.default.rename(b.default.join(o,t),e)}catch(a){console.error(v(n,t,a)),process.exit(1)}}var E=c(require("path")),I=c(require("fs/promises"));var He={dev:process.env.EXTENSION_ENV==="development"?"node node_modules/extension dev":"extension dev",start:process.env.EXTENSION_ENV==="development"?"node node_modules/extension start":"extension start",build:process.env.EXTENSION_ENV==="development"?"node node_modules/extension build":"extension build"};async function Fe(e,n,t){let o=we(process.cwd()),i=xe(t)?E.default.join(e,"package.json"):E.default.join(o,"package.json"),s=await I.default.readFile(i),a=JSON.parse(s.toString());a.scripts=a.scripts||{},a.dependencies=a.dependencies||{},a.devDependencies={...a.devDependencies||{},extension:process.env.EXTENSION_ENV==="development"?"*":"latest"};let g={...a,name:E.default.basename(e),private:!0,scripts:{...a.scripts,...He},dependencies:a.dependencies,devDependencies:a.devDependencies,author:{name:"Your Name",email:"your@email.com",url:"https://yourwebsite.com"}};try{console.log(se()),await I.default.writeFile(E.default.join(e,"package.json"),JSON.stringify(g,null,2))}catch(m){console.error(ae(n,m)),process.exit(1)}}var Ce=c(require("path")),Se=require("cross-spawn"),Ie=c(require("fs"));var Te=c(require("path")),J=require("cross-spawn");async function _e(e){let n=Te.default.join(__dirname,"../../cli"),t=await f(),o=["link"];await new Promise((i,s)=>{(0,J.spawn)(t,o,{cwd:n}).on("close",()=>{(0,J.spawn)(t,[...o,"extension"],{stdio:"inherit",cwd:e}).on("close",m=>{m===0?(console.log(re()),i()):s(new Error(oe(t,o)))})})}),console.log("Symlink creation completed.")}function Be(){return["install","--silent"]}async function Je(e,n){let t=Ce.default.join(e,"node_modules"),o=await f(),i=Be();console.log(ee()),process.env.EXTENSION_ENV==="development"&&await _e(e);try{let s=process.cwd();process.chdir(e),await Ie.default.promises.mkdir(t,{recursive:!0});let a=process.env.EXTENSION_ENV==="development"?"inherit":"ignore",g=(0,Se.spawn)(o,i,{stdio:a});await new Promise((m,p)=>{g.on("close",u=>{process.chdir(s),u!==0?p(new Error(ne(o,i,u))):m()}),g.on("error",u=>{process.chdir(s),console.error(te(n,u)),p(u)})})}catch(s){console.error(ie(n,s)),process.exit(1)}}var D=c(require("path")),F=c(require("fs/promises"));async function Pe(e,n){let t=await F.default.readFile(D.default.join(__dirname,"template","README.md"),"utf-8"),o=await f(),i=require(D.default.join(e,"manifest.json")),s=t.replaceAll("[projectName]",n).replaceAll("[templateDescription]",i.description).replaceAll("[runCommand]",o);try{console.log(me()),await F.default.mkdir(e,{recursive:!0}),await F.default.writeFile(D.default.join(e,"README.md"),s)}catch(a){console.error(ge(n,a)),process.exit(1)}}var T=c(require("path")),P=c(require("fs/promises"));async function Me(e,n){let t=T.default.join(e,"manifest.json"),o=await P.default.readFile(t),s={...JSON.parse(o.toString()),name:T.default.basename(e),author:"Your Name"};try{console.log(ce()),await P.default.writeFile(T.default.join(e,"manifest.json"),JSON.stringify(s,null,2))}catch(a){console.error(le(n,a)),process.exit(1)}}var M=c(require("path")),R=c(require("fs/promises"));async function Re(e,n){let t=M.default.join(e,"extension-env.d.ts"),o=process.env.EXTENSION_ENV==="development"?M.default.resolve(process.cwd(),"programs/cli/types"):"./node_modules/extension/dist/types",i=`// Required Extension.js types for TypeScript projects.
|
|
17
17
|
// This file is auto-generated and should not be excluded.
|
|
18
18
|
// If you need additional types, consider creating a new *.d.ts file and
|
|
19
19
|
// referencing it in the "include" array of your tsconfig.json file.
|
|
@@ -23,4 +23,4 @@ ${(0,r.brightGreen)("You are ready")}. Time to hack on your extension!`}function
|
|
|
23
23
|
// Polyfill types for browser.* APIs.
|
|
24
24
|
/// <reference types="${o}/polyfill.d.ts" />
|
|
25
25
|
`;try{await R.default.mkdir(e,{recursive:!0}),console.log(q(n)),await R.default.writeFile(t,i)}catch(s){console.error(H(s)),process.exit(1)}}var Ne=c(require("fs/promises")),Ge=c(require("path"));var Ke=["","# dependencies","node_modules"],Qe=["","# testing","coverage"],Ze=["","# production","dist"],en=["","# misc",".DS_Store"],nn=["","# local env files",".env.local",".env.development.local",".env.test.local",".env.production.local"],tn=["","# debug files","npm-debug.log*","yarn-debug.log*","yarn-error.log*"],rn=["","# lock files","yarn.lock","package-lock.json"],on=["","# extension.js","extension-env.d.ts"],sn=["# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.",...Ke,...Qe,...Ze,...en,...nn,...rn,...tn,...on];async function Ae(e){let n=Ge.default.join(e,".gitignore"),t=await Ne.default.open(n,"a+").catch(s=>{console.error(s),process.exit(1)}),o=new Set;for await(let s of t.readLines({autoClose:!1}))s=s.trim(),s.length!==0&&o.add(s);let i=sn.filter(s=>!o.has(s));for(;i[i.length-1]==="";)i.pop();console.log(pe()),await t.appendFile(i.join(`
|
|
26
|
-
`),{flush:!0}).catch(s=>{console.error(s),process.exit(1)})}var Oe=require("cross-spawn");async function We(e,n){let t="git",o=["init","--quiet"];console.log(B(n));try{let i=process.cwd();process.chdir(e);let s=process.env.EXTENSION_ENV==="development"?"inherit":"ignore",a=(0,Oe.spawn)(t,o,{stdio:s});await new Promise((g,m)=>{a.on("close",p=>{process.chdir(i),p!==0?m(new Error(K(t,o,p))):g()}),a.on("error",p=>{process.chdir(i),console.error(Q(n,p)),m(p)})})}catch(i){console.error(Z(n,i)),process.exit(1)}}async function an(e,{template:n="init",install:t=!0}){if(!e)throw new Error(j());if(e.startsWith("http"))throw new Error(z());let o=
|
|
26
|
+
`),{flush:!0}).catch(s=>{console.error(s),process.exit(1)})}var Oe=require("cross-spawn");async function We(e,n){let t="git",o=["init","--quiet"];console.log(B(n));try{let i=process.cwd();process.chdir(e);let s=process.env.EXTENSION_ENV==="development"?"inherit":"ignore",a=(0,Oe.spawn)(t,o,{stdio:s});await new Promise((g,m)=>{a.on("close",p=>{process.chdir(i),p!==0?m(new Error(K(t,o,p))):g()}),a.on("error",p=>{process.chdir(i),console.error(Q(n,p)),m(p)})})}catch(i){console.error(Z(n,i)),process.exit(1)}}async function an(e,{template:n="init",install:t=!0}){if(!e)throw new Error(j());if(e.startsWith("http"))throw new Error(z());let o=_.default.isAbsolute(e)?e:_.default.join(process.cwd(),e),i=_.default.basename(o);try{await $e(o,i),n==="init"?await be(o,i,n):await De(o,i,n),await Fe(o,i,n),t&&await Je(o,i),await Pe(o,i),await Me(o,i),await We(o,i),await Ae(o),he(n)&&await Re(o,i);let s=await V(o,i);console.log(s)}catch(s){throw console.error(s),s}}0&&(module.exports={extensionCreate});
|