@bundle-stats/utils 4.3.0-beta.1 → 4.3.0-beta.3

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.
Files changed (58) hide show
  1. package/lib/config/index.js +1 -10
  2. package/lib/config/index.js.map +1 -1
  3. package/lib/constants.js +21 -1
  4. package/lib/constants.js.map +1 -1
  5. package/lib/jobs/create-job.js +2 -2
  6. package/lib/jobs/create-job.js.map +1 -1
  7. package/lib/report/create.js +2 -2
  8. package/lib/report/create.js.map +1 -1
  9. package/lib/utils/component-links.js +15 -3
  10. package/lib/utils/component-links.js.map +1 -1
  11. package/lib/webpack/extract/assets-size-total-insight.js +2 -2
  12. package/lib/webpack/extract/assets-size-total-insight.js.map +1 -1
  13. package/lib/webpack/extract/index.js +2 -0
  14. package/lib/webpack/extract/index.js.map +1 -1
  15. package/lib/webpack/extract/modules-packages-duplicate.js +95 -9
  16. package/lib/webpack/extract/modules-packages-duplicate.js.map +1 -1
  17. package/lib/webpack/extract/modules-packages-new-insight.js +57 -0
  18. package/lib/webpack/extract/modules-packages-new-insight.js.map +1 -0
  19. package/lib-esm/config/index.js +0 -9
  20. package/lib-esm/config/index.js.map +1 -1
  21. package/lib-esm/constants.js +20 -0
  22. package/lib-esm/constants.js.map +1 -1
  23. package/lib-esm/jobs/create-job.js +2 -2
  24. package/lib-esm/jobs/create-job.js.map +1 -1
  25. package/lib-esm/report/create.js +2 -2
  26. package/lib-esm/report/create.js.map +1 -1
  27. package/lib-esm/utils/component-links.js +14 -2
  28. package/lib-esm/utils/component-links.js.map +1 -1
  29. package/lib-esm/webpack/extract/assets-size-total-insight.js +1 -1
  30. package/lib-esm/webpack/extract/assets-size-total-insight.js.map +1 -1
  31. package/lib-esm/webpack/extract/index.js +2 -0
  32. package/lib-esm/webpack/extract/index.js.map +1 -1
  33. package/lib-esm/webpack/extract/modules-packages-duplicate.js +95 -8
  34. package/lib-esm/webpack/extract/modules-packages-duplicate.js.map +1 -1
  35. package/lib-esm/webpack/extract/modules-packages-new-insight.js +54 -0
  36. package/lib-esm/webpack/extract/modules-packages-new-insight.js.map +1 -0
  37. package/package.json +10 -10
  38. package/src/config/index.js +0 -10
  39. package/src/constants.ts +63 -12
  40. package/src/jobs/create-job.ts +2 -3
  41. package/src/report/create.ts +2 -3
  42. package/src/utils/component-links.ts +15 -2
  43. package/src/webpack/extract/assets-size-total-insight.js +1 -1
  44. package/src/webpack/extract/index.js +2 -0
  45. package/src/webpack/extract/modules-packages-duplicate.ts +148 -12
  46. package/src/webpack/extract/modules-packages-new-insight.ts +80 -0
  47. package/types/config/index.d.ts +0 -5
  48. package/types/constants.d.ts +55 -12
  49. package/types/utils/component-links.d.ts +2 -1
  50. package/types/webpack/extract/assets-size-total-insight.d.ts +2 -2
  51. package/types/webpack/extract/modules-packages-duplicate.d.ts +9 -17
  52. package/types/webpack/extract/modules-packages-new-insight.d.ts +8 -0
  53. package/lib/config/insights.js +0 -10
  54. package/lib/config/insights.js.map +0 -1
  55. package/lib-esm/config/insights.js +0 -7
  56. package/lib-esm/config/insights.js.map +0 -1
  57. package/src/config/insights.ts +0 -5
  58. package/types/config/insights.d.ts +0 -5
@@ -2,7 +2,15 @@ import map from 'lodash/map';
2
2
  import orderBy from 'lodash/orderBy';
3
3
  import sum from 'lodash/sum';
4
4
 
5
- import { InsightType } from '../../config';
5
+ import {
6
+ InsightType,
7
+ Job,
8
+ JobInsight,
9
+ JobInsightDuplicatePackagesData,
10
+ JobInsightDuplicatePackagesV3Data,
11
+ JobInsights,
12
+ MetricRun,
13
+ } from '../../constants';
6
14
  import { Packages } from '../types';
7
15
 
8
16
  interface DuplicatePackage {
@@ -16,7 +24,116 @@ interface DuplicatePackageGroup {
16
24
  children: Array<DuplicatePackage>;
17
25
  }
18
26
 
19
- export const extractModulesPackagesDuplicate = (_: any, currentExtractedData: any) => {
27
+ interface ModulesPackagesDuplicateData {
28
+ insights: {
29
+ duplicatePackages?: JobInsights['webpack']['duplicatePackages'];
30
+ duplicatePackagesV3: JobInsights['webpack']['duplicatePackagesV3'];
31
+ };
32
+ metrics: {
33
+ duplicatePackagesCount: MetricRun;
34
+ };
35
+ }
36
+
37
+ export const getDuplicatePackagesInsight = (
38
+ duplicatePackagesMap: Record<string, Array<string>>,
39
+ baselineDuplicatePackagesMap?: Record<string, Array<string>>,
40
+ ): JobInsight<JobInsightDuplicatePackagesV3Data> => {
41
+ const duplicateInstances: Array<string> = [];
42
+ const baselineDuplicateInstances: Array<string> = [];
43
+ const newDuplicateInstances: Array<string> = [];
44
+ const removedDuplicateInstances: Array<string> = [];
45
+
46
+ Object.entries(duplicatePackagesMap).forEach(([id, instances]) => {
47
+ instances.forEach((duplicateInstance) => {
48
+ if (duplicateInstance === id) {
49
+ return;
50
+ }
51
+
52
+ duplicateInstances.push(duplicateInstance);
53
+
54
+ if (baselineDuplicatePackagesMap?.[id]?.includes(duplicateInstance)) {
55
+ return;
56
+ }
57
+
58
+ newDuplicateInstances.push(duplicateInstance);
59
+ });
60
+ });
61
+
62
+ if (baselineDuplicatePackagesMap) {
63
+ Object.entries(baselineDuplicatePackagesMap).forEach(([id, instances]) => {
64
+ instances.forEach((duplicateInstance) => {
65
+ if (duplicateInstance === id) {
66
+ return;
67
+ }
68
+
69
+ baselineDuplicateInstances.push(duplicateInstance);
70
+
71
+ if (duplicatePackagesMap?.[id]?.includes(duplicateInstance)) {
72
+ return;
73
+ }
74
+
75
+ removedDuplicateInstances.push(duplicateInstance);
76
+ });
77
+ });
78
+ }
79
+
80
+ const duplicateInstancesCount = duplicateInstances.length;
81
+ const newDuplicateInstancesCount = newDuplicateInstances.length;
82
+ const removedDuplicateInstancesCount = removedDuplicateInstances.length;
83
+
84
+ let text: string;
85
+ let insightType: InsightType;
86
+
87
+ if (newDuplicateInstancesCount > 0 && removedDuplicateInstancesCount > 0) {
88
+ // New duplicate packages and removed duplicates
89
+ const item =
90
+ newDuplicateInstancesCount > 1 || removedDuplicateInstancesCount > 1 ? 'packages' : 'package';
91
+ text = `Bundle introduced ${newDuplicateInstancesCount} and removed ${removedDuplicateInstancesCount} duplicate ${item}`;
92
+ insightType = InsightType.ERROR;
93
+ } else if (newDuplicateInstancesCount > 0 && baselineDuplicatePackagesMap) {
94
+ // New duplicate packages and baseline comparison
95
+ const item = newDuplicateInstancesCount > 1 ? 'packages' : 'package';
96
+ text = `Bundle introduced ${newDuplicateInstancesCount} duplicate ${item}`;
97
+ insightType = InsightType.ERROR;
98
+ } else if (newDuplicateInstancesCount > 0) {
99
+ // New duplicate packages and no baseline
100
+ const item = newDuplicateInstancesCount > 1 ? 'packages' : 'package';
101
+ text = `Bundle contains ${newDuplicateInstancesCount} duplicate ${item}`;
102
+ insightType = InsightType.WARNING;
103
+ } else if (removedDuplicateInstancesCount > 0) {
104
+ // Removed duplicate packages
105
+ const item = removedDuplicateInstancesCount > 1 ? 'packages' : 'package';
106
+ text = `Bundle removed ${removedDuplicateInstancesCount} duplicate ${item}`;
107
+ insightType = InsightType.INFO;
108
+ } else if (
109
+ newDuplicateInstancesCount === 0 &&
110
+ removedDuplicateInstancesCount === 0 &&
111
+ duplicateInstancesCount > 0
112
+ ) {
113
+ // No change comparred with the baseline
114
+ const item = duplicateInstancesCount > 1 ? 'packages' : 'package';
115
+ text = `Bundle contains ${duplicateInstancesCount} duplicate ${item}`;
116
+ insightType = InsightType.WARNING;
117
+ } else {
118
+ // No change
119
+ text = 'Bundle does not contain duplicate packages';
120
+ insightType = InsightType.INFO;
121
+ }
122
+
123
+ return {
124
+ type: insightType,
125
+ data: {
126
+ text,
127
+ packages: duplicatePackagesMap,
128
+ },
129
+ };
130
+ };
131
+
132
+ export const extractModulesPackagesDuplicate = (
133
+ _: any,
134
+ currentExtractedData: any,
135
+ baselineJob?: Job,
136
+ ): ModulesPackagesDuplicateData => {
20
137
  const source: Packages = currentExtractedData?.metrics?.packages || {};
21
138
 
22
139
  // Group packages by name(uniq)
@@ -58,8 +175,16 @@ export const extractModulesPackagesDuplicate = (_: any, currentExtractedData: an
58
175
  });
59
176
  });
60
177
 
178
+ const baselineDuplicatePackages =
179
+ baselineJob?.insights?.webpack?.duplicatePackagesV3?.data?.packages ||
180
+ baselineJob?.insights?.webpack?.duplicatePackages?.data ||
181
+ {};
182
+
61
183
  if (!count) {
62
184
  return {
185
+ insights: {
186
+ duplicatePackagesV3: getDuplicatePackagesInsight({}, baselineDuplicatePackages),
187
+ },
63
188
  metrics: {
64
189
  duplicatePackagesCount: {
65
190
  value: count,
@@ -68,7 +193,12 @@ export const extractModulesPackagesDuplicate = (_: any, currentExtractedData: an
68
193
  };
69
194
  }
70
195
 
71
- const duplicatePackagesByName = orderBy(duplicatePackages, 'value', 'desc').reduce(
196
+ // Group duplicate packages by name and order children by value
197
+ const duplicatePackagesByName: Record<string, DuplicatePackageGroup> = orderBy(
198
+ duplicatePackages,
199
+ 'value',
200
+ 'desc',
201
+ ).reduce(
72
202
  (agg, { name, ...duplicatePackageData }: DuplicatePackageGroup) => ({
73
203
  ...agg,
74
204
  [name]: {
@@ -80,21 +210,27 @@ export const extractModulesPackagesDuplicate = (_: any, currentExtractedData: an
80
210
  );
81
211
 
82
212
  // Generate v2 data structure
83
- // @TODO remove in v4.0
84
- const data = Object.entries(duplicatePackagesByName).reduce(
85
- (agg, [packageName, duplicatePackageData]) => ({
86
- ...agg,
87
- [packageName]: (duplicatePackageData as DuplicatePackageGroup).children.map(({ id }) => id),
88
- }),
89
- {},
90
- );
213
+ // @TODO remove in v5.0
214
+ const duplicatePackagesData: JobInsightDuplicatePackagesData = {};
215
+
216
+ Object.entries(duplicatePackagesByName).forEach(([packageName, packageData]) => {
217
+ if (!duplicatePackagesData[packageName]) {
218
+ duplicatePackagesData[packageName] = [];
219
+ }
220
+
221
+ duplicatePackagesData[packageName] = packageData.children.map(({ id }) => id);
222
+ });
91
223
 
92
224
  return {
93
225
  insights: {
94
226
  duplicatePackages: {
95
227
  type: InsightType.WARNING,
96
- data,
228
+ data: duplicatePackagesData,
97
229
  },
230
+ duplicatePackagesV3: getDuplicatePackagesInsight(
231
+ duplicatePackagesData,
232
+ baselineDuplicatePackages,
233
+ ),
98
234
  },
99
235
  metrics: {
100
236
  duplicatePackagesCount: {
@@ -0,0 +1,80 @@
1
+ import { InsightType, Job, JobInsights } from '../../constants';
2
+ import { Packages } from '../types';
3
+
4
+ interface ModulesPackagesNewData {
5
+ insights?: {
6
+ newPackages: JobInsights['webpack']['newPackages'];
7
+ };
8
+ }
9
+
10
+ const getPackageNames = (packages: Packages): Set<string> => {
11
+ const result: Set<string> = new Set();
12
+
13
+ Object.values(packages).forEach((metricPackage) => {
14
+ result.add(metricPackage.name);
15
+ });
16
+
17
+ return result;
18
+ };
19
+
20
+ const getText = (newPackages: Array<string>) => {
21
+ if (newPackages.length === 1) {
22
+ return `Bundle introduced one new package: ${newPackages[0]}`;
23
+ }
24
+
25
+ const firstNewPackages = newPackages.slice(0, 3);
26
+ const otherPackages = newPackages.slice(3);
27
+
28
+ const text = `Bundle introduced ${newPackages.length} new packages: ${firstNewPackages.join(', ')}`;
29
+
30
+ if (otherPackages.length === 0) {
31
+ return text;
32
+ }
33
+
34
+ if (otherPackages.length === 1) {
35
+ return `${text} and one more`;
36
+ }
37
+
38
+ return `${text} and ${otherPackages.length} more`;
39
+ };
40
+
41
+ export const extractModulesPackagesNewInsight = (
42
+ _: any,
43
+ currentExtractedData: any,
44
+ baselineJob?: Job,
45
+ ): ModulesPackagesNewData | null => {
46
+ const currentMetricPackages = currentExtractedData?.metrics?.packages as Packages;
47
+ const baselineMetricPackages = baselineJob?.metrics?.webpack?.packages as Packages;
48
+
49
+ // Skip insight when the baseline data is missing
50
+ if (!baselineMetricPackages) {
51
+ return null;
52
+ }
53
+
54
+ const currentPackages = getPackageNames(currentMetricPackages);
55
+ const baselinePackages = getPackageNames(baselineMetricPackages);
56
+
57
+ const newPackages: Array<string> = [];
58
+
59
+ currentPackages.forEach((packageName) => {
60
+ if (!baselinePackages.has(packageName)) {
61
+ newPackages.push(packageName);
62
+ }
63
+ });
64
+
65
+ if (newPackages.length === 0) {
66
+ return null;
67
+ }
68
+
69
+ return {
70
+ insights: {
71
+ newPackages: {
72
+ type: InsightType.WARNING,
73
+ data: {
74
+ text: getText(newPackages),
75
+ packages: newPackages,
76
+ },
77
+ },
78
+ },
79
+ };
80
+ };
@@ -1,11 +1,6 @@
1
1
  export * from "./component-links";
2
2
  export * from "./file-types";
3
- export * from "./insights";
4
3
  export * from "./metrics";
5
4
  export * from "./delta";
6
5
  export const PACKAGES_SEPARATOR: ":";
7
6
  export const PACKAGE_ID_SEPARATOR: "~";
8
- export const SOURCE_PATH_WEBPACK_STATS: "webpack";
9
- export const SOURCE_PATH_LIGHTHOUSE: "lighthouse";
10
- export const SOURCE_PATH_BROWSERTIME: "browsertime";
11
- export const SOURCE_PATHS: string[];
@@ -1,10 +1,20 @@
1
+ export declare enum Source {
2
+ webpack = "webpack",
3
+ lighthouse = "lighthouse",
4
+ browsertime = "browsertime"
5
+ }
1
6
  export type SourceData = Record<string, unknown>;
7
+ export declare enum InsightType {
8
+ ERROR = "error",
9
+ INFO = "info",
10
+ WARNING = "warning"
11
+ }
2
12
  export declare enum MetricTypeType {
3
- 'METRIC_TYPE_NUMERIC' = "METRIC_TYPE_NUMERIC",
4
- 'METRIC_TYPE_SCORE' = "METRIC_TYPE_SCORE",
5
- 'METRIC_TYPE_FILE_SIZE' = "METRIC_TYPE_FILE_SIZE",
6
- 'METRIC_TYPE_DURATION' = "METRIC_TYPE_DURATION",
7
- 'METRIC_TYPE_PERCENTAGE' = "METRIC_TYPE_PERCENTAGE"
13
+ METRIC_TYPE_NUMERIC = "METRIC_TYPE_NUMERIC",
14
+ METRIC_TYPE_SCORE = "METRIC_TYPE_SCORE",
15
+ METRIC_TYPE_FILE_SIZE = "METRIC_TYPE_FILE_SIZE",
16
+ METRIC_TYPE_DURATION = "METRIC_TYPE_DURATION",
17
+ METRIC_TYPE_PERCENTAGE = "METRIC_TYPE_PERCENTAGE"
8
18
  }
9
19
  export interface MetricTypeConfig {
10
20
  label: string;
@@ -36,20 +46,53 @@ export interface MetricRunInfo {
36
46
  displayDelta?: string;
37
47
  displayDeltaPercentage?: string;
38
48
  }
49
+ export type JobSection<T = object> = Record<Source, T>;
50
+ export declare enum JobSectionId {
51
+ meta = "meta",
52
+ insights = "insights",
53
+ summary = "summary",
54
+ metrics = "metrics",
55
+ rawData = "rawData"
56
+ }
39
57
  export interface JobSummaryItem {
40
58
  baseline: number;
41
59
  current: number;
42
60
  }
61
+ export interface JobInsight<T = object> {
62
+ type: InsightType;
63
+ data: T & {
64
+ text?: string;
65
+ };
66
+ }
67
+ export interface JobInsightAssetsSizeTotalData {
68
+ md: string;
69
+ info: MetricRunInfo;
70
+ }
71
+ export type JobInsightDuplicatePackagesData = Record<string, Array<string>>;
72
+ export interface JobInsightDuplicatePackagesV3Data {
73
+ packages: Record<string, Array<string>>;
74
+ }
75
+ export interface JobInsightNewPackagesData {
76
+ packages: Array<string>;
77
+ }
43
78
  export type JobSummarySource = Record<string, JobSummaryItem>;
44
- export type JobSummary = Record<string, JobSummarySource>;
79
+ export type JobSummary = JobSection<JobSummarySource>;
80
+ export interface JobInsights {
81
+ [Source.webpack]: {
82
+ assetsSizeTotal: JobInsight<JobInsightAssetsSizeTotalData>;
83
+ duplicatePackages?: JobInsight<JobInsightDuplicatePackagesData>;
84
+ duplicatePackagesV3?: JobInsight<JobInsightDuplicatePackagesV3Data>;
85
+ newPackages?: JobInsight<JobInsightNewPackagesData>;
86
+ };
87
+ }
45
88
  export type JobMetricsSource = Record<string, MetricRun | Record<string, MetricRun>>;
46
- export type JobMetrics = Record<string, JobMetricsSource>;
89
+ export type JobMetrics = JobSection<JobMetricsSource>;
47
90
  export interface JobData {
48
- meta?: any;
49
- insights?: any;
50
- summary?: JobSummary;
51
- metrics?: JobMetrics;
52
- rawData?: any;
91
+ [JobSectionId.meta]?: JobSection;
92
+ [JobSectionId.insights]?: JobInsights;
93
+ [JobSectionId.summary]?: JobSummary;
94
+ [JobSectionId.metrics]?: JobMetrics;
95
+ [JobSectionId.rawData]?: JobSection;
53
96
  }
54
97
  export interface Job extends JobData {
55
98
  internalBuildNumber: number;
@@ -25,8 +25,9 @@ export declare const BUNDLE_MODULES: ComponentLink;
25
25
  export declare const BUNDLE_MODULES_DUPLICATE: ComponentLink;
26
26
  export declare const getBundleModulesBySearch: (search: string) => ComponentLink;
27
27
  export declare const getBundleModulesByChunk: (chunkIds: Array<string>, chunkId: string, fileType?: string) => ComponentLink;
28
- export declare const BUNLDE_PACKAGES_COUNT: ComponentLink;
28
+ export declare const BUNDLE_PACKAGES_COUNT: ComponentLink;
29
29
  export declare const BUNDLE_PACKAGES_DUPLICATE: ComponentLink;
30
+ export declare const BUNDLE_PACKAGES_DUPLICATE_NEW: ComponentLink;
30
31
  export declare const getBundleAssetsFileTypeComponentLink: (fileType: string, label: string) => ComponentLink;
31
32
  export declare const getBundlePackagesByNameComponentLink: (search: string) => ComponentLink;
32
33
  export declare const getComponentStateQueryString: (params?: {}) => string;
@@ -5,9 +5,9 @@ export function extractAssetsSizeTotalInsight(_: any, currentExtractedData: any,
5
5
  data: {
6
6
  text: string;
7
7
  md: string;
8
- info: import("../..").MetricRunInfo;
8
+ info: import("../../constants").MetricRunInfo;
9
9
  };
10
10
  };
11
11
  };
12
12
  };
13
- import { InsightType } from "../../config/insights";
13
+ import { InsightType } from "../../constants";
@@ -1,21 +1,13 @@
1
- import { InsightType } from '../../config';
2
- export declare const extractModulesPackagesDuplicate: (_: any, currentExtractedData: any) => {
3
- metrics: {
4
- duplicatePackagesCount: {
5
- value: number;
6
- };
7
- };
8
- insights?: undefined;
9
- } | {
1
+ import { Job, JobInsight, JobInsightDuplicatePackagesV3Data, JobInsights, MetricRun } from '../../constants';
2
+ interface ModulesPackagesDuplicateData {
10
3
  insights: {
11
- duplicatePackages: {
12
- type: InsightType;
13
- data: {};
14
- };
4
+ duplicatePackages?: JobInsights['webpack']['duplicatePackages'];
5
+ duplicatePackagesV3: JobInsights['webpack']['duplicatePackagesV3'];
15
6
  };
16
7
  metrics: {
17
- duplicatePackagesCount: {
18
- value: number;
19
- };
8
+ duplicatePackagesCount: MetricRun;
20
9
  };
21
- };
10
+ }
11
+ export declare const getDuplicatePackagesInsight: (duplicatePackagesMap: Record<string, Array<string>>, baselineDuplicatePackagesMap?: Record<string, Array<string>>) => JobInsight<JobInsightDuplicatePackagesV3Data>;
12
+ export declare const extractModulesPackagesDuplicate: (_: any, currentExtractedData: any, baselineJob?: Job) => ModulesPackagesDuplicateData;
13
+ export {};
@@ -0,0 +1,8 @@
1
+ import { Job, JobInsights } from '../../constants';
2
+ interface ModulesPackagesNewData {
3
+ insights?: {
4
+ newPackages: JobInsights['webpack']['newPackages'];
5
+ };
6
+ }
7
+ export declare const extractModulesPackagesNewInsight: (_: any, currentExtractedData: any, baselineJob?: Job) => ModulesPackagesNewData | null;
8
+ export {};
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InsightType = void 0;
4
- var InsightType;
5
- (function (InsightType) {
6
- InsightType["ERROR"] = "ERROR";
7
- InsightType["INFO"] = "INFO";
8
- InsightType["WARNING"] = "WARNING";
9
- })(InsightType = exports.InsightType || (exports.InsightType = {}));
10
- //# sourceMappingURL=insights.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"insights.js","sourceRoot":"","sources":["../../src/config/insights.ts"],"names":[],"mappings":";;;AAAA,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,8BAAe,CAAA;IACf,4BAAa,CAAA;IACb,kCAAmB,CAAA;AACrB,CAAC,EAJW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAItB"}
@@ -1,7 +0,0 @@
1
- export var InsightType;
2
- (function (InsightType) {
3
- InsightType["ERROR"] = "ERROR";
4
- InsightType["INFO"] = "INFO";
5
- InsightType["WARNING"] = "WARNING";
6
- })(InsightType || (InsightType = {}));
7
- //# sourceMappingURL=insights.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"insights.js","sourceRoot":"","sources":["../../src/config/insights.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,8BAAe,CAAA;IACf,4BAAa,CAAA;IACb,kCAAmB,CAAA;AACrB,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB"}
@@ -1,5 +0,0 @@
1
- export enum InsightType {
2
- ERROR = 'ERROR',
3
- INFO = 'INFO',
4
- WARNING = 'WARNING',
5
- }
@@ -1,5 +0,0 @@
1
- export declare enum InsightType {
2
- ERROR = "ERROR",
3
- INFO = "INFO",
4
- WARNING = "WARNING"
5
- }