@naylence/advanced-security 0.3.14 → 0.4.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.
Files changed (136) hide show
  1. package/dist/browser/index.cjs +5813 -3134
  2. package/dist/browser/index.mjs +5837 -3158
  3. package/dist/cjs/advanced-security-isomorphic.js +4 -0
  4. package/dist/cjs/advanced-security-isomorphic.js.map +1 -1
  5. package/dist/cjs/browser.js +11 -0
  6. package/dist/cjs/browser.js.map +1 -1
  7. package/dist/cjs/naylence/fame/expr/ast.js +135 -0
  8. package/dist/cjs/naylence/fame/expr/ast.js.map +1 -0
  9. package/dist/cjs/naylence/fame/expr/builtins.js +477 -0
  10. package/dist/cjs/naylence/fame/expr/builtins.js.map +1 -0
  11. package/dist/cjs/naylence/fame/expr/errors.js +88 -0
  12. package/dist/cjs/naylence/fame/expr/errors.js.map +1 -0
  13. package/dist/cjs/naylence/fame/expr/evaluator.js +385 -0
  14. package/dist/cjs/naylence/fame/expr/evaluator.js.map +1 -0
  15. package/dist/cjs/naylence/fame/expr/index.js +21 -0
  16. package/dist/cjs/naylence/fame/expr/index.js.map +1 -0
  17. package/dist/cjs/naylence/fame/expr/limits.js +80 -0
  18. package/dist/cjs/naylence/fame/expr/limits.js.map +1 -0
  19. package/dist/cjs/naylence/fame/expr/parser.js +429 -0
  20. package/dist/cjs/naylence/fame/expr/parser.js.map +1 -0
  21. package/dist/cjs/naylence/fame/expr/tokenizer.js +336 -0
  22. package/dist/cjs/naylence/fame/expr/tokenizer.js.map +1 -0
  23. package/dist/cjs/naylence/fame/factory-manifest.js +2 -0
  24. package/dist/cjs/naylence/fame/factory-manifest.js.map +1 -1
  25. package/dist/cjs/naylence/fame/security/auth/index.js +7 -0
  26. package/dist/cjs/naylence/fame/security/auth/index.js.map +1 -0
  27. package/dist/cjs/naylence/fame/security/auth/policy/advanced-authorization-policy-factory.js +70 -0
  28. package/dist/cjs/naylence/fame/security/auth/policy/advanced-authorization-policy-factory.js.map +1 -0
  29. package/dist/cjs/naylence/fame/security/auth/policy/advanced-authorization-policy.js +562 -0
  30. package/dist/cjs/naylence/fame/security/auth/policy/advanced-authorization-policy.js.map +1 -0
  31. package/dist/cjs/naylence/fame/security/auth/policy/expr-builtins.js +129 -0
  32. package/dist/cjs/naylence/fame/security/auth/policy/expr-builtins.js.map +1 -0
  33. package/dist/cjs/naylence/fame/security/auth/policy/index.js +15 -0
  34. package/dist/cjs/naylence/fame/security/auth/policy/index.js.map +1 -0
  35. package/dist/cjs/naylence/fame/security/index.js +2 -0
  36. package/dist/cjs/naylence/fame/security/index.js.map +1 -1
  37. package/dist/cjs/naylence/fame/security/register-advanced-security-factories.js +2 -0
  38. package/dist/cjs/naylence/fame/security/register-advanced-security-factories.js.map +1 -1
  39. package/dist/cjs/naylence/fame/security/strict-overlay-security-profile.js +64 -0
  40. package/dist/cjs/naylence/fame/security/strict-overlay-security-profile.js.map +1 -0
  41. package/dist/cjs/node.js +27 -0
  42. package/dist/cjs/node.js.map +1 -1
  43. package/dist/cjs/plugin.js +2 -0
  44. package/dist/cjs/plugin.js.map +1 -1
  45. package/dist/cjs/version.js +2 -2
  46. package/dist/cjs/version.js.map +1 -1
  47. package/dist/esm/advanced-security-isomorphic.js +4 -0
  48. package/dist/esm/advanced-security-isomorphic.js.map +1 -1
  49. package/dist/esm/browser.js +11 -0
  50. package/dist/esm/browser.js.map +1 -1
  51. package/dist/esm/naylence/fame/expr/ast.js +135 -0
  52. package/dist/esm/naylence/fame/expr/ast.js.map +1 -0
  53. package/dist/esm/naylence/fame/expr/builtins.js +477 -0
  54. package/dist/esm/naylence/fame/expr/builtins.js.map +1 -0
  55. package/dist/esm/naylence/fame/expr/errors.js +88 -0
  56. package/dist/esm/naylence/fame/expr/errors.js.map +1 -0
  57. package/dist/esm/naylence/fame/expr/evaluator.js +385 -0
  58. package/dist/esm/naylence/fame/expr/evaluator.js.map +1 -0
  59. package/dist/esm/naylence/fame/expr/index.js +21 -0
  60. package/dist/esm/naylence/fame/expr/index.js.map +1 -0
  61. package/dist/esm/naylence/fame/expr/limits.js +80 -0
  62. package/dist/esm/naylence/fame/expr/limits.js.map +1 -0
  63. package/dist/esm/naylence/fame/expr/parser.js +429 -0
  64. package/dist/esm/naylence/fame/expr/parser.js.map +1 -0
  65. package/dist/esm/naylence/fame/expr/tokenizer.js +336 -0
  66. package/dist/esm/naylence/fame/expr/tokenizer.js.map +1 -0
  67. package/dist/esm/naylence/fame/factory-manifest.js +2 -0
  68. package/dist/esm/naylence/fame/factory-manifest.js.map +1 -1
  69. package/dist/esm/naylence/fame/security/auth/index.js +7 -0
  70. package/dist/esm/naylence/fame/security/auth/index.js.map +1 -0
  71. package/dist/esm/naylence/fame/security/auth/policy/advanced-authorization-policy-factory.js +70 -0
  72. package/dist/esm/naylence/fame/security/auth/policy/advanced-authorization-policy-factory.js.map +1 -0
  73. package/dist/esm/naylence/fame/security/auth/policy/advanced-authorization-policy.js +562 -0
  74. package/dist/esm/naylence/fame/security/auth/policy/advanced-authorization-policy.js.map +1 -0
  75. package/dist/esm/naylence/fame/security/auth/policy/expr-builtins.js +129 -0
  76. package/dist/esm/naylence/fame/security/auth/policy/expr-builtins.js.map +1 -0
  77. package/dist/esm/naylence/fame/security/auth/policy/index.js +15 -0
  78. package/dist/esm/naylence/fame/security/auth/policy/index.js.map +1 -0
  79. package/dist/esm/naylence/fame/security/index.js +2 -0
  80. package/dist/esm/naylence/fame/security/index.js.map +1 -1
  81. package/dist/esm/naylence/fame/security/register-advanced-security-factories.js +2 -0
  82. package/dist/esm/naylence/fame/security/register-advanced-security-factories.js.map +1 -1
  83. package/dist/esm/naylence/fame/security/strict-overlay-security-profile.js +64 -0
  84. package/dist/esm/naylence/fame/security/strict-overlay-security-profile.js.map +1 -0
  85. package/dist/esm/node.js +27 -0
  86. package/dist/esm/node.js.map +1 -1
  87. package/dist/esm/plugin.js +2 -0
  88. package/dist/esm/plugin.js.map +1 -1
  89. package/dist/esm/version.js +2 -2
  90. package/dist/esm/version.js.map +1 -1
  91. package/dist/node/index.cjs +2795 -6
  92. package/dist/node/index.mjs +2770 -15
  93. package/dist/node/node.cjs +6083 -3241
  94. package/dist/node/node.mjs +8347 -5540
  95. package/dist/types/advanced-security-isomorphic.d.ts +2 -0
  96. package/dist/types/advanced-security-isomorphic.d.ts.map +1 -1
  97. package/dist/types/browser.d.ts.map +1 -1
  98. package/dist/types/naylence/fame/expr/ast.d.ts +85 -0
  99. package/dist/types/naylence/fame/expr/ast.d.ts.map +1 -0
  100. package/dist/types/naylence/fame/expr/builtins.d.ts +79 -0
  101. package/dist/types/naylence/fame/expr/builtins.d.ts.map +1 -0
  102. package/dist/types/naylence/fame/expr/errors.d.ts +61 -0
  103. package/dist/types/naylence/fame/expr/errors.d.ts.map +1 -0
  104. package/dist/types/naylence/fame/expr/evaluator.d.ts +90 -0
  105. package/dist/types/naylence/fame/expr/evaluator.d.ts.map +1 -0
  106. package/dist/types/naylence/fame/expr/index.d.ts +16 -0
  107. package/dist/types/naylence/fame/expr/index.d.ts.map +1 -0
  108. package/dist/types/naylence/fame/expr/limits.d.ts +65 -0
  109. package/dist/types/naylence/fame/expr/limits.d.ts.map +1 -0
  110. package/dist/types/naylence/fame/expr/parser.d.ts +102 -0
  111. package/dist/types/naylence/fame/expr/parser.d.ts.map +1 -0
  112. package/dist/types/naylence/fame/expr/tokenizer.d.ts +51 -0
  113. package/dist/types/naylence/fame/expr/tokenizer.d.ts.map +1 -0
  114. package/dist/types/naylence/fame/factory-manifest.d.ts +1 -1
  115. package/dist/types/naylence/fame/factory-manifest.d.ts.map +1 -1
  116. package/dist/types/naylence/fame/security/auth/index.d.ts +7 -0
  117. package/dist/types/naylence/fame/security/auth/index.d.ts.map +1 -0
  118. package/dist/types/naylence/fame/security/auth/policy/advanced-authorization-policy-factory.d.ts +47 -0
  119. package/dist/types/naylence/fame/security/auth/policy/advanced-authorization-policy-factory.d.ts.map +1 -0
  120. package/dist/types/naylence/fame/security/auth/policy/advanced-authorization-policy.d.ts +73 -0
  121. package/dist/types/naylence/fame/security/auth/policy/advanced-authorization-policy.d.ts.map +1 -0
  122. package/dist/types/naylence/fame/security/auth/policy/expr-builtins.d.ts +14 -0
  123. package/dist/types/naylence/fame/security/auth/policy/expr-builtins.d.ts.map +1 -0
  124. package/dist/types/naylence/fame/security/auth/policy/index.d.ts +12 -0
  125. package/dist/types/naylence/fame/security/auth/policy/index.d.ts.map +1 -0
  126. package/dist/types/naylence/fame/security/index.d.ts +2 -0
  127. package/dist/types/naylence/fame/security/index.d.ts.map +1 -1
  128. package/dist/types/naylence/fame/security/register-advanced-security-factories.d.ts +1 -0
  129. package/dist/types/naylence/fame/security/register-advanced-security-factories.d.ts.map +1 -1
  130. package/dist/types/naylence/fame/security/strict-overlay-security-profile.d.ts +11 -0
  131. package/dist/types/naylence/fame/security/strict-overlay-security-profile.d.ts.map +1 -0
  132. package/dist/types/node.d.ts.map +1 -1
  133. package/dist/types/plugin.d.ts.map +1 -1
  134. package/dist/types/version.d.ts +1 -1
  135. package/dist/types/version.d.ts.map +1 -1
  136. package/package.json +3 -3
@@ -0,0 +1,336 @@
1
+ /**
2
+ * Tokenizer (lexer) for the expression language.
3
+ *
4
+ * Converts expression strings into a stream of tokens for the parser.
5
+ */
6
+ import { TokenizerError } from "./errors.js";
7
+ import { checkExpressionLength } from "./limits.js";
8
+ /**
9
+ * Keywords recognized by the tokenizer.
10
+ */
11
+ const KEYWORDS = new Map([
12
+ ["true", "TRUE"],
13
+ ["false", "FALSE"],
14
+ ["null", "NULL"],
15
+ ["in", "IN"],
16
+ ["not", "NOT"],
17
+ ]);
18
+ /**
19
+ * Checks if a character is a digit.
20
+ */
21
+ function isDigit(ch) {
22
+ return ch >= "0" && ch <= "9";
23
+ }
24
+ /**
25
+ * Checks if a character can start an identifier.
26
+ */
27
+ function isIdentifierStart(ch) {
28
+ return ((ch >= "a" && ch <= "z") ||
29
+ (ch >= "A" && ch <= "Z") ||
30
+ ch === "_");
31
+ }
32
+ /**
33
+ * Checks if a character can continue an identifier.
34
+ */
35
+ function isIdentifierPart(ch) {
36
+ return isIdentifierStart(ch) || isDigit(ch);
37
+ }
38
+ /**
39
+ * Checks if a character is whitespace.
40
+ */
41
+ function isWhitespace(ch) {
42
+ return ch === " " || ch === "\t" || ch === "\n" || ch === "\r";
43
+ }
44
+ /**
45
+ * Tokenizer for expression strings.
46
+ */
47
+ export class Tokenizer {
48
+ constructor(source, limits) {
49
+ this.position = 0;
50
+ this.tokens = [];
51
+ this.source = source;
52
+ this.limits = limits;
53
+ }
54
+ /**
55
+ * Tokenizes the source expression and returns all tokens.
56
+ */
57
+ tokenize() {
58
+ checkExpressionLength(this.source, this.limits);
59
+ while (!this.isAtEnd()) {
60
+ this.scanToken();
61
+ }
62
+ this.tokens.push({
63
+ type: "EOF",
64
+ value: "",
65
+ position: this.position,
66
+ });
67
+ return this.tokens;
68
+ }
69
+ isAtEnd() {
70
+ return this.position >= this.source.length;
71
+ }
72
+ peek() {
73
+ if (this.isAtEnd())
74
+ return "\0";
75
+ return this.source[this.position];
76
+ }
77
+ peekNext() {
78
+ if (this.position + 1 >= this.source.length)
79
+ return "\0";
80
+ return this.source[this.position + 1];
81
+ }
82
+ advance() {
83
+ return this.source[this.position++];
84
+ }
85
+ addToken(type, value, position) {
86
+ this.tokens.push({ type, value, position });
87
+ }
88
+ scanToken() {
89
+ const ch = this.advance();
90
+ const startPosition = this.position - 1;
91
+ // Skip whitespace
92
+ if (isWhitespace(ch)) {
93
+ return;
94
+ }
95
+ // Single-character tokens
96
+ switch (ch) {
97
+ case "(":
98
+ this.addToken("LPAREN", "(", startPosition);
99
+ return;
100
+ case ")":
101
+ this.addToken("RPAREN", ")", startPosition);
102
+ return;
103
+ case "[":
104
+ this.addToken("LBRACKET", "[", startPosition);
105
+ return;
106
+ case "]":
107
+ this.addToken("RBRACKET", "]", startPosition);
108
+ return;
109
+ case ".":
110
+ this.addToken("DOT", ".", startPosition);
111
+ return;
112
+ case ",":
113
+ this.addToken("COMMA", ",", startPosition);
114
+ return;
115
+ case "+":
116
+ this.addToken("PLUS", "+", startPosition);
117
+ return;
118
+ case "-":
119
+ this.addToken("MINUS", "-", startPosition);
120
+ return;
121
+ case "*":
122
+ this.addToken("STAR", "*", startPosition);
123
+ return;
124
+ case "/":
125
+ this.addToken("SLASH", "/", startPosition);
126
+ return;
127
+ case "%":
128
+ this.addToken("PERCENT", "%", startPosition);
129
+ return;
130
+ case "?":
131
+ this.addToken("QUESTION", "?", startPosition);
132
+ return;
133
+ case ":":
134
+ this.addToken("COLON", ":", startPosition);
135
+ return;
136
+ }
137
+ // Two-character operators
138
+ if (ch === "<") {
139
+ if (this.peek() === "=") {
140
+ this.advance();
141
+ this.addToken("LE", "<=", startPosition);
142
+ }
143
+ else {
144
+ this.addToken("LT", "<", startPosition);
145
+ }
146
+ return;
147
+ }
148
+ if (ch === ">") {
149
+ if (this.peek() === "=") {
150
+ this.advance();
151
+ this.addToken("GE", ">=", startPosition);
152
+ }
153
+ else {
154
+ this.addToken("GT", ">", startPosition);
155
+ }
156
+ return;
157
+ }
158
+ if (ch === "=") {
159
+ if (this.peek() === "=") {
160
+ this.advance();
161
+ this.addToken("EQ", "==", startPosition);
162
+ return;
163
+ }
164
+ throw new TokenizerError("Unexpected '='. Did you mean '=='?", startPosition, this.source);
165
+ }
166
+ if (ch === "!") {
167
+ if (this.peek() === "=") {
168
+ this.advance();
169
+ this.addToken("NE", "!=", startPosition);
170
+ }
171
+ else {
172
+ this.addToken("NOT", "!", startPosition);
173
+ }
174
+ return;
175
+ }
176
+ if (ch === "&") {
177
+ if (this.peek() === "&") {
178
+ this.advance();
179
+ this.addToken("AND", "&&", startPosition);
180
+ return;
181
+ }
182
+ throw new TokenizerError("Unexpected '&'. Did you mean '&&'?", startPosition, this.source);
183
+ }
184
+ if (ch === "|") {
185
+ if (this.peek() === "|") {
186
+ this.advance();
187
+ this.addToken("OR", "||", startPosition);
188
+ return;
189
+ }
190
+ throw new TokenizerError("Unexpected '|'. Did you mean '||'?", startPosition, this.source);
191
+ }
192
+ // String literals
193
+ if (ch === '"' || ch === "'") {
194
+ this.scanString(ch, startPosition);
195
+ return;
196
+ }
197
+ // Number literals
198
+ if (isDigit(ch)) {
199
+ this.scanNumber(startPosition);
200
+ return;
201
+ }
202
+ // Identifiers and keywords
203
+ if (isIdentifierStart(ch)) {
204
+ this.scanIdentifier(startPosition);
205
+ return;
206
+ }
207
+ throw new TokenizerError(`Unexpected character: '${ch}'`, startPosition, this.source);
208
+ }
209
+ scanString(quote, startPosition) {
210
+ let value = "";
211
+ while (!this.isAtEnd() && this.peek() !== quote) {
212
+ const ch = this.advance();
213
+ if (ch === "\\") {
214
+ // Escape sequence
215
+ if (this.isAtEnd()) {
216
+ throw new TokenizerError("Unterminated string", startPosition, this.source);
217
+ }
218
+ const escaped = this.advance();
219
+ switch (escaped) {
220
+ case "n":
221
+ value += "\n";
222
+ break;
223
+ case "r":
224
+ value += "\r";
225
+ break;
226
+ case "t":
227
+ value += "\t";
228
+ break;
229
+ case "\\":
230
+ value += "\\";
231
+ break;
232
+ case '"':
233
+ value += '"';
234
+ break;
235
+ case "'":
236
+ value += "'";
237
+ break;
238
+ default:
239
+ throw new TokenizerError(`Invalid escape sequence: \\${escaped}`, this.position - 2, this.source);
240
+ }
241
+ }
242
+ else if (ch === "\n" || ch === "\r") {
243
+ throw new TokenizerError("Unterminated string (newline in string literal)", startPosition, this.source);
244
+ }
245
+ else {
246
+ value += ch;
247
+ }
248
+ }
249
+ if (this.isAtEnd()) {
250
+ throw new TokenizerError("Unterminated string", startPosition, this.source);
251
+ }
252
+ // Consume closing quote
253
+ this.advance();
254
+ this.addToken("STRING", value, startPosition);
255
+ }
256
+ scanNumber(startPosition) {
257
+ // Back up to include the first digit
258
+ this.position--;
259
+ let value = "";
260
+ // Integer part
261
+ while (isDigit(this.peek())) {
262
+ value += this.advance();
263
+ }
264
+ // Fractional part
265
+ if (this.peek() === "." && isDigit(this.peekNext())) {
266
+ value += this.advance(); // consume '.'
267
+ while (isDigit(this.peek())) {
268
+ value += this.advance();
269
+ }
270
+ }
271
+ // Exponent part
272
+ if (this.peek() === "e" || this.peek() === "E") {
273
+ value += this.advance();
274
+ if (this.peek() === "+" || this.peek() === "-") {
275
+ value += this.advance();
276
+ }
277
+ if (!isDigit(this.peek())) {
278
+ throw new TokenizerError("Invalid number: expected exponent digits", startPosition, this.source);
279
+ }
280
+ while (isDigit(this.peek())) {
281
+ value += this.advance();
282
+ }
283
+ }
284
+ this.addToken("NUMBER", value, startPosition);
285
+ }
286
+ scanIdentifier(startPosition) {
287
+ // Back up to include the first character
288
+ this.position--;
289
+ let value = "";
290
+ while (isIdentifierPart(this.peek())) {
291
+ value += this.advance();
292
+ }
293
+ // Check for "not in" compound keyword
294
+ const valueLower = value.toLowerCase();
295
+ if (valueLower === "not") {
296
+ // Check if followed by whitespace and "in"
297
+ const savedPosition = this.position;
298
+ // Skip whitespace
299
+ while (isWhitespace(this.peek())) {
300
+ this.advance();
301
+ }
302
+ // Check for "in"
303
+ if (this.peek() === "i" &&
304
+ this.peekNext() === "n" &&
305
+ !isIdentifierPart(this.source[this.position + 2] ?? "\0")) {
306
+ this.advance(); // consume 'i'
307
+ this.advance(); // consume 'n'
308
+ this.addToken("NOT_IN", "not in", startPosition);
309
+ return;
310
+ }
311
+ // Not "not in", restore position
312
+ this.position = savedPosition;
313
+ }
314
+ // Check for keyword
315
+ const keywordType = KEYWORDS.get(valueLower);
316
+ if (keywordType) {
317
+ this.addToken(keywordType, value, startPosition);
318
+ }
319
+ else {
320
+ this.addToken("IDENTIFIER", value, startPosition);
321
+ }
322
+ }
323
+ }
324
+ /**
325
+ * Tokenizes an expression string into tokens.
326
+ *
327
+ * @param source - The expression string to tokenize
328
+ * @param limits - Optional expression limits
329
+ * @returns Array of tokens
330
+ * @throws TokenizerError if the expression contains invalid tokens
331
+ */
332
+ export function tokenize(source, limits) {
333
+ const tokenizer = new Tokenizer(source, limits);
334
+ return tokenizer.tokenize();
335
+ }
336
+ //# sourceMappingURL=tokenizer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenizer.js","sourceRoot":"","sources":["../../../../../src/naylence/fame/expr/tokenizer.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@
5
5
  * Provides the list of advanced security factory modules for registration.
6
6
  */
7
7
  export const MODULES = [
8
+ "./security/auth/policy/advanced-authorization-policy-factory.js",
8
9
  "./security/cert/default-ca-service-factory.js",
9
10
  "./security/cert/default-certificate-manager-factory.js",
10
11
  "./security/cert/trust-store/browser-trust-store-provider-factory.js",
@@ -21,6 +22,7 @@ export const MODULES = [
21
22
  "./welcome/advanced-welcome-service-factory.js"
22
23
  ];
23
24
  export const MODULE_LOADERS = {
25
+ "./security/auth/policy/advanced-authorization-policy-factory.js": () => import("./security/auth/policy/advanced-authorization-policy-factory.js"),
24
26
  "./security/cert/default-ca-service-factory.js": () => import("./security/cert/default-ca-service-factory.js"),
25
27
  "./security/cert/default-certificate-manager-factory.js": () => import("./security/cert/default-certificate-manager-factory.js"),
26
28
  "./security/cert/trust-store/browser-trust-store-provider-factory.js": () => import("./security/cert/trust-store/browser-trust-store-provider-factory.js"),
@@ -1 +1 @@
1
- {"version":3,"file":"factory-manifest.js","sourceRoot":"","sources":["../../../../src/naylence/fame/factory-manifest.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,+CAA+C;IAC/C,wDAAwD;IACxD,qEAAqE;IACrE,kEAAkE;IAClE,qEAAqE;IACrE,+DAA+D;IAC/D,iEAAiE;IACjE,mEAAmE;IACnE,4CAA4C;IAC5C,qDAAqD;IACrD,uDAAuD;IACvD,8DAA8D;IAC9D,wDAAwD;IACxD,+CAA+C;CACvC,CAAC;AAKX,MAAM,CAAC,MAAM,cAAc,GAAmD;IAC5E,+CAA+C,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,+CAA+C,CAAC;IAC9G,wDAAwD,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,wDAAwD,CAAC;IAChI,qEAAqE,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,qEAAqE,CAAC;IAC1J,kEAAkE,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,kEAAkE,CAAC;IACpJ,qEAAqE,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,qEAAqE,CAAC;IAC1J,+DAA+D,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,+DAA+D,CAAC;IAC9I,iEAAiE,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,iEAAiE,CAAC;IAClJ,mEAAmE,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,mEAAmE,CAAC;IACtJ,4CAA4C,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,4CAA4C,CAAC;IACxG,qDAAqD,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,qDAAqD,CAAC;IAC1H,uDAAuD,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,uDAAuD,CAAC;IAC9H,8DAA8D,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,8DAA8D,CAAC;IAC5I,wDAAwD,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,wDAAwD,CAAC;IAChI,+CAA+C,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,+CAA+C,CAAC;CAC/G,CAAC"}
1
+ {"version":3,"file":"factory-manifest.js","sourceRoot":"","sources":["../../../../src/naylence/fame/factory-manifest.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,iEAAiE;IACjE,+CAA+C;IAC/C,wDAAwD;IACxD,qEAAqE;IACrE,kEAAkE;IAClE,qEAAqE;IACrE,+DAA+D;IAC/D,iEAAiE;IACjE,mEAAmE;IACnE,4CAA4C;IAC5C,qDAAqD;IACrD,uDAAuD;IACvD,8DAA8D;IAC9D,wDAAwD;IACxD,+CAA+C;CACvC,CAAC;AAKX,MAAM,CAAC,MAAM,cAAc,GAAmD;IAC5E,iEAAiE,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,iEAAiE,CAAC;IAClJ,+CAA+C,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,+CAA+C,CAAC;IAC9G,wDAAwD,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,wDAAwD,CAAC;IAChI,qEAAqE,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,qEAAqE,CAAC;IAC1J,kEAAkE,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,kEAAkE,CAAC;IACpJ,qEAAqE,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,qEAAqE,CAAC;IAC1J,+DAA+D,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,+DAA+D,CAAC;IAC9I,iEAAiE,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,iEAAiE,CAAC;IAClJ,mEAAmE,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,mEAAmE,CAAC;IACtJ,4CAA4C,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,4CAA4C,CAAC;IACxG,qDAAqD,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,qDAAqD,CAAC;IAC1H,uDAAuD,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,uDAAuD,CAAC;IAC9H,8DAA8D,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,8DAA8D,CAAC;IAC5I,wDAAwD,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,wDAAwD,CAAC;IAChI,+CAA+C,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,+CAA+C,CAAC;CAC/G,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Advanced security authentication/authorization module exports.
3
+ *
4
+ * @packageDocumentation
5
+ */
6
+ export * from "./policy/index.js";
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/naylence/fame/security/auth/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Factory for creating AdvancedAuthorizationPolicy instances.
3
+ */
4
+ import { AUTHORIZATION_POLICY_FACTORY_BASE_TYPE, AuthorizationPolicyFactory, } from "@naylence/runtime";
5
+ let modulePromise = null;
6
+ function getModule() {
7
+ if (!modulePromise) {
8
+ modulePromise = import("./advanced-authorization-policy.js");
9
+ }
10
+ return modulePromise;
11
+ }
12
+ function normalizeConfig(config) {
13
+ if (!config) {
14
+ throw new Error("AdvancedAuthorizationPolicyFactory requires a configuration with a policyDefinition");
15
+ }
16
+ const candidate = config;
17
+ // Support both camelCase and snake_case for policyDefinition
18
+ const policyDefinition = (candidate.policyDefinition ??
19
+ candidate.policy_definition);
20
+ if (!policyDefinition || typeof policyDefinition !== "object") {
21
+ throw new Error("AdvancedAuthorizationPolicyConfig requires a policyDefinition object");
22
+ }
23
+ // Support both camelCase and snake_case for warnOnUnknownFields
24
+ const warnOnUnknownFields = candidate.warnOnUnknownFields ?? candidate.warn_on_unknown_fields;
25
+ if (warnOnUnknownFields !== undefined &&
26
+ typeof warnOnUnknownFields !== "boolean") {
27
+ throw new Error("warnOnUnknownFields must be a boolean");
28
+ }
29
+ // Support both camelCase and snake_case for expressionLimits
30
+ const expressionLimits = (candidate.expressionLimits ??
31
+ candidate.expression_limits);
32
+ return {
33
+ policyDefinition,
34
+ warnOnUnknownFields: warnOnUnknownFields ?? true,
35
+ expressionLimits,
36
+ };
37
+ }
38
+ /**
39
+ * Factory metadata for registration.
40
+ */
41
+ export const FACTORY_META = {
42
+ base: AUTHORIZATION_POLICY_FACTORY_BASE_TYPE,
43
+ key: "AdvancedAuthorizationPolicy",
44
+ };
45
+ /**
46
+ * Factory for creating AdvancedAuthorizationPolicy instances.
47
+ */
48
+ export class AdvancedAuthorizationPolicyFactory extends AuthorizationPolicyFactory {
49
+ constructor() {
50
+ super(...arguments);
51
+ this.type = "AdvancedAuthorizationPolicy";
52
+ }
53
+ /**
54
+ * Creates an AdvancedAuthorizationPolicy from the given configuration.
55
+ *
56
+ * @param config - Configuration with policyDefinition
57
+ * @returns The created authorization policy
58
+ */
59
+ async create(config) {
60
+ const normalized = normalizeConfig(config);
61
+ const { AdvancedAuthorizationPolicy } = await getModule();
62
+ return new AdvancedAuthorizationPolicy({
63
+ policyDefinition: normalized.policyDefinition,
64
+ warnOnUnknownFields: normalized.warnOnUnknownFields,
65
+ expressionLimits: normalized.expressionLimits,
66
+ });
67
+ }
68
+ }
69
+ export default AdvancedAuthorizationPolicyFactory;
70
+ //# sourceMappingURL=advanced-authorization-policy-factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"advanced-authorization-policy-factory.js","sourceRoot":"","sources":["../../../../../../../src/naylence/fame/security/auth/policy/advanced-authorization-policy-factory.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EACL,sCAAsC,EACtC,0BAA0B,GAE3B,MAAM,mBAAmB,CAAC;AA+B3B,IAAI,aAAa,GAAsD,IAAI,CAAC;AAE5E,SAAS,SAAS;IAChB,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,aAAa,GAAG,MAAM,CAAC,oCAAoC,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAQD,SAAS,eAAe,CACtB,MAA2E;IAE3E,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACb,qFAAqF,CACtF,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,MAAiC,CAAC;IAEpD,6DAA6D;IAC7D,MAAM,gBAAgB,GAAG,CAAC,SAAS,CAAC,gBAAgB;QAClD,SAAS,CAAC,iBAAiB,CAA8C,CAAC;IAC5E,IAAI,CAAC,gBAAgB,IAAI,OAAO,gBAAgB,KAAK,QAAQ,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CACb,sEAAsE,CACvE,CAAC;IACJ,CAAC;IAED,gEAAgE;IAChE,MAAM,mBAAmB,GACvB,SAAS,CAAC,mBAAmB,IAAI,SAAS,CAAC,sBAAsB,CAAC;IACpE,IACE,mBAAmB,KAAK,SAAS;QACjC,OAAO,mBAAmB,KAAK,SAAS,EACxC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IAED,6DAA6D;IAC7D,MAAM,gBAAgB,GAAG,CAAC,SAAS,CAAC,gBAAgB;QAClD,SAAS,CAAC,iBAAiB,CAA0C,CAAC;IAExE,OAAO;QACL,gBAAgB;QAChB,mBAAmB,EAAE,mBAAmB,IAAI,IAAI;QAChD,gBAAgB;KACjB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,sCAAsC;IAC5C,GAAG,EAAE,6BAA6B;CAC1B,CAAC;AAEX;;GAEG;AACH,MAAM,OAAO,kCAAmC,SAAQ,0BAA6D;IAArH;;QACkB,SAAI,GAAG,6BAA6B,CAAC;IAqBvD,CAAC;IAnBC;;;;;OAKG;IACI,KAAK,CAAC,MAAM,CACjB,MAA2E;QAE3E,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QAE3C,MAAM,EAAE,2BAA2B,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;QAE1D,OAAO,IAAI,2BAA2B,CAAC;YACrC,gBAAgB,EAAE,UAAU,CAAC,gBAAgB;YAC7C,mBAAmB,EAAE,UAAU,CAAC,mBAAmB;YACnD,gBAAgB,EAAE,UAAU,CAAC,gBAAoC;SAClE,CAAC,CAAC;IACL,CAAC;CACF;AAED,eAAe,kCAAkC,CAAC"}