@teambit/component-issues 0.0.100 → 0.0.102
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/circular-dependencies.js +26 -12
- package/dist/circular-dependencies.js.map +1 -1
- package/dist/component-issue.d.ts +8 -6
- package/dist/component-issue.js +81 -56
- package/dist/component-issue.js.map +1 -1
- package/dist/duplicate-component-and-package.js +26 -12
- package/dist/duplicate-component-and-package.js.map +1 -1
- package/dist/external-env-without-version.js +29 -15
- package/dist/external-env-without-version.js.map +1 -1
- package/dist/import-non-main-files.js +23 -10
- package/dist/import-non-main-files.js.map +1 -1
- package/dist/index.js +81 -10
- package/dist/index.js.map +1 -1
- package/dist/issues-list.d.ts +9 -8
- package/dist/issues-list.js +266 -128
- package/dist/issues-list.js.map +1 -1
- package/dist/legacy-inside-harmony.js +26 -12
- package/dist/legacy-inside-harmony.js.map +1 -1
- package/dist/merge-config-has-conflict.js +26 -12
- package/dist/merge-config-has-conflict.js.map +1 -1
- package/dist/missing-components.js +25 -12
- package/dist/missing-components.js.map +1 -1
- package/dist/missing-dependencies-on-fs.js +22 -9
- package/dist/missing-dependencies-on-fs.js.map +1 -1
- package/dist/missing-dists.js +26 -12
- package/dist/missing-dists.js.map +1 -1
- package/dist/missing-links-from-nm-to-src.js +26 -12
- package/dist/missing-links-from-nm-to-src.js.map +1 -1
- package/dist/missing-manually-configured-packages.js +26 -12
- package/dist/missing-manually-configured-packages.js.map +1 -1
- package/dist/missing-packages-dependencies-on-fs.js +22 -9
- package/dist/missing-packages-dependencies-on-fs.js.map +1 -1
- package/dist/multiple-envs.js +27 -12
- package/dist/multiple-envs.js.map +1 -1
- package/dist/non-loaded-env.js +26 -12
- package/dist/non-loaded-env.js.map +1 -1
- package/dist/parse-errors.js +22 -9
- package/dist/parse-errors.js.map +1 -1
- package/dist/relative-components-authored.js +55 -36
- package/dist/relative-components-authored.js.map +1 -1
- package/dist/relative-components.js +26 -13
- package/dist/relative-components.js.map +1 -1
- package/dist/removed-dependencies.js +27 -12
- package/dist/removed-dependencies.js.map +1 -1
- package/dist/resolve-errors.js +22 -9
- package/dist/resolve-errors.js.map +1 -1
- package/dist/untracked-dependencies.js +48 -32
- package/dist/untracked-dependencies.js.map +1 -1
- package/package.json +15 -6
- package/tsconfig.json +10 -2
- package/circular-dependencies.ts +0 -11
- package/component-issue.ts +0 -66
- package/dist/tsconfig.json +0 -32
- package/duplicate-component-and-package.ts +0 -11
- package/external-env-without-version.ts +0 -19
- package/import-non-main-files.ts +0 -8
- package/index.ts +0 -4
- package/issues-list.ts +0 -155
- package/legacy-inside-harmony.ts +0 -11
- package/merge-config-has-conflict.ts +0 -11
- package/missing-components.ts +0 -11
- package/missing-dependencies-on-fs.ts +0 -7
- package/missing-dists.ts +0 -11
- package/missing-links-from-nm-to-src.ts +0 -11
- package/missing-manually-configured-packages.ts +0 -10
- package/missing-packages-dependencies-on-fs.ts +0 -7
- package/multiple-envs.ts +0 -12
- package/non-loaded-env.ts +0 -11
- package/parse-errors.ts +0 -7
- package/relative-components-authored.ts +0 -49
- package/relative-components.ts +0 -12
- package/removed-dependencies.ts +0 -12
- package/resolve-errors.ts +0 -7
- package/untracked-dependencies.ts +0 -41
- /package/dist/{preview-1697824694360.js → preview-1698895126768.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["_componentIssue","data","require","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","RelativeComponents","ComponentIssue","constructor","args","deserialize","deserializeWithBitId","exports"],"sources":["relative-components.ts"],"sourcesContent":["import { ComponentID } from '@teambit/component-id';\nimport { ComponentIssue, deserializeWithBitId } from './component-issue';\n\nexport class RelativeComponents extends ComponentIssue {\n description = 'components with relative import statements found';\n solution = 'use module paths for imported components';\n data: { [filePath: string]: ComponentID[] } = {};\n isCacheBlocker = false;\n deserialize(data: string) {\n return deserializeWithBitId(data);\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,gBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,eAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAyE,SAAAE,gBAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAD,GAAA,IAAAI,MAAA,CAAAC,cAAA,CAAAL,GAAA,EAAAC,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAI,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAAR,GAAA,CAAAC,GAAA,IAAAC,KAAA,WAAAF,GAAA;AAAA,SAAAG,eAAAM,GAAA,QAAAR,GAAA,GAAAS,YAAA,CAAAD,GAAA,2BAAAR,GAAA,gBAAAA,GAAA,GAAAU,MAAA,CAAAV,GAAA;AAAA,SAAAS,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAK,IAAA,CAAAP,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAE,SAAA,4DAAAP,IAAA,gBAAAF,MAAA,GAAAU,MAAA,EAAAT,KAAA;AAElE,MAAMU,kBAAkB,SAASC,gCAAc,CAAC;EAAAC,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAA1B,eAAA,sBACvC,kDAAkD;IAAAA,eAAA,mBACrD,0CAA0C;IAAAA,eAAA,eACP,CAAC,CAAC;IAAAA,eAAA,yBAC/B,KAAK;EAAA;EACtB2B,WAAWA,CAAC7B,IAAY,EAAE;IACxB,OAAO,IAAA8B,sCAAoB,EAAC9B,IAAI,CAAC;EACnC;AACF;AAAC+B,OAAA,CAAAN,kBAAA,GAAAA,kBAAA"}
|
|
@@ -1,17 +1,32 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
3
6
|
exports.RemovedDependencies = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
7
|
+
function _componentIssue() {
|
|
8
|
+
const data = require("./component-issue");
|
|
9
|
+
_componentIssue = function () {
|
|
10
|
+
return data;
|
|
11
|
+
};
|
|
12
|
+
return data;
|
|
13
|
+
}
|
|
14
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
15
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
16
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
17
|
+
class RemovedDependencies extends _componentIssue().ComponentIssue {
|
|
18
|
+
constructor(...args) {
|
|
19
|
+
super(...args);
|
|
20
|
+
_defineProperty(this, "description", 'removed dependencies');
|
|
21
|
+
_defineProperty(this, "solution", 'either "bit install" another version of the dependency that was not removed or edit the code to remove references to the dependency.');
|
|
22
|
+
_defineProperty(this, "data", void 0);
|
|
23
|
+
// deps ids
|
|
24
|
+
_defineProperty(this, "isTagBlocker", true);
|
|
25
|
+
}
|
|
26
|
+
dataToString() {
|
|
27
|
+
return _componentIssue().ISSUE_FORMAT_SPACE + this.data.join(', ');
|
|
28
|
+
}
|
|
15
29
|
}
|
|
16
30
|
exports.RemovedDependencies = RemovedDependencies;
|
|
31
|
+
|
|
17
32
|
//# sourceMappingURL=removed-dependencies.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["_componentIssue","data","require","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","RemovedDependencies","ComponentIssue","constructor","args","dataToString","ISSUE_FORMAT_SPACE","join","exports"],"sources":["removed-dependencies.ts"],"sourcesContent":["import { ComponentIssue, ISSUE_FORMAT_SPACE } from './component-issue';\n\nexport class RemovedDependencies extends ComponentIssue {\n description = 'removed dependencies';\n solution =\n 'either \"bit install\" another version of the dependency that was not removed or edit the code to remove references to the dependency.';\n data: string[]; // deps ids\n isTagBlocker = true;\n dataToString() {\n return ISSUE_FORMAT_SPACE + this.data.join(', ');\n }\n}\n"],"mappings":";;;;;;AAAA,SAAAA,gBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,eAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAuE,SAAAE,gBAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAD,GAAA,IAAAI,MAAA,CAAAC,cAAA,CAAAL,GAAA,EAAAC,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAI,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAAR,GAAA,CAAAC,GAAA,IAAAC,KAAA,WAAAF,GAAA;AAAA,SAAAG,eAAAM,GAAA,QAAAR,GAAA,GAAAS,YAAA,CAAAD,GAAA,2BAAAR,GAAA,gBAAAA,GAAA,GAAAU,MAAA,CAAAV,GAAA;AAAA,SAAAS,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAK,IAAA,CAAAP,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAE,SAAA,4DAAAP,IAAA,gBAAAF,MAAA,GAAAU,MAAA,EAAAT,KAAA;AAEhE,MAAMU,mBAAmB,SAASC,gCAAc,CAAC;EAAAC,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAA1B,eAAA,sBACxC,sBAAsB;IAAAA,eAAA,mBAElC,sIAAsI;IAAAA,eAAA;IACxH;IAAAA,eAAA,uBACD,IAAI;EAAA;EACnB2B,YAAYA,CAAA,EAAG;IACb,OAAOC,oCAAkB,GAAG,IAAI,CAAC9B,IAAI,CAAC+B,IAAI,CAAC,IAAI,CAAC;EAClD;AACF;AAACC,OAAA,CAAAP,mBAAA,GAAAA,mBAAA"}
|
package/dist/resolve-errors.js
CHANGED
|
@@ -1,14 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
3
6
|
exports.ResolveErrors = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
function _componentIssue() {
|
|
8
|
+
const data = require("./component-issue");
|
|
9
|
+
_componentIssue = function () {
|
|
10
|
+
return data;
|
|
11
|
+
};
|
|
12
|
+
return data;
|
|
13
|
+
}
|
|
14
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
15
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
16
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
17
|
+
class ResolveErrors extends _componentIssue().ComponentIssue {
|
|
18
|
+
constructor(...args) {
|
|
19
|
+
super(...args);
|
|
20
|
+
_defineProperty(this, "description", 'error found while resolving the file dependencies');
|
|
21
|
+
_defineProperty(this, "solution", 'see the log for the full error');
|
|
22
|
+
_defineProperty(this, "data", {});
|
|
23
|
+
}
|
|
12
24
|
}
|
|
13
25
|
exports.ResolveErrors = ResolveErrors;
|
|
26
|
+
|
|
14
27
|
//# sourceMappingURL=resolve-errors.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["_componentIssue","data","require","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","ResolveErrors","ComponentIssue","constructor","args","exports"],"sources":["resolve-errors.ts"],"sourcesContent":["import { ComponentIssue } from './component-issue';\n\nexport class ResolveErrors extends ComponentIssue {\n description = 'error found while resolving the file dependencies';\n solution = 'see the log for the full error';\n data: { [filePath: string]: string } = {};\n}\n"],"mappings":";;;;;;AAAA,SAAAA,gBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,eAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAmD,SAAAE,gBAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAD,GAAA,IAAAI,MAAA,CAAAC,cAAA,CAAAL,GAAA,EAAAC,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAI,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAAR,GAAA,CAAAC,GAAA,IAAAC,KAAA,WAAAF,GAAA;AAAA,SAAAG,eAAAM,GAAA,QAAAR,GAAA,GAAAS,YAAA,CAAAD,GAAA,2BAAAR,GAAA,gBAAAA,GAAA,GAAAU,MAAA,CAAAV,GAAA;AAAA,SAAAS,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAK,IAAA,CAAAP,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAE,SAAA,4DAAAP,IAAA,gBAAAF,MAAA,GAAAU,MAAA,EAAAT,KAAA;AAE5C,MAAMU,aAAa,SAASC,gCAAc,CAAC;EAAAC,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAA1B,eAAA,sBAClC,mDAAmD;IAAAA,eAAA,mBACtD,gCAAgC;IAAAA,eAAA,eACJ,CAAC,CAAC;EAAA;AAC3C;AAAC2B,OAAA,CAAAJ,aAAA,GAAAA,aAAA"}
|
|
@@ -1,39 +1,55 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
6
|
exports.UntrackedDependencies = exports.MISSING_NESTED_DEPS_SPACE = void 0;
|
|
7
|
-
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
7
|
+
function _chalk() {
|
|
8
|
+
const data = _interopRequireDefault(require("chalk"));
|
|
9
|
+
_chalk = function () {
|
|
10
|
+
return data;
|
|
11
|
+
};
|
|
12
|
+
return data;
|
|
13
|
+
}
|
|
14
|
+
function _componentIssue() {
|
|
15
|
+
const data = require("./component-issue");
|
|
16
|
+
_componentIssue = function () {
|
|
17
|
+
return data;
|
|
18
|
+
};
|
|
19
|
+
return data;
|
|
20
|
+
}
|
|
21
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
22
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
23
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
24
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
25
|
+
const MISSING_NESTED_DEPS_SPACE = ' '.repeat(_componentIssue().ISSUE_FORMAT_SPACE_COUNT + 2);
|
|
26
|
+
exports.MISSING_NESTED_DEPS_SPACE = MISSING_NESTED_DEPS_SPACE;
|
|
27
|
+
class UntrackedDependencies extends _componentIssue().ComponentIssue {
|
|
28
|
+
constructor(...args) {
|
|
29
|
+
super(...args);
|
|
30
|
+
_defineProperty(this, "description", 'untracked file dependencies');
|
|
31
|
+
_defineProperty(this, "solution", 'use "bit add <file>" to track untracked files as components');
|
|
32
|
+
_defineProperty(this, "data", {});
|
|
33
|
+
}
|
|
34
|
+
dataToString() {
|
|
35
|
+
return Object.keys(this.data).map(k => {
|
|
36
|
+
let space = _componentIssue().ISSUE_FORMAT_SPACE;
|
|
37
|
+
if (this.data[k].nested) {
|
|
38
|
+
space = MISSING_NESTED_DEPS_SPACE;
|
|
39
|
+
}
|
|
40
|
+
return `${space}${k} -> ${untrackedFilesComponentIssueToString(this.data[k])}`;
|
|
41
|
+
}).join('\n');
|
|
42
|
+
}
|
|
28
43
|
}
|
|
29
44
|
exports.UntrackedDependencies = UntrackedDependencies;
|
|
30
45
|
function untrackedFilesComponentIssueToString(value) {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
46
|
+
const colorizedMap = value.untrackedFiles.map(curr => {
|
|
47
|
+
if (curr.existing) {
|
|
48
|
+
return `${_chalk().default.yellow(curr.relativePath)}`;
|
|
49
|
+
}
|
|
50
|
+
return curr.relativePath;
|
|
51
|
+
});
|
|
52
|
+
return colorizedMap.join(', ');
|
|
38
53
|
}
|
|
54
|
+
|
|
39
55
|
//# sourceMappingURL=untracked-dependencies.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_componentIssue","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","MISSING_NESTED_DEPS_SPACE","repeat","ISSUE_FORMAT_SPACE_COUNT","exports","UntrackedDependencies","ComponentIssue","constructor","args","dataToString","keys","map","k","space","ISSUE_FORMAT_SPACE","nested","untrackedFilesComponentIssueToString","join","colorizedMap","untrackedFiles","curr","existing","chalk","yellow","relativePath"],"sources":["untracked-dependencies.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { ComponentIssue, ISSUE_FORMAT_SPACE, ISSUE_FORMAT_SPACE_COUNT } from './component-issue';\n\nexport const MISSING_NESTED_DEPS_SPACE = ' '.repeat(ISSUE_FORMAT_SPACE_COUNT + 2);\n\ninterface UntrackedFileEntry {\n relativePath: string;\n existing: boolean;\n}\n\nexport interface UntrackedFileDependencyEntry {\n nested: boolean;\n untrackedFiles: Array<UntrackedFileEntry>;\n}\n\nexport class UntrackedDependencies extends ComponentIssue {\n description = 'untracked file dependencies';\n solution = 'use \"bit add <file>\" to track untracked files as components';\n data: { [filePath: string]: UntrackedFileDependencyEntry } = {};\n dataToString() {\n return Object.keys(this.data)\n .map((k) => {\n let space = ISSUE_FORMAT_SPACE;\n if (this.data[k].nested) {\n space = MISSING_NESTED_DEPS_SPACE;\n }\n return `${space}${k} -> ${untrackedFilesComponentIssueToString(this.data[k])}`;\n })\n .join('\\n');\n }\n}\n\nfunction untrackedFilesComponentIssueToString(value: UntrackedFileDependencyEntry) {\n const colorizedMap = value.untrackedFiles.map((curr) => {\n if (curr.existing) {\n return `${chalk.yellow(curr.relativePath)}`;\n }\n return curr.relativePath;\n });\n return colorizedMap.join(', ');\n}\n"],"mappings":";;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,gBAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,eAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAiG,SAAAC,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,gBAAAH,GAAA,EAAAI,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAJ,GAAA,IAAAO,MAAA,CAAAC,cAAA,CAAAR,GAAA,EAAAI,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAI,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAAX,GAAA,CAAAI,GAAA,IAAAC,KAAA,WAAAL,GAAA;AAAA,SAAAM,eAAAM,GAAA,QAAAR,GAAA,GAAAS,YAAA,CAAAD,GAAA,2BAAAR,GAAA,gBAAAA,GAAA,GAAAU,MAAA,CAAAV,GAAA;AAAA,SAAAS,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAK,IAAA,CAAAP,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAE,SAAA,4DAAAP,IAAA,gBAAAF,MAAA,GAAAU,MAAA,EAAAT,KAAA;AAE1F,MAAMU,yBAAyB,GAAG,GAAG,CAACC,MAAM,CAACC,0CAAwB,GAAG,CAAC,CAAC;AAACC,OAAA,CAAAH,yBAAA,GAAAA,yBAAA;AAY3E,MAAMI,qBAAqB,SAASC,gCAAc,CAAC;EAAAC,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAA7B,eAAA,sBAC1C,6BAA6B;IAAAA,eAAA,mBAChC,6DAA6D;IAAAA,eAAA,eACX,CAAC,CAAC;EAAA;EAC/D8B,YAAYA,CAAA,EAAG;IACb,OAAO1B,MAAM,CAAC2B,IAAI,CAAC,IAAI,CAACtC,IAAI,CAAC,CAC1BuC,GAAG,CAAEC,CAAC,IAAK;MACV,IAAIC,KAAK,GAAGC,oCAAkB;MAC9B,IAAI,IAAI,CAAC1C,IAAI,CAACwC,CAAC,CAAC,CAACG,MAAM,EAAE;QACvBF,KAAK,GAAGZ,yBAAyB;MACnC;MACA,OAAQ,GAAEY,KAAM,GAAED,CAAE,OAAMI,oCAAoC,CAAC,IAAI,CAAC5C,IAAI,CAACwC,CAAC,CAAC,CAAE,EAAC;IAChF,CAAC,CAAC,CACDK,IAAI,CAAC,IAAI,CAAC;EACf;AACF;AAACb,OAAA,CAAAC,qBAAA,GAAAA,qBAAA;AAED,SAASW,oCAAoCA,CAACnC,KAAmC,EAAE;EACjF,MAAMqC,YAAY,GAAGrC,KAAK,CAACsC,cAAc,CAACR,GAAG,CAAES,IAAI,IAAK;IACtD,IAAIA,IAAI,CAACC,QAAQ,EAAE;MACjB,OAAQ,GAAEC,gBAAK,CAACC,MAAM,CAACH,IAAI,CAACI,YAAY,CAAE,EAAC;IAC7C;IACA,OAAOJ,IAAI,CAACI,YAAY;EAC1B,CAAC,CAAC;EACF,OAAON,YAAY,CAACD,IAAI,CAAC,IAAI,CAAC;AAChC"}
|
package/package.json
CHANGED
|
@@ -1,23 +1,32 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/component-issues",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.102",
|
|
4
4
|
"homepage": "https://bit.cloud/teambit/component/component-issues",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.component",
|
|
8
8
|
"name": "component-issues",
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.102"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"chalk": "2.4.2",
|
|
13
|
-
"
|
|
13
|
+
"core-js": "^3.0.0",
|
|
14
|
+
"@babel/runtime": "7.20.0",
|
|
15
|
+
"@teambit/component-id": "1.1.1"
|
|
14
16
|
},
|
|
15
17
|
"devDependencies": {
|
|
16
|
-
"@types/
|
|
18
|
+
"@types/mocha": "9.1.0",
|
|
17
19
|
"@types/node": "12.20.4",
|
|
18
|
-
"@
|
|
20
|
+
"@types/react": "^17.0.8",
|
|
21
|
+
"@types/react-dom": "^17.0.5",
|
|
22
|
+
"@types/jest": "^26.0.0",
|
|
23
|
+
"@types/testing-library__jest-dom": "5.9.5"
|
|
24
|
+
},
|
|
25
|
+
"peerDependencies": {
|
|
26
|
+
"@teambit/legacy": "1.0.587",
|
|
27
|
+
"react": "^16.8.0 || ^17.0.0",
|
|
28
|
+
"react-dom": "^16.8.0 || ^17.0.0"
|
|
19
29
|
},
|
|
20
|
-
"peerDependencies": {},
|
|
21
30
|
"license": "Apache-2.0",
|
|
22
31
|
"private": false,
|
|
23
32
|
"engines": {
|
package/tsconfig.json
CHANGED
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
"es2019",
|
|
5
5
|
"DOM",
|
|
6
6
|
"ES6",
|
|
7
|
-
"DOM.Iterable"
|
|
7
|
+
"DOM.Iterable",
|
|
8
|
+
"ScriptHost"
|
|
8
9
|
],
|
|
9
10
|
"target": "es2015",
|
|
10
11
|
"module": "CommonJS",
|
|
@@ -19,7 +20,14 @@
|
|
|
19
20
|
"moduleResolution": "node",
|
|
20
21
|
"esModuleInterop": true,
|
|
21
22
|
"rootDir": ".",
|
|
22
|
-
"resolveJsonModule": true
|
|
23
|
+
"resolveJsonModule": true,
|
|
24
|
+
"emitDeclarationOnly": true,
|
|
25
|
+
"emitDecoratorMetadata": true,
|
|
26
|
+
"allowSyntheticDefaultImports": true,
|
|
27
|
+
"strictPropertyInitialization": false,
|
|
28
|
+
"strict": true,
|
|
29
|
+
"noImplicitAny": false,
|
|
30
|
+
"preserveConstEnums": true
|
|
23
31
|
},
|
|
24
32
|
"exclude": [
|
|
25
33
|
"dist",
|
package/circular-dependencies.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { ComponentIssue, formatTitle } from './component-issue';
|
|
2
|
-
|
|
3
|
-
export class CircularDependencies extends ComponentIssue {
|
|
4
|
-
description = 'circular dependencies';
|
|
5
|
-
solution = 'run `bit insights "circular"` to get the component-ids participating in the circular';
|
|
6
|
-
data: boolean;
|
|
7
|
-
isTagBlocker = true;
|
|
8
|
-
outputForCLI() {
|
|
9
|
-
return formatTitle(this.descriptionWithSolution, false);
|
|
10
|
-
}
|
|
11
|
-
}
|
package/component-issue.ts
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import chalk from 'chalk';
|
|
2
|
-
import { ComponentID } from '@teambit/component-id';
|
|
3
|
-
|
|
4
|
-
export type StringsPerFilePath = { [filePath: string]: string[] };
|
|
5
|
-
|
|
6
|
-
export const ISSUE_FORMAT_SPACE_COUNT = 10;
|
|
7
|
-
export const ISSUE_FORMAT_SPACE = ' '.repeat(ISSUE_FORMAT_SPACE_COUNT);
|
|
8
|
-
|
|
9
|
-
export class ComponentIssue {
|
|
10
|
-
description: string; // issue description
|
|
11
|
-
solution: string; // suggest how to fix the issue
|
|
12
|
-
data: any;
|
|
13
|
-
isTagBlocker = true; // if true, it stops the tag process and shows the issue
|
|
14
|
-
isCacheBlocker = true; // if true, it doesn't cache the component in the filesystem
|
|
15
|
-
formatDataFunction: FormatIssueFunc = componentIssueToString;
|
|
16
|
-
get descriptionWithSolution() {
|
|
17
|
-
const solution = this.formatSolution();
|
|
18
|
-
return `${this.description} ${solution}`;
|
|
19
|
-
}
|
|
20
|
-
formatSolution(): string {
|
|
21
|
-
return this.solution ? ` (${this.solution})` : '';
|
|
22
|
-
}
|
|
23
|
-
outputForCLI(): string {
|
|
24
|
-
return formatTitle(this.descriptionWithSolution) + chalk.white(this.dataToString());
|
|
25
|
-
}
|
|
26
|
-
dataToString(): string {
|
|
27
|
-
return Object.keys(this.data)
|
|
28
|
-
.map((k) => {
|
|
29
|
-
return `${ISSUE_FORMAT_SPACE}${k} -> ${this.formatDataFunction(this.data[k])}`;
|
|
30
|
-
})
|
|
31
|
-
.join('\n');
|
|
32
|
-
}
|
|
33
|
-
toObject() {
|
|
34
|
-
return {
|
|
35
|
-
type: this.constructor.name,
|
|
36
|
-
description: this.description,
|
|
37
|
-
solution: this.solution,
|
|
38
|
-
data: this.data,
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
serialize(): string {
|
|
42
|
-
return JSON.stringify(this.data);
|
|
43
|
-
}
|
|
44
|
-
deserialize(data: string) {
|
|
45
|
-
return JSON.parse(data);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
export function formatTitle(issueTitle: string, hasMoreData = true): string {
|
|
50
|
-
const colon = hasMoreData ? ':' : '';
|
|
51
|
-
return chalk.yellow(`\n ${issueTitle}${colon} \n`);
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
type FormatIssueFunc = (value: any) => string;
|
|
55
|
-
|
|
56
|
-
export function componentIssueToString(value: string[] | string) {
|
|
57
|
-
return Array.isArray(value) ? value.join(', ') : value;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
export function deserializeWithBitId(dataStr: string) {
|
|
61
|
-
const data = JSON.parse(dataStr);
|
|
62
|
-
Object.keys(data).forEach((filePath) => {
|
|
63
|
-
data[filePath] = data[filePath].map((id) => new ComponentID(id));
|
|
64
|
-
});
|
|
65
|
-
return data;
|
|
66
|
-
}
|
package/dist/tsconfig.json
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"compilerOptions": {
|
|
3
|
-
"lib": [
|
|
4
|
-
"es2019",
|
|
5
|
-
"DOM",
|
|
6
|
-
"ES6",
|
|
7
|
-
"DOM.Iterable"
|
|
8
|
-
],
|
|
9
|
-
"target": "es2015",
|
|
10
|
-
"module": "CommonJS",
|
|
11
|
-
"jsx": "react",
|
|
12
|
-
"allowJs": true,
|
|
13
|
-
"composite": true,
|
|
14
|
-
"declaration": true,
|
|
15
|
-
"sourceMap": true,
|
|
16
|
-
"skipLibCheck": true,
|
|
17
|
-
"experimentalDecorators": true,
|
|
18
|
-
"outDir": "dist",
|
|
19
|
-
"moduleResolution": "node",
|
|
20
|
-
"esModuleInterop": true,
|
|
21
|
-
"rootDir": ".",
|
|
22
|
-
"resolveJsonModule": true
|
|
23
|
-
},
|
|
24
|
-
"exclude": [
|
|
25
|
-
"dist",
|
|
26
|
-
"package.json"
|
|
27
|
-
],
|
|
28
|
-
"include": [
|
|
29
|
-
"**/*",
|
|
30
|
-
"**/*.json"
|
|
31
|
-
]
|
|
32
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { ComponentIssue, ISSUE_FORMAT_SPACE } from './component-issue';
|
|
2
|
-
|
|
3
|
-
export class DuplicateComponentAndPackage extends ComponentIssue {
|
|
4
|
-
description = 'tracked component added as a package';
|
|
5
|
-
solution = 'either remove the package from the workspace.jsonc (bit uninstall) or remove the component (bit remove)';
|
|
6
|
-
data: string;
|
|
7
|
-
isTagBlocker = true;
|
|
8
|
-
dataToString() {
|
|
9
|
-
return ISSUE_FORMAT_SPACE + this.data;
|
|
10
|
-
}
|
|
11
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { ComponentIssue, ISSUE_FORMAT_SPACE } from './component-issue';
|
|
2
|
-
|
|
3
|
-
type DataType = {
|
|
4
|
-
envId: string;
|
|
5
|
-
componentId: string;
|
|
6
|
-
};
|
|
7
|
-
|
|
8
|
-
export class ExternalEnvWithoutVersion extends ComponentIssue {
|
|
9
|
-
description = 'failed loading env - external env without a version';
|
|
10
|
-
data: DataType;
|
|
11
|
-
solution = '';
|
|
12
|
-
isTagBlocker = true;
|
|
13
|
-
formatSolution(): string {
|
|
14
|
-
return `(run "bit env set ${this.data.componentId} ${this.data.envId}")`;
|
|
15
|
-
}
|
|
16
|
-
dataToString() {
|
|
17
|
-
return ISSUE_FORMAT_SPACE + this.data.envId;
|
|
18
|
-
}
|
|
19
|
-
}
|
package/import-non-main-files.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { ComponentIssue, StringsPerFilePath } from './component-issue';
|
|
2
|
-
|
|
3
|
-
export class ImportNonMainFiles extends ComponentIssue {
|
|
4
|
-
description = 'importing non-main files';
|
|
5
|
-
solution = 'the dependency should expose its API from the main file';
|
|
6
|
-
data: StringsPerFilePath = {};
|
|
7
|
-
isCacheBlocker = false;
|
|
8
|
-
}
|
package/index.ts
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export { IssuesList, IssuesClasses, IssuesNames } from './issues-list';
|
|
2
|
-
export { ISSUE_FORMAT_SPACE as MISSING_DEPS_SPACE, ComponentIssue } from './component-issue';
|
|
3
|
-
export { UntrackedFileDependencyEntry, MISSING_NESTED_DEPS_SPACE } from './untracked-dependencies';
|
|
4
|
-
export { RelativeComponentsAuthoredEntry } from './relative-components-authored';
|
package/issues-list.ts
DELETED
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
import { ComponentIssue } from './component-issue';
|
|
2
|
-
import { ImportNonMainFiles } from './import-non-main-files';
|
|
3
|
-
import { MissingComponents } from './missing-components';
|
|
4
|
-
import { MissingDependenciesOnFs } from './missing-dependencies-on-fs';
|
|
5
|
-
import { MissingDists } from './missing-dists';
|
|
6
|
-
import { MissingPackagesDependenciesOnFs } from './missing-packages-dependencies-on-fs';
|
|
7
|
-
import { MissingManuallyConfiguredPackages } from './missing-manually-configured-packages';
|
|
8
|
-
import { ParseErrors } from './parse-errors';
|
|
9
|
-
import { RelativeComponents } from './relative-components';
|
|
10
|
-
import { RelativeComponentsAuthored } from './relative-components-authored';
|
|
11
|
-
import { ResolveErrors } from './resolve-errors';
|
|
12
|
-
import { UntrackedDependencies } from './untracked-dependencies';
|
|
13
|
-
import { LegacyInsideHarmony } from './legacy-inside-harmony';
|
|
14
|
-
import { MultipleEnvs } from './multiple-envs';
|
|
15
|
-
import { MissingLinksFromNodeModulesToSrc } from './missing-links-from-nm-to-src';
|
|
16
|
-
import { CircularDependencies } from './circular-dependencies';
|
|
17
|
-
import { DuplicateComponentAndPackage } from './duplicate-component-and-package';
|
|
18
|
-
import { MergeConfigHasConflict } from './merge-config-has-conflict';
|
|
19
|
-
import { NonLoadedEnv } from './non-loaded-env';
|
|
20
|
-
import { ExternalEnvWithoutVersion } from './external-env-without-version';
|
|
21
|
-
import { RemovedDependencies } from './removed-dependencies';
|
|
22
|
-
|
|
23
|
-
export const IssuesClasses = {
|
|
24
|
-
MissingPackagesDependenciesOnFs,
|
|
25
|
-
MissingManuallyConfiguredPackages,
|
|
26
|
-
MissingComponents,
|
|
27
|
-
UntrackedDependencies,
|
|
28
|
-
ResolveErrors,
|
|
29
|
-
RelativeComponents,
|
|
30
|
-
RelativeComponentsAuthored,
|
|
31
|
-
ParseErrors,
|
|
32
|
-
MissingDists,
|
|
33
|
-
LegacyInsideHarmony,
|
|
34
|
-
MissingDependenciesOnFs,
|
|
35
|
-
ImportNonMainFiles,
|
|
36
|
-
MultipleEnvs,
|
|
37
|
-
MissingLinksFromNodeModulesToSrc,
|
|
38
|
-
CircularDependencies,
|
|
39
|
-
DuplicateComponentAndPackage,
|
|
40
|
-
MergeConfigHasConflict,
|
|
41
|
-
NonLoadedEnv,
|
|
42
|
-
ExternalEnvWithoutVersion,
|
|
43
|
-
RemovedDependencies,
|
|
44
|
-
};
|
|
45
|
-
export type IssuesNames = keyof typeof IssuesClasses;
|
|
46
|
-
|
|
47
|
-
export class IssuesList {
|
|
48
|
-
constructor(private issues: ComponentIssue[] = []) {}
|
|
49
|
-
|
|
50
|
-
get count() {
|
|
51
|
-
return this.issues.length;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
isEmpty() {
|
|
55
|
-
return this.issues.length === 0;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
outputForCLI() {
|
|
59
|
-
return this.issues.map((issue) => issue.outputForCLI()).join('');
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
toObject(): { type: string; description: string; data: any }[] {
|
|
63
|
-
return this.issues.map((issue) => issue.toObject());
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
toObjectWithDataAsString(): { type: string; description: string; data: string }[] {
|
|
67
|
-
return this.issues.map((issue) => ({
|
|
68
|
-
...issue.toObject(),
|
|
69
|
-
data: issue.dataToString().trim(),
|
|
70
|
-
}));
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
add(issue: ComponentIssue) {
|
|
74
|
-
this.issues.push(issue);
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
delete(IssueClass: typeof ComponentIssue) {
|
|
78
|
-
this.issues = this.issues.filter((issue) => issue.constructor.name !== IssueClass.name);
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
/**
|
|
82
|
-
* Use getIssueByName to prevent issues when getting different instances while using both bit from bvm and from the repo
|
|
83
|
-
* @param IssueClass
|
|
84
|
-
* @returns
|
|
85
|
-
*/
|
|
86
|
-
getIssue<T extends ComponentIssue>(IssueClass: { new (): T }): T | undefined {
|
|
87
|
-
return this.issues.find((issue) => issue instanceof IssueClass) as T | undefined;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
getIssueByName<T extends ComponentIssue>(issueType: IssuesNames): T | undefined {
|
|
91
|
-
return this.issues.find((issue) => issue.constructor.name === issueType) as T | undefined;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
getAllIssues(): ComponentIssue[] {
|
|
95
|
-
return this.issues;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
getAllIssueNames(): string[] {
|
|
99
|
-
return this.issues.map((issue) => issue.constructor.name);
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
createIssue<T extends ComponentIssue>(IssueClass: { new (): T }): T {
|
|
103
|
-
const newIssue = new IssueClass();
|
|
104
|
-
this.add(newIssue);
|
|
105
|
-
return newIssue;
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
getOrCreate<T extends ComponentIssue>(IssueClass: { new (): T }): T {
|
|
109
|
-
return this.getIssue(IssueClass) || this.createIssue(IssueClass);
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
shouldBlockSavingInCache(): boolean {
|
|
113
|
-
return this.issues.some((issue) => issue.isCacheBlocker);
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
shouldBlockTagging(): boolean {
|
|
117
|
-
return this.issues.some((issue) => issue.isTagBlocker);
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
filterNonTagBlocking(): IssuesList {
|
|
121
|
-
return new IssuesList(this.issues.filter((issue) => issue.isTagBlocker));
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
toReadableByIDE() {
|
|
125
|
-
return this.issues.map((issue) => ({
|
|
126
|
-
type: issue.constructor.name,
|
|
127
|
-
description: issue.description,
|
|
128
|
-
solution: issue.solution,
|
|
129
|
-
isTagBlocker: issue.isTagBlocker,
|
|
130
|
-
data: issue.dataToString(),
|
|
131
|
-
}));
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
serialize() {
|
|
135
|
-
return this.issues.map((issue) => ({ type: issue.constructor.name, data: issue.serialize() }));
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
static deserialize(data: Record<string, any>) {
|
|
139
|
-
if (!Array.isArray(data)) {
|
|
140
|
-
// probably old format, ignore it and return an empty IssuesList
|
|
141
|
-
return new IssuesList();
|
|
142
|
-
}
|
|
143
|
-
const issues = data.map((issue) => {
|
|
144
|
-
const ClassName = issue.type;
|
|
145
|
-
if (!Object.keys(IssuesClasses).includes(ClassName)) {
|
|
146
|
-
throw new Error(`issue type "${ClassName}" is not recognized.
|
|
147
|
-
the following are permitted ${Object.keys(IssuesClasses).join(', ')}`);
|
|
148
|
-
}
|
|
149
|
-
const issueInstance: ComponentIssue = new IssuesClasses[ClassName]();
|
|
150
|
-
issueInstance.data = issueInstance.deserialize(issue.data);
|
|
151
|
-
return issueInstance;
|
|
152
|
-
});
|
|
153
|
-
return new IssuesList(issues);
|
|
154
|
-
}
|
|
155
|
-
}
|
package/legacy-inside-harmony.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { ComponentIssue, formatTitle } from './component-issue';
|
|
2
|
-
|
|
3
|
-
export class LegacyInsideHarmony extends ComponentIssue {
|
|
4
|
-
description = 'legacy component inside Harmony workspace';
|
|
5
|
-
solution = 'remove the component and re-create it via Harmony';
|
|
6
|
-
data: boolean;
|
|
7
|
-
isTagBlocker = true;
|
|
8
|
-
outputForCLI() {
|
|
9
|
-
return formatTitle(this.descriptionWithSolution, false);
|
|
10
|
-
}
|
|
11
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { ComponentIssue, formatTitle } from './component-issue';
|
|
2
|
-
|
|
3
|
-
export class MergeConfigHasConflict extends ComponentIssue {
|
|
4
|
-
description = 'merge-conflict file has unresolved conflicts';
|
|
5
|
-
solution = `edit the merge-conflict file in the workspace root and resolve the conflicts`;
|
|
6
|
-
data: boolean;
|
|
7
|
-
isTagBlocker = true;
|
|
8
|
-
outputForCLI() {
|
|
9
|
-
return formatTitle(this.descriptionWithSolution, false);
|
|
10
|
-
}
|
|
11
|
-
}
|
package/missing-components.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { ComponentID } from '@teambit/component-id';
|
|
2
|
-
import { ComponentIssue, deserializeWithBitId } from './component-issue';
|
|
3
|
-
|
|
4
|
-
export class MissingComponents extends ComponentIssue {
|
|
5
|
-
description = 'missing components';
|
|
6
|
-
solution = 'use "bit import" or `bit install` to make sure all components exist';
|
|
7
|
-
data: { [filePath: string]: ComponentID[] } = {};
|
|
8
|
-
deserialize(data: string) {
|
|
9
|
-
return deserializeWithBitId(data);
|
|
10
|
-
}
|
|
11
|
-
}
|