New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details
Socket
Book a DemoSign in
Socket

@stackbit/cli

Package Overview
Dependencies
Maintainers
11
Versions
638
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@stackbit/cli - npm Package Compare versions

Comparing version
0.1.5
to
0.1.6
+12
-8
dist/analyze-repo.js
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });

@@ -6,2 +9,4 @@ exports.analyzeRepo = void 0;

const utils_1 = require("./utils");
const js_yaml_1 = __importDefault(require("js-yaml"));
const chalk_1 = __importDefault(require("chalk"));
async function analyzeRepo({ repoUrl, branch, auth }) {

@@ -13,3 +18,3 @@ const parsedUrl = parseGitHubUrl(repoUrl);

}
console.log(`Analyzing repository files in ${repoUrl} ...`);
console.log(`Analyzing repository files in ${repoUrl}, branch: ${branch} ...`);
const fileBrowserAdapter = new sdk_1.GitHubFileBrowserAdapter({

@@ -22,9 +27,8 @@ owner: parsedUrl.owner,

const fileBrowser = new sdk_1.FileBrowser({ fileBrowserAdapter });
const ssgMatchResult = await sdk_1.matchSSG({ fileBrowser });
utils_1.printSSGMatchResult(ssgMatchResult);
if (!ssgMatchResult) {
return;
}
const cmsMatchResult = await sdk_1.matchCMS({ fileBrowser });
utils_1.printCMSMatchResult(cmsMatchResult);
const analyzeResult = await sdk_1.analyzeSite({ fileBrowser });
utils_1.printSSGMatchResult(analyzeResult.ssgMatchResult);
utils_1.printCMSMatchResult(analyzeResult.cmsMatchResult);
const yamlConfig = sdk_1.convertToYamlConfig({ config: analyzeResult.config });
const yamlString = js_yaml_1.default.dump(yamlConfig);
console.log(`\n${chalk_1.default.underline.bold('stackbit.yaml')}:\n${chalk_1.default.cyanBright(yamlString)}`);
}

@@ -31,0 +35,0 @@ exports.analyzeRepo = analyzeRepo;

+1
-1

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

{"version":3,"file":"analyze-repo.js","sourceRoot":"","sources":["../src/analyze-repo.ts"],"names":[],"mappings":";;;AAAA,uCAA0F;AAC1F,mCAAmE;AAQ5D,KAAK,UAAU,WAAW,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAsB;IAC3E,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IAC1C,IAAI,CAAC,SAAS,EAAE;QACZ,OAAO,CAAC,GAAG,CAAC,mCAAmC,OAAO,EAAE,CAAC,CAAC;QAC1D,OAAO;KACV;IAED,OAAO,CAAC,GAAG,CAAC,iCAAiC,OAAO,MAAM,CAAC,CAAC;IAC5D,MAAM,kBAAkB,GAAG,IAAI,8BAAwB,CAAC;QACpD,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI;KACb,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,IAAI,iBAAW,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAC5D,MAAM,cAAc,GAAG,MAAM,cAAQ,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IACvD,2BAAmB,CAAC,cAAc,CAAC,CAAC;IAEpC,IAAI,CAAC,cAAc,EAAE;QACjB,OAAO;KACV;IACD,MAAM,cAAc,GAAG,MAAM,cAAQ,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IACvD,2BAAmB,CAAC,cAAc,CAAC,CAAC;AACxC,CAAC;AAvBD,kCAuBC;AAED,SAAS,cAAc,CAAC,OAAe;IACnC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;IACpE,IAAI,CAAC,KAAK,EAAE;QACR,OAAO,IAAI,CAAC;KACf;IACD,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;IACxB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;IACvB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC"}
{"version":3,"file":"analyze-repo.js","sourceRoot":"","sources":["../src/analyze-repo.ts"],"names":[],"mappings":";;;;;;AAAA,uCAAwG;AAExG,mCAAmE;AACnE,sDAA2B;AAC3B,kDAA0B;AAQnB,KAAK,UAAU,WAAW,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAsB;IAC3E,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IAC1C,IAAI,CAAC,SAAS,EAAE;QACZ,OAAO,CAAC,GAAG,CAAC,mCAAmC,OAAO,EAAE,CAAC,CAAC;QAC1D,OAAO;KACV;IAED,OAAO,CAAC,GAAG,CAAC,iCAAiC,OAAO,aAAa,MAAM,MAAM,CAAC,CAAC;IAC/E,MAAM,kBAAkB,GAAG,IAAI,8BAAwB,CAAC;QACpD,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI;KACb,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,IAAI,iBAAW,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAC5D,MAAM,aAAa,GAAG,MAAM,iBAAW,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IAEzD,2BAAmB,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;IAClD,2BAAmB,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;IAElD,MAAM,UAAU,GAAG,yBAAmB,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC;IACzE,MAAM,UAAU,GAAG,iBAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACzC,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,eAAK,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;AAChG,CAAC;AAvBD,kCAuBC;AAED,SAAS,cAAc,CAAC,OAAe;IACnC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;IACpE,IAAI,CAAC,KAAK,EAAE;QACR,OAAO,IAAI,CAAC;KACf;IACD,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;IACxB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;IACvB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC"}

@@ -16,24 +16,12 @@ "use strict";

const fileBrowser = new sdk_1.FileBrowser({ fileBrowserAdapter });
const ssgMatchResult = await sdk_1.matchSSG({ fileBrowser });
utils_1.printSSGMatchResult(ssgMatchResult);
if (!ssgMatchResult) {
return;
}
const cmsMatchResult = await sdk_1.matchCMS({ fileBrowser });
utils_1.printCMSMatchResult(cmsMatchResult);
const config = {
stackbitVersion: '~0.3.0',
models: []
};
config.ssgName = ssgMatchResult.ssgName;
if (cmsMatchResult === null || cmsMatchResult === void 0 ? void 0 : cmsMatchResult.cmsName) {
config.cmsName = cmsMatchResult.cmsName;
}
const analyzeResult = await sdk_1.analyzeSite({ fileBrowser });
utils_1.printSSGMatchResult(analyzeResult.ssgMatchResult);
utils_1.printCMSMatchResult(analyzeResult.cmsMatchResult);
if (dryRun) {
const yamlConfig = sdk_1.convertToYamlConfig({ config });
const yamlConfig = sdk_1.convertToYamlConfig({ config: analyzeResult.config });
const yamlString = js_yaml_1.default.dump(yamlConfig);
console.log(`\nWould generate the following ${chalk_1.default.blueBright('stackbit.yaml')}:\n${chalk_1.default.cyanBright(yamlString)}`);
console.log(`\n${chalk_1.default.underline.bold('stackbit.yaml')}:\n${chalk_1.default.cyanBright(yamlString)}`);
}
else {
await sdk_1.writeConfig({ dirPath: inputDir, config });
await sdk_1.writeConfig({ dirPath: inputDir, config: analyzeResult.config });
}

@@ -40,0 +28,0 @@ }

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

{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,kDAA0B;AAC1B,sDAA2B;AAC3B,uCAAwI;AAExI,mCAAmE;AAE5D,KAAK,UAAU,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAyC;IAClF,OAAO,CAAC,GAAG,CAAC,sBAAsB,eAAK,CAAC,UAAU,CAAC,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;IAClF,MAAM,kBAAkB,GAAG,IAAI,kCAA4B,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IACnF,MAAM,WAAW,GAAG,IAAI,iBAAW,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAC5D,MAAM,cAAc,GAAG,MAAM,cAAQ,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IACvD,2BAAmB,CAAC,cAAc,CAAC,CAAC;IAEpC,IAAI,CAAC,cAAc,EAAE;QACjB,OAAO;KACV;IAED,MAAM,cAAc,GAAG,MAAM,cAAQ,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IACvD,2BAAmB,CAAC,cAAc,CAAC,CAAC;IAEpC,MAAM,MAAM,GAAW;QACnB,eAAe,EAAE,QAAQ;QACzB,MAAM,EAAE,EAAE;KACb,CAAC;IAEF,MAAM,CAAC,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC;IACxC,IAAI,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,OAAO,EAAE;QACzB,MAAM,CAAC,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC;KAC3C;IAED,IAAI,MAAM,EAAE;QACR,MAAM,UAAU,GAAG,yBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QACnD,MAAM,UAAU,GAAG,iBAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,kCAAkC,eAAK,CAAC,UAAU,CAAC,eAAe,CAAC,MAAM,eAAK,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;KACxH;SAAM;QACH,MAAM,iBAAW,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;KACpD;AACL,CAAC;AA/BD,oBA+BC"}
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,kDAA0B;AAC1B,sDAA2B;AAC3B,uCAAyH;AAEzH,mCAAmE;AAE5D,KAAK,UAAU,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAyC;IAClF,OAAO,CAAC,GAAG,CAAC,sBAAsB,eAAK,CAAC,UAAU,CAAC,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;IAClF,MAAM,kBAAkB,GAAG,IAAI,kCAA4B,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IACnF,MAAM,WAAW,GAAG,IAAI,iBAAW,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAC5D,MAAM,aAAa,GAAG,MAAM,iBAAW,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IAEzD,2BAAmB,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;IAClD,2BAAmB,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;IAElD,IAAI,MAAM,EAAE;QACR,MAAM,UAAU,GAAG,yBAAmB,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC;QACzE,MAAM,UAAU,GAAG,iBAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,eAAK,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;KAC/F;SAAM;QACH,MAAM,iBAAW,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC;KAC1E;AACL,CAAC;AAhBD,oBAgBC"}

@@ -36,7 +36,9 @@ #!/usr/bin/env node

})
.command('init', '[WIP] initialize stackbit configuration from project files', (yargs) => yargs.option('input-dir', {
.command('init', '[WIP] initialize stackbit configuration from project files', (yargs) => yargs
.option('input-dir', {
alias: 'i',
description: 'project dir',
default: '.'
}).option('dry-run', {
})
.option('dry-run', {
description: 'print configuration instead of writing it to stackbit.yaml',

@@ -43,0 +45,0 @@ boolean: true,

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

{"version":3,"file":"stackbit.js","sourceRoot":"","sources":["../src/stackbit.ts"],"names":[],"mappings":";;;;;;AAEA,gDAAwB;AACxB,kDAA0B;AAE1B,yCAAsC;AACtC,iCAA8B;AAC9B,iDAA6C;AAE7C,eAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACvB,OAAO,CACJ,UAAU,EACV,8FAA8F,EAC9F,CAAC,KAAK,EAAE,EAAE,CACN,KAAK;KACA,MAAM,CAAC,WAAW,EAAE;IACjB,KAAK,EAAE,GAAG;IACV,WAAW,EAAE,8BAA8B;IAC3C,OAAO,EAAE,GAAG;CACf,CAAC;KACD,OAAO,CAAC,aAAa,EAAE;IACpB,OAAO,EAAE,IAAI;IACb,WAAW,EAAE,+DAA+D;IAC5E,OAAO,EAAE,KAAK;CACjB,CAAC;KACD,OAAO,CAAC,OAAO,EAAE;IACd,KAAK,EAAE,GAAG;IACV,OAAO,EAAE,IAAI;IACb,WAAW,EAAE,8BAA8B;IAC3C,OAAO,EAAE,KAAK;CACjB,CAAC,EACV,KAAK,EAAE,IAAI,EAAE,EAAE;IACX,MAAM,mBAAQ,CAAC;QACX,QAAQ,EAAE,cAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC;QAC/B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC;KACvB,CAAC,CAAC;AACP,CAAC,CACJ;KACA,OAAO,CACJ,MAAM,EACN,4DAA4D,EAC5D,CAAC,KAAK,EAAE,EAAE,CACN,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE;IACtB,KAAK,EAAE,GAAG;IACV,WAAW,EAAE,aAAa;IAC1B,OAAO,EAAE,GAAG;CACf,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE;IACjB,WAAW,EAAE,4DAA4D;IACzE,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,KAAK;CACjB,CAAC,EACN,KAAK,EAAE,IAAI,EAAE,EAAE;IACX,MAAM,WAAI,CAAC;QACP,QAAQ,EAAE,cAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;KAC1B,CAAC,CAAC;AACP,CAAC,CACJ;KACA,OAAO,CACJ,cAAc,EACd,uGAAuG,EACvG,CAAC,KAAK,EAAE,EAAE,CACN,KAAK;KACA,MAAM,CAAC,UAAU,EAAE;IAChB,KAAK,EAAE,GAAG;IACV,WAAW,EAAE,gBAAgB;IAC7B,YAAY,EAAE,IAAI;IAClB,MAAM,EAAE,IAAI;CACf,CAAC;KACD,MAAM,CAAC,QAAQ,EAAE;IACd,KAAK,EAAE,GAAG;IACV,WAAW,EAAE,mBAAmB;IAChC,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,MAAM;CAClB,CAAC;KACD,MAAM,CAAC,MAAM,EAAE;IACZ,KAAK,EAAE,GAAG;IACV,WAAW,EAAE,sBAAsB;IACnC,MAAM,EAAE,IAAI;CACf,CAAC,EACV,KAAK,EAAE,IAAI,EAAE,EAAE;IACX,MAAM,0BAAW,CAAC;QACd,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC;QACzB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC;QACtB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;KACrB,CAAC,CAAC;AACP,CAAC,CACJ;KACA,aAAa,EAAE,CAAC,IAAI,CAAC"}
{"version":3,"file":"stackbit.js","sourceRoot":"","sources":["../src/stackbit.ts"],"names":[],"mappings":";;;;;;AAEA,gDAAwB;AACxB,kDAA0B;AAE1B,yCAAsC;AACtC,iCAA8B;AAC9B,iDAA6C;AAE7C,eAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACvB,OAAO,CACJ,UAAU,EACV,8FAA8F,EAC9F,CAAC,KAAK,EAAE,EAAE,CACN,KAAK;KACA,MAAM,CAAC,WAAW,EAAE;IACjB,KAAK,EAAE,GAAG;IACV,WAAW,EAAE,8BAA8B;IAC3C,OAAO,EAAE,GAAG;CACf,CAAC;KACD,OAAO,CAAC,aAAa,EAAE;IACpB,OAAO,EAAE,IAAI;IACb,WAAW,EAAE,+DAA+D;IAC5E,OAAO,EAAE,KAAK;CACjB,CAAC;KACD,OAAO,CAAC,OAAO,EAAE;IACd,KAAK,EAAE,GAAG;IACV,OAAO,EAAE,IAAI;IACb,WAAW,EAAE,8BAA8B;IAC3C,OAAO,EAAE,KAAK;CACjB,CAAC,EACV,KAAK,EAAE,IAAI,EAAE,EAAE;IACX,MAAM,mBAAQ,CAAC;QACX,QAAQ,EAAE,cAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC;QAC/B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC;KACvB,CAAC,CAAC;AACP,CAAC,CACJ;KACA,OAAO,CACJ,MAAM,EACN,4DAA4D,EAC5D,CAAC,KAAK,EAAE,EAAE,CACN,KAAK;KACA,MAAM,CAAC,WAAW,EAAE;IACjB,KAAK,EAAE,GAAG;IACV,WAAW,EAAE,aAAa;IAC1B,OAAO,EAAE,GAAG;CACf,CAAC;KACD,MAAM,CAAC,SAAS,EAAE;IACf,WAAW,EAAE,4DAA4D;IACzE,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,KAAK;CACjB,CAAC,EACV,KAAK,EAAE,IAAI,EAAE,EAAE;IACX,MAAM,WAAI,CAAC;QACP,QAAQ,EAAE,cAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;KAC1B,CAAC,CAAC;AACP,CAAC,CACJ;KACA,OAAO,CACJ,cAAc,EACd,uGAAuG,EACvG,CAAC,KAAK,EAAE,EAAE,CACN,KAAK;KACA,MAAM,CAAC,UAAU,EAAE;IAChB,KAAK,EAAE,GAAG;IACV,WAAW,EAAE,gBAAgB;IAC7B,YAAY,EAAE,IAAI;IAClB,MAAM,EAAE,IAAI;CACf,CAAC;KACD,MAAM,CAAC,QAAQ,EAAE;IACd,KAAK,EAAE,GAAG;IACV,WAAW,EAAE,mBAAmB;IAChC,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,MAAM;CAClB,CAAC;KACD,MAAM,CAAC,MAAM,EAAE;IACZ,KAAK,EAAE,GAAG;IACV,WAAW,EAAE,sBAAsB;IACnC,MAAM,EAAE,IAAI;CACf,CAAC,EACV,KAAK,EAAE,IAAI,EAAE,EAAE;IACX,MAAM,0BAAW,CAAC;QACd,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC;QACzB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC;QACtB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;KACrB,CAAC,CAAC;AACP,CAAC,CACJ;KACA,aAAa,EAAE,CAAC,IAAI,CAAC"}

@@ -31,3 +31,2 @@ "use strict";

function printCMSMatchResult(cmsMatchResult) {
var _a, _b;
if (!cmsMatchResult) {

@@ -37,11 +36,4 @@ return;

console.log(`Matched CMS: ${chalk_1.default.blueBright(cmsMatchResult.cmsName)}`);
if (cmsMatchResult.cmsDir === undefined) {
const possibleDirs = ((_a = cmsMatchResult.options) === null || _a === void 0 ? void 0 : _a.cmsDirs) ? ` Possible folders: ${(_b = cmsMatchResult.options) === null || _b === void 0 ? void 0 : _b.cmsDirs.join(', ')}` : '';
console.log('Could not identify CMS folder.' + possibleDirs);
}
else {
const cmsDir = cmsMatchResult.cmsDir === '' ? '.' : cmsMatchResult.cmsDir;
console.log(`CMS directory: ${chalk_1.default.blueBright(`'${cmsDir}'`)}`);
const otherProps = lodash_1.default.omit(cmsMatchResult, ['cmsName', 'cmsDir', 'options']);
lodash_1.default.forEach(otherProps, (value, prop) => {
if (cmsMatchResult.cmsData !== undefined) {
lodash_1.default.forEach(cmsMatchResult.cmsData, (value, prop) => {
console.log(`${prop}: ${chalk_1.default.blueBright(`'${value}'`)}`);

@@ -48,0 +40,0 @@ });

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

{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;;;;AACA,kDAA0B;AAC1B,oDAAuB;AAEvB,SAAgB,mBAAmB,CAAC,cAAqC;;IACrE,IAAI,CAAC,cAAc,EAAE;QACjB,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAClC,OAAO;KACV;IACD,OAAO,CAAC,GAAG,CAAC,gBAAgB,eAAK,CAAC,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACxE,IAAI,cAAc,CAAC,MAAM,KAAK,SAAS,EAAE;QACrC,MAAM,YAAY,GAAG,CAAA,MAAA,cAAc,CAAC,OAAO,0CAAE,OAAO,EAAC,CAAC,CAAC,sBAAsB,MAAA,cAAc,CAAC,OAAO,0CAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/H,OAAO,CAAC,GAAG,CAAC,gCAAgC,GAAG,YAAY,CAAC,CAAC;KAChE;SAAM;QACH,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC;QAC1E,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAK,CAAC,UAAU,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;QACjE,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAK,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC5E,IAAI,cAAc,CAAC,OAAO,EAAE;YACxB,OAAO,CAAC,GAAG,CAAC,0BAA0B,eAAK,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACrG;KACJ;AACL,CAAC;AAjBD,kDAiBC;AAED,SAAgB,mBAAmB,CAAC,cAAqC;;IACrE,IAAI,CAAC,cAAc,EAAE;QACjB,OAAO;KACV;IACD,OAAO,CAAC,GAAG,CAAC,gBAAgB,eAAK,CAAC,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACxE,IAAI,cAAc,CAAC,MAAM,KAAK,SAAS,EAAE;QACrC,MAAM,YAAY,GAAG,CAAA,MAAA,cAAc,CAAC,OAAO,0CAAE,OAAO,EAAC,CAAC,CAAC,sBAAsB,MAAA,cAAc,CAAC,OAAO,0CAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/H,OAAO,CAAC,GAAG,CAAC,gCAAgC,GAAG,YAAY,CAAC,CAAC;KAChE;SAAM;QACH,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC;QAC1E,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAK,CAAC,UAAU,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;QACjE,MAAM,UAAU,GAAG,gBAAC,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;QAC5E,gBAAC,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YAClC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,KAAK,eAAK,CAAC,UAAU,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9D,CAAC,CAAC,CAAC;KACN;AACL,CAAC;AAhBD,kDAgBC"}
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,oDAAuB;AAGvB,SAAgB,mBAAmB,CAAC,cAAqC;;IACrE,IAAI,CAAC,cAAc,EAAE;QACjB,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAClC,OAAO;KACV;IACD,OAAO,CAAC,GAAG,CAAC,gBAAgB,eAAK,CAAC,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACxE,IAAI,cAAc,CAAC,MAAM,KAAK,SAAS,EAAE;QACrC,MAAM,YAAY,GAAG,CAAA,MAAA,cAAc,CAAC,OAAO,0CAAE,OAAO,EAAC,CAAC,CAAC,sBAAsB,MAAA,cAAc,CAAC,OAAO,0CAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/H,OAAO,CAAC,GAAG,CAAC,gCAAgC,GAAG,YAAY,CAAC,CAAC;KAChE;SAAM;QACH,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC;QAC1E,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAK,CAAC,UAAU,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;QACjE,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAK,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC5E,IAAI,cAAc,CAAC,OAAO,EAAE;YACxB,OAAO,CAAC,GAAG,CAAC,0BAA0B,eAAK,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACrG;KACJ;AACL,CAAC;AAjBD,kDAiBC;AAED,SAAgB,mBAAmB,CAAC,cAAqC;IACrE,IAAI,CAAC,cAAc,EAAE;QACjB,OAAO;KACV;IACD,OAAO,CAAC,GAAG,CAAC,gBAAgB,eAAK,CAAC,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACxE,IAAI,cAAc,CAAC,OAAO,KAAK,SAAS,EAAE;QACtC,gBAAC,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YAC9C,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,KAAK,eAAK,CAAC,UAAU,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9D,CAAC,CAAC,CAAC;KACN;AACL,CAAC;AAVD,kDAUC"}
{
"name": "@stackbit/cli",
"version": "0.1.5",
"version": "0.1.6",
"description": "Stackbit CLI",

@@ -37,3 +37,3 @@ "main": "dist/stackbit.js",

"dependencies": {
"@stackbit/sdk": "^0.1.6",
"@stackbit/sdk": "^0.1.9",
"chalk": "^4.1.0",

@@ -40,0 +40,0 @@ "js-yaml": "^4.0.0",

@@ -1,3 +0,6 @@

import { FileBrowser, GitHubFileBrowserAdapter, matchCMS, matchSSG } from '@stackbit/sdk';
import { analyzeSite, convertToYamlConfig, FileBrowser, GitHubFileBrowserAdapter } from '@stackbit/sdk';
import { printCMSMatchResult, printSSGMatchResult } from './utils';
import yaml from 'js-yaml';
import chalk from 'chalk';

@@ -17,3 +20,3 @@ export interface AnalyzeRepoOptions {

console.log(`Analyzing repository files in ${repoUrl} ...`);
console.log(`Analyzing repository files in ${repoUrl}, branch: ${branch} ...`);
const fileBrowserAdapter = new GitHubFileBrowserAdapter({

@@ -26,10 +29,10 @@ owner: parsedUrl.owner,

const fileBrowser = new FileBrowser({ fileBrowserAdapter });
const ssgMatchResult = await matchSSG({ fileBrowser });
printSSGMatchResult(ssgMatchResult);
const analyzeResult = await analyzeSite({ fileBrowser });
if (!ssgMatchResult) {
return;
}
const cmsMatchResult = await matchCMS({ fileBrowser });
printCMSMatchResult(cmsMatchResult);
printSSGMatchResult(analyzeResult.ssgMatchResult);
printCMSMatchResult(analyzeResult.cmsMatchResult);
const yamlConfig = convertToYamlConfig({ config: analyzeResult.config });
const yamlString = yaml.dump(yamlConfig);
console.log(`\n${chalk.underline.bold('stackbit.yaml')}:\n${chalk.cyanBright(yamlString)}`);
}

@@ -36,0 +39,0 @@

import path from 'path';
import chalk from 'chalk';
import yaml from 'js-yaml';
import { matchSSG, FileSystemFileBrowserAdapter, FileBrowser, matchCMS, writeConfig, Config, convertToYamlConfig } from '@stackbit/sdk';
import { FileSystemFileBrowserAdapter, FileBrowser, writeConfig, convertToYamlConfig, analyzeSite } from '@stackbit/sdk';

@@ -12,29 +12,14 @@ import { printCMSMatchResult, printSSGMatchResult } from './utils';

const fileBrowser = new FileBrowser({ fileBrowserAdapter });
const ssgMatchResult = await matchSSG({ fileBrowser });
printSSGMatchResult(ssgMatchResult);
const analyzeResult = await analyzeSite({ fileBrowser });
if (!ssgMatchResult) {
return;
}
printSSGMatchResult(analyzeResult.ssgMatchResult);
printCMSMatchResult(analyzeResult.cmsMatchResult);
const cmsMatchResult = await matchCMS({ fileBrowser });
printCMSMatchResult(cmsMatchResult);
const config: Config = {
stackbitVersion: '~0.3.0',
models: []
};
config.ssgName = ssgMatchResult.ssgName;
if (cmsMatchResult?.cmsName) {
config.cmsName = cmsMatchResult.cmsName;
}
if (dryRun) {
const yamlConfig = convertToYamlConfig({ config });
const yamlConfig = convertToYamlConfig({ config: analyzeResult.config });
const yamlString = yaml.dump(yamlConfig);
console.log(`\nWould generate the following ${chalk.blueBright('stackbit.yaml')}:\n${chalk.cyanBright(yamlString)}`);
console.log(`\n${chalk.underline.bold('stackbit.yaml')}:\n${chalk.cyanBright(yamlString)}`);
} else {
await writeConfig({ dirPath: inputDir, config });
await writeConfig({ dirPath: inputDir, config: analyzeResult.config });
}
}

@@ -44,11 +44,13 @@ #!/usr/bin/env node

(yargs) =>
yargs.option('input-dir', {
alias: 'i',
description: 'project dir',
default: '.'
}).option('dry-run', {
description: 'print configuration instead of writing it to stackbit.yaml',
boolean: true,
default: false
}),
yargs
.option('input-dir', {
alias: 'i',
description: 'project dir',
default: '.'
})
.option('dry-run', {
description: 'print configuration instead of writing it to stackbit.yaml',
boolean: true,
default: false
}),
async (argv) => {

@@ -55,0 +57,0 @@ await init({

@@ -1,4 +0,4 @@

import { CMSMatchResult, SSGMatchResult } from '@stackbit/sdk';
import chalk from 'chalk';
import _ from 'lodash';
import { CMSMatchResult, SSGMatchResult } from '@stackbit/sdk';

@@ -29,10 +29,4 @@ export function printSSGMatchResult(ssgMatchResult: SSGMatchResult | null) {

console.log(`Matched CMS: ${chalk.blueBright(cmsMatchResult.cmsName)}`);
if (cmsMatchResult.cmsDir === undefined) {
const possibleDirs = cmsMatchResult.options?.cmsDirs ? ` Possible folders: ${cmsMatchResult.options?.cmsDirs.join(', ')}` : '';
console.log('Could not identify CMS folder.' + possibleDirs);
} else {
const cmsDir = cmsMatchResult.cmsDir === '' ? '.' : cmsMatchResult.cmsDir;
console.log(`CMS directory: ${chalk.blueBright(`'${cmsDir}'`)}`);
const otherProps = _.omit(cmsMatchResult, ['cmsName', 'cmsDir', 'options']);
_.forEach(otherProps, (value, prop) => {
if (cmsMatchResult.cmsData !== undefined) {
_.forEach(cmsMatchResult.cmsData, (value, prop) => {
console.log(`${prop}: ${chalk.blueBright(`'${value}'`)}`);

@@ -39,0 +33,0 @@ });