@uptime.app/contracts 3.0.44 → 3.0.45

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.
@@ -0,0 +1,40 @@
1
+ export type AclQueryMode = 'included' | 'excluded' | 'all';
2
+ export interface ParsedAclEntry {
3
+ raw: string;
4
+ excluded: boolean;
5
+ namespace: string;
6
+ value: string | null;
7
+ }
8
+ export interface GetAclValuesOptions {
9
+ mode?: AclQueryMode;
10
+ dedupe?: boolean;
11
+ }
12
+ export interface BuildAclOptions {
13
+ includePublic?: boolean;
14
+ includeUser?: string;
15
+ baseAcl?: string[];
16
+ }
17
+ export declare function parseAclEntry(entry: string): ParsedAclEntry | null;
18
+ export declare function getAclValuesByNamespace(acl: string[], namespace: string, options?: GetAclValuesOptions): string[];
19
+ /**
20
+ * Backward-compatible helper:
21
+ * - default returns only included catalogue ids
22
+ * - pass { mode: 'all' } to include both includes and excludes
23
+ * - pass { mode: 'excluded' } to get only excluded catalogue ids
24
+ */
25
+ export declare function getCatalogueIdsFromAcl(acl: string[], options?: GetAclValuesOptions): string[];
26
+ export declare class AclBuilder {
27
+ private included;
28
+ private excluded;
29
+ constructor(options?: BuildAclOptions);
30
+ addRaw(entry: string): this;
31
+ addMany(entries: string[]): this;
32
+ allow(namespace: string, value?: string): this;
33
+ deny(namespace: string, value?: string): this;
34
+ allowCatalogue(catalogueId: string): this;
35
+ denyCatalogue(catalogueId: string): this;
36
+ allowOrganisation(organisationId: string): this;
37
+ denySubject(subject: string): this;
38
+ build(): string[];
39
+ }
40
+ //# sourceMappingURL=acl-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acl-utils.d.ts","sourceRoot":"","sources":["../../../src/acl/acl-utils.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,UAAU,GAAG,KAAK,CAAC;AAE3D,MAAM,WAAW,cAAc;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAChC,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAMD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAgClE;AAED,wBAAgB,uBAAuB,CACnC,GAAG,EAAE,MAAM,EAAE,EACb,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,mBAAwB,GAClC,MAAM,EAAE,CAqBV;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAClC,GAAG,EAAE,MAAM,EAAE,EACb,OAAO,GAAE,mBAAwB,GAClC,MAAM,EAAE,CAEV;AAED,qBAAa,UAAU;IACnB,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,QAAQ,CAAqB;gBAEzB,OAAO,GAAE,eAAoB;IAgBzC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAe3B,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAKhC,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAO9C,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAO7C,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAIzC,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAIxC,iBAAiB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAI/C,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIlC,KAAK,IAAI,MAAM,EAAE;CAMpB"}
@@ -0,0 +1,131 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AclBuilder = exports.getCatalogueIdsFromAcl = exports.getAclValuesByNamespace = exports.parseAclEntry = void 0;
4
+ function normalizeAclEntry(entry) {
5
+ return entry.trim();
6
+ }
7
+ function parseAclEntry(entry) {
8
+ const raw = normalizeAclEntry(entry);
9
+ if (!raw) {
10
+ return null;
11
+ }
12
+ const excluded = raw.startsWith('!');
13
+ const token = excluded ? raw.slice(1) : raw;
14
+ const firstColonIndex = token.indexOf(':');
15
+ if (firstColonIndex === -1) {
16
+ return {
17
+ raw,
18
+ excluded,
19
+ namespace: token,
20
+ value: null
21
+ };
22
+ }
23
+ const namespace = token.slice(0, firstColonIndex);
24
+ const value = token.slice(firstColonIndex + 1);
25
+ if (!namespace) {
26
+ return null;
27
+ }
28
+ return {
29
+ raw,
30
+ excluded,
31
+ namespace,
32
+ value
33
+ };
34
+ }
35
+ exports.parseAclEntry = parseAclEntry;
36
+ function getAclValuesByNamespace(acl, namespace, options = {}) {
37
+ const mode = options.mode ?? 'included';
38
+ const dedupe = options.dedupe ?? true;
39
+ const values = acl
40
+ .map(parseAclEntry)
41
+ .filter((entry) => Boolean(entry))
42
+ .filter(entry => entry.namespace === namespace)
43
+ .filter(entry => entry.value !== null)
44
+ .filter(entry => {
45
+ if (mode === 'all') {
46
+ return true;
47
+ }
48
+ if (mode === 'included') {
49
+ return !entry.excluded;
50
+ }
51
+ return entry.excluded;
52
+ })
53
+ .map(entry => entry.value);
54
+ return dedupe ? Array.from(new Set(values)) : values;
55
+ }
56
+ exports.getAclValuesByNamespace = getAclValuesByNamespace;
57
+ /**
58
+ * Backward-compatible helper:
59
+ * - default returns only included catalogue ids
60
+ * - pass { mode: 'all' } to include both includes and excludes
61
+ * - pass { mode: 'excluded' } to get only excluded catalogue ids
62
+ */
63
+ function getCatalogueIdsFromAcl(acl, options = {}) {
64
+ return getAclValuesByNamespace(acl, 'catalogue', options);
65
+ }
66
+ exports.getCatalogueIdsFromAcl = getCatalogueIdsFromAcl;
67
+ class AclBuilder {
68
+ constructor(options = {}) {
69
+ this.included = new Set();
70
+ this.excluded = new Set();
71
+ const includePublic = options.includePublic ?? true;
72
+ if (includePublic) {
73
+ this.included.add('public');
74
+ }
75
+ if (options.includeUser) {
76
+ this.included.add(`user:${options.includeUser}`);
77
+ }
78
+ if (options.baseAcl?.length) {
79
+ this.addMany(options.baseAcl);
80
+ }
81
+ }
82
+ addRaw(entry) {
83
+ const parsed = parseAclEntry(entry);
84
+ if (!parsed) {
85
+ return this;
86
+ }
87
+ if (parsed.excluded) {
88
+ this.excluded.add(parsed.raw.slice(1));
89
+ }
90
+ else {
91
+ this.included.add(parsed.raw);
92
+ }
93
+ return this;
94
+ }
95
+ addMany(entries) {
96
+ entries.forEach(entry => this.addRaw(entry));
97
+ return this;
98
+ }
99
+ allow(namespace, value) {
100
+ const token = value === undefined ? namespace : `${namespace}:${value}`;
101
+ this.included.add(token);
102
+ this.excluded.delete(token);
103
+ return this;
104
+ }
105
+ deny(namespace, value) {
106
+ const token = value === undefined ? namespace : `${namespace}:${value}`;
107
+ this.excluded.add(token);
108
+ this.included.delete(token);
109
+ return this;
110
+ }
111
+ allowCatalogue(catalogueId) {
112
+ return this.allow('catalogue', catalogueId);
113
+ }
114
+ denyCatalogue(catalogueId) {
115
+ return this.deny('catalogue', catalogueId);
116
+ }
117
+ allowOrganisation(organisationId) {
118
+ return this.allow('b2b', organisationId);
119
+ }
120
+ denySubject(subject) {
121
+ return this.deny('subject', subject);
122
+ }
123
+ build() {
124
+ return [
125
+ ...this.included,
126
+ ...Array.from(this.excluded).map(token => `!${token}`)
127
+ ];
128
+ }
129
+ }
130
+ exports.AclBuilder = AclBuilder;
131
+ //# sourceMappingURL=acl-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acl-utils.js","sourceRoot":"","sources":["../../../src/acl/acl-utils.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ export * from './acl/acl-utils';
1
2
  export * from './access-control/collection-access-control';
2
3
  export * from './access-control/hack-access-control';
3
4
  export * from './access-control/profile-access-control';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/cjs/index.js CHANGED
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./acl/acl-utils"), exports);
17
18
  __exportStar(require("./access-control/collection-access-control"), exports);
18
19
  __exportStar(require("./access-control/hack-access-control"), exports);
19
20
  __exportStar(require("./access-control/profile-access-control"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ export type AclQueryMode = 'included' | 'excluded' | 'all';
2
+ export interface ParsedAclEntry {
3
+ raw: string;
4
+ excluded: boolean;
5
+ namespace: string;
6
+ value: string | null;
7
+ }
8
+ export interface GetAclValuesOptions {
9
+ mode?: AclQueryMode;
10
+ dedupe?: boolean;
11
+ }
12
+ export interface BuildAclOptions {
13
+ includePublic?: boolean;
14
+ includeUser?: string;
15
+ baseAcl?: string[];
16
+ }
17
+ export declare function parseAclEntry(entry: string): ParsedAclEntry | null;
18
+ export declare function getAclValuesByNamespace(acl: string[], namespace: string, options?: GetAclValuesOptions): string[];
19
+ /**
20
+ * Backward-compatible helper:
21
+ * - default returns only included catalogue ids
22
+ * - pass { mode: 'all' } to include both includes and excludes
23
+ * - pass { mode: 'excluded' } to get only excluded catalogue ids
24
+ */
25
+ export declare function getCatalogueIdsFromAcl(acl: string[], options?: GetAclValuesOptions): string[];
26
+ export declare class AclBuilder {
27
+ private included;
28
+ private excluded;
29
+ constructor(options?: BuildAclOptions);
30
+ addRaw(entry: string): this;
31
+ addMany(entries: string[]): this;
32
+ allow(namespace: string, value?: string): this;
33
+ deny(namespace: string, value?: string): this;
34
+ allowCatalogue(catalogueId: string): this;
35
+ denyCatalogue(catalogueId: string): this;
36
+ allowOrganisation(organisationId: string): this;
37
+ denySubject(subject: string): this;
38
+ build(): string[];
39
+ }
40
+ //# sourceMappingURL=acl-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acl-utils.d.ts","sourceRoot":"","sources":["../../../src/acl/acl-utils.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,UAAU,GAAG,KAAK,CAAC;AAE3D,MAAM,WAAW,cAAc;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAChC,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAMD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAgClE;AAED,wBAAgB,uBAAuB,CACnC,GAAG,EAAE,MAAM,EAAE,EACb,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,mBAAwB,GAClC,MAAM,EAAE,CAqBV;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAClC,GAAG,EAAE,MAAM,EAAE,EACb,OAAO,GAAE,mBAAwB,GAClC,MAAM,EAAE,CAEV;AAED,qBAAa,UAAU;IACnB,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,QAAQ,CAAqB;gBAEzB,OAAO,GAAE,eAAoB;IAgBzC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAe3B,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAKhC,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAO9C,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAO7C,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAIzC,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAIxC,iBAAiB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAI/C,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIlC,KAAK,IAAI,MAAM,EAAE;CAMpB"}
@@ -0,0 +1,124 @@
1
+ function normalizeAclEntry(entry) {
2
+ return entry.trim();
3
+ }
4
+ export function parseAclEntry(entry) {
5
+ const raw = normalizeAclEntry(entry);
6
+ if (!raw) {
7
+ return null;
8
+ }
9
+ const excluded = raw.startsWith('!');
10
+ const token = excluded ? raw.slice(1) : raw;
11
+ const firstColonIndex = token.indexOf(':');
12
+ if (firstColonIndex === -1) {
13
+ return {
14
+ raw,
15
+ excluded,
16
+ namespace: token,
17
+ value: null
18
+ };
19
+ }
20
+ const namespace = token.slice(0, firstColonIndex);
21
+ const value = token.slice(firstColonIndex + 1);
22
+ if (!namespace) {
23
+ return null;
24
+ }
25
+ return {
26
+ raw,
27
+ excluded,
28
+ namespace,
29
+ value
30
+ };
31
+ }
32
+ export function getAclValuesByNamespace(acl, namespace, options = {}) {
33
+ const mode = options.mode ?? 'included';
34
+ const dedupe = options.dedupe ?? true;
35
+ const values = acl
36
+ .map(parseAclEntry)
37
+ .filter((entry) => Boolean(entry))
38
+ .filter(entry => entry.namespace === namespace)
39
+ .filter(entry => entry.value !== null)
40
+ .filter(entry => {
41
+ if (mode === 'all') {
42
+ return true;
43
+ }
44
+ if (mode === 'included') {
45
+ return !entry.excluded;
46
+ }
47
+ return entry.excluded;
48
+ })
49
+ .map(entry => entry.value);
50
+ return dedupe ? Array.from(new Set(values)) : values;
51
+ }
52
+ /**
53
+ * Backward-compatible helper:
54
+ * - default returns only included catalogue ids
55
+ * - pass { mode: 'all' } to include both includes and excludes
56
+ * - pass { mode: 'excluded' } to get only excluded catalogue ids
57
+ */
58
+ export function getCatalogueIdsFromAcl(acl, options = {}) {
59
+ return getAclValuesByNamespace(acl, 'catalogue', options);
60
+ }
61
+ export class AclBuilder {
62
+ constructor(options = {}) {
63
+ this.included = new Set();
64
+ this.excluded = new Set();
65
+ const includePublic = options.includePublic ?? true;
66
+ if (includePublic) {
67
+ this.included.add('public');
68
+ }
69
+ if (options.includeUser) {
70
+ this.included.add(`user:${options.includeUser}`);
71
+ }
72
+ if (options.baseAcl?.length) {
73
+ this.addMany(options.baseAcl);
74
+ }
75
+ }
76
+ addRaw(entry) {
77
+ const parsed = parseAclEntry(entry);
78
+ if (!parsed) {
79
+ return this;
80
+ }
81
+ if (parsed.excluded) {
82
+ this.excluded.add(parsed.raw.slice(1));
83
+ }
84
+ else {
85
+ this.included.add(parsed.raw);
86
+ }
87
+ return this;
88
+ }
89
+ addMany(entries) {
90
+ entries.forEach(entry => this.addRaw(entry));
91
+ return this;
92
+ }
93
+ allow(namespace, value) {
94
+ const token = value === undefined ? namespace : `${namespace}:${value}`;
95
+ this.included.add(token);
96
+ this.excluded.delete(token);
97
+ return this;
98
+ }
99
+ deny(namespace, value) {
100
+ const token = value === undefined ? namespace : `${namespace}:${value}`;
101
+ this.excluded.add(token);
102
+ this.included.delete(token);
103
+ return this;
104
+ }
105
+ allowCatalogue(catalogueId) {
106
+ return this.allow('catalogue', catalogueId);
107
+ }
108
+ denyCatalogue(catalogueId) {
109
+ return this.deny('catalogue', catalogueId);
110
+ }
111
+ allowOrganisation(organisationId) {
112
+ return this.allow('b2b', organisationId);
113
+ }
114
+ denySubject(subject) {
115
+ return this.deny('subject', subject);
116
+ }
117
+ build() {
118
+ return [
119
+ ...this.included,
120
+ ...Array.from(this.excluded).map(token => `!${token}`)
121
+ ];
122
+ }
123
+ }
124
+ //# sourceMappingURL=acl-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acl-utils.js","sourceRoot":"","sources":["../../../src/acl/acl-utils.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ export * from './acl/acl-utils';
1
2
  export * from './access-control/collection-access-control';
2
3
  export * from './access-control/hack-access-control';
3
4
  export * from './access-control/profile-access-control';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/esm/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ export * from './acl/acl-utils';
1
2
  export * from './access-control/collection-access-control';
2
3
  export * from './access-control/hack-access-control';
3
4
  export * from './access-control/profile-access-control';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uptime.app/contracts",
3
- "version": "3.0.44",
3
+ "version": "3.0.45",
4
4
  "license": "MIT",
5
5
  "types": "./dist/esm/index.d.ts",
6
6
  "main": "./dist/cjs/index.js",
@@ -14,5 +14,5 @@
14
14
  "devDependencies": {
15
15
  "typescript": "^5.4.3"
16
16
  },
17
- "gitHead": "690a44b197c03109de8a92750f5a8025e43cd799"
17
+ "gitHead": "8e8bf6e266cc2ed3f33da892db49db9158f6d3f6"
18
18
  }
@@ -0,0 +1,175 @@
1
+ export type AclQueryMode = 'included' | 'excluded' | 'all';
2
+
3
+ export interface ParsedAclEntry {
4
+ raw: string;
5
+ excluded: boolean;
6
+ namespace: string;
7
+ value: string | null;
8
+ }
9
+
10
+ export interface GetAclValuesOptions {
11
+ mode?: AclQueryMode;
12
+ dedupe?: boolean;
13
+ }
14
+
15
+ export interface BuildAclOptions {
16
+ includePublic?: boolean;
17
+ includeUser?: string;
18
+ baseAcl?: string[];
19
+ }
20
+
21
+ function normalizeAclEntry(entry: string): string {
22
+ return entry.trim();
23
+ }
24
+
25
+ export function parseAclEntry(entry: string): ParsedAclEntry | null {
26
+ const raw = normalizeAclEntry(entry);
27
+ if (!raw) {
28
+ return null;
29
+ }
30
+
31
+ const excluded = raw.startsWith('!');
32
+ const token = excluded ? raw.slice(1) : raw;
33
+ const firstColonIndex = token.indexOf(':');
34
+
35
+ if (firstColonIndex === -1) {
36
+ return {
37
+ raw,
38
+ excluded,
39
+ namespace: token,
40
+ value: null
41
+ };
42
+ }
43
+
44
+ const namespace = token.slice(0, firstColonIndex);
45
+ const value = token.slice(firstColonIndex + 1);
46
+
47
+ if (!namespace) {
48
+ return null;
49
+ }
50
+
51
+ return {
52
+ raw,
53
+ excluded,
54
+ namespace,
55
+ value
56
+ };
57
+ }
58
+
59
+ export function getAclValuesByNamespace(
60
+ acl: string[],
61
+ namespace: string,
62
+ options: GetAclValuesOptions = {}
63
+ ): string[] {
64
+ const mode = options.mode ?? 'included';
65
+ const dedupe = options.dedupe ?? true;
66
+
67
+ const values = acl
68
+ .map(parseAclEntry)
69
+ .filter((entry): entry is ParsedAclEntry => Boolean(entry))
70
+ .filter(entry => entry.namespace === namespace)
71
+ .filter(entry => entry.value !== null)
72
+ .filter(entry => {
73
+ if (mode === 'all') {
74
+ return true;
75
+ }
76
+ if (mode === 'included') {
77
+ return !entry.excluded;
78
+ }
79
+ return entry.excluded;
80
+ })
81
+ .map(entry => entry.value as string);
82
+
83
+ return dedupe ? Array.from(new Set(values)) : values;
84
+ }
85
+
86
+ /**
87
+ * Backward-compatible helper:
88
+ * - default returns only included catalogue ids
89
+ * - pass { mode: 'all' } to include both includes and excludes
90
+ * - pass { mode: 'excluded' } to get only excluded catalogue ids
91
+ */
92
+ export function getCatalogueIdsFromAcl(
93
+ acl: string[],
94
+ options: GetAclValuesOptions = {}
95
+ ): string[] {
96
+ return getAclValuesByNamespace(acl, 'catalogue', options);
97
+ }
98
+
99
+ export class AclBuilder {
100
+ private included = new Set<string>();
101
+ private excluded = new Set<string>();
102
+
103
+ constructor(options: BuildAclOptions = {}) {
104
+ const includePublic = options.includePublic ?? true;
105
+
106
+ if (includePublic) {
107
+ this.included.add('public');
108
+ }
109
+
110
+ if (options.includeUser) {
111
+ this.included.add(`user:${options.includeUser}`);
112
+ }
113
+
114
+ if (options.baseAcl?.length) {
115
+ this.addMany(options.baseAcl);
116
+ }
117
+ }
118
+
119
+ addRaw(entry: string): this {
120
+ const parsed = parseAclEntry(entry);
121
+ if (!parsed) {
122
+ return this;
123
+ }
124
+
125
+ if (parsed.excluded) {
126
+ this.excluded.add(parsed.raw.slice(1));
127
+ } else {
128
+ this.included.add(parsed.raw);
129
+ }
130
+
131
+ return this;
132
+ }
133
+
134
+ addMany(entries: string[]): this {
135
+ entries.forEach(entry => this.addRaw(entry));
136
+ return this;
137
+ }
138
+
139
+ allow(namespace: string, value?: string): this {
140
+ const token = value === undefined ? namespace : `${namespace}:${value}`;
141
+ this.included.add(token);
142
+ this.excluded.delete(token);
143
+ return this;
144
+ }
145
+
146
+ deny(namespace: string, value?: string): this {
147
+ const token = value === undefined ? namespace : `${namespace}:${value}`;
148
+ this.excluded.add(token);
149
+ this.included.delete(token);
150
+ return this;
151
+ }
152
+
153
+ allowCatalogue(catalogueId: string): this {
154
+ return this.allow('catalogue', catalogueId);
155
+ }
156
+
157
+ denyCatalogue(catalogueId: string): this {
158
+ return this.deny('catalogue', catalogueId);
159
+ }
160
+
161
+ allowOrganisation(organisationId: string): this {
162
+ return this.allow('b2b', organisationId);
163
+ }
164
+
165
+ denySubject(subject: string): this {
166
+ return this.deny('subject', subject);
167
+ }
168
+
169
+ build(): string[] {
170
+ return [
171
+ ...this.included,
172
+ ...Array.from(this.excluded).map(token => `!${token}`)
173
+ ];
174
+ }
175
+ }
package/src/index.ts CHANGED
@@ -1,3 +1,5 @@
1
+ export * from './acl/acl-utils';
2
+
1
3
  export * from './access-control/collection-access-control';
2
4
  export * from './access-control/hack-access-control';
3
5
  export * from './access-control/profile-access-control';