bobp 0.2.4 → 0.3.0
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/README.md +11 -0
- package/dist/cli.js +2 -2
- package/dist/index.d.ts +21 -1
- package/dist/index.js +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -47,6 +47,17 @@ Generates a PNG cover image (cover.png) in the current working directory.
|
|
|
47
47
|
npx bobp cover "Example title" "Description for the Example cover"
|
|
48
48
|
```
|
|
49
49
|
|
|
50
|
+
### `electron`
|
|
51
|
+
|
|
52
|
+
Creates a new Electron project from a
|
|
53
|
+
[predefined template](https://github.com/rdarida/template-electron)
|
|
54
|
+
in the current working directory.
|
|
55
|
+
|
|
56
|
+
**Usage:**
|
|
57
|
+
```sh
|
|
58
|
+
npx bobp electron "App Name"
|
|
59
|
+
```
|
|
60
|
+
|
|
50
61
|
### `license`
|
|
51
62
|
|
|
52
63
|
Generates a LICENSE file in the current working directory.
|
package/dist/cli.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
"use strict";var
|
|
3
|
-
`).map(
|
|
2
|
+
"use strict";var V=Object.create;var E=Object.defineProperty,X=Object.defineProperties,Z=Object.getOwnPropertyDescriptor,ee=Object.getOwnPropertyDescriptors,te=Object.getOwnPropertyNames,T=Object.getOwnPropertySymbols,oe=Object.getPrototypeOf,C=Object.prototype.hasOwnProperty,ne=Object.prototype.propertyIsEnumerable;var b=(e,t,o)=>t in e?E(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,l=(e,t)=>{for(var o in t||(t={}))C.call(t,o)&&b(e,o,t[o]);if(T)for(var o of T(t))ne.call(t,o)&&b(e,o,t[o]);return e},d=(e,t)=>X(e,ee(t));var re=(e,t,o,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of te(t))!C.call(e,r)&&r!==o&&E(e,r,{get:()=>t[r],enumerable:!(n=Z(t,r))||n.enumerable});return e};var S=(e,t,o)=>(o=e!=null?V(oe(e)):{},re(t||!e||!e.__esModule?E(o,"default",{value:e,enumerable:!0}):o,e));var a=(e,t,o)=>new Promise((n,r)=>{var s=c=>{try{i(o.next(c))}catch(f){r(f)}},p=c=>{try{i(o.throw(c))}catch(f){r(f)}},i=c=>c.done?n(c.value):Promise.resolve(c.value).then(s,p);i((o=o.apply(e,t)).next())});var W=S(require("yargs")),q=require("yargs/helpers");var j=require("path"),I=require("fs"),D=require("canvas");var L=1280,P=640,F='"Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',ie=`700 80px ${F}`,se=`300 48px ${F}`,k=1.2;function R({title:e,description:t}){let o=(0,D.createCanvas)(L,P),{width:n,height:r}=o,s=o.getContext("2d");s.fillStyle="#001220",s.fillRect(0,0,n,r),s.textAlign="center",s.textBaseline="top";let p=[{str:e,font:ie,y:0,h:0,g:1.3},...t.split(`
|
|
3
|
+
`).map(m=>({str:m,font:se,y:0,h:0,g:k}))].map(m=>ae(s,m)),i=p[p.length-1].h;i-=i/k,i=p.reduce((m,Q)=>m+Q.h,-i),i=Math.ceil(i);let c=Math.floor((P-i)*.5);for(let m of p)ce(s,m,c),c+=m.h;let f=(0,j.join)(process.cwd(),"cover.png"),K=o.toBuffer("image/png");(0,I.writeFileSync)(f,K)}function ce(e,t,o){e.fillStyle="white",e.font=t.font,e.fillText(t.str,L*.5,o+t.y)}function ae(e,t){e.font=t.font;let o=e.measureText(t.str),{actualBoundingBoxAscent:n,actualBoundingBoxDescent:r}=o,s=n+r;return d(l({},t),{y:n,h:s*t.g})}var g=require("fs"),u=require("path"),_=S(require("degit")),B=require("rimraf");function J(e){return a(this,null,function*(){yield pe(e),me(e),le(e)})}function pe(t){return a(this,arguments,function*({name:e}){return yield(0,_.default)("rdarida/template-electron#main").clone((0,u.resolve)(process.cwd(),e))})}function me({name:e,productName:t}){let o=(0,u.resolve)(process.cwd(),e,"package.json"),n=(0,g.readFileSync)(o,{encoding:"utf-8"}),r=d(l({},JSON.parse(n)),{name:e,productName:t,version:"0.0.0"});(0,g.writeFileSync)(o,JSON.stringify(r,null,2))}function le({name:e}){["package-lock.json"].forEach(t=>{let o=(0,u.resolve)(process.cwd(),e,t);(0,B.rimrafSync)(o)})}var x=require("path"),h=require("fs");var M=require("path"),y=(0,M.join)(__dirname,"..","templates");var de=(0,x.join)(y,"license");function A({type:e,year:t,author:o}){let n=`${e}.txt`,r=(0,x.join)(de,n),p=(0,h.readFileSync)(r,{encoding:"utf-8"}).replace("[year]",t).replace("[author]",o),i=(0,x.join)(process.cwd(),"LICENSE");(0,h.writeFileSync)(i,p)}var v=require("path"),w=require("fs"),G=S(require("degit")),H=require("rimraf");function Y(e){return a(this,null,function*(){yield fe(e),ge(e),ue(e)})}function fe(t){return a(this,arguments,function*({name:e}){return yield(0,G.default)("rdarida/template-next#main").clone((0,v.resolve)(process.cwd(),e))})}function ge({name:e}){let t=(0,v.resolve)(process.cwd(),e,"package.json"),o=(0,w.readFileSync)(t,{encoding:"utf-8"}),n=d(l({},JSON.parse(o)),{name:e,version:"0.0.0"});(0,w.writeFileSync)(t,JSON.stringify(n,null,2))}function ue({name:e}){["package-lock.json"].forEach(t=>{let o=(0,v.resolve)(process.cwd(),e,t);(0,H.rimrafSync)(o)})}var N=require("path"),O=require("fs");var $=(0,N.join)(y,"prettier");function z(){let e=(0,O.readdirSync)($);for(let t of e){let o=(0,N.join)($,t),n=(0,N.join)(process.cwd(),`.${t}`);(0,O.copyFileSync)(o,n)}}function U(e){return e.toLowerCase().replace(/\s+/g,"-").replace(/[^a-z0-9\-]/g,"")}(0,W.default)((0,q.hideBin)(process.argv)).scriptName("bobp").usage("$0 <cmd> [args]","Usage").demandCommand(1,"Need 1").command("cover <title> <description>","Generates a PNG cover image (cover.png) in the current working directory",e=>e.positional("title",{demandOption:!0,describe:"Main title text displayed on the cover",type:"string"}).positional("description",{demandOption:!0,describe:"Description text displayed below the title",type:"string"}),e=>R(e)).command("license <author> [year] [type]","Generates a LICENSE file in the current working directory",e=>e.positional("author",{demandOption:!0,describe:"Author or copyright holder name",type:"string"}).positional("year",{default:new Date().getFullYear().toString(),describe:"Year to be inserted into the license text",type:"string"}).positional("type",{default:"mit",describe:'License type (e.g. "mit")',type:"string"}),e=>A(e)).command("electron <productName> [name]","Creates a new Electron project in the current working directory",e=>e.positional("productName",{demandOption:!0,describe:"Name of the application",type:"string"}).positional("name",{describe:"Name of the project directory and npm package",type:"string"}),o=>a(null,[o],function*({productName:e,name:t}){t=t||U(e),yield J({name:t,productName:e})})).command("next <name>","Creates a new Next.js project in the current working directory",e=>e.positional("name",{demandOption:!0,describe:"Name of the project directory and npm package",type:"string"}),e=>a(null,null,function*(){return yield Y(e)})).command("prettier","Copies Prettier configuration files into the current working directory",e=>e,()=>z()).help().strict().parse();
|
package/dist/index.d.ts
CHANGED
|
@@ -17,6 +17,24 @@ type CoverOptions = {
|
|
|
17
17
|
*/
|
|
18
18
|
declare function cover({ title, description }: CoverOptions): void;
|
|
19
19
|
|
|
20
|
+
/**
|
|
21
|
+
* Options used to generate a new Electron project.
|
|
22
|
+
*/
|
|
23
|
+
type ElectronOptions = {
|
|
24
|
+
/** Name of the project directory and npm package */
|
|
25
|
+
name: string;
|
|
26
|
+
/** Name of the application */
|
|
27
|
+
productName: string;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Creates a new Electron project from a
|
|
31
|
+
* [predefined template](https://github.com/rdarida/template-electron)
|
|
32
|
+
* in the current working directory.
|
|
33
|
+
*
|
|
34
|
+
* @param options Configuration options for the Electron project.
|
|
35
|
+
*/
|
|
36
|
+
declare function electron(electronOptions: ElectronOptions): Promise<void>;
|
|
37
|
+
|
|
20
38
|
/**
|
|
21
39
|
* Options used to generate a LICENSE file.
|
|
22
40
|
*/
|
|
@@ -56,4 +74,6 @@ declare function next(nextOptions: NextOptions): Promise<void>;
|
|
|
56
74
|
*/
|
|
57
75
|
declare function prettier(): void;
|
|
58
76
|
|
|
59
|
-
|
|
77
|
+
declare function normalize(name: string): string;
|
|
78
|
+
|
|
79
|
+
export { type CoverOptions, type ElectronOptions, type LicenseOptions, type NextOptions, cover, electron, license, next, normalize, prettier };
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var
|
|
2
|
-
`).map(
|
|
1
|
+
"use strict";var z=Object.create;var g=Object.defineProperty,G=Object.defineProperties,U=Object.getOwnPropertyDescriptor,W=Object.getOwnPropertyDescriptors,q=Object.getOwnPropertyNames,N=Object.getOwnPropertySymbols,K=Object.getPrototypeOf,O=Object.prototype.hasOwnProperty,Q=Object.prototype.propertyIsEnumerable;var P=(t,e,o)=>e in t?g(t,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[e]=o,f=(t,e)=>{for(var o in e||(e={}))O.call(e,o)&&P(t,o,e[o]);if(N)for(var o of N(e))Q.call(e,o)&&P(t,o,e[o]);return t},m=(t,e)=>G(t,W(e));var V=(t,e)=>{for(var o in e)g(t,o,{get:e[o],enumerable:!0})},C=(t,e,o,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of q(e))!O.call(t,r)&&r!==o&&g(t,r,{get:()=>e[r],enumerable:!(n=U(e,r))||n.enumerable});return t};var I=(t,e,o)=>(o=t!=null?z(K(t)):{},C(e||!t||!t.__esModule?g(o,"default",{value:t,enumerable:!0}):o,t)),X=t=>C(g({},"__esModule",{value:!0}),t);var l=(t,e,o)=>new Promise((n,r)=>{var c=s=>{try{i(o.next(s))}catch(d){r(d)}},a=s=>{try{i(o.throw(s))}catch(d){r(d)}},i=s=>s.done?n(s.value):Promise.resolve(s.value).then(c,a);i((o=o.apply(t,e)).next())});var xt={};V(xt,{cover:()=>et,electron:()=>rt,license:()=>pt,next:()=>ft,normalize:()=>ut,prettier:()=>gt});module.exports=X(xt);var F=require("path"),j=require("fs"),k=require("canvas");var _=1280,R=640,L='"Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',Z=`700 80px ${L}`,tt=`300 48px ${L}`,D=1.2;function et({title:t,description:e}){let o=(0,k.createCanvas)(_,R),{width:n,height:r}=o,c=o.getContext("2d");c.fillStyle="#001220",c.fillRect(0,0,n,r),c.textAlign="center",c.textBaseline="top";let a=[{str:t,font:Z,y:0,h:0,g:1.3},...e.split(`
|
|
2
|
+
`).map(p=>({str:p,font:tt,y:0,h:0,g:D}))].map(p=>nt(c,p)),i=a[a.length-1].h;i-=i/D,i=a.reduce((p,Y)=>p+Y.h,-i),i=Math.ceil(i);let s=Math.floor((R-i)*.5);for(let p of a)ot(c,p,s),s+=p.h;let d=(0,F.join)(process.cwd(),"cover.png"),$=o.toBuffer("image/png");(0,j.writeFileSync)(d,$)}function ot(t,e,o){t.fillStyle="white",t.font=e.font,t.fillText(e.str,_*.5,o+e.y)}function nt(t,e){t.font=e.font;let o=t.measureText(e.str),{actualBoundingBoxAscent:n,actualBoundingBoxDescent:r}=o,c=n+r;return m(f({},e),{y:n,h:c*e.g})}var u=require("fs"),x=require("path"),b=I(require("degit")),J=require("rimraf");function rt(t){return l(this,null,function*(){yield it(t),ct(t),st(t)})}function it(e){return l(this,arguments,function*({name:t}){return yield(0,b.default)("rdarida/template-electron#main").clone((0,x.resolve)(process.cwd(),t))})}function ct({name:t,productName:e}){let o=(0,x.resolve)(process.cwd(),t,"package.json"),n=(0,u.readFileSync)(o,{encoding:"utf-8"}),r=m(f({},JSON.parse(n)),{name:t,productName:e,version:"0.0.0"});(0,u.writeFileSync)(o,JSON.stringify(r,null,2))}function st({name:t}){["package-lock.json"].forEach(e=>{let o=(0,x.resolve)(process.cwd(),t,e);(0,J.rimrafSync)(o)})}var v=require("path"),h=require("fs");var B=require("path"),y=(0,B.join)(__dirname,"..","templates");var at=(0,v.join)(y,"license");function pt({type:t,year:e,author:o}){let n=`${t}.txt`,r=(0,v.join)(at,n),a=(0,h.readFileSync)(r,{encoding:"utf-8"}).replace("[year]",e).replace("[author]",o),i=(0,v.join)(process.cwd(),"LICENSE");(0,h.writeFileSync)(i,a)}var S=require("path"),T=require("fs"),H=I(require("degit")),M=require("rimraf");function ft(t){return l(this,null,function*(){yield mt(t),lt(t),dt(t)})}function mt(e){return l(this,arguments,function*({name:t}){return yield(0,H.default)("rdarida/template-next#main").clone((0,S.resolve)(process.cwd(),t))})}function lt({name:t}){let e=(0,S.resolve)(process.cwd(),t,"package.json"),o=(0,T.readFileSync)(e,{encoding:"utf-8"}),n=m(f({},JSON.parse(o)),{name:t,version:"0.0.0"});(0,T.writeFileSync)(e,JSON.stringify(n,null,2))}function dt({name:t}){["package-lock.json"].forEach(e=>{let o=(0,S.resolve)(process.cwd(),t,e);(0,M.rimrafSync)(o)})}var E=require("path"),w=require("fs");var A=(0,E.join)(y,"prettier");function gt(){let t=(0,w.readdirSync)(A);for(let e of t){let o=(0,E.join)(A,e),n=(0,E.join)(process.cwd(),`.${e}`);(0,w.copyFileSync)(o,n)}}function ut(t){return t.toLowerCase().replace(/\s+/g,"-").replace(/[^a-z0-9\-]/g,"")}0&&(module.exports={cover,electron,license,next,normalize,prettier});
|