@stackbit/cms-core 0.0.20 → 0.0.21-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/annotator/html.d.ts +1 -0
- package/dist/annotator/html.d.ts.map +1 -0
- package/dist/annotator/index.d.ts +3 -2
- package/dist/annotator/index.d.ts.map +1 -0
- package/dist/annotator/react.d.ts +1 -0
- package/dist/annotator/react.d.ts.map +1 -0
- package/dist/common/common-schema.d.ts +3 -10
- package/dist/common/common-schema.d.ts.map +1 -0
- package/dist/common/common-schema.js +3 -4
- package/dist/common/common-schema.js.map +1 -1
- package/dist/common/common-types.d.ts +10 -0
- package/dist/common/common-types.d.ts.map +1 -0
- package/dist/common/common-types.js +3 -0
- package/dist/common/common-types.js.map +1 -0
- package/dist/consts.d.ts +1 -0
- package/dist/consts.d.ts.map +1 -0
- package/dist/content-source-interface.d.ts +338 -0
- package/dist/content-source-interface.d.ts.map +1 -0
- package/dist/content-source-interface.js +28 -0
- package/dist/content-source-interface.js.map +1 -0
- package/dist/content-store-types.d.ts +347 -0
- package/dist/content-store-types.d.ts.map +1 -0
- package/dist/content-store-types.js +3 -0
- package/dist/content-store-types.js.map +1 -0
- package/dist/content-store.d.ts +210 -0
- package/dist/content-store.d.ts.map +1 -0
- package/dist/content-store.js +1814 -0
- package/dist/content-store.js.map +1 -0
- package/dist/encoder.d.ts +36 -7
- package/dist/encoder.d.ts.map +1 -0
- package/dist/encoder.js +63 -40
- package/dist/encoder.js.map +1 -1
- package/dist/index.d.ts +12 -6
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +38 -11
- package/dist/index.js.map +1 -1
- package/dist/stackbit/index.d.ts +7 -3
- package/dist/stackbit/index.d.ts.map +1 -0
- package/dist/stackbit/index.js +13 -10
- package/dist/stackbit/index.js.map +1 -1
- package/dist/utils/index.d.ts +8 -7
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/schema-utils.d.ts +3 -2
- package/dist/utils/schema-utils.d.ts.map +1 -0
- package/dist/utils/timer.d.ts +18 -0
- package/dist/utils/timer.d.ts.map +1 -0
- package/dist/utils/timer.js +36 -0
- package/dist/utils/timer.js.map +1 -0
- package/package.json +8 -4
- package/src/common/common-schema.ts +12 -0
- package/src/common/common-types.ts +10 -0
- package/src/content-source-interface.ts +495 -0
- package/src/content-store-types.ts +430 -0
- package/src/content-store.ts +2333 -0
- package/src/{encoder.js → encoder.ts} +55 -17
- package/src/index.ts +11 -0
- package/src/stackbit/{index.js → index.ts} +5 -9
- package/src/utils/timer.ts +42 -0
- package/dist/utils/lazy-poller.d.ts +0 -21
- package/dist/utils/lazy-poller.js +0 -56
- package/dist/utils/lazy-poller.js.map +0 -1
- package/src/common/common-schema.js +0 -14
- package/src/index.js +0 -13
- package/src/utils/lazy-poller.ts +0 -74
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/stackbit/index.
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/stackbit/index.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAuB;AACvB,uCAAoE;AAEpE,SAAgB,qBAAqB,CAAC,OAA4B;IAC9D,OAAO,IAAA,gBAAU,EAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE;QACxE,IAAI,CAAC,MAAM,EAAE;YACT,OAAO,EAAE,MAAM,EAAE,EAAY,EAAE,MAAM,EAAE,CAAC;SAC3C;QACD,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAC3B,MAAM,MAAM,GAAG,gBAAC,CAAC,IAAI,CAAC,MAAM,EAAE;YAC1B,iBAAiB;YACjB,SAAS;YACT,YAAY;YACZ,aAAa;YACb,YAAY;YACZ,SAAS;YACT,QAAQ;YACR,YAAY;YACZ,WAAW;YACX,WAAW;YACX,QAAQ;YACR,SAAS;YACT,UAAU;YACV,eAAe;YACf,eAAe;YACf,cAAc;YACd,aAAa;YACb,eAAe;YACf,cAAc;YACd,cAAc;YACd,QAAQ;YACR,SAAS;SACZ,CAAC,CAAC;QACH,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAC9B,CAAC,CAAC,CAAC;AACP,CAAC;AAhCD,sDAgCC;AAED,SAAS,kBAAkB,CAAC,MAAc;IACtC,gBAAC,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;QAC/B,IAAI,CAAC,IAAA,qBAAe,EAAC,KAAK,CAAC,EAAE;YACzB,OAAO;SACV;QACD,gBAAC,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE;YACnB;gBACI,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,KAAK,CAAC,KAAK;aACrB;SACJ,CAAC,CAAC;QACH,gBAAC,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;AACP,CAAC"}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -50,16 +50,16 @@ export function copyFilesRecursively(sourceDir: string, targetDir: string, optio
|
|
|
50
50
|
export function copy(sourceObject: Object, sourcePath: string, targetObject: Object, targetPath: string, transform?: Function | undefined): void;
|
|
51
51
|
export function copyDefault(sourceObject: any, sourcePath: any, targetObject: any, targetPath: any, transform: any): void;
|
|
52
52
|
export function mergeAtPath(object: any, path: any, source: any): any;
|
|
53
|
-
export function omitByNil(object: any): any
|
|
53
|
+
export function omitByNil(object: any): Partial<any>;
|
|
54
54
|
export function rename(object: any, oldPath: any, newPath: any): void;
|
|
55
55
|
export function append(object: any, path: any, value: any): void;
|
|
56
56
|
export function concat(object: any, path: any, value: any): void;
|
|
57
57
|
export function indent(str: any, indent: any, indentFirst?: boolean): any;
|
|
58
|
-
export function pascalCase(str: any):
|
|
59
|
-
export function readDirRec(dir: any, options: any): Promise<any>;
|
|
58
|
+
export function pascalCase(str: any): string;
|
|
59
|
+
export function readDirRec(dir: any, options: any): Promise<any[]>;
|
|
60
60
|
export function readDirRecSync(dir: any, options: any): any[];
|
|
61
61
|
export function readDirGlob(dir: any, options: any): Promise<any>;
|
|
62
|
-
export function fieldPathToString(fieldPath: any):
|
|
62
|
+
export function fieldPathToString(fieldPath: any): string;
|
|
63
63
|
export function hrtimeAndPrint(time: any): string | undefined;
|
|
64
64
|
export function printHRTime(time: any): string | undefined;
|
|
65
65
|
/**
|
|
@@ -93,7 +93,7 @@ export function mapDeep(value: any, iteratee: Function, options?: object | undef
|
|
|
93
93
|
export function getFirst(object: Object, paths: Array<string | Array<string>>, defaultValue?: any): any;
|
|
94
94
|
export function getFirstExistingFile(fileNames: any, inputDir: any): Promise<any>;
|
|
95
95
|
export function parseFirstExistingFile(fileNames: any, inputDir: any): Promise<any>;
|
|
96
|
-
export function getFirstExistingFileSync(fileNames: any, inputDir: any):
|
|
96
|
+
export function getFirstExistingFileSync(fileNames: any, inputDir: any): string;
|
|
97
97
|
export function parseFirstExistingFileSync(fileNames: any, inputDir: any): any;
|
|
98
98
|
export function parseFile(filePath: any): any;
|
|
99
99
|
export function parseFileSync(filePath: any): any;
|
|
@@ -111,8 +111,8 @@ export function failFunctionWithTag(tag: any): (message: any) => never;
|
|
|
111
111
|
export function assertFunctionWithFail(fail: any): (value: any, message: any) => void;
|
|
112
112
|
export function createLogger(scope: any, transport: any): {};
|
|
113
113
|
export function logObject(object: any, title: any): void;
|
|
114
|
-
export function joinPathAndGlob(pathStr: any, glob: any):
|
|
115
|
-
export function globToArray(glob: any):
|
|
114
|
+
export function joinPathAndGlob(pathStr: any, glob: any): string[];
|
|
115
|
+
export function globToArray(glob: any): never[];
|
|
116
116
|
/**
|
|
117
117
|
* Inverse of _.toPath()
|
|
118
118
|
*
|
|
@@ -171,3 +171,4 @@ export function decodeJsx(data: any): any;
|
|
|
171
171
|
export function replaceInRange(str: any, range: any, stringToInsert: any): any;
|
|
172
172
|
export function isRelevantReactData(data: any): any;
|
|
173
173
|
export function convertToPosixFilePath(filePath: any): any;
|
|
174
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.js"],"names":[],"mappings":"AAkEA;;;;;;;;;;;GAWG;AACH,8FAFY,QAAQ,GAAG,CAAC,CAoBvB;AAED,kFAsBC;AAED,qGAmBC;AAyBD,mFAwBC;AAED,gHAsEC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,gDARW,MAAM,aACN,MAAM;;iBAIN,MAAM;4CAmDhB;AAED;;;;;;;;GAQG;AACH,mCANW,MAAM,oCAEN,MAAM,8DAYhB;AAED,0HAIC;AAED,sEAQC;AAED,qDAEC;AAED,sEASC;AAED,iEAKC;AAED,iEAKC;AAED,0EAKC;AAED,6CAEC;AAED,mEAuBC;AA2BD,8DAoBC;AA7CD,kEAuBC;AAwBD,0DAmBC;AAED,8DAGC;AAED,2DAWC;AAED;;;;;;;GAOG;AACH,iEAHW,MAAM,GAAC,MAAM,UACb,MAAM,QAahB;AAgBD;;;;;;;;GAQG;AACH,6HAsBC;AA7CD;;;;;;;;GAQG;AACH,iCALW,MAAM,SACN,MAAM,SAAS,aAAa,CAAC,2BAOvC;AAmCD,kFAKC;AAED,oFAOC;AAED,gFAKC;AAED,+EAOC;AAED,8CAIC;AAED,kDAGC;AAED,qEA4BC;AAED,0DAGC;AAaD,+DAGC;AAdD,+EASC;AAOD,uEA2BC;AAED;;;EA+DC;AAED,0CAeC;AAED,uEAIC;AAED,sFAMC;AAED,6DAaC;AAED,yDAUC;AAED,mEAGC;AAED,gDASC;AAED;;;;;;;;GAQG;AACH,mDAWC;AAED,uDAOC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,sCAJW,QAAM,MAAM,0BAEX;IAAC,IAAI,EAAE,QAAM,MAAM,CAAC;IAAC,MAAM,QAAO;CAAC,CAuB9C;AAED;;;;;;GAMG;AACH,kCAJW,QAAM,MAAM,0BAEX;IAAC,IAAI,EAAE,QAAM,MAAM,CAAC;IAAC,MAAM,QAAO;CAAC,CAwB9C;AAUD,0CAOC;AAED,0CAOC;AAED,+EAEC;AAED,oDAMC;AAED,2DAYC"}
|
|
@@ -3,12 +3,12 @@ export function isObjectField(field: any): boolean;
|
|
|
3
3
|
export function isModelField(field: any): boolean;
|
|
4
4
|
export function isModelsField(field: any): boolean;
|
|
5
5
|
export function isReferenceField(field: any): boolean;
|
|
6
|
-
export function isCustomModelField(field: any, modelsByName: any):
|
|
6
|
+
export function isCustomModelField(field: any, modelsByName: any): boolean;
|
|
7
7
|
export function isListField(field: any): boolean;
|
|
8
8
|
export function isListOfObjectsField(field: any): boolean;
|
|
9
9
|
export function isListOfModelField(field: any): boolean;
|
|
10
10
|
export function isListOfModelsField(field: any): boolean;
|
|
11
|
-
export function isListOfCustomModelField(field: any):
|
|
11
|
+
export function isListOfCustomModelField(field: any): boolean;
|
|
12
12
|
export function isListOfReferenceField(field: any): boolean;
|
|
13
13
|
/**
|
|
14
14
|
* Gets a list field and returns its items field. If list field does not define
|
|
@@ -84,3 +84,4 @@ export function resolveLabelFieldForModel(model: any, modelLabelFieldPath: any,
|
|
|
84
84
|
export function resolveLabelFieldFromFields(fields: any): any;
|
|
85
85
|
export function getUrlPath(stackbitModel: any): any;
|
|
86
86
|
export function getNormalizedModelType(stackbitModel: any): any;
|
|
87
|
+
//# sourceMappingURL=schema-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-utils.d.ts","sourceRoot":"","sources":["../../src/utils/schema-utils.js"],"names":[],"mappings":"AAEA,mCAuBE;AA6CF,mDAEC;AAUD,kDAEC;AAED,mDAEC;AAdD,sDAEC;AAED,2EAEC;AAUD,iDAEC;AAED,0DAEC;AAED,wDAEC;AAED,yDAEC;AAED,8DAEC;AAED,4DAEC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,yCAHW,MAAM,GACL,MAAM,CAKjB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,qDAJW,MAAM,2DAgBhB;AAtJD,kGAMC;AAED,8DAWC;AAqID,oDAMC;AAED,gEAEC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Logger } from '../content-store-types';
|
|
2
|
+
export declare class Timer {
|
|
3
|
+
private readonly timerCallback;
|
|
4
|
+
private readonly timerMs;
|
|
5
|
+
private readonly logger?;
|
|
6
|
+
private timeout;
|
|
7
|
+
constructor({ timerCallback, timerMs, logger }: {
|
|
8
|
+
timerCallback: () => void;
|
|
9
|
+
timerMs?: number;
|
|
10
|
+
logger?: Logger;
|
|
11
|
+
});
|
|
12
|
+
isRunning(): boolean;
|
|
13
|
+
startTimer(): void;
|
|
14
|
+
resetTimer(): void;
|
|
15
|
+
stopTimer(): void;
|
|
16
|
+
handleTimeout(): void;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=timer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timer.d.ts","sourceRoot":"","sources":["../../src/utils/timer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAEhD,qBAAa,KAAK;IACd,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAa;IAC3C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAS;IACjC,OAAO,CAAC,OAAO,CAAwB;gBAE3B,EAAE,aAAa,EAAE,OAAwB,EAAE,MAAM,EAAE,EAAE;QAAE,aAAa,EAAE,MAAM,IAAI,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;IAQjI,SAAS;IAIT,UAAU;IAIV,UAAU;IAKV,SAAS;IAOT,aAAa;CAKhB"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Timer = void 0;
|
|
4
|
+
class Timer {
|
|
5
|
+
constructor({ timerCallback, timerMs = 30 * 60 * 1000, logger }) {
|
|
6
|
+
this.timerCallback = timerCallback;
|
|
7
|
+
this.timerMs = timerMs;
|
|
8
|
+
this.logger = logger === null || logger === void 0 ? void 0 : logger.createLogger({ label: 'timer' });
|
|
9
|
+
this.timeout = null;
|
|
10
|
+
this.handleTimeout = this.handleTimeout.bind(this);
|
|
11
|
+
}
|
|
12
|
+
isRunning() {
|
|
13
|
+
return !!this.timeout;
|
|
14
|
+
}
|
|
15
|
+
startTimer() {
|
|
16
|
+
this.resetTimer();
|
|
17
|
+
}
|
|
18
|
+
resetTimer() {
|
|
19
|
+
this.stopTimer();
|
|
20
|
+
this.timeout = setTimeout(this.handleTimeout, this.timerMs);
|
|
21
|
+
}
|
|
22
|
+
stopTimer() {
|
|
23
|
+
if (this.timeout) {
|
|
24
|
+
clearTimeout(this.timeout);
|
|
25
|
+
this.timeout = null;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
handleTimeout() {
|
|
29
|
+
var _a;
|
|
30
|
+
(_a = this.logger) === null || _a === void 0 ? void 0 : _a.debug('timer reached');
|
|
31
|
+
this.timeout = null;
|
|
32
|
+
this.timerCallback();
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
exports.Timer = Timer;
|
|
36
|
+
//# sourceMappingURL=timer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timer.js","sourceRoot":"","sources":["../../src/utils/timer.ts"],"names":[],"mappings":";;;AAEA,MAAa,KAAK;IAMd,YAAY,EAAE,aAAa,EAAE,OAAO,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,MAAM,EAAoE;QAC7H,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;IAED,SAAS;QACL,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;IAC1B,CAAC;IAED,UAAU;QACN,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IAED,UAAU;QACN,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAChE,CAAC;IAED,SAAS;QACL,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC3B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;SACvB;IACL,CAAC;IAED,aAAa;;QACT,MAAA,IAAI,CAAC,MAAM,0CAAE,KAAK,CAAC,eAAe,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,aAAa,EAAE,CAAC;IACzB,CAAC;CACJ;AAvCD,sBAuCC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stackbit/cms-core",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.21-alpha.2",
|
|
4
4
|
"description": "stackbit-dev",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -18,6 +18,7 @@
|
|
|
18
18
|
"author": "Stackbit Inc.",
|
|
19
19
|
"license": "MIT",
|
|
20
20
|
"devDependencies": {
|
|
21
|
+
"@types/lodash": "^4.14.182",
|
|
21
22
|
"jest": "^27.4.7",
|
|
22
23
|
"prettier": "^2.5.1",
|
|
23
24
|
"ts-jest": "^27.1.3",
|
|
@@ -27,7 +28,8 @@
|
|
|
27
28
|
"@babel/parser": "^7.11.5",
|
|
28
29
|
"@babel/traverse": "^7.11.5",
|
|
29
30
|
"@iarna/toml": "^2.2.3",
|
|
30
|
-
"@stackbit/sdk": "^0.2.
|
|
31
|
+
"@stackbit/sdk": "^0.2.39-alpha.2",
|
|
32
|
+
"@stackbit/utils": "^0.2.6-alpha.2",
|
|
31
33
|
"chalk": "^4.0.1",
|
|
32
34
|
"esm": "^3.2.25",
|
|
33
35
|
"fs-extra": "^8.1.0",
|
|
@@ -37,7 +39,9 @@
|
|
|
37
39
|
"lodash": "^4.17.20",
|
|
38
40
|
"micromatch": "^4.0.2",
|
|
39
41
|
"moment": "^2.29.1",
|
|
40
|
-
"parse5": "^6.0.1"
|
|
42
|
+
"parse5": "^6.0.1",
|
|
43
|
+
"sanitize-filename": "^1.6.3",
|
|
44
|
+
"slugify": "^1.6.5"
|
|
41
45
|
},
|
|
42
|
-
"gitHead": "
|
|
46
|
+
"gitHead": "58bd6f43457dfcb38f3bd5e937602fc8df652eaa"
|
|
43
47
|
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ImageModel } from '@stackbit/sdk';
|
|
2
|
+
|
|
3
|
+
export const IMAGE_MODEL: ImageModel = {
|
|
4
|
+
type: 'image',
|
|
5
|
+
name: '__image_model',
|
|
6
|
+
label: 'Image',
|
|
7
|
+
labelField: 'title',
|
|
8
|
+
fields: [
|
|
9
|
+
{ name: 'title', type: 'string' },
|
|
10
|
+
{ name: 'url', type: 'string' }
|
|
11
|
+
]
|
|
12
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ChildProcessWithoutNullStreams } from 'child_process';
|
|
2
|
+
|
|
3
|
+
export type SpawnUserCommandOptions = {
|
|
4
|
+
command: string;
|
|
5
|
+
args?: string[];
|
|
6
|
+
cwd?: string;
|
|
7
|
+
env?: NodeJS.ProcessEnv;
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
export type UserCommandSpawner = (options: SpawnUserCommandOptions) => ChildProcessWithoutNullStreams;
|