@dittowords/cli 3.10.1 → 4.0.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 +125 -36
- package/bin/add-project.js +101 -33
- package/bin/add-project.js.map +1 -1
- package/bin/api.js +49 -15
- package/bin/api.js.map +1 -1
- package/bin/component-folders.js +56 -7
- package/bin/component-folders.js.map +1 -1
- package/bin/config.js +206 -170
- package/bin/config.js.map +1 -1
- package/bin/config.test.js +92 -0
- package/bin/config.test.js.map +1 -0
- package/bin/consts.js +64 -18
- package/bin/consts.js.map +1 -1
- package/bin/ditto.js +250 -200
- package/bin/ditto.js.map +1 -1
- package/bin/generate-suggestions.js +155 -78
- package/bin/generate-suggestions.js.map +1 -1
- package/bin/generate-suggestions.test.js +189 -0
- package/bin/generate-suggestions.test.js.map +1 -0
- package/bin/http/fetchComponentFolders.js +60 -8
- package/bin/http/fetchComponentFolders.js.map +1 -1
- package/bin/http/fetchComponents.js +65 -18
- package/bin/http/fetchComponents.js.map +1 -1
- package/bin/http/fetchVariants.js +74 -14
- package/bin/http/fetchVariants.js.map +1 -1
- package/bin/http/importComponents.js +100 -49
- package/bin/http/importComponents.js.map +1 -1
- package/bin/importComponents.js +61 -10
- package/bin/importComponents.js.map +1 -1
- package/bin/init/init.js +120 -44
- package/bin/init/init.js.map +1 -1
- package/bin/init/project.js +160 -83
- package/bin/init/project.js.map +1 -1
- package/bin/init/project.test.js +49 -0
- package/bin/init/project.test.js.map +1 -0
- package/bin/init/token.js +134 -74
- package/bin/init/token.js.map +1 -1
- package/bin/init/token.test.js +69 -0
- package/bin/init/token.test.js.map +1 -0
- package/bin/output.js +72 -30
- package/bin/output.js.map +1 -1
- package/bin/pull.js +424 -213
- package/bin/pull.js.map +1 -1
- package/bin/pull.test.js +410 -0
- package/bin/pull.test.js.map +1 -0
- package/bin/remove-project.js +91 -27
- package/bin/remove-project.js.map +1 -1
- package/bin/replace.js +140 -100
- package/bin/replace.js.map +1 -1
- package/bin/replace.test.js +155 -0
- package/bin/replace.test.js.map +1 -0
- package/bin/sentry-test.js.map +1 -0
- package/bin/types.js +20 -2
- package/bin/types.js.map +1 -1
- package/bin/utils/cleanFileName.js +32 -8
- package/bin/utils/cleanFileName.js.map +1 -1
- package/bin/utils/createSentryContext.js +43 -0
- package/bin/utils/createSentryContext.js.map +1 -0
- package/bin/utils/generateJsDriver.js +114 -51
- package/bin/utils/generateJsDriver.js.map +1 -1
- package/bin/utils/getSelectedProjects.js +58 -52
- package/bin/utils/getSelectedProjects.js.map +1 -1
- package/bin/utils/processMetaOption.js +36 -11
- package/bin/utils/processMetaOption.js.map +1 -1
- package/bin/utils/processMetaOption.test.js +45 -0
- package/bin/utils/processMetaOption.test.js.map +1 -0
- package/bin/utils/projectsToText.js +52 -19
- package/bin/utils/projectsToText.js.map +1 -1
- package/bin/utils/promptForProject.js +89 -36
- package/bin/utils/promptForProject.js.map +1 -1
- package/bin/utils/quit.js +36 -7
- package/bin/utils/quit.js.map +1 -1
- package/bin/utils/sourcesToText.js +51 -19
- package/bin/utils/sourcesToText.js.map +1 -1
- package/etsc.config.js +13 -0
- package/lib/config.ts +27 -8
- package/lib/ditto.ts +6 -0
- package/lib/init/project.ts +3 -3
- package/lib/pull.ts +190 -52
- package/lib/types.ts +24 -7
- package/lib/utils/createSentryContext.ts +20 -0
- package/lib/utils/generateJsDriver.ts +40 -6
- package/lib/utils/quit.ts +2 -3
- package/package.json +10 -6
- package/tsconfig.json +4 -1
- package/bin/lib/add-project.js +0 -36
- package/bin/lib/add-project.js.map +0 -1
- package/bin/lib/api.js +0 -20
- package/bin/lib/api.js.map +0 -1
- package/bin/lib/config.js +0 -202
- package/bin/lib/config.js.map +0 -1
- package/bin/lib/consts.js +0 -21
- package/bin/lib/consts.js.map +0 -1
- package/bin/lib/ditto.js +0 -121
- package/bin/lib/ditto.js.map +0 -1
- package/bin/lib/generate-suggestions.js +0 -71
- package/bin/lib/generate-suggestions.js.map +0 -1
- package/bin/lib/http/fetchComponents.js +0 -13
- package/bin/lib/http/fetchComponents.js.map +0 -1
- package/bin/lib/http/fetchVariants.js +0 -26
- package/bin/lib/http/fetchVariants.js.map +0 -1
- package/bin/lib/init/init.js +0 -50
- package/bin/lib/init/init.js.map +0 -1
- package/bin/lib/init/project.js +0 -108
- package/bin/lib/init/project.js.map +0 -1
- package/bin/lib/init/token.js +0 -91
- package/bin/lib/init/token.js.map +0 -1
- package/bin/lib/output.js +0 -34
- package/bin/lib/output.js.map +0 -1
- package/bin/lib/pull.js +0 -264
- package/bin/lib/pull.js.map +0 -1
- package/bin/lib/remove-project.js +0 -35
- package/bin/lib/remove-project.js.map +0 -1
- package/bin/lib/replace.js +0 -107
- package/bin/lib/replace.js.map +0 -1
- package/bin/lib/types.js +0 -3
- package/bin/lib/types.js.map +0 -1
- package/bin/lib/utils/cleanFileName.js +0 -11
- package/bin/lib/utils/cleanFileName.js.map +0 -1
- package/bin/lib/utils/generateJsDriver.js +0 -56
- package/bin/lib/utils/generateJsDriver.js.map +0 -1
- package/bin/lib/utils/getSelectedProjects.js +0 -61
- package/bin/lib/utils/getSelectedProjects.js.map +0 -1
- package/bin/lib/utils/processMetaOption.js +0 -15
- package/bin/lib/utils/processMetaOption.js.map +0 -1
- package/bin/lib/utils/projectsToText.js +0 -25
- package/bin/lib/utils/projectsToText.js.map +0 -1
- package/bin/lib/utils/promptForProject.js +0 -43
- package/bin/lib/utils/promptForProject.js.map +0 -1
- package/bin/lib/utils/quit.js +0 -10
- package/bin/lib/utils/quit.js.map +0 -1
- package/bin/lib/utils/sourcesToText.js +0 -25
- package/bin/lib/utils/sourcesToText.js.map +0 -1
- package/bin/package.json +0 -76
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.generateJsDriver = void 0;
|
|
7
|
-
const fs_1 = __importDefault(require("fs"));
|
|
8
|
-
const path_1 = __importDefault(require("path"));
|
|
9
|
-
const consts_1 = __importDefault(require("../consts"));
|
|
10
|
-
const output_1 = __importDefault(require("../output"));
|
|
11
|
-
const cleanFileName_1 = require("./cleanFileName");
|
|
12
|
-
// compatability with legacy method of specifying project ids
|
|
13
|
-
// that is still used by the default format
|
|
14
|
-
const stringifySourceId = (projectId) => projectId === "ditto_component_library" ? projectId : `project_${projectId}`;
|
|
15
|
-
/**
|
|
16
|
-
* Generates an index.js file that can be consumed
|
|
17
|
-
* by an SDK - this is a big DX improvement because
|
|
18
|
-
* it provides a single entry point to get all data
|
|
19
|
-
* (including variants) instead of having to import
|
|
20
|
-
* each generated file individually.
|
|
21
|
-
*
|
|
22
|
-
* The generated file will have a unified format
|
|
23
|
-
* independent of the CLI configuration used to fetch
|
|
24
|
-
* data from Ditto.
|
|
25
|
-
*/
|
|
26
|
-
// TODO: support ESM
|
|
27
|
-
function generateJsDriver(sources) {
|
|
28
|
-
const fileNames = fs_1.default
|
|
29
|
-
.readdirSync(consts_1.default.TEXT_DIR)
|
|
30
|
-
.filter((fileName) => /\.json$/.test(fileName));
|
|
31
|
-
const sourceIdsByName = sources.reduce((agg, source) => {
|
|
32
|
-
if (source.fileName) {
|
|
33
|
-
return { ...agg, [(0, cleanFileName_1.cleanFileName)(source.fileName)]: source.id };
|
|
34
|
-
}
|
|
35
|
-
return agg;
|
|
36
|
-
}, {});
|
|
37
|
-
const data = fileNames.reduce((obj, fileName) => {
|
|
38
|
-
const [sourceId, rest] = fileName.split("__");
|
|
39
|
-
const [variantApiId] = rest.split(".");
|
|
40
|
-
const projectId = sourceIdsByName[sourceId];
|
|
41
|
-
const projectIdStr = stringifySourceId(projectId);
|
|
42
|
-
if (!obj[projectIdStr]) {
|
|
43
|
-
obj[projectIdStr] = {};
|
|
44
|
-
}
|
|
45
|
-
obj[projectIdStr][variantApiId] = `require('./${fileName}')`;
|
|
46
|
-
return obj;
|
|
47
|
-
}, {});
|
|
48
|
-
let dataString = `module.exports = ${JSON.stringify(data, null, 2)}`
|
|
49
|
-
// remove quotes around require statements
|
|
50
|
-
.replace(/"require\((.*)\)"/g, "require($1)");
|
|
51
|
-
const filePath = path_1.default.resolve(consts_1.default.TEXT_DIR, "index.js");
|
|
52
|
-
fs_1.default.writeFileSync(filePath, dataString, { encoding: "utf8" });
|
|
53
|
-
return `Generated .js SDK driver at ${output_1.default.info(filePath)}`;
|
|
54
|
-
}
|
|
55
|
-
exports.generateJsDriver = generateJsDriver;
|
|
56
|
-
//# sourceMappingURL=generateJsDriver.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generateJsDriver.js","sourceRoot":"","sources":["../../../lib/utils/generateJsDriver.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AACxB,uDAA+B;AAC/B,uDAA+B;AAE/B,mDAAgD;AAEhD,6DAA6D;AAC7D,2CAA2C;AAC3C,MAAM,iBAAiB,GAAG,CAAC,SAAiB,EAAE,EAAE,CAC9C,SAAS,KAAK,yBAAyB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,SAAS,EAAE,CAAC;AAE/E;;;;;;;;;;GAUG;AAEH,oBAAoB;AACpB,SAAgB,gBAAgB,CAAC,OAAiB;IAChD,MAAM,SAAS,GAAG,YAAE;SACjB,WAAW,CAAC,gBAAM,CAAC,QAAQ,CAAC;SAC5B,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAElD,MAAM,eAAe,GAA2B,OAAO,CAAC,MAAM,CAC5D,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;QACd,IAAI,MAAM,CAAC,QAAQ,EAAE;YACnB,OAAO,EAAE,GAAG,GAAG,EAAE,CAAC,IAAA,6BAAa,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;SAChE;QAED,OAAO,GAAG,CAAC;IACb,CAAC,EACD,EAAE,CACH,CAAC;IAEF,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAC3B,CAAC,GAA2C,EAAE,QAAQ,EAAE,EAAE;QACxD,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEvC,MAAM,SAAS,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,YAAY,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAElD,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YACtB,GAAG,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;SACxB;QAED,GAAG,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,GAAG,cAAc,QAAQ,IAAI,CAAC;QAC7D,OAAO,GAAG,CAAC;IACb,CAAC,EACD,EAAE,CACH,CAAC;IAEF,IAAI,UAAU,GAAG,oBAAoB,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;QAClE,0CAA0C;SACzC,OAAO,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAC;IAEhD,MAAM,QAAQ,GAAG,cAAI,CAAC,OAAO,CAAC,gBAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC3D,YAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IAE7D,OAAO,+BAA+B,gBAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;AAChE,CAAC;AA1CD,4CA0CC"}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.getIsUsingComponents = exports.getSelectedProjects = void 0;
|
|
30
|
-
const js_yaml_1 = __importStar(require("js-yaml"));
|
|
31
|
-
const consts_1 = require("../consts");
|
|
32
|
-
const config_1 = __importDefault(require("../config"));
|
|
33
|
-
function jsonIsConfigYAML(json) {
|
|
34
|
-
return typeof json === "object";
|
|
35
|
-
}
|
|
36
|
-
function yamlToJson(_yaml) {
|
|
37
|
-
try {
|
|
38
|
-
let configYaml = js_yaml_1.default.load(_yaml);
|
|
39
|
-
if (!jsonIsConfigYAML(configYaml)) {
|
|
40
|
-
return {};
|
|
41
|
-
}
|
|
42
|
-
return configYaml;
|
|
43
|
-
}
|
|
44
|
-
catch (e) {
|
|
45
|
-
if (e instanceof js_yaml_1.YAMLException) {
|
|
46
|
-
return null;
|
|
47
|
-
}
|
|
48
|
-
else {
|
|
49
|
-
throw e;
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Returns an array containing all valid projects ({ id, name })
|
|
55
|
-
* currently contained in the project config file.
|
|
56
|
-
*/
|
|
57
|
-
const getSelectedProjects = (configFile = consts_1.PROJECT_CONFIG_FILE) => config_1.default.parseSourceInformation(configFile).validProjects;
|
|
58
|
-
exports.getSelectedProjects = getSelectedProjects;
|
|
59
|
-
const getIsUsingComponents = (configFile = consts_1.PROJECT_CONFIG_FILE) => config_1.default.parseSourceInformation(configFile).shouldFetchComponentLibrary;
|
|
60
|
-
exports.getIsUsingComponents = getIsUsingComponents;
|
|
61
|
-
//# sourceMappingURL=getSelectedProjects.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getSelectedProjects.js","sourceRoot":"","sources":["../../../lib/utils/getSelectedProjects.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,mDAA8C;AAE9C,sCAAgD;AAEhD,uDAAwD;AAExD,SAAS,gBAAgB,CAAC,IAAa;IACrC,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC;AAClC,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,IAAI;QACF,IAAI,UAAU,GAAG,iBAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE;YACjC,OAAO,EAAE,CAAC;SACX;QACD,OAAO,UAAU,CAAC;KACnB;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,CAAC,YAAY,uBAAa,EAAE;YAC9B,OAAO,IAAI,CAAC;SACb;aAAM;YACL,MAAM,CAAC,CAAC;SACT;KACF;AACH,CAAC;AAED;;;GAGG;AACI,MAAM,mBAAmB,GAAG,CAAC,UAAU,GAAG,4BAAmB,EAAE,EAAE,CACtE,gBAAM,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC,aAAa,CAAC;AAD7C,QAAA,mBAAmB,uBAC0B;AAEnD,MAAM,oBAAoB,GAAG,CAAC,UAAU,GAAG,4BAAmB,EAAE,EAAE,CACvE,gBAAM,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC,2BAA2B,CAAC;AAD3D,QAAA,oBAAoB,wBACuC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const processMetaOption = (inputArr) => {
|
|
4
|
-
const res = {};
|
|
5
|
-
if (!Array.isArray(inputArr)) {
|
|
6
|
-
return res;
|
|
7
|
-
}
|
|
8
|
-
inputArr.forEach((element) => {
|
|
9
|
-
const [key, value] = element.split(":");
|
|
10
|
-
res[key] = value;
|
|
11
|
-
});
|
|
12
|
-
return res;
|
|
13
|
-
};
|
|
14
|
-
exports.default = processMetaOption;
|
|
15
|
-
//# sourceMappingURL=processMetaOption.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"processMetaOption.js","sourceRoot":"","sources":["../../../lib/utils/processMetaOption.ts"],"names":[],"mappings":";;AAAA,MAAM,iBAAiB,GAAG,CAAC,QAAyB,EAAE,EAAE;IACtD,MAAM,GAAG,GAA2B,EAAE,CAAC;IAEvC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAC5B,OAAO,GAAG,CAAC;KACZ;IAED,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC3B,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,kBAAe,iBAAiB,CAAC"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.getSourceUrl = void 0;
|
|
7
|
-
const output_1 = __importDefault(require("../output"));
|
|
8
|
-
const getSourceUrl = (sourceId) => {
|
|
9
|
-
let base = "https://app.dittowords.com";
|
|
10
|
-
if (sourceId === "ditto_component_library") {
|
|
11
|
-
return `${base}/components`;
|
|
12
|
-
}
|
|
13
|
-
return `${base}/doc/${sourceId}`;
|
|
14
|
-
};
|
|
15
|
-
exports.getSourceUrl = getSourceUrl;
|
|
16
|
-
const projectsToText = (projects) => {
|
|
17
|
-
return ((projects || []).reduce((outputString, { name, id }) => outputString +
|
|
18
|
-
("\n" +
|
|
19
|
-
"- " +
|
|
20
|
-
output_1.default.info(name) +
|
|
21
|
-
" " +
|
|
22
|
-
output_1.default.subtle((0, exports.getSourceUrl)(id))), "") + "\n");
|
|
23
|
-
};
|
|
24
|
-
exports.default = projectsToText;
|
|
25
|
-
//# sourceMappingURL=projectsToText.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"projectsToText.js","sourceRoot":"","sources":["../../../lib/utils/projectsToText.ts"],"names":[],"mappings":";;;;;;AAAA,uDAA+B;AAGxB,MAAM,YAAY,GAAG,CAAC,QAAgB,EAAE,EAAE;IAC/C,IAAI,IAAI,GAAG,4BAA4B,CAAC;IAExC,IAAI,QAAQ,KAAK,yBAAyB,EAAE;QAC1C,OAAO,GAAG,IAAI,aAAa,CAAC;KAC7B;IAED,OAAO,GAAG,IAAI,QAAQ,QAAQ,EAAE,CAAC;AACnC,CAAC,CAAC;AARW,QAAA,YAAY,gBAQvB;AAEF,MAAM,cAAc,GAAG,CAAC,QAAmB,EAAE,EAAE;IAC7C,OAAO,CACL,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,CACrB,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAC7B,YAAY;QACZ,CAAC,IAAI;YACH,IAAI;YACJ,gBAAM,CAAC,IAAI,CAAC,IAAI,CAAC;YACjB,GAAG;YACH,gBAAM,CAAC,MAAM,CAAC,IAAA,oBAAY,EAAC,EAAE,CAAC,CAAC,CAAC,EACpC,EAAE,CACH,GAAG,IAAI,CACT,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,cAAc,CAAC"}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const { AutoComplete } = require("enquirer");
|
|
7
|
-
const output_1 = __importDefault(require("../output"));
|
|
8
|
-
const projectsToText_1 = require("./projectsToText");
|
|
9
|
-
function formatProjectChoice(project) {
|
|
10
|
-
return (project.name + " " + output_1.default.subtle(project.url || (0, projectsToText_1.getSourceUrl)(project.id)));
|
|
11
|
-
}
|
|
12
|
-
function parseResponse(response) {
|
|
13
|
-
if (!response) {
|
|
14
|
-
return null;
|
|
15
|
-
}
|
|
16
|
-
const [, name, id] = response.split(/^(.*)\s.*http.*\/(\w+).*$/);
|
|
17
|
-
if (id === "all") {
|
|
18
|
-
return { name, id: "ditto_component_library" };
|
|
19
|
-
}
|
|
20
|
-
return { name, id };
|
|
21
|
-
}
|
|
22
|
-
const promptForProject = async ({ message, projects, limit = 10, }) => {
|
|
23
|
-
output_1.default.nl();
|
|
24
|
-
const choices = projects.map(formatProjectChoice);
|
|
25
|
-
const prompt = new AutoComplete({
|
|
26
|
-
name: "project",
|
|
27
|
-
message,
|
|
28
|
-
limit,
|
|
29
|
-
choices,
|
|
30
|
-
});
|
|
31
|
-
let response;
|
|
32
|
-
try {
|
|
33
|
-
response = await prompt.run();
|
|
34
|
-
}
|
|
35
|
-
catch (e) {
|
|
36
|
-
// this catch handles the case where someone presses
|
|
37
|
-
// Ctrl + C to kill the AutoComplete process
|
|
38
|
-
response = null;
|
|
39
|
-
}
|
|
40
|
-
return parseResponse(response);
|
|
41
|
-
};
|
|
42
|
-
exports.default = promptForProject;
|
|
43
|
-
//# sourceMappingURL=promptForProject.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"promptForProject.js","sourceRoot":"","sources":["../../../lib/utils/promptForProject.ts"],"names":[],"mappings":";;;;;AAAA,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAE7C,uDAA+B;AAE/B,qDAAgD;AAEhD,SAAS,mBAAmB,CAAC,OAAgB;IAC3C,OAAO,CACL,OAAO,CAAC,IAAI,GAAG,GAAG,GAAG,gBAAM,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,IAAA,6BAAY,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAC5E,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,QAAgB;IACrC,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,IAAI,CAAC;KACb;IAED,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAEjE,IAAI,EAAE,KAAK,KAAK,EAAE;QAChB,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,yBAAyB,EAAE,CAAC;KAChD;IAED,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AACtB,CAAC;AAQD,MAAM,gBAAgB,GAAG,KAAK,EAAE,EAC9B,OAAO,EACP,QAAQ,EACR,KAAK,GAAG,EAAE,GACU,EAAE,EAAE;IACxB,gBAAM,CAAC,EAAE,EAAE,CAAC;IAEZ,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC;QAC9B,IAAI,EAAE,SAAS;QACf,OAAO;QACP,KAAK;QACL,OAAO;KACR,CAAC,CAAC;IAEH,IAAI,QAAQ,CAAC;IAEb,IAAI;QACF,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC;KAC/B;IAAC,OAAO,CAAC,EAAE;QACV,oDAAoD;QACpD,4CAA4C;QAC5C,QAAQ,GAAG,IAAI,CAAC;KACjB;IAED,OAAO,aAAa,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC,CAAC;AAEF,kBAAe,gBAAgB,CAAC"}
|
package/bin/lib/utils/quit.js
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.quit = void 0;
|
|
4
|
-
function quit(message, exitCode = 2) {
|
|
5
|
-
console.log(`\n${message}\n`);
|
|
6
|
-
process.exitCode = exitCode;
|
|
7
|
-
process.exit();
|
|
8
|
-
}
|
|
9
|
-
exports.quit = quit;
|
|
10
|
-
//# sourceMappingURL=quit.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"quit.js","sourceRoot":"","sources":["../../../lib/utils/quit.ts"],"names":[],"mappings":";;;AAAA,SAAgB,IAAI,CAAC,OAAe,EAAE,QAAQ,GAAG,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,KAAK,OAAO,IAAI,CAAC,CAAC;IAC9B,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC5B,OAAO,CAAC,IAAI,EAAE,CAAC;AACjB,CAAC;AAJD,oBAIC"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const output_1 = __importDefault(require("../output"));
|
|
7
|
-
const projectsToText_1 = __importDefault(require("./projectsToText"));
|
|
8
|
-
const sourcesToText = (projects, componentLibrary) => {
|
|
9
|
-
let message = "";
|
|
10
|
-
if (componentLibrary) {
|
|
11
|
-
message += `the ${output_1.default.info("Ditto Component Library")}`;
|
|
12
|
-
if ((projects || []).length) {
|
|
13
|
-
message += " and ";
|
|
14
|
-
}
|
|
15
|
-
else {
|
|
16
|
-
message += "..";
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
if ((projects || []).length) {
|
|
20
|
-
message += `the following projects: ${(0, projectsToText_1.default)(projects)}\n`;
|
|
21
|
-
}
|
|
22
|
-
return message;
|
|
23
|
-
};
|
|
24
|
-
exports.default = sourcesToText;
|
|
25
|
-
//# sourceMappingURL=sourcesToText.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sourcesToText.js","sourceRoot":"","sources":["../../../lib/utils/sourcesToText.ts"],"names":[],"mappings":";;;;;AAAA,uDAA+B;AAC/B,sEAA8C;AAG9C,MAAM,aAAa,GAAG,CAAC,QAAmB,EAAE,gBAAyB,EAAE,EAAE;IACvE,IAAI,OAAO,GAAG,EAAE,CAAC;IAEjB,IAAI,gBAAgB,EAAE;QACpB,OAAO,IAAI,OAAO,gBAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC;QAE3D,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;YAC3B,OAAO,IAAI,OAAO,CAAC;SACpB;aAAM;YACL,OAAO,IAAI,IAAI,CAAC;SACjB;KACF;IAED,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAC3B,OAAO,IAAI,2BAA2B,IAAA,wBAAc,EAAC,QAAQ,CAAC,IAAI,CAAC;KACpE;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,kBAAe,aAAa,CAAC"}
|
package/bin/package.json
DELETED
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@dittowords/cli",
|
|
3
|
-
"version": "3.2.1-alpha",
|
|
4
|
-
"description": "Command Line Interface for Ditto (dittowords.com).",
|
|
5
|
-
"main": "bin/index.js",
|
|
6
|
-
"scripts": {
|
|
7
|
-
"prepublish": "tsc",
|
|
8
|
-
"prepare": "husky install",
|
|
9
|
-
"start": "tsc && node bin/ditto.js",
|
|
10
|
-
"sync": "tsc && node bin/ditto.js pull",
|
|
11
|
-
"dev": "tsc --watch"
|
|
12
|
-
},
|
|
13
|
-
"repository": {
|
|
14
|
-
"type": "git",
|
|
15
|
-
"url": "git+https://github.com/dittowords/cli.git"
|
|
16
|
-
},
|
|
17
|
-
"bugs": {
|
|
18
|
-
"url": "https://github.com/dittowords/cli/issues"
|
|
19
|
-
},
|
|
20
|
-
"author": "Ditto Tech Inc.",
|
|
21
|
-
"license": "MIT",
|
|
22
|
-
"keywords": [
|
|
23
|
-
"ditto",
|
|
24
|
-
"dittowords",
|
|
25
|
-
"copy",
|
|
26
|
-
"microcopy",
|
|
27
|
-
"product",
|
|
28
|
-
"cli",
|
|
29
|
-
"api"
|
|
30
|
-
],
|
|
31
|
-
"types": "bin/ditto.d.ts",
|
|
32
|
-
"bin": {
|
|
33
|
-
"ditto-cli": "bin/ditto.js"
|
|
34
|
-
},
|
|
35
|
-
"devDependencies": {
|
|
36
|
-
"@babel/preset-env": "^7.20.2",
|
|
37
|
-
"@babel/preset-typescript": "^7.18.6",
|
|
38
|
-
"@tsconfig/node16": "^1.0.3",
|
|
39
|
-
"@types/jest": "^26.0.9",
|
|
40
|
-
"@types/js-yaml": "^4.0.5",
|
|
41
|
-
"@types/node": "^18.0.0",
|
|
42
|
-
"babel-jest": "^29.3.1",
|
|
43
|
-
"eslint": "^8.27.0",
|
|
44
|
-
"eslint-config-airbnb-base": "^14.2.0",
|
|
45
|
-
"husky": "^7.0.4",
|
|
46
|
-
"jest": "^29.3.1",
|
|
47
|
-
"lint-staged": "^11.2.4",
|
|
48
|
-
"prettier": "2.4.1",
|
|
49
|
-
"rewire": "^6.0.0",
|
|
50
|
-
"source-map": "^0.7.3",
|
|
51
|
-
"tempy": "^0.6.0",
|
|
52
|
-
"typescript": "^4.7.4"
|
|
53
|
-
},
|
|
54
|
-
"dependencies": {
|
|
55
|
-
"@babel/core": "^7.11.4",
|
|
56
|
-
"@babel/parser": "^7.21.4",
|
|
57
|
-
"@babel/traverse": "^7.21.4",
|
|
58
|
-
"@babel/types": "^7.21.4",
|
|
59
|
-
"@types/babel-traverse": "^6.25.7",
|
|
60
|
-
"@types/fs-extra": "^11.0.1",
|
|
61
|
-
"axios": "^0.27.2",
|
|
62
|
-
"boxen": "^5.1.2",
|
|
63
|
-
"chalk": "^4.1.0",
|
|
64
|
-
"commander": "^6.1.0",
|
|
65
|
-
"enquirer": "^2.3.6",
|
|
66
|
-
"faker": "^5.1.0",
|
|
67
|
-
"fs-extra": "^11.1.1",
|
|
68
|
-
"glob": "^9.3.4",
|
|
69
|
-
"js-yaml": "^4.1.0",
|
|
70
|
-
"ora": "^5.0.0",
|
|
71
|
-
"v8-compile-cache": "^2.1.1"
|
|
72
|
-
},
|
|
73
|
-
"lint-staged": {
|
|
74
|
-
"src/**/*.{js,jsx,ts,tsx,css,json}": "prettier --write"
|
|
75
|
-
}
|
|
76
|
-
}
|