@linkedrecords/browser 0.1.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 (265) hide show
  1. package/LICENSE +661 -0
  2. package/Readme.md +154 -0
  3. package/dist/browser_sdk.js +3 -0
  4. package/dist/browser_sdk.js.LICENSE.txt +254 -0
  5. package/dist/browser_sdk.js.map +1 -0
  6. package/dist/docs/app/[[...slug]]/page.d.ts +13 -0
  7. package/dist/docs/app/[[...slug]]/page.d.ts.map +1 -0
  8. package/dist/docs/app/layout.d.ts +10 -0
  9. package/dist/docs/app/layout.d.ts.map +1 -0
  10. package/dist/docs/lib/source.d.ts +2 -0
  11. package/dist/docs/lib/source.d.ts.map +1 -0
  12. package/dist/docs/mdx-components.d.ts +3 -0
  13. package/dist/docs/mdx-components.d.ts.map +1 -0
  14. package/dist/docs/source.config.d.ts +4 -0
  15. package/dist/docs/source.config.d.ts.map +1 -0
  16. package/dist/instrumentation.js +283 -0
  17. package/dist/instrumentation.js.map +1 -0
  18. package/dist/lib/cache/index.d.ts +4 -0
  19. package/dist/lib/cache/index.d.ts.map +1 -0
  20. package/dist/lib/client-server-bus/client/index.d.ts +3 -0
  21. package/dist/lib/client-server-bus/client/index.d.ts.map +1 -0
  22. package/dist/lib/client-server-bus/drivers/ws/client/index.d.ts +23 -0
  23. package/dist/lib/client-server-bus/drivers/ws/client/index.d.ts.map +1 -0
  24. package/dist/lib/client-server-bus/drivers/ws/server/index.d.ts +14 -0
  25. package/dist/lib/client-server-bus/drivers/ws/server/index.d.ts.map +1 -0
  26. package/dist/lib/client-server-bus/server/index.d.ts +4 -0
  27. package/dist/lib/client-server-bus/server/index.d.ts.map +1 -0
  28. package/dist/lib/cookie-settings-from-env/index.d.ts +8 -0
  29. package/dist/lib/cookie-settings-from-env/index.d.ts.map +1 -0
  30. package/dist/lib/is_logger.d.ts +6 -0
  31. package/dist/lib/is_logger.d.ts.map +1 -0
  32. package/dist/lib/pg-log/index.d.ts +9 -0
  33. package/dist/lib/pg-log/index.d.ts.map +1 -0
  34. package/dist/lib/queued-tasks/In_memory_queued_tasks.d.ts +9 -0
  35. package/dist/lib/queued-tasks/In_memory_queued_tasks.d.ts.map +1 -0
  36. package/dist/lib/queued-tasks/index.d.ts +7 -0
  37. package/dist/lib/queued-tasks/index.d.ts.map +1 -0
  38. package/dist/lib/queued-tasks/redis_queued_tasks.d.ts +7 -0
  39. package/dist/lib/queued-tasks/redis_queued_tasks.d.ts.map +1 -0
  40. package/dist/lib/quota/index.d.ts +16 -0
  41. package/dist/lib/quota/index.d.ts.map +1 -0
  42. package/dist/lib/stream-to-string/index.d.ts +4 -0
  43. package/dist/lib/stream-to-string/index.d.ts.map +1 -0
  44. package/dist/lib/utils/all_prefixes.d.ts +2 -0
  45. package/dist/lib/utils/all_prefixes.d.ts.map +1 -0
  46. package/dist/lib/utils/chunk_array.d.ts +2 -0
  47. package/dist/lib/utils/chunk_array.d.ts.map +1 -0
  48. package/dist/lib/utils/read_body.d.ts +3 -0
  49. package/dist/lib/utils/read_body.d.ts.map +1 -0
  50. package/dist/lib/utils/safe_compare.d.ts +2 -0
  51. package/dist/lib/utils/safe_compare.d.ts.map +1 -0
  52. package/dist/lib/utils/save_compare.d.ts +2 -0
  53. package/dist/lib/utils/save_compare.d.ts.map +1 -0
  54. package/dist/lib/utils/sql_values.d.ts +11 -0
  55. package/dist/lib/utils/sql_values.d.ts.map +1 -0
  56. package/dist/lib/utils/unset.d.ts +2 -0
  57. package/dist/lib/utils/unset.d.ts.map +1 -0
  58. package/dist/node_modules/redis-semaphore/src/errors/LostLockError.d.ts +3 -0
  59. package/dist/node_modules/redis-semaphore/src/errors/LostLockError.d.ts.map +1 -0
  60. package/dist/report.html +57 -0
  61. package/dist/server.js +6737 -0
  62. package/dist/server.js.map +1 -0
  63. package/dist/specs/browser_sdk/attribute.spec.d.ts +2 -0
  64. package/dist/specs/browser_sdk/attribute.spec.d.ts.map +1 -0
  65. package/dist/specs/browser_sdk/blob_attribute.spec.d.ts +2 -0
  66. package/dist/specs/browser_sdk/blob_attribute.spec.d.ts.map +1 -0
  67. package/dist/specs/browser_sdk/fact.spec.d.ts +2 -0
  68. package/dist/specs/browser_sdk/fact.spec.d.ts.map +1 -0
  69. package/dist/specs/browser_sdk/key_value_attribute.spec.d.ts +2 -0
  70. package/dist/specs/browser_sdk/key_value_attribute.spec.d.ts.map +1 -0
  71. package/dist/specs/browser_sdk/long_text_attribute.spec.d.ts +2 -0
  72. package/dist/specs/browser_sdk/long_text_attribute.spec.d.ts.map +1 -0
  73. package/dist/specs/browser_sdk/oidc-auth.spec.d.ts +2 -0
  74. package/dist/specs/browser_sdk/oidc-auth.spec.d.ts.map +1 -0
  75. package/dist/specs/browser_sdk/userinfo.spec.d.ts +2 -0
  76. package/dist/specs/browser_sdk/userinfo.spec.d.ts.map +1 -0
  77. package/dist/specs/helpers/dummy-oidc-server.d.ts +3 -0
  78. package/dist/specs/helpers/dummy-oidc-server.d.ts.map +1 -0
  79. package/dist/specs/helpers/index.d.ts +9 -0
  80. package/dist/specs/helpers/index.d.ts.map +1 -0
  81. package/dist/specs/helpers/karma-setup.d.ts +2 -0
  82. package/dist/specs/helpers/karma-setup.d.ts.map +1 -0
  83. package/dist/specs/helpers/mock-oidc-server.d.ts +28 -0
  84. package/dist/specs/helpers/mock-oidc-server.d.ts.map +1 -0
  85. package/dist/specs/helpers/test-oidc-manager.d.ts +24 -0
  86. package/dist/specs/helpers/test-oidc-manager.d.ts.map +1 -0
  87. package/dist/specs.wdio/browser_sdk/auth.spec.d.ts +2 -0
  88. package/dist/specs.wdio/browser_sdk/auth.spec.d.ts.map +1 -0
  89. package/dist/specs.wdio/browser_sdk/query_subscription.spec.d.ts +2 -0
  90. package/dist/specs.wdio/browser_sdk/query_subscription.spec.d.ts.map +1 -0
  91. package/dist/specs.wdio/browser_sdk/quota.spec.d.ts +2 -0
  92. package/dist/specs.wdio/browser_sdk/quota.spec.d.ts.map +1 -0
  93. package/dist/specs.wdio/browser_sdk/userinfo.spec.d.ts +2 -0
  94. package/dist/specs.wdio/browser_sdk/userinfo.spec.d.ts.map +1 -0
  95. package/dist/specs.wdio/helpers/lr_expects.d.ts +7 -0
  96. package/dist/specs.wdio/helpers/lr_expects.d.ts.map +1 -0
  97. package/dist/specs.wdio/helpers/session.d.ts +42 -0
  98. package/dist/specs.wdio/helpers/session.d.ts.map +1 -0
  99. package/dist/specs.wdio/helpers/timer.d.ts +21 -0
  100. package/dist/specs.wdio/helpers/timer.d.ts.map +1 -0
  101. package/dist/specs.wdio/helpers/wdio_remote.d.ts +7 -0
  102. package/dist/specs.wdio/helpers/wdio_remote.d.ts.map +1 -0
  103. package/dist/specs.wdio/load/documents/documents.spec.d.ts +2 -0
  104. package/dist/specs.wdio/load/documents/documents.spec.d.ts.map +1 -0
  105. package/dist/specs.wdio/load/documents.spec.d.ts +2 -0
  106. package/dist/specs.wdio/load/documents.spec.d.ts.map +1 -0
  107. package/dist/specs.wdio/quota_upgrade/paddle.spec.d.ts +2 -0
  108. package/dist/specs.wdio/quota_upgrade/paddle.spec.d.ts.map +1 -0
  109. package/dist/specs.wdio/testapp/client.d.ts +2 -0
  110. package/dist/specs.wdio/testapp/client.d.ts.map +1 -0
  111. package/dist/specs.wdio/testapp/server.d.ts +2 -0
  112. package/dist/specs.wdio/testapp/server.d.ts.map +1 -0
  113. package/dist/specs.wdio/tinytodo/tinytodo.d.ts +25 -0
  114. package/dist/specs.wdio/tinytodo/tinytodo.d.ts.map +1 -0
  115. package/dist/specs.wdio/tinytodo/tinytodo.spec.d.ts +2 -0
  116. package/dist/specs.wdio/tinytodo/tinytodo.spec.d.ts.map +1 -0
  117. package/dist/specs.wdio/tinytodo/tinytodo_expects.d.ts +8 -0
  118. package/dist/specs.wdio/tinytodo/tinytodo_expects.d.ts.map +1 -0
  119. package/dist/src/attributes/abstract/abstract_attribute_change.d.ts +7 -0
  120. package/dist/src/attributes/abstract/abstract_attribute_change.d.ts.map +1 -0
  121. package/dist/src/attributes/abstract/abstract_attribute_client.d.ts +58 -0
  122. package/dist/src/attributes/abstract/abstract_attribute_client.d.ts.map +1 -0
  123. package/dist/src/attributes/abstract/abstract_attribute_server.d.ts +39 -0
  124. package/dist/src/attributes/abstract/abstract_attribute_server.d.ts.map +1 -0
  125. package/dist/src/attributes/abstract/is_attribute_change.d.ts +7 -0
  126. package/dist/src/attributes/abstract/is_attribute_change.d.ts.map +1 -0
  127. package/dist/src/attributes/abstract/is_attribute_storage.d.ts +52 -0
  128. package/dist/src/attributes/abstract/is_attribute_storage.d.ts.map +1 -0
  129. package/dist/src/attributes/abstract/is_serializable.d.ts +4 -0
  130. package/dist/src/attributes/abstract/is_serializable.d.ts.map +1 -0
  131. package/dist/src/attributes/abstract/serialized_change_with_metadata.d.ts +11 -0
  132. package/dist/src/attributes/abstract/serialized_change_with_metadata.d.ts.map +1 -0
  133. package/dist/src/attributes/attribute_query.d.ts +55 -0
  134. package/dist/src/attributes/attribute_query.d.ts.map +1 -0
  135. package/dist/src/attributes/attribute_storage/blob/index.d.ts +38 -0
  136. package/dist/src/attributes/attribute_storage/blob/index.d.ts.map +1 -0
  137. package/dist/src/attributes/attribute_storage/index.d.ts +33 -0
  138. package/dist/src/attributes/attribute_storage/index.d.ts.map +1 -0
  139. package/dist/src/attributes/attribute_storage/psql/index.d.ts +39 -0
  140. package/dist/src/attributes/attribute_storage/psql/index.d.ts.map +1 -0
  141. package/dist/src/attributes/attribute_storage/psql_with_history/index.d.ts +35 -0
  142. package/dist/src/attributes/attribute_storage/psql_with_history/index.d.ts.map +1 -0
  143. package/dist/src/attributes/attribute_storage/s3/index.d.ts +38 -0
  144. package/dist/src/attributes/attribute_storage/s3/index.d.ts.map +1 -0
  145. package/dist/src/attributes/attribute_storage/types.d.ts +27 -0
  146. package/dist/src/attributes/attribute_storage/types.d.ts.map +1 -0
  147. package/dist/src/attributes/blob/blob_change.d.ts +7 -0
  148. package/dist/src/attributes/blob/blob_change.d.ts.map +1 -0
  149. package/dist/src/attributes/blob/client/index.d.ts +18 -0
  150. package/dist/src/attributes/blob/client/index.d.ts.map +1 -0
  151. package/dist/src/attributes/blob/server/index.d.ts +27 -0
  152. package/dist/src/attributes/blob/server/index.d.ts.map +1 -0
  153. package/dist/src/attributes/errors/authorization_error.d.ts +6 -0
  154. package/dist/src/attributes/errors/authorization_error.d.ts.map +1 -0
  155. package/dist/src/attributes/key_value/client/index.d.ts +19 -0
  156. package/dist/src/attributes/key_value/client/index.d.ts.map +1 -0
  157. package/dist/src/attributes/key_value/key_value_change.d.ts +16 -0
  158. package/dist/src/attributes/key_value/key_value_change.d.ts.map +1 -0
  159. package/dist/src/attributes/key_value/server/index.d.ts +28 -0
  160. package/dist/src/attributes/key_value/server/index.d.ts.map +1 -0
  161. package/dist/src/attributes/long_text/client/buffer.d.ts +12 -0
  162. package/dist/src/attributes/long_text/client/buffer.d.ts.map +1 -0
  163. package/dist/src/attributes/long_text/client/index.d.ts +25 -0
  164. package/dist/src/attributes/long_text/client/index.d.ts.map +1 -0
  165. package/dist/src/attributes/long_text/long_text_change.d.ts +16 -0
  166. package/dist/src/attributes/long_text/long_text_change.d.ts.map +1 -0
  167. package/dist/src/attributes/long_text/server/index.d.ts +27 -0
  168. package/dist/src/attributes/long_text/server/index.d.ts.map +1 -0
  169. package/dist/src/browser_sdk/attributes_repository.d.ts +46 -0
  170. package/dist/src/browser_sdk/attributes_repository.d.ts.map +1 -0
  171. package/dist/src/browser_sdk/facts_repository.d.ts +11 -0
  172. package/dist/src/browser_sdk/facts_repository.d.ts.map +1 -0
  173. package/dist/src/browser_sdk/index.d.ts +69 -0
  174. package/dist/src/browser_sdk/index.d.ts.map +1 -0
  175. package/dist/src/browser_sdk/oidc.d.ts +29 -0
  176. package/dist/src/browser_sdk/oidc.d.ts.map +1 -0
  177. package/dist/src/dev-oidc/config.d.ts +13 -0
  178. package/dist/src/dev-oidc/config.d.ts.map +1 -0
  179. package/dist/src/dev-oidc/endpoints.d.ts +8 -0
  180. package/dist/src/dev-oidc/endpoints.d.ts.map +1 -0
  181. package/dist/src/dev-oidc/index.d.ts +5 -0
  182. package/dist/src/dev-oidc/index.d.ts.map +1 -0
  183. package/dist/src/dev-oidc/keys.d.ts +9 -0
  184. package/dist/src/dev-oidc/keys.d.ts.map +1 -0
  185. package/dist/src/dev-oidc/login-page.d.ts +3 -0
  186. package/dist/src/dev-oidc/login-page.d.ts.map +1 -0
  187. package/dist/src/facts/client/index.d.ts +15 -0
  188. package/dist/src/facts/client/index.d.ts.map +1 -0
  189. package/dist/src/facts/fact_query.d.ts +8 -0
  190. package/dist/src/facts/fact_query.d.ts.map +1 -0
  191. package/dist/src/facts/server/auth_cache.d.ts +12 -0
  192. package/dist/src/facts/server/auth_cache.d.ts.map +1 -0
  193. package/dist/src/facts/server/authorization_sql_builder.d.ts +22 -0
  194. package/dist/src/facts/server/authorization_sql_builder.d.ts.map +1 -0
  195. package/dist/src/facts/server/fact_box.d.ts +20 -0
  196. package/dist/src/facts/server/fact_box.d.ts.map +1 -0
  197. package/dist/src/facts/server/index.d.ts +64 -0
  198. package/dist/src/facts/server/index.d.ts.map +1 -0
  199. package/dist/src/facts/server/predicate_extractor.d.ts +8 -0
  200. package/dist/src/facts/server/predicate_extractor.d.ts.map +1 -0
  201. package/dist/src/facts/server/query_subscription_service.d.ts +14 -0
  202. package/dist/src/facts/server/query_subscription_service.d.ts.map +1 -0
  203. package/dist/src/facts/server/subscription_service.d.ts +1 -0
  204. package/dist/src/facts/server/subscription_service.d.ts.map +1 -0
  205. package/dist/src/quota/index.d.ts +38 -0
  206. package/dist/src/quota/index.d.ts.map +1 -0
  207. package/dist/src/server/cache.d.ts +7 -0
  208. package/dist/src/server/cache.d.ts.map +1 -0
  209. package/dist/src/server/controllers/attributes_controller.d.ts +16 -0
  210. package/dist/src/server/controllers/attributes_controller.d.ts.map +1 -0
  211. package/dist/src/server/controllers/facts_controller.d.ts +7 -0
  212. package/dist/src/server/controllers/facts_controller.d.ts.map +1 -0
  213. package/dist/src/server/controllers/oidc_controller.d.ts +5 -0
  214. package/dist/src/server/controllers/oidc_controller.d.ts.map +1 -0
  215. package/dist/src/server/controllers/quota_controller.d.ts +5 -0
  216. package/dist/src/server/controllers/quota_controller.d.ts.map +1 -0
  217. package/dist/src/server/controllers/subscription_controller.d.ts +9 -0
  218. package/dist/src/server/controllers/subscription_controller.d.ts.map +1 -0
  219. package/dist/src/server/controllers/userinfo_controller.d.ts +7 -0
  220. package/dist/src/server/controllers/userinfo_controller.d.ts.map +1 -0
  221. package/dist/src/server/index.d.ts +2 -0
  222. package/dist/src/server/index.d.ts.map +1 -0
  223. package/dist/src/server/instrumentation/config.d.ts +14 -0
  224. package/dist/src/server/instrumentation/config.d.ts.map +1 -0
  225. package/dist/src/server/instrumentation/index.d.ts +11 -0
  226. package/dist/src/server/instrumentation/index.d.ts.map +1 -0
  227. package/dist/src/server/instrumentation/manual/minio.d.ts +8 -0
  228. package/dist/src/server/instrumentation/manual/minio.d.ts.map +1 -0
  229. package/dist/src/server/instrumentation/manual/socketio.d.ts +9 -0
  230. package/dist/src/server/instrumentation/manual/socketio.d.ts.map +1 -0
  231. package/dist/src/server/instrumentation.d.ts +10 -0
  232. package/dist/src/server/instrumentation.d.ts.map +1 -0
  233. package/dist/src/server/middleware/attribute.d.ts +5 -0
  234. package/dist/src/server/middleware/attribute.d.ts.map +1 -0
  235. package/dist/src/server/middleware/authentication.d.ts +2 -0
  236. package/dist/src/server/middleware/authentication.d.ts.map +1 -0
  237. package/dist/src/server/middleware/clear_cookies.d.ts +2 -0
  238. package/dist/src/server/middleware/clear_cookies.d.ts.map +1 -0
  239. package/dist/src/server/middleware/error_handler.d.ts +2 -0
  240. package/dist/src/server/middleware/error_handler.d.ts.map +1 -0
  241. package/dist/src/server/middleware/fact.d.ts +2 -0
  242. package/dist/src/server/middleware/fact.d.ts.map +1 -0
  243. package/dist/src/server/middleware/quota_upgrade.d.ts +3 -0
  244. package/dist/src/server/middleware/quota_upgrade.d.ts.map +1 -0
  245. package/dist/src/server/payment_provider/abstract_provider.d.ts +8 -0
  246. package/dist/src/server/payment_provider/abstract_provider.d.ts.map +1 -0
  247. package/dist/src/server/payment_provider/index.d.ts +5 -0
  248. package/dist/src/server/payment_provider/index.d.ts.map +1 -0
  249. package/dist/src/server/payment_provider/paddle.d.ts +16 -0
  250. package/dist/src/server/payment_provider/paddle.d.ts.map +1 -0
  251. package/dist/src/server/quota/index.d.ts +43 -0
  252. package/dist/src/server/quota/index.d.ts.map +1 -0
  253. package/dist/src/server/routes.d.ts +3 -0
  254. package/dist/src/server/routes.d.ts.map +1 -0
  255. package/dist/src/server/service_bus_mount.d.ts +10 -0
  256. package/dist/src/server/service_bus_mount.d.ts.map +1 -0
  257. package/dist/src/server/services/predicate_extractor.d.ts +24 -0
  258. package/dist/src/server/services/predicate_extractor.d.ts.map +1 -0
  259. package/dist/src/server/services/query_subscription_service.d.ts +42 -0
  260. package/dist/src/server/services/query_subscription_service.d.ts.map +1 -0
  261. package/dist/src/server/services/subscription_hooks.d.ts +18 -0
  262. package/dist/src/server/services/subscription_hooks.d.ts.map +1 -0
  263. package/dist/wdio.conf.d.ts +3 -0
  264. package/dist/wdio.conf.d.ts.map +1 -0
  265. package/package.json +121 -0
@@ -0,0 +1,46 @@
1
+ import LinkedRecords from '.';
2
+ import AbstractAttributeClient from '../attributes/abstract/abstract_attribute_client';
3
+ import IsSerializable from '../attributes/abstract/is_serializable';
4
+ import LongTextAttribute from '../attributes/long_text/client';
5
+ import KeyValueAttribute from '../attributes/key_value/client';
6
+ import BlobAttribute from '../attributes/blob/client';
7
+ import { CompoundAttributeQuery, FactQueryWithOptionalSubjectPlaceholder } from '../attributes/attribute_query';
8
+ import ClientServerBus from '../../lib/client-server-bus/client';
9
+ type ArrayContains<T, U> = T extends Array<infer E> ? Extract<E, U> extends never ? T & Array<U> : T : never;
10
+ type ConcreteTypedArray<X> = X extends ArrayContains<X, [string, string, typeof KeyValueAttribute] | [string, typeof KeyValueAttribute]> ? Array<KeyValueAttribute> : X extends ArrayContains<X, [string, string, typeof LongTextAttribute] | [string, typeof LongTextAttribute]> ? Array<LongTextAttribute> : X extends ArrayContains<X, [string, string, typeof BlobAttribute] | [string, typeof BlobAttribute]> ? Array<BlobAttribute> : Array<AbstractAttributeClient<any, any>>;
11
+ type TransformQueryRecord<X> = X extends Array<FactQueryWithOptionalSubjectPlaceholder> ? ConcreteTypedArray<X> : AbstractAttributeClient<any, any>;
12
+ type TransformCompositionCreationResult<X extends {
13
+ type?: typeof AbstractAttributeClient<any, IsSerializable> | string;
14
+ }> = X['type'] extends typeof KeyValueAttribute ? KeyValueAttribute : X['type'] extends typeof LongTextAttribute ? LongTextAttribute : X['type'] extends typeof BlobAttribute ? BlobAttribute : X['type'] extends string ? AbstractAttributeClient<any, IsSerializable> : KeyValueAttribute;
15
+ type QueryResult<T> = {
16
+ [K in keyof T]: TransformQueryRecord<T[K]>;
17
+ };
18
+ export type CompositionCreationRequest = {
19
+ [k: string]: {
20
+ type?: typeof AbstractAttributeClient<any, IsSerializable> | string;
21
+ facts?: [string, string, string?][] | undefined;
22
+ value?: any;
23
+ };
24
+ };
25
+ export default class AttributesRepository {
26
+ private linkedRecords;
27
+ private getClientServerBus;
28
+ private attributeCache;
29
+ static attributeTypes: (typeof KeyValueAttribute | typeof LongTextAttribute | typeof BlobAttribute)[];
30
+ constructor(linkedRecords: LinkedRecords, getClientServerBus: () => Promise<ClientServerBus>);
31
+ private idToAttribute;
32
+ createKeyValue(value?: object, facts?: [string, string, string?][]): Promise<KeyValueAttribute>;
33
+ createLongText(value?: string, facts?: [string, string, string?][]): Promise<LongTextAttribute>;
34
+ createBlob(value?: Blob, facts?: [string, string, string?][]): Promise<BlobAttribute>;
35
+ create(attributeType: string, value: any, facts?: [string, string, string?][]): Promise<AbstractAttributeClient<any, IsSerializable>>;
36
+ createAll<CCR extends CompositionCreationRequest>(attr: CCR): Promise<{
37
+ [K in keyof CCR]: TransformCompositionCreationResult<CCR[K]>;
38
+ }>;
39
+ find(attributeId: string, ignoreCache?: boolean): Promise<AbstractAttributeClient<any, IsSerializable> | undefined>;
40
+ findAll<T extends CompoundAttributeQuery>(query: T, ignoreCache?: boolean): Promise<QueryResult<T>>;
41
+ findAndLoadAll<T extends CompoundAttributeQuery>(query: T): Promise<QueryResult<T>>;
42
+ subscribeToQuery<T extends CompoundAttributeQuery>(query: T, onChange: (result: QueryResult<T>) => void): Promise<() => void>;
43
+ clearCache(): void;
44
+ }
45
+ export {};
46
+ //# sourceMappingURL=attributes_repository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attributes_repository.d.ts","sourceRoot":"","sources":["../../../src/browser_sdk/attributes_repository.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import LinkedRecords from '.';
2
+ import Fact from '../facts/client';
3
+ import { FactQuery } from '../facts/fact_query';
4
+ export default class FactsRepository {
5
+ linkedRecords: LinkedRecords;
6
+ constructor(linkedRecords: LinkedRecords);
7
+ createAll(facts: [string?, string?, string?][]): Promise<Fact[]>;
8
+ findAll(query: FactQuery | FactQuery[]): Promise<Fact[]>;
9
+ deleteAll(facts: [string, string, string][]): Promise<void>;
10
+ }
11
+ //# sourceMappingURL=facts_repository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"facts_repository.d.ts","sourceRoot":"","sources":["../../../src/browser_sdk/facts_repository.ts"],"names":[],"mappings":"AAEA,OAAO,aAAa,MAAM,GAAG,CAAC;AAC9B,OAAO,IAAI,MAAM,iBAAiB,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,MAAM,CAAC,OAAO,OAAO,eAAe;IAClC,aAAa,EAAE,aAAa,CAAC;gBAEjB,aAAa,EAAE,aAAa;IAIlC,SAAS,CAAC,KAAK,EAAE,CAAE,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAE,EAAE,GACtD,OAAO,CAAC,IAAI,EAAE,CAAC;IAoBT,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAiCxD,SAAS,CAAC,KAAK,EAAE,CAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAMpE"}
@@ -0,0 +1,69 @@
1
+ import LongTextAttribute from '../attributes/long_text/client';
2
+ import KeyValueAttribute from '../attributes/key_value/client';
3
+ import KeyValueChange from '../attributes/key_value/key_value_change';
4
+ import LongTextChange from '../attributes/long_text/long_text_change';
5
+ import ClientServerBus from '../../lib/client-server-bus/client';
6
+ import FactsRepository from './facts_repository';
7
+ import AttributesRepository from './attributes_repository';
8
+ import { QuotaAsJSON } from '../server/quota';
9
+ import { OIDCConfig } from './oidc';
10
+ type FetchOptions = {
11
+ headers?: object | undefined;
12
+ method?: string;
13
+ body?: any;
14
+ isJSON?: boolean;
15
+ doNotHandleExpiredSessions?: boolean;
16
+ skipWaitForUserId?: boolean;
17
+ };
18
+ export { LongTextAttribute, KeyValueAttribute, KeyValueChange, LongTextChange, };
19
+ export default class LinkedRecords {
20
+ static fetchUserInfoPromise: any;
21
+ KeyValueChange: typeof KeyValueChange;
22
+ private clientServerBus;
23
+ serverURL: URL;
24
+ loginHandler?: () => void;
25
+ connectionLostHandler?: (err?: any) => void;
26
+ unknownServerErrorHandler?: (response: any) => void;
27
+ quotaViolationErrorHandler?: (response: any) => void;
28
+ authorizationErrorHandler?: (response?: any) => void;
29
+ attributeClientIdSuffix: number;
30
+ clientId: string;
31
+ actorId: string | undefined;
32
+ Attribute: AttributesRepository;
33
+ Fact: FactsRepository;
34
+ private oidcManager?;
35
+ private qetQuotaPromise;
36
+ static getPublicClient(url: string): LinkedRecords;
37
+ constructor(serverURL: URL, oidcConfig?: OIDCConfig, autoHandleRedirect?: boolean, deferUserInfoFetching?: boolean);
38
+ getAttributeClientId(): string;
39
+ getClientServerBus(): Promise<ClientServerBus>;
40
+ getUserIdByEmail(email: string): Promise<string | undefined>;
41
+ isAuthorizedToSeeMemberOf(nodeId: string): Promise<boolean>;
42
+ getMembersOf(nodeId: string): Promise<{
43
+ id: string;
44
+ username: string;
45
+ }[]>;
46
+ getQuota(nodeId?: string): Promise<QuotaAsJSON>;
47
+ fetch(url: string, fetchOpt?: FetchOptions): Promise<any>;
48
+ withConnectionLostHandler(fn: () => Promise<any>): Promise<any>;
49
+ setConnectionLostHandler(handler: (err?: any) => void): void;
50
+ handleConnectionError(error: any): void;
51
+ setLoginHandler(handler: () => void): void;
52
+ handleExpiredLoginSession(): void;
53
+ setUnknownServerErrorHandler(handler: (response: any) => void): void;
54
+ handleUnknownServerError(response: any): void;
55
+ setQuotaViolationErrorHandler(handler: (response: any) => void): void;
56
+ handleQuotaViolationError(response: any): void;
57
+ setAuthorizationErrorHandler(handler: (response: any) => void): void;
58
+ handleAuthorizationError(response?: any): void;
59
+ fetchUserInfo(): Promise<Record<string, string> | undefined>;
60
+ ensureUserIdIsKnown(): Promise<string | undefined>;
61
+ getCurrentUserEmail(): Promise<string>;
62
+ login(): Promise<void>;
63
+ handleRedirectCallback(): Promise<import("oidc-client-ts").User>;
64
+ logout(): Promise<void>;
65
+ isAuthenticated(): Promise<boolean>;
66
+ getUser(): Promise<import("oidc-client-ts").User | null>;
67
+ getAccessToken(): Promise<string | null>;
68
+ }
69
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/browser_sdk/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import { User } from 'oidc-client-ts';
2
+ export interface OIDCConfig {
3
+ client_id?: string;
4
+ redirect_uri: string;
5
+ authority?: string;
6
+ post_logout_redirect_uri?: string;
7
+ scope?: string;
8
+ response_type?: string;
9
+ silent_redirect_uri?: string;
10
+ automaticSilentRenew?: boolean;
11
+ useSessionStorage?: boolean;
12
+ }
13
+ export declare class OIDCManager {
14
+ private userManager;
15
+ private user;
16
+ private ready;
17
+ private redirectOriginPath?;
18
+ constructor(config: OIDCConfig, serverURL: URL);
19
+ private initialize;
20
+ login(): Promise<void>;
21
+ handleRedirectCallback(): Promise<User>;
22
+ logout(): Promise<void>;
23
+ getUser(): Promise<User | null>;
24
+ isAuthenticated(): Promise<boolean>;
25
+ getAccessToken(): Promise<string | null>;
26
+ signinSilent(): Promise<User | null>;
27
+ isOnRedirectUriRoute(): Promise<boolean>;
28
+ }
29
+ //# sourceMappingURL=oidc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oidc.d.ts","sourceRoot":"","sources":["../../../src/browser_sdk/oidc.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,IAAI,EAEL,MAAM,gBAAgB,CAAC;AAExB,MAAM,WAAW,UAAU;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,WAAW,CAAe;IAElC,OAAO,CAAC,IAAI,CAAqB;IAEjC,OAAO,CAAC,KAAK,CAAgB;IAE7B,OAAO,CAAC,kBAAkB,CAAC,CAAS;gBAExB,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG;YAehC,UAAU;IAyDlB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAatB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC;IAcvC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAMvB,OAAO,IAAI,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAQ/B,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC;IAKnC,cAAc,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAKxC,YAAY,IAAI,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAMpC,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC;CAI/C"}
@@ -0,0 +1,13 @@
1
+ export interface DevUser {
2
+ sub: string;
3
+ email: string;
4
+ name: string;
5
+ picture?: string;
6
+ }
7
+ export declare const DEV_USERS: DevUser[];
8
+ export declare function getIssuerUrl(): string;
9
+ export declare function getClientId(): string;
10
+ export declare function getAudience(): string;
11
+ export declare const TOKEN_EXPIRY: number;
12
+ export declare const CODE_EXPIRY: number;
13
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/dev-oidc/config.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,OAAO;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,SAAS,EAAE,OAAO,EAI9B,CAAC;AAEF,wBAAgB,YAAY,IAAI,MAAM,CAGrC;AAED,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,eAAO,MAAM,YAAY,QAAe,CAAC;AACzC,eAAO,MAAM,WAAW,QAAY,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { Request, Response } from 'express';
2
+ export declare function discoveryHandler(_req: Request, res: Response): void;
3
+ export declare function jwksHandler(_req: Request, res: Response): void;
4
+ export declare function authorizeGetHandler(req: Request, res: Response): void;
5
+ export declare function authorizePostHandler(req: Request, res: Response): void;
6
+ export declare function tokenHandler(req: Request, res: Response): Promise<void>;
7
+ export declare function userinfoHandler(req: Request, res: Response): void;
8
+ //# sourceMappingURL=endpoints.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoints.d.ts","sourceRoot":"","sources":["../../../src/dev-oidc/endpoints.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAsC5C,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI,CAiBnE;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI,CAE9D;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI,CAmBrE;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI,CAgEtE;AAED,wBAAsB,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAiH7E;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI,CAkCjE"}
@@ -0,0 +1,5 @@
1
+ import { initializeKeys } from './keys';
2
+ declare const router: any;
3
+ export { initializeKeys };
4
+ export default router;
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dev-oidc/index.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAExC,QAAA,MAAM,MAAM,KAAW,CAAC;AAqBxB,OAAO,EAAE,cAAc,EAAE,CAAC;AAC1B,eAAe,MAAM,CAAC"}
@@ -0,0 +1,9 @@
1
+ import * as jose from 'jose';
2
+ export declare function initializeKeys(): Promise<void>;
3
+ export declare function getPrivateKey(): jose.KeyLike;
4
+ export declare function getPublicKey(): jose.KeyLike;
5
+ export declare function getJWKS(): {
6
+ keys: jose.JWK[];
7
+ };
8
+ export declare function getKeyId(): string;
9
+ //# sourceMappingURL=keys.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../src/dev-oidc/keys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAQ7B,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAapD;AAED,wBAAgB,aAAa,IAAI,IAAI,CAAC,OAAO,CAK5C;AAED,wBAAgB,YAAY,IAAI,IAAI,CAAC,OAAO,CAK3C;AAED,wBAAgB,OAAO,IAAI;IAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAA;CAAE,CAK9C;AAED,wBAAgB,QAAQ,IAAI,MAAM,CAEjC"}
@@ -0,0 +1,3 @@
1
+ import { DevUser } from './config';
2
+ export declare function generateLoginPage(users: DevUser[], redirectUri: string, state: string, nonce: string, codeChallenge: string, codeChallengeMethod: string): string;
3
+ //# sourceMappingURL=login-page.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login-page.d.ts","sourceRoot":"","sources":["../../../src/dev-oidc/login-page.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAcnC,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,OAAO,EAAE,EAChB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,EACrB,mBAAmB,EAAE,MAAM,GAC1B,MAAM,CAiOR"}
@@ -0,0 +1,15 @@
1
+ import LinkedRecords from '../../browser_sdk';
2
+ export default class Fact {
3
+ linkedRecords: LinkedRecords;
4
+ subject: string;
5
+ predicate: string;
6
+ object: string;
7
+ constructor(linkedRecords: LinkedRecords, subject: string, predicate: string, object: string);
8
+ toJSON(): {
9
+ subject: string;
10
+ predicate: string;
11
+ object: string;
12
+ };
13
+ save(): Promise<void>;
14
+ }
15
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/facts/client/index.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,mBAAmB,CAAC;AAE9C,MAAM,CAAC,OAAO,OAAO,IAAI;IACvB,aAAa,EAAE,aAAa,CAAC;IAE7B,OAAO,EAAE,MAAM,CAAC;IAEhB,SAAS,EAAE,MAAM,CAAC;IAElB,MAAM,EAAE,MAAM,CAAC;gBAEH,aAAa,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAO5F,MAAM;;;;;IAQA,IAAI;CAUX"}
@@ -0,0 +1,8 @@
1
+ export type SubjectQuery = string | [string, string, ('$it' | '$not($it)')?];
2
+ export type SubjectQueries = SubjectQuery[];
3
+ export type FactQuery = {
4
+ subject?: SubjectQueries;
5
+ predicate?: string[];
6
+ object?: SubjectQueries;
7
+ };
8
+ //# sourceMappingURL=fact_query.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fact_query.d.ts","sourceRoot":"","sources":["../../../src/facts/fact_query.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;AAE7E,MAAM,MAAM,cAAc,GAAG,YAAY,EAAE,CAAC;AAE5C,MAAM,MAAM,SAAS,GAAG;IACtB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,CAAC,EAAE,cAAc,CAAA;CACxB,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type Fact from '.';
2
+ import IsLogger from '../../../lib/is_logger';
3
+ import { ResolveToAttributesResult } from '../../attributes/attribute_query';
4
+ import { Role } from './authorization_sql_builder';
5
+ export default class AuthCache {
6
+ static hasCachedAccess(userid: string, roles: Role[], attributeId: string, logger: IsLogger): Promise<boolean>;
7
+ static onFactDeletion(fact: Fact, logger: IsLogger): Promise<void>;
8
+ static cache(userid: string, roles: Role[], attributeId: string, logger: IsLogger): Promise<void>;
9
+ static cacheQueryResult(actorId: string, result: ResolveToAttributesResult, logger: IsLogger): Promise<void>;
10
+ private static getCachedRoleCombos;
11
+ }
12
+ //# sourceMappingURL=auth_cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth_cache.d.ts","sourceRoot":"","sources":["../../../../src/facts/server/auth_cache.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,GAAG,CAAC;AAC1B,OAAO,QAAQ,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAE7E,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAGnD,MAAM,CAAC,OAAO,OAAO,SAAS;WACf,eAAe,CAC1B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,IAAI,EAAE,EACb,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,QAAQ,GACf,OAAO,CAAC,OAAO,CAAC;WAmBN,cAAc,CACzB,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,QAAQ,GACf,OAAO,CAAC,IAAI,CAAC;WAkBH,KAAK,CAChB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,IAAI,EAAE,EACb,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,QAAQ;WAyBL,gBAAgB,CAC3B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,yBAAyB,EACjC,MAAM,EAAE,QAAQ;IAwBlB,OAAO,CAAC,MAAM,CAAC,mBAAmB;CAYnC"}
@@ -0,0 +1,22 @@
1
+ import IsLogger from '../../../lib/is_logger';
2
+ export type Role = 'term' | 'creator' | 'selfAccess' | 'host' | 'member' | 'access' | 'reader' | 'referer' | 'conceptor';
3
+ export declare const rolePredicateMap: {
4
+ member: string;
5
+ host: string;
6
+ creator: string;
7
+ reader: string;
8
+ referer: string;
9
+ access: string;
10
+ conceptor: string;
11
+ };
12
+ type MembershipType = 'all' | 'directUser';
13
+ export default class AuthorizationSqlBuilder {
14
+ static getSQLToCheckAccess(userid: string, roles: Role[], attributeId: string, logger: IsLogger): Promise<string>;
15
+ static selectSubjectsInAnyGroup(userid: string, roles: Role[], attributeId: string | undefined, logger: IsLogger, membershipType?: MembershipType): Promise<string>;
16
+ static getGroupsOfTheUser(userid: string, membershipType: MembershipType, factScope: {
17
+ internalUserId: number;
18
+ factBoxIds: number[];
19
+ }): Promise<string>;
20
+ }
21
+ export {};
22
+ //# sourceMappingURL=authorization_sql_builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authorization_sql_builder.d.ts","sourceRoot":"","sources":["../../../../src/facts/server/authorization_sql_builder.ts"],"names":[],"mappings":"AAEA,OAAO,QAAQ,MAAM,wBAAwB,CAAC;AAG9C,MAAM,MAAM,IAAI,GAAG,MAAM,GAAG,SAAS,GAAG,YAAY,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;AAEzH,eAAO,MAAM,gBAAgB;;;;;;;;CAQ5B,CAAC;AAEF,KAAK,cAAc,GAAG,KAAK,GAAG,YAAY,CAAC;AAE3C,MAAM,CAAC,OAAO,OAAO,uBAAuB;WACtB,mBAAmB,CACrC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,IAAI,EAAE,EACb,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,QAAQ;WAaE,wBAAwB,CAC1C,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,IAAI,EAAE,EACb,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,MAAM,EAAE,QAAQ,EAChB,cAAc,GAAE,cAAsB;WAmDpB,kBAAkB,CACpC,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,cAAc,EAC9B,SAAS,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE;CAY9D"}
@@ -0,0 +1,20 @@
1
+ import Fact from '.';
2
+ import IsLogger from '../../../lib/is_logger';
3
+ export default class FactBox {
4
+ id: number;
5
+ graphId: number | null;
6
+ constructor(id: number, graphId: number | null);
7
+ static getNewFactBoxId(logger: IsLogger): Promise<any>;
8
+ static getNewGraphId(logger: IsLogger): Promise<any>;
9
+ static getFactBoxPlacement(userId: string, fact: Fact, logger: IsLogger): Promise<FactBox>;
10
+ static isUserAssociatedToFactBox(factBoxId: number, userId: string, logger: IsLogger): Promise<boolean>;
11
+ static getAllAssociatedUsersByNode(nodeId: string, logger: IsLogger): Promise<any>;
12
+ static getInternalUserId(userid: string, logger: IsLogger): Promise<number>;
13
+ private static getFactPlacementOf;
14
+ private static ensureUserIsAssignedToFactBox;
15
+ private static moveUserGraphToNewFactBox;
16
+ private static mergeUserGraphs;
17
+ private static mergeUserGraphToFactBox;
18
+ private static mergeFactBoxes;
19
+ }
20
+ //# sourceMappingURL=fact_box.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fact_box.d.ts","sourceRoot":"","sources":["../../../../src/facts/server/fact_box.ts"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,GAAG,CAAC;AACrB,OAAO,QAAQ,MAAM,wBAAwB,CAAC;AAI9C,MAAM,CAAC,OAAO,OAAO,OAAO;IAC1B,EAAE,EAAE,MAAM,CAAC;IAEX,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;gBAEX,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;WAK1B,eAAe,CAAC,MAAM,EAAE,QAAQ;WAOhC,aAAa,CAAC,MAAM,EAAE,QAAQ;WAOrC,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;WAmG5E,yBAAyB,CAC3C,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,QAAQ,GACf,OAAO,CAAC,OAAO,CAAC;WAiBC,2BAA2B,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ;WAY5D,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;mBAqBnE,kBAAkB;mBAwClB,6BAA6B;mBAgB7B,yBAAyB;mBA0BzB,eAAe;mBAiBf,uBAAuB;mBAkCvB,cAAc;CA2CpC"}
@@ -0,0 +1,64 @@
1
+ import { FactQuery, SubjectQueries } from '../fact_query';
2
+ import IsLogger from '../../../lib/is_logger';
3
+ import { Role } from './authorization_sql_builder';
4
+ import FactBox from './fact_box';
5
+ export default class Fact {
6
+ static reservedPredicates: string[];
7
+ subject: string;
8
+ predicate: string;
9
+ object: string;
10
+ logger: IsLogger;
11
+ factBox?: FactBox;
12
+ static initDB(): Promise<void>;
13
+ static getUserIdByEmail(email: string, logger: IsLogger): Promise<string | undefined>;
14
+ static recordUserEmail(email: string, userid: string, logger: IsLogger): Promise<void>;
15
+ static isAuthorizedToReadQuota(nodeId: string, userid: string, logger: IsLogger): Promise<boolean>;
16
+ static isAuthorizedToManageQuota(nodeId: string, userid: string, logger: IsLogger): Promise<boolean>;
17
+ static isAuthorizedToModifyPayload(nodeId: string, // where nodeId is in most cases an attributeId
18
+ userid: string, logger: IsLogger): Promise<boolean>;
19
+ static isAuthorizedToReadPayload(nodeId: string, // where nodeId is in most cases an attributeId
20
+ userid: string, logger: IsLogger): Promise<boolean>;
21
+ private static withAuthNodesAndFacts;
22
+ private static authorizedSelect;
23
+ private static getSQLToResolvePossibleTransitiveQuery;
24
+ private static getSQLToResolveToSubjectIdsWithModifiers;
25
+ static refreshFactBoxPlacements(facts: Fact[], logger: IsLogger): Promise<void>;
26
+ static saveAllWithoutAuthCheck(facts: Fact[], userid: string, isNewUserScopedGraph: boolean | undefined, logger: IsLogger): Promise<FactBox | undefined>;
27
+ static saveAllWithoutAuthCheckAndSpecialTreatment(facts: Fact[], userid: string, factBox: FactBox | undefined, logger: IsLogger): Promise<void>;
28
+ static findNodes(isSubjectAllOf: SubjectQueries, isObjectAllOf: SubjectQueries, blacklistNodes: [string, string][], userid: string, logger: IsLogger): Promise<any>;
29
+ static findAll({ subject, predicate, object }: FactQuery, userid: string, logger: IsLogger): Promise<Fact[]>;
30
+ constructor(subject: string, predicate: string, object: string, logger: IsLogger);
31
+ toJSON(): {
32
+ subject: string;
33
+ predicate: string;
34
+ object: string;
35
+ };
36
+ ensureValidSyntax(): void;
37
+ hasValidSubject(): boolean | null;
38
+ hasValidPredicate(): boolean | null;
39
+ hasValidObject(): boolean | null;
40
+ save(userid: string): Promise<void>;
41
+ delete(userid: string): Promise<void>;
42
+ private hasSpecialCreationLogic;
43
+ private deleteWithoutAuthCheck;
44
+ static refreshLatestState(logger: IsLogger, subPreds: [string, string][]): Promise<void>;
45
+ isAuthorizedToDelete(userid: string): Promise<boolean>;
46
+ isAuthorizedToSave(userid: string, args?: {
47
+ attributesInCreation?: string[];
48
+ }): Promise<boolean>;
49
+ setFactBox(fb: FactBox): void;
50
+ static getFactScopeByUser(userId: string, logger: IsLogger): Promise<{
51
+ internalUserId: number;
52
+ factBoxIds: number[];
53
+ }>;
54
+ static isNewUserScopedGraph(facts: Fact[], newAttributeIds: string[], userId: string, logger: IsLogger): Promise<boolean>;
55
+ static moveAllAccountabilityFactsToFactBox(attributeIds: string[], factBox: FactBox, logger: IsLogger): Promise<void>;
56
+ static areKnownSubjects(nodeIds: string[], logger: IsLogger): Promise<boolean>;
57
+ private isValidInvitation;
58
+ static hasAccess(userid: string, roles: Role[], attributeId: string, logger: IsLogger): Promise<boolean>;
59
+ private isValidCreatedAtFact;
60
+ private isValidAccountabilityTransfer;
61
+ static isKnownTerm(node: string, logger: IsLogger): Promise<boolean>;
62
+ private static getAllTerms;
63
+ }
64
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/facts/server/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { type CompoundAttributeQuery } from '../../attributes/attribute_query';
2
+ export default class PredicateExtractor {
3
+ /**
4
+ * Extracts all predicates and object values from a compound query for indexing
5
+ */
6
+ static extractFromQuery(query: CompoundAttributeQuery): Set<string>;
7
+ }
8
+ //# sourceMappingURL=predicate_extractor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"predicate_extractor.d.ts","sourceRoot":"","sources":["../../../../src/facts/server/predicate_extractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAE/E,MAAM,CAAC,OAAO,OAAO,kBAAkB;IACrC;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,sBAAsB,GAAG,GAAG,CAAC,MAAM,CAAC;CA+BpE"}
@@ -0,0 +1,14 @@
1
+ import type Fact from '.';
2
+ import IsLogger from '../../../lib/is_logger';
3
+ export default class QuerySubscriptionService {
4
+ logger: IsLogger;
5
+ constructor(logger: IsLogger);
6
+ onFactsDeleted(facts: Fact[]): Promise<void>;
7
+ onFactsAdded(facts: Fact[]): Promise<void>;
8
+ private notifyFactChanged;
9
+ private factsChangeMightAffectQuery;
10
+ private factChangeMightAffectQuery;
11
+ private static hasPredicate;
12
+ private static extractAllPredicatesFromQuery;
13
+ }
14
+ //# sourceMappingURL=query_subscription_service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query_subscription_service.d.ts","sourceRoot":"","sources":["../../../../src/facts/server/query_subscription_service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,GAAG,CAAC;AAC1B,OAAO,QAAQ,MAAM,wBAAwB,CAAC;AAK9C,MAAM,CAAC,OAAO,OAAO,wBAAwB;IAC3C,MAAM,EAAE,QAAQ,CAAC;gBAEL,MAAM,EAAE,QAAQ;IAItB,cAAc,CAClB,KAAK,EAAE,IAAI,EAAE,GACZ,OAAO,CAAC,IAAI,CAAC;IAQV,YAAY,CAChB,KAAK,EAAE,IAAI,EAAE,GACZ,OAAO,CAAC,IAAI,CAAC;YAQF,iBAAiB;YAmBjB,2BAA2B;YAgB3B,0BAA0B;IAyCxC,OAAO,CAAC,MAAM,CAAC,YAAY;IAK3B,OAAO,CAAC,MAAM,CAAC,6BAA6B;CA+B7C"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=subscription_service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subscription_service.d.ts","sourceRoot":"","sources":["../../../../src/facts/server/subscription_service.ts"],"names":[],"mappings":""}
@@ -0,0 +1,38 @@
1
+ import AbstractAttributeServer from '../attributes/abstract/abstract_attribute_server';
2
+ import AttributeStorage from '../attributes/attribute_storage';
3
+ import Fact from '../facts/server';
4
+ import IsLogger from '../../lib/is_logger';
5
+ import PgPoolWithLog from '../../lib/pg-log';
6
+ type QuotaAsJSON = {
7
+ nodeId: string;
8
+ totalStorageAvailable: number;
9
+ remainingStorageAvailable: number;
10
+ usedStorage: number;
11
+ };
12
+ export type QuotaEvent = {
13
+ nodeId: string;
14
+ totalStorageAvailable: number;
15
+ paymentProvider: string;
16
+ };
17
+ export default class Quota {
18
+ readonly nodeId: string;
19
+ logger: IsLogger;
20
+ attributeStorage: AttributeStorage;
21
+ pool: PgPoolWithLog;
22
+ static getDefaultStorageSizeQuota(): number;
23
+ static getAccounteeIdForNode(nodeId: string, logger: IsLogger): Promise<string>;
24
+ constructor(nodeId: string, logger: IsLogger);
25
+ set(totalStorageAvailable: number, paymentProvider: string, paymentProviderPayload: string): Promise<void>;
26
+ toJSON(): Promise<QuotaAsJSON>;
27
+ getTotalStorageAvailable(): Promise<number>;
28
+ private static isNodeWithQuotaAssignment;
29
+ private getAccountableNodes;
30
+ static ensureStorageSpaceToSave<T>(actorId: string, attributesAndValuesToSave: [AbstractAttributeServer<T, any, any>, T][], logger: IsLogger, factsToSave?: Fact[]): Promise<void>;
31
+ private static estimateRemainingStorageSize;
32
+ private static getRemainingStorageSize;
33
+ private getUsedStorageSize;
34
+ private static getAccountableMap;
35
+ private static getStorageRequiredByAccountee;
36
+ }
37
+ export {};
38
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/quota/index.ts"],"names":[],"mappings":"AAAA,OAAO,uBAAuB,MAAM,kDAAkD,CAAC;AAEvF,OAAO,gBAAgB,MAAM,iCAAiC,CAAC;AAC/D,OAAO,IAAI,MAAM,iBAAiB,CAAC;AACnC,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAC3C,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAO7C,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,qBAAqB,EAAE,MAAM,CAAC;IAC9B,yBAAyB,EAAE,MAAM,CAAC;IAClC,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,qBAAqB,EAAE,MAAM,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,KAAK;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,MAAM,EAAE,QAAQ,CAAC;IAEjB,gBAAgB,EAAE,gBAAgB,CAAC;IAEnC,IAAI,EAAE,aAAa,CAAC;IAEpB,MAAM,CAAC,0BAA0B,IAAI,MAAM;WAOvB,qBAAqB,CACvC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,QAAQ,GACf,OAAO,CAAC,MAAM,CAAC;gBAkCN,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ;IAO/B,GAAG,CACd,qBAAqB,EAAE,MAAM,EAC7B,eAAe,EAAE,MAAM,EACvB,sBAAsB,EAAE,MAAM;IAUnB,MAAM,IAAI,OAAO,CAAC,WAAW,CAAC;IAc9B,wBAAwB,IAAI,OAAO,CAAC,MAAM,CAAC;mBAcnC,yBAAyB;YAehC,mBAAmB;WA2BpB,wBAAwB,CAAC,CAAC,EACrC,OAAO,EAAE,MAAM,EACf,yBAAyB,EAAE,CAAC,uBAAuB,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,EACtE,MAAM,EAAE,QAAQ,EAChB,WAAW,GAAE,IAAI,EAAO,GACvB,OAAO,CAAC,IAAI,CAAC;mBA+BK,4BAA4B;mBAwB5B,uBAAuB;YAY9B,kBAAkB;mBAaX,iBAAiB;mBA8BjB,6BAA6B;CAuBnD"}
@@ -0,0 +1,7 @@
1
+ declare const _default: {
2
+ get: (key: string) => any;
3
+ set: (key: string, value: any) => Map<any, any>;
4
+ invalidate: (key: string) => void;
5
+ };
6
+ export default _default;
7
+ //# sourceMappingURL=cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../src/server/cache.ts"],"names":[],"mappings":";eAqCa,MAAM;eACN,MAAM,SAAS,GAAG;sBACX,MAAM;;AAH1B,wBAWE"}
@@ -0,0 +1,16 @@
1
+ export default class Controller {
2
+ static index(req: any, res: any): Promise<void>;
3
+ static getMembers(req: any, res: any): Promise<void>;
4
+ static createComposition(req: any, res: any): Promise<void>;
5
+ static create(req: any, res: any): Promise<void>;
6
+ static get(req: any, res: any): Promise<void>;
7
+ static update(req: any, res: any): Promise<void>;
8
+ private static resolveToAttributesResultToFlatArray;
9
+ private static createCompositionWithoutRequestObject;
10
+ private static getNamedAttributesToIdDictionaryAndAnnotateComposition;
11
+ private static resolvePlaceholdersInFactComposition;
12
+ private static findUnauthorizedFacts;
13
+ private static groupCompositionByAttributeClass;
14
+ private static getCompositionResult;
15
+ }
16
+ //# sourceMappingURL=attributes_controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attributes_controller.d.ts","sourceRoot":"","sources":["../../../../src/server/controllers/attributes_controller.ts"],"names":[],"mappings":"AA4BA,MAAM,CAAC,OAAO,OAAO,UAAU;WAChB,KAAK,CAAC,GAAG,KAAA,EAAE,GAAG,KAAA;WAsBd,UAAU,CAAC,GAAG,KAAA,EAAE,GAAG,KAAA;WA+BnB,iBAAiB,CAAC,GAAG,KAAA,EAAE,GAAG,KAAA;WA8B1B,MAAM,CAAC,GAAG,KAAA,EAAE,GAAG,KAAA;WAwEf,GAAG,CAAC,GAAG,KAAA,EAAE,GAAG,KAAA;WA8BZ,MAAM,CAAC,GAAG,KAAA,EAAE,GAAG,KAAA;IAW5B,OAAO,CAAC,MAAM,CAAC,oCAAoC;mBAkB9B,qCAAqC;IAuE1D,OAAO,CAAC,MAAM,CAAC,sDAAsD;IAgCrE,OAAO,CAAC,MAAM,CAAC,oCAAoC;mBA0E9B,qBAAqB;IAmB1C,OAAO,CAAC,MAAM,CAAC,gCAAgC;mBAoC1B,oBAAoB;CAkB1C"}
@@ -0,0 +1,7 @@
1
+ declare const _default: {
2
+ index(req: any, res: any): Promise<void>;
3
+ create(req: any, res: any): Promise<void>;
4
+ delete(req: any, res: any): Promise<void>;
5
+ };
6
+ export default _default;
7
+ //# sourceMappingURL=facts_controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"facts_controller.d.ts","sourceRoot":"","sources":["../../../../src/server/controllers/facts_controller.ts"],"names":[],"mappings":";;;;;AAGA,wBAmEE"}
@@ -0,0 +1,5 @@
1
+ declare const _default: {
2
+ discovery(_req: any, res: any): Promise<any>;
3
+ };
4
+ export default _default;
5
+ //# sourceMappingURL=oidc_controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oidc_controller.d.ts","sourceRoot":"","sources":["../../../../src/server/controllers/oidc_controller.ts"],"names":[],"mappings":";;;AAAA,wBAqBE"}
@@ -0,0 +1,5 @@
1
+ declare const _default: {
2
+ get(req: any, res: any): Promise<void>;
3
+ };
4
+ export default _default;
5
+ //# sourceMappingURL=quota_controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quota_controller.d.ts","sourceRoot":"","sources":["../../../../src/server/controllers/quota_controller.ts"],"names":[],"mappings":";;;AAGA,wBAyBE"}
@@ -0,0 +1,9 @@
1
+ import QuerySubscriptionService from '../services/query_subscription_service';
2
+ export default class SubscriptionController {
3
+ private subscriptionService;
4
+ constructor(subscriptionService: QuerySubscriptionService);
5
+ static subscribe(req: any, res: any): Promise<void>;
6
+ static unsubscribe(req: any, res: any): Promise<void>;
7
+ static listSubscriptions(req: any, res: any): Promise<void>;
8
+ }
9
+ //# sourceMappingURL=subscription_controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subscription_controller.d.ts","sourceRoot":"","sources":["../../../../src/server/controllers/subscription_controller.ts"],"names":[],"mappings":"AAAA,OAAO,wBAAwB,MAAM,wCAAwC,CAAC;AAG9E,MAAM,CAAC,OAAO,OAAO,sBAAsB;IACzC,OAAO,CAAC,mBAAmB,CAA2B;gBAE1C,mBAAmB,EAAE,wBAAwB;WAI5C,SAAS,CAAC,GAAG,KAAA,EAAE,GAAG,KAAA;WA0BlB,WAAW,CAAC,GAAG,KAAA,EAAE,GAAG,KAAA;WAoBpB,iBAAiB,CAAC,GAAG,KAAA,EAAE,GAAG,KAAA;CAcxC"}
@@ -0,0 +1,7 @@
1
+ export declare const hashUserId: (id: any) => string;
2
+ export declare const uid: (req: any) => any;
3
+ declare const _default: {
4
+ userinfo(req: any, res: any): Promise<void>;
5
+ };
6
+ export default _default;
7
+ //# sourceMappingURL=userinfo_controller.d.ts.map