Socket
Socket
Sign inDemoInstall

@iteam/supreme

Package Overview
Dependencies
Maintainers
7
Versions
93
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@iteam/supreme - npm Package Compare versions

Comparing version 2.12.7 to 2.13.0

src/templates/reason/tailwind.config.js.ejs

7

CHANGELOG.md

@@ -0,1 +1,8 @@

# [2.13.0](https://github.com/Iteam1337/supreme/compare/v2.12.7...v2.13.0) (2020-09-04)
### Features
* update reason setup ([#244](https://github.com/Iteam1337/supreme/issues/244)) ([6d8676c](https://github.com/Iteam1337/supreme/commit/6d8676ca499871033e6f5885f9e0ee1123dc8783))
## [2.12.7](https://github.com/Iteam1337/supreme/compare/v2.12.6...v2.12.7) (2020-08-19)

@@ -2,0 +9,0 @@

5

dist/supreme.cjs.development.js

@@ -695,3 +695,6 @@ 'use strict';

spinner.text = 'Setting up styling';
return Promise.resolve(execa('npx', ['tailwind', 'init'], projectFolder)).then(function () {
return Promise.resolve(create({
templateName: 'reason/tailwind.config.js',
output: projectName + "/tailwind.config.js"
})).then(function () {
return Promise.resolve(create({

@@ -698,0 +701,0 @@ templateName: 'reason/postcss.config.js',

2

dist/supreme.cjs.production.min.js

@@ -1,2 +0,2 @@

"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=e(require("chalk")),n=e(require("meow")),r=e(require("execa")),o=e(require("fs")),i=e(require("path")),s=e(require("util")),a=e(require("ejs")),c=e(require("read-pkg-up")),u=e(require("inquirer")),l=e(require("ora")),m=e(require("clipboardy"));const p=function(){function e(){}return e.prototype.then=function(t,n){const r=new e,o=this.s;if(o){const e=1&o?t:n;if(e){try{f(r,1,e(this.v))}catch(e){f(r,2,e)}return r}return this}return this.o=function(e){try{const o=e.v;1&e.s?f(r,1,t?t(o):o):n?f(r,1,n(o)):f(r,2,o)}catch(e){f(r,2,e)}},r},e}();function f(e,t,n){if(!e.s){if(n instanceof p){if(!n.s)return void(n.o=f.bind(null,e,t));1&t&&(t=n.s),n=n.v}if(n&&n.then)return void n.then(f.bind(null,e,t),f.bind(null,e,2));e.s=t,e.v=n;const r=e.o;r&&r(e)}}function h(e,t){var n,r=-1;e:{for(var o=0;o<t.length;o++){var i=t[o][0];if(i){var s=i();if(s&&s.then)break e;if(s===e){r=o;break}}else r=o}if(-1!==r){do{for(var a=t[r][1];!a;)r++,a=t[r][1];var c=a();if(c&&c.then){n=!0;break e}var u=t[r][2];r++}while(u&&!u());return c}}const l=new p,m=f.bind(null,l,2);return(n?c.then(h):s.then((function n(s){for(;;){if(s===e){r=o;break}if(++o===t.length){if(-1!==r)break;return void f(l,1,c)}if(i=t[o][0]){if((s=i())&&s.then)return void s.then(n).then(void 0,m)}else r=o}do{for(var a=t[r][1];!a;)r++,a=t[r][1];var c=a();if(c&&c.then)return void c.then(h).then(void 0,m);var u=t[r][2];r++}while(u&&!u());f(l,1,c)}))).then(void 0,m),l;function h(e){for(;;){var n=t[r][2];if(!n||n())break;r++;for(var o=t[r][1];!o;)r++,o=t[r][1];if((e=o())&&e.then)return void e.then(h).then(void 0,m)}f(l,1,e)}}function v(e,t){try{var n=e()}catch(e){return t(e)}return n&&n.then?n.then(void 0,t):n}"undefined"!=typeof Symbol&&(Symbol.iterator||(Symbol.iterator=Symbol("Symbol.iterator"))),"undefined"!=typeof Symbol&&(Symbol.asyncIterator||(Symbol.asyncIterator=Symbol("Symbol.asyncIterator")));var g=function(e,n){var r=n.flag;try{var c=e.templateName,l=e.output,m=e.templateData,p=void 0===m?{}:m,f=s.promisify(o.writeFile),g=v((function(){return Promise.resolve(a.renderFile(i.join(__dirname,"../src/templates/"+c+".ejs"),p)).then((function(e){return Promise.resolve(f(i.join(process.cwd(),l),e,{flag:r})).then((function(){}))}))}),(function(n){var r=h(n.code,[[function(){return"EEXIST"},function(){return Promise.resolve(function(e){try{return console.error("File already exists "+t.yellow(e.output)),Promise.resolve(u.prompt({type:"confirm",name:"isOverwrite",message:"Do you want to overwrite the existing file?",default:!1})).then((function(t){t.isOverwrite&&P(e)}))}catch(e){return Promise.reject(e)}}(e)).then((function(){}))}],[void 0,function(){console.error("Something went wrong",n)},function(){}]]);return r&&r.then?r.then((function(){})):void 0}));return Promise.resolve(g&&g.then?g.then((function(){})):void 0)}catch(e){return Promise.reject(e)}},d=function(e){return g(e,{flag:"wx"})},P=function(e){return g(e,{flag:"w"})},b=function(e){try{var t=s.promisify(o.mkdir),n=v((function(){return Promise.resolve(t(i.resolve(process.cwd(),e))).then((function(){}))}),(function(e){console.log(e),process.exit(1)}));return Promise.resolve(n&&n.then?n.then((function(){})):void 0)}catch(e){return Promise.reject(e)}},y=function(e){return o.existsSync(i.resolve(process.cwd(),e))},j=function(e,n){void 0===n&&(n={});try{return Promise.resolve(function(e,t){try{return Promise.resolve(c(t)).then((function(t){if(!t)return!1;var n=t.packageJson.dependencies,r=t.packageJson.devDependencies;return!!n&&n.hasOwnProperty(e)||!!r&&r.hasOwnProperty(e)}))}catch(e){return Promise.reject(e)}}(e,n)).then((function(o){var i=function(){if(!o){var i="Installing "+t.blue(e);return n.spinner?n.spinner.text=i:console.log(i),Promise.resolve(r.command("npm install "+(!1===n.dev?"":"--save-dev")+" --save-exact "+e,n)).then((function(){}))}}();if(i&&i.then)return i.then((function(){}))}))}catch(e){return Promise.reject(e)}},w=function(e){void 0===e&&(e={});try{return Promise.resolve(d({templateName:"gitignore",output:e.cwd?e.cwd+"/.gitignore":".gitignore"})).then((function(){}))}catch(e){return Promise.reject(e)}},k=function(e){void 0===e&&(e={});try{return Promise.resolve(j("prettier",e)).then((function(){return Promise.resolve(d({templateName:"prettierrc",output:e.cwd?e.cwd+"/.prettierrc":".prettierrc"})).then((function(){}))}))}catch(e){return Promise.reject(e)}},N=function(e){void 0===e&&(e={});try{return Promise.resolve(j("jest",e)).then((function(){return Promise.resolve(j("jest-watch-typeahead",e)).then((function(){return Promise.resolve(d({templateName:"jest.config",output:e.cwd?e.cwd+"/jest.config.js":"jest.config.js"})).then((function(){}))}))}))}catch(e){return Promise.reject(e)}},x=function(e){void 0===e&&(e={});try{return Promise.resolve(r("node",["-v"])).then((function(t){return Promise.resolve(d({templateName:"nvmrc",output:e.cwd?e.cwd+"/.nvmrc":".nvmrc",templateData:{nodeVersion:t.stdout}})).then((function(){}))}))}catch(e){return Promise.reject(e)}},q=function(e){var t=e.javascript;try{return Promise.resolve(j("@iteam/config")).then((function(){return Promise.resolve(d({templateName:"config/config.json",output:"config.json"})).then((function(){var e=!1;function n(n){var r=!1;if(e)return n;function o(e){if(r)return e;function n(){var e=function(){if(!t)return Promise.resolve(d({templateName:"config/config.ts",output:"src/config.ts"})).then((function(){}))}();if(e&&e.then)return e.then((function(){}))}b("src");var o=function(){if(t)return Promise.resolve(d({templateName:"config/config.js",output:"src/config.js"})).then((function(){}))}();return o&&o.then?o.then(n):n()}var i=v((function(){function e(e){return r?e:function(){if(n&&!t)return Promise.resolve(d({templateName:"config/config.ts",output:"src/config.ts"})).then((function(){r=!0}))}()}var n=y("src"),o=function(){if(n&&t)return Promise.resolve(d({templateName:"config/config.js",output:"src/config.js"})).then((function(){r=!0}))}();return o&&o.then?o.then(e):e(o)}),(function(){}));return i&&i.then?i.then(o):o(i)}var r=v((function(){function n(n){return e?n:function(){if(r&&!t)return Promise.resolve(d({templateName:"config/config.ts",output:"lib/config.ts"})).then((function(){e=!0}))}()}var r=y("lib"),o=function(){if(r&&t)return Promise.resolve(d({templateName:"config/config.js",output:"lib/config.js"})).then((function(){e=!0}))}();return o&&o.then?o.then(n):n(o)}),(function(){}));return r&&r.then?r.then(n):n(r)}))}))}catch(e){return Promise.reject(e)}},_=function(e){void 0===e&&(e={});try{return Promise.resolve(j("husky",e)).then((function(){return Promise.resolve(j("pretty-quick",e)).then((function(){return Promise.resolve(d({templateName:"huskyrc",output:e.cwd?e.cwd+"/.huskyrc":".huskyrc"})).then((function(){}))}))}))}catch(e){return Promise.reject(e)}},S=function(e){void 0===e&&(e={});try{return Promise.resolve(j("eslint",e)).then((function(){function t(){var t=function(){if(e.react)return Promise.resolve(j("@iteam/eslint-config-react",e)).then((function(){return Promise.resolve(j("@typescript-eslint/eslint-plugin",e)).then((function(){return Promise.resolve(j("@typescript-eslint/parser",e)).then((function(){return Promise.resolve(d({templateName:"eslint/eslintrc.react",output:e.cwd?e.cwd+"/.eslintrc":".eslintrc"})).then((function(){}))}))}))}))}();if(t&&t.then)return t.then((function(){}))}var n=function(){if(e.node)return Promise.resolve(j("@iteam/eslint-config-node",e)).then((function(){return Promise.resolve(d({templateName:"eslint/eslintrc.node",output:e.cwd?e.cwd+"/.eslintrc":".eslintrc"})).then((function(){}))}))}();return n&&n.then?n.then(t):t()}))}catch(e){return Promise.reject(e)}},C=function(e){var t,n=e.message;(t=e.template,a.renderFile(i.resolve(__dirname,"../src/templates/snippets/"+t+".ejs"))).then((function(e){m.writeSync(e),console.log(n)}))},I=function(e){var n=e.input,o=e.flags,s=e.help,a=n[0],c=n[1];switch(console.log(t.italic.bgRed(" SUPREME \n")),a){case"init":!function(e){var t=e.flags;try{Promise.resolve(q({javascript:t.javascript||!1})).then((function(){return Promise.resolve(w()).then((function(){return Promise.resolve(k()).then((function(){return Promise.resolve(N()).then((function(){return Promise.resolve(x()).then((function(){return Promise.resolve(_()).then((function(){return Promise.resolve(S({node:t.node,react:t.react})).then((function(){}))}))}))}))}))}))}))}catch(e){return Promise.reject(e)}}({flags:o});break;case"react":!function(e){var n=e.name,o=e.flags;try{console.log("Creating app "+t.blue(n||"")),Promise.resolve(r("npx",["create-react-app",n||".",o.javascript?"":"--typescript"])).then((function(){console.log(t.green("Created app "+(n||"")))}))}catch(e){return Promise.reject(e)}}({name:c,flags:o});break;case"reason":!function(e){var n=e.name;try{var o=n||"supreme-reason",s={cwd:i.join(process.cwd(),o)};console.log("Creating app "+t.blue(o));var a=l({text:"Creating folder",color:"blue"}).start();Promise.resolve(r.command("mkdir "+o)).then((function(){return Promise.resolve(r.command("mkdir public",s)).then((function(){return Promise.resolve(r.command("mkdir src",s)).then((function(){return a.text="Updating configs",Promise.resolve(P({templateName:"reason/package.json",output:o+"/package.json",templateData:{name:o}})).then((function(){return Promise.resolve(P({templateName:"reason/bsconfig.json",output:o+"/bsconfig.json",templateData:{name:o}})).then((function(){return Promise.resolve(P({templateName:"reason/webpack.config.js",output:o+"/webpack.config.js"})).then((function(){return Promise.resolve(P({templateName:"reason/README.md",output:o+"/README.md",templateData:{name:o}})).then((function(){return Promise.resolve(r.command("git init",s)).then((function(){return Promise.resolve(P({templateName:"reason/gitignore",output:o+"/.gitignore"})).then((function(){return a.text="Installing dependencies",Promise.resolve(r.command("npm install --silent",s)).then((function(){return a.text="Setting up styling",Promise.resolve(r("npx",["tailwind","init"],s)).then((function(){return Promise.resolve(d({templateName:"reason/postcss.config.js",output:o+"/postcss.config.js"})).then((function(){return Promise.resolve(d({templateName:"reason/index.css",output:o+"/src/index.css"})).then((function(){return Promise.resolve(d({templateName:"reason/index.js",output:o+"/src/index.js"})).then((function(){return Promise.resolve(d({templateName:"reason/releaserc",output:o+"/.releaserc"})).then((function(){return a.text="Updating base files",Promise.resolve(P({templateName:"reason/index.html",output:o+"/public/index.html",templateData:{name:o}})).then((function(){return Promise.resolve(P({templateName:"reason/Index.re",output:o+"/src/Index.re"})).then((function(){return Promise.resolve(d({templateName:"reason/App.re",output:o+"/src/App.re"})).then((function(){return Promise.resolve(b(o+"/__tests__")).then((function(){return Promise.resolve(d({templateName:"reason/App_test.re",output:o+"/__tests__/App_test.re"})).then((function(){a.stop(),console.log(t.green("Created app "+o)),console.log("\n\tGet your app running by opening two terminal tabs and\n\trunning the following commands:\n\n * "+t.green("npm start")+" (starts compiler)\n * "+t.green("npm run server")+" (start Webpack on port 3000)\n")}))}))}))}))}))}))}))}))}))}))}))}))}))}))}))}))}))}))}))}))}catch(e){return Promise.reject(e)}}({name:c,flags:o});break;case"add":!function(e){var t=e.command,n=e.flags;switch(t){case"nvm":case"nvmrc":x();break;case"git":case"gitignore":w();break;case"jest":N();break;case"prettier":k();break;case"config":q({javascript:n.javascript});break;case"husky":_();break;case"eslint":S({node:n.node,react:n.react});break;default:console.log(t+" is not a valid command")}}({command:c,flags:o});break;case"snippets":!function(e){var t=e.language,n=e.ide;try{if(!n)return console.log("--ide flag is missing"),Promise.resolve();if(!t)return console.log("--language flag is missing"),Promise.resolve();var r=h(n,[[function(){return"vim"},function(){return Promise.resolve(function(e){try{switch(e){case"js":case"javascript":C({template:"javascript.vim",message:"JavaScript snippets for VIM (UltiSnips) have been copied to the clipboard"});break;case"ts":case"typescript":C({template:"typescript.vim",message:"Typescript snippets for VIM (UltiSnips) have been copied to the clipboard"});break;case"reason":case"reasonml":C({template:"reason.vim",message:"ReasonML snippets for VIM (UltiSnips) have been copied to the clipboard"});break;default:console.log("I don't have any snippets for that language ("+e+")")}return Promise.resolve()}catch(e){return Promise.reject(e)}}(t)).then((function(){}))}],[function(){return"vscode"},function(){return Promise.resolve(function(e){try{switch(e){case"reason":case"reasonml":C({template:"reason.vscode",message:"ReasonML snippets for VSCode have been copied to the clipboard"});break;default:console.log("I don't have any snippets for that language ("+e+")")}return Promise.resolve()}catch(e){return Promise.reject(e)}}(t)).then((function(){}))}],[void 0,function(){console.log("I don't have any snippets for that IDE ("+n+")")},function(){}]]);Promise.resolve(r&&r.then?r.then((function(){})):void 0)}catch(e){return Promise.reject(e)}}({language:o.language,ide:o.ide});break;case"graphql":!function(e){var n=e.name,o=e.flags;try{if(!n)return console.log("No name provided"),Promise.resolve();var s={cwd:i.join(process.cwd(),n)},a=l({text:"Creating folder",color:"blue"}).start();Promise.resolve(b(n)).then((function(){return a.text="Creating empty git repository",Promise.resolve(r.command("git init",s)).then((function(){return Promise.resolve(P({templateName:"graphql/gitignore",output:n+"/.gitignore"})).then((function(){return a.text="Installing dependencies",Promise.resolve(d({templateName:"graphql/package.json",output:n+"/package.json",templateData:{name:n}})).then((function(){return Promise.resolve(r.command("npm install --silent",s)).then((function(){return Promise.resolve(k({cwd:n,spinner:a})).then((function(){return Promise.resolve(N({cwd:n,spinner:a})).then((function(){return Promise.resolve(x({cwd:n,spinner:a})).then((function(){return Promise.resolve(_({cwd:n,spinner:a})).then((function(){return Promise.resolve(S({cwd:n,node:!0,spinner:a})).then((function(){return a.text="Creating base files",Promise.resolve(b(n+"/lib")).then((function(){return Promise.resolve(b(n+"/lib/__generated__")).then((function(){function e(){return Promise.resolve(d({templateName:"graphql/codegen.yml",output:n+"/codegen.yml"})).then((function(){a.stop(),console.log(t.green("Created app "+n)),console.log("\n Start the API by running:\n\n * "+t.green("cd "+n)+"\n * "+t.green("npm run dev")+" (starts API on port 4000)\n ")}))}var r=function(){if(o.auth)return a.text="Installing additional dependencies",Promise.resolve(j("graphql-directive-auth@0.3.2",{spinner:a,cwd:n,dev:!1})).then((function(){return Promise.resolve(j("graphql-tools@6.0.10",{spinner:a,cwd:n,dev:!1})).then((function(){return a.text="Creating base files",Promise.resolve(d({templateName:"graphql/auth/server.ts",output:n+"/lib/server.ts"})).then((function(){return Promise.resolve(d({templateName:"graphql/auth/graphql.d.ts",output:n+"/lib/__generated__/graphql.d.ts"})).then((function(){return Promise.resolve(d({templateName:"graphql/auth/index.d.ts",output:n+"/index.d.ts"})).then((function(){return Promise.resolve(d({templateName:"graphql/auth/tsconfig.json",output:n+"/tsconfig.json"})).then((function(){}))}))}))}))}))}));var e=o.examples?Promise.resolve(d({templateName:"graphql/serverExample.ts",output:n+"/lib/server.ts"})).then((function(){return Promise.resolve(b(n+"/lib/resolvers")).then((function(){return Promise.resolve(d({templateName:"graphql/resolversExample.ts",output:n+"/lib/resolvers/queue.ts"})).then((function(){return Promise.resolve(d({templateName:"graphql/graphqlExample.d.ts",output:n+"/lib/__generated__/graphql.d.ts"})).then((function(){}))}))}))})):Promise.resolve(d({templateName:"graphql/server.ts",output:n+"/lib/server.ts"})).then((function(){return Promise.resolve(d({templateName:"graphql/graphql.d.ts",output:n+"/lib/__generated__/graphql.d.ts"})).then((function(){return Promise.resolve(d({templateName:"typescript/tsconfig.json",output:n+"/tsconfig.json"})).then((function(){}))}))}));return e&&e.then?e.then((function(){})):void 0}();return r&&r.then?r.then(e):e()}))}))}))}))}))}))}))}))}))}))}))}))}catch(e){return Promise.reject(e)}}({name:c,flags:o});break;case"ghactions":!function(e){var n=e.flags;try{var r=function(){function e(){function e(){return Promise.resolve(d({templateName:"ghactions/pr_check.yml",output:".github/workflows/pr_check.yml"})).then((function(){return Promise.resolve(d({templateName:"ghactions/release.yml",output:".github/workflows/release.yml",templateData:{npm:n.npm}})).then((function(){console.log("Added GitHub actions in "+t.green(".github/workflows"))}))}))}var r=n.npm?Promise.resolve(d({templateName:"ghactions/releaserc",output:".releaserc"})).then((function(){})):Promise.resolve(d({templateName:"ghactions/releaserc.nonpm",output:".releaserc"})).then((function(){}));return r&&r.then?r.then(e):e()}var r=function(){if(!i)return Promise.resolve(b(".github/workflows")).then((function(){}))}();return r&&r.then?r.then(e):e()},o=y(".github"),i=y(".github/workflows");j("@semantic-release/changelog"),j("@semantic-release/git");var s=function(){if(!o)return Promise.resolve(b(".github")).then((function(){}))}();Promise.resolve(s&&s.then?s.then(r):r())}catch(e){return Promise.reject(e)}}({flags:o});break;case"typescript":!function(e){var n=e.name;try{if(!n)return console.log("No name provided"),Promise.resolve();var o={cwd:i.join(process.cwd(),n)},s=l({text:"Creating folder",color:"blue"}).start();Promise.resolve(b(n)).then((function(){return Promise.resolve(d({templateName:"typescript/package.json",output:n+"/package.json",templateData:{name:n}})).then((function(){return s.text="Installing dependencies",Promise.resolve(r.command("npm install --silent",o)).then((function(){return Promise.resolve(k({cwd:n,spinner:s})).then((function(){return Promise.resolve(N({cwd:n,spinner:s})).then((function(){return Promise.resolve(x({cwd:n,spinner:s})).then((function(){return Promise.resolve(_({cwd:n,spinner:s})).then((function(){return Promise.resolve(w({cwd:n,spinner:s})).then((function(){return Promise.resolve(S({cwd:n,node:!0,spinner:s})).then((function(){return s.text="Creating files",Promise.resolve(b(n+"/lib")).then((function(){return Promise.resolve(d({templateName:"typescript/tsconfig.json",output:n+"/tsconfig.json"})).then((function(){return Promise.resolve(d({templateName:"typescript/index.ts",output:n+"/lib/index.ts"})).then((function(){s.stop(),console.log(t.green("Created app "+n)),console.log("\n Build the app by running:\n\n * "+t.green("cd "+n)+"\n * "+t.green("npm run build")+" (builds app)\n ")}))}))}))}))}))}))}))}))}))}))}))}))}catch(e){return Promise.reject(e)}}({name:c,flags:o});break;default:console.log(s)}};I(n("\n Usage\n $ supreme [command]\n\n Commands\n $ init Create some configs and ignore files\n $ add <name> Add a specific config\n $ react <name> [flags] Creates a React app (CRA)\n $ reason <name> Creates a ReasonReact app\n $ snippets [flags] Copy snippets to clipboard\n $ graphql <name> [flags] Create a GraphQL API\n $ ghactions Create base GitHub actions\n $ typescript Create basic Typescript app\n\n Flags\n --javascript JavaScript app (react)\n --ide IDE for snippets (snippets) \n --language Language for snippets (snippets) \n --examples GraphQL examples (examples)\n --node ESLint node (add/init)\n --react ESLint react (add/init)\n --no-npm Remove npm release (ghactions) \n --auth Directives for JWT authorization (graphql)\n ",{flags:{javascript:{default:!1,type:"boolean"},ide:{type:"string"},language:{type:"string"},examples:{type:"boolean"},react:{type:"boolean"},node:{type:"boolean"},npm:{type:"boolean",default:!0},auth:{type:"boolean"}}})),exports.run=I;
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=e(require("chalk")),n=e(require("meow")),r=e(require("execa")),o=e(require("fs")),i=e(require("path")),s=e(require("util")),a=e(require("ejs")),c=e(require("read-pkg-up")),u=e(require("inquirer")),l=e(require("ora")),m=e(require("clipboardy"));const p=function(){function e(){}return e.prototype.then=function(t,n){const r=new e,o=this.s;if(o){const e=1&o?t:n;if(e){try{f(r,1,e(this.v))}catch(e){f(r,2,e)}return r}return this}return this.o=function(e){try{const o=e.v;1&e.s?f(r,1,t?t(o):o):n?f(r,1,n(o)):f(r,2,o)}catch(e){f(r,2,e)}},r},e}();function f(e,t,n){if(!e.s){if(n instanceof p){if(!n.s)return void(n.o=f.bind(null,e,t));1&t&&(t=n.s),n=n.v}if(n&&n.then)return void n.then(f.bind(null,e,t),f.bind(null,e,2));e.s=t,e.v=n;const r=e.o;r&&r(e)}}function h(e,t){var n,r=-1;e:{for(var o=0;o<t.length;o++){var i=t[o][0];if(i){var s=i();if(s&&s.then)break e;if(s===e){r=o;break}}else r=o}if(-1!==r){do{for(var a=t[r][1];!a;)r++,a=t[r][1];var c=a();if(c&&c.then){n=!0;break e}var u=t[r][2];r++}while(u&&!u());return c}}const l=new p,m=f.bind(null,l,2);return(n?c.then(h):s.then((function n(s){for(;;){if(s===e){r=o;break}if(++o===t.length){if(-1!==r)break;return void f(l,1,c)}if(i=t[o][0]){if((s=i())&&s.then)return void s.then(n).then(void 0,m)}else r=o}do{for(var a=t[r][1];!a;)r++,a=t[r][1];var c=a();if(c&&c.then)return void c.then(h).then(void 0,m);var u=t[r][2];r++}while(u&&!u());f(l,1,c)}))).then(void 0,m),l;function h(e){for(;;){var n=t[r][2];if(!n||n())break;r++;for(var o=t[r][1];!o;)r++,o=t[r][1];if((e=o())&&e.then)return void e.then(h).then(void 0,m)}f(l,1,e)}}function v(e,t){try{var n=e()}catch(e){return t(e)}return n&&n.then?n.then(void 0,t):n}"undefined"!=typeof Symbol&&(Symbol.iterator||(Symbol.iterator=Symbol("Symbol.iterator"))),"undefined"!=typeof Symbol&&(Symbol.asyncIterator||(Symbol.asyncIterator=Symbol("Symbol.asyncIterator")));var g=function(e,n){var r=n.flag;try{var c=e.templateName,l=e.output,m=e.templateData,p=void 0===m?{}:m,f=s.promisify(o.writeFile),g=v((function(){return Promise.resolve(a.renderFile(i.join(__dirname,"../src/templates/"+c+".ejs"),p)).then((function(e){return Promise.resolve(f(i.join(process.cwd(),l),e,{flag:r})).then((function(){}))}))}),(function(n){var r=h(n.code,[[function(){return"EEXIST"},function(){return Promise.resolve(function(e){try{return console.error("File already exists "+t.yellow(e.output)),Promise.resolve(u.prompt({type:"confirm",name:"isOverwrite",message:"Do you want to overwrite the existing file?",default:!1})).then((function(t){t.isOverwrite&&P(e)}))}catch(e){return Promise.reject(e)}}(e)).then((function(){}))}],[void 0,function(){console.error("Something went wrong",n)},function(){}]]);return r&&r.then?r.then((function(){})):void 0}));return Promise.resolve(g&&g.then?g.then((function(){})):void 0)}catch(e){return Promise.reject(e)}},d=function(e){return g(e,{flag:"wx"})},P=function(e){return g(e,{flag:"w"})},b=function(e){try{var t=s.promisify(o.mkdir),n=v((function(){return Promise.resolve(t(i.resolve(process.cwd(),e))).then((function(){}))}),(function(e){console.log(e),process.exit(1)}));return Promise.resolve(n&&n.then?n.then((function(){})):void 0)}catch(e){return Promise.reject(e)}},y=function(e){return o.existsSync(i.resolve(process.cwd(),e))},j=function(e,n){void 0===n&&(n={});try{return Promise.resolve(function(e,t){try{return Promise.resolve(c(t)).then((function(t){if(!t)return!1;var n=t.packageJson.dependencies,r=t.packageJson.devDependencies;return!!n&&n.hasOwnProperty(e)||!!r&&r.hasOwnProperty(e)}))}catch(e){return Promise.reject(e)}}(e,n)).then((function(o){var i=function(){if(!o){var i="Installing "+t.blue(e);return n.spinner?n.spinner.text=i:console.log(i),Promise.resolve(r.command("npm install "+(!1===n.dev?"":"--save-dev")+" --save-exact "+e,n)).then((function(){}))}}();if(i&&i.then)return i.then((function(){}))}))}catch(e){return Promise.reject(e)}},w=function(e){void 0===e&&(e={});try{return Promise.resolve(d({templateName:"gitignore",output:e.cwd?e.cwd+"/.gitignore":".gitignore"})).then((function(){}))}catch(e){return Promise.reject(e)}},k=function(e){void 0===e&&(e={});try{return Promise.resolve(j("prettier",e)).then((function(){return Promise.resolve(d({templateName:"prettierrc",output:e.cwd?e.cwd+"/.prettierrc":".prettierrc"})).then((function(){}))}))}catch(e){return Promise.reject(e)}},N=function(e){void 0===e&&(e={});try{return Promise.resolve(j("jest",e)).then((function(){return Promise.resolve(j("jest-watch-typeahead",e)).then((function(){return Promise.resolve(d({templateName:"jest.config",output:e.cwd?e.cwd+"/jest.config.js":"jest.config.js"})).then((function(){}))}))}))}catch(e){return Promise.reject(e)}},x=function(e){void 0===e&&(e={});try{return Promise.resolve(r("node",["-v"])).then((function(t){return Promise.resolve(d({templateName:"nvmrc",output:e.cwd?e.cwd+"/.nvmrc":".nvmrc",templateData:{nodeVersion:t.stdout}})).then((function(){}))}))}catch(e){return Promise.reject(e)}},q=function(e){var t=e.javascript;try{return Promise.resolve(j("@iteam/config")).then((function(){return Promise.resolve(d({templateName:"config/config.json",output:"config.json"})).then((function(){var e=!1;function n(n){var r=!1;if(e)return n;function o(e){if(r)return e;function n(){var e=function(){if(!t)return Promise.resolve(d({templateName:"config/config.ts",output:"src/config.ts"})).then((function(){}))}();if(e&&e.then)return e.then((function(){}))}b("src");var o=function(){if(t)return Promise.resolve(d({templateName:"config/config.js",output:"src/config.js"})).then((function(){}))}();return o&&o.then?o.then(n):n()}var i=v((function(){function e(e){return r?e:function(){if(n&&!t)return Promise.resolve(d({templateName:"config/config.ts",output:"src/config.ts"})).then((function(){r=!0}))}()}var n=y("src"),o=function(){if(n&&t)return Promise.resolve(d({templateName:"config/config.js",output:"src/config.js"})).then((function(){r=!0}))}();return o&&o.then?o.then(e):e(o)}),(function(){}));return i&&i.then?i.then(o):o(i)}var r=v((function(){function n(n){return e?n:function(){if(r&&!t)return Promise.resolve(d({templateName:"config/config.ts",output:"lib/config.ts"})).then((function(){e=!0}))}()}var r=y("lib"),o=function(){if(r&&t)return Promise.resolve(d({templateName:"config/config.js",output:"lib/config.js"})).then((function(){e=!0}))}();return o&&o.then?o.then(n):n(o)}),(function(){}));return r&&r.then?r.then(n):n(r)}))}))}catch(e){return Promise.reject(e)}},_=function(e){void 0===e&&(e={});try{return Promise.resolve(j("husky",e)).then((function(){return Promise.resolve(j("pretty-quick",e)).then((function(){return Promise.resolve(d({templateName:"huskyrc",output:e.cwd?e.cwd+"/.huskyrc":".huskyrc"})).then((function(){}))}))}))}catch(e){return Promise.reject(e)}},S=function(e){void 0===e&&(e={});try{return Promise.resolve(j("eslint",e)).then((function(){function t(){var t=function(){if(e.react)return Promise.resolve(j("@iteam/eslint-config-react",e)).then((function(){return Promise.resolve(j("@typescript-eslint/eslint-plugin",e)).then((function(){return Promise.resolve(j("@typescript-eslint/parser",e)).then((function(){return Promise.resolve(d({templateName:"eslint/eslintrc.react",output:e.cwd?e.cwd+"/.eslintrc":".eslintrc"})).then((function(){}))}))}))}))}();if(t&&t.then)return t.then((function(){}))}var n=function(){if(e.node)return Promise.resolve(j("@iteam/eslint-config-node",e)).then((function(){return Promise.resolve(d({templateName:"eslint/eslintrc.node",output:e.cwd?e.cwd+"/.eslintrc":".eslintrc"})).then((function(){}))}))}();return n&&n.then?n.then(t):t()}))}catch(e){return Promise.reject(e)}},C=function(e){var t,n=e.message;(t=e.template,a.renderFile(i.resolve(__dirname,"../src/templates/snippets/"+t+".ejs"))).then((function(e){m.writeSync(e),console.log(n)}))},I=function(e){var n=e.input,o=e.flags,s=e.help,a=n[0],c=n[1];switch(console.log(t.italic.bgRed(" SUPREME \n")),a){case"init":!function(e){var t=e.flags;try{Promise.resolve(q({javascript:t.javascript||!1})).then((function(){return Promise.resolve(w()).then((function(){return Promise.resolve(k()).then((function(){return Promise.resolve(N()).then((function(){return Promise.resolve(x()).then((function(){return Promise.resolve(_()).then((function(){return Promise.resolve(S({node:t.node,react:t.react})).then((function(){}))}))}))}))}))}))}))}catch(e){return Promise.reject(e)}}({flags:o});break;case"react":!function(e){var n=e.name,o=e.flags;try{console.log("Creating app "+t.blue(n||"")),Promise.resolve(r("npx",["create-react-app",n||".",o.javascript?"":"--typescript"])).then((function(){console.log(t.green("Created app "+(n||"")))}))}catch(e){return Promise.reject(e)}}({name:c,flags:o});break;case"reason":!function(e){var n=e.name;try{var o=n||"supreme-reason",s={cwd:i.join(process.cwd(),o)};console.log("Creating app "+t.blue(o));var a=l({text:"Creating folder",color:"blue"}).start();Promise.resolve(r.command("mkdir "+o)).then((function(){return Promise.resolve(r.command("mkdir public",s)).then((function(){return Promise.resolve(r.command("mkdir src",s)).then((function(){return a.text="Updating configs",Promise.resolve(P({templateName:"reason/package.json",output:o+"/package.json",templateData:{name:o}})).then((function(){return Promise.resolve(P({templateName:"reason/bsconfig.json",output:o+"/bsconfig.json",templateData:{name:o}})).then((function(){return Promise.resolve(P({templateName:"reason/webpack.config.js",output:o+"/webpack.config.js"})).then((function(){return Promise.resolve(P({templateName:"reason/README.md",output:o+"/README.md",templateData:{name:o}})).then((function(){return Promise.resolve(r.command("git init",s)).then((function(){return Promise.resolve(P({templateName:"reason/gitignore",output:o+"/.gitignore"})).then((function(){return a.text="Installing dependencies",Promise.resolve(r.command("npm install --silent",s)).then((function(){return a.text="Setting up styling",Promise.resolve(d({templateName:"reason/tailwind.config.js",output:o+"/tailwind.config.js"})).then((function(){return Promise.resolve(d({templateName:"reason/postcss.config.js",output:o+"/postcss.config.js"})).then((function(){return Promise.resolve(d({templateName:"reason/index.css",output:o+"/src/index.css"})).then((function(){return Promise.resolve(d({templateName:"reason/index.js",output:o+"/src/index.js"})).then((function(){return Promise.resolve(d({templateName:"reason/releaserc",output:o+"/.releaserc"})).then((function(){return a.text="Updating base files",Promise.resolve(P({templateName:"reason/index.html",output:o+"/public/index.html",templateData:{name:o}})).then((function(){return Promise.resolve(P({templateName:"reason/Index.re",output:o+"/src/Index.re"})).then((function(){return Promise.resolve(d({templateName:"reason/App.re",output:o+"/src/App.re"})).then((function(){return Promise.resolve(b(o+"/__tests__")).then((function(){return Promise.resolve(d({templateName:"reason/App_test.re",output:o+"/__tests__/App_test.re"})).then((function(){a.stop(),console.log(t.green("Created app "+o)),console.log("\n\tGet your app running by opening two terminal tabs and\n\trunning the following commands:\n\n * "+t.green("npm start")+" (starts compiler)\n * "+t.green("npm run server")+" (start Webpack on port 3000)\n")}))}))}))}))}))}))}))}))}))}))}))}))}))}))}))}))}))}))}))}))}catch(e){return Promise.reject(e)}}({name:c,flags:o});break;case"add":!function(e){var t=e.command,n=e.flags;switch(t){case"nvm":case"nvmrc":x();break;case"git":case"gitignore":w();break;case"jest":N();break;case"prettier":k();break;case"config":q({javascript:n.javascript});break;case"husky":_();break;case"eslint":S({node:n.node,react:n.react});break;default:console.log(t+" is not a valid command")}}({command:c,flags:o});break;case"snippets":!function(e){var t=e.language,n=e.ide;try{if(!n)return console.log("--ide flag is missing"),Promise.resolve();if(!t)return console.log("--language flag is missing"),Promise.resolve();var r=h(n,[[function(){return"vim"},function(){return Promise.resolve(function(e){try{switch(e){case"js":case"javascript":C({template:"javascript.vim",message:"JavaScript snippets for VIM (UltiSnips) have been copied to the clipboard"});break;case"ts":case"typescript":C({template:"typescript.vim",message:"Typescript snippets for VIM (UltiSnips) have been copied to the clipboard"});break;case"reason":case"reasonml":C({template:"reason.vim",message:"ReasonML snippets for VIM (UltiSnips) have been copied to the clipboard"});break;default:console.log("I don't have any snippets for that language ("+e+")")}return Promise.resolve()}catch(e){return Promise.reject(e)}}(t)).then((function(){}))}],[function(){return"vscode"},function(){return Promise.resolve(function(e){try{switch(e){case"reason":case"reasonml":C({template:"reason.vscode",message:"ReasonML snippets for VSCode have been copied to the clipboard"});break;default:console.log("I don't have any snippets for that language ("+e+")")}return Promise.resolve()}catch(e){return Promise.reject(e)}}(t)).then((function(){}))}],[void 0,function(){console.log("I don't have any snippets for that IDE ("+n+")")},function(){}]]);Promise.resolve(r&&r.then?r.then((function(){})):void 0)}catch(e){return Promise.reject(e)}}({language:o.language,ide:o.ide});break;case"graphql":!function(e){var n=e.name,o=e.flags;try{if(!n)return console.log("No name provided"),Promise.resolve();var s={cwd:i.join(process.cwd(),n)},a=l({text:"Creating folder",color:"blue"}).start();Promise.resolve(b(n)).then((function(){return a.text="Creating empty git repository",Promise.resolve(r.command("git init",s)).then((function(){return Promise.resolve(P({templateName:"graphql/gitignore",output:n+"/.gitignore"})).then((function(){return a.text="Installing dependencies",Promise.resolve(d({templateName:"graphql/package.json",output:n+"/package.json",templateData:{name:n}})).then((function(){return Promise.resolve(r.command("npm install --silent",s)).then((function(){return Promise.resolve(k({cwd:n,spinner:a})).then((function(){return Promise.resolve(N({cwd:n,spinner:a})).then((function(){return Promise.resolve(x({cwd:n,spinner:a})).then((function(){return Promise.resolve(_({cwd:n,spinner:a})).then((function(){return Promise.resolve(S({cwd:n,node:!0,spinner:a})).then((function(){return a.text="Creating base files",Promise.resolve(b(n+"/lib")).then((function(){return Promise.resolve(b(n+"/lib/__generated__")).then((function(){function e(){return Promise.resolve(d({templateName:"graphql/codegen.yml",output:n+"/codegen.yml"})).then((function(){a.stop(),console.log(t.green("Created app "+n)),console.log("\n Start the API by running:\n\n * "+t.green("cd "+n)+"\n * "+t.green("npm run dev")+" (starts API on port 4000)\n ")}))}var r=function(){if(o.auth)return a.text="Installing additional dependencies",Promise.resolve(j("graphql-directive-auth@0.3.2",{spinner:a,cwd:n,dev:!1})).then((function(){return Promise.resolve(j("graphql-tools@6.0.10",{spinner:a,cwd:n,dev:!1})).then((function(){return a.text="Creating base files",Promise.resolve(d({templateName:"graphql/auth/server.ts",output:n+"/lib/server.ts"})).then((function(){return Promise.resolve(d({templateName:"graphql/auth/graphql.d.ts",output:n+"/lib/__generated__/graphql.d.ts"})).then((function(){return Promise.resolve(d({templateName:"graphql/auth/index.d.ts",output:n+"/index.d.ts"})).then((function(){return Promise.resolve(d({templateName:"graphql/auth/tsconfig.json",output:n+"/tsconfig.json"})).then((function(){}))}))}))}))}))}));var e=o.examples?Promise.resolve(d({templateName:"graphql/serverExample.ts",output:n+"/lib/server.ts"})).then((function(){return Promise.resolve(b(n+"/lib/resolvers")).then((function(){return Promise.resolve(d({templateName:"graphql/resolversExample.ts",output:n+"/lib/resolvers/queue.ts"})).then((function(){return Promise.resolve(d({templateName:"graphql/graphqlExample.d.ts",output:n+"/lib/__generated__/graphql.d.ts"})).then((function(){}))}))}))})):Promise.resolve(d({templateName:"graphql/server.ts",output:n+"/lib/server.ts"})).then((function(){return Promise.resolve(d({templateName:"graphql/graphql.d.ts",output:n+"/lib/__generated__/graphql.d.ts"})).then((function(){return Promise.resolve(d({templateName:"typescript/tsconfig.json",output:n+"/tsconfig.json"})).then((function(){}))}))}));return e&&e.then?e.then((function(){})):void 0}();return r&&r.then?r.then(e):e()}))}))}))}))}))}))}))}))}))}))}))}))}catch(e){return Promise.reject(e)}}({name:c,flags:o});break;case"ghactions":!function(e){var n=e.flags;try{var r=function(){function e(){function e(){return Promise.resolve(d({templateName:"ghactions/pr_check.yml",output:".github/workflows/pr_check.yml"})).then((function(){return Promise.resolve(d({templateName:"ghactions/release.yml",output:".github/workflows/release.yml",templateData:{npm:n.npm}})).then((function(){console.log("Added GitHub actions in "+t.green(".github/workflows"))}))}))}var r=n.npm?Promise.resolve(d({templateName:"ghactions/releaserc",output:".releaserc"})).then((function(){})):Promise.resolve(d({templateName:"ghactions/releaserc.nonpm",output:".releaserc"})).then((function(){}));return r&&r.then?r.then(e):e()}var r=function(){if(!i)return Promise.resolve(b(".github/workflows")).then((function(){}))}();return r&&r.then?r.then(e):e()},o=y(".github"),i=y(".github/workflows");j("@semantic-release/changelog"),j("@semantic-release/git");var s=function(){if(!o)return Promise.resolve(b(".github")).then((function(){}))}();Promise.resolve(s&&s.then?s.then(r):r())}catch(e){return Promise.reject(e)}}({flags:o});break;case"typescript":!function(e){var n=e.name;try{if(!n)return console.log("No name provided"),Promise.resolve();var o={cwd:i.join(process.cwd(),n)},s=l({text:"Creating folder",color:"blue"}).start();Promise.resolve(b(n)).then((function(){return Promise.resolve(d({templateName:"typescript/package.json",output:n+"/package.json",templateData:{name:n}})).then((function(){return s.text="Installing dependencies",Promise.resolve(r.command("npm install --silent",o)).then((function(){return Promise.resolve(k({cwd:n,spinner:s})).then((function(){return Promise.resolve(N({cwd:n,spinner:s})).then((function(){return Promise.resolve(x({cwd:n,spinner:s})).then((function(){return Promise.resolve(_({cwd:n,spinner:s})).then((function(){return Promise.resolve(w({cwd:n,spinner:s})).then((function(){return Promise.resolve(S({cwd:n,node:!0,spinner:s})).then((function(){return s.text="Creating files",Promise.resolve(b(n+"/lib")).then((function(){return Promise.resolve(d({templateName:"typescript/tsconfig.json",output:n+"/tsconfig.json"})).then((function(){return Promise.resolve(d({templateName:"typescript/index.ts",output:n+"/lib/index.ts"})).then((function(){s.stop(),console.log(t.green("Created app "+n)),console.log("\n Build the app by running:\n\n * "+t.green("cd "+n)+"\n * "+t.green("npm run build")+" (builds app)\n ")}))}))}))}))}))}))}))}))}))}))}))}))}catch(e){return Promise.reject(e)}}({name:c,flags:o});break;default:console.log(s)}};I(n("\n Usage\n $ supreme [command]\n\n Commands\n $ init Create some configs and ignore files\n $ add <name> Add a specific config\n $ react <name> [flags] Creates a React app (CRA)\n $ reason <name> Creates a ReasonReact app\n $ snippets [flags] Copy snippets to clipboard\n $ graphql <name> [flags] Create a GraphQL API\n $ ghactions Create base GitHub actions\n $ typescript Create basic Typescript app\n\n Flags\n --javascript JavaScript app (react)\n --ide IDE for snippets (snippets) \n --language Language for snippets (snippets) \n --examples GraphQL examples (examples)\n --node ESLint node (add/init)\n --react ESLint react (add/init)\n --no-npm Remove npm release (ghactions) \n --auth Directives for JWT authorization (graphql)\n ",{flags:{javascript:{default:!1,type:"boolean"},ide:{type:"string"},language:{type:"string"},examples:{type:"boolean"},react:{type:"boolean"},node:{type:"boolean"},npm:{type:"boolean",default:!0},auth:{type:"boolean"}}})),exports.run=I;
//# sourceMappingURL=supreme.cjs.production.min.js.map

@@ -689,3 +689,6 @@ import chalk from 'chalk';

spinner.text = 'Setting up styling';
return Promise.resolve(execa('npx', ['tailwind', 'init'], projectFolder)).then(function () {
return Promise.resolve(create({
templateName: 'reason/tailwind.config.js',
output: projectName + "/tailwind.config.js"
})).then(function () {
return Promise.resolve(create({

@@ -692,0 +695,0 @@ templateName: 'reason/postcss.config.js',

{
"name": "@iteam/supreme",
"version": "2.12.7",
"version": "2.13.0",
"description": "A CLI tool that helps you get up an running fast",

@@ -66,5 +66,5 @@ "author": {

"jest-watch-typeahead": "0.6.0",
"prettier": "2.0.5",
"pretty-quick": "2.0.1",
"tsdx": "0.13.2",
"prettier": "2.1.1",
"pretty-quick": "2.0.2",
"tsdx": "0.13.3",
"tslib": "1.13.0",

@@ -71,0 +71,0 @@ "typescript": "3.9.7"

@@ -66,5 +66,8 @@ import execa from 'execa'

spinner.text = 'Setting up styling'
await execa('npx', ['tailwind', 'init'], projectFolder)
await create({
templateName: 'reason/tailwind.config.js',
output: `${projectName}/tailwind.config.js`,
})
await create({
templateName: 'reason/postcss.config.js',

@@ -71,0 +74,0 @@ output: `${projectName}/postcss.config.js`,

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc