@monorepolint/rules 0.5.0-alpha.98 → 0.5.0-beta.1

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 (156) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/package.json +47 -26
  3. package/src/__tests__/alphabeticalScripts.spec.ts +6 -5
  4. package/src/__tests__/bannedDependencies.spec.ts +5 -7
  5. package/src/__tests__/consistentDependencies.spec.ts +6 -5
  6. package/src/__tests__/consistentVersions.spec.ts +5 -4
  7. package/src/__tests__/fileContents.spec.ts +44 -17
  8. package/src/__tests__/mustSatisfyPeerDependencies.spec.ts +39 -38
  9. package/src/__tests__/nestedWorkspaces.spec.ts +5 -4
  10. package/src/__tests__/packageEntry.spec.ts +43 -32
  11. package/src/__tests__/packageOrder.spec.ts +23 -14
  12. package/src/__tests__/packageScript.spec.ts +61 -43
  13. package/src/__tests__/requireDependency.spec.ts +8 -7
  14. package/src/__tests__/utils.ts +8 -4
  15. package/src/alphabeticalDependencies.ts +7 -12
  16. package/src/alphabeticalScripts.ts +7 -12
  17. package/src/bannedDependencies.ts +9 -12
  18. package/src/consistentDependencies.ts +9 -10
  19. package/src/consistentVersions.ts +6 -8
  20. package/src/fileContents.ts +17 -16
  21. package/src/index.ts +13 -13
  22. package/src/mustSatisfyPeerDependencies.ts +16 -17
  23. package/src/nestedWorkspaces.ts +10 -12
  24. package/src/packageEntry.ts +7 -9
  25. package/src/packageOrder.ts +12 -10
  26. package/src/packageScript.ts +12 -19
  27. package/src/public/util.ts +1 -0
  28. package/src/requireDependency.ts +9 -10
  29. package/src/standardTsconfig.ts +10 -11
  30. package/src/util/checkAlpha.ts +1 -1
  31. package/src/util/makeRule.ts +29 -0
  32. package/src/util/packageDependencyGraphService.ts +2 -2
  33. package/tsconfig.json +7 -2
  34. package/lib/__tests__/alphabeticalScripts.spec.d.ts +0 -8
  35. package/lib/__tests__/alphabeticalScripts.spec.d.ts.map +0 -1
  36. package/lib/__tests__/alphabeticalScripts.spec.js +0 -61
  37. package/lib/__tests__/alphabeticalScripts.spec.js.map +0 -1
  38. package/lib/__tests__/bannedDependencies.spec.d.ts +0 -2
  39. package/lib/__tests__/bannedDependencies.spec.d.ts.map +0 -1
  40. package/lib/__tests__/bannedDependencies.spec.js +0 -161
  41. package/lib/__tests__/bannedDependencies.spec.js.map +0 -1
  42. package/lib/__tests__/consistentDependencies.spec.d.ts +0 -2
  43. package/lib/__tests__/consistentDependencies.spec.d.ts.map +0 -1
  44. package/lib/__tests__/consistentDependencies.spec.js +0 -115
  45. package/lib/__tests__/consistentDependencies.spec.js.map +0 -1
  46. package/lib/__tests__/consistentVersions.spec.d.ts +0 -8
  47. package/lib/__tests__/consistentVersions.spec.d.ts.map +0 -1
  48. package/lib/__tests__/consistentVersions.spec.js +0 -183
  49. package/lib/__tests__/consistentVersions.spec.js.map +0 -1
  50. package/lib/__tests__/fileContents.spec.d.ts +0 -8
  51. package/lib/__tests__/fileContents.spec.d.ts.map +0 -1
  52. package/lib/__tests__/fileContents.spec.js +0 -59
  53. package/lib/__tests__/fileContents.spec.js.map +0 -1
  54. package/lib/__tests__/mustSatisfyPeerDependencies.spec.d.ts +0 -8
  55. package/lib/__tests__/mustSatisfyPeerDependencies.spec.d.ts.map +0 -1
  56. package/lib/__tests__/mustSatisfyPeerDependencies.spec.js +0 -1063
  57. package/lib/__tests__/mustSatisfyPeerDependencies.spec.js.map +0 -1
  58. package/lib/__tests__/nestedWorkspaces.spec.d.ts +0 -2
  59. package/lib/__tests__/nestedWorkspaces.spec.d.ts.map +0 -1
  60. package/lib/__tests__/nestedWorkspaces.spec.js +0 -124
  61. package/lib/__tests__/nestedWorkspaces.spec.js.map +0 -1
  62. package/lib/__tests__/packageEntry.spec.d.ts +0 -8
  63. package/lib/__tests__/packageEntry.spec.d.ts.map +0 -1
  64. package/lib/__tests__/packageEntry.spec.js +0 -144
  65. package/lib/__tests__/packageEntry.spec.js.map +0 -1
  66. package/lib/__tests__/packageOrder.spec.d.ts +0 -8
  67. package/lib/__tests__/packageOrder.spec.d.ts.map +0 -1
  68. package/lib/__tests__/packageOrder.spec.js +0 -116
  69. package/lib/__tests__/packageOrder.spec.js.map +0 -1
  70. package/lib/__tests__/packageScript.spec.d.ts +0 -8
  71. package/lib/__tests__/packageScript.spec.d.ts.map +0 -1
  72. package/lib/__tests__/packageScript.spec.js +0 -171
  73. package/lib/__tests__/packageScript.spec.js.map +0 -1
  74. package/lib/__tests__/requireDependency.spec.d.ts +0 -2
  75. package/lib/__tests__/requireDependency.spec.d.ts.map +0 -1
  76. package/lib/__tests__/requireDependency.spec.js +0 -123
  77. package/lib/__tests__/requireDependency.spec.js.map +0 -1
  78. package/lib/__tests__/utils.d.ts +0 -76
  79. package/lib/__tests__/utils.d.ts.map +0 -1
  80. package/lib/__tests__/utils.js +0 -83
  81. package/lib/__tests__/utils.js.map +0 -1
  82. package/lib/alphabeticalDependencies.d.ts +0 -23
  83. package/lib/alphabeticalDependencies.d.ts.map +0 -1
  84. package/lib/alphabeticalDependencies.js +0 -24
  85. package/lib/alphabeticalDependencies.js.map +0 -1
  86. package/lib/alphabeticalScripts.d.ts +0 -23
  87. package/lib/alphabeticalScripts.d.ts.map +0 -1
  88. package/lib/alphabeticalScripts.js +0 -22
  89. package/lib/alphabeticalScripts.js.map +0 -1
  90. package/lib/bannedDependencies.d.ts +0 -134
  91. package/lib/bannedDependencies.d.ts.map +0 -1
  92. package/lib/bannedDependencies.js +0 -133
  93. package/lib/bannedDependencies.js.map +0 -1
  94. package/lib/consistentDependencies.d.ts +0 -38
  95. package/lib/consistentDependencies.d.ts.map +0 -1
  96. package/lib/consistentDependencies.js +0 -77
  97. package/lib/consistentDependencies.js.map +0 -1
  98. package/lib/consistentVersions.d.ts +0 -47
  99. package/lib/consistentVersions.d.ts.map +0 -1
  100. package/lib/consistentVersions.js +0 -96
  101. package/lib/consistentVersions.js.map +0 -1
  102. package/lib/fileContents.d.ts +0 -111
  103. package/lib/fileContents.d.ts.map +0 -1
  104. package/lib/fileContents.js +0 -84
  105. package/lib/fileContents.js.map +0 -1
  106. package/lib/index.d.ts +0 -20
  107. package/lib/index.d.ts.map +0 -1
  108. package/lib/index.js +0 -49
  109. package/lib/index.js.map +0 -1
  110. package/lib/mustSatisfyPeerDependencies.d.ts +0 -721
  111. package/lib/mustSatisfyPeerDependencies.d.ts.map +0 -1
  112. package/lib/mustSatisfyPeerDependencies.js +0 -638
  113. package/lib/mustSatisfyPeerDependencies.js.map +0 -1
  114. package/lib/nestedWorkspaces.d.ts +0 -24
  115. package/lib/nestedWorkspaces.d.ts.map +0 -1
  116. package/lib/nestedWorkspaces.js +0 -52
  117. package/lib/nestedWorkspaces.js.map +0 -1
  118. package/lib/packageEntry.d.ts +0 -115
  119. package/lib/packageEntry.d.ts.map +0 -1
  120. package/lib/packageEntry.js +0 -77
  121. package/lib/packageEntry.js.map +0 -1
  122. package/lib/packageOrder.d.ts +0 -33
  123. package/lib/packageOrder.d.ts.map +0 -1
  124. package/lib/packageOrder.js +0 -105
  125. package/lib/packageOrder.js.map +0 -1
  126. package/lib/packageScript.d.ts +0 -102
  127. package/lib/packageScript.d.ts.map +0 -1
  128. package/lib/packageScript.js +0 -92
  129. package/lib/packageScript.js.map +0 -1
  130. package/lib/requireDependency.d.ts +0 -99
  131. package/lib/requireDependency.d.ts.map +0 -1
  132. package/lib/requireDependency.js +0 -67
  133. package/lib/requireDependency.js.map +0 -1
  134. package/lib/standardTsconfig.d.ts +0 -113
  135. package/lib/standardTsconfig.d.ts.map +0 -1
  136. package/lib/standardTsconfig.js +0 -118
  137. package/lib/standardTsconfig.js.map +0 -1
  138. package/lib/util/checkAlpha.d.ts +0 -10
  139. package/lib/util/checkAlpha.d.ts.map +0 -1
  140. package/lib/util/checkAlpha.js +0 -51
  141. package/lib/util/checkAlpha.js.map +0 -1
  142. package/lib/util/createNewRuleConversion.d.ts +0 -30
  143. package/lib/util/createNewRuleConversion.d.ts.map +0 -1
  144. package/lib/util/createNewRuleConversion.js +0 -33
  145. package/lib/util/createNewRuleConversion.js.map +0 -1
  146. package/lib/util/makeDirectory.d.ts +0 -8
  147. package/lib/util/makeDirectory.d.ts.map +0 -1
  148. package/lib/util/makeDirectory.js +0 -28
  149. package/lib/util/makeDirectory.js.map +0 -1
  150. package/lib/util/packageDependencyGraphService.d.ts +0 -37
  151. package/lib/util/packageDependencyGraphService.d.ts.map +0 -1
  152. package/lib/util/packageDependencyGraphService.js +0 -70
  153. package/lib/util/packageDependencyGraphService.js.map +0 -1
  154. package/src/util/createNewRuleConversion.ts +0 -38
  155. package/tsconfig.tsbuildinfo +0 -1
  156. /package/{jest.config.js → jest.config.cjs} +0 -0
@@ -1,99 +0,0 @@
1
- /*!
2
- * Copyright 2019 Palantir Technologies, Inc.
3
- *
4
- * Licensed under the MIT license. See LICENSE file in the project root for details.
5
- *
6
- */
7
- import { Context, RuleModule } from "@monorepolint/config";
8
- import * as r from "runtypes";
9
- export declare const requireDependency: RuleModule<r.Partial<{
10
- dependencies: r.Dictionary<r.String, string | number | symbol>;
11
- devDependencies: r.Dictionary<r.String, string | number | symbol>;
12
- peerDependencies: r.Dictionary<r.String, string | number | symbol>;
13
- optionalDependencies: r.Dictionary<r.String, string | number | symbol>;
14
- }, false>>;
15
- export declare const RequireDependency: {
16
- new (ruleEntry: import("@monorepolint/config").RuleEntry<{
17
- dependencies?: {
18
- [x: string]: string;
19
- [x: number]: string;
20
- [x: symbol]: string;
21
- } | undefined;
22
- devDependencies?: {
23
- [x: string]: string;
24
- [x: number]: string;
25
- [x: symbol]: string;
26
- } | undefined;
27
- peerDependencies?: {
28
- [x: string]: string;
29
- [x: number]: string;
30
- [x: symbol]: string;
31
- } | undefined;
32
- optionalDependencies?: {
33
- [x: string]: string;
34
- [x: number]: string;
35
- [x: symbol]: string;
36
- } | undefined;
37
- }>): {
38
- readonly id: string;
39
- options: {
40
- dependencies?: {
41
- [x: string]: string;
42
- [x: number]: string;
43
- [x: symbol]: string;
44
- } | undefined;
45
- devDependencies?: {
46
- [x: string]: string;
47
- [x: number]: string;
48
- [x: symbol]: string;
49
- } | undefined;
50
- peerDependencies?: {
51
- [x: string]: string;
52
- [x: number]: string;
53
- [x: symbol]: string;
54
- } | undefined;
55
- optionalDependencies?: {
56
- [x: string]: string;
57
- [x: number]: string;
58
- [x: symbol]: string;
59
- } | undefined;
60
- } | undefined;
61
- readonly name: string;
62
- checkFunc: import("@monorepolint/config").Checker<r.Partial<{
63
- dependencies: r.Dictionary<r.String, string | number | symbol>;
64
- devDependencies: r.Dictionary<r.String, string | number | symbol>;
65
- peerDependencies: r.Dictionary<r.String, string | number | symbol>;
66
- optionalDependencies: r.Dictionary<r.String, string | number | symbol>;
67
- }, false>>;
68
- readonly optionsRuntype: r.Partial<{
69
- dependencies: r.Dictionary<r.String, string | number | symbol>;
70
- devDependencies: r.Dictionary<r.String, string | number | symbol>;
71
- peerDependencies: r.Dictionary<r.String, string | number | symbol>;
72
- optionalDependencies: r.Dictionary<r.String, string | number | symbol>;
73
- }, false>;
74
- readonly ruleEntry: import("@monorepolint/config").RuleEntry<{
75
- dependencies?: {
76
- [x: string]: string;
77
- [x: number]: string;
78
- [x: symbol]: string;
79
- } | undefined;
80
- devDependencies?: {
81
- [x: string]: string;
82
- [x: number]: string;
83
- [x: symbol]: string;
84
- } | undefined;
85
- peerDependencies?: {
86
- [x: string]: string;
87
- [x: number]: string;
88
- [x: symbol]: string;
89
- } | undefined;
90
- optionalDependencies?: {
91
- [x: string]: string;
92
- [x: number]: string;
93
- [x: symbol]: string;
94
- } | undefined;
95
- }>;
96
- check: (context: Context) => void | Promise<void>;
97
- };
98
- };
99
- //# sourceMappingURL=requireDependency.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"requireDependency.d.ts","sourceRoot":"","sources":["../src/requireDependency.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAG3D,OAAO,KAAK,CAAC,MAAM,UAAU,CAAC;AAY9B,eAAO,MAAM,iBAAiB;;;;;UA+CC,CAAC;AAEhC,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAkE,CAAC"}
@@ -1,67 +0,0 @@
1
- "use strict";
2
- /*!
3
- * Copyright 2019 Palantir Technologies, Inc.
4
- *
5
- * Licensed under the MIT license. See LICENSE file in the project root for details.
6
- *
7
- */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.RequireDependency = exports.requireDependency = void 0;
10
- const tslib_1 = require("tslib");
11
- const utils_1 = require("@monorepolint/utils");
12
- const jest_diff_1 = tslib_1.__importDefault(require("jest-diff"));
13
- const r = tslib_1.__importStar(require("runtypes"));
14
- const createNewRuleConversion_1 = require("./util/createNewRuleConversion");
15
- const Options = r.Partial({
16
- dependencies: r.Dictionary(r.String),
17
- devDependencies: r.Dictionary(r.String),
18
- peerDependencies: r.Dictionary(r.String),
19
- optionalDependencies: r.Dictionary(r.String),
20
- });
21
- exports.requireDependency = {
22
- check: function expectPackageEntry(context, options) {
23
- const packageJson = context.getPackageJson();
24
- const packageJsonPath = context.getPackageJsonPath();
25
- [
26
- "dependencies",
27
- "devDependencies",
28
- "peerDependencies",
29
- "optionalDependencies",
30
- ].forEach((type) => {
31
- if (!options[type]) {
32
- return;
33
- }
34
- if (packageJson[type] === undefined) {
35
- context.addError({
36
- file: packageJsonPath,
37
- message: `No ${type} block, cannot add required ${type}.`,
38
- fixer: () => {
39
- (0, utils_1.mutateJson)(packageJsonPath, context.host, (input) => {
40
- input[type] = options[type];
41
- return input;
42
- });
43
- },
44
- });
45
- return;
46
- }
47
- for (const [dep, version] of Object.entries(options[type])) {
48
- if (packageJson[type][dep] !== version) {
49
- context.addError({
50
- file: packageJsonPath,
51
- message: `Expected dependency ${dep}@${version}`,
52
- longMessage: (0, jest_diff_1.default)(`${dep}@${version}\n`, `${dep}@${packageJson[type][dep] || "missing"}\n`),
53
- fixer: () => {
54
- (0, utils_1.mutateJson)(packageJsonPath, context.host, (input) => {
55
- input[type] = { ...input[type], [dep]: version };
56
- return input;
57
- });
58
- },
59
- });
60
- }
61
- }
62
- });
63
- },
64
- optionsRuntype: Options,
65
- };
66
- exports.RequireDependency = (0, createNewRuleConversion_1.createNewRuleConversion)("RequireDependency", exports.requireDependency);
67
- //# sourceMappingURL=requireDependency.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"requireDependency.js","sourceRoot":"","sources":["../src/requireDependency.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;AAGH,+CAA8D;AAC9D,kEAA6B;AAC7B,oDAA8B;AAC9B,4EAAyE;AAEzE,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;IACxB,YAAY,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC;IACpC,eAAe,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC;IACvC,gBAAgB,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC;IACxC,oBAAoB,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC;CAC7C,CAAC,CAAC;AAIU,QAAA,iBAAiB,GAAG;IAC/B,KAAK,EAAE,SAAS,kBAAkB,CAAC,OAAgB,EAAE,OAAgB;QACnE,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;QAC7C,MAAM,eAAe,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;QAErD;YACE,cAAuB;YACvB,iBAA0B;YAC1B,kBAA2B;YAC3B,sBAA+B;SAChC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACjB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBAClB,OAAO;aACR;YAED,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE;gBACnC,OAAO,CAAC,QAAQ,CAAC;oBACf,IAAI,EAAE,eAAe;oBACrB,OAAO,EAAE,MAAM,IAAI,+BAA+B,IAAI,GAAG;oBACzD,KAAK,EAAE,GAAG,EAAE;wBACV,IAAA,kBAAU,EAAc,eAAe,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;4BAC/D,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;4BAC5B,OAAO,KAAK,CAAC;wBACf,CAAC,CAAC,CAAC;oBACL,CAAC;iBACF,CAAC,CAAC;gBACH,OAAO;aACR;YAED,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAE,CAAC,EAAE;gBAC3D,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,OAAO,EAAE;oBACtC,OAAO,CAAC,QAAQ,CAAC;wBACf,IAAI,EAAE,eAAe;wBACrB,OAAO,EAAE,uBAAuB,GAAG,IAAI,OAAO,EAAE;wBAChD,WAAW,EAAE,IAAA,mBAAI,EAAC,GAAG,GAAG,IAAI,OAAO,IAAI,EAAE,GAAG,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,SAAS,IAAI,CAAE;wBAC5F,KAAK,EAAE,GAAG,EAAE;4BACV,IAAA,kBAAU,EAAc,eAAe,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;gCAC/D,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC;gCACjD,OAAO,KAAK,CAAC;4BACf,CAAC,CAAC,CAAC;wBACL,CAAC;qBACF,CAAC,CAAC;iBACJ;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,cAAc,EAAE,OAAO;CACM,CAAC;AAEnB,QAAA,iBAAiB,GAAG,IAAA,iDAAuB,EAAC,mBAAmB,EAAE,yBAAiB,CAAC,CAAC"}
@@ -1,113 +0,0 @@
1
- /*!
2
- * Copyright 2019 Palantir Technologies, Inc.
3
- *
4
- * Licensed under the MIT license. See LICENSE file in the project root for details.
5
- *
6
- */
7
- import { Context, RuleModule } from "@monorepolint/config";
8
- import * as r from "runtypes";
9
- declare const Options: r.Constraint<r.Partial<{
10
- file: r.String;
11
- generator: r.Function;
12
- tsconfigReferenceFile: r.String;
13
- template: r.Union<[r.Record<{}, false>, r.String]>;
14
- templateFile: r.String;
15
- excludedReferences: r.Union<[r.Array<r.String, false>, r.Literal<undefined>]>;
16
- additionalReferences: r.Union<[r.Array<r.String, false>, r.Literal<undefined>]>;
17
- }, false>, {
18
- file?: string | undefined;
19
- generator?: ((...args: any[]) => any) | undefined;
20
- tsconfigReferenceFile?: string | undefined;
21
- template?: string | {} | undefined;
22
- templateFile?: string | undefined;
23
- excludedReferences?: string[] | undefined;
24
- additionalReferences?: string[] | undefined;
25
- }, unknown>;
26
- export interface Options extends r.Static<typeof Options> {
27
- }
28
- export declare const standardTsconfig: RuleModule<r.Constraint<r.Partial<{
29
- file: r.String;
30
- generator: r.Function;
31
- tsconfigReferenceFile: r.String;
32
- template: r.Union<[r.Record<{}, false>, r.String]>;
33
- templateFile: r.String;
34
- excludedReferences: r.Union<[r.Array<r.String, false>, r.Literal<undefined>]>;
35
- additionalReferences: r.Union<[r.Array<r.String, false>, r.Literal<undefined>]>;
36
- }, false>, {
37
- file?: string | undefined;
38
- generator?: ((...args: any[]) => any) | undefined;
39
- tsconfigReferenceFile?: string | undefined;
40
- template?: string | {} | undefined;
41
- templateFile?: string | undefined;
42
- excludedReferences?: string[] | undefined;
43
- additionalReferences?: string[] | undefined;
44
- }, unknown>>;
45
- export declare const StandardTsConfig: {
46
- new (ruleEntry: import("@monorepolint/config").RuleEntry<{
47
- file?: string | undefined;
48
- generator?: ((...args: any[]) => any) | undefined;
49
- tsconfigReferenceFile?: string | undefined;
50
- template?: string | {} | undefined;
51
- templateFile?: string | undefined;
52
- excludedReferences?: string[] | undefined;
53
- additionalReferences?: string[] | undefined;
54
- }>): {
55
- readonly id: string;
56
- options: {
57
- file?: string | undefined;
58
- generator?: ((...args: any[]) => any) | undefined;
59
- tsconfigReferenceFile?: string | undefined;
60
- template?: string | {} | undefined;
61
- templateFile?: string | undefined;
62
- excludedReferences?: string[] | undefined;
63
- additionalReferences?: string[] | undefined;
64
- } | undefined;
65
- readonly name: string;
66
- checkFunc: import("@monorepolint/config").Checker<r.Constraint<r.Partial<{
67
- file: r.String;
68
- generator: r.Function;
69
- tsconfigReferenceFile: r.String;
70
- template: r.Union<[r.Record<{}, false>, r.String]>;
71
- templateFile: r.String;
72
- excludedReferences: r.Union<[r.Array<r.String, false>, r.Literal<undefined>]>;
73
- additionalReferences: r.Union<[r.Array<r.String, false>, r.Literal<undefined>]>;
74
- }, false>, {
75
- file?: string | undefined;
76
- generator?: ((...args: any[]) => any) | undefined;
77
- tsconfigReferenceFile?: string | undefined;
78
- template?: string | {} | undefined;
79
- templateFile?: string | undefined;
80
- excludedReferences?: string[] | undefined;
81
- additionalReferences?: string[] | undefined;
82
- }, unknown>>;
83
- readonly optionsRuntype: r.Constraint<r.Partial<{
84
- file: r.String;
85
- generator: r.Function;
86
- tsconfigReferenceFile: r.String;
87
- template: r.Union<[r.Record<{}, false>, r.String]>;
88
- templateFile: r.String;
89
- excludedReferences: r.Union<[r.Array<r.String, false>, r.Literal<undefined>]>;
90
- additionalReferences: r.Union<[r.Array<r.String, false>, r.Literal<undefined>]>;
91
- }, false>, {
92
- file?: string | undefined;
93
- generator?: ((...args: any[]) => any) | undefined;
94
- tsconfigReferenceFile?: string | undefined;
95
- template?: string | {} | undefined;
96
- templateFile?: string | undefined;
97
- excludedReferences?: string[] | undefined;
98
- additionalReferences?: string[] | undefined;
99
- }, unknown>;
100
- readonly ruleEntry: import("@monorepolint/config").RuleEntry<{
101
- file?: string | undefined;
102
- generator?: ((...args: any[]) => any) | undefined;
103
- tsconfigReferenceFile?: string | undefined;
104
- template?: string | {} | undefined;
105
- templateFile?: string | undefined;
106
- excludedReferences?: string[] | undefined;
107
- additionalReferences?: string[] | undefined;
108
- }>;
109
- check: (context: Context) => void | Promise<void>;
110
- };
111
- };
112
- export {};
113
- //# sourceMappingURL=standardTsconfig.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"standardTsconfig.d.ts","sourceRoot":"","sources":["../src/standardTsconfig.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAK3D,OAAO,KAAK,CAAC,MAAM,UAAU,CAAC;AAI9B,QAAA,MAAM,OAAO;;;;;;;;;;;;;;;;WAuBT,CAAC;AAEL,MAAM,WAAW,OAAQ,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,OAAO,CAAC;CAAG;AAE5D,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;YAiCE,CAAC;AAEhC,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAgE,CAAC"}
@@ -1,118 +0,0 @@
1
- "use strict";
2
- /*!
3
- * Copyright 2019 Palantir Technologies, Inc.
4
- *
5
- * Licensed under the MIT license. See LICENSE file in the project root for details.
6
- *
7
- */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.StandardTsConfig = exports.standardTsconfig = void 0;
10
- const tslib_1 = require("tslib");
11
- const utils_1 = require("@monorepolint/utils");
12
- const jest_diff_1 = tslib_1.__importDefault(require("jest-diff"));
13
- const createNewRuleConversion_1 = require("./util/createNewRuleConversion");
14
- const path = tslib_1.__importStar(require("path"));
15
- const r = tslib_1.__importStar(require("runtypes"));
16
- const DEFAULT_TSCONFIG_FILENAME = "tsconfig.json";
17
- const Options = r
18
- .Partial({
19
- file: r.String,
20
- generator: r.Function,
21
- tsconfigReferenceFile: r.String,
22
- template: r.Record({}).Or(r.String),
23
- templateFile: r.String,
24
- excludedReferences: r.Array(r.String).Or(r.Undefined),
25
- additionalReferences: r.Array(r.String).Or(r.Undefined),
26
- })
27
- .withConstraint(({ generator, template, templateFile }) => {
28
- let count = 0;
29
- if (generator) {
30
- count++;
31
- }
32
- if (template) {
33
- count++;
34
- }
35
- if (templateFile) {
36
- count++;
37
- }
38
- return count === 1 || "Expect one of { generator, template, templateFile }";
39
- });
40
- exports.standardTsconfig = {
41
- check: async function expectStandardTsconfig(context, opts) {
42
- var _a;
43
- const tsconfigFileName = (_a = opts.file) !== null && _a !== void 0 ? _a : DEFAULT_TSCONFIG_FILENAME;
44
- const fullPath = path.resolve(context.packageDir, tsconfigFileName);
45
- const generator = getGenerator(context, opts);
46
- const expectedContent = await generator(context);
47
- const actualContent = context.host.exists(fullPath)
48
- ? context.host.readFile(fullPath, { encoding: "utf-8" })
49
- : undefined;
50
- if (expectedContent === undefined) {
51
- context.addWarning({
52
- file: fullPath,
53
- message: "Excluding from expect-standard-tsconfig",
54
- });
55
- return;
56
- }
57
- if (actualContent !== expectedContent) {
58
- context.addError({
59
- file: fullPath,
60
- message: "Expect file contents to match",
61
- longMessage: (0, jest_diff_1.default)(expectedContent, actualContent, { expand: true }),
62
- fixer: () => {
63
- context.host.writeFile(fullPath, expectedContent, {
64
- encoding: "utf-8",
65
- });
66
- },
67
- });
68
- }
69
- },
70
- optionsRuntype: Options,
71
- };
72
- exports.StandardTsConfig = (0, createNewRuleConversion_1.createNewRuleConversion)("StandardTsconfig", exports.standardTsconfig);
73
- function getGenerator(context, opts) {
74
- if (opts.generator) {
75
- return opts.generator;
76
- }
77
- else if (opts.templateFile) {
78
- const { packageDir: workspacePackageDir } = context.getWorkspaceContext();
79
- const fullPath = path.resolve(workspacePackageDir, opts.templateFile);
80
- const template = JSON.parse(context.host.readFile(fullPath, { encoding: "utf-8" }));
81
- return makeGenerator(template, opts.excludedReferences, opts.additionalReferences, opts.tsconfigReferenceFile);
82
- }
83
- else if (opts.template) {
84
- return makeGenerator(opts.template, opts.excludedReferences, opts.additionalReferences, opts.tsconfigReferenceFile);
85
- }
86
- else {
87
- throw new Error("Unable to make generator");
88
- }
89
- }
90
- function makeGenerator(template, excludedReferences, additionalReferences, tsconfigReferenceFile) {
91
- return async function generator(context) {
92
- template = {
93
- ...template,
94
- references: [],
95
- }; // make a copy and ensure we have a references array
96
- const nameToDirectory = await context.getWorkspaceContext().getPackageNameToDir();
97
- const packageJson = context.getPackageJson();
98
- const deps = [...Object.keys(packageJson.dependencies || {}), ...Object.keys(packageJson.devDependencies || {})];
99
- for (const dep of deps) {
100
- const packageDir = nameToDirectory.get(dep);
101
- if (packageDir !== undefined && (excludedReferences === undefined || (0, utils_1.matchesAnyGlob)(dep, excludedReferences))) {
102
- const absoluteReferencePath = tsconfigReferenceFile !== undefined ? path.join(packageDir, tsconfigReferenceFile) : packageDir;
103
- template.references.push({
104
- path: path.relative(context.packageDir, absoluteReferencePath),
105
- });
106
- }
107
- }
108
- if (additionalReferences) {
109
- for (const additionalReference of additionalReferences) {
110
- template.references.push({
111
- path: additionalReference,
112
- });
113
- }
114
- }
115
- return JSON.stringify(template, undefined, 2) + "\n";
116
- };
117
- }
118
- //# sourceMappingURL=standardTsconfig.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"standardTsconfig.js","sourceRoot":"","sources":["../src/standardTsconfig.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- /*!
2
- * Copyright 2019 Palantir Technologies, Inc.
3
- *
4
- * Licensed under the MIT license. See LICENSE file in the project root for details.
5
- *
6
- */
7
- import { Context } from "@monorepolint/config";
8
- export declare function checkAlpha(context: Context, block: "dependencies" | "devDependencies" | "peerDependencies" | "scripts"): void;
9
- export declare function createIncorrectOrderErrorMessage(block: string, packageName: string): string;
10
- //# sourceMappingURL=checkAlpha.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"checkAlpha.d.ts","sourceRoot":"","sources":["../../src/util/checkAlpha.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAG/C,wBAAgB,UAAU,CACxB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,cAAc,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,SAAS,QAgC3E;AAYD,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,UAElF"}
@@ -1,51 +0,0 @@
1
- "use strict";
2
- /*!
3
- * Copyright 2019 Palantir Technologies, Inc.
4
- *
5
- * Licensed under the MIT license. See LICENSE file in the project root for details.
6
- *
7
- */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.createIncorrectOrderErrorMessage = exports.checkAlpha = void 0;
10
- const tslib_1 = require("tslib");
11
- const jest_diff_1 = tslib_1.__importDefault(require("jest-diff"));
12
- function checkAlpha(context, block) {
13
- const packageJson = context.getPackageJson();
14
- const packagePath = context.getPackageJsonPath();
15
- const blockToSort = packageJson[block];
16
- if (blockToSort === undefined) {
17
- return;
18
- }
19
- const actualOrder = Object.keys(blockToSort);
20
- const expectedOrder = actualOrder.slice().sort(); // sort mutates, so we need to copy the previous result
21
- if (!arrayOrderCompare(actualOrder, expectedOrder)) {
22
- context.addError({
23
- file: packagePath,
24
- message: createIncorrectOrderErrorMessage(block, packageJson.name),
25
- longMessage: (0, jest_diff_1.default)(expectedOrder, actualOrder, { expand: true }),
26
- fixer: () => {
27
- const expectedDependencies = {};
28
- expectedOrder.forEach((dep) => {
29
- expectedDependencies[dep] = blockToSort[dep];
30
- });
31
- const newPackageJson = { ...packageJson };
32
- newPackageJson[block] = expectedDependencies;
33
- context.host.writeJson(packagePath, newPackageJson);
34
- },
35
- });
36
- }
37
- }
38
- exports.checkAlpha = checkAlpha;
39
- function arrayOrderCompare(a, b) {
40
- for (let index = 0; index < a.length; index++) {
41
- if (a[index] !== b[index]) {
42
- return false;
43
- }
44
- }
45
- return true;
46
- }
47
- function createIncorrectOrderErrorMessage(block, packageName) {
48
- return `Incorrect order of ${block} in ${packageName}'s package.json`;
49
- }
50
- exports.createIncorrectOrderErrorMessage = createIncorrectOrderErrorMessage;
51
- //# sourceMappingURL=checkAlpha.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"checkAlpha.js","sourceRoot":"","sources":["../../src/util/checkAlpha.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;AAGH,kEAA6B;AAE7B,SAAgB,UAAU,CACxB,OAAgB,EAChB,KAA0E;IAE1E,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAC7C,MAAM,WAAW,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAEjD,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAEvC,IAAI,WAAW,KAAK,SAAS,EAAE;QAC7B,OAAO;KACR;IAED,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,uDAAuD;IAEzG,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,aAAa,CAAC,EAAE;QAClD,OAAO,CAAC,QAAQ,CAAC;YACf,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,gCAAgC,CAAC,KAAK,EAAE,WAAW,CAAC,IAAK,CAAC;YACnE,WAAW,EAAE,IAAA,mBAAI,EAAC,aAAa,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;YAC/D,KAAK,EAAE,GAAG,EAAE;gBACV,MAAM,oBAAoB,GAA2B,EAAE,CAAC;gBAExD,aAAa,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;oBAC5B,oBAAoB,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;gBAC/C,CAAC,CAAC,CAAC;gBAEH,MAAM,cAAc,GAAG,EAAE,GAAG,WAAW,EAAE,CAAC;gBAC1C,cAAc,CAAC,KAAK,CAAC,GAAG,oBAAoB,CAAC;gBAC7C,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;YACtD,CAAC;SACF,CAAC,CAAC;KACJ;AACH,CAAC;AAlCD,gCAkCC;AAED,SAAS,iBAAiB,CAAC,CAAwB,EAAE,CAAwB;IAC3E,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QAC7C,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE;YACzB,OAAO,KAAK,CAAC;SACd;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAgB,gCAAgC,CAAC,KAAa,EAAE,WAAmB;IACjF,OAAO,sBAAsB,KAAK,OAAO,WAAW,iBAAiB,CAAC;AACxE,CAAC;AAFD,4EAEC"}
@@ -1,30 +0,0 @@
1
- /*!
2
- * Copyright 2022 Palantir Technologies, Inc.
3
- *
4
- * Licensed under the MIT license. See LICENSE file in the project root for details.
5
- *
6
- */
7
- import { Checker, Context, NewRuleModule, RuleModule, RuleEntry } from "@monorepolint/config";
8
- import * as r from "runtypes";
9
- export declare class NewRuleConverterBase<T extends r.Runtype<unknown>> implements NewRuleModule<T> {
10
- readonly name: string;
11
- checkFunc: Checker<T>;
12
- readonly optionsRuntype: T;
13
- readonly ruleEntry: RuleEntry<r.Static<T>>;
14
- readonly id: string;
15
- options: r.Static<T> | undefined;
16
- constructor(name: string, checkFunc: Checker<T>, optionsRuntype: T, ruleEntry: RuleEntry<r.Static<T>>);
17
- check: (context: Context) => void | Promise<void>;
18
- }
19
- export declare function createNewRuleConversion<T extends r.Runtype<unknown>>(name: string, old: RuleModule<T>): {
20
- new (ruleEntry: RuleEntry<r.Static<T>>): {
21
- readonly id: string;
22
- options: r.Static<T> | undefined;
23
- readonly name: string;
24
- checkFunc: Checker<T>;
25
- readonly optionsRuntype: T;
26
- readonly ruleEntry: RuleEntry<r.Static<T>>;
27
- check: (context: Context) => void | Promise<void>;
28
- };
29
- };
30
- //# sourceMappingURL=createNewRuleConversion.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createNewRuleConversion.d.ts","sourceRoot":"","sources":["../../src/util/createNewRuleConversion.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC9F,OAAO,KAAK,CAAC,MAAM,UAAU,CAAC;AAK9B,qBAAa,oBAAoB,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAE,YAAW,aAAa,CAAC,CAAC,CAAC;aAKvE,IAAI,EAAE,MAAM;IACrB,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;aACZ,cAAc,EAAE,CAAC;aACjB,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAPnD,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;gBAGf,IAAI,EAAE,MAAM,EACrB,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,EACZ,cAAc,EAAE,CAAC,EACjB,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAO5C,KAAK,YAAa,OAAO,0BAAsE;CACvG;AAED,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC;oBAE3E,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;;;;;;;;;EAIhD"}
@@ -1,33 +0,0 @@
1
- "use strict";
2
- /*!
3
- * Copyright 2022 Palantir Technologies, Inc.
4
- *
5
- * Licensed under the MIT license. See LICENSE file in the project root for details.
6
- *
7
- */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.createNewRuleConversion = exports.NewRuleConverterBase = void 0;
10
- // tslint:disable max-classes-per-file
11
- let id = 0;
12
- class NewRuleConverterBase {
13
- constructor(name, checkFunc, optionsRuntype, ruleEntry) {
14
- this.name = name;
15
- this.checkFunc = checkFunc;
16
- this.optionsRuntype = optionsRuntype;
17
- this.ruleEntry = ruleEntry;
18
- this.check = (context) => this.checkFunc(context, this.ruleEntry.options, { id: this.id });
19
- this.options = ruleEntry.options;
20
- this.id = `${this.name} :: ${id++}`;
21
- //
22
- }
23
- }
24
- exports.NewRuleConverterBase = NewRuleConverterBase;
25
- function createNewRuleConversion(name, old) {
26
- return class NewRule extends NewRuleConverterBase {
27
- constructor(ruleEntry) {
28
- super(name, old.check, old.optionsRuntype, ruleEntry);
29
- }
30
- };
31
- }
32
- exports.createNewRuleConversion = createNewRuleConversion;
33
- //# sourceMappingURL=createNewRuleConversion.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createNewRuleConversion.js","sourceRoot":"","sources":["../../src/util/createNewRuleConversion.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAKH,sCAAsC;AAEtC,IAAI,EAAE,GAAG,CAAC,CAAC;AACX,MAAa,oBAAoB;IAI/B,YACkB,IAAY,EACrB,SAAqB,EACZ,cAAiB,EACjB,SAAiC;QAHjC,SAAI,GAAJ,IAAI,CAAQ;QACrB,cAAS,GAAT,SAAS,CAAY;QACZ,mBAAc,GAAd,cAAc,CAAG;QACjB,cAAS,GAAT,SAAS,CAAwB;QAO5C,UAAK,GAAG,CAAC,OAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QALpG,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;QACjC,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,IAAI,OAAO,EAAE,EAAE,EAAE,CAAC;QACpC,EAAE;IACJ,CAAC;CAGF;AAhBD,oDAgBC;AAED,SAAgB,uBAAuB,CAA+B,IAAY,EAAE,GAAkB;IACpG,OAAO,MAAM,OAAQ,SAAQ,oBAAuB;QAClD,YAAY,SAAiC;YAC3C,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;QACxD,CAAC;KACF,CAAC;AACJ,CAAC;AAND,0DAMC"}
@@ -1,8 +0,0 @@
1
- /*!
2
- * Copyright 2019 Palantir Technologies, Inc.
3
- *
4
- * Licensed under the MIT license. See LICENSE file in the project root for details.
5
- *
6
- */
7
- export declare function makeDirectoryRecursively(directoryPath: string): void;
8
- //# sourceMappingURL=makeDirectory.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"makeDirectory.d.ts","sourceRoot":"","sources":["../../src/util/makeDirectory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,wBAAgB,wBAAwB,CAAC,aAAa,EAAE,MAAM,QAa7D"}
@@ -1,28 +0,0 @@
1
- "use strict";
2
- /*!
3
- * Copyright 2019 Palantir Technologies, Inc.
4
- *
5
- * Licensed under the MIT license. See LICENSE file in the project root for details.
6
- *
7
- */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.makeDirectoryRecursively = void 0;
10
- const tslib_1 = require("tslib");
11
- const fs_1 = require("fs");
12
- const path = tslib_1.__importStar(require("path"));
13
- function makeDirectoryRecursively(directoryPath) {
14
- // node < 10 doesn't support mkdirSync w/ recursive: true
15
- // so we manually do it instead
16
- const dirSegments = directoryPath.split(path.sep);
17
- for (let i = 0; i < dirSegments.length; i++) {
18
- if (dirSegments[i].length > 0) {
19
- // we skip the empty segment
20
- const curDirPath = dirSegments.slice(0, i + 1).join(path.sep);
21
- if (!(0, fs_1.existsSync)(curDirPath)) {
22
- (0, fs_1.mkdirSync)(curDirPath);
23
- }
24
- }
25
- }
26
- }
27
- exports.makeDirectoryRecursively = makeDirectoryRecursively;
28
- //# sourceMappingURL=makeDirectory.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"makeDirectory.js","sourceRoot":"","sources":["../../src/util/makeDirectory.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;AAEH,2BAA2C;AAC3C,mDAA6B;AAE7B,SAAgB,wBAAwB,CAAC,aAAqB;IAC5D,yDAAyD;IACzD,+BAA+B;IAC/B,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC3C,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7B,4BAA4B;YAC5B,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC9D,IAAI,CAAC,IAAA,eAAU,EAAC,UAAU,CAAC,EAAE;gBAC3B,IAAA,cAAS,EAAC,UAAU,CAAC,CAAC;aACvB;SACF;KACF;AACH,CAAC;AAbD,4DAaC"}
@@ -1,37 +0,0 @@
1
- /**
2
- * @license Copyright 2019 Palantir Technologies, Inc. All rights reserved.
3
- */
4
- import { Host, PackageJson } from "@monorepolint/utils";
5
- /** Interface for a node in a package dependency graph. */
6
- export interface IPackageDependencyGraphNode {
7
- packageJson: PackageJson;
8
- dependencies: Map<string, IPackageDependencyGraphNode>;
9
- paths: {
10
- packageJsonPath: string;
11
- rootDirectory: string;
12
- };
13
- }
14
- /** Service abstraction for constructing and traversing package dependency graphs. */
15
- export interface IPackageDependencyGraphService {
16
- /** Construct a graph of package dependencies. */
17
- buildDependencyGraph(packageJsonPath: string, host: Host, maxDepth?: number): IPackageDependencyGraphNode;
18
- /** Traverse a package dependency graph. */
19
- traverse(root: IPackageDependencyGraphNode, opts?: {
20
- /** Traverse each unique path to a given package (potentially slow). */
21
- traverseAllPaths?: boolean;
22
- }): IterableIterator<IPackageDependencyGraphNode & {
23
- importPath: IPackageDependencyGraphNode[];
24
- }>;
25
- }
26
- /** Default implementation of the package dependency graph service. */
27
- export declare class PackageDependencyGraphService implements IPackageDependencyGraphService {
28
- /** Construct a graph of package dependencies and return the root node. */
29
- buildDependencyGraph(startPackageJsonPath: string, host: Host, maxDepth?: number): IPackageDependencyGraphNode;
30
- /** Traverse a package dependency graph with an iterator. */
31
- traverse(root: IPackageDependencyGraphNode, opts?: {
32
- traverseAllPaths: boolean;
33
- }): IterableIterator<IPackageDependencyGraphNode & {
34
- importPath: IPackageDependencyGraphNode[];
35
- }>;
36
- }
37
- //# sourceMappingURL=packageDependencyGraphService.d.ts.map