@decaf-ts/integrations 0.3.12 → 0.4.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 (196) hide show
  1. package/README.md +11 -3
  2. package/dist/integrations.cjs +445 -7
  3. package/dist/integrations.js +479 -8
  4. package/jest.config.cjs +1 -1
  5. package/lib/cjs/feature-flags/constants.cjs +16 -0
  6. package/lib/cjs/feature-flags/decorators.cjs +65 -0
  7. package/lib/cjs/feature-flags/environment.cjs +26 -0
  8. package/lib/cjs/feature-flags/index.cjs +31 -0
  9. package/lib/cjs/feature-flags/models/FeatureFlag.model.cjs +81 -0
  10. package/lib/cjs/feature-flags/models/FeatureFlagAccess.model.cjs +78 -0
  11. package/lib/cjs/feature-flags/readers/FeatureFlagReader.cjs +25 -0
  12. package/lib/cjs/feature-flags/readers/index.cjs +19 -0
  13. package/lib/cjs/feature-flags/services/FeatureFlag.service.cjs +259 -0
  14. package/lib/cjs/feature-flags/types.cjs +4 -0
  15. package/lib/cjs/feature-flags/utils.cjs +141 -0
  16. package/lib/cjs/graph/engine/execution/SwitchGraphNodeExecutor.cjs +9 -9
  17. package/lib/cjs/graph/shared/nodes/flow-control.cjs +4 -3
  18. package/lib/cjs/graph/shared/types.cjs +2 -2
  19. package/lib/cjs/index.cjs +6 -5
  20. package/lib/cjs/kibana/builders/KibanaIndexBuilder.cjs +329 -0
  21. package/lib/cjs/kibana/builders/KibanaIndexBuilderCollection.cjs +37 -0
  22. package/lib/cjs/kibana/builders/index.cjs +20 -0
  23. package/lib/cjs/kibana/helpers.cjs +20 -16
  24. package/lib/cjs/kibana/index.cjs +3 -2
  25. package/lib/cjs/kibana/types.cjs +11 -2
  26. package/lib/cjs/loader/ObjectLoader.cjs +154 -0
  27. package/lib/cjs/loader/families.cjs +78 -0
  28. package/lib/cjs/loader/index.cjs +28 -0
  29. package/lib/cjs/loader/types.cjs +4 -0
  30. package/lib/cjs/nest/decorators.cjs +17 -0
  31. package/lib/cjs/nest/index.cjs +3 -3
  32. package/lib/cjs/nest/keycloakAuthHandler.cjs +74 -35
  33. package/lib/cjs/nest/keycloakModule.cjs +7 -10
  34. package/lib/cjs/nest/types.cjs +2 -2
  35. package/lib/cjs/nest/utils.cjs +58 -50
  36. package/lib/cjs/plugins/contract.cjs +76 -0
  37. package/lib/cjs/plugins/index.cjs +35 -0
  38. package/lib/cjs/plugins/kibana/host.cjs +24 -0
  39. package/lib/cjs/plugins/kibana/index.cjs +38 -0
  40. package/lib/cjs/plugins/kibana/installer.cjs +180 -0
  41. package/lib/cjs/plugins/kibana/manifest.cjs +33 -0
  42. package/lib/cjs/plugins/kibana/templates.cjs +503 -0
  43. package/lib/cjs/plugins/kibana/types.cjs +33 -0
  44. package/lib/cjs/plugins/superset/host.cjs +26 -0
  45. package/lib/cjs/plugins/superset/index.cjs +40 -0
  46. package/lib/cjs/plugins/superset/installer.cjs +232 -0
  47. package/lib/cjs/plugins/superset/manifest.cjs +35 -0
  48. package/lib/cjs/plugins/superset/templates.cjs +844 -0
  49. package/lib/cjs/plugins/superset/types.cjs +39 -0
  50. package/lib/esm/feature-flags/constants.js +12 -0
  51. package/lib/esm/feature-flags/decorators.js +49 -0
  52. package/lib/esm/feature-flags/environment.js +18 -0
  53. package/lib/esm/feature-flags/index.js +14 -0
  54. package/lib/esm/feature-flags/models/FeatureFlag.model.js +72 -0
  55. package/lib/esm/feature-flags/models/FeatureFlagAccess.model.js +69 -0
  56. package/lib/esm/feature-flags/readers/FeatureFlagReader.js +19 -0
  57. package/lib/esm/feature-flags/readers/index.js +2 -0
  58. package/lib/esm/feature-flags/services/FeatureFlag.service.js +250 -0
  59. package/lib/esm/feature-flags/types.js +2 -0
  60. package/lib/esm/feature-flags/utils.js +126 -0
  61. package/lib/esm/graph/engine/execution/SwitchGraphNodeExecutor.js +8 -8
  62. package/lib/esm/graph/shared/nodes/flow-control.js +3 -2
  63. package/lib/esm/graph/shared/types.js +1 -1
  64. package/lib/esm/index.js +5 -4
  65. package/lib/esm/kibana/builders/KibanaIndexBuilder.js +319 -0
  66. package/lib/esm/kibana/builders/KibanaIndexBuilderCollection.js +32 -0
  67. package/lib/esm/kibana/builders/index.js +3 -0
  68. package/lib/esm/kibana/helpers.js +19 -15
  69. package/lib/esm/kibana/index.js +2 -1
  70. package/lib/esm/kibana/types.js +13 -2
  71. package/lib/esm/loader/ObjectLoader.js +115 -0
  72. package/lib/esm/loader/families.js +66 -0
  73. package/lib/esm/loader/index.js +11 -0
  74. package/lib/esm/loader/types.js +2 -0
  75. package/lib/esm/nest/decorators.js +12 -0
  76. package/lib/esm/nest/index.js +2 -2
  77. package/lib/esm/nest/keycloakAuthHandler.js +67 -35
  78. package/lib/esm/nest/keycloakModule.js +7 -10
  79. package/lib/esm/nest/types.js +1 -1
  80. package/lib/esm/nest/utils.js +55 -46
  81. package/lib/esm/plugins/contract.js +68 -0
  82. package/lib/esm/plugins/index.js +18 -0
  83. package/lib/esm/plugins/kibana/host.js +19 -0
  84. package/lib/esm/plugins/kibana/index.js +14 -0
  85. package/lib/esm/plugins/kibana/installer.js +140 -0
  86. package/lib/esm/plugins/kibana/manifest.js +32 -0
  87. package/lib/esm/plugins/kibana/templates.js +499 -0
  88. package/lib/esm/plugins/kibana/types.js +10 -0
  89. package/lib/esm/plugins/superset/host.js +21 -0
  90. package/lib/esm/plugins/superset/index.js +16 -0
  91. package/lib/esm/plugins/superset/installer.js +192 -0
  92. package/lib/esm/plugins/superset/manifest.js +30 -0
  93. package/lib/esm/plugins/superset/templates.js +840 -0
  94. package/lib/esm/plugins/superset/types.js +11 -0
  95. package/lib/types/feature-flags/constants.d.cts +11 -0
  96. package/lib/types/feature-flags/constants.d.mts +11 -0
  97. package/lib/types/feature-flags/decorators.d.cts +11 -0
  98. package/lib/types/feature-flags/decorators.d.mts +11 -0
  99. package/lib/types/feature-flags/environment.d.cts +11 -0
  100. package/lib/types/feature-flags/environment.d.mts +11 -0
  101. package/lib/types/feature-flags/index.d.cts +13 -0
  102. package/lib/types/feature-flags/index.d.mts +13 -0
  103. package/lib/types/feature-flags/models/FeatureFlag.model.d.cts +16 -0
  104. package/lib/types/feature-flags/models/FeatureFlag.model.d.mts +16 -0
  105. package/lib/types/feature-flags/models/FeatureFlagAccess.model.d.cts +15 -0
  106. package/lib/types/feature-flags/models/FeatureFlagAccess.model.d.mts +15 -0
  107. package/lib/types/feature-flags/readers/FeatureFlagReader.d.cts +10 -0
  108. package/lib/types/feature-flags/readers/FeatureFlagReader.d.mts +10 -0
  109. package/lib/types/feature-flags/readers/index.d.cts +1 -0
  110. package/lib/types/feature-flags/readers/index.d.mts +1 -0
  111. package/lib/types/feature-flags/services/FeatureFlag.service.d.cts +43 -0
  112. package/lib/types/feature-flags/services/FeatureFlag.service.d.mts +43 -0
  113. package/lib/types/feature-flags/types.d.cts +39 -0
  114. package/lib/types/feature-flags/types.d.mts +39 -0
  115. package/lib/types/feature-flags/utils.d.cts +13 -0
  116. package/lib/types/feature-flags/utils.d.mts +13 -0
  117. package/lib/types/graph/engine/execution/SwitchGraphNodeExecutor.d.cts +2 -2
  118. package/lib/types/graph/engine/execution/SwitchGraphNodeExecutor.d.mts +2 -2
  119. package/lib/types/graph/shared/types.d.cts +3 -3
  120. package/lib/types/graph/shared/types.d.mts +3 -3
  121. package/lib/types/index.d.cts +3 -2
  122. package/lib/types/index.d.mts +3 -2
  123. package/lib/types/kibana/builders/KibanaIndexBuilder.d.cts +67 -0
  124. package/lib/types/kibana/builders/KibanaIndexBuilder.d.mts +67 -0
  125. package/lib/types/kibana/builders/KibanaIndexBuilderCollection.d.cts +17 -0
  126. package/lib/types/kibana/builders/KibanaIndexBuilderCollection.d.mts +17 -0
  127. package/lib/types/kibana/builders/index.d.cts +2 -0
  128. package/lib/types/kibana/builders/index.d.mts +2 -0
  129. package/lib/types/kibana/index.d.cts +1 -0
  130. package/lib/types/kibana/index.d.mts +1 -0
  131. package/lib/types/kibana/types.d.cts +11 -0
  132. package/lib/types/kibana/types.d.mts +11 -0
  133. package/lib/types/loader/ObjectLoader.d.cts +27 -0
  134. package/lib/types/loader/ObjectLoader.d.mts +27 -0
  135. package/lib/types/loader/families.d.cts +34 -0
  136. package/lib/types/loader/families.d.mts +34 -0
  137. package/lib/types/loader/index.d.cts +10 -0
  138. package/lib/types/loader/index.d.mts +10 -0
  139. package/lib/types/loader/types.d.cts +24 -0
  140. package/lib/types/loader/types.d.mts +24 -0
  141. package/lib/types/nest/decorators.d.cts +8 -0
  142. package/lib/types/nest/decorators.d.mts +8 -0
  143. package/lib/types/nest/index.d.cts +1 -1
  144. package/lib/types/nest/index.d.mts +1 -1
  145. package/lib/types/nest/keycloakAuthHandler.d.cts +19 -42
  146. package/lib/types/nest/keycloakAuthHandler.d.mts +19 -42
  147. package/lib/types/nest/keycloakModule.d.cts +3 -5
  148. package/lib/types/nest/keycloakModule.d.mts +3 -5
  149. package/lib/types/nest/types.d.cts +2 -0
  150. package/lib/types/nest/types.d.mts +2 -0
  151. package/lib/types/nest/utils.d.cts +3 -4
  152. package/lib/types/nest/utils.d.mts +3 -4
  153. package/lib/types/plugins/contract.d.cts +180 -0
  154. package/lib/types/plugins/contract.d.mts +180 -0
  155. package/lib/types/plugins/index.d.cts +17 -0
  156. package/lib/types/plugins/index.d.mts +17 -0
  157. package/lib/types/plugins/kibana/host.d.cts +18 -0
  158. package/lib/types/plugins/kibana/host.d.mts +18 -0
  159. package/lib/types/plugins/kibana/index.d.cts +13 -0
  160. package/lib/types/plugins/kibana/index.d.mts +13 -0
  161. package/lib/types/plugins/kibana/installer.d.cts +45 -0
  162. package/lib/types/plugins/kibana/installer.d.mts +45 -0
  163. package/lib/types/plugins/kibana/manifest.d.cts +31 -0
  164. package/lib/types/plugins/kibana/manifest.d.mts +31 -0
  165. package/lib/types/plugins/kibana/templates.d.cts +12 -0
  166. package/lib/types/plugins/kibana/templates.d.mts +12 -0
  167. package/lib/types/plugins/kibana/types.d.cts +9 -0
  168. package/lib/types/plugins/kibana/types.d.mts +9 -0
  169. package/lib/types/plugins/superset/host.d.cts +20 -0
  170. package/lib/types/plugins/superset/host.d.mts +20 -0
  171. package/lib/types/plugins/superset/index.d.cts +15 -0
  172. package/lib/types/plugins/superset/index.d.mts +15 -0
  173. package/lib/types/plugins/superset/installer.d.cts +70 -0
  174. package/lib/types/plugins/superset/installer.d.mts +70 -0
  175. package/lib/types/plugins/superset/manifest.d.cts +28 -0
  176. package/lib/types/plugins/superset/manifest.d.mts +28 -0
  177. package/lib/types/plugins/superset/templates.d.cts +12 -0
  178. package/lib/types/plugins/superset/templates.d.mts +12 -0
  179. package/lib/types/plugins/superset/types.d.cts +10 -0
  180. package/lib/types/plugins/superset/types.d.mts +10 -0
  181. package/package.json +62 -3
  182. package/plugins/kibana/.gitignore +16 -0
  183. package/plugins/kibana/Dockerfile +19 -0
  184. package/plugins/kibana/docker-compose.yml +50 -0
  185. package/plugins/kibana/host/index.html +101 -0
  186. package/plugins/kibana/setup-dashboards.sh +84 -0
  187. package/plugins/superset/.gitignore +17 -0
  188. package/plugins/superset/Dockerfile +79 -0
  189. package/plugins/superset/docker-compose.yml +62 -0
  190. package/plugins/superset/host/index.html +168 -0
  191. package/plugins/superset/setup-dashboards.sh +106 -0
  192. package/plugins/superset/superset_config.py +49 -0
  193. package/lib/cjs/nest/authService.cjs +0 -91
  194. package/lib/esm/nest/authService.js +0 -86
  195. package/lib/types/nest/authService.d.cts +0 -63
  196. package/lib/types/nest/authService.d.mts +0 -63
@@ -0,0 +1,3 @@
1
+ export * from "./KibanaIndexBuilder.js";
2
+ export * from "./KibanaIndexBuilderCollection.js";
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMva2liYW5hL2J1aWxkZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHdDQUFxQztBQUNyQyxrREFBK0MiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9LaWJhbmFJbmRleEJ1aWxkZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL0tpYmFuYUluZGV4QnVpbGRlckNvbGxlY3Rpb25cIjtcbiJdfQ==
@@ -1,3 +1,5 @@
1
+ import { KibanaIndexMatchMode } from "./types.js";
2
+ import { KibanaIndexBuilder } from "./builders/KibanaIndexBuilder.js";
1
3
  export function createDefaultKibanaSpaceConfig(realm) {
2
4
  return {
3
5
  id: realm.toLowerCase(),
@@ -10,20 +12,22 @@ export function createDefaultKibanaSpaceConfig(realm) {
10
12
  export function createDefaultKibanaDataViewConfigs(realm) {
11
13
  const suffix = realm.toLowerCase();
12
14
  return [
13
- {
14
- id: `filebeat_pla_${suffix}`,
15
- name: `PLA Filebeat Logs (${realm})`,
16
- title: `filebeat-pla-${suffix}-*`,
17
- timeFieldName: "@timestamp",
18
- allowNoIndex: true,
19
- },
20
- {
21
- id: `logs_pla_${suffix}`,
22
- name: `PLA Metricbeat Logs (${realm})`,
23
- title: `metricbeat-pla-${suffix}-*`,
24
- timeFieldName: "@timestamp",
25
- allowNoIndex: true,
26
- },
15
+ new KibanaIndexBuilder()
16
+ .setMatchMode(KibanaIndexMatchMode.PREFIX)
17
+ .setPrefix(`filebeat-pla-${suffix}`)
18
+ .setId(`filebeat_pla_${suffix}`)
19
+ .setName(`PLA Filebeat Logs (${realm})`)
20
+ .setTimeFieldName("@timestamp")
21
+ .setAllowNoIndex(true)
22
+ .build(),
23
+ new KibanaIndexBuilder()
24
+ .setMatchMode(KibanaIndexMatchMode.PREFIX)
25
+ .setPrefix(`metricbeat-pla-${suffix}`)
26
+ .setId(`logs_pla_${suffix}`)
27
+ .setName(`PLA Metricbeat Logs (${realm})`)
28
+ .setTimeFieldName("@timestamp")
29
+ .setAllowNoIndex(true)
30
+ .build(),
27
31
  ];
28
32
  }
29
33
  export function createDefaultKibanaRoleConfig(realm) {
@@ -53,4 +57,4 @@ export function createDefaultKibanaRoleConfig(realm) {
53
57
  metadata: {},
54
58
  };
55
59
  }
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9raWJhbmEvaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFXQSxNQUFNLFVBQVUsOEJBQThCLENBQUMsS0FBYTtJQUMxRCxPQUFPO1FBQ0wsRUFBRSxFQUFFLEtBQUssQ0FBQyxXQUFXLEVBQUU7UUFDdkIsSUFBSSxFQUFFLEtBQUssQ0FBQyxXQUFXLEVBQUU7UUFDekIsV0FBVyxFQUFFLG9CQUFvQixLQUFLLENBQUMsV0FBVyxFQUFFLHNCQUFzQjtRQUMxRSxRQUFRLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFO1FBQ3pDLGdCQUFnQixFQUFFLEVBQUU7S0FDckIsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsa0NBQWtDLENBQUMsS0FBYTtJQUM5RCxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbkMsT0FBTztRQUNMO1lBQ0UsRUFBRSxFQUFFLGdCQUFnQixNQUFNLEVBQUU7WUFDNUIsSUFBSSxFQUFFLHNCQUFzQixLQUFLLEdBQUc7WUFDcEMsS0FBSyxFQUFFLGdCQUFnQixNQUFNLElBQUk7WUFDakMsYUFBYSxFQUFFLFlBQVk7WUFDM0IsWUFBWSxFQUFFLElBQUk7U0FDbkI7UUFDRDtZQUNFLEVBQUUsRUFBRSxZQUFZLE1BQU0sRUFBRTtZQUN4QixJQUFJLEVBQUUsd0JBQXdCLEtBQUssR0FBRztZQUN0QyxLQUFLLEVBQUUsa0JBQWtCLE1BQU0sSUFBSTtZQUNuQyxhQUFhLEVBQUUsWUFBWTtZQUMzQixZQUFZLEVBQUUsSUFBSTtTQUNuQjtLQUNGLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLDZCQUE2QixDQUFDLEtBQWE7SUFDekQsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ25DLE9BQU87UUFDTCxJQUFJLEVBQUUsT0FBTyxNQUFNLFNBQVM7UUFDNUIsT0FBTyxFQUFFO1lBQ1A7Z0JBQ0UsS0FBSyxFQUFFLENBQUMsZ0JBQWdCLE1BQU0sSUFBSSxFQUFFLGtCQUFrQixNQUFNLElBQUksQ0FBQztnQkFDakUsVUFBVSxFQUFFLENBQUMsTUFBTSxFQUFFLHFCQUFxQixDQUFDO2dCQUMzQyx3QkFBd0IsRUFBRSxLQUFLO2FBQ2hDO1NBQ0Y7UUFDRCxZQUFZLEVBQUU7WUFDWjtnQkFDRSxXQUFXLEVBQUUsZ0JBQWdCO2dCQUM3QixVQUFVLEVBQUUsQ0FBQyx1QkFBdUIsRUFBRSx3QkFBd0IsQ0FBQztnQkFDL0QsU0FBUyxFQUFFLENBQUMsU0FBUyxLQUFLLEVBQUUsQ0FBQzthQUM5QjtTQUNGO1FBQ0QsTUFBTSxFQUFFO1lBQ047Z0JBQ0UsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDO2dCQUNmLElBQUksRUFBRSxDQUFDLE1BQU0sQ0FBQzthQUNmO1NBQ0Y7UUFDRCxRQUFRLEVBQUUsRUFBRTtLQUNiLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9raWJhbmEvaGVscGVyc1xuICogQHN1bW1hcnkgS2liYW5hIGNvbmZpZ3VyYXRpb24gaGVscGVycy5cbiAqIEBkZXNjcmlwdGlvbiBDb252ZW5pZW5jZSBidWlsZGVycyBmb3IgZGVmYXVsdCBLaWJhbmEgc3BhY2VzLCBkYXRhIHZpZXdzLCBhbmQgcm9sZSBjb25maWd1cmF0aW9ucy5cbiAqL1xuaW1wb3J0IHR5cGUge1xuICBLaWJhbmFEYXRhVmlld0NvbmZpZyxcbiAgS2liYW5hUm9sZUNvbmZpZyxcbiAgS2liYW5hU3BhY2VDb25maWcsXG59IGZyb20gXCIuL3R5cGVzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVEZWZhdWx0S2liYW5hU3BhY2VDb25maWcocmVhbG06IHN0cmluZyk6IEtpYmFuYVNwYWNlQ29uZmlnIHtcbiAgcmV0dXJuIHtcbiAgICBpZDogcmVhbG0udG9Mb3dlckNhc2UoKSxcbiAgICBuYW1lOiByZWFsbS50b1VwcGVyQ2FzZSgpLFxuICAgIGRlc2NyaXB0aW9uOiBgVGVuYW50IHNwYWNlIGZvciAke3JlYWxtLnRvVXBwZXJDYXNlKCl9IGRhc2hib2FyZHMgYW5kIGxvZ3NgLFxuICAgIGluaXRpYWxzOiByZWFsbS5zbGljZSgwLCAyKS50b1VwcGVyQ2FzZSgpLFxuICAgIGRpc2FibGVkRmVhdHVyZXM6IFtdLFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRGVmYXVsdEtpYmFuYURhdGFWaWV3Q29uZmlncyhyZWFsbTogc3RyaW5nKTogS2liYW5hRGF0YVZpZXdDb25maWdbXSB7XG4gIGNvbnN0IHN1ZmZpeCA9IHJlYWxtLnRvTG93ZXJDYXNlKCk7XG4gIHJldHVybiBbXG4gICAge1xuICAgICAgaWQ6IGBmaWxlYmVhdF9wbGFfJHtzdWZmaXh9YCxcbiAgICAgIG5hbWU6IGBQTEEgRmlsZWJlYXQgTG9ncyAoJHtyZWFsbX0pYCxcbiAgICAgIHRpdGxlOiBgZmlsZWJlYXQtcGxhLSR7c3VmZml4fS0qYCxcbiAgICAgIHRpbWVGaWVsZE5hbWU6IFwiQHRpbWVzdGFtcFwiLFxuICAgICAgYWxsb3dOb0luZGV4OiB0cnVlLFxuICAgIH0sXG4gICAge1xuICAgICAgaWQ6IGBsb2dzX3BsYV8ke3N1ZmZpeH1gLFxuICAgICAgbmFtZTogYFBMQSBNZXRyaWNiZWF0IExvZ3MgKCR7cmVhbG19KWAsXG4gICAgICB0aXRsZTogYG1ldHJpY2JlYXQtcGxhLSR7c3VmZml4fS0qYCxcbiAgICAgIHRpbWVGaWVsZE5hbWU6IFwiQHRpbWVzdGFtcFwiLFxuICAgICAgYWxsb3dOb0luZGV4OiB0cnVlLFxuICAgIH0sXG4gIF07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVEZWZhdWx0S2liYW5hUm9sZUNvbmZpZyhyZWFsbTogc3RyaW5nKTogS2liYW5hUm9sZUNvbmZpZyB7XG4gIGNvbnN0IHN1ZmZpeCA9IHJlYWxtLnRvTG93ZXJDYXNlKCk7XG4gIHJldHVybiB7XG4gICAgbmFtZTogYHBsYV8ke3N1ZmZpeH1fcmVhZGVyYCxcbiAgICBpbmRpY2VzOiBbXG4gICAgICB7XG4gICAgICAgIG5hbWVzOiBbYGZpbGViZWF0LXBsYS0ke3N1ZmZpeH0tKmAsIGBtZXRyaWNiZWF0LXBsYS0ke3N1ZmZpeH0tKmBdLFxuICAgICAgICBwcml2aWxlZ2VzOiBbXCJyZWFkXCIsIFwidmlld19pbmRleF9tZXRhZGF0YVwiXSxcbiAgICAgICAgYWxsb3dfcmVzdHJpY3RlZF9pbmRpY2VzOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBhcHBsaWNhdGlvbnM6IFtcbiAgICAgIHtcbiAgICAgICAgYXBwbGljYXRpb246IFwia2liYW5hLS5raWJhbmFcIixcbiAgICAgICAgcHJpdmlsZWdlczogW1wiZmVhdHVyZV9kaXNjb3Zlci5yZWFkXCIsIFwiZmVhdHVyZV9kYXNoYm9hcmQucmVhZFwiXSxcbiAgICAgICAgcmVzb3VyY2VzOiBbYHNwYWNlOiR7cmVhbG19YF0sXG4gICAgICB9LFxuICAgIF0sXG4gICAga2liYW5hOiBbXG4gICAgICB7XG4gICAgICAgIHNwYWNlczogW3JlYWxtXSxcbiAgICAgICAgYmFzZTogW1wicmVhZFwiXSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBtZXRhZGF0YToge30sXG4gIH07XG59XG4iXX0=
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9raWJhbmEvaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFVQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsbUJBQWdCO0FBQy9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSx5Q0FBc0M7QUFFbkUsTUFBTSxVQUFVLDhCQUE4QixDQUFDLEtBQWE7SUFDMUQsT0FBTztRQUNMLEVBQUUsRUFBRSxLQUFLLENBQUMsV0FBVyxFQUFFO1FBQ3ZCLElBQUksRUFBRSxLQUFLLENBQUMsV0FBVyxFQUFFO1FBQ3pCLFdBQVcsRUFBRSxvQkFBb0IsS0FBSyxDQUFDLFdBQVcsRUFBRSxzQkFBc0I7UUFDMUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRTtRQUN6QyxnQkFBZ0IsRUFBRSxFQUFFO0tBQ3JCLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLGtDQUFrQyxDQUFDLEtBQWE7SUFDOUQsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ25DLE9BQU87UUFDTCxJQUFJLGtCQUFrQixFQUFFO2FBQ3JCLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUM7YUFDekMsU0FBUyxDQUFDLGdCQUFnQixNQUFNLEVBQUUsQ0FBQzthQUNuQyxLQUFLLENBQUMsZ0JBQWdCLE1BQU0sRUFBRSxDQUFDO2FBQy9CLE9BQU8sQ0FBQyxzQkFBc0IsS0FBSyxHQUFHLENBQUM7YUFDdkMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDO2FBQzlCLGVBQWUsQ0FBQyxJQUFJLENBQUM7YUFDckIsS0FBSyxFQUFFO1FBQ1YsSUFBSSxrQkFBa0IsRUFBRTthQUNyQixZQUFZLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDO2FBQ3pDLFNBQVMsQ0FBQyxrQkFBa0IsTUFBTSxFQUFFLENBQUM7YUFDckMsS0FBSyxDQUFDLFlBQVksTUFBTSxFQUFFLENBQUM7YUFDM0IsT0FBTyxDQUFDLHdCQUF3QixLQUFLLEdBQUcsQ0FBQzthQUN6QyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUM7YUFDOUIsZUFBZSxDQUFDLElBQUksQ0FBQzthQUNyQixLQUFLLEVBQUU7S0FDWCxDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSw2QkFBNkIsQ0FBQyxLQUFhO0lBQ3pELE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNuQyxPQUFPO1FBQ0wsSUFBSSxFQUFFLE9BQU8sTUFBTSxTQUFTO1FBQzVCLE9BQU8sRUFBRTtZQUNQO2dCQUNFLEtBQUssRUFBRSxDQUFDLGdCQUFnQixNQUFNLElBQUksRUFBRSxrQkFBa0IsTUFBTSxJQUFJLENBQUM7Z0JBQ2pFLFVBQVUsRUFBRSxDQUFDLE1BQU0sRUFBRSxxQkFBcUIsQ0FBQztnQkFDM0Msd0JBQXdCLEVBQUUsS0FBSzthQUNoQztTQUNGO1FBQ0QsWUFBWSxFQUFFO1lBQ1o7Z0JBQ0UsV0FBVyxFQUFFLGdCQUFnQjtnQkFDN0IsVUFBVSxFQUFFLENBQUMsdUJBQXVCLEVBQUUsd0JBQXdCLENBQUM7Z0JBQy9ELFNBQVMsRUFBRSxDQUFDLFNBQVMsS0FBSyxFQUFFLENBQUM7YUFDOUI7U0FDRjtRQUNELE1BQU0sRUFBRTtZQUNOO2dCQUNFLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQztnQkFDZixJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUM7YUFDZjtTQUNGO1FBQ0QsUUFBUSxFQUFFLEVBQUU7S0FDYixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG1vZHVsZSBpbnRlZ3JhdGlvbnMva2liYW5hL2hlbHBlcnNcbiAqIEBzdW1tYXJ5IEtpYmFuYSBjb25maWd1cmF0aW9uIGhlbHBlcnMuXG4gKiBAZGVzY3JpcHRpb24gQ29udmVuaWVuY2UgYnVpbGRlcnMgZm9yIGRlZmF1bHQgS2liYW5hIHNwYWNlcywgZGF0YSB2aWV3cywgYW5kIHJvbGUgY29uZmlndXJhdGlvbnMuXG4gKi9cbmltcG9ydCB0eXBlIHtcbiAgS2liYW5hRGF0YVZpZXdDb25maWcsXG4gIEtpYmFuYVJvbGVDb25maWcsXG4gIEtpYmFuYVNwYWNlQ29uZmlnLFxufSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHsgS2liYW5hSW5kZXhNYXRjaE1vZGUgfSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHsgS2liYW5hSW5kZXhCdWlsZGVyIH0gZnJvbSBcIi4vYnVpbGRlcnMvS2liYW5hSW5kZXhCdWlsZGVyXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVEZWZhdWx0S2liYW5hU3BhY2VDb25maWcocmVhbG06IHN0cmluZyk6IEtpYmFuYVNwYWNlQ29uZmlnIHtcbiAgcmV0dXJuIHtcbiAgICBpZDogcmVhbG0udG9Mb3dlckNhc2UoKSxcbiAgICBuYW1lOiByZWFsbS50b1VwcGVyQ2FzZSgpLFxuICAgIGRlc2NyaXB0aW9uOiBgVGVuYW50IHNwYWNlIGZvciAke3JlYWxtLnRvVXBwZXJDYXNlKCl9IGRhc2hib2FyZHMgYW5kIGxvZ3NgLFxuICAgIGluaXRpYWxzOiByZWFsbS5zbGljZSgwLCAyKS50b1VwcGVyQ2FzZSgpLFxuICAgIGRpc2FibGVkRmVhdHVyZXM6IFtdLFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRGVmYXVsdEtpYmFuYURhdGFWaWV3Q29uZmlncyhyZWFsbTogc3RyaW5nKTogS2liYW5hRGF0YVZpZXdDb25maWdbXSB7XG4gIGNvbnN0IHN1ZmZpeCA9IHJlYWxtLnRvTG93ZXJDYXNlKCk7XG4gIHJldHVybiBbXG4gICAgbmV3IEtpYmFuYUluZGV4QnVpbGRlcigpXG4gICAgICAuc2V0TWF0Y2hNb2RlKEtpYmFuYUluZGV4TWF0Y2hNb2RlLlBSRUZJWClcbiAgICAgIC5zZXRQcmVmaXgoYGZpbGViZWF0LXBsYS0ke3N1ZmZpeH1gKVxuICAgICAgLnNldElkKGBmaWxlYmVhdF9wbGFfJHtzdWZmaXh9YClcbiAgICAgIC5zZXROYW1lKGBQTEEgRmlsZWJlYXQgTG9ncyAoJHtyZWFsbX0pYClcbiAgICAgIC5zZXRUaW1lRmllbGROYW1lKFwiQHRpbWVzdGFtcFwiKVxuICAgICAgLnNldEFsbG93Tm9JbmRleCh0cnVlKVxuICAgICAgLmJ1aWxkKCksXG4gICAgbmV3IEtpYmFuYUluZGV4QnVpbGRlcigpXG4gICAgICAuc2V0TWF0Y2hNb2RlKEtpYmFuYUluZGV4TWF0Y2hNb2RlLlBSRUZJWClcbiAgICAgIC5zZXRQcmVmaXgoYG1ldHJpY2JlYXQtcGxhLSR7c3VmZml4fWApXG4gICAgICAuc2V0SWQoYGxvZ3NfcGxhXyR7c3VmZml4fWApXG4gICAgICAuc2V0TmFtZShgUExBIE1ldHJpY2JlYXQgTG9ncyAoJHtyZWFsbX0pYClcbiAgICAgIC5zZXRUaW1lRmllbGROYW1lKFwiQHRpbWVzdGFtcFwiKVxuICAgICAgLnNldEFsbG93Tm9JbmRleCh0cnVlKVxuICAgICAgLmJ1aWxkKCksXG4gIF07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVEZWZhdWx0S2liYW5hUm9sZUNvbmZpZyhyZWFsbTogc3RyaW5nKTogS2liYW5hUm9sZUNvbmZpZyB7XG4gIGNvbnN0IHN1ZmZpeCA9IHJlYWxtLnRvTG93ZXJDYXNlKCk7XG4gIHJldHVybiB7XG4gICAgbmFtZTogYHBsYV8ke3N1ZmZpeH1fcmVhZGVyYCxcbiAgICBpbmRpY2VzOiBbXG4gICAgICB7XG4gICAgICAgIG5hbWVzOiBbYGZpbGViZWF0LXBsYS0ke3N1ZmZpeH0tKmAsIGBtZXRyaWNiZWF0LXBsYS0ke3N1ZmZpeH0tKmBdLFxuICAgICAgICBwcml2aWxlZ2VzOiBbXCJyZWFkXCIsIFwidmlld19pbmRleF9tZXRhZGF0YVwiXSxcbiAgICAgICAgYWxsb3dfcmVzdHJpY3RlZF9pbmRpY2VzOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBhcHBsaWNhdGlvbnM6IFtcbiAgICAgIHtcbiAgICAgICAgYXBwbGljYXRpb246IFwia2liYW5hLS5raWJhbmFcIixcbiAgICAgICAgcHJpdmlsZWdlczogW1wiZmVhdHVyZV9kaXNjb3Zlci5yZWFkXCIsIFwiZmVhdHVyZV9kYXNoYm9hcmQucmVhZFwiXSxcbiAgICAgICAgcmVzb3VyY2VzOiBbYHNwYWNlOiR7cmVhbG19YF0sXG4gICAgICB9LFxuICAgIF0sXG4gICAga2liYW5hOiBbXG4gICAgICB7XG4gICAgICAgIHNwYWNlczogW3JlYWxtXSxcbiAgICAgICAgYmFzZTogW1wicmVhZFwiXSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBtZXRhZGF0YToge30sXG4gIH07XG59XG4iXX0=
@@ -1,5 +1,6 @@
1
1
  export * from "./types.js";
2
2
  export * from "./helpers.js";
3
+ export * from "./builders/index.js";
3
4
  export * from "./services/index.js";
4
5
  /**
5
6
  * @summary Kibana integrations.
@@ -7,4 +8,4 @@ export * from "./services/index.js";
7
8
  * @namespace kibana
8
9
  * @memberOf module:integrations
9
10
  */
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMva2liYW5hL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDJCQUF3QjtBQUN4Qiw2QkFBMEI7QUFDMUIsb0NBQTJCO0FBRTNCOzs7OztHQUtHIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vdHlwZXNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2hlbHBlcnNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NlcnZpY2VzXCI7XG5cbi8qKlxuICogQHN1bW1hcnkgS2liYW5hIGludGVncmF0aW9ucy5cbiAqIEBkZXNjcmlwdGlvbiBIZWxwZXJzIGZvciBwcm92aXNpb25pbmcgS2liYW5hIHNwYWNlcywgZGF0YSB2aWV3cywgYW5kIGRhc2hib2FyZHMuXG4gKiBAbmFtZXNwYWNlIGtpYmFuYVxuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnNcbiAqL1xuIl19
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMva2liYW5hL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDJCQUF3QjtBQUN4Qiw2QkFBMEI7QUFDMUIsb0NBQTJCO0FBQzNCLG9DQUEyQjtBQUUzQjs7Ozs7R0FLRyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL3R5cGVzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9oZWxwZXJzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9idWlsZGVyc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc2VydmljZXNcIjtcblxuLyoqXG4gKiBAc3VtbWFyeSBLaWJhbmEgaW50ZWdyYXRpb25zLlxuICogQGRlc2NyaXB0aW9uIEhlbHBlcnMgZm9yIHByb3Zpc2lvbmluZyBLaWJhbmEgc3BhY2VzLCBkYXRhIHZpZXdzLCBhbmQgZGFzaGJvYXJkcy5cbiAqIEBuYW1lc3BhY2Uga2liYW5hXG4gKiBAbWVtYmVyT2YgbW9kdWxlOmludGVncmF0aW9uc1xuICovXG4iXX0=
@@ -1,2 +1,13 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMva2liYW5hL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIEtpYmFuYVVzZXIge1xuICB1c2VybmFtZTogc3RyaW5nO1xuICBwYXNzd29yZDogc3RyaW5nO1xuICBmdWxsX25hbWU/OiBzdHJpbmc7XG4gIGVtYWlsPzogc3RyaW5nO1xuICBlbmFibGVkPzogYm9vbGVhbjtcbiAgcm9sZXM/OiBzdHJpbmdbXTtcbiAgbWV0YWRhdGE/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBLaWJhbmFEYXNoYm9hcmRUYXJnZXRzIHtcbiAgW2tleTogc3RyaW5nXTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEtpYmFuYVNwYWNlQ29uZmlnIHtcbiAgaWQ6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgaW5pdGlhbHM/OiBzdHJpbmc7XG4gIGNvbG9yPzogc3RyaW5nO1xuICBkaXNhYmxlZEZlYXR1cmVzPzogc3RyaW5nW107XG4gIHNvbHV0aW9uPzogc3RyaW5nO1xuICBpbWFnZVVybD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9raWJhbmEvdHlwZXNcbiAqIEBzdW1tYXJ5IEtpYmFuYSBjb25maWd1cmF0aW9uIGFuZCBwYXlsb2FkIHR5cGVzLlxuICogQGRlc2NyaXB0aW9uIFNoYXJlZCB0eXBlIGRlZmluaXRpb25zIGZvciBLaWJhbmEgcHJvdmlzaW9uaW5nIHNlcnZpY2VzIGFuZCBzZXR1cCBwYXlsb2Fkcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBLaWJhbmFEYXRhVmlld0NvbmZpZyB7XG4gIGlkOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgdGl0bGU6IHN0cmluZztcbiAgdGltZUZpZWxkTmFtZT86IHN0cmluZztcbiAgbmFtZXNwYWNlcz86IHN0cmluZ1tdO1xuICBzb3VyY2VGaWx0ZXJzPzogQXJyYXk8eyB2YWx1ZTogc3RyaW5nIH0+O1xuICBydW50aW1lRmllbGRNYXA/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgZmllbGRBdHRycz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICBhbGxvd05vSW5kZXg/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEtpYmFuYVJvbGVDb25maWcge1xuICBuYW1lOiBzdHJpbmc7XG4gIGluZGljZXM/OiBBcnJheTx7XG4gICAgbmFtZXM6IHN0cmluZ1tdO1xuICAgIHByaXZpbGVnZXM6IHN0cmluZ1tdO1xuICAgIGFsbG93X3Jlc3RyaWN0ZWRfaW5kaWNlcz86IGJvb2xlYW47XG4gIH0+O1xuICBhcHBsaWNhdGlvbnM/OiBBcnJheTx7XG4gICAgYXBwbGljYXRpb246IHN0cmluZztcbiAgICBwcml2aWxlZ2VzOiBzdHJpbmdbXTtcbiAgICByZXNvdXJjZXM6IHN0cmluZ1tdO1xuICB9PjtcbiAga2liYW5hPzogQXJyYXk8e1xuICAgIGJhc2U/OiBzdHJpbmdbXTtcbiAgICBmZWF0dXJlPzogUmVjb3JkPHN0cmluZywgc3RyaW5nW10+O1xuICAgIHNwYWNlcz86IHN0cmluZ1tdO1xuICB9PjtcbiAgbWV0YWRhdGE/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBLaWJhbmFTZXR1cENvbmZpZyB7XG4gIGlkOiBzdHJpbmc7XG4gIGhvc3Q6IHN0cmluZztcbiAgZXNfaG9zdDogc3RyaW5nO1xuICBwcm90b2NvbDogXCJodHRwXCIgfCBcImh0dHBzXCI7XG4gIHJlYWxtOiBzdHJpbmc7XG4gIHNwYWNlPzogUGFydGlhbDxLaWJhbmFTcGFjZUNvbmZpZz47XG4gIGRhdGFWaWV3cz86IEtpYmFuYURhdGFWaWV3Q29uZmlnW107XG4gIHJvbGU/OiBQYXJ0aWFsPEtpYmFuYVJvbGVDb25maWc+O1xuICBkYXNoYm9hcmRzPzogS2liYW5hRGFzaGJvYXJkVGFyZ2V0cztcbiAgYWRtaW5BcGlVc2VyPzogS2liYW5hVXNlcjtcbiAgcmVhbG1BcGlVc2VyOiBLaWJhbmFVc2VyO1xuICBkYXNoYm9hcmRJbXBvcnRQYXRoPzogc3RyaW5nO1xuICBkYXNoYm9hcmRJbXBvcnRPdmVyd3JpdGU/OiBib29sZWFuO1xuICBhc3NldHM/OiBzdHJpbmc7XG59XG4iXX0=
1
+ /**
2
+ * Matching strategy for composing Kibana index pattern titles.
3
+ */
4
+ export var KibanaIndexMatchMode;
5
+ (function (KibanaIndexMatchMode) {
6
+ /** Single, fully-qualified index name — no wildcards. */
7
+ KibanaIndexMatchMode["EXACT"] = "exact";
8
+ /** Wildcard pattern matching all indices with a shared prefix (e.g. "filebeat-*"). */
9
+ KibanaIndexMatchMode["PREFIX"] = "prefix";
10
+ /** Index name segments derived from registered LogParameterDescriptor keys. */
11
+ KibanaIndexMatchMode["LOGGER_GENERATED"] = "logger-generated";
12
+ })(KibanaIndexMatchMode || (KibanaIndexMatchMode = {}));
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMva2liYW5hL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBDQTs7R0FFRztBQUNILE1BQU0sQ0FBTixJQUFZLG9CQU9YO0FBUEQsV0FBWSxvQkFBb0I7SUFDOUIseURBQXlEO0lBQ3pELHVDQUFlLENBQUE7SUFDZixzRkFBc0Y7SUFDdEYseUNBQWlCLENBQUE7SUFDakIsK0VBQStFO0lBQy9FLDZEQUFxQyxDQUFBO0FBQ3ZDLENBQUMsRUFQVyxvQkFBb0IsS0FBcEIsb0JBQW9CLFFBTy9CIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBLaWJhbmFVc2VyIHtcbiAgdXNlcm5hbWU6IHN0cmluZztcbiAgcGFzc3dvcmQ6IHN0cmluZztcbiAgZnVsbF9uYW1lPzogc3RyaW5nO1xuICBlbWFpbD86IHN0cmluZztcbiAgZW5hYmxlZD86IGJvb2xlYW47XG4gIHJvbGVzPzogc3RyaW5nW107XG4gIG1ldGFkYXRhPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgS2liYW5hRGFzaGJvYXJkVGFyZ2V0cyB7XG4gIFtrZXk6IHN0cmluZ106IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBLaWJhbmFTcGFjZUNvbmZpZyB7XG4gIGlkOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGluaXRpYWxzPzogc3RyaW5nO1xuICBjb2xvcj86IHN0cmluZztcbiAgZGlzYWJsZWRGZWF0dXJlcz86IHN0cmluZ1tdO1xuICBzb2x1dGlvbj86IHN0cmluZztcbiAgaW1hZ2VVcmw/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQG1vZHVsZSBpbnRlZ3JhdGlvbnMva2liYW5hL3R5cGVzXG4gKiBAc3VtbWFyeSBLaWJhbmEgY29uZmlndXJhdGlvbiBhbmQgcGF5bG9hZCB0eXBlcy5cbiAqIEBkZXNjcmlwdGlvbiBTaGFyZWQgdHlwZSBkZWZpbml0aW9ucyBmb3IgS2liYW5hIHByb3Zpc2lvbmluZyBzZXJ2aWNlcyBhbmQgc2V0dXAgcGF5bG9hZHMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgS2liYW5hRGF0YVZpZXdDb25maWcge1xuICBpZDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIHRpbWVGaWVsZE5hbWU/OiBzdHJpbmc7XG4gIG5hbWVzcGFjZXM/OiBzdHJpbmdbXTtcbiAgc291cmNlRmlsdGVycz86IEFycmF5PHsgdmFsdWU6IHN0cmluZyB9PjtcbiAgcnVudGltZUZpZWxkTWFwPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gIGZpZWxkQXR0cnM/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgYWxsb3dOb0luZGV4PzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBNYXRjaGluZyBzdHJhdGVneSBmb3IgY29tcG9zaW5nIEtpYmFuYSBpbmRleCBwYXR0ZXJuIHRpdGxlcy5cbiAqL1xuZXhwb3J0IGVudW0gS2liYW5hSW5kZXhNYXRjaE1vZGUge1xuICAvKiogU2luZ2xlLCBmdWxseS1xdWFsaWZpZWQgaW5kZXggbmFtZSDigJQgbm8gd2lsZGNhcmRzLiAqL1xuICBFWEFDVCA9IFwiZXhhY3RcIixcbiAgLyoqIFdpbGRjYXJkIHBhdHRlcm4gbWF0Y2hpbmcgYWxsIGluZGljZXMgd2l0aCBhIHNoYXJlZCBwcmVmaXggKGUuZy4gXCJmaWxlYmVhdC0qXCIpLiAqL1xuICBQUkVGSVggPSBcInByZWZpeFwiLFxuICAvKiogSW5kZXggbmFtZSBzZWdtZW50cyBkZXJpdmVkIGZyb20gcmVnaXN0ZXJlZCBMb2dQYXJhbWV0ZXJEZXNjcmlwdG9yIGtleXMuICovXG4gIExPR0dFUl9HRU5FUkFURUQgPSBcImxvZ2dlci1nZW5lcmF0ZWRcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBLaWJhbmFSb2xlQ29uZmlnIHtcbiAgbmFtZTogc3RyaW5nO1xuICBpbmRpY2VzPzogQXJyYXk8e1xuICAgIG5hbWVzOiBzdHJpbmdbXTtcbiAgICBwcml2aWxlZ2VzOiBzdHJpbmdbXTtcbiAgICBhbGxvd19yZXN0cmljdGVkX2luZGljZXM/OiBib29sZWFuO1xuICB9PjtcbiAgYXBwbGljYXRpb25zPzogQXJyYXk8e1xuICAgIGFwcGxpY2F0aW9uOiBzdHJpbmc7XG4gICAgcHJpdmlsZWdlczogc3RyaW5nW107XG4gICAgcmVzb3VyY2VzOiBzdHJpbmdbXTtcbiAgfT47XG4gIGtpYmFuYT86IEFycmF5PHtcbiAgICBiYXNlPzogc3RyaW5nW107XG4gICAgZmVhdHVyZT86IFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPjtcbiAgICBzcGFjZXM/OiBzdHJpbmdbXTtcbiAgfT47XG4gIG1ldGFkYXRhPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgS2liYW5hU2V0dXBDb25maWcge1xuICBpZDogc3RyaW5nO1xuICBob3N0OiBzdHJpbmc7XG4gIGVzX2hvc3Q6IHN0cmluZztcbiAgcHJvdG9jb2w6IFwiaHR0cFwiIHwgXCJodHRwc1wiO1xuICByZWFsbTogc3RyaW5nO1xuICBzcGFjZT86IFBhcnRpYWw8S2liYW5hU3BhY2VDb25maWc+O1xuICBkYXRhVmlld3M/OiBLaWJhbmFEYXRhVmlld0NvbmZpZ1tdO1xuICByb2xlPzogUGFydGlhbDxLaWJhbmFSb2xlQ29uZmlnPjtcbiAgZGFzaGJvYXJkcz86IEtpYmFuYURhc2hib2FyZFRhcmdldHM7XG4gIGFkbWluQXBpVXNlcj86IEtpYmFuYVVzZXI7XG4gIHJlYWxtQXBpVXNlcjogS2liYW5hVXNlcjtcbiAgZGFzaGJvYXJkSW1wb3J0UGF0aD86IHN0cmluZztcbiAgZGFzaGJvYXJkSW1wb3J0T3ZlcndyaXRlPzogYm9vbGVhbjtcbiAgYXNzZXRzPzogc3RyaW5nO1xufVxuIl19
@@ -0,0 +1,115 @@
1
+ import { isAbsolute, resolve } from "path";
2
+ import { pathToFileURL } from "url";
3
+ function isPathLikeSource(source) {
4
+ return (source.startsWith(".") ||
5
+ source.startsWith("/") ||
6
+ isAbsolute(source) ||
7
+ /^[A-Za-z]:[\\/]/.test(source));
8
+ }
9
+ /**
10
+ * @module integrations/loader
11
+ * @summary Dynamic TypeScript object loader utilities.
12
+ * @description Base loader and concrete family loaders for dynamically
13
+ * resolving Decaf integration objects without forcing callers to duplicate
14
+ * import, selection, or post-load hook logic.
15
+ */
16
+ export class ObjectLoader {
17
+ constructor(options = {}) {
18
+ this.family = options.family ?? "generic";
19
+ this.defaultExportName = options.defaultExportName ?? "default";
20
+ this.hooks = options.hooks ?? [];
21
+ }
22
+ normalizeSource(source) {
23
+ if (source instanceof URL) {
24
+ return source.href;
25
+ }
26
+ if (source.startsWith("file:") || source.startsWith("data:")) {
27
+ return source;
28
+ }
29
+ if (isPathLikeSource(source)) {
30
+ return pathToFileURL(resolve(source)).href;
31
+ }
32
+ return source;
33
+ }
34
+ async importModule(source) {
35
+ const normalized = this.normalizeSource(source);
36
+ return (await import(normalized));
37
+ }
38
+ resolveExport(module, exportName, source) {
39
+ const exportedNames = Object.keys(module).filter((key) => key !== "__esModule");
40
+ if (exportName === "default") {
41
+ if ("default" in module) {
42
+ return module.default;
43
+ }
44
+ if (exportedNames.length === 1) {
45
+ return module[exportedNames[0]];
46
+ }
47
+ throw new Error(`Module "${source}" does not expose a default export.`);
48
+ }
49
+ if (!(exportName in module)) {
50
+ throw new Error(`Module "${source}" does not export "${exportName}".`);
51
+ }
52
+ return module[exportName];
53
+ }
54
+ async applyHooks(value, context, hooks) {
55
+ let current = value;
56
+ for (const hook of hooks) {
57
+ const next = await hook(current, context);
58
+ if (typeof next !== "undefined") {
59
+ current = next;
60
+ }
61
+ }
62
+ return current;
63
+ }
64
+ createInstance(options) {
65
+ const Loader = this.constructor;
66
+ return new Loader(options);
67
+ }
68
+ async loadModule(source) {
69
+ return this.importModule(source);
70
+ }
71
+ async loadExport(source, exportName = this.defaultExportName, options = {}) {
72
+ const normalizedSource = this.normalizeSource(source);
73
+ const module = await this.importModule(normalizedSource);
74
+ const resolved = this.resolveExport(module, exportName, normalizedSource);
75
+ const hookContext = {
76
+ family: this.family,
77
+ source: normalizedSource,
78
+ exportName,
79
+ module,
80
+ loaderName: this.constructor.name,
81
+ };
82
+ const hooks = [...this.hooks, ...(options.hooks ?? [])];
83
+ return this.applyHooks(resolved, hookContext, hooks);
84
+ }
85
+ async loadDefault(source, options = {}) {
86
+ return this.loadExport(source, this.defaultExportName, options);
87
+ }
88
+ async load(source, options = {}) {
89
+ return this.loadDefault(source, options);
90
+ }
91
+ withHooks(...hooks) {
92
+ return this.createInstance({
93
+ family: this.family,
94
+ defaultExportName: this.defaultExportName,
95
+ hooks: [...this.hooks, ...hooks],
96
+ });
97
+ }
98
+ withOptions(options) {
99
+ return this.createInstance({
100
+ family: options.family ?? this.family,
101
+ defaultExportName: options.defaultExportName ?? this.defaultExportName,
102
+ hooks: [...this.hooks, ...(options.hooks ?? [])],
103
+ });
104
+ }
105
+ }
106
+ export function createLoaderHookContext(loader, module, source, exportName) {
107
+ return {
108
+ family: loader.family,
109
+ source,
110
+ exportName,
111
+ module,
112
+ loaderName: loader.constructor.name,
113
+ };
114
+ }
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT2JqZWN0TG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xvYWRlci9PYmplY3RMb2FkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEtBQUssQ0FBQztBQVlwQyxTQUFTLGdCQUFnQixDQUFDLE1BQWM7SUFDdEMsT0FBTyxDQUNMLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDO1FBQ3RCLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDO1FBQ3RCLFVBQVUsQ0FBQyxNQUFNLENBQUM7UUFDbEIsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUMvQixDQUFDO0FBQ0osQ0FBQztBQUVEOzs7Ozs7R0FNRztBQUNILE1BQU0sT0FBTyxZQUFZO0lBT3ZCLFlBQW1CLFVBQStCLEVBQUU7UUFDbEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxJQUFJLFNBQVMsQ0FBQztRQUMxQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixJQUFJLFNBQVMsQ0FBQztRQUNoRSxJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFUyxlQUFlLENBQUMsTUFBMEI7UUFDbEQsSUFBSSxNQUFNLFlBQVksR0FBRyxFQUFFLENBQUM7WUFDMUIsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ3JCLENBQUM7UUFFRCxJQUFJLE1BQU0sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQzdELE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUM7UUFFRCxJQUFJLGdCQUFnQixDQUFDLE1BQU0sQ0FB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QUFDLENBQUM7U0FDakQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBRUQsTUFBTSxVQUFVLHVCQUF1QixDQUNyQyxNQUFvQixFQUNwQixNQUF5QyxFQUN6QyxNQUFjLEVBQ2QsVUFBa0I7SUFFbEIsT0FBTztRQUNMLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtRQUNyQixNQUFNO1FBQ04sVUFBVTtRQUNWLE1BQU07UUFDTixVQUFVLEVBQUUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJO0tBQ3BDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNBYnNvbHV0ZSwgcmVzb2x2ZSB9IGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgeyBwYXRoVG9GaWxlVVJMIH0gZnJvbSBcInVybFwiO1xuXG5pbXBvcnQgdHlwZSB7XG4gIE9iamVjdExvYWRlckV4cG9ydFNlbGVjdGlvbixcbiAgT2JqZWN0TG9hZGVyRmFtaWx5LFxuICBPYmplY3RMb2FkZXJIb29rLFxuICBPYmplY3RMb2FkZXJIb29rQ29udGV4dCxcbiAgT2JqZWN0TG9hZGVyTG9hZE9wdGlvbnMsXG4gIE9iamVjdExvYWRlck9wdGlvbnMsXG4gIE9iamVjdExvYWRlclNvdXJjZSxcbn0gZnJvbSBcIi4vdHlwZXNcIjtcblxuZnVuY3Rpb24gaXNQYXRoTGlrZVNvdXJjZShzb3VyY2U6IHN0cmluZyk6IGJvb2xlYW4ge1xuICByZXR1cm4gKFxuICAgIHNvdXJjZS5zdGFydHNXaXRoKFwiLlwiKSB8fFxuICAgIHNvdXJjZS5zdGFydHNXaXRoKFwiL1wiKSB8fFxuICAgIGlzQWJzb2x1dGUoc291cmNlKSB8fFxuICAgIC9eW0EtWmEtel06W1xcXFwvXS8udGVzdChzb3VyY2UpXG4gICk7XG59XG5cbi8qKlxuICogQG1vZHVsZSBpbnRlZ3JhdGlvbnMvbG9hZGVyXG4gKiBAc3VtbWFyeSBEeW5hbWljIFR5cGVTY3JpcHQgb2JqZWN0IGxvYWRlciB1dGlsaXRpZXMuXG4gKiBAZGVzY3JpcHRpb24gQmFzZSBsb2FkZXIgYW5kIGNvbmNyZXRlIGZhbWlseSBsb2FkZXJzIGZvciBkeW5hbWljYWxseVxuICogcmVzb2x2aW5nIERlY2FmIGludGVncmF0aW9uIG9iamVjdHMgd2l0aG91dCBmb3JjaW5nIGNhbGxlcnMgdG8gZHVwbGljYXRlXG4gKiBpbXBvcnQsIHNlbGVjdGlvbiwgb3IgcG9zdC1sb2FkIGhvb2sgbG9naWMuXG4gKi9cbmV4cG9ydCBjbGFzcyBPYmplY3RMb2FkZXIge1xuICBwdWJsaWMgcmVhZG9ubHkgZmFtaWx5OiBPYmplY3RMb2FkZXJGYW1pbHk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGRlZmF1bHRFeHBvcnROYW1lOiBzdHJpbmc7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGhvb2tzOiByZWFkb25seSBPYmplY3RMb2FkZXJIb29rW107XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKG9wdGlvbnM6IE9iamVjdExvYWRlck9wdGlvbnMgPSB7fSkge1xuICAgIHRoaXMuZmFtaWx5ID0gb3B0aW9ucy5mYW1pbHkgPz8gXCJnZW5lcmljXCI7XG4gICAgdGhpcy5kZWZhdWx0RXhwb3J0TmFtZSA9IG9wdGlvbnMuZGVmYXVsdEV4cG9ydE5hbWUgPz8gXCJkZWZhdWx0XCI7XG4gICAgdGhpcy5ob29rcyA9IG9wdGlvbnMuaG9va3MgPz8gW107XG4gIH1cblxuICBwcm90ZWN0ZWQgbm9ybWFsaXplU291cmNlKHNvdXJjZTogT2JqZWN0TG9hZGVyU291cmNlKTogc3RyaW5nIHtcbiAgICBpZiAoc291cmNlIGluc3RhbmNlb2YgVVJMKSB7XG4gICAgICByZXR1cm4gc291cmNlLmhyZWY7XG4gICAgfVxuXG4gICAgaWYgKHNvdXJjZS5zdGFydHNXaXRoKFwiZmlsZTpcIikgfHwgc291cmNlLnN0YXJ0c1dpdGgoXCJkYXRhOlwiKSkge1xuICAgICAgcmV0dXJuIHNvdXJjZTtcbiAgICB9XG5cbiAgICBpZiAoaXNQYXRoTGlrZVNvdXJjZShzb3VyY2UpKSB7XG4gICAgICByZXR1cm4gcGF0aFRvRmlsZVVSTChyZXNvbHZlKHNvdXJjZSkpLmhyZWY7XG4gICAgfVxuXG4gICAgcmV0dXJuIHNvdXJjZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBpbXBvcnRNb2R1bGUoXG4gICAgc291cmNlOiBPYmplY3RMb2FkZXJTb3VyY2VcbiAgKTogUHJvbWlzZTxSZWFkb25seTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4+IHtcbiAgICBjb25zdCBub3JtYWxpemVkID0gdGhpcy5ub3JtYWxpemVTb3VyY2Uoc291cmNlKTtcbiAgICByZXR1cm4gKGF3YWl0IGltcG9ydChub3JtYWxpemVkKSkgYXMgUmVhZG9ubHk8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+O1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlc29sdmVFeHBvcnQoXG4gICAgbW9kdWxlOiBSZWFkb25seTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4sXG4gICAgZXhwb3J0TmFtZTogc3RyaW5nLFxuICAgIHNvdXJjZTogc3RyaW5nXG4gICk6IHVua25vd24ge1xuICAgIGNvbnN0IGV4cG9ydGVkTmFtZXMgPSBPYmplY3Qua2V5cyhtb2R1bGUpLmZpbHRlcihcbiAgICAgIChrZXkpID0+IGtleSAhPT0gXCJfX2VzTW9kdWxlXCJcbiAgICApO1xuXG4gICAgaWYgKGV4cG9ydE5hbWUgPT09IFwiZGVmYXVsdFwiKSB7XG4gICAgICBpZiAoXCJkZWZhdWx0XCIgaW4gbW9kdWxlKSB7XG4gICAgICAgIHJldHVybiBtb2R1bGUuZGVmYXVsdDtcbiAgICAgIH1cblxuICAgICAgaWYgKGV4cG9ydGVkTmFtZXMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgIHJldHVybiBtb2R1bGVbZXhwb3J0ZWROYW1lc1swXV07XG4gICAgICB9XG5cbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYE1vZHVsZSBcIiR7c291cmNlfVwiIGRvZXMgbm90IGV4cG9zZSBhIGRlZmF1bHQgZXhwb3J0LmBcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKCEoZXhwb3J0TmFtZSBpbiBtb2R1bGUpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE1vZHVsZSBcIiR7c291cmNlfVwiIGRvZXMgbm90IGV4cG9ydCBcIiR7ZXhwb3J0TmFtZX1cIi5gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbW9kdWxlW2V4cG9ydE5hbWVdO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGFwcGx5SG9va3M8VD4oXG4gICAgdmFsdWU6IFQsXG4gICAgY29udGV4dDogT2JqZWN0TG9hZGVySG9va0NvbnRleHQsXG4gICAgaG9va3M6IHJlYWRvbmx5IE9iamVjdExvYWRlckhvb2tbXVxuICApOiBQcm9taXNlPFQ+IHtcbiAgICBsZXQgY3VycmVudCA9IHZhbHVlO1xuXG4gICAgZm9yIChjb25zdCBob29rIG9mIGhvb2tzKSB7XG4gICAgICBjb25zdCBuZXh0ID0gYXdhaXQgaG9vayhjdXJyZW50LCBjb250ZXh0KTtcbiAgICAgIGlmICh0eXBlb2YgbmV4dCAhPT0gXCJ1bmRlZmluZWRcIikge1xuICAgICAgICBjdXJyZW50ID0gbmV4dCBhcyBUO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBjdXJyZW50O1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUluc3RhbmNlKG9wdGlvbnM6IE9iamVjdExvYWRlck9wdGlvbnMpOiB0aGlzIHtcbiAgICBjb25zdCBMb2FkZXIgPSB0aGlzLmNvbnN0cnVjdG9yIGFzIG5ldyAoXG4gICAgICBvcHRpb25zPzogT2JqZWN0TG9hZGVyT3B0aW9uc1xuICAgICkgPT4gT2JqZWN0TG9hZGVyO1xuICAgIHJldHVybiBuZXcgTG9hZGVyKG9wdGlvbnMpIGFzIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgbG9hZE1vZHVsZShcbiAgICBzb3VyY2U6IE9iamVjdExvYWRlclNvdXJjZVxuICApOiBQcm9taXNlPFJlYWRvbmx5PFJlY29yZDxzdHJpbmcsIHVua25vd24+Pj4ge1xuICAgIHJldHVybiB0aGlzLmltcG9ydE1vZHVsZShzb3VyY2UpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGxvYWRFeHBvcnQ8VCA9IHVua25vd24+KFxuICAgIHNvdXJjZTogT2JqZWN0TG9hZGVyU291cmNlLFxuICAgIGV4cG9ydE5hbWU6IHN0cmluZyA9IHRoaXMuZGVmYXVsdEV4cG9ydE5hbWUsXG4gICAgb3B0aW9uczogT2JqZWN0TG9hZGVyTG9hZE9wdGlvbnMgPSB7fVxuICApOiBQcm9taXNlPFQ+IHtcbiAgICBjb25zdCBub3JtYWxpemVkU291cmNlID0gdGhpcy5ub3JtYWxpemVTb3VyY2Uoc291cmNlKTtcbiAgICBjb25zdCBtb2R1bGUgPSBhd2FpdCB0aGlzLmltcG9ydE1vZHVsZShub3JtYWxpemVkU291cmNlKTtcbiAgICBjb25zdCByZXNvbHZlZCA9IHRoaXMucmVzb2x2ZUV4cG9ydChtb2R1bGUsIGV4cG9ydE5hbWUsIG5vcm1hbGl6ZWRTb3VyY2UpO1xuICAgIGNvbnN0IGhvb2tDb250ZXh0OiBPYmplY3RMb2FkZXJIb29rQ29udGV4dCA9IHtcbiAgICAgIGZhbWlseTogdGhpcy5mYW1pbHksXG4gICAgICBzb3VyY2U6IG5vcm1hbGl6ZWRTb3VyY2UsXG4gICAgICBleHBvcnROYW1lLFxuICAgICAgbW9kdWxlLFxuICAgICAgbG9hZGVyTmFtZTogdGhpcy5jb25zdHJ1Y3Rvci5uYW1lLFxuICAgIH07XG5cbiAgICBjb25zdCBob29rcyA9IFsuLi50aGlzLmhvb2tzLCAuLi4ob3B0aW9ucy5ob29rcyA/PyBbXSldO1xuICAgIHJldHVybiB0aGlzLmFwcGx5SG9va3MocmVzb2x2ZWQgYXMgVCwgaG9va0NvbnRleHQsIGhvb2tzKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBsb2FkRGVmYXVsdDxUID0gdW5rbm93bj4oXG4gICAgc291cmNlOiBPYmplY3RMb2FkZXJTb3VyY2UsXG4gICAgb3B0aW9uczogT2JqZWN0TG9hZGVyTG9hZE9wdGlvbnMgPSB7fVxuICApOiBQcm9taXNlPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5sb2FkRXhwb3J0PFQ+KHNvdXJjZSwgdGhpcy5kZWZhdWx0RXhwb3J0TmFtZSwgb3B0aW9ucyk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgbG9hZDxUID0gdW5rbm93bj4oXG4gICAgc291cmNlOiBPYmplY3RMb2FkZXJTb3VyY2UsXG4gICAgb3B0aW9uczogT2JqZWN0TG9hZGVyTG9hZE9wdGlvbnMgPSB7fVxuICApOiBQcm9taXNlPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5sb2FkRGVmYXVsdDxUPihzb3VyY2UsIG9wdGlvbnMpO1xuICB9XG5cbiAgcHVibGljIHdpdGhIb29rcyguLi5ob29rczogT2JqZWN0TG9hZGVySG9va1tdKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlSW5zdGFuY2Uoe1xuICAgICAgZmFtaWx5OiB0aGlzLmZhbWlseSxcbiAgICAgIGRlZmF1bHRFeHBvcnROYW1lOiB0aGlzLmRlZmF1bHRFeHBvcnROYW1lLFxuICAgICAgaG9va3M6IFsuLi50aGlzLmhvb2tzLCAuLi5ob29rc10sXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgd2l0aE9wdGlvbnMob3B0aW9uczogUGFydGlhbDxPYmplY3RMb2FkZXJPcHRpb25zPik6IHRoaXMge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZUluc3RhbmNlKHtcbiAgICAgIGZhbWlseTogb3B0aW9ucy5mYW1pbHkgPz8gdGhpcy5mYW1pbHksXG4gICAgICBkZWZhdWx0RXhwb3J0TmFtZTpcbiAgICAgICAgb3B0aW9ucy5kZWZhdWx0RXhwb3J0TmFtZSA/PyB0aGlzLmRlZmF1bHRFeHBvcnROYW1lLFxuICAgICAgaG9va3M6IFsuLi50aGlzLmhvb2tzLCAuLi4ob3B0aW9ucy5ob29rcyA/PyBbXSldLFxuICAgIH0pO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVMb2FkZXJIb29rQ29udGV4dChcbiAgbG9hZGVyOiBPYmplY3RMb2FkZXIsXG4gIG1vZHVsZTogUmVhZG9ubHk8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+LFxuICBzb3VyY2U6IHN0cmluZyxcbiAgZXhwb3J0TmFtZTogc3RyaW5nXG4pOiBPYmplY3RMb2FkZXJIb29rQ29udGV4dCB7XG4gIHJldHVybiB7XG4gICAgZmFtaWx5OiBsb2FkZXIuZmFtaWx5LFxuICAgIHNvdXJjZSxcbiAgICBleHBvcnROYW1lLFxuICAgIG1vZHVsZSxcbiAgICBsb2FkZXJOYW1lOiBsb2FkZXIuY29uc3RydWN0b3IubmFtZSxcbiAgfTtcbn1cblxuZXhwb3J0IHR5cGUgeyBPYmplY3RMb2FkZXJFeHBvcnRTZWxlY3Rpb24gfTtcbiJdfQ==
@@ -0,0 +1,66 @@
1
+ import { ObjectLoader } from "./ObjectLoader.js";
2
+ export class ModelObjectLoader extends ObjectLoader {
3
+ constructor(options = {}) {
4
+ super({ ...options, family: "model" });
5
+ }
6
+ async loadModel(source, exportName = this.defaultExportName, options = {}) {
7
+ return this.loadExport(source, exportName, options);
8
+ }
9
+ }
10
+ export class AdapterObjectLoader extends ObjectLoader {
11
+ constructor(options = {}) {
12
+ super({ ...options, family: "adapter" });
13
+ }
14
+ async loadAdapter(source, exportName = this.defaultExportName, options = {}) {
15
+ return this.loadExport(source, exportName, options);
16
+ }
17
+ }
18
+ export class RepositoryObjectLoader extends ObjectLoader {
19
+ constructor(options = {}) {
20
+ super({ ...options, family: "repository" });
21
+ }
22
+ async loadRepository(source, exportName = this.defaultExportName, options = {}) {
23
+ return this.loadExport(source, exportName, options);
24
+ }
25
+ }
26
+ export class ServiceObjectLoader extends ObjectLoader {
27
+ constructor(options = {}) {
28
+ super({ ...options, family: "service" });
29
+ }
30
+ async loadService(source, exportName = this.defaultExportName, options = {}) {
31
+ return this.loadExport(source, exportName, options);
32
+ }
33
+ }
34
+ export class ControllerObjectLoader extends ObjectLoader {
35
+ constructor(options = {}) {
36
+ super({ ...options, family: "controller" });
37
+ }
38
+ async loadController(source, exportName = this.defaultExportName, options = {}) {
39
+ return this.loadExport(source, exportName, options);
40
+ }
41
+ }
42
+ export class EnvironmentObjectLoader extends ObjectLoader {
43
+ constructor(options = {}) {
44
+ super({ ...options, family: "environment" });
45
+ }
46
+ async loadEnvironment(source, exportName = this.defaultExportName, options = {}) {
47
+ return this.loadExport(source, exportName, options);
48
+ }
49
+ }
50
+ export class AngularComponentObjectLoader extends ObjectLoader {
51
+ constructor(options = {}) {
52
+ super({ ...options, family: "component" });
53
+ }
54
+ async loadComponent(source, exportName = this.defaultExportName, options = {}) {
55
+ return this.loadExport(source, exportName, options);
56
+ }
57
+ }
58
+ export class GraphNodeObjectLoader extends ObjectLoader {
59
+ constructor(options = {}) {
60
+ super({ ...options, family: "node" });
61
+ }
62
+ async loadNode(source, exportName = this.defaultExportName, options = {}) {
63
+ return this.loadExport(source, exportName, options);
64
+ }
65
+ }
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFtaWxpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbG9hZGVyL2ZhbWlsaWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsMEJBQXVCO0FBTzlDLE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxZQUFZO0lBQ2pELFlBQW1CLFVBQStCLEVBQUU7UUFDbEQsS0FBSyxDQUFDLEVBQUUsR0FBRyxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVNLEtBQUssQ0FBQyxTQUFTLENBQ3BCLE1BQTBCLEVBQzFCLGFBQXFCLElBQUksQ0FBQyxpQkFBaUIsRUFDM0MsVUFBbUMsRUFBRTtRQUVyQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUksTUFBTSxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN6RCxDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsWUFBWTtJQUNuRCxZQUFtQixVQUErQixFQUFFO1FBQ2xELEtBQUssQ0FBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFTSxLQUFLLENBQUMsV0FBVyxDQUN0QixNQUEwQixFQUMxQixhQUFxQixJQUFJLENBQUMsaUJBQWlCLEVBQzNDLFVBQW1DLEVBQUU7UUFFckMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFJLE1BQU0sRUFBRSxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDekQsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLHNCQUF1QixTQUFRLFlBQVk7SUFDdEQsWUFBbUIsVUFBK0IsRUFBRTtRQUNsRCxLQUFLLENBQUMsRUFBRSxHQUFHLE9BQU8sRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRU0sS0FBSyxDQUFDLGNBQWMsQ0FDekIsTUFBMEIsRUFDMUIsYUFBcUIsSUFBSSxDQUFDLGlCQUFpQixFQUMzQyxVQUFtQyxFQUFFO1FBRXJDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBSSxNQUFNLEVBQUUsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3pELENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxZQUFZO0lBQ25ELFlBQW1CLFVBQStCLEVBQUU7UUFDbEQsS0FBSyxDQUFDLEVBQUUsR0FBRyxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVNLEtBQUssQ0FBQyxXQUFXLENBQ3RCLE1BQTBCLEVBQzFCLGFBQXFCLElBQUksQ0FBQyxpQkFBaUIsRUFDM0MsVUFBbUMsRUFBRTtRQUVyQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUksTUFBTSxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN6RCxDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsWUFBWTtJQUN0RCxZQUFtQixVQUErQixFQUFFO1FBQ2xELEtBQUssQ0FBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTSxLQUFLLENBQUMsY0FBYyxDQUN6QixNQUEwQixFQUMxQixhQUFxQixJQUFJLENBQUMsaUJBQWlCLEVBQzNDLFVBQW1DLEVBQUU7UUFFckMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFJLE1BQU0sRUFBRSxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDekQsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLHVCQUF3QixTQUFRLFlBQVk7SUFDdkQsWUFBbUIsVUFBK0IsRUFBRTtRQUNsRCxLQUFLLENBQUMsRUFBRSxHQUFHLE9BQU8sRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRU0sS0FBSyxDQUFDLGVBQWUsQ0FDMUIsTUFBMEIsRUFDMUIsYUFBcUIsSUFBSSxDQUFDLGlCQUFpQixFQUMzQyxVQUFtQyxFQUFFO1FBRXJDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBSSxNQUFNLEVBQUUsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3pELENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxZQUFZO0lBQzVELFlBQW1CLFVBQStCLEVBQUU7UUFDbEQsS0FBSyxDQUFDLEVBQUUsR0FBRyxPQUFPLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVNLEtBQUssQ0FBQyxhQUFhLENBQ3hCLE1BQTBCLEVBQzFCLGFBQXFCLElBQUksQ0FBQyxpQkFBaUIsRUFDM0MsVUFBbUMsRUFBRTtRQUVyQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUksTUFBTSxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN6RCxDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsWUFBWTtJQUNyRCxZQUFtQixVQUErQixFQUFFO1FBQ2xELEtBQUssQ0FBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFTSxLQUFLLENBQUMsUUFBUSxDQUNuQixNQUEwQixFQUMxQixhQUFxQixJQUFJLENBQUMsaUJBQWlCLEVBQzNDLFVBQW1DLEVBQUU7UUFFckMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFJLE1BQU0sRUFBRSxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDekQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JqZWN0TG9hZGVyIH0gZnJvbSBcIi4vT2JqZWN0TG9hZGVyXCI7XG5pbXBvcnQgdHlwZSB7XG4gIE9iamVjdExvYWRlckxvYWRPcHRpb25zLFxuICBPYmplY3RMb2FkZXJPcHRpb25zLFxuICBPYmplY3RMb2FkZXJTb3VyY2UsXG59IGZyb20gXCIuL3R5cGVzXCI7XG5cbmV4cG9ydCBjbGFzcyBNb2RlbE9iamVjdExvYWRlciBleHRlbmRzIE9iamVjdExvYWRlciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihvcHRpb25zOiBPYmplY3RMb2FkZXJPcHRpb25zID0ge30pIHtcbiAgICBzdXBlcih7IC4uLm9wdGlvbnMsIGZhbWlseTogXCJtb2RlbFwiIH0pO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGxvYWRNb2RlbDxUID0gdW5rbm93bj4oXG4gICAgc291cmNlOiBPYmplY3RMb2FkZXJTb3VyY2UsXG4gICAgZXhwb3J0TmFtZTogc3RyaW5nID0gdGhpcy5kZWZhdWx0RXhwb3J0TmFtZSxcbiAgICBvcHRpb25zOiBPYmplY3RMb2FkZXJMb2FkT3B0aW9ucyA9IHt9XG4gICk6IFByb21pc2U8VD4ge1xuICAgIHJldHVybiB0aGlzLmxvYWRFeHBvcnQ8VD4oc291cmNlLCBleHBvcnROYW1lLCBvcHRpb25zKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQWRhcHRlck9iamVjdExvYWRlciBleHRlbmRzIE9iamVjdExvYWRlciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihvcHRpb25zOiBPYmplY3RMb2FkZXJPcHRpb25zID0ge30pIHtcbiAgICBzdXBlcih7IC4uLm9wdGlvbnMsIGZhbWlseTogXCJhZGFwdGVyXCIgfSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgbG9hZEFkYXB0ZXI8VCA9IHVua25vd24+KFxuICAgIHNvdXJjZTogT2JqZWN0TG9hZGVyU291cmNlLFxuICAgIGV4cG9ydE5hbWU6IHN0cmluZyA9IHRoaXMuZGVmYXVsdEV4cG9ydE5hbWUsXG4gICAgb3B0aW9uczogT2JqZWN0TG9hZGVyTG9hZE9wdGlvbnMgPSB7fVxuICApOiBQcm9taXNlPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5sb2FkRXhwb3J0PFQ+KHNvdXJjZSwgZXhwb3J0TmFtZSwgb3B0aW9ucyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFJlcG9zaXRvcnlPYmplY3RMb2FkZXIgZXh0ZW5kcyBPYmplY3RMb2FkZXIge1xuICBwdWJsaWMgY29uc3RydWN0b3Iob3B0aW9uczogT2JqZWN0TG9hZGVyT3B0aW9ucyA9IHt9KSB7XG4gICAgc3VwZXIoeyAuLi5vcHRpb25zLCBmYW1pbHk6IFwicmVwb3NpdG9yeVwiIH0pO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGxvYWRSZXBvc2l0b3J5PFQgPSB1bmtub3duPihcbiAgICBzb3VyY2U6IE9iamVjdExvYWRlclNvdXJjZSxcbiAgICBleHBvcnROYW1lOiBzdHJpbmcgPSB0aGlzLmRlZmF1bHRFeHBvcnROYW1lLFxuICAgIG9wdGlvbnM6IE9iamVjdExvYWRlckxvYWRPcHRpb25zID0ge31cbiAgKTogUHJvbWlzZTxUPiB7XG4gICAgcmV0dXJuIHRoaXMubG9hZEV4cG9ydDxUPihzb3VyY2UsIGV4cG9ydE5hbWUsIG9wdGlvbnMpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBTZXJ2aWNlT2JqZWN0TG9hZGVyIGV4dGVuZHMgT2JqZWN0TG9hZGVyIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG9wdGlvbnM6IE9iamVjdExvYWRlck9wdGlvbnMgPSB7fSkge1xuICAgIHN1cGVyKHsgLi4ub3B0aW9ucywgZmFtaWx5OiBcInNlcnZpY2VcIiB9KTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBsb2FkU2VydmljZTxUID0gdW5rbm93bj4oXG4gICAgc291cmNlOiBPYmplY3RMb2FkZXJTb3VyY2UsXG4gICAgZXhwb3J0TmFtZTogc3RyaW5nID0gdGhpcy5kZWZhdWx0RXhwb3J0TmFtZSxcbiAgICBvcHRpb25zOiBPYmplY3RMb2FkZXJMb2FkT3B0aW9ucyA9IHt9XG4gICk6IFByb21pc2U8VD4ge1xuICAgIHJldHVybiB0aGlzLmxvYWRFeHBvcnQ8VD4oc291cmNlLCBleHBvcnROYW1lLCBvcHRpb25zKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQ29udHJvbGxlck9iamVjdExvYWRlciBleHRlbmRzIE9iamVjdExvYWRlciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihvcHRpb25zOiBPYmplY3RMb2FkZXJPcHRpb25zID0ge30pIHtcbiAgICBzdXBlcih7IC4uLm9wdGlvbnMsIGZhbWlseTogXCJjb250cm9sbGVyXCIgfSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgbG9hZENvbnRyb2xsZXI8VCA9IHVua25vd24+KFxuICAgIHNvdXJjZTogT2JqZWN0TG9hZGVyU291cmNlLFxuICAgIGV4cG9ydE5hbWU6IHN0cmluZyA9IHRoaXMuZGVmYXVsdEV4cG9ydE5hbWUsXG4gICAgb3B0aW9uczogT2JqZWN0TG9hZGVyTG9hZE9wdGlvbnMgPSB7fVxuICApOiBQcm9taXNlPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5sb2FkRXhwb3J0PFQ+KHNvdXJjZSwgZXhwb3J0TmFtZSwgb3B0aW9ucyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEVudmlyb25tZW50T2JqZWN0TG9hZGVyIGV4dGVuZHMgT2JqZWN0TG9hZGVyIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG9wdGlvbnM6IE9iamVjdExvYWRlck9wdGlvbnMgPSB7fSkge1xuICAgIHN1cGVyKHsgLi4ub3B0aW9ucywgZmFtaWx5OiBcImVudmlyb25tZW50XCIgfSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgbG9hZEVudmlyb25tZW50PFQgPSB1bmtub3duPihcbiAgICBzb3VyY2U6IE9iamVjdExvYWRlclNvdXJjZSxcbiAgICBleHBvcnROYW1lOiBzdHJpbmcgPSB0aGlzLmRlZmF1bHRFeHBvcnROYW1lLFxuICAgIG9wdGlvbnM6IE9iamVjdExvYWRlckxvYWRPcHRpb25zID0ge31cbiAgKTogUHJvbWlzZTxUPiB7XG4gICAgcmV0dXJuIHRoaXMubG9hZEV4cG9ydDxUPihzb3VyY2UsIGV4cG9ydE5hbWUsIG9wdGlvbnMpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBBbmd1bGFyQ29tcG9uZW50T2JqZWN0TG9hZGVyIGV4dGVuZHMgT2JqZWN0TG9hZGVyIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG9wdGlvbnM6IE9iamVjdExvYWRlck9wdGlvbnMgPSB7fSkge1xuICAgIHN1cGVyKHsgLi4ub3B0aW9ucywgZmFtaWx5OiBcImNvbXBvbmVudFwiIH0pO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGxvYWRDb21wb25lbnQ8VCA9IHVua25vd24+KFxuICAgIHNvdXJjZTogT2JqZWN0TG9hZGVyU291cmNlLFxuICAgIGV4cG9ydE5hbWU6IHN0cmluZyA9IHRoaXMuZGVmYXVsdEV4cG9ydE5hbWUsXG4gICAgb3B0aW9uczogT2JqZWN0TG9hZGVyTG9hZE9wdGlvbnMgPSB7fVxuICApOiBQcm9taXNlPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5sb2FkRXhwb3J0PFQ+KHNvdXJjZSwgZXhwb3J0TmFtZSwgb3B0aW9ucyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEdyYXBoTm9kZU9iamVjdExvYWRlciBleHRlbmRzIE9iamVjdExvYWRlciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihvcHRpb25zOiBPYmplY3RMb2FkZXJPcHRpb25zID0ge30pIHtcbiAgICBzdXBlcih7IC4uLm9wdGlvbnMsIGZhbWlseTogXCJub2RlXCIgfSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgbG9hZE5vZGU8VCA9IHVua25vd24+KFxuICAgIHNvdXJjZTogT2JqZWN0TG9hZGVyU291cmNlLFxuICAgIGV4cG9ydE5hbWU6IHN0cmluZyA9IHRoaXMuZGVmYXVsdEV4cG9ydE5hbWUsXG4gICAgb3B0aW9uczogT2JqZWN0TG9hZGVyTG9hZE9wdGlvbnMgPSB7fVxuICApOiBQcm9taXNlPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5sb2FkRXhwb3J0PFQ+KHNvdXJjZSwgZXhwb3J0TmFtZSwgb3B0aW9ucyk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @module integrations/loader
3
+ * @summary Dynamic TypeScript object loader exports.
4
+ * @description Dedicated loader surface for resolving Decaf integration
5
+ * objects with reusable post-load hooks. This subpath intentionally keeps the
6
+ * loader code isolated from the package root export surface.
7
+ */
8
+ export * from "./types.js";
9
+ export * from "./ObjectLoader.js";
10
+ export * from "./families.js";
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbG9hZGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUNILDJCQUF3QjtBQUN4QixrQ0FBK0I7QUFDL0IsOEJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9sb2FkZXJcbiAqIEBzdW1tYXJ5IER5bmFtaWMgVHlwZVNjcmlwdCBvYmplY3QgbG9hZGVyIGV4cG9ydHMuXG4gKiBAZGVzY3JpcHRpb24gRGVkaWNhdGVkIGxvYWRlciBzdXJmYWNlIGZvciByZXNvbHZpbmcgRGVjYWYgaW50ZWdyYXRpb25cbiAqIG9iamVjdHMgd2l0aCByZXVzYWJsZSBwb3N0LWxvYWQgaG9va3MuIFRoaXMgc3VicGF0aCBpbnRlbnRpb25hbGx5IGtlZXBzIHRoZVxuICogbG9hZGVyIGNvZGUgaXNvbGF0ZWQgZnJvbSB0aGUgcGFja2FnZSByb290IGV4cG9ydCBzdXJmYWNlLlxuICovXG5leHBvcnQgKiBmcm9tIFwiLi90eXBlc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vT2JqZWN0TG9hZGVyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9mYW1pbGllc1wiO1xuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbG9hZGVyL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENvbnN0cnVjdG9yIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0aW9uXCI7XG5cbmV4cG9ydCB0eXBlIE9iamVjdExvYWRlckZhbWlseSA9XG4gIHwgXCJnZW5lcmljXCJcbiAgfCBcIm1vZGVsXCJcbiAgfCBcImFkYXB0ZXJcIlxuICB8IFwicmVwb3NpdG9yeVwiXG4gIHwgXCJzZXJ2aWNlXCJcbiAgfCBcImNvbnRyb2xsZXJcIlxuICB8IFwiZW52aXJvbm1lbnRcIlxuICB8IFwiY29tcG9uZW50XCJcbiAgfCBcIm5vZGVcIjtcblxuZXhwb3J0IHR5cGUgT2JqZWN0TG9hZGVyU291cmNlID0gc3RyaW5nIHwgVVJMO1xuXG5leHBvcnQgdHlwZSBNYXliZVByb21pc2U8VD4gPSBUIHwgUHJvbWlzZTxUPjtcblxuZXhwb3J0IGludGVyZmFjZSBPYmplY3RMb2FkZXJIb29rQ29udGV4dCB7XG4gIHJlYWRvbmx5IGZhbWlseTogT2JqZWN0TG9hZGVyRmFtaWx5O1xuICByZWFkb25seSBzb3VyY2U6IHN0cmluZztcbiAgcmVhZG9ubHkgZXhwb3J0TmFtZTogc3RyaW5nO1xuICByZWFkb25seSBtb2R1bGU6IFJlYWRvbmx5PFJlY29yZDxzdHJpbmcsIHVua25vd24+PjtcbiAgcmVhZG9ubHkgbG9hZGVyTmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBPYmplY3RMb2FkZXJIb29rID0gKFxuICB2YWx1ZTogdW5rbm93bixcbiAgY29udGV4dDogT2JqZWN0TG9hZGVySG9va0NvbnRleHRcbikgPT4gTWF5YmVQcm9taXNlPHVua25vd24gfCB2b2lkPjtcblxuZXhwb3J0IGludGVyZmFjZSBPYmplY3RMb2FkZXJPcHRpb25zIHtcbiAgcmVhZG9ubHkgZmFtaWx5PzogT2JqZWN0TG9hZGVyRmFtaWx5O1xuICByZWFkb25seSBob29rcz86IHJlYWRvbmx5IE9iamVjdExvYWRlckhvb2tbXTtcbiAgcmVhZG9ubHkgZGVmYXVsdEV4cG9ydE5hbWU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT2JqZWN0TG9hZGVyTG9hZE9wdGlvbnMge1xuICByZWFkb25seSBob29rcz86IHJlYWRvbmx5IE9iamVjdExvYWRlckhvb2tbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPYmplY3RMb2FkZXJFeHBvcnRTZWxlY3Rpb24ge1xuICByZWFkb25seSBleHBvcnROYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBPYmplY3RMb2FkZXJDb25zdHJ1Y3RvcjxUID0gb2JqZWN0PiA9IENvbnN0cnVjdG9yPFQ+O1xuIl19
@@ -0,0 +1,12 @@
1
+ import { metadata } from "@decaf-ts/decoration";
2
+ export const AUTH_NAMESPACE_KEY = "auth-namespace";
3
+ /**
4
+ * Marks a model as namespace-scoped for auth handlers.
5
+ *
6
+ * This decorator mirrors the role metadata pattern, but stores namespace scopes
7
+ * that downstream auth handlers compare against the authenticated principal.
8
+ */
9
+ export function namespace(namespaces) {
10
+ return metadata(AUTH_NAMESPACE_KEY, namespaces);
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9uZXN0L2RlY29yYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWhELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLGdCQUFnQixDQUFDO0FBRW5EOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLFNBQVMsQ0FBQyxVQUFvQjtJQUM1QyxPQUFPLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxVQUFVLENBQUMsQ0FBQztBQUNsRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbWV0YWRhdGEgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRpb25cIjtcblxuZXhwb3J0IGNvbnN0IEFVVEhfTkFNRVNQQUNFX0tFWSA9IFwiYXV0aC1uYW1lc3BhY2VcIjtcblxuLyoqXG4gKiBNYXJrcyBhIG1vZGVsIGFzIG5hbWVzcGFjZS1zY29wZWQgZm9yIGF1dGggaGFuZGxlcnMuXG4gKlxuICogVGhpcyBkZWNvcmF0b3IgbWlycm9ycyB0aGUgcm9sZSBtZXRhZGF0YSBwYXR0ZXJuLCBidXQgc3RvcmVzIG5hbWVzcGFjZSBzY29wZXNcbiAqIHRoYXQgZG93bnN0cmVhbSBhdXRoIGhhbmRsZXJzIGNvbXBhcmUgYWdhaW5zdCB0aGUgYXV0aGVudGljYXRlZCBwcmluY2lwYWwuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBuYW1lc3BhY2UobmFtZXNwYWNlczogc3RyaW5nW10pIHtcbiAgcmV0dXJuIG1ldGFkYXRhKEFVVEhfTkFNRVNQQUNFX0tFWSwgbmFtZXNwYWNlcyk7XG59XG4iXX0=
@@ -1,6 +1,6 @@
1
1
  export * from "./types.js";
2
2
  export * from "./utils.js";
3
- export * from "./authService.js";
3
+ export * from "./decorators.js";
4
4
  export * from "./keycloakAuthHandler.js";
5
5
  export * from "./keycloakModule.js";
6
6
  import "./logging.js";
@@ -11,4 +11,4 @@ import "./logging.js";
11
11
  * @namespace nest
12
12
  * @memberOf module:integrations
13
13
  */
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbmVzdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyQkFBd0I7QUFDeEIsMkJBQXdCO0FBQ3hCLGlDQUE4QjtBQUM5Qix5Q0FBc0M7QUFDdEMsb0NBQWlDO0FBRWpDLHNCQUFtQjtBQUVuQjs7Ozs7O0dBTUciLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi90eXBlc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vdXRpbHNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2F1dGhTZXJ2aWNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9rZXljbG9ha0F1dGhIYW5kbGVyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9rZXljbG9ha01vZHVsZVwiO1xuXG5pbXBvcnQgXCIuL2xvZ2dpbmdcIjtcblxuLyoqXG4gKiBAc3VtbWFyeSBOZXN0LXN0eWxlIGF1dGggaW50ZWdyYXRpb25zLlxuICogQGRlc2NyaXB0aW9uIEZyYW1ld29yay1hZ25vc3RpYyBhdXRoIGhlbHBlcnMgY29tcGF0aWJsZSB3aXRoIERlY2FmIHJlcXVlc3QgY29udGV4dCBoYW5kbGluZy5cbiAqIEltcG9ydHMgdGhlIGB1c2VyYC9gb3JnYW5pemF0aW9uYCBsb2cgcGFyYW1ldGVyIHJlZ2lzdHJhdGlvbnMgYXMgYSBzaWRlIGVmZmVjdC5cbiAqIEBuYW1lc3BhY2UgbmVzdFxuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnNcbiAqL1xuIl19
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbmVzdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyQkFBd0I7QUFDeEIsMkJBQXdCO0FBQ3hCLGdDQUE2QjtBQUM3Qix5Q0FBc0M7QUFDdEMsb0NBQWlDO0FBRWpDLHNCQUFtQjtBQUVuQjs7Ozs7O0dBTUciLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi90eXBlc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vdXRpbHNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2RlY29yYXRvcnNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2tleWNsb2FrQXV0aEhhbmRsZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2tleWNsb2FrTW9kdWxlXCI7XG5cbmltcG9ydCBcIi4vbG9nZ2luZ1wiO1xuXG4vKipcbiAqIEBzdW1tYXJ5IE5lc3Qtc3R5bGUgYXV0aCBpbnRlZ3JhdGlvbnMuXG4gKiBAZGVzY3JpcHRpb24gRnJhbWV3b3JrLWFnbm9zdGljIGF1dGggaGVscGVycyBjb21wYXRpYmxlIHdpdGggRGVjYWYgcmVxdWVzdCBjb250ZXh0IGhhbmRsaW5nLlxuICogSW1wb3J0cyB0aGUgYHVzZXJgL2Bvcmdhbml6YXRpb25gIGxvZyBwYXJhbWV0ZXIgcmVnaXN0cmF0aW9ucyBhcyBhIHNpZGUgZWZmZWN0LlxuICogQG5hbWVzcGFjZSBuZXN0XG4gKiBAbWVtYmVyT2YgbW9kdWxlOmludGVncmF0aW9uc1xuICovXG4iXX0=
@@ -1,45 +1,84 @@
1
- import { AuthorizationError } from "@decaf-ts/core";
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ /**
11
+ * @module integrations/nest/keycloakAuthHandler
12
+ * @summary Keycloak request auth handler.
13
+ * @description Translates Keycloak JWT payloads into Decaf-friendly auth data.
14
+ * The base implementation handles the request-to-context plumbing, logger binding,
15
+ * and role checks. Namespace extraction is intentionally split into a dedicated
16
+ * subclass so provider-specific scope handling can be swapped independently.
17
+ */
18
+ import { AuthorizationError, service } from "@decaf-ts/core";
19
+ import { InternalError } from "@decaf-ts/db-decorators";
2
20
  import { AuthHandler } from "@decaf-ts/for-http/server";
3
- import { AuthService } from "./authService.js";
4
- import { getRealmFromIssuer, getTokenPayload, extractKeycloakRoles, getClientRoles, } from "./utils.js";
21
+ import { JwtService } from "@decaf-ts/crypto/integration/services/jwt";
22
+ import { extractKeycloakRoles, extractKeycloakNamespaces, getRealmFromIssuer, } from "./utils.js";
5
23
  export class KeycloakAuthHandler extends AuthHandler {
6
- /**
7
- * @param authService An {@link AuthService} configured with JWKS verification
8
- * options. When omitted a default decode-only service is
9
- * used.
10
- * @param authServiceOptions Convenience: if `authService` is omitted, these
11
- * options are used to construct one.
12
- */
13
- constructor(authService, authServiceOptions) {
24
+ constructor() {
14
25
  super();
15
- this.authService =
16
- authService ?? new AuthService(authServiceOptions ?? {});
17
26
  }
18
- extractFromAuth(ctx) {
19
- const request = ctx.switchToHttp().getRequest();
27
+ jwt() {
28
+ if (!this.jwtService) {
29
+ throw new InternalError("JwtService is not available. Make sure the handler is created through Decaf service injection or assign a test double explicitly.");
30
+ }
31
+ return this.jwtService;
32
+ }
33
+ requestFromContext(ctx) {
34
+ return ctx.switchToHttp().getRequest();
35
+ }
36
+ isPublicRequest(request) {
37
+ return isPublicRoute(request);
38
+ }
39
+ parseFromRequest(request) {
20
40
  if (isPublicRoute(request)) {
21
41
  return { roles: [], token: "", isPublic: true };
22
42
  }
23
43
  const token = getToken(request);
24
44
  if (!token)
25
45
  throw new AuthorizationError("Token not found");
26
- // Decode only — validation happens in `validate`
27
- const payload = getTokenPayload(token);
46
+ const payload = this.jwt().decodePayload(token);
47
+ if (!payload)
48
+ throw new AuthorizationError("Invalid token");
28
49
  const roles = extractKeycloakRoles(payload);
29
- const organization = resolveOrganization(payload, token);
50
+ const organization = payload.aud || payload.azp || getRealmFromIssuer(token);
30
51
  const user = payload?.email ?? payload?.preferred_username;
31
52
  return { user, organization, roles, token, isPublic: false };
32
53
  }
33
- /**
34
- * Validates the JWT against the Keycloak instance (signature, expiry, etc.)
35
- * via {@link AuthService.assertValidToken}, then delegates to the base class
36
- * for route-level and model-level role checks. Skips entirely for public routes.
37
- */
38
- async validate(data, routeRoles, model, ...args) {
54
+ extractFromRequest(request) {
55
+ return this.parseFromRequest(request);
56
+ }
57
+ async validateAuth(data, _request) {
39
58
  if (data.isPublic)
40
59
  return;
41
- await this.authService.assertValidToken(data.token);
42
- await super.validate(data, routeRoles, model, ...args);
60
+ if (!data.token)
61
+ throw new AuthorizationError("Token not found");
62
+ await this.jwt().decodeAuthToken(data.token);
63
+ }
64
+ }
65
+ __decorate([
66
+ service(JwtService),
67
+ __metadata("design:type", JwtService)
68
+ ], KeycloakAuthHandler.prototype, "jwtService", void 0);
69
+ /**
70
+ * Keycloak handler variant that also extracts namespace scopes from the token.
71
+ */
72
+ export class KeycloakNamespaceAuthHandler extends KeycloakAuthHandler {
73
+ parseFromRequest(request) {
74
+ const data = super.parseFromRequest(request);
75
+ if (data.isPublic)
76
+ return data;
77
+ const payload = this.jwt().decodePayload(data.token);
78
+ return {
79
+ ...data,
80
+ namespaces: extractKeycloakNamespaces(payload),
81
+ };
43
82
  }
44
83
  }
45
84
  function isPublicRoute(req) {
@@ -54,12 +93,5 @@ function getToken(req) {
54
93
  return undefined;
55
94
  return token.startsWith("Bearer ") ? token.slice("Bearer ".length) : token;
56
95
  }
57
- function resolveOrganization(payload, token) {
58
- if (payload?.aud)
59
- return payload.aud;
60
- if (payload?.azp)
61
- return payload.azp;
62
- return getRealmFromIssuer(token);
63
- }
64
- export { getClientRoles };
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Y2xvYWtBdXRoSGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9uZXN0L2tleWNsb2FrQXV0aEhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBaUJBLE9BQU8sRUFBRSxrQkFBa0IsRUFBMkIsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsV0FBVyxFQUFZLE1BQU0sMkJBQTJCLENBQUM7QUFFbEUsT0FBTyxFQUFFLFdBQVcsRUFBMkIseUJBQXNCO0FBRXJFLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsZUFBZSxFQUNmLG9CQUFvQixFQUNwQixjQUFjLEdBQ2YsbUJBQWdCO0FBZWpCLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxXQUl4QztJQUNDOzs7Ozs7T0FNRztJQUNILFlBQ0UsV0FBeUIsRUFDekIsa0JBQXVDO1FBRXZDLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLFdBQVc7WUFDZCxXQUFXLElBQUksSUFBSSxXQUFXLENBQUMsa0JBQWtCLElBQUksRUFBRSxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUlTLGVBQWUsQ0FBQyxHQUE2QjtRQUNyRCxNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUMsVUFBVSxFQUFtQixDQUFDO1FBRWpFLElBQUksYUFBYSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDM0IsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDbEQsQ0FBQztRQUVELE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsS0FBSztZQUFFLE1BQU0sSUFBSSxrQkFBa0IsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRTVELGlEQUFpRDtRQUNqRCxNQUFNLE9BQU8sR0FBRyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkMsTUFBTSxLQUFLLEdBQUcsb0JBQW9CLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUMsTUFBTSxZQUFZLEdBQUcsbUJBQW1CLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3pELE1BQU0sSUFBSSxHQUFHLE9BQU8sRUFBRSxLQUFLLElBQUksT0FBTyxFQUFFLGtCQUFrQixDQUFDO1FBRTNELE9BQU8sRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQy9ELENBQUM7SUFFRDs7OztPQUlHO0lBQ2dCLEtBQUssQ0FBQyxRQUFRLENBQy9CLElBQXNCLEVBQ3RCLFVBQWdDLEVBQ2hDLEtBQTJCLEVBQzNCLEdBQUcsSUFBNkI7UUFFaEMsSUFBSSxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU87UUFDMUIsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwRCxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUN6RCxDQUFDO0NBQ0Y7QUFFRCxTQUFTLGFBQWEsQ0FBQyxHQUFvQjtJQUN6QyxJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFNBQVMsQ0FBQztRQUFFLE9BQU8sSUFBSSxDQUFDO0lBQ2pELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQUVELFNBQVMsUUFBUSxDQUFDLEdBQW9CO0lBQ3BDLE1BQU0sS0FBSyxHQUFHLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDLDZCQUE2QixDQUFDO1FBQ3pELEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUMsQ0FBdUIsQ0FBQztJQUN4RCxJQUFJLENBQUMsS0FBSztRQUFFLE9BQU8sU0FBUyxDQUFDO0lBQzdCLE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztBQUM3RSxDQUFDO0FBRUQsU0FBUyxtQkFBbUIsQ0FDMUIsT0FBOEMsRUFDOUMsS0FBYTtJQUViLElBQUksT0FBTyxFQUFFLEdBQUc7UUFBRSxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUM7SUFDckMsSUFBSSxPQUFPLEVBQUUsR0FBRztRQUFFLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQztJQUNyQyxPQUFPLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ25DLENBQUM7QUFFRCxPQUFPLEVBQUUsY0FBYyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgaW50ZWdyYXRpb25zL25lc3Qva2V5Y2xvYWtBdXRoSGFuZGxlclxuICogQHN1bW1hcnkgS2V5Y2xvYWsgcmVxdWVzdCBhdXRoIGhhbmRsZXIuXG4gKiBAZGVzY3JpcHRpb24gVHJhbnNsYXRlcyBLZXljbG9hayBKV1QgcGF5bG9hZHMgaW50byBEZWNhZi1mcmllbmRseSBhdXRoIGRhdGEuXG4gKiBFeHRlbmRzIHRoZSBmcmFtZXdvcmstYWdub3N0aWMge0BsaW5rIEF1dGhIYW5kbGVyfSBmcm9tIGBAZGVjYWYtdHMvZm9yLWh0dHAvc2VydmVyYC5cbiAqXG4gKiBPbmx5IG92ZXJyaWRlcyB0aGUgdHdvIGV4dGVuc2lvbiBwb2ludHM6XG4gKiAtIHtAbGluayBLZXljbG9ha0F1dGhIYW5kbGVyLmV4dHJhY3RGcm9tQXV0aH0g4oCUIGRlY29kZXMgdGhlIEpXVCBhbmQgcmV0dXJucyBhdXRoIGRhdGEgKG5vIHZhbGlkYXRpb24pLlxuICogICBSZXR1cm5zIGVtcHR5IGRhdGEgZm9yIHB1YmxpYyByb3V0ZXMgd2l0aG91dCByZXF1aXJpbmcgYSB0b2tlbi5cbiAqIC0ge0BsaW5rIEtleWNsb2FrQXV0aEhhbmRsZXIudmFsaWRhdGV9IOKAlCB2YWxpZGF0ZXMgdGhlIEpXVCB2aWEge0BsaW5rIEF1dGhTZXJ2aWNlLmFzc2VydFZhbGlkVG9rZW59LFxuICogICB0aGVuIGRlbGVnYXRlcyB0byB0aGUgYmFzZSBjbGFzcyBmb3Igcm91dGUtbGV2ZWwgYW5kIG1vZGVsLWxldmVsIHJvbGUgY2hlY2tzLlxuICogICBTa2lwcyBlbnRpcmVseSBmb3IgcHVibGljIHJvdXRlcy5cbiAqXG4gKiBEb2VzIE5PVCBvdmVycmlkZSBgYmluZFRvQ29udGV4dGAg4oCUIHRoZSBiYXNlIGNsYXNzIGRlZmF1bHQgYGN0eC5hY2N1bXVsYXRlKGRhdGEpYFxuICogaXMgc3VmZmljaWVudC4gRG9lcyBOT1Qgb3ZlcnJpZGUgYGF1dGhvcml6ZWAuXG4gKi9cbmltcG9ydCB0eXBlIHsgQ29uc3RydWN0b3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRpb25cIjtcbmltcG9ydCB7IEF1dGhvcml6YXRpb25FcnJvciwgQ29udGV4dCwgQ29udGV4dHVhbEFyZ3MgfSBmcm9tIFwiQGRlY2FmLXRzL2NvcmVcIjtcbmltcG9ydCB7IEF1dGhIYW5kbGVyLCBBdXRoRGF0YSB9IGZyb20gXCJAZGVjYWYtdHMvZm9yLWh0dHAvc2VydmVyXCI7XG5cbmltcG9ydCB7IEF1dGhTZXJ2aWNlLCB0eXBlIEF1dGhTZXJ2aWNlT3B0aW9ucyB9IGZyb20gXCIuL2F1dGhTZXJ2aWNlXCI7XG5pbXBvcnQgdHlwZSB7IEF1dGhFeGVjdXRpb25Db250ZXh0TGlrZSwgQXV0aFJlcXVlc3RMaWtlIH0gZnJvbSBcIi4vdHlwZXNcIjtcbmltcG9ydCB7XG4gIGdldFJlYWxtRnJvbUlzc3VlcixcbiAgZ2V0VG9rZW5QYXlsb2FkLFxuICBleHRyYWN0S2V5Y2xvYWtSb2xlcyxcbiAgZ2V0Q2xpZW50Um9sZXMsXG59IGZyb20gXCIuL3V0aWxzXCI7XG5cbi8qKlxuICogQXV0aCBkYXRhIHJldHVybmVkIGJ5IHtAbGluayBLZXljbG9ha0F1dGhIYW5kbGVyLmV4dHJhY3RGcm9tQXV0aH0uXG4gKlxuICogQ2FycmllcyB0aGUgcmF3IEpXVCBgdG9rZW5gIHNvIHRoYXQge0BsaW5rIEtleWNsb2FrQXV0aEhhbmRsZXIudmFsaWRhdGV9IGNhblxuICogdmFsaWRhdGUgaXQgYWdhaW5zdCB0aGUgS2V5Y2xvYWsgaW5zdGFuY2UgKHNpZ25hdHVyZSwgZXhwaXJ5LCByZXZvY2F0aW9uLCBldGMuKS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBLZXljbG9ha0F1dGhEYXRhIGV4dGVuZHMgQXV0aERhdGEge1xuICAvKiogVGhlIHJhdyBKV1QgZXh0cmFjdGVkIGZyb20gdGhlIHJlcXVlc3QuIEVtcHR5IGZvciBwdWJsaWMgcm91dGVzLiAqL1xuICB0b2tlbjogc3RyaW5nO1xuICAvKiogV2hldGhlciB0aGUgcmVxdWVzdCB0YXJnZXRzIGEgcHVibGljIHJvdXRlIChza2lwcyB2YWxpZGF0aW9uKS4gKi9cbiAgaXNQdWJsaWM6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBjbGFzcyBLZXljbG9ha0F1dGhIYW5kbGVyIGV4dGVuZHMgQXV0aEhhbmRsZXI8XG4gIEF1dGhFeGVjdXRpb25Db250ZXh0TGlrZSxcbiAgQ29udGV4dCxcbiAgS2V5Y2xvYWtBdXRoRGF0YVxuPiB7XG4gIC8qKlxuICAgKiBAcGFyYW0gYXV0aFNlcnZpY2UgIEFuIHtAbGluayBBdXRoU2VydmljZX0gY29uZmlndXJlZCB3aXRoIEpXS1MgdmVyaWZpY2F0aW9uXG4gICAqICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy4gIFdoZW4gb21pdHRlZCBhIGRlZmF1bHQgZGVjb2RlLW9ubHkgc2VydmljZSBpc1xuICAgKiAgICAgICAgICAgICAgICAgICAgIHVzZWQuXG4gICAqIEBwYXJhbSBhdXRoU2VydmljZU9wdGlvbnMgIENvbnZlbmllbmNlOiBpZiBgYXV0aFNlcnZpY2VgIGlzIG9taXR0ZWQsIHRoZXNlXG4gICAqICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucyBhcmUgdXNlZCB0byBjb25zdHJ1Y3Qgb25lLlxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgYXV0aFNlcnZpY2U/OiBBdXRoU2VydmljZSxcbiAgICBhdXRoU2VydmljZU9wdGlvbnM/OiBBdXRoU2VydmljZU9wdGlvbnNcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmF1dGhTZXJ2aWNlID1cbiAgICAgIGF1dGhTZXJ2aWNlID8/IG5ldyBBdXRoU2VydmljZShhdXRoU2VydmljZU9wdGlvbnMgPz8ge30pO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZTtcblxuICBwcm90ZWN0ZWQgZXh0cmFjdEZyb21BdXRoKGN0eDogQXV0aEV4ZWN1dGlvbkNvbnRleHRMaWtlKTogS2V5Y2xvYWtBdXRoRGF0YSB7XG4gICAgY29uc3QgcmVxdWVzdCA9IGN0eC5zd2l0Y2hUb0h0dHAoKS5nZXRSZXF1ZXN0PEF1dGhSZXF1ZXN0TGlrZT4oKTtcblxuICAgIGlmIChpc1B1YmxpY1JvdXRlKHJlcXVlc3QpKSB7XG4gICAgICByZXR1cm4geyByb2xlczogW10sIHRva2VuOiBcIlwiLCBpc1B1YmxpYzogdHJ1ZSB9O1xuICAgIH1cblxuICAgIGNvbnN0IHRva2VuID0gZ2V0VG9rZW4ocmVxdWVzdCk7XG4gICAgaWYgKCF0b2tlbikgdGhyb3cgbmV3IEF1dGhvcml6YXRpb25FcnJvcihcIlRva2VuIG5vdCBmb3VuZFwiKTtcblxuICAgIC8vIERlY29kZSBvbmx5IOKAlCB2YWxpZGF0aW9uIGhhcHBlbnMgaW4gYHZhbGlkYXRlYFxuICAgIGNvbnN0IHBheWxvYWQgPSBnZXRUb2tlblBheWxvYWQodG9rZW4pO1xuICAgIGNvbnN0IHJvbGVzID0gZXh0cmFjdEtleWNsb2FrUm9sZXMocGF5bG9hZCk7XG4gICAgY29uc3Qgb3JnYW5pemF0aW9uID0gcmVzb2x2ZU9yZ2FuaXphdGlvbihwYXlsb2FkLCB0b2tlbik7XG4gICAgY29uc3QgdXNlciA9IHBheWxvYWQ/LmVtYWlsID8/IHBheWxvYWQ/LnByZWZlcnJlZF91c2VybmFtZTtcblxuICAgIHJldHVybiB7IHVzZXIsIG9yZ2FuaXphdGlvbiwgcm9sZXMsIHRva2VuLCBpc1B1YmxpYzogZmFsc2UgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgdGhlIEpXVCBhZ2FpbnN0IHRoZSBLZXljbG9hayBpbnN0YW5jZSAoc2lnbmF0dXJlLCBleHBpcnksIGV0Yy4pXG4gICAqIHZpYSB7QGxpbmsgQXV0aFNlcnZpY2UuYXNzZXJ0VmFsaWRUb2tlbn0sIHRoZW4gZGVsZWdhdGVzIHRvIHRoZSBiYXNlIGNsYXNzXG4gICAqIGZvciByb3V0ZS1sZXZlbCBhbmQgbW9kZWwtbGV2ZWwgcm9sZSBjaGVja3MuIFNraXBzIGVudGlyZWx5IGZvciBwdWJsaWMgcm91dGVzLlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGFzeW5jIHZhbGlkYXRlKFxuICAgIGRhdGE6IEtleWNsb2FrQXV0aERhdGEsXG4gICAgcm91dGVSb2xlczogc3RyaW5nW10gfCB1bmRlZmluZWQsXG4gICAgbW9kZWw6IHN0cmluZyB8IENvbnN0cnVjdG9yLFxuICAgIC4uLmFyZ3M6IENvbnRleHR1YWxBcmdzPENvbnRleHQ+XG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmIChkYXRhLmlzUHVibGljKSByZXR1cm47XG4gICAgYXdhaXQgdGhpcy5hdXRoU2VydmljZS5hc3NlcnRWYWxpZFRva2VuKGRhdGEudG9rZW4pO1xuICAgIGF3YWl0IHN1cGVyLnZhbGlkYXRlKGRhdGEsIHJvdXRlUm9sZXMsIG1vZGVsLCAuLi5hcmdzKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBpc1B1YmxpY1JvdXRlKHJlcTogQXV0aFJlcXVlc3RMaWtlKTogYm9vbGVhbiB7XG4gIGlmIChyZXEucGF0aD8uc3RhcnRzV2l0aChcIi9wdWJsaWNcIikpIHJldHVybiB0cnVlO1xuICByZXR1cm4gZmFsc2U7XG59XG5cbmZ1bmN0aW9uIGdldFRva2VuKHJlcTogQXV0aFJlcXVlc3RMaWtlKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgY29uc3QgdG9rZW4gPSAocmVxLmhlYWRlcnM/LltcIngtYXV0aC1yZXF1ZXN0LWFjY2Vzcy10b2tlblwiXSA/P1xuICAgIHJlcS5oZWFkZXJzPy5bXCJhdXRob3JpemF0aW9uXCJdKSBhcyBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIGlmICghdG9rZW4pIHJldHVybiB1bmRlZmluZWQ7XG4gIHJldHVybiB0b2tlbi5zdGFydHNXaXRoKFwiQmVhcmVyIFwiKSA/IHRva2VuLnNsaWNlKFwiQmVhcmVyIFwiLmxlbmd0aCkgOiB0b2tlbjtcbn1cblxuZnVuY3Rpb24gcmVzb2x2ZU9yZ2FuaXphdGlvbihcbiAgcGF5bG9hZDogeyBhdWQ/OiBzdHJpbmc7IGF6cD86IHN0cmluZyB9IHwgbnVsbCxcbiAgdG9rZW46IHN0cmluZ1xuKTogc3RyaW5nIHtcbiAgaWYgKHBheWxvYWQ/LmF1ZCkgcmV0dXJuIHBheWxvYWQuYXVkO1xuICBpZiAocGF5bG9hZD8uYXpwKSByZXR1cm4gcGF5bG9hZC5henA7XG4gIHJldHVybiBnZXRSZWFsbUZyb21Jc3N1ZXIodG9rZW4pO1xufVxuXG5leHBvcnQgeyBnZXRDbGllbnRSb2xlcyB9O1xuIl19
96
+ export { getClientRoles } from "./utils.js";
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Y2xvYWtBdXRoSGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9uZXN0L2tleWNsb2FrQXV0aEhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7Ozs7Ozs7R0FPRztBQUNILE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxPQUFPLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFdBQVcsRUFBWSxNQUFNLDJCQUEyQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQU92RSxPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLHlCQUF5QixFQUN6QixrQkFBa0IsR0FDbkIsbUJBQWdCO0FBWWpCLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxXQUl4QztJQUNDO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBS1MsR0FBRztRQUNYLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDckIsTUFBTSxJQUFJLGFBQWEsQ0FDckIsbUlBQW1JLENBQ3BJLENBQUM7UUFDSixDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFUyxrQkFBa0IsQ0FBQyxHQUE2QjtRQUN4RCxPQUFPLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxVQUFVLEVBQW1CLENBQUM7SUFDMUQsQ0FBQztJQUVrQixlQUFlLENBQUMsT0FBd0I7UUFDekQsT0FBTyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVTLGdCQUFnQixDQUFDLE9BQXdCO1FBQ2pELElBQUksYUFBYSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDM0IsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxR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bGUgaW50ZWdyYXRpb25zL25lc3Qva2V5Y2xvYWtBdXRoSGFuZGxlclxuICogQHN1bW1hcnkgS2V5Y2xvYWsgcmVxdWVzdCBhdXRoIGhhbmRsZXIuXG4gKiBAZGVzY3JpcHRpb24gVHJhbnNsYXRlcyBLZXljbG9hayBKV1QgcGF5bG9hZHMgaW50byBEZWNhZi1mcmllbmRseSBhdXRoIGRhdGEuXG4gKiBUaGUgYmFzZSBpbXBsZW1lbnRhdGlvbiBoYW5kbGVzIHRoZSByZXF1ZXN0LXRvLWNvbnRleHQgcGx1bWJpbmcsIGxvZ2dlciBiaW5kaW5nLFxuICogYW5kIHJvbGUgY2hlY2tzLiBOYW1lc3BhY2UgZXh0cmFjdGlvbiBpcyBpbnRlbnRpb25hbGx5IHNwbGl0IGludG8gYSBkZWRpY2F0ZWRcbiAqIHN1YmNsYXNzIHNvIHByb3ZpZGVyLXNwZWNpZmljIHNjb3BlIGhhbmRsaW5nIGNhbiBiZSBzd2FwcGVkIGluZGVwZW5kZW50bHkuXG4gKi9cbmltcG9ydCB7IEF1dGhvcml6YXRpb25FcnJvciwgc2VydmljZSB9IGZyb20gXCJAZGVjYWYtdHMvY29yZVwiO1xuaW1wb3J0IHsgSW50ZXJuYWxFcnJvciB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgQXV0aEhhbmRsZXIsIEF1dGhEYXRhIH0gZnJvbSBcIkBkZWNhZi10cy9mb3ItaHR0cC9zZXJ2ZXJcIjtcbmltcG9ydCB0eXBlIHsgQ29udGV4dCB9IGZyb20gXCJAZGVjYWYtdHMvY29yZVwiO1xuaW1wb3J0IHsgSnd0U2VydmljZSB9IGZyb20gXCJAZGVjYWYtdHMvY3J5cHRvL2ludGVncmF0aW9uL3NlcnZpY2VzL2p3dFwiO1xuXG5pbXBvcnQgdHlwZSB7XG4gIEF1dGhFeGVjdXRpb25Db250ZXh0TGlrZSxcbiAgQXV0aFJlcXVlc3RMaWtlLFxuICBLZXljbG9ha0FjY2Vzc1Rva2VuUGF5bG9hZCxcbn0gZnJvbSBcIi4vdHlwZXNcIjtcbmltcG9ydCB7XG4gIGV4dHJhY3RLZXljbG9ha1JvbGVzLFxuICBleHRyYWN0S2V5Y2xvYWtOYW1lc3BhY2VzLFxuICBnZXRSZWFsbUZyb21Jc3N1ZXIsXG59IGZyb20gXCIuL3V0aWxzXCI7XG5cbi8qKlxuICogQXV0aCBkYXRhIHJldHVybmVkIGJ5IHtAbGluayBLZXljbG9ha0F1dGhIYW5kbGVyLmV4dHJhY3RGcm9tUmVxdWVzdH0uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgS2V5Y2xvYWtBdXRoRGF0YSBleHRlbmRzIEF1dGhEYXRhIHtcbiAgLyoqIFRoZSByYXcgSldUIGV4dHJhY3RlZCBmcm9tIHRoZSByZXF1ZXN0LiBFbXB0eSBmb3IgcHVibGljIHJvdXRlcy4gKi9cbiAgdG9rZW46IHN0cmluZztcbiAgLyoqIFdoZXRoZXIgdGhlIHJlcXVlc3QgdGFyZ2V0cyBhIHB1YmxpYyByb3V0ZSAoc2tpcHMgdmFsaWRhdGlvbikuICovXG4gIGlzUHVibGljOiBib29sZWFuO1xufVxuXG5leHBvcnQgY2xhc3MgS2V5Y2xvYWtBdXRoSGFuZGxlciBleHRlbmRzIEF1dGhIYW5kbGVyPFxuICBBdXRoRXhlY3V0aW9uQ29udGV4dExpa2UsXG4gIENvbnRleHQsXG4gIEtleWNsb2FrQXV0aERhdGFcbj4ge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgQHNlcnZpY2UoSnd0U2VydmljZSlcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGp3dFNlcnZpY2U/OiBKd3RTZXJ2aWNlO1xuXG4gIHByb3RlY3RlZCBqd3QoKTogSnd0U2VydmljZSB7XG4gICAgaWYgKCF0aGlzLmp3dFNlcnZpY2UpIHtcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgICBcIkp3dFNlcnZpY2UgaXMgbm90IGF2YWlsYWJsZS4gTWFrZSBzdXJlIHRoZSBoYW5kbGVyIGlzIGNyZWF0ZWQgdGhyb3VnaCBEZWNhZiBzZXJ2aWNlIGluamVjdGlvbiBvciBhc3NpZ24gYSB0ZXN0IGRvdWJsZSBleHBsaWNpdGx5LlwiXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5qd3RTZXJ2aWNlO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlcXVlc3RGcm9tQ29udGV4dChjdHg6IEF1dGhFeGVjdXRpb25Db250ZXh0TGlrZSk6IEF1dGhSZXF1ZXN0TGlrZSB7XG4gICAgcmV0dXJuIGN0eC5zd2l0Y2hUb0h0dHAoKS5nZXRSZXF1ZXN0PEF1dGhSZXF1ZXN0TGlrZT4oKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBpc1B1YmxpY1JlcXVlc3QocmVxdWVzdDogQXV0aFJlcXVlc3RMaWtlKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzUHVibGljUm91dGUocmVxdWVzdCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcGFyc2VGcm9tUmVxdWVzdChyZXF1ZXN0OiBBdXRoUmVxdWVzdExpa2UpOiBLZXljbG9ha0F1dGhEYXRhIHtcbiAgICBpZiAoaXNQdWJsaWNSb3V0ZShyZXF1ZXN0KSkge1xuICAgICAgcmV0dXJuIHsgcm9sZXM6IFtdLCB0b2tlbjogXCJcIiwgaXNQdWJsaWM6IHRydWUgfTtcbiAgICB9XG5cbiAgICBjb25zdCB0b2tlbiA9IGdldFRva2VuKHJlcXVlc3QpO1xuICAgIGlmICghdG9rZW4pIHRocm93IG5ldyBBdXRob3JpemF0aW9uRXJyb3IoXCJUb2tlbiBub3QgZm91bmRcIik7XG5cbiAgICBjb25zdCBwYXlsb2FkID0gdGhpcy5qd3QoKS5kZWNvZGVQYXlsb2FkPEtleWNsb2FrQWNjZXNzVG9rZW5QYXlsb2FkPih0b2tlbik7XG4gICAgaWYgKCFwYXlsb2FkKSB0aHJvdyBuZXcgQXV0aG9yaXphdGlvbkVycm9yKFwiSW52YWxpZCB0b2tlblwiKTtcblxuICAgIGNvbnN0IHJvbGVzID0gZXh0cmFjdEtleWNsb2FrUm9sZXMocGF5bG9hZCk7XG4gICAgY29uc3Qgb3JnYW5pemF0aW9uID0gcGF5bG9hZC5hdWQgfHwgcGF5bG9hZC5henAgfHwgZ2V0UmVhbG1Gcm9tSXNzdWVyKHRva2VuKTtcbiAgICBjb25zdCB1c2VyID0gcGF5bG9hZD8uZW1haWwgPz8gcGF5bG9hZD8ucHJlZmVycmVkX3VzZXJuYW1lO1xuXG4gICAgcmV0dXJuIHsgdXNlciwgb3JnYW5pemF0aW9uLCByb2xlcywgdG9rZW4sIGlzUHVibGljOiBmYWxzZSB9O1xuICB9XG5cbiAgcHJvdGVjdGVkIGV4dHJhY3RGcm9tUmVxdWVzdChyZXF1ZXN0OiBBdXRoUmVxdWVzdExpa2UpOiBLZXljbG9ha0F1dGhEYXRhIHtcbiAgICByZXR1cm4gdGhpcy5wYXJzZUZyb21SZXF1ZXN0KHJlcXVlc3QpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGFzeW5jIHZhbGlkYXRlQXV0aChcbiAgICBkYXRhOiBLZXljbG9ha0F1dGhEYXRhLFxuICAgIF9yZXF1ZXN0OiBBdXRoUmVxdWVzdExpa2VcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKGRhdGEuaXNQdWJsaWMpIHJldHVybjtcbiAgICBpZiAoIWRhdGEudG9rZW4pIHRocm93IG5ldyBBdXRob3JpemF0aW9uRXJyb3IoXCJUb2tlbiBub3QgZm91bmRcIik7XG4gICAgYXdhaXQgdGhpcy5qd3QoKS5kZWNvZGVBdXRoVG9rZW48S2V5Y2xvYWtBY2Nlc3NUb2tlblBheWxvYWQ+KGRhdGEudG9rZW4pO1xuICB9XG59XG5cbi8qKlxuICogS2V5Y2xvYWsgaGFuZGxlciB2YXJpYW50IHRoYXQgYWxzbyBleHRyYWN0cyBuYW1lc3BhY2Ugc2NvcGVzIGZyb20gdGhlIHRva2VuLlxuICovXG5leHBvcnQgY2xhc3MgS2V5Y2xvYWtOYW1lc3BhY2VBdXRoSGFuZGxlciBleHRlbmRzIEtleWNsb2FrQXV0aEhhbmRsZXIge1xuICBwcm90ZWN0ZWQgcGFyc2VGcm9tUmVxdWVzdChyZXF1ZXN0OiBBdXRoUmVxdWVzdExpa2UpOiBLZXljbG9ha0F1dGhEYXRhIHtcbiAgICBjb25zdCBkYXRhID0gc3VwZXIucGFyc2VGcm9tUmVxdWVzdChyZXF1ZXN0KTtcbiAgICBpZiAoZGF0YS5pc1B1YmxpYykgcmV0dXJuIGRhdGE7XG5cbiAgICBjb25zdCBwYXlsb2FkID0gdGhpcy5qd3QoKS5kZWNvZGVQYXlsb2FkPEtleWNsb2FrQWNjZXNzVG9rZW5QYXlsb2FkPihkYXRhLnRva2VuKTtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uZGF0YSxcbiAgICAgIG5hbWVzcGFjZXM6IGV4dHJhY3RLZXljbG9ha05hbWVzcGFjZXMocGF5bG9hZCksXG4gICAgfTtcbiAgfVxufVxuXG5mdW5jdGlvbiBpc1B1YmxpY1JvdXRlKHJlcTogQXV0aFJlcXVlc3RMaWtlKTogYm9vbGVhbiB7XG4gIGlmIChyZXEucGF0aD8uc3RhcnRzV2l0aChcIi9wdWJsaWNcIikpIHJldHVybiB0cnVlO1xuICByZXR1cm4gZmFsc2U7XG59XG5cbmZ1bmN0aW9uIGdldFRva2VuKHJlcTogQXV0aFJlcXVlc3RMaWtlKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgY29uc3QgdG9rZW4gPSAocmVxLmhlYWRlcnM/LltcIngtYXV0aC1yZXF1ZXN0LWFjY2Vzcy10b2tlblwiXSA/P1xuICAgIHJlcS5oZWFkZXJzPy5bXCJhdXRob3JpemF0aW9uXCJdKSBhcyBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIGlmICghdG9rZW4pIHJldHVybiB1bmRlZmluZWQ7XG4gIHJldHVybiB0b2tlbi5zdGFydHNXaXRoKFwiQmVhcmVyIFwiKSA/IHRva2VuLnNsaWNlKFwiQmVhcmVyIFwiLmxlbmd0aCkgOiB0b2tlbjtcbn1cblxuZXhwb3J0IHsgZ2V0Q2xpZW50Um9sZXMgfSBmcm9tIFwiLi91dGlsc1wiO1xuIl19
@@ -1,21 +1,18 @@
1
1
  /**
2
2
  * @module integrations/nest/keycloakModule
3
3
  * @summary Nest module wiring for Keycloak auth.
4
- * @description Exposes the Nest module setup for the integration auth service and Keycloak handler.
4
+ * @description Exposes the Nest module setup for the Keycloak auth handlers.
5
5
  */
6
- import { AuthService } from "./authService.js";
7
- import { KeycloakAuthHandler } from "./keycloakAuthHandler.js";
6
+ import { KeycloakNamespaceAuthHandler } from "./keycloakAuthHandler.js";
8
7
  export class KeycloakModule {
9
- constructor(authService, authHandler) {
10
- this.authService = authService;
8
+ constructor(authHandler) {
11
9
  this.authHandler = authHandler;
12
10
  }
13
- static create(options) {
14
- const authService = new AuthService(options);
15
- const authHandler = new KeycloakAuthHandler(authService);
16
- return new KeycloakModule(authService, authHandler);
11
+ static create() {
12
+ const authHandler = new KeycloakNamespaceAuthHandler();
13
+ return new KeycloakModule(authHandler);
17
14
  }
18
15
  }
19
16
  export class AuthModule extends KeycloakModule {
20
17
  }
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Y2xvYWtNb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbmVzdC9rZXljbG9ha01vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsT0FBTyxFQUFFLFdBQVcsRUFBMkIseUJBQXNCO0FBQ3JFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxpQ0FBOEI7QUFFNUQsTUFBTSxPQUFPLGNBQWM7SUFDekIsWUFDa0IsV0FBd0IsRUFDeEIsV0FBZ0M7UUFEaEMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsZ0JBQVcsR0FBWCxXQUFXLENBQXFCO0lBQy9DLENBQUM7SUFFSixNQUFNLENBQUMsTUFBTSxDQUFDLE9BQTRCO1FBQ3hDLE1BQU0sV0FBVyxHQUFHLElBQUksV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzdDLE1BQU0sV0FBVyxHQUFHLElBQUksbUJBQW1CLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDekQsT0FBTyxJQUFJLGNBQWMsQ0FBQyxXQUFXLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLFVBQVcsU0FBUSxjQUFjO0NBQUciLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgaW50ZWdyYXRpb25zL25lc3Qva2V5Y2xvYWtNb2R1bGVcbiAqIEBzdW1tYXJ5IE5lc3QgbW9kdWxlIHdpcmluZyBmb3IgS2V5Y2xvYWsgYXV0aC5cbiAqIEBkZXNjcmlwdGlvbiBFeHBvc2VzIHRoZSBOZXN0IG1vZHVsZSBzZXR1cCBmb3IgdGhlIGludGVncmF0aW9uIGF1dGggc2VydmljZSBhbmQgS2V5Y2xvYWsgaGFuZGxlci5cbiAqL1xuaW1wb3J0IHsgQXV0aFNlcnZpY2UsIHR5cGUgQXV0aFNlcnZpY2VPcHRpb25zIH0gZnJvbSBcIi4vYXV0aFNlcnZpY2VcIjtcbmltcG9ydCB7IEtleWNsb2FrQXV0aEhhbmRsZXIgfSBmcm9tIFwiLi9rZXljbG9ha0F1dGhIYW5kbGVyXCI7XG5cbmV4cG9ydCBjbGFzcyBLZXljbG9ha01vZHVsZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXG4gICAgcHVibGljIHJlYWRvbmx5IGF1dGhIYW5kbGVyOiBLZXljbG9ha0F1dGhIYW5kbGVyXG4gICkge31cblxuICBzdGF0aWMgY3JlYXRlKG9wdGlvbnM/OiBBdXRoU2VydmljZU9wdGlvbnMpOiBLZXljbG9ha01vZHVsZSB7XG4gICAgY29uc3QgYXV0aFNlcnZpY2UgPSBuZXcgQXV0aFNlcnZpY2Uob3B0aW9ucyk7XG4gICAgY29uc3QgYXV0aEhhbmRsZXIgPSBuZXcgS2V5Y2xvYWtBdXRoSGFuZGxlcihhdXRoU2VydmljZSk7XG4gICAgcmV0dXJuIG5ldyBLZXljbG9ha01vZHVsZShhdXRoU2VydmljZSwgYXV0aEhhbmRsZXIpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBBdXRoTW9kdWxlIGV4dGVuZHMgS2V5Y2xvYWtNb2R1bGUge31cbiJdfQ==
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Y2xvYWtNb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbmVzdC9rZXljbG9ha01vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsT0FBTyxFQUF1Qiw0QkFBNEIsRUFBRSxpQ0FBOEI7QUFFMUYsTUFBTSxPQUFPLGNBQWM7SUFDekIsWUFDa0IsV0FBZ0M7UUFBaEMsZ0JBQVcsR0FBWCxXQUFXLENBQXFCO0lBQy9DLENBQUM7SUFFSixNQUFNLENBQUMsTUFBTTtRQUNYLE1BQU0sV0FBVyxHQUFHLElBQUksNEJBQTRCLEVBQUUsQ0FBQztRQUN2RCxPQUFPLElBQUksY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxVQUFXLFNBQVEsY0FBYztDQUFHIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9uZXN0L2tleWNsb2FrTW9kdWxlXG4gKiBAc3VtbWFyeSBOZXN0IG1vZHVsZSB3aXJpbmcgZm9yIEtleWNsb2FrIGF1dGguXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgTmVzdCBtb2R1bGUgc2V0dXAgZm9yIHRoZSBLZXljbG9hayBhdXRoIGhhbmRsZXJzLlxuICovXG5pbXBvcnQgeyBLZXljbG9ha0F1dGhIYW5kbGVyLCBLZXljbG9ha05hbWVzcGFjZUF1dGhIYW5kbGVyIH0gZnJvbSBcIi4va2V5Y2xvYWtBdXRoSGFuZGxlclwiO1xuXG5leHBvcnQgY2xhc3MgS2V5Y2xvYWtNb2R1bGUge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgYXV0aEhhbmRsZXI6IEtleWNsb2FrQXV0aEhhbmRsZXJcbiAgKSB7fVxuXG4gIHN0YXRpYyBjcmVhdGUoKTogS2V5Y2xvYWtNb2R1bGUge1xuICAgIGNvbnN0IGF1dGhIYW5kbGVyID0gbmV3IEtleWNsb2FrTmFtZXNwYWNlQXV0aEhhbmRsZXIoKTtcbiAgICByZXR1cm4gbmV3IEtleWNsb2FrTW9kdWxlKGF1dGhIYW5kbGVyKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQXV0aE1vZHVsZSBleHRlbmRzIEtleWNsb2FrTW9kdWxlIHt9XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbmVzdC90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9uZXN0L3R5cGVzXG4gKiBAc3VtbWFyeSBOZXN0IGludGVncmF0aW9uIHR5cGVzLlxuICogQGRlc2NyaXB0aW9uIEtleWNsb2FrLXNwZWNpZmljIHBheWxvYWQgdHlwZXMsIGEgcGxhdGZvcm0tc3BlY2lmaWMgZXhlY3V0aW9uIGNvbnRleHRcbiAqIHR5cGUsIGFuZCByZS1leHBvcnRzIG9mIHRoZSBmcmFtZXdvcmstYWdub3N0aWMgYXV0aCBwcmltaXRpdmVzIGZyb21cbiAqIGBAZGVjYWYtdHMvZm9yLWh0dHAvc2VydmVyYC5cbiAqL1xuaW1wb3J0IHR5cGUgeyBBdXRoRGF0YSwgQXV0aFJlcXVlc3RMaWtlLCBVc2VyRGF0YSB9IGZyb20gXCJAZGVjYWYtdHMvZm9yLWh0dHAvc2VydmVyXCI7XG5cbmV4cG9ydCB0eXBlIHsgQXV0aERhdGEsIEF1dGhSZXF1ZXN0TGlrZSwgVXNlckRhdGEgfTtcblxuLyoqXG4gKiBTdHJ1Y3R1cmFsIHN1YnNldCBvZiBhIE5lc3RKUy1saWtlIGV4ZWN1dGlvbiBjb250ZXh0IHRoYXQgZXhwb3NlcyB0aGUgSFRUUCByZXF1ZXN0LlxuICpcbiAqIERlZmluZWQgaGVyZSAobm90IGluIGZvci1odHRwKSBiZWNhdXNlIHRoZSBiYXNlIGBBdXRoSGFuZGxlcmAgY2xhc3MgaXMgaW50ZW50aW9uYWxseVxuICogZ2VuZXJpYyBvdmVyIGl0cyBleGVjdXRpb24gY29udGV4dCDigJQgb25seSB0aGUgcGxhdGZvcm0gdGhhdCBjb25zdW1lcyBpdCBuZWVkcyB0byBrbm93XG4gKiB0aGUgY29uY3JldGUgc2hhcGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXV0aEV4ZWN1dGlvbkNvbnRleHRMaWtlIHtcbiAgc3dpdGNoVG9IdHRwKCk6IHsgZ2V0UmVxdWVzdDxUID0gQXV0aFJlcXVlc3RMaWtlPigpOiBUIH07XG4gIGdldEhhbmRsZXI/KCk6IHsgbmFtZT86IHN0cmluZyB9O1xuICBnZXRDbGFzcz8oKTogeyBuYW1lPzogc3RyaW5nIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgS2V5Y2xvYWtBY2Nlc3NUb2tlblBheWxvYWQge1xuICBwcmVmZXJyZWRfdXNlcm5hbWU/OiBzdHJpbmc7XG4gIGVtYWlsPzogc3RyaW5nO1xuICBlbWFpbF92ZXJpZmllZD86IGJvb2xlYW47XG4gIG5hbWU/OiBzdHJpbmc7XG4gIGdpdmVuX25hbWU/OiBzdHJpbmc7XG4gIGZhbWlseV9uYW1lPzogc3RyaW5nO1xuICBpc3M/OiBzdHJpbmc7XG4gIGF1ZD86IHN0cmluZztcbiAgYXpwPzogc3RyaW5nO1xuICByZWFsbV9hY2Nlc3M/OiB7IHJvbGVzPzogc3RyaW5nW10gfTtcbiAgcmVzb3VyY2VfYWNjZXNzPzogUmVjb3JkPHN0cmluZywgeyByb2xlcz86IHN0cmluZ1tdIH0+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEtleWNsb2FrVXNlciB7XG4gIHByZWZlcnJlZF91c2VybmFtZT86IHN0cmluZztcbiAgZW1haWw/OiBzdHJpbmc7XG4gIGVtYWlsX3ZlcmlmaWVkPzogYm9vbGVhbjtcbiAgbmFtZT86IHN0cmluZztcbiAgZ2l2ZW5fbmFtZT86IHN0cmluZztcbiAgZmFtaWx5X25hbWU/OiBzdHJpbmc7XG4gIHJlYWxtPzogc3RyaW5nO1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbmVzdC90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9uZXN0L3R5cGVzXG4gKiBAc3VtbWFyeSBOZXN0IGludGVncmF0aW9uIHR5cGVzLlxuICogQGRlc2NyaXB0aW9uIEtleWNsb2FrLXNwZWNpZmljIHBheWxvYWQgdHlwZXMsIGEgcGxhdGZvcm0tc3BlY2lmaWMgZXhlY3V0aW9uIGNvbnRleHRcbiAqIHR5cGUsIGFuZCByZS1leHBvcnRzIG9mIHRoZSBmcmFtZXdvcmstYWdub3N0aWMgYXV0aCBwcmltaXRpdmVzIGZyb21cbiAqIGBAZGVjYWYtdHMvZm9yLWh0dHAvc2VydmVyYC5cbiAqL1xuaW1wb3J0IHR5cGUgeyBBdXRoRGF0YSwgQXV0aFJlcXVlc3RMaWtlLCBVc2VyRGF0YSB9IGZyb20gXCJAZGVjYWYtdHMvZm9yLWh0dHAvc2VydmVyXCI7XG5cbmV4cG9ydCB0eXBlIHsgQXV0aERhdGEsIEF1dGhSZXF1ZXN0TGlrZSwgVXNlckRhdGEgfTtcblxuLyoqXG4gKiBTdHJ1Y3R1cmFsIHN1YnNldCBvZiBhIE5lc3RKUy1saWtlIGV4ZWN1dGlvbiBjb250ZXh0IHRoYXQgZXhwb3NlcyB0aGUgSFRUUCByZXF1ZXN0LlxuICpcbiAqIERlZmluZWQgaGVyZSAobm90IGluIGZvci1odHRwKSBiZWNhdXNlIHRoZSBiYXNlIGBBdXRoSGFuZGxlcmAgY2xhc3MgaXMgaW50ZW50aW9uYWxseVxuICogZ2VuZXJpYyBvdmVyIGl0cyBleGVjdXRpb24gY29udGV4dCDigJQgb25seSB0aGUgcGxhdGZvcm0gdGhhdCBjb25zdW1lcyBpdCBuZWVkcyB0byBrbm93XG4gKiB0aGUgY29uY3JldGUgc2hhcGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXV0aEV4ZWN1dGlvbkNvbnRleHRMaWtlIHtcbiAgc3dpdGNoVG9IdHRwKCk6IHsgZ2V0UmVxdWVzdDxUID0gQXV0aFJlcXVlc3RMaWtlPigpOiBUIH07XG4gIGdldEhhbmRsZXI/KCk6IHsgbmFtZT86IHN0cmluZyB9O1xuICBnZXRDbGFzcz8oKTogeyBuYW1lPzogc3RyaW5nIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgS2V5Y2xvYWtBY2Nlc3NUb2tlblBheWxvYWQge1xuICBwcmVmZXJyZWRfdXNlcm5hbWU/OiBzdHJpbmc7XG4gIGVtYWlsPzogc3RyaW5nO1xuICBlbWFpbF92ZXJpZmllZD86IGJvb2xlYW47XG4gIG5hbWU/OiBzdHJpbmc7XG4gIGdpdmVuX25hbWU/OiBzdHJpbmc7XG4gIGZhbWlseV9uYW1lPzogc3RyaW5nO1xuICBpc3M/OiBzdHJpbmc7XG4gIGF1ZD86IHN0cmluZztcbiAgYXpwPzogc3RyaW5nO1xuICBuYW1lc3BhY2U/OiBzdHJpbmcgfCBzdHJpbmdbXTtcbiAgbmFtZXNwYWNlcz86IHN0cmluZ1tdO1xuICByZWFsbV9hY2Nlc3M/OiB7IHJvbGVzPzogc3RyaW5nW10gfTtcbiAgcmVzb3VyY2VfYWNjZXNzPzogUmVjb3JkPHN0cmluZywgeyByb2xlcz86IHN0cmluZ1tdIH0+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEtleWNsb2FrVXNlciB7XG4gIHByZWZlcnJlZF91c2VybmFtZT86IHN0cmluZztcbiAgZW1haWw/OiBzdHJpbmc7XG4gIGVtYWlsX3ZlcmlmaWVkPzogYm9vbGVhbjtcbiAgbmFtZT86IHN0cmluZztcbiAgZ2l2ZW5fbmFtZT86IHN0cmluZztcbiAgZmFtaWx5X25hbWU/OiBzdHJpbmc7XG4gIHJlYWxtPzogc3RyaW5nO1xufVxuIl19