extension-create 2.0.0-beta.1 → 2.0.0-beta.2

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.
Files changed (2) hide show
  1. package/dist/module.js +6 -6
  2. package/package.json +1 -1
package/dist/module.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var ze=Object.create;var b=Object.defineProperty;var Le=Object.getOwnPropertyDescriptor;var Ve=Object.getOwnPropertyNames;var Xe=Object.getPrototypeOf,Ue=Object.prototype.hasOwnProperty;var Ye=(e,t)=>{for(var r in t)b(e,r,{get:t[r],enumerable:!0})},j=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Ve(t))!Ue.call(e,i)&&i!==r&&b(e,i,{get:()=>t[i],enumerable:!(s=Le(t,i))||s.enumerable});return e};var a=(e,t,r)=>(r=e!=null?ze(Xe(e)):{},j(t||!e||!e.__esModule?b(r,"default",{value:e,enumerable:!0}):r,e)),Be=e=>j(b({},"__esModule",{value:!0}),e);var ct={};Ye(ct,{extensionCreate:()=>at});module.exports=Be(ct);var C=a(require("path"));var y=a(require("path")),n=require("@colors/colors/safe"),A=a(require("fs/promises")),G=require("package-manager-detector");function W(e){let t=y.default.basename(e);return`${(0,n.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Failed to write in the destination directory
1
+ "use strict";var ze=Object.create;var b=Object.defineProperty;var Ve=Object.getOwnPropertyDescriptor;var Xe=Object.getOwnPropertyNames;var Le=Object.getPrototypeOf,Ue=Object.prototype.hasOwnProperty;var Ye=(e,t)=>{for(var r in t)b(e,r,{get:t[r],enumerable:!0})},j=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Xe(t))!Ue.call(e,i)&&i!==r&&b(e,i,{get:()=>t[i],enumerable:!(s=Ve(t,i))||s.enumerable});return e};var a=(e,t,r)=>(r=e!=null?ze(Le(e)):{},j(t||!e||!e.__esModule?b(r,"default",{value:e,enumerable:!0}):r,e)),Be=e=>j(b({},"__esModule",{value:!0}),e);var at={};Ye(at,{extensionCreate:()=>ot});module.exports=Be(at);var C=a(require("path"));var y=a(require("path")),n=require("@colors/colors/safe"),A=a(require("fs/promises")),G=require("package-manager-detector");function W(e){let t=y.default.basename(e);return`${(0,n.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Failed to write in the destination directory
2
2
 
3
3
  Path is not writable. Ensure you have write permissions for this folder.
4
4
  ${(0,n.red)("NOT WRITEABLE")}: ${(0,n.underline)(t)}`}async function O(e,t){let r=y.default.basename(e),s=`
@@ -9,12 +9,12 @@ Conflict! Path to ${(0,n.cyan)(r)} includes conflicting files:
9
9
  `}return s+=`
10
10
  You need to either rename/remove the files listed above, or choose a new directory name for your extension.
11
11
 
12
- Path to conflicting directory: ${(0,n.underline)(e)}`,s}function z(){return`${(0,n.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} You need to provide an extension name to create one. See ${(0,n.brightYellow)("--help")} for command info.`}function L(){return`${(0,n.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} URLs are not allowed as a project path. Either write a name or a path to a local folder.`}async function V(e,t){let r=y.default.relative(process.cwd(),e),s=await(0,G.detect)(),i="npm run";switch(s?.name){case"yarn":i="yarn dev";break;case"pnpm":i="pnpm dev";break;default:i="npm run dev"}return process.env.npm_config_user_agent&&process.env.npm_config_user_agent.includes("pnpm")&&(i="pnpm dev"),`\u{1F9E9} - ${(0,n.brightGreen)("Success!")} Extension ${(0,n.cyan)(t)} created.
12
+ Path to conflicting directory: ${(0,n.underline)(e)}`,s}function z(){return`${(0,n.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} You need to provide an extension name to create one. See ${(0,n.brightYellow)("--help")} for command info.`}function V(){return`${(0,n.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} URLs are not allowed as a project path. Either write a name or a path to a local folder.`}async function X(e,t){let r=y.default.relative(process.cwd(),e),s=await(0,G.detect)(),i="npm run";switch(s?.name){case"yarn":i="yarn dev";break;case"pnpm":i="pnpm dev";break;default:i="npm run dev"}return process.env.npm_config_user_agent&&process.env.npm_config_user_agent.includes("pnpm")&&(i="pnpm dev"),`\u{1F9E9} - ${(0,n.brightGreen)("Success!")} Extension ${(0,n.cyan)(t)} created.
13
13
 
14
14
  Now ${(0,n.magenta)(`cd ${(0,n.underline)(r)}`)} and ${(0,n.magenta)(`${i}`)} to open a new browser instance
15
15
  with your extension installed, loaded, and enabled for development.
16
16
 
17
- ${(0,n.brightGreen)("You are ready")}. Time to hack on your extension!`}function X(e){return`\u{1F423} - Starting a new browser extension named ${(0,n.cyan)(e)}...`}function U(){return"\u{1F91E} - Checking if destination path is writeable..."}function Y(){return"\u{1F50E} - Scanning for potential conflicting files..."}function B(e,t){return`${(0,n.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't create directory ${(0,n.cyan)(e)}:
17
+ ${(0,n.brightGreen)("You are ready")}. Time to hack on your extension!`}function L(e){return`\u{1F423} - Starting a new browser extension named ${(0,n.cyan)(e)}...`}function U(){return"\u{1F91E} - Checking if destination path is writeable..."}function Y(){return"\u{1F50E} - Scanning for potential conflicting files..."}function B(e,t){return`${(0,n.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't create directory ${(0,n.cyan)(e)}:
18
18
  ${(0,n.red)(t)}`}function q(e){return`\u{1F537} - Writing type definitions for ${(0,n.cyan)(e)}...`}function H(e){return`${(0,n.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Failed to write the extension type definition.
19
19
  ${(0,n.red)(e)}`}function x(e,t){return t==="init"?`\u{1F9F0} - Installing ${(0,n.cyan)(e)}...`:`\u{1F9F0} - Installing ${(0,n.cyan)(e)} from template ${(0,n.magenta)(t)}...`}function D(e,t,r){return`${(0,n.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't find template ${(0,n.magenta)(t)} for ${(0,n.cyan)(e)}:
20
20
  ${(0,n.red)(r)}`}function K(e){return`\u{1F332} - Initializing git repository for ${(0,n.cyan)(e)}...`}function Q(e,t,r){return`${(0,n.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Command ${(0,n.brightYellow)(e)} ${(0,n.brightYellow)(t.join(" "))} failed with exit code ${r}`}function Z(e,t){return`${(0,n.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Child process error: Can't initialize ${(0,n.brightYellow)("git")} for ${(0,n.cyan)(e)}:
@@ -26,7 +26,7 @@ ${(0,n.red)(t)}`}function ae(){return`\u{1F4DC} - Writing ${(0,n.brightYellow)("
26
26
  ${(0,n.red)(t)}`}function le(){return`\u{1F4C4} - Writing ${(0,n.brightYellow)("README.md")} metadata...`}function me(){return`\u{1F648} - Writing ${(0,n.brightYellow)(".gitignore")} lines...`}function pe(e,t){return`${(0,n.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't write the ${(0,n.brightYellow)("README.md")} file for ${(0,n.cyan)(e)}:
27
27
  ${(0,n.red)(t)}`}function ge(e){return`\u{1F91D} - Ensuring ${(0,n.cyan)(e)} folder exists...`}function fe(e){return`${(0,n.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Error while checking directory writability:
28
28
  `+(0,n.red)(e)}function de(e,t){return`${(0,n.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")} Can't setup built-in tests for ${(0,n.cyan)(e)}:
29
- ${(0,n.red)(t)}`}var h=a(require("fs/promises")),E=a(require("path")),ue=require("package-manager-detector");async function $(e,t){let r=await h.default.readdir(e,{withFileTypes:!0});return await h.default.mkdir(t,{recursive:!0}),await Promise.all(r.map(async s=>{let i=E.default.join(e,s.name),o=E.default.join(t,s.name);s.isDirectory()?await $(i,o):await h.default.copyFile(i,o)}))}async function T(){let e=await(0,ue.detect)(),t="npm";if(process.env.npm_config_user_agent&&process.env.npm_config_user_agent.includes("pnpm"))return"pnpm";switch(e?.name){case"yarn":t="yarn";break;case"pnpm":t="pnpm";break;default:t="npm"}return t}function we(e){let t=E.default.resolve(__dirname,"template");return E.default.resolve(e,t)}async function ye(e,t){try{return console.log(ge(t)),await h.default.mkdir(e,{recursive:!0}),!0}catch(r){return console.log(fe(r)),!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=a(require("path")),_=a(require("fs/promises"));var qe=["LICENSE","node_modules"];async function $e(e,t){console.log(X(t));try{let r=await ye(e,t);console.log(U()),r||(console.error(W(e)),process.exit(1));let s=await _.default.readdir(e);console.log(Y());let i=await Promise.all(s.filter(o=>!o.startsWith(".")).filter(o=>!o.endsWith(".log")).filter(o=>!qe.includes(o)).map(async o=>(await _.default.lstat(Ee.default.join(e,o))).isDirectory()?`${o}/`:`${o}`));if(i.length>0){let o=await O(e,i);throw new Error(o)}}catch(r){console.error(B(t,r)),process.exit(1)}}var ve=a(require("path"));async function be(e,t,r){let s=ve.default.resolve(__dirname,"template");try{console.log(x(t,r)),await $(s,e)}catch(i){console.error(D(t,r,i)),process.exit(1)}}var p=a(require("path")),u=a(require("fs/promises")),De=a(require("go-git-it"));async function Te(e,t,r){let s=p.default.dirname(e),i=p.default.basename(r),c=`https://github.com/extension-js/extension.js/tree/main/examples/${r}`;try{await u.default.mkdir(e,{recursive:!0});let l="";if(process.env.EXTENSION_ENV==="development"){console.log(x(t,r)),l=p.default.join(e,i);let m=p.default.join(__dirname,"..","..","..","examples",i);await $(m,l)}else await(0,De.default)(c,s,x(t,i)),l=p.default.join(s,i);if(t!==i){let m=p.default.join(s,t);await u.default.mkdir(m,{recursive:!0});let g=await u.default.readdir(l);for(let d of g)await u.default.rename(p.default.join(l,d),p.default.join(m,d));await u.default.rm(l,{recursive:!0,force:!0})}else{let m=p.default.join(s,t+"-temp");await u.default.rename(l,m);let g=p.default.join(m,i),d=p.default.join(s,t);await u.default.mkdir(d,{recursive:!0});let Oe=await u.default.readdir(g);for(let N of Oe)await u.default.rename(p.default.join(g,N),p.default.join(d,N));await u.default.rm(m,{recursive:!0,force:!0})}}catch(l){console.error(D(t,i,l)),process.exit(1)}}var v=a(require("path")),I=a(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,t,r){let s=we(process.cwd()),i=xe(r)?v.default.join(e,"package.json"):v.default.join(s,"package.json"),o=await I.default.readFile(i),c=JSON.parse(o.toString());c.scripts=c.scripts||{},c.dependencies=c.dependencies||{},c.devDependencies={...c.devDependencies||{},extension:process.env.EXTENSION_ENV==="development"?"*":"latest"};let l={...c,name:v.default.basename(e),private:!0,scripts:{...c.scripts,...He},dependencies:c.dependencies,devDependencies:c.devDependencies,author:{name:"Your Name",email:"your@email.com",url:"https://yourwebsite.com"}};try{console.log(se()),await I.default.writeFile(v.default.join(e,"package.json"),JSON.stringify(l,null,2))}catch(m){console.error(oe(t,m)),process.exit(1)}}var ke=a(require("path")),Se=require("cross-spawn"),Ce=a(require("fs"));function Ke(){return["install","--silent"]}async function _e(e,t){let r=ke.default.join(e,"node_modules"),s=await T(),i=Ke();console.log(te());try{let o=process.cwd();process.chdir(e),await Ce.default.promises.mkdir(r,{recursive:!0});let c=process.env.EXTENSION_ENV==="development"?"inherit":"ignore",l=(0,Se.spawn)(s,i,{stdio:c});await new Promise((m,g)=>{l.on("close",d=>{process.chdir(o),d!==0?g(new Error(ne(s,i,d))):m()}),l.on("error",d=>{process.chdir(o),console.error(ie(t,d)),g(d)})})}catch(o){console.error(re(t,o)),process.exit(1)}}var F=a(require("path")),k=a(require("fs/promises"));async function Ie(e,t){let r=await k.default.readFile(F.default.join(__dirname,"template","README.md"),"utf-8"),s=await T(),i=require(F.default.join(e,"manifest.json")),o=r.replaceAll("[projectName]",t).replaceAll("[templateDescription]",i.description).replaceAll("[runCommand]",s);try{console.log(le()),await k.default.mkdir(e,{recursive:!0}),await k.default.writeFile(F.default.join(e,"README.md"),o)}catch(c){console.error(pe(t,c)),process.exit(1)}}var S=a(require("path")),P=a(require("fs/promises"));async function Pe(e,t){let r=S.default.join(e,"manifest.json"),s=await P.default.readFile(r),o={...JSON.parse(s.toString()),name:S.default.basename(e),author:"Your Name"};try{console.log(ae()),await P.default.writeFile(S.default.join(e,"manifest.json"),JSON.stringify(o,null,2))}catch(c){console.error(ce(t,c)),process.exit(1)}}var J=a(require("path")),M=a(require("fs/promises"));async function Je(e,t){let r=J.default.join(e,"extension-env.d.ts"),s=process.env.EXTENSION_ENV==="development"?J.default.resolve(process.cwd(),"programs/cli/types"):"extension/dist/types",i=`// Required Extension.js types for TypeScript projects.
29
+ ${(0,n.red)(t)}`}var h=a(require("fs/promises")),E=a(require("path")),ue=require("package-manager-detector");async function $(e,t){let r=await h.default.readdir(e,{withFileTypes:!0});return await h.default.mkdir(t,{recursive:!0}),await Promise.all(r.map(async s=>{let i=E.default.join(e,s.name),o=E.default.join(t,s.name);s.isDirectory()?await $(i,o):await h.default.copyFile(i,o)}))}async function T(){let e=await(0,ue.detect)(),t="npm";if(process.env.npm_config_user_agent&&process.env.npm_config_user_agent.includes("pnpm"))return"pnpm";switch(e?.name){case"yarn":t="yarn";break;case"pnpm":t="pnpm";break;default:t="npm"}return t}function we(e){let t=E.default.resolve(__dirname,"template");return E.default.resolve(e,t)}async function ye(e,t){try{return console.log(ge(t)),await h.default.mkdir(e,{recursive:!0}),!0}catch(r){return console.log(fe(r)),!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=a(require("path")),_=a(require("fs/promises"));var qe=["LICENSE","node_modules"];async function $e(e,t){console.log(L(t));try{let r=await ye(e,t);console.log(U()),r||(console.error(W(e)),process.exit(1));let s=await _.default.readdir(e);console.log(Y());let i=await Promise.all(s.filter(o=>!o.startsWith(".")).filter(o=>!o.endsWith(".log")).filter(o=>!qe.includes(o)).map(async o=>(await _.default.lstat(Ee.default.join(e,o))).isDirectory()?`${o}/`:`${o}`));if(i.length>0){let o=await O(e,i);throw new Error(o)}}catch(r){console.error(B(t,r)),process.exit(1)}}var ve=a(require("path"));async function be(e,t,r){let s=ve.default.resolve(__dirname,"template");try{console.log(x(t,r)),await $(s,e)}catch(i){console.error(D(t,r,i)),process.exit(1)}}var p=a(require("path")),u=a(require("fs/promises")),De=a(require("go-git-it"));async function Te(e,t,r){let s=p.default.dirname(e),i=p.default.basename(r),c=`https://github.com/extension-js/extension.js/tree/main/examples/${r}`;try{await u.default.mkdir(e,{recursive:!0});let l="";if(process.env.EXTENSION_ENV==="development"){console.log(x(t,r)),l=p.default.join(e,i);let m=p.default.join(__dirname,"..","..","..","examples",i);await $(m,l)}else await(0,De.default)(c,s,x(t,i)),l=p.default.join(s,i);if(t!==i){let m=p.default.join(s,t);await u.default.mkdir(m,{recursive:!0});let g=await u.default.readdir(l);for(let d of g)await u.default.rename(p.default.join(l,d),p.default.join(m,d));await u.default.rm(l,{recursive:!0,force:!0})}else{let m=p.default.join(s,t+"-temp");await u.default.rename(l,m);let g=p.default.join(m,i),d=p.default.join(s,t);await u.default.mkdir(d,{recursive:!0});let Oe=await u.default.readdir(g);for(let N of Oe)await u.default.rename(p.default.join(g,N),p.default.join(d,N));await u.default.rm(m,{recursive:!0,force:!0})}}catch(l){console.error(D(t,i,l)),process.exit(1)}}var v=a(require("path")),I=a(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,t,r){let s=we(process.cwd()),i=xe(r)?v.default.join(e,"package.json"):v.default.join(s,"package.json"),o=await I.default.readFile(i),c=JSON.parse(o.toString());c.scripts=c.scripts||{},c.dependencies=c.dependencies||{},c.devDependencies={...c.devDependencies||{},extension:process.env.EXTENSION_ENV==="development"?"*":"latest"};let l={...c,name:v.default.basename(e),private:!0,scripts:{...c.scripts,...He},dependencies:c.dependencies,devDependencies:c.devDependencies,author:{name:"Your Name",email:"your@email.com",url:"https://yourwebsite.com"}};try{console.log(se()),await I.default.writeFile(v.default.join(e,"package.json"),JSON.stringify(l,null,2))}catch(m){console.error(oe(t,m)),process.exit(1)}}var ke=a(require("path")),Se=require("cross-spawn"),Ce=a(require("fs"));function Ke(){return["install","--silent"]}async function _e(e,t){let r=ke.default.join(e,"node_modules"),s=await T(),i=Ke();console.log(te());try{let o=process.cwd();process.chdir(e),await Ce.default.promises.mkdir(r,{recursive:!0});let c=process.env.EXTENSION_ENV==="development"?"inherit":"ignore",l=(0,Se.spawn)(s,i,{stdio:c});await new Promise((m,g)=>{l.on("close",d=>{process.chdir(o),d!==0?g(new Error(ne(s,i,d))):m()}),l.on("error",d=>{process.chdir(o),console.error(ie(t,d)),g(d)})})}catch(o){console.error(re(t,o)),process.exit(1)}}var F=a(require("path")),k=a(require("fs/promises"));async function Ie(e,t){let r=await k.default.readFile(F.default.join(__dirname,"template","README.md"),"utf-8"),s=await T(),i=require(F.default.join(e,"manifest.json")),o=r.replaceAll("[projectName]",t).replaceAll("[templateDescription]",i.description).replaceAll("[runCommand]",s);try{console.log(le()),await k.default.mkdir(e,{recursive:!0}),await k.default.writeFile(F.default.join(e,"README.md"),o)}catch(c){console.error(pe(t,c)),process.exit(1)}}var S=a(require("path")),P=a(require("fs/promises"));async function Pe(e,t){let r=S.default.join(e,"manifest.json"),s=await P.default.readFile(r),o={...JSON.parse(s.toString()),name:S.default.basename(e),author:"Your Name"};try{console.log(ae()),await P.default.writeFile(S.default.join(e,"manifest.json"),JSON.stringify(o,null,2))}catch(c){console.error(ce(t,c)),process.exit(1)}}var J=a(require("path")),M=a(require("fs/promises"));async function Je(e,t){let r=J.default.join(e,"extension-env.d.ts"),s=process.env.EXTENSION_ENV==="development"?J.default.resolve(process.cwd(),"programs/cli/types"):"extension/dist/types",i=`// Required Extension.js types for TypeScript projects.
30
30
  // This file is auto-generated and should not be excluded.
31
31
  // If you need additional types, consider creating a new *.d.ts file and
32
32
  // referencing it in the "include" array of your tsconfig.json file.
@@ -35,5 +35,5 @@ ${(0,n.red)(t)}`}var h=a(require("fs/promises")),E=a(require("path")),ue=require
35
35
 
36
36
  // Polyfill types for browser.* APIs.
37
37
  /// <reference types="${s}/polyfill.d.ts" />
38
- `;try{await M.default.mkdir(e,{recursive:!0}),console.log(q(t)),await M.default.writeFile(r,i)}catch(o){console.error(H(o)),process.exit(1)}}var Me=a(require("fs/promises")),Re=a(require("path"));var Qe=["","# dependencies","node_modules"],Ze=["","# testing","coverage"],et=["","# production","dist"],tt=["","# misc",".DS_Store"],nt=["","# local env files",".env.local",".env.development.local",".env.test.local",".env.production.local"],it=["","# debug files","npm-debug.log*","yarn-debug.log*","yarn-error.log*"],rt=["","# lock files","yarn.lock","package-lock.json"],st=["","# extension.js","extension-env.d.ts"],ot=["# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.",...Qe,...Ze,...et,...tt,...nt,...rt,...it,...st];async function Ne(e){let t=Re.default.join(e,".gitignore"),r=await Me.default.open(t,"a+").catch(o=>{console.error(o),process.exit(1)}),s=new Set;for await(let o of r.readLines({autoClose:!1}))o=o.trim(),o.length!==0&&s.add(o);let i=ot.filter(o=>!s.has(o));for(;i[i.length-1]==="";)i.pop();console.log(me()),await r.appendFile(i.join(`
39
- `),{flush:!0}).catch(o=>{console.error(o),process.exit(1)})}var je=require("cross-spawn");async function Ae(e,t){let r="git",s=["init","--quiet"];console.log(K(t));try{let i=process.cwd();process.chdir(e);let o=process.env.EXTENSION_ENV==="development"?"inherit":"ignore",c=(0,je.spawn)(r,s,{stdio:o});await new Promise((l,m)=>{c.on("close",g=>{process.chdir(i),g!==0?m(new Error(Q(r,s,g))):l()}),c.on("error",g=>{process.chdir(i),console.error(Z(t,g)),m(g)})})}catch(i){console.error(ee(t,i)),process.exit(1)}}var Ge=a(require("path")),R=a(require("fs"));async function We(e,t){try{let r=Ge.default.join(e,"tests","templates.spec.ts");R.default.existsSync(r)&&R.default.unlinkSync(r)}catch(r){console.error(de(t,r)),process.exit(1)}}async function at(e,{template:t="init",install:r=!0}){if(!e)throw new Error(z());if(e.startsWith("http"))throw new Error(L());let s=C.default.isAbsolute(e)?e:C.default.join(process.cwd(),e),i=C.default.basename(s);try{await $e(s,i),t==="init"?await be(s,i,t):await Te(s,i,t),await Fe(s,i,t),r&&await _e(s,i),await Ie(s,i),await Pe(s,i),await Ae(s,i),await Ne(s),await We(s,i),he(t)&&await Je(s,i);let o=await V(s,i);console.log(o)}catch(o){throw console.error(o),o}}0&&(module.exports={extensionCreate});
38
+ `;try{await M.default.mkdir(e,{recursive:!0}),console.log(q(t)),await M.default.writeFile(r,i)}catch(o){console.error(H(o)),process.exit(1)}}var Me=a(require("fs/promises")),Re=a(require("path"));var Qe=["","# dependencies","node_modules"],Ze=["","# testing","coverage"],et=["","# production","dist"],tt=["","# misc",".DS_Store"],nt=["","# local env files",".env.local",".env.development.local",".env.test.local",".env.production.local"],it=["","# debug files","npm-debug.log*","yarn-debug.log*","yarn-error.log*"],rt=["","# extension.js","extension-env.d.ts"],st=["# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.",...Qe,...Ze,...et,...tt,...nt,...it,...rt];async function Ne(e){let t=Re.default.join(e,".gitignore"),r=await Me.default.open(t,"a+").catch(o=>{console.error(o),process.exit(1)}),s=new Set;for await(let o of r.readLines({autoClose:!1}))o=o.trim(),o.length!==0&&s.add(o);let i=st.filter(o=>!s.has(o));for(;i[i.length-1]==="";)i.pop();console.log(me()),await r.appendFile(i.join(`
39
+ `),{flush:!0}).catch(o=>{console.error(o),process.exit(1)})}var je=require("cross-spawn");async function Ae(e,t){let r="git",s=["init","--quiet"];console.log(K(t));try{let i=process.cwd();process.chdir(e);let o=process.env.EXTENSION_ENV==="development"?"inherit":"ignore",c=(0,je.spawn)(r,s,{stdio:o});await new Promise((l,m)=>{c.on("close",g=>{process.chdir(i),g!==0?m(new Error(Q(r,s,g))):l()}),c.on("error",g=>{process.chdir(i),console.error(Z(t,g)),m(g)})})}catch(i){console.error(ee(t,i)),process.exit(1)}}var Ge=a(require("path")),R=a(require("fs"));async function We(e,t){try{let r=Ge.default.join(e,"tests","templates.spec.ts");R.default.existsSync(r)&&R.default.unlinkSync(r)}catch(r){console.error(de(t,r)),process.exit(1)}}async function ot(e,{template:t="init",install:r=!0}){if(!e)throw new Error(z());if(e.startsWith("http"))throw new Error(V());let s=C.default.isAbsolute(e)?e:C.default.join(process.cwd(),e),i=C.default.basename(s);try{await $e(s,i),t==="init"?await be(s,i,t):await Te(s,i,t),await Fe(s,i,t),r&&await _e(s,i),await Ie(s,i),await Pe(s,i),await Ae(s,i),await Ne(s),await We(s,i),he(t)&&await Je(s,i);let o=await X(s,i);console.log(o)}catch(o){throw console.error(o),o}}0&&(module.exports={extensionCreate});
package/package.json CHANGED
@@ -9,7 +9,7 @@
9
9
  "node": ">=18"
10
10
  },
11
11
  "name": "extension-create",
12
- "version": "2.0.0-beta.1",
12
+ "version": "2.0.0-beta.2",
13
13
  "description": "The Extension.js create step",
14
14
  "main": "./dist/module.js",
15
15
  "types": "./dist/module.d.ts",