@teambit/insights 1.0.671 → 1.0.673

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.
@@ -43,8 +43,8 @@ export default class FindCycles implements Insight {
43
43
  }
44
44
  const string = data.data
45
45
  .map((cycle) => {
46
- return `\nCyclic dependency
47
- -----------------
46
+ return `\nCyclic dependency (${cycle.length - 1} components)
47
+ ---------------------------------
48
48
  - ${cycle.join('\n- ')}`;
49
49
  })
50
50
  .join('\n');
@@ -56,8 +56,8 @@ class FindCycles {
56
56
  return 'No cyclic dependencies';
57
57
  }
58
58
  const string = data.data.map(cycle => {
59
- return `\nCyclic dependency
60
- -----------------
59
+ return `\nCyclic dependency (${cycle.length - 1} components)
60
+ ---------------------------------
61
61
  - ${cycle.join('\n- ')}`;
62
62
  }).join('\n');
63
63
  return string;
@@ -1 +1 @@
1
- {"version":3,"names":["_componentIssues","data","require","_lodash","_defineProperty","e","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","INSIGHT_CIRCULAR_DEPS_NAME","exports","FindCycles","constructor","graphBuilder","runInsight","opts","graph","getGraphIds","ids","message","undefined","cycles","findCycles","includeDeps","forEach","cycle","push","length","renderData","string","map","join","run","bareResult","renderedData","result","metaData","name","description","addAsComponentIssue","components","c","id","allIds","uniq","flat","componentsWithCircular","filter","component","includes","toString","state","issues","getOrCreate","IssuesClasses","CircularDependencies","default"],"sources":["find-circulars.ts"],"sourcesContent":["import type { Component } from '@teambit/component';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport type { GraphMain } from '@teambit/graph';\nimport { uniq } from 'lodash';\nimport type { Insight, InsightResult, RawResult } from '../insight';\nimport type { RunInsightOptions } from '../insight-manager';\n\nexport const INSIGHT_CIRCULAR_DEPS_NAME = 'circular';\n\nexport default class FindCycles implements Insight {\n name = INSIGHT_CIRCULAR_DEPS_NAME;\n description = 'Get all circular dependencies in component graph';\n graphBuilder: GraphMain;\n constructor(graphBuilder: GraphMain) {\n this.graphBuilder = graphBuilder;\n }\n private async runInsight(opts?: RunInsightOptions): Promise<RawResult> {\n const graph = await this.graphBuilder.getGraphIds(opts?.ids);\n if (!graph) {\n return {\n message: '',\n data: undefined,\n };\n }\n const cycles = graph.findCycles(undefined, opts?.includeDeps);\n // add the first component to the end to make the circular visible in the output\n cycles.forEach((cycle) => cycle.push(cycle[0]));\n if (cycles.length === 1) {\n return {\n message: `Found ${cycles.length} cycle.`,\n data: cycles,\n };\n }\n return {\n message: `Found ${cycles.length} cycles.`,\n data: cycles,\n };\n }\n\n private renderData(data: RawResult) {\n if (data.data.length === 0) {\n return 'No cyclic dependencies';\n }\n const string = data.data\n .map((cycle) => {\n return `\\nCyclic dependency\n-----------------\n- ${cycle.join('\\n- ')}`;\n })\n .join('\\n');\n return string;\n }\n\n async run(opts?: RunInsightOptions): Promise<InsightResult> {\n const bareResult = await this.runInsight(opts);\n const renderedData = this.renderData(bareResult);\n const result: InsightResult = {\n metaData: {\n name: this.name,\n description: this.description,\n },\n data: bareResult.data,\n message: bareResult.message,\n renderedData,\n };\n\n if (bareResult.message) {\n result.message = bareResult.message;\n }\n return result;\n }\n\n async addAsComponentIssue(components: Component[]) {\n const result = await this.runInsight({ ids: components.map((c) => c.id) });\n if (!result.data.length) {\n return; // no circulars\n }\n const allIds = uniq(result.data.flat());\n const componentsWithCircular = components.filter((component) => allIds.includes(component.id.toString()));\n componentsWithCircular.forEach((component) => {\n component.state.issues.getOrCreate(IssuesClasses.CircularDependencies).data = true;\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_componentIssues","data","require","_lodash","_defineProperty","e","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","INSIGHT_CIRCULAR_DEPS_NAME","exports","FindCycles","constructor","graphBuilder","runInsight","opts","graph","getGraphIds","ids","message","undefined","cycles","findCycles","includeDeps","forEach","cycle","push","length","renderData","string","map","join","run","bareResult","renderedData","result","metaData","name","description","addAsComponentIssue","components","c","id","allIds","uniq","flat","componentsWithCircular","filter","component","includes","toString","state","issues","getOrCreate","IssuesClasses","CircularDependencies","default"],"sources":["find-circulars.ts"],"sourcesContent":["import type { Component } from '@teambit/component';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport type { GraphMain } from '@teambit/graph';\nimport { uniq } from 'lodash';\nimport type { Insight, InsightResult, RawResult } from '../insight';\nimport type { RunInsightOptions } from '../insight-manager';\n\nexport const INSIGHT_CIRCULAR_DEPS_NAME = 'circular';\n\nexport default class FindCycles implements Insight {\n name = INSIGHT_CIRCULAR_DEPS_NAME;\n description = 'Get all circular dependencies in component graph';\n graphBuilder: GraphMain;\n constructor(graphBuilder: GraphMain) {\n this.graphBuilder = graphBuilder;\n }\n private async runInsight(opts?: RunInsightOptions): Promise<RawResult> {\n const graph = await this.graphBuilder.getGraphIds(opts?.ids);\n if (!graph) {\n return {\n message: '',\n data: undefined,\n };\n }\n const cycles = graph.findCycles(undefined, opts?.includeDeps);\n // add the first component to the end to make the circular visible in the output\n cycles.forEach((cycle) => cycle.push(cycle[0]));\n if (cycles.length === 1) {\n return {\n message: `Found ${cycles.length} cycle.`,\n data: cycles,\n };\n }\n return {\n message: `Found ${cycles.length} cycles.`,\n data: cycles,\n };\n }\n\n private renderData(data: RawResult) {\n if (data.data.length === 0) {\n return 'No cyclic dependencies';\n }\n const string = data.data\n .map((cycle) => {\n return `\\nCyclic dependency (${cycle.length - 1} components)\n---------------------------------\n- ${cycle.join('\\n- ')}`;\n })\n .join('\\n');\n return string;\n }\n\n async run(opts?: RunInsightOptions): Promise<InsightResult> {\n const bareResult = await this.runInsight(opts);\n const renderedData = this.renderData(bareResult);\n const result: InsightResult = {\n metaData: {\n name: this.name,\n description: this.description,\n },\n data: bareResult.data,\n message: bareResult.message,\n renderedData,\n };\n\n if (bareResult.message) {\n result.message = bareResult.message;\n }\n return result;\n }\n\n async addAsComponentIssue(components: Component[]) {\n const result = await this.runInsight({ ids: components.map((c) => c.id) });\n if (!result.data.length) {\n return; // no circulars\n }\n const allIds = uniq(result.data.flat());\n const componentsWithCircular = components.filter((component) => allIds.includes(component.id.toString()));\n componentsWithCircular.forEach((component) => {\n component.state.issues.getOrCreate(IssuesClasses.CircularDependencies).data = true;\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  ;
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.explorer_insights@1.0.671/dist/insights.docs.mdx';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.explorer_insights@1.0.673/dist/insights.docs.mdx';
3
3
 
4
4
  export const compositions = [];
5
5
  export const overview = [overview_0];
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/insights",
3
- "version": "1.0.671",
3
+ "version": "1.0.673",
4
4
  "homepage": "https://bit.cloud/teambit/explorer/insights",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.explorer",
8
8
  "name": "insights",
9
- "version": "1.0.671"
9
+ "version": "1.0.673"
10
10
  },
11
11
  "dependencies": {
12
12
  "p-map-series": "2.1.0",
@@ -17,10 +17,10 @@
17
17
  "@teambit/harmony": "0.4.7",
18
18
  "@teambit/component-issues": "0.0.161",
19
19
  "@teambit/bit-error": "0.0.404",
20
- "@teambit/graph": "1.0.671",
21
- "@teambit/component": "1.0.671",
22
- "@teambit/cli": "0.0.1248",
23
- "@teambit/issues": "1.0.671"
20
+ "@teambit/graph": "1.0.673",
21
+ "@teambit/component": "1.0.673",
22
+ "@teambit/cli": "0.0.1250",
23
+ "@teambit/issues": "1.0.673"
24
24
  },
25
25
  "devDependencies": {
26
26
  "@types/semver": "7.5.8",