@authup/access 1.0.0-beta.24

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 (144) hide show
  1. package/LICENSE +201 -0
  2. package/dist/constants.d.ts +15 -0
  3. package/dist/constants.d.ts.map +1 -0
  4. package/dist/index.cjs +1007 -0
  5. package/dist/index.cjs.map +1 -0
  6. package/dist/index.d.ts +4 -0
  7. package/dist/index.d.ts.map +1 -0
  8. package/dist/index.mjs +974 -0
  9. package/dist/index.mjs.map +1 -0
  10. package/dist/permission/error/index.d.ts +3 -0
  11. package/dist/permission/error/index.d.ts.map +1 -0
  12. package/dist/permission/error/module.d.ts +13 -0
  13. package/dist/permission/error/module.d.ts.map +1 -0
  14. package/dist/permission/error/types.d.ts +11 -0
  15. package/dist/permission/error/types.d.ts.map +1 -0
  16. package/dist/permission/helpers/equal.d.ts +3 -0
  17. package/dist/permission/helpers/equal.d.ts.map +1 -0
  18. package/dist/permission/helpers/index.d.ts +3 -0
  19. package/dist/permission/helpers/index.d.ts.map +1 -0
  20. package/dist/permission/helpers/merge.d.ts +3 -0
  21. package/dist/permission/helpers/merge.d.ts.map +1 -0
  22. package/dist/permission/index.d.ts +6 -0
  23. package/dist/permission/index.d.ts.map +1 -0
  24. package/dist/permission/module.d.ts +34 -0
  25. package/dist/permission/module.d.ts.map +1 -0
  26. package/dist/permission/provider/index.d.ts +3 -0
  27. package/dist/permission/provider/index.d.ts.map +1 -0
  28. package/dist/permission/provider/memory.d.ts +9 -0
  29. package/dist/permission/provider/memory.d.ts.map +1 -0
  30. package/dist/permission/provider/types.d.ts +9 -0
  31. package/dist/permission/provider/types.d.ts.map +1 -0
  32. package/dist/permission/types.d.ts +24 -0
  33. package/dist/permission/types.d.ts.map +1 -0
  34. package/dist/policy/built-in/attribute-names/evaluator.d.ts +13 -0
  35. package/dist/policy/built-in/attribute-names/evaluator.d.ts.map +1 -0
  36. package/dist/policy/built-in/attribute-names/index.d.ts +4 -0
  37. package/dist/policy/built-in/attribute-names/index.d.ts.map +1 -0
  38. package/dist/policy/built-in/attribute-names/types.d.ts +5 -0
  39. package/dist/policy/built-in/attribute-names/types.d.ts.map +1 -0
  40. package/dist/policy/built-in/attribute-names/validator.d.ts +6 -0
  41. package/dist/policy/built-in/attribute-names/validator.d.ts.map +1 -0
  42. package/dist/policy/built-in/attributes/evaluator.d.ts +14 -0
  43. package/dist/policy/built-in/attributes/evaluator.d.ts.map +1 -0
  44. package/dist/policy/built-in/attributes/index.d.ts +4 -0
  45. package/dist/policy/built-in/attributes/index.d.ts.map +1 -0
  46. package/dist/policy/built-in/attributes/types.d.ts +7 -0
  47. package/dist/policy/built-in/attributes/types.d.ts.map +1 -0
  48. package/dist/policy/built-in/attributes/validator.d.ts +7 -0
  49. package/dist/policy/built-in/attributes/validator.d.ts.map +1 -0
  50. package/dist/policy/built-in/composite/evaluator.d.ts +13 -0
  51. package/dist/policy/built-in/composite/evaluator.d.ts.map +1 -0
  52. package/dist/policy/built-in/composite/helper.d.ts +4 -0
  53. package/dist/policy/built-in/composite/helper.d.ts.map +1 -0
  54. package/dist/policy/built-in/composite/index.d.ts +5 -0
  55. package/dist/policy/built-in/composite/index.d.ts.map +1 -0
  56. package/dist/policy/built-in/composite/types.d.ts +13 -0
  57. package/dist/policy/built-in/composite/types.d.ts.map +1 -0
  58. package/dist/policy/built-in/composite/validator.d.ts +7 -0
  59. package/dist/policy/built-in/composite/validator.d.ts.map +1 -0
  60. package/dist/policy/built-in/constants.d.ts +35 -0
  61. package/dist/policy/built-in/constants.d.ts.map +1 -0
  62. package/dist/policy/built-in/date/evaluator.d.ts +13 -0
  63. package/dist/policy/built-in/date/evaluator.d.ts.map +1 -0
  64. package/dist/policy/built-in/date/index.d.ts +4 -0
  65. package/dist/policy/built-in/date/index.d.ts.map +1 -0
  66. package/dist/policy/built-in/date/types.d.ts +6 -0
  67. package/dist/policy/built-in/date/types.d.ts.map +1 -0
  68. package/dist/policy/built-in/date/validator.d.ts +7 -0
  69. package/dist/policy/built-in/date/validator.d.ts.map +1 -0
  70. package/dist/policy/built-in/identity/evaluator.d.ts +13 -0
  71. package/dist/policy/built-in/identity/evaluator.d.ts.map +1 -0
  72. package/dist/policy/built-in/identity/index.d.ts +4 -0
  73. package/dist/policy/built-in/identity/index.d.ts.map +1 -0
  74. package/dist/policy/built-in/identity/types.d.ts +8 -0
  75. package/dist/policy/built-in/identity/types.d.ts.map +1 -0
  76. package/dist/policy/built-in/identity/validator.d.ts +6 -0
  77. package/dist/policy/built-in/identity/validator.d.ts.map +1 -0
  78. package/dist/policy/built-in/index.d.ts +11 -0
  79. package/dist/policy/built-in/index.d.ts.map +1 -0
  80. package/dist/policy/built-in/permission-binding/index.d.ts +4 -0
  81. package/dist/policy/built-in/permission-binding/index.d.ts.map +1 -0
  82. package/dist/policy/built-in/permission-binding/module.d.ts +13 -0
  83. package/dist/policy/built-in/permission-binding/module.d.ts.map +1 -0
  84. package/dist/policy/built-in/permission-binding/types.d.ts +4 -0
  85. package/dist/policy/built-in/permission-binding/types.d.ts.map +1 -0
  86. package/dist/policy/built-in/permission-binding/validator.d.ts +6 -0
  87. package/dist/policy/built-in/permission-binding/validator.d.ts.map +1 -0
  88. package/dist/policy/built-in/realm-match/evaluator.d.ts +13 -0
  89. package/dist/policy/built-in/realm-match/evaluator.d.ts.map +1 -0
  90. package/dist/policy/built-in/realm-match/index.d.ts +4 -0
  91. package/dist/policy/built-in/realm-match/index.d.ts.map +1 -0
  92. package/dist/policy/built-in/realm-match/types.d.ts +28 -0
  93. package/dist/policy/built-in/realm-match/types.d.ts.map +1 -0
  94. package/dist/policy/built-in/realm-match/validator.d.ts +7 -0
  95. package/dist/policy/built-in/realm-match/validator.d.ts.map +1 -0
  96. package/dist/policy/built-in/time/constants.d.ts +7 -0
  97. package/dist/policy/built-in/time/constants.d.ts.map +1 -0
  98. package/dist/policy/built-in/time/evaluator.d.ts +13 -0
  99. package/dist/policy/built-in/time/evaluator.d.ts.map +1 -0
  100. package/dist/policy/built-in/time/index.d.ts +5 -0
  101. package/dist/policy/built-in/time/index.d.ts.map +1 -0
  102. package/dist/policy/built-in/time/types.d.ts +29 -0
  103. package/dist/policy/built-in/time/types.d.ts.map +1 -0
  104. package/dist/policy/built-in/time/validator.d.ts +7 -0
  105. package/dist/policy/built-in/time/validator.d.ts.map +1 -0
  106. package/dist/policy/built-in/types.d.ts +7 -0
  107. package/dist/policy/built-in/types.d.ts.map +1 -0
  108. package/dist/policy/engine/index.d.ts +3 -0
  109. package/dist/policy/engine/index.d.ts.map +1 -0
  110. package/dist/policy/engine/module.d.ts +20 -0
  111. package/dist/policy/engine/module.d.ts.map +1 -0
  112. package/dist/policy/engine/types.d.ts +4 -0
  113. package/dist/policy/engine/types.d.ts.map +1 -0
  114. package/dist/policy/error/index.d.ts +2 -0
  115. package/dist/policy/error/index.d.ts.map +1 -0
  116. package/dist/policy/error/module.d.ts +8 -0
  117. package/dist/policy/error/module.d.ts.map +1 -0
  118. package/dist/policy/evaluator/data/identity/index.d.ts +2 -0
  119. package/dist/policy/evaluator/data/identity/index.d.ts.map +1 -0
  120. package/dist/policy/evaluator/data/identity/validator.d.ts +8 -0
  121. package/dist/policy/evaluator/data/identity/validator.d.ts.map +1 -0
  122. package/dist/policy/evaluator/data/index.d.ts +4 -0
  123. package/dist/policy/evaluator/data/index.d.ts.map +1 -0
  124. package/dist/policy/evaluator/data/permission/index.d.ts +2 -0
  125. package/dist/policy/evaluator/data/permission/index.d.ts.map +1 -0
  126. package/dist/policy/evaluator/data/permission/validator.d.ts +8 -0
  127. package/dist/policy/evaluator/data/permission/validator.d.ts.map +1 -0
  128. package/dist/policy/evaluator/data/validator.d.ts +8 -0
  129. package/dist/policy/evaluator/data/validator.d.ts.map +1 -0
  130. package/dist/policy/evaluator/evaluate.d.ts +4 -0
  131. package/dist/policy/evaluator/evaluate.d.ts.map +1 -0
  132. package/dist/policy/evaluator/index.d.ts +4 -0
  133. package/dist/policy/evaluator/index.d.ts.map +1 -0
  134. package/dist/policy/evaluator/types.d.ts +44 -0
  135. package/dist/policy/evaluator/types.d.ts.map +1 -0
  136. package/dist/policy/helpers/index.d.ts +2 -0
  137. package/dist/policy/helpers/index.d.ts.map +1 -0
  138. package/dist/policy/helpers/invert.d.ts +4 -0
  139. package/dist/policy/helpers/invert.d.ts.map +1 -0
  140. package/dist/policy/index.d.ts +7 -0
  141. package/dist/policy/index.d.ts.map +1 -0
  142. package/dist/policy/types.d.ts +36 -0
  143. package/dist/policy/types.d.ts.map +1 -0
  144. package/package.json +59 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/policy/evaluator/types.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE3D,MAAM,MAAM,qBAAqB,CAC7B,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACtD,IAAI,SAAS,UAAU,GAAG,UAAU,IACpC;IACA,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,IAAI,CAAC;IACX,UAAU,EAAE,gBAAgB,CAAA;IAC5B,OAAO,EAAE,qBAAqB,CAAA;CACjC,CAAC;AAEF,MAAM,MAAM,0BAA0B,CAClC,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACtD,IAAI,SAAS,UAAU,GAAG,UAAU,IACpC,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC,GACrE,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC;AAE3E,MAAM,MAAM,qBAAqB,GAAG;IAChC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;AAE/D,MAAM,WAAW,eAAe,CAC5B,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACtD,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAEtD;;;;;;OAMG;IACH,QAAQ,CAAC,GAAG,EAAE,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEnE;;;;;OAKG;IACH,qBAAqB,CACjB,GAAG,EAAE,qBAAqB,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,GACrD,OAAO,CAAC,IAAI,CAAC,CAAC;IAElB;;;;OAIG;IACH,YAAY,CACR,GAAG,EAAE,qBAAqB,CAAC,IAAI,CAAC,GAChC,OAAO,CAAC,IAAI,CAAC,CAAC;IAElB;;;;;OAKG;IACH,GAAG,CAAC,GAAG,EAAE,qBAAqB,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACrE"}
@@ -0,0 +1,2 @@
1
+ export * from './invert';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/policy/helpers/index.ts"],"names":[],"mappings":"AAOA,cAAc,UAAU,CAAC"}
@@ -0,0 +1,4 @@
1
+ type InvertFn = (input: boolean) => boolean;
2
+ export declare function maybeInvertPolicyOutcome(outcome: boolean, invert?: boolean | InvertFn): boolean;
3
+ export {};
4
+ //# sourceMappingURL=invert.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invert.d.ts","sourceRoot":"","sources":["../../../src/policy/helpers/invert.ts"],"names":[],"mappings":"AAOA,KAAK,QAAQ,GAAG,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;AAE5C,wBAAgB,wBAAwB,CACpC,OAAO,EAAE,OAAO,EAChB,MAAM,CAAC,EAAE,OAAO,GAAG,QAAQ,WAe9B"}
@@ -0,0 +1,7 @@
1
+ export * from './engine';
2
+ export * from './evaluator';
3
+ export * from './error';
4
+ export * from './helpers';
5
+ export * from './built-in';
6
+ export * from './types';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/policy/index.ts"],"names":[],"mappings":"AAOA,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC"}
@@ -0,0 +1,36 @@
1
+ import type { PermissionItem } from '../permission';
2
+ export interface PolicyBase {
3
+ /**
4
+ * Invert evaluation result of policy (true->false and false->true)
5
+ */
6
+ invert?: boolean;
7
+ }
8
+ export type PolicyWithType<T extends Record<string, any> = Record<string, any>> = T & {
9
+ type: string;
10
+ };
11
+ export type PolicyIdentity = {
12
+ type: string;
13
+ id: string;
14
+ realmId?: string;
15
+ realmName?: string;
16
+ };
17
+ export type PolicyData = {
18
+ /**
19
+ * Permission for which the policy is evaluated.
20
+ */
21
+ permission?: PermissionItem;
22
+ /**
23
+ * Identity of the executing party.
24
+ */
25
+ identity?: PolicyIdentity;
26
+ /**
27
+ * Attributes
28
+ */
29
+ attributes?: Record<string, any>;
30
+ /**
31
+ * The dateTime to use for time & date policy.
32
+ */
33
+ dateTime?: Date | number | string;
34
+ [key: string]: any;
35
+ };
36
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/policy/types.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,MAAM,WAAW,UAAU;IACvB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,MAAM,cAAc,CACtB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IACnD,CAAC,GAAG;IACJ,IAAI,EAAE,MAAM,CAAA;CACf,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACrB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACrB;;OAEG;IACH,UAAU,CAAC,EAAE,cAAc,CAAC;IAE5B;;OAEG;IACH,QAAQ,CAAC,EAAE,cAAc,CAAC;IAE1B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEjC;;OAEG;IACH,QAAQ,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;IAClC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CACrB,CAAC"}
package/package.json ADDED
@@ -0,0 +1,59 @@
1
+ {
2
+ "name": "@authup/access",
3
+ "version": "1.0.0-beta.24",
4
+ "description": "A library for evaluating permissions and policies.",
5
+ "license": "Apache-2.0",
6
+ "exports": {
7
+ "./package.json": "./package.json",
8
+ ".": {
9
+ "types": "./dist/index.d.ts",
10
+ "import": "./dist/index.mjs",
11
+ "require": "./dist/index.cjs"
12
+ }
13
+ },
14
+ "main": "./dist/index.cjs",
15
+ "module": "./dist/index.mjs",
16
+ "types": "./dist/index.d.ts",
17
+ "files": [
18
+ "dist"
19
+ ],
20
+ "scripts": {
21
+ "build:types": "tsc --emitDeclarationOnly -p tsconfig.build.json",
22
+ "build:js": "rollup -c",
23
+ "build": "rimraf ./dist && cross-env NODE_ENV=production npm run build:js && npm run build:types",
24
+ "build:watch": "npm run build -- --watch"
25
+ },
26
+ "keywords": [],
27
+ "author": {
28
+ "name": "Peter Placzek",
29
+ "email": "contact@tada5hi.net",
30
+ "url": "https://github.com/tada5hi"
31
+ },
32
+ "repository": {
33
+ "type": "git",
34
+ "url": "git+https://github.com/authup/authup.git",
35
+ "directory": "packages/access"
36
+ },
37
+ "bugs": {
38
+ "url": "https://github.com/authup/authup/issues"
39
+ },
40
+ "homepage": "https://github.com/authup/authup#readme",
41
+ "dependencies": {
42
+ "@ucast/mongo2js": "^1.3.4",
43
+ "@validup/adapter-zod": "^0.1.8",
44
+ "pathtrace": "^1.1.0",
45
+ "validup": "^0.1.8",
46
+ "zod": "^3.24.1"
47
+ },
48
+ "devDependencies": {
49
+ "@authup/errors": "^1.0.0-beta.24",
50
+ "@authup/kit": "^1.0.0-beta.24"
51
+ },
52
+ "peerDependencies": {
53
+ "@authup/errors": "^1.0.0-beta.24",
54
+ "@authup/kit": "^1.0.0-beta.24"
55
+ },
56
+ "publishConfig": {
57
+ "access": "public"
58
+ }
59
+ }