@servicetitan/restrict-imports 20.0.0 → 20.0.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.
package/dist/config.js CHANGED
@@ -1,13 +1,16 @@
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;
1
4
  /**
2
5
  * validateRawConfig
3
6
  */
4
- export function validateRawConfig(maybeConfig) {
7
+ function validateRawConfig(maybeConfig) {
5
8
  if (maybeConfig === undefined) {
6
9
  return false;
7
10
  }
8
11
  if (!Array.isArray(maybeConfig)) {
9
12
  if (validateRawEntry(maybeConfig)) {
10
- return InvalidConfig.ExpectedAnArrayOrASingleEntry;
13
+ return exports.InvalidConfig.ExpectedAnArrayOrASingleEntry;
11
14
  }
12
15
  return false;
13
16
  }
@@ -26,7 +29,7 @@ export function validateRawConfig(maybeConfig) {
26
29
  const entry = c0[index];
27
30
  const error = validateRawEntry(entry);
28
31
  if (error) {
29
- return InvalidConfig.InvalidEntry(index, entry, error);
32
+ return exports.InvalidConfig.InvalidEntry(index, entry, error);
30
33
  }
31
34
  }
32
35
  return false;
@@ -40,19 +43,20 @@ export function validateRawConfig(maybeConfig) {
40
43
  const allow = allow0 === '*' ? [allow0] : allow0;
41
44
  const unavailable = allow.find(n => !available.has(n) && !available.has('*'));
42
45
  if (unavailable) {
43
- return InvalidConfig.InvalidOrder(index, entry, unavailable);
46
+ return exports.InvalidConfig.InvalidOrder(index, entry, unavailable);
44
47
  }
45
48
  }
46
49
  return false;
47
50
  }
48
51
  }
49
- export const InvalidConfig = {
52
+ exports.validateRawConfig = validateRawConfig;
53
+ exports.InvalidConfig = {
50
54
  ExpectedAnArrayOrASingleEntry: 'Expected an array of config entries, or a single entry',
51
55
  InvalidEntry: (index, entry, error) => `Invalid entry #${index} (${JSON.stringify(entry)}): ${error}`,
52
56
  InvalidOrder: (index, entry, unavailable) => `Invalid entries order, #${index} (${JSON.stringify(entry)}):` +
53
57
  ` '${unavailable}' is used before its description`,
54
58
  };
55
- export function validateRawEntry(e) {
59
+ function validateRawEntry(e) {
56
60
  if (!isPlainObject(e)) {
57
61
  return InvalidEntry.ExpectedAPlainObject;
58
62
  }
@@ -81,32 +85,36 @@ export function validateRawEntry(e) {
81
85
  return !allow.some(v => typeof v !== 'string');
82
86
  }
83
87
  }
84
- export var InvalidEntry;
88
+ exports.validateRawEntry = validateRawEntry;
89
+ var InvalidEntry;
85
90
  (function (InvalidEntry) {
86
91
  InvalidEntry["ExpectedAPlainObject"] = "Expected a plain object with fields `name` and `allow`";
87
92
  InvalidEntry["InvalidName"] = "The `name` field is expected to be `string`";
88
93
  InvalidEntry["InvalidAllow"] = "The `allow` field is expected to be `string|string[]|undefined`";
89
- })(InvalidEntry || (InvalidEntry = {}));
94
+ })(InvalidEntry = exports.InvalidEntry || (exports.InvalidEntry = {}));
90
95
  /**
91
96
  * canonicalizeConfig
92
97
  */
93
- export function canonicalizeConfig(c = []) {
98
+ function canonicalizeConfig(c = []) {
94
99
  if (Array.isArray(c)) {
95
100
  return c.map(canonicalizeEntry);
96
101
  }
97
102
  return [canonicalizeEntry(c)];
98
103
  }
99
- export function canonicalizeEntry(e) {
104
+ exports.canonicalizeConfig = canonicalizeConfig;
105
+ function canonicalizeEntry(e) {
100
106
  return {
101
107
  name: e.name,
102
108
  allow: canonicalizeAllow(e.allow),
103
109
  };
104
110
  }
105
- export function canonicalizeAllow(a) {
111
+ exports.canonicalizeEntry = canonicalizeEntry;
112
+ function canonicalizeAllow(a) {
106
113
  const allow = Array.isArray(a) ? a : a ? [a] : [];
107
114
  if (allow.includes('*')) {
108
115
  return '*';
109
116
  }
110
117
  return allow;
111
118
  }
119
+ exports.canonicalizeAllow = canonicalizeAllow;
112
120
  //# 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,2 +1,6 @@
1
- export { restrictImports } from './restrict-imports';
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; } });
2
6
  //# 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,OAAO,EAAE,eAAe,EAAmB,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,uDAAsE;AAA7D,mHAAA,eAAe,OAAA"}
@@ -1,4 +1,7 @@
1
- import { canonicalizeConfig, validateRawConfig } from './config';
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");
2
5
  /**
3
6
  * @param {string} base an absolute path
4
7
  * @param {Array<string>} modules
@@ -30,16 +33,17 @@ import { canonicalizeConfig, validateRawConfig } from './config';
30
33
  * 1. The only available mask for both `name` and `allow` fields is '*'
31
34
  * 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.
32
35
  */
33
- export function restrictImports(base, modules, config) {
34
- const validationError = validateRawConfig(config);
36
+ function restrictImports(base, modules, config) {
37
+ const validationError = (0, config_1.validateRawConfig)(config);
35
38
  if (validationError) {
36
39
  throw new Error(validationError);
37
40
  }
38
- return restrictImports_(base, modules, canonicalizeConfig(config));
41
+ return restrictImports_(base, modules, (0, config_1.canonicalizeConfig)(config));
39
42
  }
43
+ exports.restrictImports = restrictImports;
40
44
  // suppose we have '*' entry in the `config`
41
45
  // eslint-disable-next-line @typescript-eslint/naming-convention
42
- export function restrictImports_(base, modules, config) {
46
+ function restrictImports_(base, modules, config) {
43
47
  // eslint-disable-next-line @typescript-eslint/naming-convention
44
48
  const getAllow_ = getAllow(config);
45
49
  return modules.reduce((acc, name) => {
@@ -54,28 +58,33 @@ export function restrictImports_(base, modules, config) {
54
58
  return acc;
55
59
  }, []);
56
60
  }
57
- export function getAllow(c) {
61
+ exports.restrictImports_ = restrictImports_;
62
+ function getAllow(c) {
58
63
  const m = new Map(c.map(e => [e.name, e.allow]));
59
64
  return (name) => { var _a, _b; return (_b = (_a = m.get(name)) !== null && _a !== void 0 ? _a : m.get('*')) !== null && _b !== void 0 ? _b : []; };
60
65
  }
61
- export function getDisallow(c, name) {
66
+ exports.getAllow = getAllow;
67
+ function getDisallow(c, name) {
62
68
  const names = c.map(c => c.name);
63
69
  const index = names.indexOf(name);
64
70
  return names.slice(index + 1);
65
71
  }
66
- export function allowZone(base, dirName, allow = []) {
72
+ exports.getDisallow = getDisallow;
73
+ function allowZone(base, dirName, allow = []) {
67
74
  return {
68
75
  target: base + dirName,
69
76
  from: `${base}**/*`,
70
77
  except: [`${base}${toGlobList([dirName, ...allow])}/**/*`],
71
78
  };
72
79
  }
73
- export function disallowZone(base, dirName, disallow) {
80
+ exports.allowZone = allowZone;
81
+ function disallowZone(base, dirName, disallow) {
74
82
  return {
75
83
  target: base + dirName,
76
84
  from: `${base}${toGlobList(disallow)}/**/*`,
77
85
  };
78
86
  }
87
+ exports.disallowZone = disallowZone;
79
88
  const toGlobList = (items) => {
80
89
  if (!items.length) {
81
90
  return '';
@@ -1 +1 @@
1
- {"version":3,"file":"restrict-imports.js","sourceRoot":"","sources":["../src/restrict-imports.ts"],"names":[],"mappings":"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"}
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": "20.0.0",
3
+ "version": "20.0.1",
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": "f4af5745b847bb20eeaffe74e5db6f3b8621ae55"
22
+ "gitHead": "0c0dc470ff92789389bbb96a8e867ecd439a1509"
23
23
  }