@teambit/linter 1.0.622 → 1.0.624

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/lint.cmd.js CHANGED
@@ -56,7 +56,7 @@ class LintCmd {
56
56
  description: _legacy().COMPONENT_PATTERN_HELP
57
57
  }]);
58
58
  _defineProperty(this, "helpUrl", 'reference/linting/linter-overview');
59
- _defineProperty(this, "group", 'development');
59
+ _defineProperty(this, "group", 'testing');
60
60
  _defineProperty(this, "options", [['c', 'changed', 'lint only new and modified components'], ['f', 'fix', 'automatically fix problems'], ['', 'fix-type <fixType>', 'specify the types of fixes to apply (problem, suggestion, layout)'], ['j', 'json', 'return the lint results in json format']]);
61
61
  }
62
62
  async report([pattern], linterOptions) {
@@ -1 +1 @@
1
- {"version":3,"names":["_toolboxTime","data","require","_legacy","_chalk","_interopRequireDefault","_lodash","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","LintCmd","constructor","linter","componentHost","workspace","name","description","COMPONENT_PATTERN_HELP","report","pattern","linterOptions","code","json","lintResults","componentsIdsToLint","title","chalk","bold","cyan","length","toString","groupedByIsClean","groupBy","results","res","isClean","undefined","totalErrorCount","totalFatalErrorCount","totalWarningCount","dirtyComponentsOutputs","false","map","lintRes","compTitle","componentId","ignoreVersion","compOutput","output","join","cleanComponentsCount","true","cleanComponentsOutput","green","summary","getSummarySection","finalOutput","compact","duration","seconds","summaryTitle","totalFieldsMap","itemsDataField","componentsDataField","label","summaryTotals","item","renderTotalLine","filter","Boolean","componentsCount","itemsCount","fieldLabel","timer","Timer","create","start","componentsIds","getIdsToLint","changed","componentsToLint","getMany","opts","fix","fixTypes","fixType","split","linterResults","lint","jsonLinterResults","toJsonLintResults","timerResponse","stop","comp","id","idsByPattern","getNewAndModifiedIds","listIds","exports","totalFixableErrorCount","totalFixableWarningCount","totalComponentsWithErrorCount","totalComponentsWithFatalErrorCount","totalComponentsWithFixableErrorCount","totalComponentsWithFixableWarningCount","totalComponentsWithWarningCount","newResults","resultsWithoutComponent","result","assign","component","omit","flatten","errors"],"sources":["lint.cmd.ts"],"sourcesContent":["import { TimerResponse, Timer } from '@teambit/toolbox.time.timer';\nimport { COMPONENT_PATTERN_HELP } from '@teambit/legacy.constants';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { ComponentFactory, ComponentID } from '@teambit/component';\nimport chalk from 'chalk';\nimport { EnvsExecutionResult } from '@teambit/envs';\nimport { Workspace } from '@teambit/workspace';\nimport { compact, flatten, groupBy, omit } from 'lodash';\nimport { LinterMain } from './linter.main.runtime';\nimport { ComponentLintResult, LintResults } from './linter';\nimport { FixTypes, LinterOptions } from './linter-context';\n\nexport type LintCmdOptions = {\n changed?: boolean;\n fix?: boolean;\n fixType?: string;\n json?: boolean;\n};\n\n/**\n * A type for result with componentId instead of the entire component, as when output to console, we don't want to print all the component\n */\nexport type JsonComponentLintResult = Omit<ComponentLintResult, 'component'> & {\n componentId: ComponentID;\n};\n\nexport type JsonLintDataResults = Omit<LintResults, 'results'> & { results: JsonComponentLintResult[] };\n/**\n * A type for result with componentId instead of the entire component, as when output to console, we don't want to print all the component\n */\nexport type JsonLintResultsData = {\n duration: TimerResponse;\n lintResults: JsonLintDataResults;\n componentsIdsToLint: string[];\n};\n\nexport type JsonLintResults = {\n code: number;\n data: JsonLintResultsData;\n};\n\nexport class LintCmd implements Command {\n name = 'lint [component-pattern]';\n description = 'lint components in the development workspace';\n arguments = [{ name: 'component-pattern', description: COMPONENT_PATTERN_HELP }];\n helpUrl = 'reference/linting/linter-overview';\n group = 'development';\n options = [\n ['c', 'changed', 'lint only new and modified components'],\n ['f', 'fix', 'automatically fix problems'],\n ['', 'fix-type <fixType>', 'specify the types of fixes to apply (problem, suggestion, layout)'],\n ['j', 'json', 'return the lint results in json format'],\n ] as CommandOptions;\n\n constructor(\n private linter: LinterMain,\n private componentHost: ComponentFactory,\n private workspace: Workspace\n ) {}\n\n async report([pattern]: [string], linterOptions: LintCmdOptions) {\n const { code, data } = await this.json([pattern], linterOptions);\n const { lintResults, componentsIdsToLint } = data;\n const title = chalk.bold(\n `linting total of ${chalk.cyan(componentsIdsToLint.length.toString())} component(s) in workspace '${chalk.cyan(\n this.componentHost.name\n )}'`\n );\n\n const groupedByIsClean = groupBy(lintResults.results, (res) => {\n if (res.isClean !== undefined) {\n return res.isClean;\n }\n // The is clean field was added in a later version of the linter, so if it's not there, we will calculate it\n // based on the errors/warnings count\n return res.totalErrorCount + (res.totalFatalErrorCount || 0) + res.totalWarningCount === 0;\n });\n\n const dirtyComponentsOutputs = (groupedByIsClean.false || [])\n .map((lintRes) => {\n const compTitle = chalk.bold.cyan(lintRes.componentId.toString({ ignoreVersion: true }));\n const compOutput = lintRes.output;\n return `${compTitle}\\n${compOutput}`;\n })\n .join('\\n');\n\n const cleanComponentsCount = groupedByIsClean.true?.length || 0;\n const cleanComponentsOutput = cleanComponentsCount\n ? `total of ${chalk.green(cleanComponentsCount.toString())} component(s) has no linting issues`\n : '';\n\n const summary = this.getSummarySection(data);\n const finalOutput = compact([title, dirtyComponentsOutputs, cleanComponentsOutput, summary]).join('\\n\\n');\n return { code, data: finalOutput };\n }\n\n private getSummarySection(data: JsonLintResultsData) {\n const { duration, lintResults, componentsIdsToLint } = data;\n const { seconds } = duration;\n const summaryTitle = `linted ${chalk.cyan(componentsIdsToLint.length.toString())} components in ${chalk.cyan(\n seconds.toString()\n )} seconds`;\n\n const totalFieldsMap = [\n { itemsDataField: 'totalErrorCount', componentsDataField: 'totalComponentsWithErrorCount', label: 'Errors' },\n {\n itemsDataField: 'totalFatalErrorCount',\n componentsDataField: 'totalComponentsWithFatalErrorCount',\n label: 'FatalErrors',\n },\n {\n itemsDataField: 'totalFixableErrorCount',\n componentsDataField: 'totalComponentsWithFixableErrorCount',\n label: 'FixableErrors',\n },\n {\n itemsDataField: 'totalFixableWarningCount',\n componentsDataField: 'totalComponentsWithFixableWarningCount',\n label: 'FixableWarnings',\n },\n {\n itemsDataField: 'totalWarningCount',\n componentsDataField: 'totalComponentsWithWarningCount',\n label: 'Warnings',\n },\n ];\n\n const summaryTotals = totalFieldsMap\n .map((item) =>\n this.renderTotalLine(lintResults[item.componentsDataField], lintResults[item.itemsDataField], item.label)\n )\n .filter(Boolean)\n .join('\\n');\n const summary = `${summaryTitle}\\n${summaryTotals}`;\n return summary;\n }\n\n private renderTotalLine(componentsCount: number, itemsCount: number, fieldLabel: string): string | undefined {\n if (itemsCount === 0) return undefined;\n return `total of ${chalk.green(itemsCount.toString())} ${chalk.cyan(fieldLabel)} (from ${chalk.green(\n componentsCount.toString()\n )} components)`;\n }\n\n async json([pattern]: [string], linterOptions: LintCmdOptions): Promise<JsonLintResults> {\n const timer = Timer.create();\n timer.start();\n const componentsIds = await this.getIdsToLint(pattern, linterOptions.changed);\n const componentsToLint = await this.workspace.getMany(componentsIds);\n const opts: LinterOptions = {\n fix: linterOptions.fix,\n fixTypes: linterOptions.fixType ? (linterOptions.fixType.split(',') as FixTypes) : undefined,\n };\n const linterResults = await this.linter.lint(componentsToLint, opts);\n const jsonLinterResults = toJsonLintResults(linterResults);\n const timerResponse = timer.stop();\n let code = 0;\n if (jsonLinterResults.totalErrorCount || jsonLinterResults.totalFatalErrorCount) {\n code = 1;\n }\n return {\n code,\n data: {\n duration: timerResponse,\n lintResults: jsonLinterResults,\n componentsIdsToLint: componentsToLint.map((comp) => comp.id.toString()),\n },\n };\n }\n\n private async getIdsToLint(pattern: string, changed = false): Promise<ComponentID[]> {\n if (pattern) {\n return this.workspace.idsByPattern(pattern);\n }\n if (changed) {\n return this.workspace.getNewAndModifiedIds();\n }\n return this.componentHost.listIds();\n }\n}\n\nfunction toJsonLintResults(results: EnvsExecutionResult<LintResults>): JsonLintDataResults {\n let totalErrorCount = 0;\n let totalFatalErrorCount = 0;\n let totalFixableErrorCount = 0;\n let totalFixableWarningCount = 0;\n let totalWarningCount = 0;\n let totalComponentsWithErrorCount = 0;\n let totalComponentsWithFatalErrorCount = 0;\n let totalComponentsWithFixableErrorCount = 0;\n let totalComponentsWithFixableWarningCount = 0;\n let totalComponentsWithWarningCount = 0;\n\n const newResults = results.results.map((res) => {\n const resultsWithoutComponent = res.data?.results.map((result) => {\n return Object.assign({}, { componentId: result.component.id }, omit(result, ['component']));\n });\n\n if (res.data) {\n if (res.data.totalErrorCount) {\n totalErrorCount += res.data.totalErrorCount;\n totalComponentsWithErrorCount += res.data.totalComponentsWithErrorCount ?? 0;\n }\n if (res.data.totalFatalErrorCount) {\n totalFatalErrorCount += res.data.totalFatalErrorCount;\n totalComponentsWithFatalErrorCount += res.data.totalComponentsWithFatalErrorCount ?? 0;\n }\n if (res.data.totalFixableErrorCount) {\n totalFixableErrorCount += res.data.totalFixableErrorCount;\n totalComponentsWithFixableErrorCount += res.data.totalComponentsWithFixableErrorCount ?? 0;\n }\n if (res.data.totalFixableWarningCount) {\n totalFixableWarningCount += res.data.totalFixableWarningCount;\n totalComponentsWithFixableWarningCount += res.data.totalComponentsWithFixableWarningCount ?? 0;\n }\n if (res.data.totalWarningCount) {\n totalWarningCount += res.data.totalWarningCount;\n totalComponentsWithWarningCount += res.data.totalComponentsWithWarningCount ?? 0;\n }\n }\n\n return compact(resultsWithoutComponent);\n });\n\n const isClean =\n totalComponentsWithErrorCount === 0 &&\n totalComponentsWithWarningCount === 0 &&\n totalComponentsWithFatalErrorCount === 0;\n\n return {\n results: compact(flatten(newResults)),\n totalErrorCount,\n totalFatalErrorCount,\n totalFixableErrorCount,\n totalFixableWarningCount,\n totalWarningCount,\n totalComponentsWithErrorCount,\n totalComponentsWithFatalErrorCount,\n totalComponentsWithFixableErrorCount,\n totalComponentsWithFixableWarningCount,\n totalComponentsWithWarningCount,\n isClean,\n errors: results?.errors,\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_toolboxTime","data","require","_legacy","_chalk","_interopRequireDefault","_lodash","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","LintCmd","constructor","linter","componentHost","workspace","name","description","COMPONENT_PATTERN_HELP","report","pattern","linterOptions","code","json","lintResults","componentsIdsToLint","title","chalk","bold","cyan","length","toString","groupedByIsClean","groupBy","results","res","isClean","undefined","totalErrorCount","totalFatalErrorCount","totalWarningCount","dirtyComponentsOutputs","false","map","lintRes","compTitle","componentId","ignoreVersion","compOutput","output","join","cleanComponentsCount","true","cleanComponentsOutput","green","summary","getSummarySection","finalOutput","compact","duration","seconds","summaryTitle","totalFieldsMap","itemsDataField","componentsDataField","label","summaryTotals","item","renderTotalLine","filter","Boolean","componentsCount","itemsCount","fieldLabel","timer","Timer","create","start","componentsIds","getIdsToLint","changed","componentsToLint","getMany","opts","fix","fixTypes","fixType","split","linterResults","lint","jsonLinterResults","toJsonLintResults","timerResponse","stop","comp","id","idsByPattern","getNewAndModifiedIds","listIds","exports","totalFixableErrorCount","totalFixableWarningCount","totalComponentsWithErrorCount","totalComponentsWithFatalErrorCount","totalComponentsWithFixableErrorCount","totalComponentsWithFixableWarningCount","totalComponentsWithWarningCount","newResults","resultsWithoutComponent","result","assign","component","omit","flatten","errors"],"sources":["lint.cmd.ts"],"sourcesContent":["import { TimerResponse, Timer } from '@teambit/toolbox.time.timer';\nimport { COMPONENT_PATTERN_HELP } from '@teambit/legacy.constants';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { ComponentFactory, ComponentID } from '@teambit/component';\nimport chalk from 'chalk';\nimport { EnvsExecutionResult } from '@teambit/envs';\nimport { Workspace } from '@teambit/workspace';\nimport { compact, flatten, groupBy, omit } from 'lodash';\nimport { LinterMain } from './linter.main.runtime';\nimport { ComponentLintResult, LintResults } from './linter';\nimport { FixTypes, LinterOptions } from './linter-context';\n\nexport type LintCmdOptions = {\n changed?: boolean;\n fix?: boolean;\n fixType?: string;\n json?: boolean;\n};\n\n/**\n * A type for result with componentId instead of the entire component, as when output to console, we don't want to print all the component\n */\nexport type JsonComponentLintResult = Omit<ComponentLintResult, 'component'> & {\n componentId: ComponentID;\n};\n\nexport type JsonLintDataResults = Omit<LintResults, 'results'> & { results: JsonComponentLintResult[] };\n/**\n * A type for result with componentId instead of the entire component, as when output to console, we don't want to print all the component\n */\nexport type JsonLintResultsData = {\n duration: TimerResponse;\n lintResults: JsonLintDataResults;\n componentsIdsToLint: string[];\n};\n\nexport type JsonLintResults = {\n code: number;\n data: JsonLintResultsData;\n};\n\nexport class LintCmd implements Command {\n name = 'lint [component-pattern]';\n description = 'lint components in the development workspace';\n arguments = [{ name: 'component-pattern', description: COMPONENT_PATTERN_HELP }];\n helpUrl = 'reference/linting/linter-overview';\n group = 'testing';\n options = [\n ['c', 'changed', 'lint only new and modified components'],\n ['f', 'fix', 'automatically fix problems'],\n ['', 'fix-type <fixType>', 'specify the types of fixes to apply (problem, suggestion, layout)'],\n ['j', 'json', 'return the lint results in json format'],\n ] as CommandOptions;\n\n constructor(\n private linter: LinterMain,\n private componentHost: ComponentFactory,\n private workspace: Workspace\n ) {}\n\n async report([pattern]: [string], linterOptions: LintCmdOptions) {\n const { code, data } = await this.json([pattern], linterOptions);\n const { lintResults, componentsIdsToLint } = data;\n const title = chalk.bold(\n `linting total of ${chalk.cyan(componentsIdsToLint.length.toString())} component(s) in workspace '${chalk.cyan(\n this.componentHost.name\n )}'`\n );\n\n const groupedByIsClean = groupBy(lintResults.results, (res) => {\n if (res.isClean !== undefined) {\n return res.isClean;\n }\n // The is clean field was added in a later version of the linter, so if it's not there, we will calculate it\n // based on the errors/warnings count\n return res.totalErrorCount + (res.totalFatalErrorCount || 0) + res.totalWarningCount === 0;\n });\n\n const dirtyComponentsOutputs = (groupedByIsClean.false || [])\n .map((lintRes) => {\n const compTitle = chalk.bold.cyan(lintRes.componentId.toString({ ignoreVersion: true }));\n const compOutput = lintRes.output;\n return `${compTitle}\\n${compOutput}`;\n })\n .join('\\n');\n\n const cleanComponentsCount = groupedByIsClean.true?.length || 0;\n const cleanComponentsOutput = cleanComponentsCount\n ? `total of ${chalk.green(cleanComponentsCount.toString())} component(s) has no linting issues`\n : '';\n\n const summary = this.getSummarySection(data);\n const finalOutput = compact([title, dirtyComponentsOutputs, cleanComponentsOutput, summary]).join('\\n\\n');\n return { code, data: finalOutput };\n }\n\n private getSummarySection(data: JsonLintResultsData) {\n const { duration, lintResults, componentsIdsToLint } = data;\n const { seconds } = duration;\n const summaryTitle = `linted ${chalk.cyan(componentsIdsToLint.length.toString())} components in ${chalk.cyan(\n seconds.toString()\n )} seconds`;\n\n const totalFieldsMap = [\n { itemsDataField: 'totalErrorCount', componentsDataField: 'totalComponentsWithErrorCount', label: 'Errors' },\n {\n itemsDataField: 'totalFatalErrorCount',\n componentsDataField: 'totalComponentsWithFatalErrorCount',\n label: 'FatalErrors',\n },\n {\n itemsDataField: 'totalFixableErrorCount',\n componentsDataField: 'totalComponentsWithFixableErrorCount',\n label: 'FixableErrors',\n },\n {\n itemsDataField: 'totalFixableWarningCount',\n componentsDataField: 'totalComponentsWithFixableWarningCount',\n label: 'FixableWarnings',\n },\n {\n itemsDataField: 'totalWarningCount',\n componentsDataField: 'totalComponentsWithWarningCount',\n label: 'Warnings',\n },\n ];\n\n const summaryTotals = totalFieldsMap\n .map((item) =>\n this.renderTotalLine(lintResults[item.componentsDataField], lintResults[item.itemsDataField], item.label)\n )\n .filter(Boolean)\n .join('\\n');\n const summary = `${summaryTitle}\\n${summaryTotals}`;\n return summary;\n }\n\n private renderTotalLine(componentsCount: number, itemsCount: number, fieldLabel: string): string | undefined {\n if (itemsCount === 0) return undefined;\n return `total of ${chalk.green(itemsCount.toString())} ${chalk.cyan(fieldLabel)} (from ${chalk.green(\n componentsCount.toString()\n )} components)`;\n }\n\n async json([pattern]: [string], linterOptions: LintCmdOptions): Promise<JsonLintResults> {\n const timer = Timer.create();\n timer.start();\n const componentsIds = await this.getIdsToLint(pattern, linterOptions.changed);\n const componentsToLint = await this.workspace.getMany(componentsIds);\n const opts: LinterOptions = {\n fix: linterOptions.fix,\n fixTypes: linterOptions.fixType ? (linterOptions.fixType.split(',') as FixTypes) : undefined,\n };\n const linterResults = await this.linter.lint(componentsToLint, opts);\n const jsonLinterResults = toJsonLintResults(linterResults);\n const timerResponse = timer.stop();\n let code = 0;\n if (jsonLinterResults.totalErrorCount || jsonLinterResults.totalFatalErrorCount) {\n code = 1;\n }\n return {\n code,\n data: {\n duration: timerResponse,\n lintResults: jsonLinterResults,\n componentsIdsToLint: componentsToLint.map((comp) => comp.id.toString()),\n },\n };\n }\n\n private async getIdsToLint(pattern: string, changed = false): Promise<ComponentID[]> {\n if (pattern) {\n return this.workspace.idsByPattern(pattern);\n }\n if (changed) {\n return this.workspace.getNewAndModifiedIds();\n }\n return this.componentHost.listIds();\n }\n}\n\nfunction toJsonLintResults(results: EnvsExecutionResult<LintResults>): JsonLintDataResults {\n let totalErrorCount = 0;\n let totalFatalErrorCount = 0;\n let totalFixableErrorCount = 0;\n let totalFixableWarningCount = 0;\n let totalWarningCount = 0;\n let totalComponentsWithErrorCount = 0;\n let totalComponentsWithFatalErrorCount = 0;\n let totalComponentsWithFixableErrorCount = 0;\n let totalComponentsWithFixableWarningCount = 0;\n let totalComponentsWithWarningCount = 0;\n\n const newResults = results.results.map((res) => {\n const resultsWithoutComponent = res.data?.results.map((result) => {\n return Object.assign({}, { componentId: result.component.id }, omit(result, ['component']));\n });\n\n if (res.data) {\n if (res.data.totalErrorCount) {\n totalErrorCount += res.data.totalErrorCount;\n totalComponentsWithErrorCount += res.data.totalComponentsWithErrorCount ?? 0;\n }\n if (res.data.totalFatalErrorCount) {\n totalFatalErrorCount += res.data.totalFatalErrorCount;\n totalComponentsWithFatalErrorCount += res.data.totalComponentsWithFatalErrorCount ?? 0;\n }\n if (res.data.totalFixableErrorCount) {\n totalFixableErrorCount += res.data.totalFixableErrorCount;\n totalComponentsWithFixableErrorCount += res.data.totalComponentsWithFixableErrorCount ?? 0;\n }\n if (res.data.totalFixableWarningCount) {\n totalFixableWarningCount += res.data.totalFixableWarningCount;\n totalComponentsWithFixableWarningCount += res.data.totalComponentsWithFixableWarningCount ?? 0;\n }\n if (res.data.totalWarningCount) {\n totalWarningCount += res.data.totalWarningCount;\n totalComponentsWithWarningCount += res.data.totalComponentsWithWarningCount ?? 0;\n }\n }\n\n return compact(resultsWithoutComponent);\n });\n\n const isClean =\n totalComponentsWithErrorCount === 0 &&\n totalComponentsWithWarningCount === 0 &&\n totalComponentsWithFatalErrorCount === 0;\n\n return {\n results: compact(flatten(newResults)),\n totalErrorCount,\n totalFatalErrorCount,\n totalFixableErrorCount,\n totalFixableWarningCount,\n totalWarningCount,\n totalComponentsWithErrorCount,\n totalComponentsWithFatalErrorCount,\n totalComponentsWithFixableErrorCount,\n totalComponentsWithFixableWarningCount,\n totalComponentsWithWarningCount,\n isClean,\n errors: results?.errors,\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.defender_linter@1.0.622/dist/linter.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.defender_linter@1.0.622/dist/linter.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.defender_linter@1.0.624/dist/linter.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.defender_linter@1.0.624/dist/linter.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/linter",
3
- "version": "1.0.622",
3
+ "version": "1.0.624",
4
4
  "homepage": "https://bit.cloud/teambit/defender/linter",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.defender",
8
8
  "name": "linter",
9
- "version": "1.0.622"
9
+ "version": "1.0.624"
10
10
  },
11
11
  "dependencies": {
12
12
  "chalk": "4.1.2",
@@ -14,15 +14,15 @@
14
14
  "graphql-tag": "2.12.1",
15
15
  "cli-highlight": "2.1.9",
16
16
  "@teambit/harmony": "0.4.7",
17
- "@teambit/cli": "0.0.1199",
18
- "@teambit/component": "1.0.622",
19
- "@teambit/envs": "1.0.622",
17
+ "@teambit/cli": "0.0.1201",
18
+ "@teambit/component": "1.0.624",
19
+ "@teambit/envs": "1.0.624",
20
20
  "@teambit/legacy.constants": "0.0.11",
21
21
  "@teambit/toolbox.time.timer": "0.0.5",
22
- "@teambit/workspace": "1.0.622",
23
- "@teambit/builder": "1.0.622",
24
- "@teambit/isolator": "1.0.622",
25
- "@teambit/logger": "0.0.1292"
22
+ "@teambit/workspace": "1.0.624",
23
+ "@teambit/builder": "1.0.624",
24
+ "@teambit/isolator": "1.0.624",
25
+ "@teambit/logger": "0.0.1294"
26
26
  },
27
27
  "devDependencies": {
28
28
  "@types/lodash": "4.14.165",