@teambit/doctor 0.0.178 → 0.0.180

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.
@@ -38,8 +38,7 @@ class ValidateGitExec extends _diagnosis().default {
38
38
  _defineProperty(this, "category", 'vendors');
39
39
  }
40
40
  _formatSymptoms(bareResult) {
41
- var _bareResult$data;
42
- const gitExecutablePath = bareResult === null || bareResult === void 0 || (_bareResult$data = bareResult.data) === null || _bareResult$data === void 0 ? void 0 : _bareResult$data.gitExecutablePath;
41
+ const gitExecutablePath = bareResult?.data?.gitExecutablePath;
43
42
  return `git executable not found (path '${gitExecutablePath}')`;
44
43
  }
45
44
  _formatManualTreat() {
@@ -1 +1 @@
1
- {"version":3,"names":["_execa","data","_interopRequireDefault","require","_gitModules","_diagnosis","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","DIAGNOSIS_NAME_VALIDATE_GIT_EXEC","exports","ValidateGitExec","Diagnosis","constructor","args","_formatSymptoms","bareResult","_bareResult$data","gitExecutablePath","_formatManualTreat","_runExamine","getGitExecutablePath","execa","valid"],"sources":["validate-git-exec.ts"],"sourcesContent":["import execa from 'execa';\nimport { getGitExecutablePath } from '@teambit/git.modules.git-executable';\nimport Diagnosis, { ExamineBareResult } from '../diagnosis';\n\nexport const DIAGNOSIS_NAME_VALIDATE_GIT_EXEC = 'validate git exec';\nexport default class ValidateGitExec extends Diagnosis {\n name = DIAGNOSIS_NAME_VALIDATE_GIT_EXEC;\n description = 'validate that git executable found';\n category = 'vendors';\n\n _formatSymptoms(bareResult: ExamineBareResult): string {\n const gitExecutablePath = bareResult?.data?.gitExecutablePath;\n return `git executable not found (path '${gitExecutablePath}')`;\n }\n\n _formatManualTreat() {\n return \"please ensure that git is installed and/or git_path is configured correctly - 'bit config set git_path <GIT_PATH>'\";\n }\n\n async _runExamine(): Promise<ExamineBareResult> {\n const gitExecutablePath = getGitExecutablePath();\n try {\n await execa(gitExecutablePath, ['--version']);\n return {\n valid: true,\n };\n } catch {\n // if (err.code === 'ENOENT') {\n // }\n return {\n valid: false,\n data: {\n gitExecutablePath,\n },\n };\n }\n }\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,YAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,WAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,WAAA;EAAA,MAAAJ,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAE,UAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA4D,SAAAC,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,gBAAAH,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAJ,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAI,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAZ,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAM,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAhB,CAAA,QAAAa,CAAA,GAAAb,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAErD,MAAMgB,gCAAgC,GAAAC,OAAA,CAAAD,gCAAA,GAAG,mBAAmB;AACpD,MAAME,eAAe,SAASC,oBAAS,CAAC;EAAAC,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAvB,eAAA,eAC9CkB,gCAAgC;IAAAlB,eAAA,sBACzB,oCAAoC;IAAAA,eAAA,mBACvC,SAAS;EAAA;EAEpBwB,eAAeA,CAACC,UAA6B,EAAU;IAAA,IAAAC,gBAAA;IACrD,MAAMC,iBAAiB,GAAGF,UAAU,aAAVA,UAAU,gBAAAC,gBAAA,GAAVD,UAAU,CAAEjC,IAAI,cAAAkC,gBAAA,uBAAhBA,gBAAA,CAAkBC,iBAAiB;IAC7D,OAAO,mCAAmCA,iBAAiB,IAAI;EACjE;EAEAC,kBAAkBA,CAAA,EAAG;IACnB,OAAO,oHAAoH;EAC7H;EAEA,MAAMC,WAAWA,CAAA,EAA+B;IAC9C,MAAMF,iBAAiB,GAAG,IAAAG,kCAAoB,EAAC,CAAC;IAChD,IAAI;MACF,MAAM,IAAAC,gBAAK,EAACJ,iBAAiB,EAAE,CAAC,WAAW,CAAC,CAAC;MAC7C,OAAO;QACLK,KAAK,EAAE;MACT,CAAC;IACH,CAAC,CAAC,MAAM;MACN;MACA;MACA,OAAO;QACLA,KAAK,EAAE,KAAK;QACZxC,IAAI,EAAE;UACJmC;QACF;MACF,CAAC;IACH;EACF;AACF;AAACR,OAAA,CAAApB,OAAA,GAAAqB,eAAA","ignoreList":[]}
1
+ {"version":3,"names":["_execa","data","_interopRequireDefault","require","_gitModules","_diagnosis","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","DIAGNOSIS_NAME_VALIDATE_GIT_EXEC","exports","ValidateGitExec","Diagnosis","constructor","args","_formatSymptoms","bareResult","gitExecutablePath","_formatManualTreat","_runExamine","getGitExecutablePath","execa","valid"],"sources":["validate-git-exec.ts"],"sourcesContent":["import execa from 'execa';\nimport { getGitExecutablePath } from '@teambit/git.modules.git-executable';\nimport Diagnosis, { ExamineBareResult } from '../diagnosis';\n\nexport const DIAGNOSIS_NAME_VALIDATE_GIT_EXEC = 'validate git exec';\nexport default class ValidateGitExec extends Diagnosis {\n name = DIAGNOSIS_NAME_VALIDATE_GIT_EXEC;\n description = 'validate that git executable found';\n category = 'vendors';\n\n _formatSymptoms(bareResult: ExamineBareResult): string {\n const gitExecutablePath = bareResult?.data?.gitExecutablePath;\n return `git executable not found (path '${gitExecutablePath}')`;\n }\n\n _formatManualTreat() {\n return \"please ensure that git is installed and/or git_path is configured correctly - 'bit config set git_path <GIT_PATH>'\";\n }\n\n async _runExamine(): Promise<ExamineBareResult> {\n const gitExecutablePath = getGitExecutablePath();\n try {\n await execa(gitExecutablePath, ['--version']);\n return {\n valid: true,\n };\n } catch {\n // if (err.code === 'ENOENT') {\n // }\n return {\n valid: false,\n data: {\n gitExecutablePath,\n },\n };\n }\n }\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,YAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,WAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,WAAA;EAAA,MAAAJ,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAE,UAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA4D,SAAAC,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,gBAAAH,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAJ,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAI,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAZ,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAM,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAhB,CAAA,QAAAa,CAAA,GAAAb,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAErD,MAAMgB,gCAAgC,GAAAC,OAAA,CAAAD,gCAAA,GAAG,mBAAmB;AACpD,MAAME,eAAe,SAASC,oBAAS,CAAC;EAAAC,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAvB,eAAA,eAC9CkB,gCAAgC;IAAAlB,eAAA,sBACzB,oCAAoC;IAAAA,eAAA,mBACvC,SAAS;EAAA;EAEpBwB,eAAeA,CAACC,UAA6B,EAAU;IACrD,MAAMC,iBAAiB,GAAGD,UAAU,EAAEjC,IAAI,EAAEkC,iBAAiB;IAC7D,OAAO,mCAAmCA,iBAAiB,IAAI;EACjE;EAEAC,kBAAkBA,CAAA,EAAG;IACnB,OAAO,oHAAoH;EAC7H;EAEA,MAAMC,WAAWA,CAAA,EAA+B;IAC9C,MAAMF,iBAAiB,GAAG,IAAAG,kCAAoB,EAAC,CAAC;IAChD,IAAI;MACF,MAAM,IAAAC,gBAAK,EAACJ,iBAAiB,EAAE,CAAC,WAAW,CAAC,CAAC;MAC7C,OAAO;QACLK,KAAK,EAAE;MACT,CAAC;IACH,CAAC,CAAC,MAAM;MACN;MACA;MACA,OAAO;QACLA,KAAK,EAAE,KAAK;QACZvC,IAAI,EAAE;UACJkC;QACF;MACF,CAAC;IACH;EACF;AACF;AAACP,OAAA,CAAApB,OAAA,GAAAqB,eAAA","ignoreList":[]}
@@ -37,8 +37,7 @@ class ValidateWorkspaceBitJsonSyntax extends _diagnosis().default {
37
37
  _defineProperty(this, "category", 'configuration');
38
38
  }
39
39
  _formatSymptoms(bareResult) {
40
- var _bareResult$data;
41
- const bitJsonPath = bareResult === null || bareResult === void 0 || (_bareResult$data = bareResult.data) === null || _bareResult$data === void 0 ? void 0 : _bareResult$data.bitJsonPath;
40
+ const bitJsonPath = bareResult?.data?.bitJsonPath;
42
41
  return `invalid workspace.jsonc: ${bitJsonPath} is not a valid JSON file.`;
43
42
  }
44
43
  _formatManualTreat() {
@@ -1 +1 @@
1
- {"version":3,"names":["_legacy","data","require","_legacy2","_diagnosis","_interopRequireDefault","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ValidateWorkspaceBitJsonSyntax","Diagnosis","constructor","args","_formatSymptoms","bareResult","_bareResult$data","bitJsonPath","_formatManualTreat","_runExamine","consumer","loadConsumer","consumerPath","getPath","LegacyWorkspaceConfig","loadIfExist","scope","path","valid","exports"],"sources":["validate-workspace-bit-json-syntax.ts"],"sourcesContent":["import { loadConsumer } from '@teambit/legacy.consumer';\nimport { LegacyWorkspaceConfig } from '@teambit/legacy.consumer-config';\nimport Diagnosis, { ExamineBareResult } from '../diagnosis';\n\nexport default class ValidateWorkspaceBitJsonSyntax extends Diagnosis {\n name = \"validate workspace's bit config\";\n description = 'validate workspace configuration object';\n category = 'configuration';\n\n _formatSymptoms(bareResult: ExamineBareResult): string {\n const bitJsonPath = bareResult?.data?.bitJsonPath;\n return `invalid workspace.jsonc: ${bitJsonPath} is not a valid JSON file.`;\n }\n\n _formatManualTreat() {\n return 'manually fix the workspace.jsonc or consider running bit init --reset to recreate the file';\n }\n\n // TODO: support configuration from package.json\n async _runExamine(): Promise<ExamineBareResult> {\n const consumer = await loadConsumer();\n const consumerPath = consumer.getPath();\n try {\n await LegacyWorkspaceConfig.loadIfExist(consumerPath, consumer.scope.path);\n return {\n valid: true,\n };\n } catch {\n return {\n valid: false,\n data: {},\n };\n }\n }\n}\n"],"mappings":";;;;;;AAAA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,SAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,QAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,WAAA;EAAA,MAAAH,IAAA,GAAAI,sBAAA,CAAAH,OAAA;EAAAE,UAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA4D,SAAAI,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,gBAAAH,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAJ,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAI,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAZ,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAM,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAhB,CAAA,QAAAa,CAAA,GAAAb,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAE7C,MAAMgB,8BAA8B,SAASC,oBAAS,CAAC;EAAAC,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAArB,eAAA,eAC7D,iCAAiC;IAAAA,eAAA,sBAC1B,yCAAyC;IAAAA,eAAA,mBAC5C,eAAe;EAAA;EAE1BsB,eAAeA,CAACC,UAA6B,EAAU;IAAA,IAAAC,gBAAA;IACrD,MAAMC,WAAW,GAAGF,UAAU,aAAVA,UAAU,gBAAAC,gBAAA,GAAVD,UAAU,CAAE/B,IAAI,cAAAgC,gBAAA,uBAAhBA,gBAAA,CAAkBC,WAAW;IACjD,OAAO,4BAA4BA,WAAW,4BAA4B;EAC5E;EAEAC,kBAAkBA,CAAA,EAAG;IACnB,OAAO,4FAA4F;EACrG;;EAEA;EACA,MAAMC,WAAWA,CAAA,EAA+B;IAC9C,MAAMC,QAAQ,GAAG,MAAM,IAAAC,sBAAY,EAAC,CAAC;IACrC,MAAMC,YAAY,GAAGF,QAAQ,CAACG,OAAO,CAAC,CAAC;IACvC,IAAI;MACF,MAAMC,gCAAqB,CAACC,WAAW,CAACH,YAAY,EAAEF,QAAQ,CAACM,KAAK,CAACC,IAAI,CAAC;MAC1E,OAAO;QACLC,KAAK,EAAE;MACT,CAAC;IACH,CAAC,CAAC,MAAM;MACN,OAAO;QACLA,KAAK,EAAE,KAAK;QACZ5C,IAAI,EAAE,CAAC;MACT,CAAC;IACH;EACF;AACF;AAAC6C,OAAA,CAAAtC,OAAA,GAAAmB,8BAAA","ignoreList":[]}
1
+ {"version":3,"names":["_legacy","data","require","_legacy2","_diagnosis","_interopRequireDefault","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ValidateWorkspaceBitJsonSyntax","Diagnosis","constructor","args","_formatSymptoms","bareResult","bitJsonPath","_formatManualTreat","_runExamine","consumer","loadConsumer","consumerPath","getPath","LegacyWorkspaceConfig","loadIfExist","scope","path","valid","exports"],"sources":["validate-workspace-bit-json-syntax.ts"],"sourcesContent":["import { loadConsumer } from '@teambit/legacy.consumer';\nimport { LegacyWorkspaceConfig } from '@teambit/legacy.consumer-config';\nimport Diagnosis, { ExamineBareResult } from '../diagnosis';\n\nexport default class ValidateWorkspaceBitJsonSyntax extends Diagnosis {\n name = \"validate workspace's bit config\";\n description = 'validate workspace configuration object';\n category = 'configuration';\n\n _formatSymptoms(bareResult: ExamineBareResult): string {\n const bitJsonPath = bareResult?.data?.bitJsonPath;\n return `invalid workspace.jsonc: ${bitJsonPath} is not a valid JSON file.`;\n }\n\n _formatManualTreat() {\n return 'manually fix the workspace.jsonc or consider running bit init --reset to recreate the file';\n }\n\n // TODO: support configuration from package.json\n async _runExamine(): Promise<ExamineBareResult> {\n const consumer = await loadConsumer();\n const consumerPath = consumer.getPath();\n try {\n await LegacyWorkspaceConfig.loadIfExist(consumerPath, consumer.scope.path);\n return {\n valid: true,\n };\n } catch {\n return {\n valid: false,\n data: {},\n };\n }\n }\n}\n"],"mappings":";;;;;;AAAA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,SAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,QAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,WAAA;EAAA,MAAAH,IAAA,GAAAI,sBAAA,CAAAH,OAAA;EAAAE,UAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA4D,SAAAI,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,gBAAAH,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAJ,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAI,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAZ,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAM,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAhB,CAAA,QAAAa,CAAA,GAAAb,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAE7C,MAAMgB,8BAA8B,SAASC,oBAAS,CAAC;EAAAC,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAArB,eAAA,eAC7D,iCAAiC;IAAAA,eAAA,sBAC1B,yCAAyC;IAAAA,eAAA,mBAC5C,eAAe;EAAA;EAE1BsB,eAAeA,CAACC,UAA6B,EAAU;IACrD,MAAMC,WAAW,GAAGD,UAAU,EAAE/B,IAAI,EAAEgC,WAAW;IACjD,OAAO,4BAA4BA,WAAW,4BAA4B;EAC5E;EAEAC,kBAAkBA,CAAA,EAAG;IACnB,OAAO,4FAA4F;EACrG;;EAEA;EACA,MAAMC,WAAWA,CAAA,EAA+B;IAC9C,MAAMC,QAAQ,GAAG,MAAM,IAAAC,sBAAY,EAAC,CAAC;IACrC,MAAMC,YAAY,GAAGF,QAAQ,CAACG,OAAO,CAAC,CAAC;IACvC,IAAI;MACF,MAAMC,gCAAqB,CAACC,WAAW,CAACH,YAAY,EAAEF,QAAQ,CAACM,KAAK,CAACC,IAAI,CAAC;MAC1E,OAAO;QACLC,KAAK,EAAE;MACT,CAAC;IACH,CAAC,CAAC,MAAM;MACN,OAAO;QACLA,KAAK,EAAE,KAAK;QACZ3C,IAAI,EAAE,CAAC;MACT,CAAC;IACH;EACF;AACF;AAAC4C,OAAA,CAAArC,OAAA,GAAAmB,8BAAA","ignoreList":[]}
@@ -335,7 +335,7 @@ class DoctorMain {
335
335
  // TODO: support new config as well
336
336
  const scopePath = (0, _scopeModules().findScopePath)(consumerInfo.path);
337
337
  const config = scopePath ? await _legacy3().LegacyWorkspaceConfig.loadIfExist(consumerInfo.path, scopePath) : undefined;
338
- const legacyPlainConfig = config === null || config === void 0 ? void 0 : config._legacyPlainObject();
338
+ const legacyPlainConfig = config?._legacyPlainObject();
339
339
  if (legacyPlainConfig) {
340
340
  pack.entry({
341
341
  name: 'config.json'
@@ -1 +1 @@
1
- {"version":3,"names":["_cli","data","require","_path","_interopRequireDefault","_fsExtra","_os","_tarStream","_tarFs","_bit","_legacy","_legacy2","_legacy3","_workspaceModules","_doctorRegistrar","_doctorRegistrarBuilder","_lodash","_legacy4","_toolboxFs","_scopeModules","globalConfig","_interopRequireWildcard","_validateNpmExec","_validateYarnExec","_diagnosisNotFound","_missingDiagnosisName","_doctor","_doctorCmd","_logger","_chalk","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_objectWithoutProperties","o","_objectWithoutPropertiesLoose","getOwnPropertySymbols","s","length","includes","propertyIsEnumerable","_defineProperty","_toPropertyKey","value","enumerable","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","runningTimeStamp","DoctorMain","constructor","logger","runAll","options","registerCoreAndExtensionsDiagnoses","_getTimeStamp","doctorRegistrar","DoctorRegistrar","getInstance","examineResultsWithNulls","Promise","all","diagnoses","map","diagnosis","examine","err","error","name","consoleFailure","chalk","red","message","examineResults","compact","envMeta","_getEnvMeta","savedFilePath","_saveExamineResultsToFile","metaData","runOne","_ref","diagnosisName","MissingDiagnosisName","getDiagnosisByName","DiagnosisNotFound","examineResult","listDiagnoses","resolve","filePath","undefined","finalFilePath","_calculateFinalFileName","packStream","_generateExamineResultsTarFile","yourTarball","fs","createWriteStream","pipe","on","info","getWithoutExt","filename","ext","getExt","substring","fileName","_getDefaultFileName","finalFileName","timestamp","d","Date","getTime","tarFilePath","archiveWorkspace","includeNodeModules","includePublic","excludeLocalScope","debugLog","_getDebugLogAsBuffer","consumerInfo","_getWorkspaceInfo","bitmap","path","_getBitMap","packExamineResults","pack","entry","JSON","stringify","hasWorkspaceConfig","scopePath","findScopePath","config","LegacyWorkspaceConfig","loadIfExist","legacyPlainConfig","_legacyPlainObject","finalize","tar","ignore","startsWith","sep","isGit","isLocalScope","myPack","tarFS","finish","env","nodeVersion","process","version","runningTimestamp","platform","os","bitVersion","getBitVersion","npmVersion","getNpmVersion","yarnVersion","getYarnVersion","userDetails","_getUserDetails","getSync","CFG_USER_NAME_KEY","email","CFG_USER_EMAIL_KEY","exists","pathExists","DEBUG_LOG","log","readFile","logWithoutChalk","removeChalkCharacters","Buffer","from","getWorkspaceInfo","cwd","workspaceDir","BitMap","loadRawSync","provider","cliMain","loggerMain","createLogger","DoctorAspect","id","doctor","register","DoctorCmd","exports","CLIAspect","LoggerAspect","MainRuntime","addRuntime","_default"],"sources":["doctor.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport path from 'path';\nimport fs from 'fs-extra';\nimport os from 'os';\n// @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\nimport Stream from 'stream';\nimport tar from 'tar-stream';\nimport tarFS from 'tar-fs';\nimport { getBitVersion } from '@teambit/bit.get-bit-version';\nimport { CFG_USER_EMAIL_KEY, CFG_USER_NAME_KEY, DEBUG_LOG } from '@teambit/legacy.constants';\nimport { BitMap } from '@teambit/legacy.bit-map';\nimport { LegacyWorkspaceConfig } from '@teambit/legacy.consumer-config';\nimport { getWorkspaceInfo, WorkspaceInfo } from '@teambit/workspace.modules.workspace-locator';\nimport Diagnosis, { ExamineResult } from './diagnosis';\nimport DoctorRegistrar from './doctor-registrar';\nimport registerCoreAndExtensionsDiagnoses from './doctor-registrar-builder';\nimport { compact } from 'lodash';\nimport { removeChalkCharacters } from '@teambit/legacy.utils';\nimport { getExt } from '@teambit/toolbox.fs.extension-getter';\nimport { findScopePath } from '@teambit/scope.modules.find-scope-path';\nimport * as globalConfig from '@teambit/legacy.global-config';\nimport { getNpmVersion } from './core-diagnoses/validate-npm-exec';\nimport { getYarnVersion } from './core-diagnoses/validate-yarn-exec';\nimport { DiagnosisNotFound } from './exceptions/diagnosis-not-found';\nimport { MissingDiagnosisName } from './exceptions/missing-diagnosis-name';\n\nimport { DoctorAspect } from './doctor.aspect';\nimport { DoctorCmd } from './doctor-cmd';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport chalk from 'chalk';\n\n// run specific check\nexport type DoctorMetaData = {\n nodeVersion: string;\n runningTimestamp: number;\n platform: string;\n bitVersion: string;\n npmVersion: string;\n yarnVersion: string;\n userDetails: string;\n};\nexport type DoctorRunAllResults = {\n examineResults: ExamineResult[];\n savedFilePath: string | null | undefined;\n metaData: DoctorMetaData;\n};\nexport type DoctorRunOneResult = {\n examineResult: ExamineResult;\n savedFilePath: string | null | undefined;\n metaData: DoctorMetaData;\n};\n\nlet runningTimeStamp;\n\nexport type DoctorOptions = {\n diagnosisName?: string;\n filePath?: string;\n archiveWorkspace?: boolean;\n includeNodeModules?: boolean;\n includePublic?: boolean;\n excludeLocalScope?: boolean;\n};\n\nexport class DoctorMain {\n constructor(private logger: Logger) {}\n\n async runAll(options: DoctorOptions): Promise<DoctorRunAllResults> {\n registerCoreAndExtensionsDiagnoses();\n runningTimeStamp = this._getTimeStamp();\n const doctorRegistrar = DoctorRegistrar.getInstance();\n const examineResultsWithNulls = await Promise.all(\n doctorRegistrar.diagnoses.map(async (diagnosis) => {\n try {\n return await diagnosis.examine();\n } catch (err: any) {\n this.logger.error(`doctor failed running diagnosis \"${diagnosis.name}\"`, err);\n this.logger.consoleFailure(\n chalk.red(`doctor failed running diagnosis \"${diagnosis.name}\".\\nerror-message: ${err.message}`)\n );\n }\n })\n );\n const examineResults = compact(examineResultsWithNulls);\n const envMeta = await this._getEnvMeta();\n const savedFilePath = await this._saveExamineResultsToFile(examineResults, envMeta, options);\n return { examineResults, savedFilePath, metaData: envMeta };\n }\n\n async runOne({ diagnosisName, ...options }: DoctorOptions): Promise<DoctorRunOneResult> {\n if (!diagnosisName) {\n throw new MissingDiagnosisName();\n }\n registerCoreAndExtensionsDiagnoses();\n runningTimeStamp = this._getTimeStamp();\n const doctorRegistrar = DoctorRegistrar.getInstance();\n const diagnosis = doctorRegistrar.getDiagnosisByName(diagnosisName);\n if (!diagnosis) {\n throw new DiagnosisNotFound(diagnosisName);\n }\n const examineResult = await diagnosis.examine();\n const envMeta = await this._getEnvMeta();\n const savedFilePath = await this._saveExamineResultsToFile([examineResult], envMeta, options);\n return { examineResult, savedFilePath, metaData: envMeta };\n }\n\n async listDiagnoses(): Promise<Diagnosis[]> {\n registerCoreAndExtensionsDiagnoses();\n const doctorRegistrar = DoctorRegistrar.getInstance();\n return Promise.resolve(doctorRegistrar.diagnoses);\n }\n\n private async _saveExamineResultsToFile(\n examineResults: ExamineResult[],\n envMeta: DoctorMetaData,\n options: DoctorOptions\n ): Promise<string | null | undefined> {\n if (!options.filePath) {\n return Promise.resolve(undefined);\n }\n const finalFilePath = this._calculateFinalFileName(options.filePath);\n const packStream = await this._generateExamineResultsTarFile(examineResults, envMeta, finalFilePath, options);\n\n const yourTarball = fs.createWriteStream(finalFilePath);\n\n packStream.pipe(yourTarball);\n\n return new Promise((resolve) => {\n yourTarball.on('close', () => {\n this.logger.info(`wrote a file by bit doctor, file path: ${finalFilePath}`);\n resolve(finalFilePath);\n // fs.stat(finalFilePath, private (err, stats) {\n // if (err) throw err\n // console.log(stats)\n // console.log('Got file info successfully!')\n // })\n });\n });\n }\n\n private getWithoutExt(filename: string): string {\n const ext = getExt(filename);\n // There is no extension just return the file name\n if (ext === filename) {\n return filename;\n }\n return filename.substring(0, filename.length - ext.length - 1); // -1 to remove the '.'\n }\n\n private _calculateFinalFileName(fileName: string): string {\n if (fileName === '.') {\n return this._getDefaultFileName();\n }\n let finalFileName = fileName;\n if (getExt(fileName) !== 'tar' && getExt(fileName) !== 'tar.gz') {\n finalFileName = `${this.getWithoutExt(finalFileName)}.tar`;\n }\n return finalFileName;\n }\n\n private _getDefaultFileName() {\n const timestamp = runningTimeStamp || this._getTimeStamp();\n return `doctor-results-${timestamp}.tar`;\n }\n\n // TODO: move to utils\n private _getTimeStamp() {\n const d = new Date();\n const timestamp = d.getTime();\n return timestamp;\n }\n\n private async _generateExamineResultsTarFile(\n examineResults: ExamineResult[],\n envMeta: DoctorMetaData,\n tarFilePath: string,\n options: DoctorOptions\n ): Promise<Stream.Readable> {\n const { archiveWorkspace, includeNodeModules, includePublic, excludeLocalScope } = options;\n const debugLog = await this._getDebugLogAsBuffer();\n const consumerInfo = await this._getWorkspaceInfo();\n let bitmap;\n if (consumerInfo && consumerInfo.path) {\n bitmap = this._getBitMap(consumerInfo.path);\n }\n\n const packExamineResults = async (pack) => {\n pack.entry({ name: 'env-meta.json' }, JSON.stringify(envMeta, null, 2));\n pack.entry({ name: 'doc-results.json' }, JSON.stringify(examineResults, null, 2));\n if (debugLog) {\n pack.entry({ name: 'debug.log' }, debugLog);\n }\n if (!archiveWorkspace && bitmap) {\n pack.entry({ name: '.bitmap' }, bitmap);\n }\n if (consumerInfo && consumerInfo.hasWorkspaceConfig) {\n // TODO: support new config as well\n const scopePath = findScopePath(consumerInfo.path);\n const config = scopePath ? await LegacyWorkspaceConfig.loadIfExist(consumerInfo.path, scopePath) : undefined;\n const legacyPlainConfig = config?._legacyPlainObject();\n if (legacyPlainConfig) {\n pack.entry({ name: 'config.json' }, JSON.stringify(legacyPlainConfig, null, 4));\n }\n }\n\n pack.finalize();\n\n return pack;\n };\n\n if (!archiveWorkspace) {\n const pack = tar.pack(); // pack is a streams2 stream\n return packExamineResults(pack);\n }\n\n const ignore = (fileName: string) => {\n if (fileName === tarFilePath) return true;\n if (fileName === '.DS_Store') return true;\n if (\n !includeNodeModules &&\n (fileName.startsWith(`node_modules${path.sep}`) || fileName.includes(`${path.sep}node_modules${path.sep}`))\n )\n return true;\n if (\n !includePublic &&\n (fileName.startsWith(`public${path.sep}`) || fileName.includes(`${path.sep}public${path.sep}`))\n )\n return true;\n const isGit = fileName.startsWith(`.git${path.sep}`);\n const isLocalScope =\n fileName.startsWith(`.bit${path.sep}`) || fileName.startsWith(`.git${path.sep}bit${path.sep}`);\n if (excludeLocalScope && isLocalScope) return true;\n if (isGit && !isLocalScope) return true;\n return false;\n };\n\n const myPack = tarFS.pack('.', {\n ignore,\n finalize: false,\n finish: packExamineResults,\n });\n\n return myPack;\n }\n\n private async _getEnvMeta(): Promise<DoctorMetaData> {\n const env = {\n nodeVersion: process.version,\n runningTimestamp: runningTimeStamp || this._getTimeStamp(),\n platform: os.platform(),\n bitVersion: getBitVersion(),\n npmVersion: await getNpmVersion(),\n yarnVersion: await getYarnVersion(),\n userDetails: this._getUserDetails(),\n };\n\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n return env;\n }\n\n private _getUserDetails(): string {\n const name = globalConfig.getSync(CFG_USER_NAME_KEY) || '';\n const email = globalConfig.getSync(CFG_USER_EMAIL_KEY) || '';\n return `${name}<${email}>`;\n }\n\n private async _getDebugLogAsBuffer(): Promise<Buffer | null | undefined> {\n const exists = await fs.pathExists(DEBUG_LOG);\n if (!exists) return null;\n const log = await fs.readFile(DEBUG_LOG, 'utf-8');\n const logWithoutChalk = removeChalkCharacters(log) as string;\n return Buffer.from(logWithoutChalk);\n }\n\n private async _getWorkspaceInfo(): Promise<WorkspaceInfo | null | undefined> {\n const consumerInfo = await getWorkspaceInfo(process.cwd());\n return consumerInfo;\n }\n\n private _getBitMap(workspaceDir): Buffer | null | undefined {\n return BitMap.loadRawSync(workspaceDir);\n }\n\n static slots = [];\n static dependencies = [CLIAspect, LoggerAspect];\n static runtime = MainRuntime;\n static async provider([cliMain, loggerMain]: [CLIMain, LoggerMain]) {\n const logger = loggerMain.createLogger(DoctorAspect.id);\n const doctor = new DoctorMain(logger);\n cliMain.register(new DoctorCmd(doctor));\n return doctor;\n }\n}\n\nDoctorAspect.addRuntime(DoctorMain);\n\nexport default DoctorMain;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_cli","data","require","_path","_interopRequireDefault","_fsExtra","_os","_tarStream","_tarFs","_bit","_legacy","_legacy2","_legacy3","_workspaceModules","_doctorRegistrar","_doctorRegistrarBuilder","_lodash","_legacy4","_toolboxFs","_scopeModules","globalConfig","_interopRequireWildcard","_validateNpmExec","_validateYarnExec","_diagnosisNotFound","_missingDiagnosisName","_doctor","_doctorCmd","_logger","_chalk","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_objectWithoutProperties","o","_objectWithoutPropertiesLoose","getOwnPropertySymbols","s","length","includes","propertyIsEnumerable","_defineProperty","_toPropertyKey","value","enumerable","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","runningTimeStamp","DoctorMain","constructor","logger","runAll","options","registerCoreAndExtensionsDiagnoses","_getTimeStamp","doctorRegistrar","DoctorRegistrar","getInstance","examineResultsWithNulls","Promise","all","diagnoses","map","diagnosis","examine","err","error","name","consoleFailure","chalk","red","message","examineResults","compact","envMeta","_getEnvMeta","savedFilePath","_saveExamineResultsToFile","metaData","runOne","_ref","diagnosisName","MissingDiagnosisName","getDiagnosisByName","DiagnosisNotFound","examineResult","listDiagnoses","resolve","filePath","undefined","finalFilePath","_calculateFinalFileName","packStream","_generateExamineResultsTarFile","yourTarball","fs","createWriteStream","pipe","on","info","getWithoutExt","filename","ext","getExt","substring","fileName","_getDefaultFileName","finalFileName","timestamp","d","Date","getTime","tarFilePath","archiveWorkspace","includeNodeModules","includePublic","excludeLocalScope","debugLog","_getDebugLogAsBuffer","consumerInfo","_getWorkspaceInfo","bitmap","path","_getBitMap","packExamineResults","pack","entry","JSON","stringify","hasWorkspaceConfig","scopePath","findScopePath","config","LegacyWorkspaceConfig","loadIfExist","legacyPlainConfig","_legacyPlainObject","finalize","tar","ignore","startsWith","sep","isGit","isLocalScope","myPack","tarFS","finish","env","nodeVersion","process","version","runningTimestamp","platform","os","bitVersion","getBitVersion","npmVersion","getNpmVersion","yarnVersion","getYarnVersion","userDetails","_getUserDetails","getSync","CFG_USER_NAME_KEY","email","CFG_USER_EMAIL_KEY","exists","pathExists","DEBUG_LOG","log","readFile","logWithoutChalk","removeChalkCharacters","Buffer","from","getWorkspaceInfo","cwd","workspaceDir","BitMap","loadRawSync","provider","cliMain","loggerMain","createLogger","DoctorAspect","id","doctor","register","DoctorCmd","exports","CLIAspect","LoggerAspect","MainRuntime","addRuntime","_default"],"sources":["doctor.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport path from 'path';\nimport fs from 'fs-extra';\nimport os from 'os';\n// @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\nimport Stream from 'stream';\nimport tar from 'tar-stream';\nimport tarFS from 'tar-fs';\nimport { getBitVersion } from '@teambit/bit.get-bit-version';\nimport { CFG_USER_EMAIL_KEY, CFG_USER_NAME_KEY, DEBUG_LOG } from '@teambit/legacy.constants';\nimport { BitMap } from '@teambit/legacy.bit-map';\nimport { LegacyWorkspaceConfig } from '@teambit/legacy.consumer-config';\nimport { getWorkspaceInfo, WorkspaceInfo } from '@teambit/workspace.modules.workspace-locator';\nimport Diagnosis, { ExamineResult } from './diagnosis';\nimport DoctorRegistrar from './doctor-registrar';\nimport registerCoreAndExtensionsDiagnoses from './doctor-registrar-builder';\nimport { compact } from 'lodash';\nimport { removeChalkCharacters } from '@teambit/legacy.utils';\nimport { getExt } from '@teambit/toolbox.fs.extension-getter';\nimport { findScopePath } from '@teambit/scope.modules.find-scope-path';\nimport * as globalConfig from '@teambit/legacy.global-config';\nimport { getNpmVersion } from './core-diagnoses/validate-npm-exec';\nimport { getYarnVersion } from './core-diagnoses/validate-yarn-exec';\nimport { DiagnosisNotFound } from './exceptions/diagnosis-not-found';\nimport { MissingDiagnosisName } from './exceptions/missing-diagnosis-name';\n\nimport { DoctorAspect } from './doctor.aspect';\nimport { DoctorCmd } from './doctor-cmd';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport chalk from 'chalk';\n\n// run specific check\nexport type DoctorMetaData = {\n nodeVersion: string;\n runningTimestamp: number;\n platform: string;\n bitVersion: string;\n npmVersion: string;\n yarnVersion: string;\n userDetails: string;\n};\nexport type DoctorRunAllResults = {\n examineResults: ExamineResult[];\n savedFilePath: string | null | undefined;\n metaData: DoctorMetaData;\n};\nexport type DoctorRunOneResult = {\n examineResult: ExamineResult;\n savedFilePath: string | null | undefined;\n metaData: DoctorMetaData;\n};\n\nlet runningTimeStamp;\n\nexport type DoctorOptions = {\n diagnosisName?: string;\n filePath?: string;\n archiveWorkspace?: boolean;\n includeNodeModules?: boolean;\n includePublic?: boolean;\n excludeLocalScope?: boolean;\n};\n\nexport class DoctorMain {\n constructor(private logger: Logger) {}\n\n async runAll(options: DoctorOptions): Promise<DoctorRunAllResults> {\n registerCoreAndExtensionsDiagnoses();\n runningTimeStamp = this._getTimeStamp();\n const doctorRegistrar = DoctorRegistrar.getInstance();\n const examineResultsWithNulls = await Promise.all(\n doctorRegistrar.diagnoses.map(async (diagnosis) => {\n try {\n return await diagnosis.examine();\n } catch (err: any) {\n this.logger.error(`doctor failed running diagnosis \"${diagnosis.name}\"`, err);\n this.logger.consoleFailure(\n chalk.red(`doctor failed running diagnosis \"${diagnosis.name}\".\\nerror-message: ${err.message}`)\n );\n }\n })\n );\n const examineResults = compact(examineResultsWithNulls);\n const envMeta = await this._getEnvMeta();\n const savedFilePath = await this._saveExamineResultsToFile(examineResults, envMeta, options);\n return { examineResults, savedFilePath, metaData: envMeta };\n }\n\n async runOne({ diagnosisName, ...options }: DoctorOptions): Promise<DoctorRunOneResult> {\n if (!diagnosisName) {\n throw new MissingDiagnosisName();\n }\n registerCoreAndExtensionsDiagnoses();\n runningTimeStamp = this._getTimeStamp();\n const doctorRegistrar = DoctorRegistrar.getInstance();\n const diagnosis = doctorRegistrar.getDiagnosisByName(diagnosisName);\n if (!diagnosis) {\n throw new DiagnosisNotFound(diagnosisName);\n }\n const examineResult = await diagnosis.examine();\n const envMeta = await this._getEnvMeta();\n const savedFilePath = await this._saveExamineResultsToFile([examineResult], envMeta, options);\n return { examineResult, savedFilePath, metaData: envMeta };\n }\n\n async listDiagnoses(): Promise<Diagnosis[]> {\n registerCoreAndExtensionsDiagnoses();\n const doctorRegistrar = DoctorRegistrar.getInstance();\n return Promise.resolve(doctorRegistrar.diagnoses);\n }\n\n private async _saveExamineResultsToFile(\n examineResults: ExamineResult[],\n envMeta: DoctorMetaData,\n options: DoctorOptions\n ): Promise<string | null | undefined> {\n if (!options.filePath) {\n return Promise.resolve(undefined);\n }\n const finalFilePath = this._calculateFinalFileName(options.filePath);\n const packStream = await this._generateExamineResultsTarFile(examineResults, envMeta, finalFilePath, options);\n\n const yourTarball = fs.createWriteStream(finalFilePath);\n\n packStream.pipe(yourTarball);\n\n return new Promise((resolve) => {\n yourTarball.on('close', () => {\n this.logger.info(`wrote a file by bit doctor, file path: ${finalFilePath}`);\n resolve(finalFilePath);\n // fs.stat(finalFilePath, private (err, stats) {\n // if (err) throw err\n // console.log(stats)\n // console.log('Got file info successfully!')\n // })\n });\n });\n }\n\n private getWithoutExt(filename: string): string {\n const ext = getExt(filename);\n // There is no extension just return the file name\n if (ext === filename) {\n return filename;\n }\n return filename.substring(0, filename.length - ext.length - 1); // -1 to remove the '.'\n }\n\n private _calculateFinalFileName(fileName: string): string {\n if (fileName === '.') {\n return this._getDefaultFileName();\n }\n let finalFileName = fileName;\n if (getExt(fileName) !== 'tar' && getExt(fileName) !== 'tar.gz') {\n finalFileName = `${this.getWithoutExt(finalFileName)}.tar`;\n }\n return finalFileName;\n }\n\n private _getDefaultFileName() {\n const timestamp = runningTimeStamp || this._getTimeStamp();\n return `doctor-results-${timestamp}.tar`;\n }\n\n // TODO: move to utils\n private _getTimeStamp() {\n const d = new Date();\n const timestamp = d.getTime();\n return timestamp;\n }\n\n private async _generateExamineResultsTarFile(\n examineResults: ExamineResult[],\n envMeta: DoctorMetaData,\n tarFilePath: string,\n options: DoctorOptions\n ): Promise<Stream.Readable> {\n const { archiveWorkspace, includeNodeModules, includePublic, excludeLocalScope } = options;\n const debugLog = await this._getDebugLogAsBuffer();\n const consumerInfo = await this._getWorkspaceInfo();\n let bitmap;\n if (consumerInfo && consumerInfo.path) {\n bitmap = this._getBitMap(consumerInfo.path);\n }\n\n const packExamineResults = async (pack) => {\n pack.entry({ name: 'env-meta.json' }, JSON.stringify(envMeta, null, 2));\n pack.entry({ name: 'doc-results.json' }, JSON.stringify(examineResults, null, 2));\n if (debugLog) {\n pack.entry({ name: 'debug.log' }, debugLog);\n }\n if (!archiveWorkspace && bitmap) {\n pack.entry({ name: '.bitmap' }, bitmap);\n }\n if (consumerInfo && consumerInfo.hasWorkspaceConfig) {\n // TODO: support new config as well\n const scopePath = findScopePath(consumerInfo.path);\n const config = scopePath ? await LegacyWorkspaceConfig.loadIfExist(consumerInfo.path, scopePath) : undefined;\n const legacyPlainConfig = config?._legacyPlainObject();\n if (legacyPlainConfig) {\n pack.entry({ name: 'config.json' }, JSON.stringify(legacyPlainConfig, null, 4));\n }\n }\n\n pack.finalize();\n\n return pack;\n };\n\n if (!archiveWorkspace) {\n const pack = tar.pack(); // pack is a streams2 stream\n return packExamineResults(pack);\n }\n\n const ignore = (fileName: string) => {\n if (fileName === tarFilePath) return true;\n if (fileName === '.DS_Store') return true;\n if (\n !includeNodeModules &&\n (fileName.startsWith(`node_modules${path.sep}`) || fileName.includes(`${path.sep}node_modules${path.sep}`))\n )\n return true;\n if (\n !includePublic &&\n (fileName.startsWith(`public${path.sep}`) || fileName.includes(`${path.sep}public${path.sep}`))\n )\n return true;\n const isGit = fileName.startsWith(`.git${path.sep}`);\n const isLocalScope =\n fileName.startsWith(`.bit${path.sep}`) || fileName.startsWith(`.git${path.sep}bit${path.sep}`);\n if (excludeLocalScope && isLocalScope) return true;\n if (isGit && !isLocalScope) return true;\n return false;\n };\n\n const myPack = tarFS.pack('.', {\n ignore,\n finalize: false,\n finish: packExamineResults,\n });\n\n return myPack;\n }\n\n private async _getEnvMeta(): Promise<DoctorMetaData> {\n const env = {\n nodeVersion: process.version,\n runningTimestamp: runningTimeStamp || this._getTimeStamp(),\n platform: os.platform(),\n bitVersion: getBitVersion(),\n npmVersion: await getNpmVersion(),\n yarnVersion: await getYarnVersion(),\n userDetails: this._getUserDetails(),\n };\n\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n return env;\n }\n\n private _getUserDetails(): string {\n const name = globalConfig.getSync(CFG_USER_NAME_KEY) || '';\n const email = globalConfig.getSync(CFG_USER_EMAIL_KEY) || '';\n return `${name}<${email}>`;\n }\n\n private async _getDebugLogAsBuffer(): Promise<Buffer | null | undefined> {\n const exists = await fs.pathExists(DEBUG_LOG);\n if (!exists) return null;\n const log = await fs.readFile(DEBUG_LOG, 'utf-8');\n const logWithoutChalk = removeChalkCharacters(log) as string;\n return Buffer.from(logWithoutChalk);\n }\n\n private async _getWorkspaceInfo(): Promise<WorkspaceInfo | null | undefined> {\n const consumerInfo = await getWorkspaceInfo(process.cwd());\n return consumerInfo;\n }\n\n private _getBitMap(workspaceDir): Buffer | null | undefined {\n return BitMap.loadRawSync(workspaceDir);\n }\n\n static slots = [];\n static dependencies = [CLIAspect, LoggerAspect];\n static runtime = MainRuntime;\n static async provider([cliMain, loggerMain]: [CLIMain, LoggerMain]) {\n const logger = loggerMain.createLogger(DoctorAspect.id);\n const doctor = new DoctorMain(logger);\n cliMain.register(new DoctorCmd(doctor));\n return doctor;\n }\n}\n\nDoctorAspect.addRuntime(DoctorMain);\n\nexport default DoctorMain;\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/doctor",
3
- "version": "0.0.178",
3
+ "version": "0.0.180",
4
4
  "homepage": "https://bit.cloud/teambit/harmony/doctor",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.harmony",
8
8
  "name": "doctor",
9
- "version": "0.0.178"
9
+ "version": "0.0.180"
10
10
  },
11
11
  "dependencies": {
12
12
  "chalk": "2.4.2",
@@ -18,51 +18,63 @@
18
18
  "glob": "7.1.6",
19
19
  "semver": "7.5.4",
20
20
  "execa": "2.1.0",
21
- "core-js": "^3.0.0",
22
- "@babel/runtime": "7.20.0",
23
21
  "@teambit/harmony": "0.4.6",
24
22
  "@teambit/component-id": "1.2.2",
25
23
  "@teambit/bvm.list": "0.1.15",
26
24
  "@teambit/bit-error": "0.0.404",
27
- "@teambit/cli": "0.0.1072",
25
+ "@teambit/cli": "0.0.1074",
28
26
  "@teambit/bit.get-bit-version": "0.0.2",
29
- "@teambit/legacy.bit-map": "0.0.64",
27
+ "@teambit/legacy.bit-map": "0.0.66",
30
28
  "@teambit/legacy.constants": "0.0.3",
31
- "@teambit/legacy.consumer-config": "0.0.7",
29
+ "@teambit/legacy.consumer-config": "0.0.9",
32
30
  "@teambit/legacy.global-config": "0.0.3",
33
31
  "@teambit/legacy.utils": "0.0.11",
34
- "@teambit/logger": "0.0.1165",
32
+ "@teambit/logger": "0.0.1167",
35
33
  "@teambit/scope.modules.find-scope-path": "0.0.4",
36
34
  "@teambit/toolbox.fs.extension-getter": "0.0.2",
37
35
  "@teambit/workspace.modules.workspace-locator": "0.0.4",
38
- "@teambit/legacy.consumer": "0.0.7",
39
- "@teambit/legacy.scope": "0.0.7",
40
- "@teambit/scope.objects": "0.0.7",
36
+ "@teambit/legacy.consumer": "0.0.9",
37
+ "@teambit/legacy.scope": "0.0.9",
38
+ "@teambit/scope.objects": "0.0.9",
41
39
  "@teambit/git.modules.git-executable": "0.0.4",
42
- "@teambit/legacy.logger": "0.0.4"
40
+ "@teambit/legacy.logger": "0.0.5"
43
41
  },
44
42
  "devDependencies": {
45
43
  "@types/fs-extra": "9.0.7",
46
44
  "@types/lodash": "4.14.165",
47
45
  "@types/semver": "7.3.4",
48
- "@types/node": "12.20.4",
49
- "@types/react": "^17.0.8",
50
- "@types/react-dom": "^17.0.5",
51
- "@types/jest": "^26.0.0",
52
- "@types/testing-library__jest-dom": "5.9.5"
46
+ "@teambit/harmony.envs.core-aspect-env": "0.0.63"
53
47
  },
54
- "peerDependencies": {
55
- "react": "^16.8.0 || ^17.0.0",
56
- "react-dom": "^16.8.0 || ^17.0.0"
57
- },
58
- "license": "SEE LICENSE IN UNLICENSED",
48
+ "peerDependencies": {},
49
+ "license": "Apache-2.0",
59
50
  "optionalDependencies": {},
60
51
  "peerDependenciesMeta": {},
61
52
  "exports": {
62
- "node": {
63
- "require": "./dist/index.js",
64
- "import": "./dist/esm.mjs"
53
+ ".": {
54
+ "node": {
55
+ "require": "./dist/index.js",
56
+ "import": "./dist/esm.mjs"
57
+ },
58
+ "default": "./dist/index.js"
65
59
  },
66
- "default": "./dist/index.js"
67
- }
60
+ "./dist/*": "./dist/*",
61
+ "./artifacts/*": "./artifacts/*",
62
+ "./*": "./*.ts"
63
+ },
64
+ "private": false,
65
+ "engines": {
66
+ "node": ">=16.0.0"
67
+ },
68
+ "repository": {
69
+ "type": "git",
70
+ "url": "https://github.com/teambit/bit"
71
+ },
72
+ "keywords": [
73
+ "bit",
74
+ "bit-aspect",
75
+ "bit-core-aspect",
76
+ "components",
77
+ "collaboration",
78
+ "web"
79
+ ]
68
80
  }
package/types/asset.d.ts CHANGED
@@ -5,12 +5,12 @@ declare module '*.png' {
5
5
  declare module '*.svg' {
6
6
  import type { FunctionComponent, SVGProps } from 'react';
7
7
 
8
- export const ReactComponent: FunctionComponent<SVGProps<SVGSVGElement> & { title?: string }>;
8
+ export const ReactComponent: FunctionComponent<
9
+ SVGProps<SVGSVGElement> & { title?: string }
10
+ >;
9
11
  const src: string;
10
12
  export default src;
11
13
  }
12
-
13
- // @TODO Gilad
14
14
  declare module '*.jpg' {
15
15
  const value: any;
16
16
  export = value;
@@ -27,3 +27,15 @@ declare module '*.bmp' {
27
27
  const value: any;
28
28
  export = value;
29
29
  }
30
+ declare module '*.otf' {
31
+ const value: any;
32
+ export = value;
33
+ }
34
+ declare module '*.woff' {
35
+ const value: any;
36
+ export = value;
37
+ }
38
+ declare module '*.woff2' {
39
+ const value: any;
40
+ export = value;
41
+ }
@@ -1,29 +0,0 @@
1
- import chalk from 'chalk';
2
- import { table } from 'table';
3
- import type { Alignment } from 'table';
4
-
5
- import Diagnosis from './diagnosis';
6
-
7
- // const NAME_COLUMN_WIDTH = 100;
8
- // const DESCRIPTION_COLUMN_WIDTH = 30;
9
-
10
- const tableColumnConfig = {
11
- columnDefault: {
12
- alignment: 'left' as Alignment,
13
- },
14
- };
15
-
16
- type DiagnosisRow = [string, string, string];
17
-
18
- function createRow(diagnosis: Diagnosis): DiagnosisRow {
19
- return [diagnosis.category, diagnosis.name, diagnosis.description];
20
- }
21
-
22
- export default function formatDiagnosesList(diagnosesList: Diagnosis[]): string {
23
- const header = [chalk.bold('category'), chalk.bold('name'), chalk.bold('description')];
24
- const rows = diagnosesList.map(createRow);
25
- // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!
26
- rows.unshift(header);
27
- const output = table(rows, tableColumnConfig);
28
- return output;
29
- }
package/diagnosis.ts DELETED
@@ -1,81 +0,0 @@
1
- export type ExamineBareResult = {
2
- valid: boolean;
3
- data?: Record<string, any>;
4
- };
5
-
6
- export type DiagnosisMetaData = {
7
- name: string;
8
- description: string;
9
- category: string;
10
- };
11
-
12
- export type ExamineResult = {
13
- diagnosisMetaData: DiagnosisMetaData;
14
- bareResult: ExamineBareResult;
15
- formattedSymptoms: string; // A human readable of the found issues
16
- formattedManualTreat: string; // human readable steps to fix
17
- };
18
-
19
- export default class Diagnosis {
20
- // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!
21
- name: string;
22
- // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!
23
- description: string;
24
- // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!
25
- category: string;
26
- // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!
27
- result: Record<string, any>;
28
-
29
- /**
30
- * A function that actually runs the examination
31
- */
32
- async _runExamine(): Promise<ExamineBareResult> {
33
- throw new Error('You must implement this method');
34
- }
35
-
36
- /**
37
- * Returns a descriptive symptoms message which might include specific data from the examination
38
- * @param bareResult ExamineBareResult
39
- */
40
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
41
- _formatSymptoms(bareResult: ExamineBareResult): string {
42
- throw new Error('You must implement this method');
43
- }
44
-
45
- /**
46
- * Returns a descriptive instruction to handle the issue (might include specific data from the examination)
47
- * @param bareResult ExamineBareResult
48
- */
49
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
50
- _formatManualTreat(bareResult: ExamineBareResult): string {
51
- throw new Error('You must implement this method');
52
- }
53
-
54
- getMeta() {
55
- return {
56
- category: this.category,
57
- name: this.name,
58
- description: this.description,
59
- };
60
- }
61
-
62
- async examine(): Promise<ExamineResult> {
63
- const bareResult = await this._runExamine();
64
- if (bareResult.valid) {
65
- return {
66
- diagnosisMetaData: this.getMeta(),
67
- bareResult,
68
- formattedSymptoms: '',
69
- formattedManualTreat: '',
70
- };
71
- }
72
- const formattedSymptoms = this._formatSymptoms(bareResult);
73
- const formattedManualTreat = this._formatManualTreat(bareResult);
74
- return {
75
- diagnosisMetaData: this.getMeta(),
76
- bareResult,
77
- formattedSymptoms,
78
- formattedManualTreat,
79
- };
80
- }
81
- }
package/doctor-cmd.ts DELETED
@@ -1,99 +0,0 @@
1
- import { Command, CommandOptions } from '@teambit/cli';
2
- import formatDiagnosesList from './diagnosis-list-template';
3
- import formatDiagnosesResult from './doctor-results-template';
4
- import { DoctorMain, DoctorOptions } from './doctor.main.runtime';
5
-
6
- type Flags = {
7
- list?: boolean;
8
- save?: string;
9
- archive?: string;
10
- includeNodeModules?: boolean;
11
- includePublic?: boolean;
12
- excludeLocalScope?: boolean;
13
- };
14
-
15
- export class DoctorCmd implements Command {
16
- name = 'doctor [diagnosis-name]';
17
- description = 'diagnose a bit workspace';
18
- group = 'general';
19
- alias = '';
20
- loadAspects = false;
21
- options = [
22
- ['j', 'json', 'return diagnoses in json format'],
23
- ['', 'list', 'list all available diagnoses'],
24
- ['s', 'save [filePath]', 'save diagnoses to a file'],
25
- [
26
- 'a',
27
- 'archive [filePath]',
28
- 'archive the workspace including diagnosis info (by default exclude node-modules and include .bit)',
29
- ],
30
- ['n', 'include-node-modules', 'relevant for --archive. include node_modules in the archive file'],
31
- ['p', 'include-public', 'relevant for --archive. include public folder in the archive file'],
32
- ['e', 'exclude-local-scope', 'relevant for --archive. exclude .bit or .git/bit from the archive file'],
33
- ] as CommandOptions;
34
-
35
- constructor(private doctor: DoctorMain) {}
36
-
37
- async report([diagnosisName]: string[], flags: Flags) {
38
- const res = await this.runDiag(diagnosisName, flags);
39
- if (flags.list) {
40
- return formatDiagnosesList(res);
41
- }
42
- if (diagnosisName) {
43
- const { examineResult, savedFilePath, metaData } = res;
44
- return formatDiagnosesResult({ examineResults: [examineResult], savedFilePath, metaData });
45
- }
46
- const { examineResults, savedFilePath, metaData } = res;
47
- return formatDiagnosesResult({ examineResults, savedFilePath, metaData });
48
- }
49
-
50
- async json([diagnosisName]: string[], flags: Flags) {
51
- const res = await this.runDiag(diagnosisName, flags);
52
- if (flags.list) {
53
- return res;
54
- }
55
- const { examineResults, examineResult, savedFilePath } = res;
56
- const fullJson = {
57
- savedFilePath,
58
- examineResult,
59
- examineResults,
60
- };
61
- return fullJson;
62
- }
63
-
64
- private async runDiag(diagnosisName?: string, flags: Flags = {}): Promise<any> {
65
- const {
66
- list = false,
67
- save,
68
- archive,
69
- includeNodeModules = false,
70
- includePublic = false,
71
- excludeLocalScope = false,
72
- } = flags;
73
-
74
- if (list) {
75
- return this.doctor.listDiagnoses();
76
- }
77
- if ((includeNodeModules || excludeLocalScope) && !archive) {
78
- throw new Error('to use --include-node-modules or --exclude-local-scope please specify --archive');
79
- }
80
- let filePath = save;
81
- // Happen when used --save without specify the location
82
- // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!
83
- if (save === true || archive === true) {
84
- filePath = '.';
85
- }
86
- if (typeof archive === 'string') {
87
- filePath = archive;
88
- }
89
- const doctorOptions: DoctorOptions = {
90
- diagnosisName,
91
- filePath,
92
- archiveWorkspace: Boolean(archive),
93
- includeNodeModules,
94
- includePublic,
95
- excludeLocalScope,
96
- };
97
- return diagnosisName ? this.doctor.runOne(doctorOptions) : this.doctor.runAll(doctorOptions);
98
- }
99
- }
@@ -1,22 +0,0 @@
1
- import BrokenSymlinkFiles from './core-diagnoses/broken-symlink-files';
2
- import OrphanSymlinkObjects from './core-diagnoses/orphan-symlink-objects';
3
- import ValidateBitVersion from './core-diagnoses/validate-bit-version';
4
- import ValidateGitExec from './core-diagnoses/validate-git-exec';
5
- import ValidateNpmExec from './core-diagnoses/validate-npm-exec';
6
- import ValidateWorkspaceBitJsonSyntax from './core-diagnoses/validate-workspace-bit-json-syntax';
7
- import ValidateYarnExec from './core-diagnoses/validate-yarn-exec';
8
- import Diagnosis from './diagnosis';
9
- import DoctorRegistrar from './doctor-registrar';
10
-
11
- export default function registerCoreAndExtensionsDiagnoses(extensionDiagnoses: Diagnosis[] = []) {
12
- const diagnoses = [
13
- new ValidateWorkspaceBitJsonSyntax(),
14
- new ValidateGitExec(),
15
- new OrphanSymlinkObjects(),
16
- new BrokenSymlinkFiles(),
17
- new ValidateNpmExec(),
18
- new ValidateYarnExec(),
19
- new ValidateBitVersion(),
20
- ].concat(extensionDiagnoses);
21
- DoctorRegistrar.init(diagnoses);
22
- }
@@ -1,58 +0,0 @@
1
- import Diagnosis from './diagnosis';
2
-
3
- /*
4
- * Setting up block level variable to store class state
5
- * set's to null by default.
6
- */
7
- let instance: DoctorRegistrar | null = null;
8
-
9
- const _checkName = (name) => (diagnosis: Diagnosis) => {
10
- return diagnosis.name === name;
11
- };
12
-
13
- export default class DoctorRegistrar {
14
- // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!
15
- diagnoses: Diagnosis[];
16
-
17
- constructor() {
18
- if (!instance) {
19
- // eslint-disable-next-line @typescript-eslint/no-this-alias
20
- instance = this;
21
- }
22
-
23
- return instance;
24
- }
25
-
26
- /**
27
- * Initialize the default diagnoses
28
- */
29
- static init(diagnoses: Diagnosis[] = []) {
30
- const self = new DoctorRegistrar();
31
- self.diagnoses = diagnoses;
32
- // diagnoses.forEach(diagnosis => self.diagnoses.push(diagnosis));
33
- }
34
-
35
- /**
36
- * Get the instance of the DoctorRegistrar
37
- * @return {DoctorRegistrar} instance of the DoctorRegistrar
38
- *
39
- */
40
- static getInstance(): DoctorRegistrar {
41
- if (!instance) {
42
- DoctorRegistrar.init();
43
- }
44
- return instance as DoctorRegistrar;
45
- }
46
-
47
- /**
48
- * Register a new diagnosis
49
- * @param {Diagnosis} diagnosis
50
- */
51
- registerDiagnosis(diagnosis: Diagnosis) {
52
- this.diagnoses.push(diagnosis);
53
- }
54
-
55
- getDiagnosisByName(name: string) {
56
- return this.diagnoses.find(_checkName(name));
57
- }
58
- }