@servicetitan/restrict-imports 19.4.0 → 20.0.0

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/config.js CHANGED
@@ -1,16 +1,13 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.canonicalizeAllow = exports.canonicalizeEntry = exports.canonicalizeConfig = exports.InvalidEntry = exports.validateRawEntry = exports.InvalidConfig = exports.validateRawConfig = void 0;
4
1
  /**
5
2
  * validateRawConfig
6
3
  */
7
- function validateRawConfig(maybeConfig) {
4
+ export function validateRawConfig(maybeConfig) {
8
5
  if (maybeConfig === undefined) {
9
6
  return false;
10
7
  }
11
8
  if (!Array.isArray(maybeConfig)) {
12
9
  if (validateRawEntry(maybeConfig)) {
13
- return exports.InvalidConfig.ExpectedAnArrayOrASingleEntry;
10
+ return InvalidConfig.ExpectedAnArrayOrASingleEntry;
14
11
  }
15
12
  return false;
16
13
  }
@@ -29,7 +26,7 @@ function validateRawConfig(maybeConfig) {
29
26
  const entry = c0[index];
30
27
  const error = validateRawEntry(entry);
31
28
  if (error) {
32
- return exports.InvalidConfig.InvalidEntry(index, entry, error);
29
+ return InvalidConfig.InvalidEntry(index, entry, error);
33
30
  }
34
31
  }
35
32
  return false;
@@ -43,20 +40,19 @@ function validateRawConfig(maybeConfig) {
43
40
  const allow = allow0 === '*' ? [allow0] : allow0;
44
41
  const unavailable = allow.find(n => !available.has(n) && !available.has('*'));
45
42
  if (unavailable) {
46
- return exports.InvalidConfig.InvalidOrder(index, entry, unavailable);
43
+ return InvalidConfig.InvalidOrder(index, entry, unavailable);
47
44
  }
48
45
  }
49
46
  return false;
50
47
  }
51
48
  }
52
- exports.validateRawConfig = validateRawConfig;
53
- exports.InvalidConfig = {
49
+ export const InvalidConfig = {
54
50
  ExpectedAnArrayOrASingleEntry: 'Expected an array of config entries, or a single entry',
55
51
  InvalidEntry: (index, entry, error) => `Invalid entry #${index} (${JSON.stringify(entry)}): ${error}`,
56
52
  InvalidOrder: (index, entry, unavailable) => `Invalid entries order, #${index} (${JSON.stringify(entry)}):` +
57
53
  ` '${unavailable}' is used before its description`,
58
54
  };
59
- function validateRawEntry(e) {
55
+ export function validateRawEntry(e) {
60
56
  if (!isPlainObject(e)) {
61
57
  return InvalidEntry.ExpectedAPlainObject;
62
58
  }
@@ -85,36 +81,32 @@ function validateRawEntry(e) {
85
81
  return !allow.some(v => typeof v !== 'string');
86
82
  }
87
83
  }
88
- exports.validateRawEntry = validateRawEntry;
89
- var InvalidEntry;
84
+ export var InvalidEntry;
90
85
  (function (InvalidEntry) {
91
86
  InvalidEntry["ExpectedAPlainObject"] = "Expected a plain object with fields `name` and `allow`";
92
87
  InvalidEntry["InvalidName"] = "The `name` field is expected to be `string`";
93
88
  InvalidEntry["InvalidAllow"] = "The `allow` field is expected to be `string|string[]|undefined`";
94
- })(InvalidEntry = exports.InvalidEntry || (exports.InvalidEntry = {}));
89
+ })(InvalidEntry || (InvalidEntry = {}));
95
90
  /**
96
91
  * canonicalizeConfig
97
92
  */
98
- function canonicalizeConfig(c = []) {
93
+ export function canonicalizeConfig(c = []) {
99
94
  if (Array.isArray(c)) {
100
95
  return c.map(canonicalizeEntry);
101
96
  }
102
97
  return [canonicalizeEntry(c)];
103
98
  }
104
- exports.canonicalizeConfig = canonicalizeConfig;
105
- function canonicalizeEntry(e) {
99
+ export function canonicalizeEntry(e) {
106
100
  return {
107
101
  name: e.name,
108
102
  allow: canonicalizeAllow(e.allow),
109
103
  };
110
104
  }
111
- exports.canonicalizeEntry = canonicalizeEntry;
112
- function canonicalizeAllow(a) {
105
+ export function canonicalizeAllow(a) {
113
106
  const allow = Array.isArray(a) ? a : a ? [a] : [];
114
107
  if (allow.includes('*')) {
115
108
  return '*';
116
109
  }
117
110
  return allow;
118
111
  }
119
- exports.canonicalizeAllow = canonicalizeAllow;
120
112
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,6 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.restrictImports = void 0;
4
- var restrict_imports_1 = require("./restrict-imports");
5
- Object.defineProperty(exports, "restrictImports", { enumerable: true, get: function () { return restrict_imports_1.restrictImports; } });
1
+ export { restrictImports } from './restrict-imports';
6
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,uDAAsE;AAA7D,mHAAA,eAAe,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAmB,MAAM,oBAAoB,CAAC"}
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.disallowZone = exports.allowZone = exports.getDisallow = exports.getAllow = exports.restrictImports_ = exports.restrictImports = void 0;
4
- const config_1 = require("./config");
1
+ import { canonicalizeConfig, validateRawConfig } from './config';
5
2
  /**
6
3
  * @param {string} base an absolute path
7
4
  * @param {Array<string>} modules
@@ -33,17 +30,16 @@ const config_1 = require("./config");
33
30
  * 1. The only available mask for both `name` and `allow` fields is '*'
34
31
  * 2. Order of entries is important to avoid circular dependencies between modules, module's dependency should be described *above* the module description. In the example, the 'common' module should be described *above* other modules. This rule also applies to the '*' mask, it should be described *before* it is using in other config entries.
35
32
  */
36
- function restrictImports(base, modules, config) {
37
- const validationError = (0, config_1.validateRawConfig)(config);
33
+ export function restrictImports(base, modules, config) {
34
+ const validationError = validateRawConfig(config);
38
35
  if (validationError) {
39
36
  throw new Error(validationError);
40
37
  }
41
- return restrictImports_(base, modules, (0, config_1.canonicalizeConfig)(config));
38
+ return restrictImports_(base, modules, canonicalizeConfig(config));
42
39
  }
43
- exports.restrictImports = restrictImports;
44
40
  // suppose we have '*' entry in the `config`
45
41
  // eslint-disable-next-line @typescript-eslint/naming-convention
46
- function restrictImports_(base, modules, config) {
42
+ export function restrictImports_(base, modules, config) {
47
43
  // eslint-disable-next-line @typescript-eslint/naming-convention
48
44
  const getAllow_ = getAllow(config);
49
45
  return modules.reduce((acc, name) => {
@@ -58,33 +54,28 @@ function restrictImports_(base, modules, config) {
58
54
  return acc;
59
55
  }, []);
60
56
  }
61
- exports.restrictImports_ = restrictImports_;
62
- function getAllow(c) {
57
+ export function getAllow(c) {
63
58
  const m = new Map(c.map(e => [e.name, e.allow]));
64
59
  return (name) => { var _a, _b; return (_b = (_a = m.get(name)) !== null && _a !== void 0 ? _a : m.get('*')) !== null && _b !== void 0 ? _b : []; };
65
60
  }
66
- exports.getAllow = getAllow;
67
- function getDisallow(c, name) {
61
+ export function getDisallow(c, name) {
68
62
  const names = c.map(c => c.name);
69
63
  const index = names.indexOf(name);
70
64
  return names.slice(index + 1);
71
65
  }
72
- exports.getDisallow = getDisallow;
73
- function allowZone(base, dirName, allow = []) {
66
+ export function allowZone(base, dirName, allow = []) {
74
67
  return {
75
68
  target: base + dirName,
76
69
  from: `${base}**/*`,
77
70
  except: [`${base}${toGlobList([dirName, ...allow])}/**/*`],
78
71
  };
79
72
  }
80
- exports.allowZone = allowZone;
81
- function disallowZone(base, dirName, disallow) {
73
+ export function disallowZone(base, dirName, disallow) {
82
74
  return {
83
75
  target: base + dirName,
84
76
  from: `${base}${toGlobList(disallow)}/**/*`,
85
77
  };
86
78
  }
87
- exports.disallowZone = disallowZone;
88
79
  const toGlobList = (items) => {
89
80
  if (!items.length) {
90
81
  return '';
@@ -1 +1 @@
1
- {"version":3,"file":"restrict-imports.js","sourceRoot":"","sources":["../src/restrict-imports.ts"],"names":[],"mappings":";;;AAAA,qCAAoF;AAEpF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,SAAgB,eAAe,CAC3B,IAAY,EACZ,OAAiB,EACjB,MAAkB;IAElB,MAAM,eAAe,GAAG,IAAA,0BAAiB,EAAC,MAAM,CAAC,CAAC;IAClD,IAAI,eAAe,EAAE;QACjB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;KACpC;IAED,OAAO,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAA,2BAAkB,EAAC,MAAM,CAAC,CAAC,CAAC;AACvE,CAAC;AAXD,0CAWC;AAED,4CAA4C;AAC5C,gEAAgE;AAChE,SAAgB,gBAAgB,CAAC,IAAY,EAAE,OAAiB,EAAE,MAAc;IAC5E,gEAAgE;IAChE,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEnC,OAAO,OAAO,CAAC,MAAM,CAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;QACnD,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,KAAK,KAAK,GAAG,EAAE;YACf,OAAO,CAAC,GAAG,GAAG,EAAE,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;SACjD;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC3C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACrB,OAAO,CAAC,GAAG,GAAG,EAAE,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;SACvD;QAED,OAAO,GAAG,CAAC;IACf,CAAC,EAAE,EAAE,CAAC,CAAC;AACX,CAAC;AAjBD,4CAiBC;AAED,SAAgB,QAAQ,CAAC,CAAS;IAC9B,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEjD,OAAO,CAAC,IAAY,EAAE,EAAE,eAAC,OAAA,MAAA,MAAA,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,mCAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,mCAAI,EAAE,CAAA,EAAA,CAAC;AAC7D,CAAC;AAJD,4BAIC;AAED,SAAgB,WAAW,CAAC,CAAS,EAAE,IAAY;IAC/C,MAAM,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAElC,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;AAClC,CAAC;AALD,kCAKC;AAED,SAAgB,SAAS,CAAC,IAAY,EAAE,OAAe,EAAE,QAAkB,EAAE;IACzE,OAAO;QACH,MAAM,EAAE,IAAI,GAAG,OAAO;QACtB,IAAI,EAAE,GAAG,IAAI,MAAM;QACnB,MAAM,EAAE,CAAC,GAAG,IAAI,GAAG,UAAU,CAAC,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC;KAC7D,CAAC;AACN,CAAC;AAND,8BAMC;AAED,SAAgB,YAAY,CAAC,IAAY,EAAE,OAAe,EAAE,QAAkB;IAC1E,OAAO;QACH,MAAM,EAAE,IAAI,GAAG,OAAO;QACtB,IAAI,EAAE,GAAG,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,OAAO;KAC9C,CAAC;AACN,CAAC;AALD,oCAKC;AAED,MAAM,UAAU,GAAG,CAAC,KAAe,EAAE,EAAE;IACnC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;QACf,OAAO,EAAE,CAAC;KACb;IAED,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IAE/C,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;QAC1B,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC;KACzB;IAED,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AACxC,CAAC,CAAC"}
1
+ {"version":3,"file":"restrict-imports.js","sourceRoot":"","sources":["../src/restrict-imports.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@servicetitan/restrict-imports",
3
- "version": "19.4.0",
3
+ "version": "20.0.0",
4
4
  "description": "",
5
5
  "repository": {
6
6
  "type": "git",
@@ -19,5 +19,5 @@
19
19
  "cli": {
20
20
  "webpack": false
21
21
  },
22
- "gitHead": "e0d513b1faedbdab6406eff719acc14dc8d4c68e"
22
+ "gitHead": "f4af5745b847bb20eeaffe74e5db6f3b8621ae55"
23
23
  }