@decaf-ts/integrations 0.14.3 → 0.15.3

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 (1165) hide show
  1. package/LICENSE.md +373 -21
  2. package/dist/integrations.cjs +2 -3317
  3. package/dist/integrations.cjs.map +1 -0
  4. package/dist/integrations.js +2 -3665
  5. package/dist/integrations.js.map +1 -0
  6. package/jest.config.cjs +0 -1
  7. package/lib/cjs/blob/azure/AzureBlobEnvironment.cjs +2 -2
  8. package/lib/cjs/blob/azure/AzureBlobEnvironment.cjs.map +1 -0
  9. package/lib/cjs/blob/azure/AzureBlobStoreService.cjs +2 -2
  10. package/lib/cjs/blob/azure/AzureBlobStoreService.cjs.map +1 -0
  11. package/lib/cjs/blob/azure/index.cjs +2 -2
  12. package/lib/cjs/blob/azure/index.cjs.map +1 -0
  13. package/lib/cjs/blob/core/BlobEnvironment.cjs +2 -2
  14. package/lib/cjs/blob/core/BlobEnvironment.cjs.map +1 -0
  15. package/lib/cjs/blob/core/BlobErrors.cjs +2 -2
  16. package/lib/cjs/blob/core/BlobErrors.cjs.map +1 -0
  17. package/lib/cjs/blob/core/BlobKey.cjs +2 -2
  18. package/lib/cjs/blob/core/BlobKey.cjs.map +1 -0
  19. package/lib/cjs/blob/core/BlobStoreFactory.cjs +2 -2
  20. package/lib/cjs/blob/core/BlobStoreFactory.cjs.map +1 -0
  21. package/lib/cjs/blob/core/BlobStoreService.cjs +2 -2
  22. package/lib/cjs/blob/core/BlobStoreService.cjs.map +1 -0
  23. package/lib/cjs/blob/core/BlobTypes.cjs +2 -2
  24. package/lib/cjs/blob/core/BlobTypes.cjs.map +1 -0
  25. package/lib/cjs/blob/core/BlobValue.cjs +2 -2
  26. package/lib/cjs/blob/core/BlobValue.cjs.map +1 -0
  27. package/lib/cjs/blob/core/index.cjs +2 -2
  28. package/lib/cjs/blob/core/index.cjs.map +1 -0
  29. package/lib/cjs/blob/gcp/GcsBlobEnvironment.cjs +2 -2
  30. package/lib/cjs/blob/gcp/GcsBlobEnvironment.cjs.map +1 -0
  31. package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs +2 -2
  32. package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs.map +1 -0
  33. package/lib/cjs/blob/gcp/index.cjs +2 -2
  34. package/lib/cjs/blob/gcp/index.cjs.map +1 -0
  35. package/lib/cjs/blob/index.cjs +2 -2
  36. package/lib/cjs/blob/index.cjs.map +1 -0
  37. package/lib/cjs/blob/local/LocalBlobEnvironment.cjs +2 -2
  38. package/lib/cjs/blob/local/LocalBlobEnvironment.cjs.map +1 -0
  39. package/lib/cjs/blob/local/LocalBlobStoreService.cjs +2 -2
  40. package/lib/cjs/blob/local/LocalBlobStoreService.cjs.map +1 -0
  41. package/lib/cjs/blob/local/index.cjs +2 -2
  42. package/lib/cjs/blob/local/index.cjs.map +1 -0
  43. package/lib/cjs/blob/memory/MemoryBlobEnvironment.cjs +2 -2
  44. package/lib/cjs/blob/memory/MemoryBlobEnvironment.cjs.map +1 -0
  45. package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs +2 -2
  46. package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs.map +1 -0
  47. package/lib/cjs/blob/memory/index.cjs +2 -2
  48. package/lib/cjs/blob/memory/index.cjs.map +1 -0
  49. package/lib/cjs/blob/s3/MinioBlobEnvironment.cjs +2 -2
  50. package/lib/cjs/blob/s3/MinioBlobEnvironment.cjs.map +1 -0
  51. package/lib/cjs/blob/s3/MinioBlobStoreService.cjs +2 -2
  52. package/lib/cjs/blob/s3/MinioBlobStoreService.cjs.map +1 -0
  53. package/lib/cjs/blob/s3/R2BlobEnvironment.cjs +2 -2
  54. package/lib/cjs/blob/s3/R2BlobEnvironment.cjs.map +1 -0
  55. package/lib/cjs/blob/s3/R2BlobStoreService.cjs +2 -2
  56. package/lib/cjs/blob/s3/R2BlobStoreService.cjs.map +1 -0
  57. package/lib/cjs/blob/s3/S3BlobEnvironment.cjs +2 -2
  58. package/lib/cjs/blob/s3/S3BlobEnvironment.cjs.map +1 -0
  59. package/lib/cjs/blob/s3/S3BlobStoreService.cjs +2 -2
  60. package/lib/cjs/blob/s3/S3BlobStoreService.cjs.map +1 -0
  61. package/lib/cjs/blob/s3/S3CompatibleBlobStoreService.cjs +2 -2
  62. package/lib/cjs/blob/s3/S3CompatibleBlobStoreService.cjs.map +1 -0
  63. package/lib/cjs/blob/s3/index.cjs +2 -2
  64. package/lib/cjs/blob/s3/index.cjs.map +1 -0
  65. package/lib/cjs/calendar/CalendarService.cjs +2 -2
  66. package/lib/cjs/calendar/CalendarService.cjs.map +1 -0
  67. package/lib/cjs/calendar/environment.cjs +2 -2
  68. package/lib/cjs/calendar/environment.cjs.map +1 -0
  69. package/lib/cjs/calendar/google-calendar/GoogleCalendarService.cjs +2 -2
  70. package/lib/cjs/calendar/google-calendar/GoogleCalendarService.cjs.map +1 -0
  71. package/lib/cjs/calendar/google-calendar/index.cjs +2 -2
  72. package/lib/cjs/calendar/google-calendar/index.cjs.map +1 -0
  73. package/lib/cjs/calendar/index.cjs +2 -2
  74. package/lib/cjs/calendar/index.cjs.map +1 -0
  75. package/lib/cjs/calendar/types.cjs +2 -2
  76. package/lib/cjs/calendar/types.cjs.map +1 -0
  77. package/lib/cjs/calendar/validators/cron.cjs +2 -2
  78. package/lib/cjs/calendar/validators/cron.cjs.map +1 -0
  79. package/lib/cjs/calendar/writers/CalendarFsWriter.cjs +2 -2
  80. package/lib/cjs/calendar/writers/CalendarFsWriter.cjs.map +1 -0
  81. package/lib/cjs/calendar/writers/CalenderDownloader.cjs +2 -2
  82. package/lib/cjs/calendar/writers/CalenderDownloader.cjs.map +1 -0
  83. package/lib/cjs/calendar/writers/ICalendarWriter.cjs +2 -2
  84. package/lib/cjs/calendar/writers/ICalendarWriter.cjs.map +1 -0
  85. package/lib/cjs/comms/discord/DiscordService.cjs +2 -2
  86. package/lib/cjs/comms/discord/DiscordService.cjs.map +1 -0
  87. package/lib/cjs/comms/discord/index.cjs +2 -2
  88. package/lib/cjs/comms/discord/index.cjs.map +1 -0
  89. package/lib/cjs/comms/email/EmailService.cjs +2 -2
  90. package/lib/cjs/comms/email/EmailService.cjs.map +1 -0
  91. package/lib/cjs/comms/email/index.cjs +2 -2
  92. package/lib/cjs/comms/email/index.cjs.map +1 -0
  93. package/lib/cjs/comms/email/mime.cjs +2 -2
  94. package/lib/cjs/comms/email/mime.cjs.map +1 -0
  95. package/lib/cjs/comms/email/smtp.cjs +2 -2
  96. package/lib/cjs/comms/email/smtp.cjs.map +1 -0
  97. package/lib/cjs/comms/environment.cjs +2 -2
  98. package/lib/cjs/comms/environment.cjs.map +1 -0
  99. package/lib/cjs/comms/gmail/GmailService.cjs +2 -2
  100. package/lib/cjs/comms/gmail/GmailService.cjs.map +1 -0
  101. package/lib/cjs/comms/gmail/index.cjs +2 -2
  102. package/lib/cjs/comms/gmail/index.cjs.map +1 -0
  103. package/lib/cjs/comms/index.cjs +2 -2
  104. package/lib/cjs/comms/index.cjs.map +1 -0
  105. package/lib/cjs/comms/outlook/MicrosoftOutlookService.cjs +2 -2
  106. package/lib/cjs/comms/outlook/MicrosoftOutlookService.cjs.map +1 -0
  107. package/lib/cjs/comms/outlook/index.cjs +2 -2
  108. package/lib/cjs/comms/outlook/index.cjs.map +1 -0
  109. package/lib/cjs/comms/slack/SlackService.cjs +2 -2
  110. package/lib/cjs/comms/slack/SlackService.cjs.map +1 -0
  111. package/lib/cjs/comms/slack/index.cjs +2 -2
  112. package/lib/cjs/comms/slack/index.cjs.map +1 -0
  113. package/lib/cjs/comms/teams/TeamsService.cjs +2 -2
  114. package/lib/cjs/comms/teams/TeamsService.cjs.map +1 -0
  115. package/lib/cjs/comms/teams/index.cjs +2 -2
  116. package/lib/cjs/comms/teams/index.cjs.map +1 -0
  117. package/lib/cjs/comms/telegram/TelegramService.cjs +2 -2
  118. package/lib/cjs/comms/telegram/TelegramService.cjs.map +1 -0
  119. package/lib/cjs/comms/telegram/index.cjs +2 -2
  120. package/lib/cjs/comms/telegram/index.cjs.map +1 -0
  121. package/lib/cjs/comms/whatsapp/WhatsAppService.cjs +2 -2
  122. package/lib/cjs/comms/whatsapp/WhatsAppService.cjs.map +1 -0
  123. package/lib/cjs/comms/whatsapp/index.cjs +2 -2
  124. package/lib/cjs/comms/whatsapp/index.cjs.map +1 -0
  125. package/lib/cjs/devops/environment.cjs +2 -2
  126. package/lib/cjs/devops/environment.cjs.map +1 -0
  127. package/lib/cjs/devops/github/GithubService.cjs +2 -2
  128. package/lib/cjs/devops/github/GithubService.cjs.map +1 -0
  129. package/lib/cjs/devops/github/index.cjs +2 -2
  130. package/lib/cjs/devops/github/index.cjs.map +1 -0
  131. package/lib/cjs/devops/gitlab/GitlabService.cjs +2 -2
  132. package/lib/cjs/devops/gitlab/GitlabService.cjs.map +1 -0
  133. package/lib/cjs/devops/gitlab/index.cjs +2 -2
  134. package/lib/cjs/devops/gitlab/index.cjs.map +1 -0
  135. package/lib/cjs/devops/index.cjs +2 -2
  136. package/lib/cjs/devops/index.cjs.map +1 -0
  137. package/lib/cjs/docker/DockerComposeService.cjs +2 -2
  138. package/lib/cjs/docker/DockerComposeService.cjs.map +1 -0
  139. package/lib/cjs/docker/index.cjs +2 -2
  140. package/lib/cjs/docker/index.cjs.map +1 -0
  141. package/lib/cjs/feature-flags/EngineCapabilityFeatureFlag.service.cjs +2 -2
  142. package/lib/cjs/feature-flags/EngineCapabilityFeatureFlag.service.cjs.map +1 -0
  143. package/lib/cjs/feature-flags/constants.cjs +2 -2
  144. package/lib/cjs/feature-flags/constants.cjs.map +1 -0
  145. package/lib/cjs/feature-flags/decorators.cjs +2 -2
  146. package/lib/cjs/feature-flags/decorators.cjs.map +1 -0
  147. package/lib/cjs/feature-flags/environment.cjs +2 -2
  148. package/lib/cjs/feature-flags/environment.cjs.map +1 -0
  149. package/lib/cjs/feature-flags/index.cjs +2 -2
  150. package/lib/cjs/feature-flags/index.cjs.map +1 -0
  151. package/lib/cjs/feature-flags/models/FeatureFlag.model.cjs +2 -2
  152. package/lib/cjs/feature-flags/models/FeatureFlag.model.cjs.map +1 -0
  153. package/lib/cjs/feature-flags/models/FeatureFlagAccess.model.cjs +2 -2
  154. package/lib/cjs/feature-flags/models/FeatureFlagAccess.model.cjs.map +1 -0
  155. package/lib/cjs/feature-flags/readers/FeatureFlagReader.cjs +2 -2
  156. package/lib/cjs/feature-flags/readers/FeatureFlagReader.cjs.map +1 -0
  157. package/lib/cjs/feature-flags/readers/index.cjs +2 -2
  158. package/lib/cjs/feature-flags/readers/index.cjs.map +1 -0
  159. package/lib/cjs/feature-flags/services/FeatureFlag.service.cjs +3 -2
  160. package/lib/cjs/feature-flags/services/FeatureFlag.service.cjs.map +1 -0
  161. package/lib/cjs/feature-flags/types.cjs +2 -2
  162. package/lib/cjs/feature-flags/types.cjs.map +1 -0
  163. package/lib/cjs/feature-flags/utils.cjs +2 -2
  164. package/lib/cjs/feature-flags/utils.cjs.map +1 -0
  165. package/lib/cjs/index.cjs +5 -5
  166. package/lib/cjs/index.cjs.map +1 -0
  167. package/lib/cjs/io/airtable/AirtableService.cjs +2 -2
  168. package/lib/cjs/io/airtable/AirtableService.cjs.map +1 -0
  169. package/lib/cjs/io/airtable/index.cjs +2 -2
  170. package/lib/cjs/io/airtable/index.cjs.map +1 -0
  171. package/lib/cjs/io/confluence/ConfluenceService.cjs +2 -2
  172. package/lib/cjs/io/confluence/ConfluenceService.cjs.map +1 -0
  173. package/lib/cjs/io/confluence/index.cjs +2 -2
  174. package/lib/cjs/io/confluence/index.cjs.map +1 -0
  175. package/lib/cjs/io/environment.cjs +2 -2
  176. package/lib/cjs/io/environment.cjs.map +1 -0
  177. package/lib/cjs/io/google-docs/GoogleDocsService.cjs +2 -2
  178. package/lib/cjs/io/google-docs/GoogleDocsService.cjs.map +1 -0
  179. package/lib/cjs/io/google-docs/index.cjs +2 -2
  180. package/lib/cjs/io/google-docs/index.cjs.map +1 -0
  181. package/lib/cjs/io/google-sheets/GoogleSheetsService.cjs +2 -2
  182. package/lib/cjs/io/google-sheets/GoogleSheetsService.cjs.map +1 -0
  183. package/lib/cjs/io/google-sheets/index.cjs +2 -2
  184. package/lib/cjs/io/google-sheets/index.cjs.map +1 -0
  185. package/lib/cjs/io/graphql/GraphqlService.cjs +2 -2
  186. package/lib/cjs/io/graphql/GraphqlService.cjs.map +1 -0
  187. package/lib/cjs/io/graphql/index.cjs +2 -2
  188. package/lib/cjs/io/graphql/index.cjs.map +1 -0
  189. package/lib/cjs/io/index.cjs +2 -2
  190. package/lib/cjs/io/index.cjs.map +1 -0
  191. package/lib/cjs/io/jira/JiraService.cjs +2 -2
  192. package/lib/cjs/io/jira/JiraService.cjs.map +1 -0
  193. package/lib/cjs/io/jira/index.cjs +2 -2
  194. package/lib/cjs/io/jira/index.cjs.map +1 -0
  195. package/lib/cjs/io/microsoft-excel/MicrosoftExcelService.cjs +2 -2
  196. package/lib/cjs/io/microsoft-excel/MicrosoftExcelService.cjs.map +1 -0
  197. package/lib/cjs/io/microsoft-excel/index.cjs +2 -2
  198. package/lib/cjs/io/microsoft-excel/index.cjs.map +1 -0
  199. package/lib/cjs/io/microsoft-sharepoint/MicrosoftSharePointService.cjs +2 -2
  200. package/lib/cjs/io/microsoft-sharepoint/MicrosoftSharePointService.cjs.map +1 -0
  201. package/lib/cjs/io/microsoft-sharepoint/index.cjs +2 -2
  202. package/lib/cjs/io/microsoft-sharepoint/index.cjs.map +1 -0
  203. package/lib/cjs/io/spreadsheet/SpreadsheetService.cjs +2 -2
  204. package/lib/cjs/io/spreadsheet/SpreadsheetService.cjs.map +1 -0
  205. package/lib/cjs/io/spreadsheet/index.cjs +2 -2
  206. package/lib/cjs/io/spreadsheet/index.cjs.map +1 -0
  207. package/lib/cjs/keycloak/broker.cjs +2 -2
  208. package/lib/cjs/keycloak/broker.cjs.map +1 -0
  209. package/lib/cjs/keycloak/index.cjs +2 -2
  210. package/lib/cjs/keycloak/index.cjs.map +1 -0
  211. package/lib/cjs/keycloak/services/KeycloakAuthService.cjs +2 -2
  212. package/lib/cjs/keycloak/services/KeycloakAuthService.cjs.map +1 -0
  213. package/lib/cjs/keycloak/services/KeycloakClientService.cjs +2 -2
  214. package/lib/cjs/keycloak/services/KeycloakClientService.cjs.map +1 -0
  215. package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs +2 -2
  216. package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs.map +1 -0
  217. package/lib/cjs/keycloak/services/KeycloakRealmService.cjs +2 -2
  218. package/lib/cjs/keycloak/services/KeycloakRealmService.cjs.map +1 -0
  219. package/lib/cjs/keycloak/services/KeycloakRoleService.cjs +2 -2
  220. package/lib/cjs/keycloak/services/KeycloakRoleService.cjs.map +1 -0
  221. package/lib/cjs/keycloak/services/KeycloakService.cjs +2 -2
  222. package/lib/cjs/keycloak/services/KeycloakService.cjs.map +1 -0
  223. package/lib/cjs/keycloak/services/KeycloakUserService.cjs +2 -2
  224. package/lib/cjs/keycloak/services/KeycloakUserService.cjs.map +1 -0
  225. package/lib/cjs/keycloak/services/index.cjs +2 -2
  226. package/lib/cjs/keycloak/services/index.cjs.map +1 -0
  227. package/lib/cjs/keycloak/services/runtime.cjs +2 -2
  228. package/lib/cjs/keycloak/services/runtime.cjs.map +1 -0
  229. package/lib/cjs/keycloak/types.cjs +2 -2
  230. package/lib/cjs/keycloak/types.cjs.map +1 -0
  231. package/lib/cjs/kibana/builders/KibanaIndexBuilder.cjs +2 -2
  232. package/lib/cjs/kibana/builders/KibanaIndexBuilder.cjs.map +1 -0
  233. package/lib/cjs/kibana/builders/KibanaIndexBuilderCollection.cjs +2 -2
  234. package/lib/cjs/kibana/builders/KibanaIndexBuilderCollection.cjs.map +1 -0
  235. package/lib/cjs/kibana/builders/index.cjs +2 -2
  236. package/lib/cjs/kibana/builders/index.cjs.map +1 -0
  237. package/lib/cjs/kibana/helpers.cjs +2 -2
  238. package/lib/cjs/kibana/helpers.cjs.map +1 -0
  239. package/lib/cjs/kibana/index.cjs +2 -2
  240. package/lib/cjs/kibana/index.cjs.map +1 -0
  241. package/lib/cjs/kibana/services/KibanaAuthService.cjs +2 -2
  242. package/lib/cjs/kibana/services/KibanaAuthService.cjs.map +1 -0
  243. package/lib/cjs/kibana/services/KibanaDashboardService.cjs +2 -2
  244. package/lib/cjs/kibana/services/KibanaDashboardService.cjs.map +1 -0
  245. package/lib/cjs/kibana/services/KibanaDataViewService.cjs +2 -2
  246. package/lib/cjs/kibana/services/KibanaDataViewService.cjs.map +1 -0
  247. package/lib/cjs/kibana/services/KibanaRoleService.cjs +2 -2
  248. package/lib/cjs/kibana/services/KibanaRoleService.cjs.map +1 -0
  249. package/lib/cjs/kibana/services/KibanaService.cjs +2 -2
  250. package/lib/cjs/kibana/services/KibanaService.cjs.map +1 -0
  251. package/lib/cjs/kibana/services/KibanaSpaceService.cjs +2 -2
  252. package/lib/cjs/kibana/services/KibanaSpaceService.cjs.map +1 -0
  253. package/lib/cjs/kibana/services/KibanaUserService.cjs +2 -2
  254. package/lib/cjs/kibana/services/KibanaUserService.cjs.map +1 -0
  255. package/lib/cjs/kibana/services/index.cjs +2 -2
  256. package/lib/cjs/kibana/services/index.cjs.map +1 -0
  257. package/lib/cjs/kibana/services/runtime.cjs +2 -2
  258. package/lib/cjs/kibana/services/runtime.cjs.map +1 -0
  259. package/lib/cjs/kibana/types.cjs +2 -2
  260. package/lib/cjs/kibana/types.cjs.map +1 -0
  261. package/lib/cjs/loader/ObjectLoader.cjs +2 -2
  262. package/lib/cjs/loader/ObjectLoader.cjs.map +1 -0
  263. package/lib/cjs/loader/assets.cjs +2 -2
  264. package/lib/cjs/loader/assets.cjs.map +1 -0
  265. package/lib/cjs/loader/config.cjs +2 -2
  266. package/lib/cjs/loader/config.cjs.map +1 -0
  267. package/lib/cjs/loader/families.cjs +2 -2
  268. package/lib/cjs/loader/families.cjs.map +1 -0
  269. package/lib/cjs/loader/index.cjs +2 -2
  270. package/lib/cjs/loader/index.cjs.map +1 -0
  271. package/lib/cjs/loader/nest.cjs +2 -2
  272. package/lib/cjs/loader/nest.cjs.map +1 -0
  273. package/lib/cjs/loader/types.cjs +2 -2
  274. package/lib/cjs/loader/types.cjs.map +1 -0
  275. package/lib/cjs/namespaces/index.cjs +2 -2
  276. package/lib/cjs/namespaces/index.cjs.map +1 -0
  277. package/lib/cjs/namespaces/models/authorization-model.cjs +2 -2
  278. package/lib/cjs/namespaces/models/authorization-model.cjs.map +1 -0
  279. package/lib/cjs/namespaces/models/credential.model.cjs +2 -2
  280. package/lib/cjs/namespaces/models/credential.model.cjs.map +1 -0
  281. package/lib/cjs/namespaces/models/effective-permission.model.cjs +2 -2
  282. package/lib/cjs/namespaces/models/effective-permission.model.cjs.map +1 -0
  283. package/lib/cjs/namespaces/models/group-membership.model.cjs +2 -2
  284. package/lib/cjs/namespaces/models/group-membership.model.cjs.map +1 -0
  285. package/lib/cjs/namespaces/models/group.model.cjs +2 -2
  286. package/lib/cjs/namespaces/models/group.model.cjs.map +1 -0
  287. package/lib/cjs/namespaces/models/index.cjs +2 -2
  288. package/lib/cjs/namespaces/models/index.cjs.map +1 -0
  289. package/lib/cjs/namespaces/models/inheritance-block.model.cjs +2 -2
  290. package/lib/cjs/namespaces/models/inheritance-block.model.cjs.map +1 -0
  291. package/lib/cjs/namespaces/models/org-unit-closure.model.cjs +2 -2
  292. package/lib/cjs/namespaces/models/org-unit-closure.model.cjs.map +1 -0
  293. package/lib/cjs/namespaces/models/org-unit-membership.model.cjs +2 -2
  294. package/lib/cjs/namespaces/models/org-unit-membership.model.cjs.map +1 -0
  295. package/lib/cjs/namespaces/models/org-unit-profile.model.cjs +2 -2
  296. package/lib/cjs/namespaces/models/org-unit-profile.model.cjs.map +1 -0
  297. package/lib/cjs/namespaces/models/org-unit.model.cjs +2 -2
  298. package/lib/cjs/namespaces/models/org-unit.model.cjs.map +1 -0
  299. package/lib/cjs/namespaces/models/permission.model.cjs +2 -2
  300. package/lib/cjs/namespaces/models/permission.model.cjs.map +1 -0
  301. package/lib/cjs/namespaces/models/principal.model.cjs +2 -2
  302. package/lib/cjs/namespaces/models/principal.model.cjs.map +1 -0
  303. package/lib/cjs/namespaces/models/protected-resource.model.cjs +2 -2
  304. package/lib/cjs/namespaces/models/protected-resource.model.cjs.map +1 -0
  305. package/lib/cjs/namespaces/models/resource-grant.model.cjs +2 -2
  306. package/lib/cjs/namespaces/models/resource-grant.model.cjs.map +1 -0
  307. package/lib/cjs/namespaces/models/role-assignment.model.cjs +2 -2
  308. package/lib/cjs/namespaces/models/role-assignment.model.cjs.map +1 -0
  309. package/lib/cjs/namespaces/models/role-permission.model.cjs +2 -2
  310. package/lib/cjs/namespaces/models/role-permission.model.cjs.map +1 -0
  311. package/lib/cjs/namespaces/models/role.model.cjs +2 -2
  312. package/lib/cjs/namespaces/models/role.model.cjs.map +1 -0
  313. package/lib/cjs/namespaces/models/storage-binding.model.cjs +2 -2
  314. package/lib/cjs/namespaces/models/storage-binding.model.cjs.map +1 -0
  315. package/lib/cjs/namespaces/models/tenant-membership.model.cjs +2 -2
  316. package/lib/cjs/namespaces/models/tenant-membership.model.cjs.map +1 -0
  317. package/lib/cjs/namespaces/models/tenant-profile.model.cjs +2 -2
  318. package/lib/cjs/namespaces/models/tenant-profile.model.cjs.map +1 -0
  319. package/lib/cjs/namespaces/models/tenant.model.cjs +2 -2
  320. package/lib/cjs/namespaces/models/tenant.model.cjs.map +1 -0
  321. package/lib/cjs/namespaces/models/user.model.cjs +2 -2
  322. package/lib/cjs/namespaces/models/user.model.cjs.map +1 -0
  323. package/lib/cjs/namespaces/org-based-authorization-system.cjs +2 -2
  324. package/lib/cjs/namespaces/org-based-authorization-system.cjs.map +1 -0
  325. package/lib/cjs/namespaces/org-based-authorization-system.models.cjs +2 -2
  326. package/lib/cjs/namespaces/org-based-authorization-system.models.cjs.map +1 -0
  327. package/lib/cjs/namespaces/org-based-authorization-system.services.cjs +2 -2
  328. package/lib/cjs/namespaces/org-based-authorization-system.services.cjs.map +1 -0
  329. package/lib/cjs/namespaces/rls/index.cjs +2 -2
  330. package/lib/cjs/namespaces/rls/index.cjs.map +1 -0
  331. package/lib/cjs/namespaces/rls/principal-resolver.cjs +2 -2
  332. package/lib/cjs/namespaces/rls/principal-resolver.cjs.map +1 -0
  333. package/lib/cjs/namespaces/rls/rls-bootstrap.service.cjs +2 -2
  334. package/lib/cjs/namespaces/rls/rls-bootstrap.service.cjs.map +1 -0
  335. package/lib/cjs/namespaces/rls/rls.constants.cjs +2 -2
  336. package/lib/cjs/namespaces/rls/rls.constants.cjs.map +1 -0
  337. package/lib/cjs/namespaces/rls/rls.template.cjs +2 -2
  338. package/lib/cjs/namespaces/rls/rls.template.cjs.map +1 -0
  339. package/lib/cjs/namespaces/rls/rls.types.cjs +2 -2
  340. package/lib/cjs/namespaces/rls/rls.types.cjs.map +1 -0
  341. package/lib/cjs/namespaces/rls/session-binding.cjs +2 -2
  342. package/lib/cjs/namespaces/rls/session-binding.cjs.map +1 -0
  343. package/lib/cjs/namespaces/services/authz.service.cjs +2 -2
  344. package/lib/cjs/namespaces/services/authz.service.cjs.map +1 -0
  345. package/lib/cjs/namespaces/services/bootstrap.service.cjs +2 -2
  346. package/lib/cjs/namespaces/services/bootstrap.service.cjs.map +1 -0
  347. package/lib/cjs/namespaces/services/credential.service.cjs +2 -2
  348. package/lib/cjs/namespaces/services/credential.service.cjs.map +1 -0
  349. package/lib/cjs/namespaces/services/effective-permission.service.cjs +2 -2
  350. package/lib/cjs/namespaces/services/effective-permission.service.cjs.map +1 -0
  351. package/lib/cjs/namespaces/services/group-membership.service.cjs +2 -2
  352. package/lib/cjs/namespaces/services/group-membership.service.cjs.map +1 -0
  353. package/lib/cjs/namespaces/services/group.service.cjs +2 -2
  354. package/lib/cjs/namespaces/services/group.service.cjs.map +1 -0
  355. package/lib/cjs/namespaces/services/index.cjs +2 -2
  356. package/lib/cjs/namespaces/services/index.cjs.map +1 -0
  357. package/lib/cjs/namespaces/services/inheritance-block.service.cjs +2 -2
  358. package/lib/cjs/namespaces/services/inheritance-block.service.cjs.map +1 -0
  359. package/lib/cjs/namespaces/services/org-unit-closure.service.cjs +2 -2
  360. package/lib/cjs/namespaces/services/org-unit-closure.service.cjs.map +1 -0
  361. package/lib/cjs/namespaces/services/org-unit-membership.service.cjs +2 -2
  362. package/lib/cjs/namespaces/services/org-unit-membership.service.cjs.map +1 -0
  363. package/lib/cjs/namespaces/services/org-unit-profile.service.cjs +2 -2
  364. package/lib/cjs/namespaces/services/org-unit-profile.service.cjs.map +1 -0
  365. package/lib/cjs/namespaces/services/org-unit.service.cjs +2 -2
  366. package/lib/cjs/namespaces/services/org-unit.service.cjs.map +1 -0
  367. package/lib/cjs/namespaces/services/permission.service.cjs +2 -2
  368. package/lib/cjs/namespaces/services/permission.service.cjs.map +1 -0
  369. package/lib/cjs/namespaces/services/principal.service.cjs +2 -2
  370. package/lib/cjs/namespaces/services/principal.service.cjs.map +1 -0
  371. package/lib/cjs/namespaces/services/protected-resource.service.cjs +2 -2
  372. package/lib/cjs/namespaces/services/protected-resource.service.cjs.map +1 -0
  373. package/lib/cjs/namespaces/services/resource-grant.service.cjs +2 -2
  374. package/lib/cjs/namespaces/services/resource-grant.service.cjs.map +1 -0
  375. package/lib/cjs/namespaces/services/resource-lifecycle.service.cjs +2 -2
  376. package/lib/cjs/namespaces/services/resource-lifecycle.service.cjs.map +1 -0
  377. package/lib/cjs/namespaces/services/role-assignment.service.cjs +2 -2
  378. package/lib/cjs/namespaces/services/role-assignment.service.cjs.map +1 -0
  379. package/lib/cjs/namespaces/services/role-permission.service.cjs +2 -2
  380. package/lib/cjs/namespaces/services/role-permission.service.cjs.map +1 -0
  381. package/lib/cjs/namespaces/services/role.service.cjs +2 -2
  382. package/lib/cjs/namespaces/services/role.service.cjs.map +1 -0
  383. package/lib/cjs/namespaces/services/storage-binding.service.cjs +2 -2
  384. package/lib/cjs/namespaces/services/storage-binding.service.cjs.map +1 -0
  385. package/lib/cjs/namespaces/services/system-management.service.cjs +2 -2
  386. package/lib/cjs/namespaces/services/system-management.service.cjs.map +1 -0
  387. package/lib/cjs/namespaces/services/tenant-membership.service.cjs +2 -2
  388. package/lib/cjs/namespaces/services/tenant-membership.service.cjs.map +1 -0
  389. package/lib/cjs/namespaces/services/tenant-profile.service.cjs +2 -2
  390. package/lib/cjs/namespaces/services/tenant-profile.service.cjs.map +1 -0
  391. package/lib/cjs/namespaces/services/tenant.service.cjs +2 -2
  392. package/lib/cjs/namespaces/services/tenant.service.cjs.map +1 -0
  393. package/lib/cjs/namespaces/services/user.service.cjs +2 -2
  394. package/lib/cjs/namespaces/services/user.service.cjs.map +1 -0
  395. package/lib/cjs/namespaces/types.cjs +2 -2
  396. package/lib/cjs/namespaces/types.cjs.map +1 -0
  397. package/lib/cjs/namespaces/utils.cjs +2 -2
  398. package/lib/cjs/namespaces/utils.cjs.map +1 -0
  399. package/lib/cjs/nest/decorators.cjs +2 -2
  400. package/lib/cjs/nest/decorators.cjs.map +1 -0
  401. package/lib/cjs/nest/index.cjs +2 -2
  402. package/lib/cjs/nest/index.cjs.map +1 -0
  403. package/lib/cjs/nest/keycloakAuthHandler.cjs +2 -2
  404. package/lib/cjs/nest/keycloakAuthHandler.cjs.map +1 -0
  405. package/lib/cjs/nest/keycloakModule.cjs +2 -2
  406. package/lib/cjs/nest/keycloakModule.cjs.map +1 -0
  407. package/lib/cjs/nest/logging.cjs +2 -2
  408. package/lib/cjs/nest/logging.cjs.map +1 -0
  409. package/lib/cjs/nest/types.cjs +2 -2
  410. package/lib/cjs/nest/types.cjs.map +1 -0
  411. package/lib/cjs/nest/utils.cjs +2 -2
  412. package/lib/cjs/nest/utils.cjs.map +1 -0
  413. package/lib/cjs/plugins/contract.cjs +2 -2
  414. package/lib/cjs/plugins/contract.cjs.map +1 -0
  415. package/lib/cjs/plugins/index.cjs +2 -2
  416. package/lib/cjs/plugins/index.cjs.map +1 -0
  417. package/lib/cjs/plugins/kibana/host.cjs +2 -2
  418. package/lib/cjs/plugins/kibana/host.cjs.map +1 -0
  419. package/lib/cjs/plugins/kibana/index.cjs +2 -2
  420. package/lib/cjs/plugins/kibana/index.cjs.map +1 -0
  421. package/lib/cjs/plugins/kibana/installer.cjs +2 -2
  422. package/lib/cjs/plugins/kibana/installer.cjs.map +1 -0
  423. package/lib/cjs/plugins/kibana/manifest.cjs +2 -2
  424. package/lib/cjs/plugins/kibana/manifest.cjs.map +1 -0
  425. package/lib/cjs/plugins/kibana/templates.cjs +2 -2
  426. package/lib/cjs/plugins/kibana/templates.cjs.map +1 -0
  427. package/lib/cjs/plugins/kibana/types.cjs +2 -2
  428. package/lib/cjs/plugins/kibana/types.cjs.map +1 -0
  429. package/lib/cjs/plugins/superset/host.cjs +2 -2
  430. package/lib/cjs/plugins/superset/host.cjs.map +1 -0
  431. package/lib/cjs/plugins/superset/index.cjs +2 -2
  432. package/lib/cjs/plugins/superset/index.cjs.map +1 -0
  433. package/lib/cjs/plugins/superset/installer.cjs +2 -2
  434. package/lib/cjs/plugins/superset/installer.cjs.map +1 -0
  435. package/lib/cjs/plugins/superset/manifest.cjs +2 -2
  436. package/lib/cjs/plugins/superset/manifest.cjs.map +1 -0
  437. package/lib/cjs/plugins/superset/templates.cjs +2 -2
  438. package/lib/cjs/plugins/superset/templates.cjs.map +1 -0
  439. package/lib/cjs/plugins/superset/types.cjs +2 -2
  440. package/lib/cjs/plugins/superset/types.cjs.map +1 -0
  441. package/lib/cjs/redis/RedisContextLock.cjs +2 -2
  442. package/lib/cjs/redis/RedisContextLock.cjs.map +1 -0
  443. package/lib/cjs/redis/RedisDispatch.cjs +2 -2
  444. package/lib/cjs/redis/RedisDispatch.cjs.map +1 -0
  445. package/lib/cjs/redis/RedisPaginator.cjs +2 -2
  446. package/lib/cjs/redis/RedisPaginator.cjs.map +1 -0
  447. package/lib/cjs/redis/RedisStatement.cjs +2 -2
  448. package/lib/cjs/redis/RedisStatement.cjs.map +1 -0
  449. package/lib/cjs/redis/adapter.cjs +2 -2
  450. package/lib/cjs/redis/adapter.cjs.map +1 -0
  451. package/lib/cjs/redis/constants.cjs +2 -2
  452. package/lib/cjs/redis/constants.cjs.map +1 -0
  453. package/lib/cjs/redis/handlers.cjs +2 -2
  454. package/lib/cjs/redis/handlers.cjs.map +1 -0
  455. package/lib/cjs/redis/index.cjs +2 -2
  456. package/lib/cjs/redis/index.cjs.map +1 -0
  457. package/lib/cjs/redis/serialization.cjs +2 -2
  458. package/lib/cjs/redis/serialization.cjs.map +1 -0
  459. package/lib/cjs/redis/types.cjs +2 -2
  460. package/lib/cjs/redis/types.cjs.map +1 -0
  461. package/lib/cjs/secrets/InfraCredentialBootstrap.cjs +2 -2
  462. package/lib/cjs/secrets/InfraCredentialBootstrap.cjs.map +1 -0
  463. package/lib/cjs/secrets/aws/AwsSecretEnvironment.cjs +2 -2
  464. package/lib/cjs/secrets/aws/AwsSecretEnvironment.cjs.map +1 -0
  465. package/lib/cjs/secrets/aws/AwsSecretService.cjs +2 -2
  466. package/lib/cjs/secrets/aws/AwsSecretService.cjs.map +1 -0
  467. package/lib/cjs/secrets/aws/AwsSecretServiceConfig.cjs +2 -2
  468. package/lib/cjs/secrets/aws/AwsSecretServiceConfig.cjs.map +1 -0
  469. package/lib/cjs/secrets/aws/index.cjs +2 -2
  470. package/lib/cjs/secrets/aws/index.cjs.map +1 -0
  471. package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs +2 -2
  472. package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs.map +1 -0
  473. package/lib/cjs/secrets/azure/AzureKeyVaultSecretServiceConfig.cjs +2 -2
  474. package/lib/cjs/secrets/azure/AzureKeyVaultSecretServiceConfig.cjs.map +1 -0
  475. package/lib/cjs/secrets/azure/AzureSecretEnvironment.cjs +2 -2
  476. package/lib/cjs/secrets/azure/AzureSecretEnvironment.cjs.map +1 -0
  477. package/lib/cjs/secrets/azure/index.cjs +2 -2
  478. package/lib/cjs/secrets/azure/index.cjs.map +1 -0
  479. package/lib/cjs/secrets/core/ClientBasedSecretService.cjs +2 -2
  480. package/lib/cjs/secrets/core/ClientBasedSecretService.cjs.map +1 -0
  481. package/lib/cjs/secrets/core/SecretEnvironment.cjs +2 -2
  482. package/lib/cjs/secrets/core/SecretEnvironment.cjs.map +1 -0
  483. package/lib/cjs/secrets/core/SecretErrors.cjs +2 -2
  484. package/lib/cjs/secrets/core/SecretErrors.cjs.map +1 -0
  485. package/lib/cjs/secrets/core/SecretName.cjs +2 -2
  486. package/lib/cjs/secrets/core/SecretName.cjs.map +1 -0
  487. package/lib/cjs/secrets/core/SecretReference.cjs +2 -2
  488. package/lib/cjs/secrets/core/SecretReference.cjs.map +1 -0
  489. package/lib/cjs/secrets/core/SecretSerialization.cjs +2 -2
  490. package/lib/cjs/secrets/core/SecretSerialization.cjs.map +1 -0
  491. package/lib/cjs/secrets/core/SecretService.cjs +2 -2
  492. package/lib/cjs/secrets/core/SecretService.cjs.map +1 -0
  493. package/lib/cjs/secrets/core/SecretTypes.cjs +2 -2
  494. package/lib/cjs/secrets/core/SecretTypes.cjs.map +1 -0
  495. package/lib/cjs/secrets/core/index.cjs +2 -2
  496. package/lib/cjs/secrets/core/index.cjs.map +1 -0
  497. package/lib/cjs/secrets/fs/FsSecretEnvironment.cjs +2 -2
  498. package/lib/cjs/secrets/fs/FsSecretEnvironment.cjs.map +1 -0
  499. package/lib/cjs/secrets/fs/FsSecretService.cjs +2 -2
  500. package/lib/cjs/secrets/fs/FsSecretService.cjs.map +1 -0
  501. package/lib/cjs/secrets/fs/FsSecretServiceConfig.cjs +2 -2
  502. package/lib/cjs/secrets/fs/FsSecretServiceConfig.cjs.map +1 -0
  503. package/lib/cjs/secrets/fs/index.cjs +2 -2
  504. package/lib/cjs/secrets/fs/index.cjs.map +1 -0
  505. package/lib/cjs/secrets/gcp/GcpSecretEnvironment.cjs +2 -2
  506. package/lib/cjs/secrets/gcp/GcpSecretEnvironment.cjs.map +1 -0
  507. package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs +2 -2
  508. package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs.map +1 -0
  509. package/lib/cjs/secrets/gcp/GcpSecretManagerServiceConfig.cjs +2 -2
  510. package/lib/cjs/secrets/gcp/GcpSecretManagerServiceConfig.cjs.map +1 -0
  511. package/lib/cjs/secrets/gcp/index.cjs +2 -2
  512. package/lib/cjs/secrets/gcp/index.cjs.map +1 -0
  513. package/lib/cjs/secrets/index.cjs +2 -2
  514. package/lib/cjs/secrets/index.cjs.map +1 -0
  515. package/lib/cjs/secrets/kubernetes/KubernetesSecretEnvironment.cjs +2 -2
  516. package/lib/cjs/secrets/kubernetes/KubernetesSecretEnvironment.cjs.map +1 -0
  517. package/lib/cjs/secrets/kubernetes/KubernetesSecretService.cjs +2 -2
  518. package/lib/cjs/secrets/kubernetes/KubernetesSecretService.cjs.map +1 -0
  519. package/lib/cjs/secrets/kubernetes/KubernetesSecretServiceConfig.cjs +2 -2
  520. package/lib/cjs/secrets/kubernetes/KubernetesSecretServiceConfig.cjs.map +1 -0
  521. package/lib/cjs/secrets/kubernetes/index.cjs +2 -2
  522. package/lib/cjs/secrets/kubernetes/index.cjs.map +1 -0
  523. package/lib/cjs/secrets/model/ModelSecretCrypto.cjs +2 -2
  524. package/lib/cjs/secrets/model/ModelSecretCrypto.cjs.map +1 -0
  525. package/lib/cjs/secrets/model/ModelSecretEnvironment.cjs +2 -2
  526. package/lib/cjs/secrets/model/ModelSecretEnvironment.cjs.map +1 -0
  527. package/lib/cjs/secrets/model/ModelSecretService.cjs +2 -2
  528. package/lib/cjs/secrets/model/ModelSecretService.cjs.map +1 -0
  529. package/lib/cjs/secrets/model/ModelSecretServiceConfig.cjs +2 -2
  530. package/lib/cjs/secrets/model/ModelSecretServiceConfig.cjs.map +1 -0
  531. package/lib/cjs/secrets/model/Secret.cjs +2 -2
  532. package/lib/cjs/secrets/model/Secret.cjs.map +1 -0
  533. package/lib/cjs/secrets/model/index.cjs +2 -2
  534. package/lib/cjs/secrets/model/index.cjs.map +1 -0
  535. package/lib/cjs/secrets/onepassword/OnePasswordSecretEnvironment.cjs +2 -2
  536. package/lib/cjs/secrets/onepassword/OnePasswordSecretEnvironment.cjs.map +1 -0
  537. package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs +2 -2
  538. package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs.map +1 -0
  539. package/lib/cjs/secrets/onepassword/OnePasswordSecretServiceConfig.cjs +2 -2
  540. package/lib/cjs/secrets/onepassword/OnePasswordSecretServiceConfig.cjs.map +1 -0
  541. package/lib/cjs/secrets/onepassword/index.cjs +2 -2
  542. package/lib/cjs/secrets/onepassword/index.cjs.map +1 -0
  543. package/lib/cjs/secrets/vault/VaultSecretEnvironment.cjs +2 -2
  544. package/lib/cjs/secrets/vault/VaultSecretEnvironment.cjs.map +1 -0
  545. package/lib/cjs/secrets/vault/VaultSecretService.cjs +2 -2
  546. package/lib/cjs/secrets/vault/VaultSecretService.cjs.map +1 -0
  547. package/lib/cjs/secrets/vault/VaultSecretServiceConfig.cjs +2 -2
  548. package/lib/cjs/secrets/vault/VaultSecretServiceConfig.cjs.map +1 -0
  549. package/lib/cjs/secrets/vault/index.cjs +2 -2
  550. package/lib/cjs/secrets/vault/index.cjs.map +1 -0
  551. package/lib/cjs/sftp/aws/AwsSftpEnvironment.cjs +2 -2
  552. package/lib/cjs/sftp/aws/AwsSftpEnvironment.cjs.map +1 -0
  553. package/lib/cjs/sftp/aws/AwsSftpService.cjs +2 -2
  554. package/lib/cjs/sftp/aws/AwsSftpService.cjs.map +1 -0
  555. package/lib/cjs/sftp/aws/index.cjs +2 -2
  556. package/lib/cjs/sftp/aws/index.cjs.map +1 -0
  557. package/lib/cjs/sftp/core/SftpEnvironment.cjs +2 -2
  558. package/lib/cjs/sftp/core/SftpEnvironment.cjs.map +1 -0
  559. package/lib/cjs/sftp/core/SftpSource.cjs +2 -2
  560. package/lib/cjs/sftp/core/SftpSource.cjs.map +1 -0
  561. package/lib/cjs/sftp/core/index.cjs +2 -2
  562. package/lib/cjs/sftp/core/index.cjs.map +1 -0
  563. package/lib/cjs/sftp/index.cjs +2 -2
  564. package/lib/cjs/sftp/index.cjs.map +1 -0
  565. package/lib/cjs/sftp/ssh2/Ssh2SftpEnvironment.cjs +2 -2
  566. package/lib/cjs/sftp/ssh2/Ssh2SftpEnvironment.cjs.map +1 -0
  567. package/lib/cjs/sftp/ssh2/Ssh2SftpService.cjs +2 -2
  568. package/lib/cjs/sftp/ssh2/Ssh2SftpService.cjs.map +1 -0
  569. package/lib/cjs/sftp/ssh2/index.cjs +2 -2
  570. package/lib/cjs/sftp/ssh2/index.cjs.map +1 -0
  571. package/lib/cjs/shared/environmentValue.cjs +2 -2
  572. package/lib/cjs/shared/environmentValue.cjs.map +1 -0
  573. package/lib/cjs/shared/http/HttpApiService.cjs +2 -2
  574. package/lib/cjs/shared/http/HttpApiService.cjs.map +1 -0
  575. package/lib/cjs/shared/http/hermeticBoot.cjs +2 -2
  576. package/lib/cjs/shared/http/hermeticBoot.cjs.map +1 -0
  577. package/lib/cjs/shared/http/index.cjs +2 -2
  578. package/lib/cjs/shared/http/index.cjs.map +1 -0
  579. package/lib/cjs/shared/runtime.cjs +2 -2
  580. package/lib/cjs/shared/runtime.cjs.map +1 -0
  581. package/lib/cjs/user-requests/index.cjs +2 -2
  582. package/lib/cjs/user-requests/index.cjs.map +1 -0
  583. package/lib/cjs/utils.cjs +2 -2
  584. package/lib/cjs/utils.cjs.map +1 -0
  585. package/lib/esm/blob/azure/AzureBlobEnvironment.js +1 -1
  586. package/lib/esm/blob/azure/AzureBlobEnvironment.js.map +1 -0
  587. package/lib/esm/blob/azure/AzureBlobStoreService.js +1 -1
  588. package/lib/esm/blob/azure/AzureBlobStoreService.js.map +1 -0
  589. package/lib/esm/blob/azure/index.js +1 -1
  590. package/lib/esm/blob/azure/index.js.map +1 -0
  591. package/lib/esm/blob/core/BlobEnvironment.js +1 -1
  592. package/lib/esm/blob/core/BlobEnvironment.js.map +1 -0
  593. package/lib/esm/blob/core/BlobErrors.js +1 -1
  594. package/lib/esm/blob/core/BlobErrors.js.map +1 -0
  595. package/lib/esm/blob/core/BlobKey.js +1 -1
  596. package/lib/esm/blob/core/BlobKey.js.map +1 -0
  597. package/lib/esm/blob/core/BlobStoreFactory.js +1 -1
  598. package/lib/esm/blob/core/BlobStoreFactory.js.map +1 -0
  599. package/lib/esm/blob/core/BlobStoreService.js +1 -1
  600. package/lib/esm/blob/core/BlobStoreService.js.map +1 -0
  601. package/lib/esm/blob/core/BlobTypes.js +1 -1
  602. package/lib/esm/blob/core/BlobTypes.js.map +1 -0
  603. package/lib/esm/blob/core/BlobValue.js +1 -1
  604. package/lib/esm/blob/core/BlobValue.js.map +1 -0
  605. package/lib/esm/blob/core/index.js +1 -1
  606. package/lib/esm/blob/core/index.js.map +1 -0
  607. package/lib/esm/blob/gcp/GcsBlobEnvironment.js +1 -1
  608. package/lib/esm/blob/gcp/GcsBlobEnvironment.js.map +1 -0
  609. package/lib/esm/blob/gcp/GcsBlobStoreService.js +1 -1
  610. package/lib/esm/blob/gcp/GcsBlobStoreService.js.map +1 -0
  611. package/lib/esm/blob/gcp/index.js +1 -1
  612. package/lib/esm/blob/gcp/index.js.map +1 -0
  613. package/lib/esm/blob/index.js +1 -1
  614. package/lib/esm/blob/index.js.map +1 -0
  615. package/lib/esm/blob/local/LocalBlobEnvironment.js +1 -1
  616. package/lib/esm/blob/local/LocalBlobEnvironment.js.map +1 -0
  617. package/lib/esm/blob/local/LocalBlobStoreService.js +1 -1
  618. package/lib/esm/blob/local/LocalBlobStoreService.js.map +1 -0
  619. package/lib/esm/blob/local/index.js +1 -1
  620. package/lib/esm/blob/local/index.js.map +1 -0
  621. package/lib/esm/blob/memory/MemoryBlobEnvironment.js +1 -1
  622. package/lib/esm/blob/memory/MemoryBlobEnvironment.js.map +1 -0
  623. package/lib/esm/blob/memory/MemoryBlobStoreService.js +1 -1
  624. package/lib/esm/blob/memory/MemoryBlobStoreService.js.map +1 -0
  625. package/lib/esm/blob/memory/index.js +1 -1
  626. package/lib/esm/blob/memory/index.js.map +1 -0
  627. package/lib/esm/blob/s3/MinioBlobEnvironment.js +1 -1
  628. package/lib/esm/blob/s3/MinioBlobEnvironment.js.map +1 -0
  629. package/lib/esm/blob/s3/MinioBlobStoreService.js +1 -1
  630. package/lib/esm/blob/s3/MinioBlobStoreService.js.map +1 -0
  631. package/lib/esm/blob/s3/R2BlobEnvironment.js +1 -1
  632. package/lib/esm/blob/s3/R2BlobEnvironment.js.map +1 -0
  633. package/lib/esm/blob/s3/R2BlobStoreService.js +1 -1
  634. package/lib/esm/blob/s3/R2BlobStoreService.js.map +1 -0
  635. package/lib/esm/blob/s3/S3BlobEnvironment.js +1 -1
  636. package/lib/esm/blob/s3/S3BlobEnvironment.js.map +1 -0
  637. package/lib/esm/blob/s3/S3BlobStoreService.js +1 -1
  638. package/lib/esm/blob/s3/S3BlobStoreService.js.map +1 -0
  639. package/lib/esm/blob/s3/S3CompatibleBlobStoreService.js +1 -1
  640. package/lib/esm/blob/s3/S3CompatibleBlobStoreService.js.map +1 -0
  641. package/lib/esm/blob/s3/index.js +1 -1
  642. package/lib/esm/blob/s3/index.js.map +1 -0
  643. package/lib/esm/calendar/CalendarService.js +1 -1
  644. package/lib/esm/calendar/CalendarService.js.map +1 -0
  645. package/lib/esm/calendar/environment.js +1 -1
  646. package/lib/esm/calendar/environment.js.map +1 -0
  647. package/lib/esm/calendar/google-calendar/GoogleCalendarService.js +1 -1
  648. package/lib/esm/calendar/google-calendar/GoogleCalendarService.js.map +1 -0
  649. package/lib/esm/calendar/google-calendar/index.js +1 -1
  650. package/lib/esm/calendar/google-calendar/index.js.map +1 -0
  651. package/lib/esm/calendar/index.js +1 -1
  652. package/lib/esm/calendar/index.js.map +1 -0
  653. package/lib/esm/calendar/types.js +1 -1
  654. package/lib/esm/calendar/types.js.map +1 -0
  655. package/lib/esm/calendar/validators/cron.js +1 -1
  656. package/lib/esm/calendar/validators/cron.js.map +1 -0
  657. package/lib/esm/calendar/writers/CalendarFsWriter.js +1 -1
  658. package/lib/esm/calendar/writers/CalendarFsWriter.js.map +1 -0
  659. package/lib/esm/calendar/writers/CalenderDownloader.js +1 -1
  660. package/lib/esm/calendar/writers/CalenderDownloader.js.map +1 -0
  661. package/lib/esm/calendar/writers/ICalendarWriter.js +1 -1
  662. package/lib/esm/calendar/writers/ICalendarWriter.js.map +1 -0
  663. package/lib/esm/comms/discord/DiscordService.js +1 -1
  664. package/lib/esm/comms/discord/DiscordService.js.map +1 -0
  665. package/lib/esm/comms/discord/index.js +1 -1
  666. package/lib/esm/comms/discord/index.js.map +1 -0
  667. package/lib/esm/comms/email/EmailService.js +1 -1
  668. package/lib/esm/comms/email/EmailService.js.map +1 -0
  669. package/lib/esm/comms/email/index.js +1 -1
  670. package/lib/esm/comms/email/index.js.map +1 -0
  671. package/lib/esm/comms/email/mime.js +1 -1
  672. package/lib/esm/comms/email/mime.js.map +1 -0
  673. package/lib/esm/comms/email/smtp.js +1 -1
  674. package/lib/esm/comms/email/smtp.js.map +1 -0
  675. package/lib/esm/comms/environment.js +1 -1
  676. package/lib/esm/comms/environment.js.map +1 -0
  677. package/lib/esm/comms/gmail/GmailService.js +1 -1
  678. package/lib/esm/comms/gmail/GmailService.js.map +1 -0
  679. package/lib/esm/comms/gmail/index.js +1 -1
  680. package/lib/esm/comms/gmail/index.js.map +1 -0
  681. package/lib/esm/comms/index.js +1 -1
  682. package/lib/esm/comms/index.js.map +1 -0
  683. package/lib/esm/comms/outlook/MicrosoftOutlookService.js +1 -1
  684. package/lib/esm/comms/outlook/MicrosoftOutlookService.js.map +1 -0
  685. package/lib/esm/comms/outlook/index.js +1 -1
  686. package/lib/esm/comms/outlook/index.js.map +1 -0
  687. package/lib/esm/comms/slack/SlackService.js +1 -1
  688. package/lib/esm/comms/slack/SlackService.js.map +1 -0
  689. package/lib/esm/comms/slack/index.js +1 -1
  690. package/lib/esm/comms/slack/index.js.map +1 -0
  691. package/lib/esm/comms/teams/TeamsService.js +1 -1
  692. package/lib/esm/comms/teams/TeamsService.js.map +1 -0
  693. package/lib/esm/comms/teams/index.js +1 -1
  694. package/lib/esm/comms/teams/index.js.map +1 -0
  695. package/lib/esm/comms/telegram/TelegramService.js +1 -1
  696. package/lib/esm/comms/telegram/TelegramService.js.map +1 -0
  697. package/lib/esm/comms/telegram/index.js +1 -1
  698. package/lib/esm/comms/telegram/index.js.map +1 -0
  699. package/lib/esm/comms/whatsapp/WhatsAppService.js +1 -1
  700. package/lib/esm/comms/whatsapp/WhatsAppService.js.map +1 -0
  701. package/lib/esm/comms/whatsapp/index.js +1 -1
  702. package/lib/esm/comms/whatsapp/index.js.map +1 -0
  703. package/lib/esm/devops/environment.js +1 -1
  704. package/lib/esm/devops/environment.js.map +1 -0
  705. package/lib/esm/devops/github/GithubService.js +1 -1
  706. package/lib/esm/devops/github/GithubService.js.map +1 -0
  707. package/lib/esm/devops/github/index.js +1 -1
  708. package/lib/esm/devops/github/index.js.map +1 -0
  709. package/lib/esm/devops/gitlab/GitlabService.js +1 -1
  710. package/lib/esm/devops/gitlab/GitlabService.js.map +1 -0
  711. package/lib/esm/devops/gitlab/index.js +1 -1
  712. package/lib/esm/devops/gitlab/index.js.map +1 -0
  713. package/lib/esm/devops/index.js +1 -1
  714. package/lib/esm/devops/index.js.map +1 -0
  715. package/lib/esm/docker/DockerComposeService.js +1 -1
  716. package/lib/esm/docker/DockerComposeService.js.map +1 -0
  717. package/lib/esm/docker/index.js +1 -1
  718. package/lib/esm/docker/index.js.map +1 -0
  719. package/lib/esm/feature-flags/EngineCapabilityFeatureFlag.service.js +1 -1
  720. package/lib/esm/feature-flags/EngineCapabilityFeatureFlag.service.js.map +1 -0
  721. package/lib/esm/feature-flags/constants.js +1 -1
  722. package/lib/esm/feature-flags/constants.js.map +1 -0
  723. package/lib/esm/feature-flags/decorators.js +1 -1
  724. package/lib/esm/feature-flags/decorators.js.map +1 -0
  725. package/lib/esm/feature-flags/environment.js +1 -1
  726. package/lib/esm/feature-flags/environment.js.map +1 -0
  727. package/lib/esm/feature-flags/index.js +1 -1
  728. package/lib/esm/feature-flags/index.js.map +1 -0
  729. package/lib/esm/feature-flags/models/FeatureFlag.model.js +1 -1
  730. package/lib/esm/feature-flags/models/FeatureFlag.model.js.map +1 -0
  731. package/lib/esm/feature-flags/models/FeatureFlagAccess.model.js +1 -1
  732. package/lib/esm/feature-flags/models/FeatureFlagAccess.model.js.map +1 -0
  733. package/lib/esm/feature-flags/readers/FeatureFlagReader.js +1 -1
  734. package/lib/esm/feature-flags/readers/FeatureFlagReader.js.map +1 -0
  735. package/lib/esm/feature-flags/readers/index.js +1 -1
  736. package/lib/esm/feature-flags/readers/index.js.map +1 -0
  737. package/lib/esm/feature-flags/services/FeatureFlag.service.js +2 -1
  738. package/lib/esm/feature-flags/services/FeatureFlag.service.js.map +1 -0
  739. package/lib/esm/feature-flags/types.js +1 -1
  740. package/lib/esm/feature-flags/types.js.map +1 -0
  741. package/lib/esm/feature-flags/utils.js +1 -1
  742. package/lib/esm/feature-flags/utils.js.map +1 -0
  743. package/lib/esm/index.js +4 -4
  744. package/lib/esm/index.js.map +1 -0
  745. package/lib/esm/io/airtable/AirtableService.js +1 -1
  746. package/lib/esm/io/airtable/AirtableService.js.map +1 -0
  747. package/lib/esm/io/airtable/index.js +1 -1
  748. package/lib/esm/io/airtable/index.js.map +1 -0
  749. package/lib/esm/io/confluence/ConfluenceService.js +1 -1
  750. package/lib/esm/io/confluence/ConfluenceService.js.map +1 -0
  751. package/lib/esm/io/confluence/index.js +1 -1
  752. package/lib/esm/io/confluence/index.js.map +1 -0
  753. package/lib/esm/io/environment.js +1 -1
  754. package/lib/esm/io/environment.js.map +1 -0
  755. package/lib/esm/io/google-docs/GoogleDocsService.js +1 -1
  756. package/lib/esm/io/google-docs/GoogleDocsService.js.map +1 -0
  757. package/lib/esm/io/google-docs/index.js +1 -1
  758. package/lib/esm/io/google-docs/index.js.map +1 -0
  759. package/lib/esm/io/google-sheets/GoogleSheetsService.js +1 -1
  760. package/lib/esm/io/google-sheets/GoogleSheetsService.js.map +1 -0
  761. package/lib/esm/io/google-sheets/index.js +1 -1
  762. package/lib/esm/io/google-sheets/index.js.map +1 -0
  763. package/lib/esm/io/graphql/GraphqlService.js +1 -1
  764. package/lib/esm/io/graphql/GraphqlService.js.map +1 -0
  765. package/lib/esm/io/graphql/index.js +1 -1
  766. package/lib/esm/io/graphql/index.js.map +1 -0
  767. package/lib/esm/io/index.js +1 -1
  768. package/lib/esm/io/index.js.map +1 -0
  769. package/lib/esm/io/jira/JiraService.js +1 -1
  770. package/lib/esm/io/jira/JiraService.js.map +1 -0
  771. package/lib/esm/io/jira/index.js +1 -1
  772. package/lib/esm/io/jira/index.js.map +1 -0
  773. package/lib/esm/io/microsoft-excel/MicrosoftExcelService.js +1 -1
  774. package/lib/esm/io/microsoft-excel/MicrosoftExcelService.js.map +1 -0
  775. package/lib/esm/io/microsoft-excel/index.js +1 -1
  776. package/lib/esm/io/microsoft-excel/index.js.map +1 -0
  777. package/lib/esm/io/microsoft-sharepoint/MicrosoftSharePointService.js +1 -1
  778. package/lib/esm/io/microsoft-sharepoint/MicrosoftSharePointService.js.map +1 -0
  779. package/lib/esm/io/microsoft-sharepoint/index.js +1 -1
  780. package/lib/esm/io/microsoft-sharepoint/index.js.map +1 -0
  781. package/lib/esm/io/spreadsheet/SpreadsheetService.js +1 -1
  782. package/lib/esm/io/spreadsheet/SpreadsheetService.js.map +1 -0
  783. package/lib/esm/io/spreadsheet/index.js +1 -1
  784. package/lib/esm/io/spreadsheet/index.js.map +1 -0
  785. package/lib/esm/keycloak/broker.js +1 -1
  786. package/lib/esm/keycloak/broker.js.map +1 -0
  787. package/lib/esm/keycloak/index.js +1 -1
  788. package/lib/esm/keycloak/index.js.map +1 -0
  789. package/lib/esm/keycloak/services/KeycloakAuthService.js +1 -1
  790. package/lib/esm/keycloak/services/KeycloakAuthService.js.map +1 -0
  791. package/lib/esm/keycloak/services/KeycloakClientService.js +1 -1
  792. package/lib/esm/keycloak/services/KeycloakClientService.js.map +1 -0
  793. package/lib/esm/keycloak/services/KeycloakIdentityProviderService.js +1 -1
  794. package/lib/esm/keycloak/services/KeycloakIdentityProviderService.js.map +1 -0
  795. package/lib/esm/keycloak/services/KeycloakRealmService.js +1 -1
  796. package/lib/esm/keycloak/services/KeycloakRealmService.js.map +1 -0
  797. package/lib/esm/keycloak/services/KeycloakRoleService.js +1 -1
  798. package/lib/esm/keycloak/services/KeycloakRoleService.js.map +1 -0
  799. package/lib/esm/keycloak/services/KeycloakService.js +1 -1
  800. package/lib/esm/keycloak/services/KeycloakService.js.map +1 -0
  801. package/lib/esm/keycloak/services/KeycloakUserService.js +1 -1
  802. package/lib/esm/keycloak/services/KeycloakUserService.js.map +1 -0
  803. package/lib/esm/keycloak/services/index.js +1 -1
  804. package/lib/esm/keycloak/services/index.js.map +1 -0
  805. package/lib/esm/keycloak/services/runtime.js +1 -1
  806. package/lib/esm/keycloak/services/runtime.js.map +1 -0
  807. package/lib/esm/keycloak/types.js +1 -1
  808. package/lib/esm/keycloak/types.js.map +1 -0
  809. package/lib/esm/kibana/builders/KibanaIndexBuilder.js +1 -1
  810. package/lib/esm/kibana/builders/KibanaIndexBuilder.js.map +1 -0
  811. package/lib/esm/kibana/builders/KibanaIndexBuilderCollection.js +1 -1
  812. package/lib/esm/kibana/builders/KibanaIndexBuilderCollection.js.map +1 -0
  813. package/lib/esm/kibana/builders/index.js +1 -1
  814. package/lib/esm/kibana/builders/index.js.map +1 -0
  815. package/lib/esm/kibana/helpers.js +1 -1
  816. package/lib/esm/kibana/helpers.js.map +1 -0
  817. package/lib/esm/kibana/index.js +1 -1
  818. package/lib/esm/kibana/index.js.map +1 -0
  819. package/lib/esm/kibana/services/KibanaAuthService.js +1 -1
  820. package/lib/esm/kibana/services/KibanaAuthService.js.map +1 -0
  821. package/lib/esm/kibana/services/KibanaDashboardService.js +1 -1
  822. package/lib/esm/kibana/services/KibanaDashboardService.js.map +1 -0
  823. package/lib/esm/kibana/services/KibanaDataViewService.js +1 -1
  824. package/lib/esm/kibana/services/KibanaDataViewService.js.map +1 -0
  825. package/lib/esm/kibana/services/KibanaRoleService.js +1 -1
  826. package/lib/esm/kibana/services/KibanaRoleService.js.map +1 -0
  827. package/lib/esm/kibana/services/KibanaService.js +1 -1
  828. package/lib/esm/kibana/services/KibanaService.js.map +1 -0
  829. package/lib/esm/kibana/services/KibanaSpaceService.js +1 -1
  830. package/lib/esm/kibana/services/KibanaSpaceService.js.map +1 -0
  831. package/lib/esm/kibana/services/KibanaUserService.js +1 -1
  832. package/lib/esm/kibana/services/KibanaUserService.js.map +1 -0
  833. package/lib/esm/kibana/services/index.js +1 -1
  834. package/lib/esm/kibana/services/index.js.map +1 -0
  835. package/lib/esm/kibana/services/runtime.js +1 -1
  836. package/lib/esm/kibana/services/runtime.js.map +1 -0
  837. package/lib/esm/kibana/types.js +1 -1
  838. package/lib/esm/kibana/types.js.map +1 -0
  839. package/lib/esm/loader/ObjectLoader.js +1 -1
  840. package/lib/esm/loader/ObjectLoader.js.map +1 -0
  841. package/lib/esm/loader/assets.js +1 -1
  842. package/lib/esm/loader/assets.js.map +1 -0
  843. package/lib/esm/loader/config.js +1 -1
  844. package/lib/esm/loader/config.js.map +1 -0
  845. package/lib/esm/loader/families.js +1 -1
  846. package/lib/esm/loader/families.js.map +1 -0
  847. package/lib/esm/loader/index.js +1 -1
  848. package/lib/esm/loader/index.js.map +1 -0
  849. package/lib/esm/loader/nest.js +1 -1
  850. package/lib/esm/loader/nest.js.map +1 -0
  851. package/lib/esm/loader/types.js +1 -1
  852. package/lib/esm/loader/types.js.map +1 -0
  853. package/lib/esm/namespaces/index.js +1 -1
  854. package/lib/esm/namespaces/index.js.map +1 -0
  855. package/lib/esm/namespaces/models/authorization-model.js +1 -1
  856. package/lib/esm/namespaces/models/authorization-model.js.map +1 -0
  857. package/lib/esm/namespaces/models/credential.model.js +1 -1
  858. package/lib/esm/namespaces/models/credential.model.js.map +1 -0
  859. package/lib/esm/namespaces/models/effective-permission.model.js +1 -1
  860. package/lib/esm/namespaces/models/effective-permission.model.js.map +1 -0
  861. package/lib/esm/namespaces/models/group-membership.model.js +1 -1
  862. package/lib/esm/namespaces/models/group-membership.model.js.map +1 -0
  863. package/lib/esm/namespaces/models/group.model.js +1 -1
  864. package/lib/esm/namespaces/models/group.model.js.map +1 -0
  865. package/lib/esm/namespaces/models/index.js +1 -1
  866. package/lib/esm/namespaces/models/index.js.map +1 -0
  867. package/lib/esm/namespaces/models/inheritance-block.model.js +1 -1
  868. package/lib/esm/namespaces/models/inheritance-block.model.js.map +1 -0
  869. package/lib/esm/namespaces/models/org-unit-closure.model.js +1 -1
  870. package/lib/esm/namespaces/models/org-unit-closure.model.js.map +1 -0
  871. package/lib/esm/namespaces/models/org-unit-membership.model.js +1 -1
  872. package/lib/esm/namespaces/models/org-unit-membership.model.js.map +1 -0
  873. package/lib/esm/namespaces/models/org-unit-profile.model.js +1 -1
  874. package/lib/esm/namespaces/models/org-unit-profile.model.js.map +1 -0
  875. package/lib/esm/namespaces/models/org-unit.model.js +1 -1
  876. package/lib/esm/namespaces/models/org-unit.model.js.map +1 -0
  877. package/lib/esm/namespaces/models/permission.model.js +1 -1
  878. package/lib/esm/namespaces/models/permission.model.js.map +1 -0
  879. package/lib/esm/namespaces/models/principal.model.js +1 -1
  880. package/lib/esm/namespaces/models/principal.model.js.map +1 -0
  881. package/lib/esm/namespaces/models/protected-resource.model.js +1 -1
  882. package/lib/esm/namespaces/models/protected-resource.model.js.map +1 -0
  883. package/lib/esm/namespaces/models/resource-grant.model.js +1 -1
  884. package/lib/esm/namespaces/models/resource-grant.model.js.map +1 -0
  885. package/lib/esm/namespaces/models/role-assignment.model.js +1 -1
  886. package/lib/esm/namespaces/models/role-assignment.model.js.map +1 -0
  887. package/lib/esm/namespaces/models/role-permission.model.js +1 -1
  888. package/lib/esm/namespaces/models/role-permission.model.js.map +1 -0
  889. package/lib/esm/namespaces/models/role.model.js +1 -1
  890. package/lib/esm/namespaces/models/role.model.js.map +1 -0
  891. package/lib/esm/namespaces/models/storage-binding.model.js +1 -1
  892. package/lib/esm/namespaces/models/storage-binding.model.js.map +1 -0
  893. package/lib/esm/namespaces/models/tenant-membership.model.js +1 -1
  894. package/lib/esm/namespaces/models/tenant-membership.model.js.map +1 -0
  895. package/lib/esm/namespaces/models/tenant-profile.model.js +1 -1
  896. package/lib/esm/namespaces/models/tenant-profile.model.js.map +1 -0
  897. package/lib/esm/namespaces/models/tenant.model.js +1 -1
  898. package/lib/esm/namespaces/models/tenant.model.js.map +1 -0
  899. package/lib/esm/namespaces/models/user.model.js +1 -1
  900. package/lib/esm/namespaces/models/user.model.js.map +1 -0
  901. package/lib/esm/namespaces/org-based-authorization-system.js +1 -1
  902. package/lib/esm/namespaces/org-based-authorization-system.js.map +1 -0
  903. package/lib/esm/namespaces/org-based-authorization-system.models.js +1 -1
  904. package/lib/esm/namespaces/org-based-authorization-system.models.js.map +1 -0
  905. package/lib/esm/namespaces/org-based-authorization-system.services.js +1 -1
  906. package/lib/esm/namespaces/org-based-authorization-system.services.js.map +1 -0
  907. package/lib/esm/namespaces/rls/index.js +1 -1
  908. package/lib/esm/namespaces/rls/index.js.map +1 -0
  909. package/lib/esm/namespaces/rls/principal-resolver.js +1 -1
  910. package/lib/esm/namespaces/rls/principal-resolver.js.map +1 -0
  911. package/lib/esm/namespaces/rls/rls-bootstrap.service.js +1 -1
  912. package/lib/esm/namespaces/rls/rls-bootstrap.service.js.map +1 -0
  913. package/lib/esm/namespaces/rls/rls.constants.js +1 -1
  914. package/lib/esm/namespaces/rls/rls.constants.js.map +1 -0
  915. package/lib/esm/namespaces/rls/rls.template.js +1 -1
  916. package/lib/esm/namespaces/rls/rls.template.js.map +1 -0
  917. package/lib/esm/namespaces/rls/rls.types.js +1 -1
  918. package/lib/esm/namespaces/rls/rls.types.js.map +1 -0
  919. package/lib/esm/namespaces/rls/session-binding.js +1 -1
  920. package/lib/esm/namespaces/rls/session-binding.js.map +1 -0
  921. package/lib/esm/namespaces/services/authz.service.js +1 -1
  922. package/lib/esm/namespaces/services/authz.service.js.map +1 -0
  923. package/lib/esm/namespaces/services/bootstrap.service.js +1 -1
  924. package/lib/esm/namespaces/services/bootstrap.service.js.map +1 -0
  925. package/lib/esm/namespaces/services/credential.service.js +1 -1
  926. package/lib/esm/namespaces/services/credential.service.js.map +1 -0
  927. package/lib/esm/namespaces/services/effective-permission.service.js +1 -1
  928. package/lib/esm/namespaces/services/effective-permission.service.js.map +1 -0
  929. package/lib/esm/namespaces/services/group-membership.service.js +1 -1
  930. package/lib/esm/namespaces/services/group-membership.service.js.map +1 -0
  931. package/lib/esm/namespaces/services/group.service.js +1 -1
  932. package/lib/esm/namespaces/services/group.service.js.map +1 -0
  933. package/lib/esm/namespaces/services/index.js +1 -1
  934. package/lib/esm/namespaces/services/index.js.map +1 -0
  935. package/lib/esm/namespaces/services/inheritance-block.service.js +1 -1
  936. package/lib/esm/namespaces/services/inheritance-block.service.js.map +1 -0
  937. package/lib/esm/namespaces/services/org-unit-closure.service.js +1 -1
  938. package/lib/esm/namespaces/services/org-unit-closure.service.js.map +1 -0
  939. package/lib/esm/namespaces/services/org-unit-membership.service.js +1 -1
  940. package/lib/esm/namespaces/services/org-unit-membership.service.js.map +1 -0
  941. package/lib/esm/namespaces/services/org-unit-profile.service.js +1 -1
  942. package/lib/esm/namespaces/services/org-unit-profile.service.js.map +1 -0
  943. package/lib/esm/namespaces/services/org-unit.service.js +1 -1
  944. package/lib/esm/namespaces/services/org-unit.service.js.map +1 -0
  945. package/lib/esm/namespaces/services/permission.service.js +1 -1
  946. package/lib/esm/namespaces/services/permission.service.js.map +1 -0
  947. package/lib/esm/namespaces/services/principal.service.js +1 -1
  948. package/lib/esm/namespaces/services/principal.service.js.map +1 -0
  949. package/lib/esm/namespaces/services/protected-resource.service.js +1 -1
  950. package/lib/esm/namespaces/services/protected-resource.service.js.map +1 -0
  951. package/lib/esm/namespaces/services/resource-grant.service.js +1 -1
  952. package/lib/esm/namespaces/services/resource-grant.service.js.map +1 -0
  953. package/lib/esm/namespaces/services/resource-lifecycle.service.js +1 -1
  954. package/lib/esm/namespaces/services/resource-lifecycle.service.js.map +1 -0
  955. package/lib/esm/namespaces/services/role-assignment.service.js +1 -1
  956. package/lib/esm/namespaces/services/role-assignment.service.js.map +1 -0
  957. package/lib/esm/namespaces/services/role-permission.service.js +1 -1
  958. package/lib/esm/namespaces/services/role-permission.service.js.map +1 -0
  959. package/lib/esm/namespaces/services/role.service.js +1 -1
  960. package/lib/esm/namespaces/services/role.service.js.map +1 -0
  961. package/lib/esm/namespaces/services/storage-binding.service.js +1 -1
  962. package/lib/esm/namespaces/services/storage-binding.service.js.map +1 -0
  963. package/lib/esm/namespaces/services/system-management.service.js +1 -1
  964. package/lib/esm/namespaces/services/system-management.service.js.map +1 -0
  965. package/lib/esm/namespaces/services/tenant-membership.service.js +1 -1
  966. package/lib/esm/namespaces/services/tenant-membership.service.js.map +1 -0
  967. package/lib/esm/namespaces/services/tenant-profile.service.js +1 -1
  968. package/lib/esm/namespaces/services/tenant-profile.service.js.map +1 -0
  969. package/lib/esm/namespaces/services/tenant.service.js +1 -1
  970. package/lib/esm/namespaces/services/tenant.service.js.map +1 -0
  971. package/lib/esm/namespaces/services/user.service.js +1 -1
  972. package/lib/esm/namespaces/services/user.service.js.map +1 -0
  973. package/lib/esm/namespaces/types.js +1 -1
  974. package/lib/esm/namespaces/types.js.map +1 -0
  975. package/lib/esm/namespaces/utils.js +1 -1
  976. package/lib/esm/namespaces/utils.js.map +1 -0
  977. package/lib/esm/nest/decorators.js +1 -1
  978. package/lib/esm/nest/decorators.js.map +1 -0
  979. package/lib/esm/nest/index.js +1 -1
  980. package/lib/esm/nest/index.js.map +1 -0
  981. package/lib/esm/nest/keycloakAuthHandler.js +1 -1
  982. package/lib/esm/nest/keycloakAuthHandler.js.map +1 -0
  983. package/lib/esm/nest/keycloakModule.js +1 -1
  984. package/lib/esm/nest/keycloakModule.js.map +1 -0
  985. package/lib/esm/nest/logging.js +1 -1
  986. package/lib/esm/nest/logging.js.map +1 -0
  987. package/lib/esm/nest/types.js +1 -1
  988. package/lib/esm/nest/types.js.map +1 -0
  989. package/lib/esm/nest/utils.js +1 -1
  990. package/lib/esm/nest/utils.js.map +1 -0
  991. package/lib/esm/plugins/contract.js +1 -1
  992. package/lib/esm/plugins/contract.js.map +1 -0
  993. package/lib/esm/plugins/index.js +1 -1
  994. package/lib/esm/plugins/index.js.map +1 -0
  995. package/lib/esm/plugins/kibana/host.js +1 -1
  996. package/lib/esm/plugins/kibana/host.js.map +1 -0
  997. package/lib/esm/plugins/kibana/index.js +1 -1
  998. package/lib/esm/plugins/kibana/index.js.map +1 -0
  999. package/lib/esm/plugins/kibana/installer.js +1 -1
  1000. package/lib/esm/plugins/kibana/installer.js.map +1 -0
  1001. package/lib/esm/plugins/kibana/manifest.js +1 -1
  1002. package/lib/esm/plugins/kibana/manifest.js.map +1 -0
  1003. package/lib/esm/plugins/kibana/templates.js +1 -1
  1004. package/lib/esm/plugins/kibana/templates.js.map +1 -0
  1005. package/lib/esm/plugins/kibana/types.js +1 -1
  1006. package/lib/esm/plugins/kibana/types.js.map +1 -0
  1007. package/lib/esm/plugins/superset/host.js +1 -1
  1008. package/lib/esm/plugins/superset/host.js.map +1 -0
  1009. package/lib/esm/plugins/superset/index.js +1 -1
  1010. package/lib/esm/plugins/superset/index.js.map +1 -0
  1011. package/lib/esm/plugins/superset/installer.js +1 -1
  1012. package/lib/esm/plugins/superset/installer.js.map +1 -0
  1013. package/lib/esm/plugins/superset/manifest.js +1 -1
  1014. package/lib/esm/plugins/superset/manifest.js.map +1 -0
  1015. package/lib/esm/plugins/superset/templates.js +1 -1
  1016. package/lib/esm/plugins/superset/templates.js.map +1 -0
  1017. package/lib/esm/plugins/superset/types.js +1 -1
  1018. package/lib/esm/plugins/superset/types.js.map +1 -0
  1019. package/lib/esm/redis/RedisContextLock.js +1 -1
  1020. package/lib/esm/redis/RedisContextLock.js.map +1 -0
  1021. package/lib/esm/redis/RedisDispatch.js +1 -1
  1022. package/lib/esm/redis/RedisDispatch.js.map +1 -0
  1023. package/lib/esm/redis/RedisPaginator.js +1 -1
  1024. package/lib/esm/redis/RedisPaginator.js.map +1 -0
  1025. package/lib/esm/redis/RedisStatement.js +1 -1
  1026. package/lib/esm/redis/RedisStatement.js.map +1 -0
  1027. package/lib/esm/redis/adapter.js +1 -1
  1028. package/lib/esm/redis/adapter.js.map +1 -0
  1029. package/lib/esm/redis/constants.js +1 -1
  1030. package/lib/esm/redis/constants.js.map +1 -0
  1031. package/lib/esm/redis/handlers.js +1 -1
  1032. package/lib/esm/redis/handlers.js.map +1 -0
  1033. package/lib/esm/redis/index.js +1 -1
  1034. package/lib/esm/redis/index.js.map +1 -0
  1035. package/lib/esm/redis/serialization.js +1 -1
  1036. package/lib/esm/redis/serialization.js.map +1 -0
  1037. package/lib/esm/redis/types.js +1 -1
  1038. package/lib/esm/redis/types.js.map +1 -0
  1039. package/lib/esm/secrets/InfraCredentialBootstrap.js +1 -1
  1040. package/lib/esm/secrets/InfraCredentialBootstrap.js.map +1 -0
  1041. package/lib/esm/secrets/aws/AwsSecretEnvironment.js +1 -1
  1042. package/lib/esm/secrets/aws/AwsSecretEnvironment.js.map +1 -0
  1043. package/lib/esm/secrets/aws/AwsSecretService.js +1 -1
  1044. package/lib/esm/secrets/aws/AwsSecretService.js.map +1 -0
  1045. package/lib/esm/secrets/aws/AwsSecretServiceConfig.js +1 -1
  1046. package/lib/esm/secrets/aws/AwsSecretServiceConfig.js.map +1 -0
  1047. package/lib/esm/secrets/aws/index.js +1 -1
  1048. package/lib/esm/secrets/aws/index.js.map +1 -0
  1049. package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js +1 -1
  1050. package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js.map +1 -0
  1051. package/lib/esm/secrets/azure/AzureKeyVaultSecretServiceConfig.js +1 -1
  1052. package/lib/esm/secrets/azure/AzureKeyVaultSecretServiceConfig.js.map +1 -0
  1053. package/lib/esm/secrets/azure/AzureSecretEnvironment.js +1 -1
  1054. package/lib/esm/secrets/azure/AzureSecretEnvironment.js.map +1 -0
  1055. package/lib/esm/secrets/azure/index.js +1 -1
  1056. package/lib/esm/secrets/azure/index.js.map +1 -0
  1057. package/lib/esm/secrets/core/ClientBasedSecretService.js +1 -1
  1058. package/lib/esm/secrets/core/ClientBasedSecretService.js.map +1 -0
  1059. package/lib/esm/secrets/core/SecretEnvironment.js +1 -1
  1060. package/lib/esm/secrets/core/SecretEnvironment.js.map +1 -0
  1061. package/lib/esm/secrets/core/SecretErrors.js +1 -1
  1062. package/lib/esm/secrets/core/SecretErrors.js.map +1 -0
  1063. package/lib/esm/secrets/core/SecretName.js +1 -1
  1064. package/lib/esm/secrets/core/SecretName.js.map +1 -0
  1065. package/lib/esm/secrets/core/SecretReference.js +1 -1
  1066. package/lib/esm/secrets/core/SecretReference.js.map +1 -0
  1067. package/lib/esm/secrets/core/SecretSerialization.js +1 -1
  1068. package/lib/esm/secrets/core/SecretSerialization.js.map +1 -0
  1069. package/lib/esm/secrets/core/SecretService.js +1 -1
  1070. package/lib/esm/secrets/core/SecretService.js.map +1 -0
  1071. package/lib/esm/secrets/core/SecretTypes.js +1 -1
  1072. package/lib/esm/secrets/core/SecretTypes.js.map +1 -0
  1073. package/lib/esm/secrets/core/index.js +1 -1
  1074. package/lib/esm/secrets/core/index.js.map +1 -0
  1075. package/lib/esm/secrets/fs/FsSecretEnvironment.js +1 -1
  1076. package/lib/esm/secrets/fs/FsSecretEnvironment.js.map +1 -0
  1077. package/lib/esm/secrets/fs/FsSecretService.js +1 -1
  1078. package/lib/esm/secrets/fs/FsSecretService.js.map +1 -0
  1079. package/lib/esm/secrets/fs/FsSecretServiceConfig.js +1 -1
  1080. package/lib/esm/secrets/fs/FsSecretServiceConfig.js.map +1 -0
  1081. package/lib/esm/secrets/fs/index.js +1 -1
  1082. package/lib/esm/secrets/fs/index.js.map +1 -0
  1083. package/lib/esm/secrets/gcp/GcpSecretEnvironment.js +1 -1
  1084. package/lib/esm/secrets/gcp/GcpSecretEnvironment.js.map +1 -0
  1085. package/lib/esm/secrets/gcp/GcpSecretManagerService.js +1 -1
  1086. package/lib/esm/secrets/gcp/GcpSecretManagerService.js.map +1 -0
  1087. package/lib/esm/secrets/gcp/GcpSecretManagerServiceConfig.js +1 -1
  1088. package/lib/esm/secrets/gcp/GcpSecretManagerServiceConfig.js.map +1 -0
  1089. package/lib/esm/secrets/gcp/index.js +1 -1
  1090. package/lib/esm/secrets/gcp/index.js.map +1 -0
  1091. package/lib/esm/secrets/index.js +1 -1
  1092. package/lib/esm/secrets/index.js.map +1 -0
  1093. package/lib/esm/secrets/kubernetes/KubernetesSecretEnvironment.js +1 -1
  1094. package/lib/esm/secrets/kubernetes/KubernetesSecretEnvironment.js.map +1 -0
  1095. package/lib/esm/secrets/kubernetes/KubernetesSecretService.js +1 -1
  1096. package/lib/esm/secrets/kubernetes/KubernetesSecretService.js.map +1 -0
  1097. package/lib/esm/secrets/kubernetes/KubernetesSecretServiceConfig.js +1 -1
  1098. package/lib/esm/secrets/kubernetes/KubernetesSecretServiceConfig.js.map +1 -0
  1099. package/lib/esm/secrets/kubernetes/index.js +1 -1
  1100. package/lib/esm/secrets/kubernetes/index.js.map +1 -0
  1101. package/lib/esm/secrets/model/ModelSecretCrypto.js +1 -1
  1102. package/lib/esm/secrets/model/ModelSecretCrypto.js.map +1 -0
  1103. package/lib/esm/secrets/model/ModelSecretEnvironment.js +1 -1
  1104. package/lib/esm/secrets/model/ModelSecretEnvironment.js.map +1 -0
  1105. package/lib/esm/secrets/model/ModelSecretService.js +1 -1
  1106. package/lib/esm/secrets/model/ModelSecretService.js.map +1 -0
  1107. package/lib/esm/secrets/model/ModelSecretServiceConfig.js +1 -1
  1108. package/lib/esm/secrets/model/ModelSecretServiceConfig.js.map +1 -0
  1109. package/lib/esm/secrets/model/Secret.js +1 -1
  1110. package/lib/esm/secrets/model/Secret.js.map +1 -0
  1111. package/lib/esm/secrets/model/index.js +1 -1
  1112. package/lib/esm/secrets/model/index.js.map +1 -0
  1113. package/lib/esm/secrets/onepassword/OnePasswordSecretEnvironment.js +1 -1
  1114. package/lib/esm/secrets/onepassword/OnePasswordSecretEnvironment.js.map +1 -0
  1115. package/lib/esm/secrets/onepassword/OnePasswordSecretService.js +1 -1
  1116. package/lib/esm/secrets/onepassword/OnePasswordSecretService.js.map +1 -0
  1117. package/lib/esm/secrets/onepassword/OnePasswordSecretServiceConfig.js +1 -1
  1118. package/lib/esm/secrets/onepassword/OnePasswordSecretServiceConfig.js.map +1 -0
  1119. package/lib/esm/secrets/onepassword/index.js +1 -1
  1120. package/lib/esm/secrets/onepassword/index.js.map +1 -0
  1121. package/lib/esm/secrets/vault/VaultSecretEnvironment.js +1 -1
  1122. package/lib/esm/secrets/vault/VaultSecretEnvironment.js.map +1 -0
  1123. package/lib/esm/secrets/vault/VaultSecretService.js +1 -1
  1124. package/lib/esm/secrets/vault/VaultSecretService.js.map +1 -0
  1125. package/lib/esm/secrets/vault/VaultSecretServiceConfig.js +1 -1
  1126. package/lib/esm/secrets/vault/VaultSecretServiceConfig.js.map +1 -0
  1127. package/lib/esm/secrets/vault/index.js +1 -1
  1128. package/lib/esm/secrets/vault/index.js.map +1 -0
  1129. package/lib/esm/sftp/aws/AwsSftpEnvironment.js +1 -1
  1130. package/lib/esm/sftp/aws/AwsSftpEnvironment.js.map +1 -0
  1131. package/lib/esm/sftp/aws/AwsSftpService.js +1 -1
  1132. package/lib/esm/sftp/aws/AwsSftpService.js.map +1 -0
  1133. package/lib/esm/sftp/aws/index.js +1 -1
  1134. package/lib/esm/sftp/aws/index.js.map +1 -0
  1135. package/lib/esm/sftp/core/SftpEnvironment.js +1 -1
  1136. package/lib/esm/sftp/core/SftpEnvironment.js.map +1 -0
  1137. package/lib/esm/sftp/core/SftpSource.js +1 -1
  1138. package/lib/esm/sftp/core/SftpSource.js.map +1 -0
  1139. package/lib/esm/sftp/core/index.js +1 -1
  1140. package/lib/esm/sftp/core/index.js.map +1 -0
  1141. package/lib/esm/sftp/index.js +1 -1
  1142. package/lib/esm/sftp/index.js.map +1 -0
  1143. package/lib/esm/sftp/ssh2/Ssh2SftpEnvironment.js +1 -1
  1144. package/lib/esm/sftp/ssh2/Ssh2SftpEnvironment.js.map +1 -0
  1145. package/lib/esm/sftp/ssh2/Ssh2SftpService.js +1 -1
  1146. package/lib/esm/sftp/ssh2/Ssh2SftpService.js.map +1 -0
  1147. package/lib/esm/sftp/ssh2/index.js +1 -1
  1148. package/lib/esm/sftp/ssh2/index.js.map +1 -0
  1149. package/lib/esm/shared/environmentValue.js +1 -1
  1150. package/lib/esm/shared/environmentValue.js.map +1 -0
  1151. package/lib/esm/shared/http/HttpApiService.js +1 -1
  1152. package/lib/esm/shared/http/HttpApiService.js.map +1 -0
  1153. package/lib/esm/shared/http/hermeticBoot.js +1 -1
  1154. package/lib/esm/shared/http/hermeticBoot.js.map +1 -0
  1155. package/lib/esm/shared/http/index.js +1 -1
  1156. package/lib/esm/shared/http/index.js.map +1 -0
  1157. package/lib/esm/shared/runtime.js +1 -1
  1158. package/lib/esm/shared/runtime.js.map +1 -0
  1159. package/lib/esm/user-requests/index.js +1 -1
  1160. package/lib/esm/user-requests/index.js.map +1 -0
  1161. package/lib/esm/utils.js +1 -1
  1162. package/lib/esm/utils.js.map +1 -0
  1163. package/lib/types/index.d.cts +2 -2
  1164. package/lib/types/index.d.mts +2 -2
  1165. package/package.json +74 -50
@@ -16,4 +16,4 @@ export class EnvironmeFlagReader extends FeatureFlagReader {
16
16
  return loadFeatureFlagsFromEnvironment(environment);
17
17
  }
18
18
  }
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmVhdHVyZUZsYWdSZWFkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZmVhdHVyZS1mbGFncy9yZWFkZXJzL0ZlYXR1cmVGbGFnUmVhZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxxQkFBcUIsR0FDdEIsMEJBQXFCO0FBQ3RCLE9BQU8sRUFDTCwrQkFBK0IsR0FDaEMsNEJBQXVCO0FBT3hCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxzQkFBaUI7QUFFaEQsTUFBTSxPQUFnQixpQkFBaUI7SUFLckMsS0FBSyxDQUFDLE9BQU8sQ0FDWCxXQUFtQixFQUNuQixLQUE4QjtRQUU5QixNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEMsT0FBTyxRQUFRLENBQUMsb0JBQW9CLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNyRCxDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsaUJBQWlCO0lBQ3hELEtBQUssQ0FBQyxJQUFJLENBQ1IsUUFBZ0MsRUFBRTtRQUVsQyxNQUFNLFdBQVcsR0FDZCxLQUFLLENBQUMsTUFBa0Q7WUFDeEQ7Z0JBQ0MsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLEVBQUU7YUFDSSxDQUFDO1FBQ3BDLE9BQU8sK0JBQStCLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRkVBVFVSRV9GTEFHX0VOVl9ST09ULFxufSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQge1xuICBsb2FkRmVhdHVyZUZsYWdzRnJvbUVudmlyb25tZW50LFxufSBmcm9tIFwiLi4vZW52aXJvbm1lbnRcIjtcbmltcG9ydCB0eXBlIHtcbiAgRmVhdHVyZUZsYWdFbnZpcm9ubWVudFNoYXBlLFxuICBGZWF0dXJlRmxhZ1JlYWRlcklucHV0LFxuICBGZWF0dXJlRmxhZ1JlZ2lzdHJ5LFxuICBGZWF0dXJlRmxhZ1ZhbHVlLFxufSBmcm9tIFwiLi4vdHlwZXNcIjtcbmltcG9ydCB7IG5vcm1hbGl6ZUZlYXR1cmVOYW1lIH0gZnJvbSBcIi4uL3V0aWxzXCI7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGZWF0dXJlRmxhZ1JlYWRlciB7XG4gIGFic3RyYWN0IHJlYWQoXG4gICAgaW5wdXQ/OiBGZWF0dXJlRmxhZ1JlYWRlcklucHV0XG4gICk6IFByb21pc2U8RmVhdHVyZUZsYWdSZWdpc3RyeT47XG5cbiAgYXN5bmMgcmVhZE9uZShcbiAgICBmZWF0dXJlTmFtZTogc3RyaW5nLFxuICAgIGlucHV0PzogRmVhdHVyZUZsYWdSZWFkZXJJbnB1dFxuICApOiBQcm9taXNlPEZlYXR1cmVGbGFnVmFsdWUgfCB1bmRlZmluZWQ+IHtcbiAgICBjb25zdCByZWdpc3RyeSA9IGF3YWl0IHRoaXMucmVhZChpbnB1dCk7XG4gICAgcmV0dXJuIHJlZ2lzdHJ5W25vcm1hbGl6ZUZlYXR1cmVOYW1lKGZlYXR1cmVOYW1lKV07XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEVudmlyb25tZUZsYWdSZWFkZXIgZXh0ZW5kcyBGZWF0dXJlRmxhZ1JlYWRlciB7XG4gIGFzeW5jIHJlYWQoXG4gICAgaW5wdXQ6IEZlYXR1cmVGbGFnUmVhZGVySW5wdXQgPSB7fVxuICApOiBQcm9taXNlPEZlYXR1cmVGbGFnUmVnaXN0cnk+IHtcbiAgICBjb25zdCBlbnZpcm9ubWVudCA9XG4gICAgICAoaW5wdXQuc291cmNlIGFzIEZlYXR1cmVGbGFnRW52aXJvbm1lbnRTaGFwZSB8IHVuZGVmaW5lZCkgPz9cbiAgICAgICh7XG4gICAgICAgIFtGRUFUVVJFX0ZMQUdfRU5WX1JPT1RdOiB7fSxcbiAgICAgIH0gYXMgRmVhdHVyZUZsYWdFbnZpcm9ubWVudFNoYXBlKTtcbiAgICByZXR1cm4gbG9hZEZlYXR1cmVGbGFnc0Zyb21FbnZpcm9ubWVudChlbnZpcm9ubWVudCk7XG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgRmVhdHVyZUZsYWdSZWFkZXJDb25zdHJ1Y3RvciA9IG5ldyAoKSA9PiBGZWF0dXJlRmxhZ1JlYWRlcjtcbmV4cG9ydCB0eXBlIEZlYXR1cmVGbGFnUmVhZGVyTGlrZSA9XG4gIHwgRmVhdHVyZUZsYWdSZWFkZXJcbiAgfCBGZWF0dXJlRmxhZ1JlYWRlckNvbnN0cnVjdG9yO1xuIl19
19
+ //# sourceMappingURL=FeatureFlagReader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FeatureFlagReader.js","sourceRoot":"","sources":["../../../../src/feature-flags/readers/FeatureFlagReader.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,GACtB,0BAAqB;AACtB,OAAO,EACL,+BAA+B,GAChC,4BAAuB;AAOxB,OAAO,EAAE,oBAAoB,EAAE,sBAAiB;AAEhD,MAAM,OAAgB,iBAAiB;IAKrC,KAAK,CAAC,OAAO,CACX,WAAmB,EACnB,KAA8B;QAE9B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxC,OAAO,QAAQ,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,CAAC;IACrD,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,iBAAiB;IACxD,KAAK,CAAC,IAAI,CACR,QAAgC,EAAE;QAElC,MAAM,WAAW,GACd,KAAK,CAAC,MAAkD;YACxD;gBACC,CAAC,qBAAqB,CAAC,EAAE,EAAE;aACI,CAAC;QACpC,OAAO,+BAA+B,CAAC,WAAW,CAAC,CAAC;IACtD,CAAC;CACF"}
@@ -1,2 +1,2 @@
1
1
  export * from "./FeatureFlagReader.js";
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZmVhdHVyZS1mbGFncy9yZWFkZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVDQUFvQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL0ZlYXR1cmVGbGFnUmVhZGVyXCI7XG5cbiJdfQ==
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/feature-flags/readers/index.ts"],"names":[],"mappings":"AAAA,uCAAoC"}
@@ -57,6 +57,7 @@ let FeatureFlagService = class FeatureFlagService extends ModelService {
57
57
  ...options,
58
58
  source: options.source ?? FeatureFlagEnvironment,
59
59
  });
60
+ // eslint-disable-next-line no-useless-assignment
60
61
  let persisted = [];
61
62
  try {
62
63
  persisted = await this.repo.select().execute(...args);
@@ -255,4 +256,4 @@ FeatureFlagService = __decorate([
255
256
  __metadata("design:paramtypes", [])
256
257
  ], FeatureFlagService);
257
258
  export { FeatureFlagService };
258
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmVhdHVyZUZsYWcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9mZWF0dXJlLWZsYWdzL3NlcnZpY2VzL0ZlYXR1cmVGbGFnLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osVUFBVSxFQUNWLFVBQVUsRUFDVixPQUFPLEdBQ1IsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLDRCQUF1QjtBQUN4RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsK0NBQTBDO0FBQ3RFLE9BQU8sRUFBRSxXQUFXLEVBQUUseUNBQW9DO0FBQzFELE9BQU8sRUFDTCxtQkFBbUIsR0FHcEIsOEJBQW1CO0FBVXBCLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsMEJBQTBCLEVBQzFCLG9CQUFvQixHQUNyQixzQkFBaUI7QUFDbEIsT0FBTyxFQUNMLDBCQUEwQixFQUMxQiwyQkFBMkIsR0FDNUIsc0JBQWlCO0FBUVgsSUFBTSxrQkFBa0IsR0FBeEIsTUFBTSxrQkFBbUIsU0FBUSxZQUF5QjtJQU0vRDtRQUNFLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQU5iLFdBQU0sR0FBc0IsSUFBSSxtQkFBbUIsRUFBRSxDQUFDO1FBQ3RELG1CQUFjLEdBQXdCLEVBQUUsQ0FBQztJQU1qRCxDQUFDO0lBRUQsS0FBSyxDQUFDLFVBQVUsQ0FDZCxHQUFHLElBQVc7UUFFZCxNQUFNLE1BQU0sR0FBSSxJQUFJLENBQUMsQ0FBQyxDQUEwQyxJQUFJLEVBQUUsQ0FBQztRQUN2RSxJQUFJLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFpQixDQUFDO1FBQzlDLENBQUM7UUFDRCxJQUFJLENB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QUFFLGFBQWE7b0JBQ2xCLE9BQU8sRUFBRSxvQkFBb0IsQ0FBQyxLQUFLLENBQUM7b0JBQ3BDLFdBQVcsRUFBRSxVQUFVLENBQUMsV0FBVztvQkFDbkMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxLQUFLO29CQUN2QixRQUFRLEVBQUUsVUFBVSxDQUFDLFFBQVE7b0JBQzdCLE1BQU0sRUFBRTt3QkFDTixHQUFHLFVBQVU7d0JBQ2IsT0FBTyxFQUFFLG9CQUFvQixDQUFDLEtBQUssQ0FBQztxQkFDckM7aUJBQ0YsQ0FBQyxDQUFDO1lBQ1AsT0FBTyxDQUFDLElBQUksQ0FDVixRQUFRO2dCQUNOLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDO2dCQUNuQyxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQyxDQUN0QyxDQUFDO1FBQ0osQ0FBQztRQUNELElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxJQUFJLENBQUMscUJBQXFCLENBQ3BEO1lBQ0UsR0FBRyxPQUFPO1lBQ1YsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNLElBQUksc0JBQXNCO1NBQ2pELEVBQ0QsR0FBRyxJQUFJLENBQ1IsQ0FBQztRQUNGLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7Q0FDRixDQUFBO0FBaFZXO0lBRFQsVUFBVSxDQUFDLGlCQUFpQixDQUFDOzs0REFDdUI7QUFKMUMsa0JBQWtCO0lBRDlCLE9BQU8sQ0FBQyxXQUFXLENBQUM7O0dBQ1Isa0JBQWtCLENBb1Y5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbmRpdGlvbixcbiAgTW9kZWxTZXJ2aWNlLFxuICBSZXBvc2l0b3J5LFxuICByZXBvc2l0b3J5LFxuICBzZXJ2aWNlLFxufSBmcm9tIFwiQGRlY2FmLXRzL2NvcmVcIjtcbmltcG9ydCB0eXBlIHsgUmVwbyB9IGZyb20gXCJAZGVjYWYtdHMvY29yZVwiO1xuaW1wb3J0IHsgTm90Rm91bmRFcnJvciB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgRmVhdHVyZUZsYWdFbnZpcm9ubWVudCB9IGZyb20gXCIuLi9lbnZpcm9ubWVudFwiO1xuaW1wb3J0IHsgRmVhdHVyZUZsYWdBY2Nlc3MgfSBmcm9tIFwiLi4vbW9kZWxzL0ZlYXR1cmVGbGFnQWNjZXNzLm1vZGVsXCI7XG5pbXBvcnQgeyBGZWF0dXJlRmxhZyB9IGZyb20gXCIuLi9tb2RlbHMvRmVhdHVyZUZsYWcubW9kZWxcIjtcbmltcG9ydCB7XG4gIEVudmlyb25tZUZsYWdSZWFkZXIsXG4gIEZlYXR1cmVGbGFnUmVhZGVyLFxuICBGZWF0dXJlRmxhZ1JlYWRlckxpa2UsXG59IGZyb20gXCIuLi9yZWFkZXJzXCI7XG5pbXBvcnQgdHlwZSB7XG4gIEZlYXR1cmVGbGFnQWNjZXNzSW5wdXQsXG4gIEZlYXR1cmVGbGFnQWNjZXNzUXVlcnksXG4gIEZlYXR1cmVGbGFnQWNjZXNzU3ViamVjdCxcbiAgRmVhdHVyZUZsYWdDb25maWcsXG4gIEZlYXR1cmVGbGFnUmVhZGVyQ29uZmlnLFxuICBGZWF0dXJlRmxhZ1JlYWRlcklucHV0LFxuICBGZWF0dXJlRmxhZ1JlZ2lzdHJ5LFxufSBmcm9tIFwiLi4vdHlwZXNcIjtcbmltcG9ydCB7XG4gIGlzRmVhdHVyZUZsYWdFbmFibGVkLFxuICBpc0ZlYXR1cmVGbGFnRW5hYmxlZEJ5TmFtZSxcbiAgbm9ybWFsaXplRmVhdHVyZU5hbWUsXG59IGZyb20gXCIuLi91dGlsc1wiO1xuaW1wb3J0IHtcbiAgbm9ybWFsaXplRmVhdHVyZVN1YmplY3RLZXksXG4gIG5vcm1hbGl6ZUZlYXR1cmVTdWJqZWN0VHlwZSxcbn0gZnJvbSBcIi4uL3V0aWxzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmVhdHVyZUZsYWdTZXJ2aWNlQ29uZmlnIGV4dGVuZHMgRmVhdHVyZUZsYWdSZWFkZXJDb25maWcge1xuICByZWFkZXI/OiBGZWF0dXJlRmxhZ1JlYWRlckxpa2U7XG4gIHJlcG9zaXRvcnk/OiBSZXBvc2l0b3J5PEZlYXR1cmVGbGFnLCBhbnk+O1xufVxuXG5Ac2VydmljZShGZWF0dXJlRmxhZylcbmV4cG9ydCBjbGFzcyBGZWF0dXJlRmxhZ1NlcnZpY2UgZXh0ZW5kcyBNb2RlbFNlcnZpY2U8RmVhdHVyZUZsYWc+IHtcbiAgcHJpdmF0ZSByZWFkZXI6IEZlYXR1cmVGbGFnUmVhZGVyID0gbmV3IEVudmlyb25tZUZsYWdSZWFkZXIoKTtcbiAgcHJpdmF0ZSBjYWNoZWRSZWdpc3RyeTogRmVhdHVyZUZsYWdSZWdpc3RyeSA9IHt9O1xuICBAcmVwb3NpdG9yeShGZWF0dXJlRmxhZ0FjY2VzcylcbiAgcHJvdGVjdGVkIGFjY2Vzc1JlcG9zaXRvcnkhOiBSZXBvPEZlYXR1cmVGbGFnQWNjZXNzPjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihGZWF0dXJlRmxhZyk7XG4gIH1cblxuICBhc3luYyBpbml0aWFsaXplKFxuICAgIC4uLmFyZ3M6IGFueVtdXG4gICk6IFByb21pc2U8eyBjb25maWc6IEZlYXR1cmVGbGFnU2VydmljZUNvbmZpZzsgY2xpZW50OiBGZWF0dXJlRmxhZ1JlYWRlciB9PiB7XG4gICAgY29uc3QgY29uZmlnID0gKGFyZ3NbMF0gYXMgRmVhdHVyZUZsYWdTZXJ2aWNlQ29uZmlnIHwgdW5kZWZpbmVkKSA/PyB7fTtcbiAgICBpZiAoY29uZmlnLnJlcG9zaXRvcnkpIHtcbiAgICAgIHRoaXMuX3JlcG9zaXRvcnkgPSBjb25maWcucmVwb3NpdG9yeSBhcyBhbnk7XG4gICAgfVxuICAgIHRoaXMucmVhZGVyID0gIWNvbmZpZy5yZWFkZXJcbiAgICAgID8gbmV3IEVudmlyb25tZUZsYWdSZWFkZXIoKVxuICAgICAgOiB0eXBlb2YgY29uZmlnLnJlYWRlciA9PT0gXCJmdW5jdGlvblwiXG4gICAgICAgID8gbmV3IGNvbmZpZy5yZWFkZXIoKVxuICAgICAgICA6IGNvbmZpZy5yZWFkZXI7XG4gICAgY29uc3QgcmVhZGVyQ29uZmlnID0ge1xuICAgICAgLi4uKGNvbmZpZy5yZWFkZXJDb25maWcgPz8ge30pLFxuICAgICAgc291cmNlOiBjb25maWcucmVhZGVyQ29uZmlnPy5zb3VyY2UgPz8gRmVhdHVyZUZsYWdFbnZpcm9ubWVudCxcbiAgICB9O1xuICAgIHRoaXMuY2FjaGVkUmVnaXN0cnkgPSBhd2FpdCB0aGlzLnJlZnJlc2hDYWNoZWRSZWdpc3RyeShcbiAgICAgIHJlYWRlckNvbmZpZyxcbiAgICAgIC4uLmFyZ3NcbiAgICApO1xuICAgIGNvbnN0IGVmZmVjdGl2ZUNvbmZpZzogRmVhdHVyZUZsYWdTZXJ2aWNlQ29uZmlnID0ge1xuICAgICAgLi4uY29uZmlnLFxuICAgICAgcmVhZGVyOiB0aGlzLnJlYWRlcixcbiAgICAgIHJlYWRlckNvbmZpZyxcbiAgICB9O1xuICAgIHJldHVybiB7IGNvbmZpZzogZWZmZWN0aXZlQ29uZmlnLCBjbGllbnQ6IHRoaXMucmVhZGVyIH07XG4gIH1cblxuICBwcml2YXRlIGNsb25lUmVnaXN0cnkocmVnaXN0cnk6IEZlYXR1cmVGbGFnUmVnaXN0cnkpOiBGZWF0dXJlRmxhZ1JlZ2lzdHJ5IHtcbiAgICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVnaXN0cnkpLnJlZHVjZSgoYWNjLCBba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgIGFjY1trZXldID1cbiAgICAgICAgdmFsdWUgJiYgdHlwZW9mIHZhbHVlID09PSBcIm9iamVjdFwiICYmICFBcnJheS5pc0FycmF5KHZhbHVlKVxuICAgICAgICAgID8gKHsgLi4uKHZhbHVlIGFzIEZlYXR1cmVGbGFnQ29uZmlnKSB9IGFzIEZlYXR1cmVGbGFnQ29uZmlnKVxuICAgICAgICAgIDogdmFsdWU7XG4gICAgICByZXR1cm4gYWNjO1xuICAgIH0sIHt9IGFzIEZlYXR1cmVGbGFnUmVnaXN0cnkpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyByZWZyZXNoQ2FjaGVkUmVnaXN0cnkoXG4gICAgb3B0aW9uczogRmVhdHVyZUZsYWdSZWFkZXJJbnB1dCA9IHt9LFxuICAgIC4uLmFyZ3M6IGFueVtdXG4gICk6IFByb21pc2U8RmVhdHVyZUZsYWdSZWdpc3RyeT4ge1xuICAgIGNvbnN0IGVudlJlZ2lzdHJ5ID0gYXdhaXQgdGhpcy5yZWFkZXIucmVhZCh7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgc291cmNlOiBvcHRpb25zLnNvdXJjZSA/PyBGZWF0dXJlRmxhZ0Vudmlyb25tZW50LFxuICAgIH0pO1xuICAgIGxldCBwZXJzaXN0ZWQ6IEZlYXR1cmVGbGFnW10gPSBbXTtcbiAgICB0cnkge1xuICAgICAgcGVyc2lzdGVkID0gYXdhaXQgdGhpcy5yZXBvLnNlbGVjdCgpLmV4ZWN1dGUoLi4uYXJncyk7XG4gICAgfSBjYXRjaCB7XG4gICAgICBwZXJzaXN0ZWQgPSBbXTtcbiAgICB9XG5cbiAgICBjb25zdCByZWdpc3RyeSA9IHRoaXMuY2xvbmVSZWdpc3RyeShlbnZSZWdpc3RyeSk7XG4gICAgZm9yIChjb25zdCBmbGFnIG9mIHBlcnNpc3RlZCkge1xuICAgICAgcmVnaXN0cnlbZmxhZy5rZXldID0gZmxhZy5lbmFibGVkID8gKGZsYWcuY29uZmlnID8/IHRydWUpIDogZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiByZWdpc3RyeTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Q2FjaGVkRmxhZyhmbGFnOiBGZWF0dXJlRmxhZyk6IHZvaWQge1xuICAgIHRoaXMuY2FjaGVkUmVnaXN0cnlbZmxhZy5rZXldID0gZmxhZy5lbmFibGVkXG4gICAgICA/IChmbGFnLmNvbmZpZyA/PyB0cnVlKVxuICAgICAgOiBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0QWNjZXNzUmVwb3NpdG9yeSgpOiBSZXBvPEZlYXR1cmVGbGFnQWNjZXNzPiB7XG4gICAgcmV0dXJuIHRoaXMuYWNjZXNzUmVwb3NpdG9yeSA/PyBSZXBvc2l0b3J5LmZvck1vZGVsKEZlYXR1cmVGbGFnQWNjZXNzKTtcbiAgfVxuXG4gIHByaXZhdGUgYXNzZXJ0SW5pdGlhbGl6ZWQoKTogdm9pZCB7XG4gICAgdm9pZCB0aGlzLnJlYWRlcjtcbiAgfVxuXG4gIHByaXZhdGUgbm9ybWFsaXplRmVhdHVyZUFjY2Vzc0lucHV0KFxuICAgIGlucHV0OiBGZWF0dXJlRmxhZ0FjY2Vzc0lucHV0XG4gICk6IEZlYXR1cmVGbGFnQWNjZXNzSW5wdXQge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5pbnB1dCxcbiAgICAgIGZlYXR1cmVLZXk6IG5vcm1hbGl6ZUZlYXR1cmVOYW1lKGlucHV0LmZlYXR1cmVLZXkpLFxuICAgICAgc3ViamVjdFR5cGU6IG5vcm1hbGl6ZUZlYXR1cmVTdWJqZWN0VHlwZShpbnB1dC5zdWJqZWN0VHlwZSksXG4gICAgICBzdWJqZWN0S2V5OiBub3JtYWxpemVGZWF0dXJlU3ViamVjdEtleShpbnB1dC5zdWJqZWN0S2V5KSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZEFjY2Vzc0NvbmRpdGlvbihcbiAgICBxdWVyeTogRmVhdHVyZUZsYWdBY2Nlc3NRdWVyeVxuICApOiBDb25kaXRpb248RmVhdHVyZUZsYWdBY2Nlc3M+IHtcbiAgICBsZXQgY29uZGl0aW9uID0gQ29uZGl0aW9uLmF0dHI8RmVhdHVyZUZsYWdBY2Nlc3M+KFwic3ViamVjdFR5cGVcIikuZXEoXG4gICAgICBub3JtYWxpemVGZWF0dXJlU3ViamVjdFR5cGUocXVlcnkuc3ViamVjdFR5cGUpXG4gICAgKTtcbiAgICBjb25kaXRpb24gPSBjb25kaXRpb24uYW5kKFxuICAgICAgQ29uZGl0aW9uLmF0dHI8RmVhdHVyZUZsYWdBY2Nlc3M+KFwic3ViamVjdEtleVwiKS5lcShcbiAgICAgICAgbm9ybWFsaXplRmVhdHVyZVN1YmplY3RLZXkocXVlcnkuc3ViamVjdEtleSlcbiAgICAgIClcbiAgICApO1xuICAgIGlmICh0eXBlb2YgcXVlcnkuZW5hYmxlZCAhPT0gXCJ1bmRlZmluZWRcIikge1xuICAgICAgY29uZGl0aW9uID0gY29uZGl0aW9uLmFuZChcbiAgICAgICAgQ29uZGl0aW9uLmF0dHI8RmVhdHVyZUZsYWdBY2Nlc3M+KFwiZW5hYmxlZFwiKS5lcShxdWVyeS5lbmFibGVkKVxuICAgICAgKTtcbiAgICB9XG4gICAgaWYgKHF1ZXJ5LmZlYXR1cmVLZXlzICYmIHF1ZXJ5LmZlYXR1cmVLZXlzLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbmRpdGlvbiA9IGNvbmRpdGlvbi5hbmQoXG4gICAgICAgIENvbmRpdGlvbi5hdHRyPEZlYXR1cmVGbGFnQWNjZXNzPihcImZlYXR1cmVLZXlcIikuaW4oXG4gICAgICAgICAgcXVlcnkuZmVhdHVyZUtleXMubWFwKG5vcm1hbGl6ZUZlYXR1cmVOYW1lKVxuICAgICAgICApXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gY29uZGl0aW9uO1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgY3JlYXRlKFxuICAgIG1vZGVsOiBGZWF0dXJlRmxhZyxcbiAgICAuLi5hcmdzOiBhbnlbXVxuICApOiBQcm9taXNlPEZlYXR1cmVGbGFnPiB7XG4gICAgbW9kZWwua2V5ID0gbm9ybWFsaXplRmVhdHVyZU5hbWUobW9kZWwua2V5KTtcbiAgICBtb2RlbC5lbmFibGVkID8/PSB0cnVlO1xuICAgIGNvbnN0IGNyZWF0ZWQgPSBhd2FpdCBzdXBlci5jcmVhdGUobW9kZWwsIC4uLmFyZ3MpO1xuICAgIHRoaXMuc2V0Q2FjaGVkRmxhZyhjcmVhdGVkKTtcbiAgICByZXR1cm4gY3JlYXRlZDtcbiAgfVxuXG4gIG92ZXJyaWRlIGFzeW5jIHVwZGF0ZShcbiAgICBtb2RlbDogRmVhdHVyZUZsYWcsXG4gICAgLi4uYXJnczogYW55W11cbiAgKTogUHJvbWlzZTxGZWF0dXJlRmxhZz4ge1xuICAgIG1vZGVsLmtleSA9IG5vcm1hbGl6ZUZlYXR1cmVOYW1lKG1vZGVsLmtleSk7XG4gICAgbW9kZWwuZW5hYmxlZCA/Pz0gdHJ1ZTtcbiAgICBjb25zdCB1cGRhdGVkID0gYXdhaXQgc3VwZXIudXBkYXRlKG1vZGVsLCAuLi5hcmdzKTtcbiAgICB0aGlzLnNldENhY2hlZEZsYWcodXBkYXRlZCk7XG4gICAgcmV0dXJuIHVwZGF0ZWQ7XG4gIH1cblxuICBvdmVycmlkZSBhc3luYyBmaW5kT25lQnkoXG4gICAga2V5OiBrZXlvZiBGZWF0dXJlRmxhZyxcbiAgICB2YWx1ZTogYW55LFxuICAgIC4uLmFyZ3M6IGFueVtdXG4gICk6IFByb21pc2U8RmVhdHVyZUZsYWc+IHtcbiAgICBjb25zdCBub3JtYWxpemVkVmFsdWUgPVxuICAgICAga2V5ID09PSBcImtleVwiICYmIHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIlxuICAgICAgICA/IG5vcm1hbGl6ZUZlYXR1cmVOYW1lKHZhbHVlKVxuICAgICAgICA6IHZhbHVlO1xuICAgIHJldHVybiB0aGlzLnJlcG8uZmluZE9uZUJ5KGtleSwgbm9ybWFsaXplZFZhbHVlLCAuLi5hcmdzKTtcbiAgfVxuXG4gIG92ZXJyaWRlIGFzeW5jIHJlYWRBbGwoa2V5czogYW55W10sIC4uLmFyZ3M6IGFueVtdKTogUHJvbWlzZTxGZWF0dXJlRmxhZ1tdPiB7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5yZXBvLnJlYWRBbGwoa2V5cywgLi4uYXJncyk7XG4gICAgZm9yIChjb25zdCBmbGFnIG9mIHJlc3VsdCkgdGhpcy5zZXRDYWNoZWRGbGFnKGZsYWcpO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBhc3luYyBsaXN0RW5hYmxlZCguLi5hcmdzOiBhbnlbXSk6IFByb21pc2U8RmVhdHVyZUZsYWdbXT4ge1xuICAgIHJldHVybiB0aGlzLnJlcG9cbiAgICAgIC5zZWxlY3QoKVxuICAgICAgLndoZXJlKENvbmRpdGlvbi5hdHRyPEZlYXR1cmVGbGFnPihcImVuYWJsZWRcIikuZXEodHJ1ZSkpXG4gICAgICAuZXhlY3V0ZSguLi5hcmdzKTtcbiAgfVxuXG4gIGFzeW5jIGdyYW50RmVhdHVyZUFjY2VzcyhcbiAgICBpbnB1dDogRmVhdHVyZUZsYWdBY2Nlc3NJbnB1dCxcbiAgICAuLi5hcmdzOiBhbnlbXVxuICApOiBQcm9taXNlPEZlYXR1cmVGbGFnQWNjZXNzPiB7XG4gICAgY29uc3Qgbm9ybWFsaXplZCA9IHRoaXMubm9ybWFsaXplRmVhdHVyZUFjY2Vzc0lucHV0KGlucHV0KTtcbiAgICBjb25zdCBleGlzdGluZyA9IGF3YWl0IHRoaXMuZmluZEZlYXR1cmVBY2Nlc3Mobm9ybWFsaXplZCwgLi4uYXJncykuY2F0Y2goXG4gICAgICAoKSA9PiB1bmRlZmluZWRcbiAgICApO1xuICAgIGlmICghZXhpc3RpbmcpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldEFjY2Vzc1JlcG9zaXRvcnkoKS5jcmVhdGUoXG4gICAgICAgIG5ldyBGZWF0dXJlRmxhZ0FjY2Vzcyhub3JtYWxpemVkKSxcbiAgICAgICAgLi4uYXJnc1xuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZ2V0QWNjZXNzUmVwb3NpdG9yeSgpLnVwZGF0ZShcbiAgICAgIE9iamVjdC5hc3NpZ24oZXhpc3RpbmcsIG5vcm1hbGl6ZWQpLFxuICAgICAgLi4uYXJnc1xuICAgICk7XG4gIH1cblxuICBhc3luYyByZXZva2VGZWF0dXJlQWNjZXNzKFxuICAgIGlucHV0OiBGZWF0dXJlRmxhZ0FjY2Vzc1N1YmplY3QgJiB7IGZlYXR1cmVLZXk6IHN0cmluZyB9LFxuICAgIC4uLmFyZ3M6IGFueVtdXG4gICk6IFByb21pc2U8RmVhdHVyZUZsYWdBY2Nlc3MgfCB1bmRlZmluZWQ+IHtcbiAgICBjb25zdCBleGlzdGluZyA9IGF3YWl0IHRoaXMuZmluZEZlYXR1cmVBY2Nlc3MoaW5wdXQsIC4uLmFyZ3MpLmNhdGNoKFxuICAgICAgKCkgPT4gdW5kZWZpbmVkXG4gICAgKTtcbiAgICBpZiAoIWV4aXN0aW5nKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIHJldHVybiB0aGlzLmdldEFjY2Vzc1JlcG9zaXRvcnkoKS5kZWxldGUoZXhpc3RpbmcuaWQsIC4uLmFyZ3MpO1xuICB9XG5cbiAgYXN5bmMgZmluZEZlYXR1cmVBY2Nlc3MoXG4gICAgcXVlcnk6IEZlYXR1cmVGbGFnQWNjZXNzUXVlcnksXG4gICAgLi4uYXJnczogYW55W11cbiAgKTogUHJvbWlzZTxGZWF0dXJlRmxhZ0FjY2Vzcz4ge1xuICAgIGNvbnN0IGNvbmRpdGlvbiA9IHRoaXMuYnVpbGRBY2Nlc3NDb25kaXRpb24ocXVlcnkpO1xuICAgIGNvbnN0IHJlc3VsdHMgPSBhd2FpdCB0aGlzLmdldEFjY2Vzc1JlcG9zaXRvcnkoKVxuICAgICAgLnNlbGVjdCgpXG4gICAgICAud2hlcmUoY29uZGl0aW9uKVxuICAgICAgLmV4ZWN1dGUoLi4uYXJncyk7XG4gICAgY29uc3QgZXhpc3RpbmcgPSByZXN1bHRzWzBdO1xuICAgIGlmICghZXhpc3RpbmcpIHtcbiAgICAgIHRocm93IG5ldyBOb3RGb3VuZEVycm9yKFxuICAgICAgICBgRmVhdHVyZSBhY2Nlc3MgZm9yICR7bm9ybWFsaXplRmVhdHVyZVN1YmplY3RUeXBlKHF1ZXJ5LnN1YmplY3RUeXBlKX06JHtub3JtYWxpemVGZWF0dXJlU3ViamVjdEtleShxdWVyeS5zdWJqZWN0S2V5KX0gbm90IGZvdW5kYFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIGV4aXN0aW5nO1xuICB9XG5cbiAgYXN5bmMgbGlzdEZlYXR1cmVBY2Nlc3MoXG4gICAgcXVlcnk6IEZlYXR1cmVGbGFnQWNjZXNzUXVlcnksXG4gICAgLi4uYXJnczogYW55W11cbiAgKTogUHJvbWlzZTxGZWF0dXJlRmxhZ0FjY2Vzc1tdPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QWNjZXNzUmVwb3NpdG9yeSgpXG4gICAgICAuc2VsZWN0KClcbiAgICAgIC53aGVyZSh0aGlzLmJ1aWxkQWNjZXNzQ29uZGl0aW9uKHF1ZXJ5KSlcbiAgICAgIC5leGVjdXRlKC4uLmFyZ3MpO1xuICB9XG5cbiAgYXN5bmMgcmVzb2x2ZUZlYXR1cmVGbGFnc0ZvclN1YmplY3QoXG4gICAgc3ViamVjdDogRmVhdHVyZUZsYWdBY2Nlc3NTdWJqZWN0LFxuICAgIC4uLmFyZ3M6IGFueVtdXG4gICk6IFByb21pc2U8RmVhdHVyZUZsYWdSZWdpc3RyeT4ge1xuICAgIHRoaXMuYXNzZXJ0SW5pdGlhbGl6ZWQoKTtcbiAgICBjb25zdCBhY2Nlc3MgPSBhd2FpdCB0aGlzLmxpc3RGZWF0dXJlQWNjZXNzKFxuICAgICAge1xuICAgICAgICAuLi5zdWJqZWN0LFxuICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIC4uLmFyZ3NcbiAgICApO1xuICAgIGNvbnN0IGZlYXR1cmVLZXlzID0gWy4uLm5ldyBTZXQoYWNjZXNzLm1hcCgoaXRlbSkgPT4gaXRlbS5mZWF0dXJlS2V5KSldO1xuICAgIGlmIChmZWF0dXJlS2V5cy5sZW5ndGggPT09IDApIHJldHVybiB7fTtcblxuICAgIGNvbnN0IGNvbmRpdGlvbiA9IENvbmRpdGlvbi5hdHRyPEZlYXR1cmVGbGFnPihcImVuYWJsZWRcIilcbiAgICAgIC5lcSh0cnVlKVxuICAgICAgLmFuZChcbiAgICAgICAgQ29uZGl0aW9uLmF0dHI8RmVhdHVyZUZsYWc+KFwia2V5XCIpLmluKFxuICAgICAgICAgIGZlYXR1cmVLZXlzLm1hcChub3JtYWxpemVGZWF0dXJlTmFtZSlcbiAgICAgICAgKVxuICAgICAgKTtcblxuICAgIGNvbnN0IGVuYWJsZWRGbGFncyA9IGF3YWl0IHRoaXMucmVwb1xuICAgICAgLnNlbGVjdCgpXG4gICAgICAud2hlcmUoY29uZGl0aW9uKVxuICAgICAgLmV4ZWN1dGUoLi4uYXJncyk7XG4gICAgcmV0dXJuIGVuYWJsZWRGbGFncy5yZWR1Y2UoKHJlZ2lzdHJ5LCBmbGFnKSA9PiB7XG4gICAgICByZWdpc3RyeVtmbGFnLmtleV0gPSBmbGFnLmNvbmZpZyA/PyB0cnVlO1xuICAgICAgcmV0dXJuIHJlZ2lzdHJ5O1xuICAgIH0sIHt9IGFzIEZlYXR1cmVGbGFnUmVnaXN0cnkpO1xuICB9XG5cbiAgYXN5bmMgaXNFbmFibGVkRm9yU3ViamVjdChcbiAgICBrZXk6IHN0cmluZyxcbiAgICBzdWJqZWN0OiBGZWF0dXJlRmxhZ0FjY2Vzc1N1YmplY3QsXG4gICAgLi4uYXJnczogYW55W11cbiAgKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgcmVnaXN0cnkgPSBhd2FpdCB0aGlzLnJlc29sdmVGZWF0dXJlRmxhZ3NGb3JTdWJqZWN0KHN1YmplY3QsIC4uLmFyZ3MpO1xuICAgIHJldHVybiBpc0ZlYXR1cmVGbGFnRW5hYmxlZEJ5TmFtZShyZWdpc3RyeSwga2V5KTtcbiAgfVxuXG4gIGlzRW5hYmxlZChrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHRoaXMuYXNzZXJ0SW5pdGlhbGl6ZWQoKTtcbiAgICBjb25zdCBub3JtYWxpemVkS2V5ID0gbm9ybWFsaXplRmVhdHVyZU5hbWUoa2V5KTtcbiAgICByZXR1cm4gaXNGZWF0dXJlRmxhZ0VuYWJsZWRCeU5hbWUodGhpcy5jYWNoZWRSZWdpc3RyeSwgbm9ybWFsaXplZEtleSk7XG4gIH1cblxuICBhc3luYyByZXNvbHZlRmVhdHVyZUZsYWdzKCk6IFByb21pc2U8RmVhdHVyZUZsYWdSZWdpc3RyeT4ge1xuICAgIHRoaXMuYXNzZXJ0SW5pdGlhbGl6ZWQoKTtcbiAgICByZXR1cm4gdGhpcy5jbG9uZVJlZ2lzdHJ5KHRoaXMuY2FjaGVkUmVnaXN0cnkpO1xuICB9XG5cbiAgYXN5bmMgc3luY0Zyb21FbnZpcm9ubWVudChcbiAgICBvcHRpb25zOiBGZWF0dXJlRmxhZ1JlYWRlcklucHV0ID0ge30sXG4gICAgLi4uYXJnczogYW55W11cbiAgKTogUHJvbWlzZTxGZWF0dXJlRmxhZ1tdPiB7XG4gICAgdGhpcy5hc3NlcnRJbml0aWFsaXplZCgpO1xuICAgIGNvbnN0IHJlZ2lzdHJ5ID0gYXdhaXQgdGhpcy5yZWFkZXIucmVhZCh7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgc291cmNlOiBvcHRpb25zLnNvdXJjZSA/PyBGZWF0dXJlRmxhZ0Vudmlyb25tZW50LFxuICAgIH0pO1xuICAgIGNvbnN0IHJlc3VsdHM6IEZlYXR1cmVGbGFnW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhyZWdpc3RyeSkpIHtcbiAgICAgIGNvbnN0IGNvbmZpZyA9XG4gICAgICAgIHZhbHVlICYmIHR5cGVvZiB2YWx1ZSA9PT0gXCJvYmplY3RcIiAmJiAhQXJyYXkuaXNBcnJheSh2YWx1ZSlcbiAgICAgICAgICA/ICh2YWx1ZSBhcyBGZWF0dXJlRmxhZ0NvbmZpZylcbiAgICAgICAgICA6IHsgZW5hYmxlZDogQm9vbGVhbih2YWx1ZSkgfTtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICAgIGNvbnN0IHsgZW5hYmxlZDogX2lnbm9yZWRFbmFibGVkLCAuLi5yZXN0Q29uZmlnIH0gPSBjb25maWc7XG4gICAgICBjb25zdCBub3JtYWxpemVkS2V5ID0gbm9ybWFsaXplRmVhdHVyZU5hbWUoa2V5KTtcbiAgICAgIGNvbnN0IGV4aXN0aW5nID0gYXdhaXQgdGhpcy5maW5kT25lQnkoXG4gICAgICAgIFwia2V5XCIsXG4gICAgICAgIG5vcm1hbGl6ZWRLZXksXG4gICAgICAgIC4uLmFyZ3NcbiAgICAgICkuY2F0Y2goKCkgPT4gdW5kZWZpbmVkKTtcbiAgICAgIGNvbnN0IG1vZGVsID0gZXhpc3RpbmdcbiAgICAgICAgPyBPYmplY3QuYXNzaWduKGV4aXN0aW5nLCB7XG4gICAgICAgICAgICBlbmFibGVkOiBpc0ZlYXR1cmVGbGFnRW5hYmxlZCh2YWx1ZSksXG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogcmVzdENvbmZpZy5kZXNjcmlwdGlvbiA/PyBleGlzdGluZy5kZXNjcmlwdGlvbixcbiAgICAgICAgICAgIHNjb3BlOiByZXN0Q29uZmlnLnNjb3BlID8/IGV4aXN0aW5nLnNjb3BlLFxuICAgICAgICAgICAgbWV0YWRhdGE6IHJlc3RDb25maWcubWV0YWRhdGEgPz8gZXhpc3RpbmcubWV0YWRhdGEsXG4gICAgICAgICAgICBjb25maWc6IHtcbiAgICAgICAgICAgICAgLi4ucmVzdENvbmZpZyxcbiAgICAgICAgICAgICAgZW5hYmxlZDogaXNGZWF0dXJlRmxhZ0VuYWJsZWQodmFsdWUpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KVxuICAgICAgICA6IG5ldyBGZWF0dXJlRmxhZyh7XG4gICAgICAgICAgICBrZXk6IG5vcm1hbGl6ZWRLZXksXG4gICAgICAgICAgICBlbmFibGVkOiBpc0ZlYXR1cmVGbGFnRW5hYmxlZCh2YWx1ZSksXG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogcmVzdENvbmZpZy5kZXNjcmlwdGlvbixcbiAgICAgICAgICAgIHNjb3BlOiByZXN0Q29uZmlnLnNjb3BlLFxuICAgICAgICAgICAgbWV0YWRhdGE6IHJlc3RDb25maWcubWV0YWRhdGEsXG4gICAgICAgICAgICBjb25maWc6IHtcbiAgICAgICAgICAgICAgLi4ucmVzdENvbmZpZyxcbiAgICAgICAgICAgICAgZW5hYmxlZDogaXNGZWF0dXJlRmxhZ0VuYWJsZWQodmFsdWUpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KTtcbiAgICAgIHJlc3VsdHMucHVzaChcbiAgICAgICAgZXhpc3RpbmdcbiAgICAgICAgICA/IGF3YWl0IHRoaXMudXBkYXRlKG1vZGVsLCAuLi5hcmdzKVxuICAgICAgICAgIDogYXdhaXQgdGhpcy5jcmVhdGUobW9kZWwsIC4uLmFyZ3MpXG4gICAgICApO1xuICAgIH1cbiAgICB0aGlzLmNhY2hlZFJlZ2lzdHJ5ID0gYXdhaXQgdGhpcy5yZWZyZXNoQ2FjaGVkUmVnaXN0cnkoXG4gICAgICB7XG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgIHNvdXJjZTogb3B0aW9ucy5zb3VyY2UgPz8gRmVhdHVyZUZsYWdFbnZpcm9ubWVudCxcbiAgICAgIH0sXG4gICAgICAuLi5hcmdzXG4gICAgKTtcbiAgICByZXR1cm4gcmVzdWx0cztcbiAgfVxufVxuIl19
259
+ //# sourceMappingURL=FeatureFlag.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FeatureFlag.service.js","sourceRoot":"","sources":["../../../../src/feature-flags/services/FeatureFlag.service.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZmVhdHVyZS1mbGFncy90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgRmVhdHVyZUZsYWdNYXRjaE1vZGUgPSBcImFueVwiIHwgXCJhbGxcIjtcbmV4cG9ydCB0eXBlIEZlYXR1cmVGbGFnQWNjZXNzU3ViamVjdFR5cGUgPVxuICB8IFwidXNlclwiXG4gIHwgXCJhY2NvdW50XCJcbiAgfCBcIm5hbWVzcGFjZVwiXG4gIHwgXCJtb2RlbFwiXG4gIHwgXCJyb3V0ZVwiXG4gIHwgXCJ1aVwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZlYXR1cmVGbGFnUnVsZSB7XG4gIGZlYXR1cmVzOiBzdHJpbmdbXTtcbiAgbWF0Y2g/OiBGZWF0dXJlRmxhZ01hdGNoTW9kZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGZWF0dXJlRmxhZ0NvbmZpZyB7XG4gIGVuYWJsZWQ/OiBib29sZWFuO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgbWV0YWRhdGE/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgc2NvcGU/OiBzdHJpbmc7XG4gIHRhcmdldHM/OiBzdHJpbmdbXTtcbiAgW2tleTogc3RyaW5nXTogdW5rbm93bjtcbn1cblxuZXhwb3J0IHR5cGUgRmVhdHVyZUZsYWdWYWx1ZSA9IGJvb2xlYW4gfCBGZWF0dXJlRmxhZ0NvbmZpZztcblxuZXhwb3J0IHR5cGUgRmVhdHVyZUZsYWdSZWdpc3RyeSA9IFJlY29yZDxzdHJpbmcsIEZlYXR1cmVGbGFnVmFsdWU+O1xuXG5leHBvcnQgaW50ZXJmYWNlIEZlYXR1cmVGbGFnRW52aXJvbm1lbnRTaGFwZSB7XG4gIGZlYXR1cmVGbGFnPzogRmVhdHVyZUZsYWdSZWdpc3RyeTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGZWF0dXJlRmxhZ0FjY2Vzc1N1YmplY3Qge1xuICBzdWJqZWN0VHlwZTogRmVhdHVyZUZsYWdBY2Nlc3NTdWJqZWN0VHlwZTtcbiAgc3ViamVjdEtleTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZlYXR1cmVGbGFnQWNjZXNzSW5wdXQgZXh0ZW5kcyBGZWF0dXJlRmxhZ0FjY2Vzc1N1YmplY3Qge1xuICBmZWF0dXJlS2V5OiBzdHJpbmc7XG4gIGVuYWJsZWQ/OiBib29sZWFuO1xuICBtZXRhZGF0YT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZlYXR1cmVGbGFnQWNjZXNzUXVlcnkgZXh0ZW5kcyBGZWF0dXJlRmxhZ0FjY2Vzc1N1YmplY3Qge1xuICBmZWF0dXJlS2V5cz86IHN0cmluZ1tdO1xuICBlbmFibGVkPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGZWF0dXJlRmxhZ1JlYWRlcklucHV0IHtcbiAgc291cmNlPzogRmVhdHVyZUZsYWdFbnZpcm9ubWVudFNoYXBlIHwgdW5rbm93bjtcbiAgW2tleTogc3RyaW5nXTogdW5rbm93bjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGZWF0dXJlRmxhZ1JlYWRlckNvbmZpZyB7XG4gIHJlYWRlckNvbmZpZz86IEZlYXR1cmVGbGFnUmVhZGVySW5wdXQ7XG59XG4iXX0=
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/feature-flags/types.ts"],"names":[],"mappings":""}
@@ -123,4 +123,4 @@ export function normalizeFeatureSubjectType(subjectType) {
123
123
  export function normalizeFeatureSubjectKey(subjectKey) {
124
124
  return subjectKey.trim();
125
125
  }
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZmVhdHVyZS1mbGFncy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFVaEQsTUFBTSxVQUFVLG9CQUFvQixDQUFDLElBQVk7SUFDL0MsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVCLElBQUksQ0FBQyxPQUFPO1FBQUUsT0FBTyxPQUFPLENBQUM7SUFDN0IsSUFBSSxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQUUsT0FBTyxPQUFPLENBQUM7SUFDeEQsTUFBTSxTQUFTLEdBQUcsT0FBTztTQUN0QixXQUFXLEVBQUU7U0FDYixPQUFPLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQztTQUN6QixLQUFLLENBQUMsR0FBRyxDQUFDO1NBQ1YsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ25CLElBQUksU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDO1FBQUUsT0FBTyxPQUFPLENBQUM7SUFDM0MsTUFBTSxDQUFDLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxHQUFHLFNBQVMsQ0FBQztJQUNsQyxPQUFPO1FBQ0wsSUFBSTtRQUNKLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQ3RCLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQ3ZFO0tBQ0Y7U0FDRSxJQUFJLENBQUMsRUFBRSxDQUFDO1NBQ1IsT0FBTyxDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUNsQyxDQUFDO0FBRUQsTUFBTSxVQUFVLGlCQUFpQixDQUFD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LENBQUMsV0FBVyxFQUFrQyxDQUFDO0FBQzFFLENBQUM7QUFFRCxNQUFNLFVBQVUsMEJBQTBCLENBQUMsVUFBa0I7SUFDM0QsT0FBTyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7QUFDM0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1ldGFkYXRhIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0aW9uXCI7XG5pbXBvcnQge1xuICBGZWF0dXJlRmxhZ0NvbmZpZyxcbiAgRmVhdHVyZUZsYWdBY2Nlc3NTdWJqZWN0VHlwZSxcbiAgRmVhdHVyZUZsYWdNYXRjaE1vZGUsXG4gIEZlYXR1cmVGbGFnUmVnaXN0cnksXG4gIEZlYXR1cmVGbGFnUnVsZSxcbiAgRmVhdHVyZUZsYWdWYWx1ZSxcbn0gZnJvbSBcIi4vdHlwZXNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIG5vcm1hbGl6ZUZlYXR1cmVOYW1lKG5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IHRyaW1tZWQgPSBuYW1lLnRyaW0oKTtcbiAgaWYgKCF0cmltbWVkKSByZXR1cm4gdHJpbW1lZDtcbiAgaWYgKC9eW2Etel1bYS16QS1aMC05XSokLy50ZXN0KHRyaW1tZWQpKSByZXR1cm4gdHJpbW1lZDtcbiAgY29uc3QgY2FtZWxpemVkID0gdHJpbW1lZFxuICAgIC50b0xvd2VyQ2FzZSgpXG4gICAgLnJlcGxhY2UoL1tfXFwtXFxzXSsvZywgXCIgXCIpXG4gICAgLnNwbGl0KFwiIFwiKVxuICAgIC5maWx0ZXIoQm9vbGVhbik7XG4gIGlmIChjYW1lbGl6ZWQubGVuZ3RoID09PSAwKSByZXR1cm4gdHJpbW1lZDtcbiAgY29uc3QgW2hlYWQsIC4uLnRhaWxdID0gY2FtZWxpemVkO1xuICByZXR1cm4gW1xuICAgIGhlYWQsXG4gICAgLi4udGFpbC5tYXAoKHNlZ21lbnQpID0+XG4gICAgICBzZWdtZW50ID8gc2VnbWVudC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHNlZ21lbnQuc2xpY2UoMSkgOiBzZWdtZW50XG4gICAgKSxcbiAgXVxuICAgIC5qb2luKFwiXCIpXG4gICAgLnJlcGxhY2UoL1teYS16QS1aMC05XS9nLCBcIlwiKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlUnVudGltZVZhbHVlKHZhbHVlOiB1bmtub3duKTogdW5rbm93biB7XG4gIGlmICh0eXBlb2YgdmFsdWUgIT09IFwic3RyaW5nXCIpIHJldHVybiB2YWx1ZTtcbiAgY29uc3QgdHJpbW1lZCA9IHZhbHVlLnRyaW0oKTtcbiAgaWYgKHRyaW1tZWQgPT09IFwidHJ1ZVwiKSByZXR1cm4gdHJ1ZTtcbiAgaWYgKHRyaW1tZWQgPT09IFwiZmFsc2VcIikgcmV0dXJuIGZhbHNlO1xuICBpZiAoL14tP1xcZCsoXFwuXFxkKyk/JC8udGVzdCh0cmltbWVkKSkgcmV0dXJuIE51bWJlcih0cmltbWVkKTtcbiAgaWYgKFxuICAgICh0cmltbWVkLnN0YXJ0c1dpdGgoXCJ7XCIpICYmIHRyaW1tZWQuZW5kc1dpdGgoXCJ9XCIpKSB8fFxuICAgICh0cmltbWVkLnN0YXJ0c1dpdGgoXCJbXCIpICYmIHRyaW1tZWQuZW5kc1dpdGgoXCJdXCIpKVxuICApIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIEpTT04ucGFyc2UodHJpbW1lZCk7XG4gICAgfSBjYXRjaCB7XG4gICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxuICB9XG4gIHJldHVybiB2YWx1ZTtcbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplT2JqZWN0S2V5KGtleTogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKCFrZXkpIHJldHVybiBrZXk7XG4gIGlmICgvXlthLXpdW2EtekEtWjAtOV0qJC8udGVzdChrZXkpKSByZXR1cm4ga2V5O1xuICBjb25zdCBub3JtYWxpemVkID0ga2V5XG4gICAgLnJlcGxhY2UoL1tcXHMtXSsvZywgXCJfXCIpXG4gICAgLnNwbGl0KFwiX1wiKVxuICAgIC5maWx0ZXIoQm9vbGVhbik7XG4gIGlmIChub3JtYWxpemVkLmxlbmd0aCA9PT0gMCkgcmV0dXJuIGtleTtcbiAgY29uc3QgW2hlYWQsIC4uLnRhaWxdID0gbm9ybWFsaXplZDtcbiAgcmV0dXJuIFtcbiAgICBoZWFkLnRvTG93ZXJDYXNlKCksXG4gICAgLi4udGFpbC5tYXAoXG4gICAgICAoc2VnbWVudCkgPT5cbiAgICAgICAgc2VnbWVudC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHNlZ21lbnQuc2xpY2UoMSkudG9Mb3dlckNhc2UoKVxuICAgICksXG4gIF0uam9pbihcIlwiKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vcm1hbGl6ZUZlYXR1cmVDb25maWcoXG4gIHZhbHVlOiB1bmtub3duXG4pOiBGZWF0dXJlRmxhZ1ZhbHVlIHwgdW5kZWZpbmVkIHtcbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJ1bmRlZmluZWRcIikgcmV0dXJuIHVuZGVmaW5lZDtcbiAgaWYgKHZhbHVlID09PSB0cnVlKSByZXR1cm4gdHJ1ZTtcbiAgaWYgKCF2YWx1ZSB8fCB0eXBlb2YgdmFsdWUgIT09IFwib2JqZWN0XCIgfHwgQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICByZXR1cm4gcGFyc2VSdW50aW1lVmFsdWUodmFsdWUpIGFzIEZlYXR1cmVGbGFnVmFsdWU7XG4gIH1cblxuICBjb25zdCByZXN1bHQ6IEZlYXR1cmVGbGFnQ29uZmlnID0ge307XG4gIE9iamVjdC5lbnRyaWVzKHZhbHVlIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KS5mb3JFYWNoKChba2V5LCByYXddKSA9PiB7XG4gICAgY29uc3Qgbm9ybWFsaXplZEtleSA9IG5vcm1hbGl6ZU9iamVjdEtleShrZXkpO1xuICAgIGlmICh0eXBlb2YgcmF3ICE9PSBcInVuZGVmaW5lZFwiKSB7XG4gICAgICByZXN1bHRbbm9ybWFsaXplZEtleV0gPSBub3JtYWxpemVGZWF0dXJlQ29uZmlnKHJhdykgPz8gcmF3O1xuICAgIH1cbiAgfSk7XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub3JtYWxpemVGZWF0dXJlUmVnaXN0cnkoXG4gIHZhbHVlOiB1bmtub3duXG4pOiBGZWF0dXJlRmxhZ1JlZ2lzdHJ5IHtcbiAgaWYgKCF2YWx1ZSB8fCB0eXBlb2YgdmFsdWUgIT09IFwib2JqZWN0XCIgfHwgQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHJldHVybiB7fTtcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHZhbHVlIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KS5yZWR1Y2UoXG4gICAgKGFjYywgW2tleSwgcmF3XSkgPT4ge1xuICAgICAgY29uc3Qgbm9ybWFsaXplZEtleSA9IG5vcm1hbGl6ZUZlYXR1cmVOYW1lKGtleSk7XG4gICAgICBjb25zdCBub3JtYWxpemVkVmFsdWUgPSBub3JtYWxpemVGZWF0dXJlQ29uZmlnKHJhdyk7XG4gICAgICBpZiAodHlwZW9mIG5vcm1hbGl6ZWRWYWx1ZSAhPT0gXCJ1bmRlZmluZWRcIikge1xuICAgICAgICBhY2Nbbm9ybWFsaXplZEtleV0gPSBub3JtYWxpemVkVmFsdWU7XG4gICAgICB9XG4gICAgICByZXR1cm4gYWNjO1xuICAgIH0sXG4gICAge30gYXMgRmVhdHVyZUZsYWdSZWdpc3RyeVxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNGZWF0dXJlRmxhZ0VuYWJsZWQodmFsdWU6IEZlYXR1cmVGbGFnVmFsdWUgfCB1bmRlZmluZWQpOiBib29sZWFuIHtcbiAgaWYgKHZhbHVlID09PSB0cnVlKSByZXR1cm4gdHJ1ZTtcbiAgcmV0dXJuICEhdmFsdWUgJiYgdHlwZW9mIHZhbHVlID09PSBcIm9iamVjdFwiO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNGZWF0dXJlRmxhZ0VuYWJsZWRCeU5hbWUoXG4gIHJlZ2lzdHJ5OiBGZWF0dXJlRmxhZ1JlZ2lzdHJ5IHwgdW5kZWZpbmVkLFxuICBmZWF0dXJlTmFtZTogc3RyaW5nXG4pOiBib29sZWFuIHtcbiAgcmV0dXJuIGlzRmVhdHVyZUZsYWdFbmFibGVkKHJlZ2lzdHJ5Py5bbm9ybWFsaXplRmVhdHVyZU5hbWUoZmVhdHVyZU5hbWUpXSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub3JtYWxpemVGZWF0dXJlUnVsZShcbiAgZmVhdHVyZXM6IHN0cmluZ1tdLFxuICBtYXRjaDogRmVhdHVyZUZsYWdNYXRjaE1vZGUgPSBcImFueVwiXG4pOiBGZWF0dXJlRmxhZ1J1bGUge1xuICByZXR1cm4ge1xuICAgIGZlYXR1cmVzOiBbLi4ubmV3IFNldChmZWF0dXJlcy5tYXAobm9ybWFsaXplRmVhdHVyZU5hbWUpLmZpbHRlcihCb29sZWFuKSldLFxuICAgIG1hdGNoLFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNGZWF0dXJlUnVsZVNhdGlzZmllZChcbiAgcnVsZTogRmVhdHVyZUZsYWdSdWxlIHwgdW5kZWZpbmVkLFxuICByZWdpc3RyeTogRmVhdHVyZUZsYWdSZWdpc3RyeSB8IHVuZGVmaW5lZFxuKTogYm9vbGVhbiB7XG4gIGlmICghcnVsZSB8fCBydWxlLmZlYXR1cmVzLmxlbmd0aCA9PT0gMCkgcmV0dXJuIHRydWU7XG4gIGNvbnN0IGVuYWJsZWQgPSBydWxlLmZlYXR1cmVzLmZpbHRlcigoZmVhdHVyZSkgPT5cbiAgICBpc0ZlYXR1cmVGbGFnRW5hYmxlZEJ5TmFtZShyZWdpc3RyeSwgZmVhdHVyZSlcbiAgKTtcbiAgaWYgKHJ1bGUubWF0Y2ggPT09IFwiYWxsXCIpIHJldHVybiBlbmFibGVkLmxlbmd0aCA9PT0gcnVsZS5mZWF0dXJlcy5sZW5ndGg7XG4gIHJldHVybiBlbmFibGVkLmxlbmd0aCA+IDA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0ZlYXR1cmVSdWxlQmxvY2tlZChcbiAgcnVsZTogRmVhdHVyZUZsYWdSdWxlIHwgdW5kZWZpbmVkLFxuICByZWdpc3RyeTogRmVhdHVyZUZsYWdSZWdpc3RyeSB8IHVuZGVmaW5lZFxuKTogYm9vbGVhbiB7XG4gIGlmICghcnVsZSB8fCBydWxlLmZlYXR1cmVzLmxlbmd0aCA9PT0gMCkgcmV0dXJuIGZhbHNlO1xuICByZXR1cm4gcnVsZS5mZWF0dXJlcy5zb21lKChmZWF0dXJlKSA9PiBpc0ZlYXR1cmVGbGFnRW5hYmxlZEJ5TmFtZShyZWdpc3RyeSwgZmVhdHVyZSkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVhZE1ldGFkYXRhPFQgPSB1bmtub3duPihcbiAgdGFyZ2V0OiBvYmplY3QsXG4gIGtleTogc3RyaW5nXG4pOiBUIHwgdW5kZWZpbmVkIHtcbiAgcmV0dXJuIE1ldGFkYXRhLmdldCh0YXJnZXQgYXMgYW55LCBrZXkpIGFzIFQgfCB1bmRlZmluZWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub3JtYWxpemVGZWF0dXJlU3ViamVjdFR5cGUoXG4gIHN1YmplY3RUeXBlOiBGZWF0dXJlRmxhZ0FjY2Vzc1N1YmplY3RUeXBlIHwgc3RyaW5nXG4pOiBGZWF0dXJlRmxhZ0FjY2Vzc1N1YmplY3RUeXBlIHtcbiAgcmV0dXJuIHN1YmplY3RUeXBlLnRyaW0oKS50b0xvd2VyQ2FzZSgpIGFzIEZlYXR1cmVGbGFnQWNjZXNzU3ViamVjdFR5cGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub3JtYWxpemVGZWF0dXJlU3ViamVjdEtleShzdWJqZWN0S2V5OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gc3ViamVjdEtleS50cmltKCk7XG59XG4iXX0=
126
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/feature-flags/utils.ts"],"names":[],"mappings":"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"}
package/lib/esm/index.js CHANGED
@@ -6,8 +6,8 @@
6
6
  export * from "./utils.js";
7
7
  export * from "./namespaces/index.js";
8
8
  export * from "./feature-flags/index.js";
9
- export const VERSION = "0.14.3";
10
- export const COMMIT = "71191ad";
11
- export const FULL_VERSION = "0.14.3-71191ad";
9
+ export const VERSION = "0.15.3";
10
+ export const COMMIT = "86da5d7";
11
+ export const FULL_VERSION = "0.15.3-86da5d7";
12
12
  export const PACKAGE_NAME = "@decaf-ts/integrations";
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILDJCQUF3QjtBQUN4QixzQ0FBNkI7QUFDN0IseUNBQWdDO0FBRWhDLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBVyxhQUFhLENBQUM7QUFFN0MsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQztBQUVuQyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsa0JBQWtCLENBQUM7QUFFL0MsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFXLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG1vZHVsZSBpbnRlZ3JhdGlvbnNcbiAqIEBzdW1tYXJ5IFBhY2thZ2UgZW50cnkgcG9pbnQgZm9yIHNoYXJlZCBpbnRlZ3JhdGlvbiBoZWxwZXJzLlxuICogQGRlc2NyaXB0aW9uIEV4cG9zZXMgdGhlIHBhY2thZ2UgdXRpbGl0aWVzIGFuZCBidWlsZC10aW1lIHZlcnNpb24gbWV0YWRhdGEgZm9yIGBAZGVjYWYtdHMvaW50ZWdyYXRpb25zYC5cbiAqL1xuZXhwb3J0ICogZnJvbSBcIi4vdXRpbHNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL25hbWVzcGFjZXNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2ZlYXR1cmUtZmxhZ3NcIjtcblxuZXhwb3J0IGNvbnN0IFZFUlNJT046IHN0cmluZyA9IFwiIyNWRVJTSU9OIyNcIjtcblxuZXhwb3J0IGNvbnN0IENPTU1JVCA9IFwiIyNDT01NSVQjI1wiO1xuXG5leHBvcnQgY29uc3QgRlVMTF9WRVJTSU9OID0gXCIjI0ZVTExfVkVSU0lPTiMjXCI7XG5cbmV4cG9ydCBjb25zdCBQQUNLQUdFX05BTUU6IHN0cmluZyA9IFwiIyNQQUNLQUdFIyNcIjtcbiJdfQ==
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,2BAAwB;AACxB,sCAA6B;AAC7B,yCAAgC;AAEhC,MAAM,CAAC,MAAM,OAAO,GAAW,aAAa,CAAC;AAE7C,MAAM,CAAC,MAAM,MAAM,GAAG,YAAY,CAAC;AAEnC,MAAM,CAAC,MAAM,YAAY,GAAG,kBAAkB,CAAC;AAE/C,MAAM,CAAC,MAAM,YAAY,GAAW,aAAa,CAAC"}
@@ -258,4 +258,4 @@ export class AirtableService extends HttpApiService {
258
258
  }
259
259
  }
260
260
  }
261
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWlydGFibGVTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2lvL2FpcnRhYmxlL0FpcnRhYmxlU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7O0dBU0c7QUFDSCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSw0QkFBdUI7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsMkNBQXNDO0FBQ3JFLE9BQU8sRUFDTCxjQUFjLEVBRWQsU0FBUyxHQUNWLHFDQUEwQjtBQTJHM0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMEJHO0FBQ0gsTUFBTSxPQUFPLGVBQWdCLFNBQVEsY0FBcUM7SUFBMUU7O1FBQ0U7O1dBRUc7UUFDZ0IsZ0JBQVcsR0FBRyxVQUFVLENBQUM7SUF5UDlDLENBQUM7SUF2UEM7Ozs7T0FJRztJQUNPLGNBQWM7UUFDdEIsT0FBTyw2QkFBNkIsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ08sV0FBVyxDQUFDLE1BQTZCO1FBQ2pELE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxhQUFhLEVBQUUsVUFBVSxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3pFLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDTyxxQkFBcUI7UUFDN0IsTUFBTSxHQUFHLEdBQUcsYUFBYSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUM7UUFDdEMsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sU0FBUyxDQUFDO1FBQzdCLE9BQU87WUFDTCxLQUFLO1lBQ0wsTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxD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Q0FBQyxDQUFDO1FBQ3RELENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7OztPQVlHO0lBQ0gsS0FBSyxDQUFDLFlBQVksQ0FDaEIsS0FBYSxFQUNiLFFBQWdCLEVBQ2hCLE1BQWU7UUFFZixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDO1lBQ0gsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FJdkMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUNuRSxDQUFDO1lBQ0YsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ3ZCLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsTUFBTSxTQUFTLENBQUMsVUFBVSxFQUFFLGVBQWUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN0RCxDQUFDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9pby9haXJ0YWJsZS9zZXJ2aWNlXG4gKiBAc3VtbWFyeSBBaXJ0YWJsZSBXZWIgQVBJIGludGVncmF0aW9uIHNlcnZpY2UgZm9yIENSVUQgb3BlcmF0aW9ucyBvbiBiYXNlIHJlY29yZHMuXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgQWlydGFibGUgdjAgcmVjb3JkcyBBUEkgKGxpc3QsIGdldCwgY3JlYXRlLCB1cGRhdGUsXG4gKiBkZWxldGUpIGFzIGFuIHVuZGVjb3JhdGVkIGNsaWVudC1iYXNlZCBzZXJ2aWNlIGJ1aWx0IG9uXG4gKiB7QGxpbmsgSHR0cEFwaVNlcnZpY2V9LiBDb25maWd1cmF0aW9uIGNvbWVzIGZyb20gYW4gZXhwbGljaXRcbiAqIGBBaXJ0YWJsZVNlcnZpY2VDb25maWdgIG9yIHRoZSBgaW8uYWlydGFibGVgIGVudmlyb25tZW50IHNsaWNlOyBiYXNlXG4gKiB0YXJnZXRzIGRlZmF1bHQgdG8gdGhlIGNvbmZpZ3VyZWQgYGJhc2VJZGAgYW5kIGNhbiBiZSBvdmVycmlkZGVuIHBlciBjYWxsLlxuICogRmFpbHVyZXMgYXJlIG1hcHBlZCB0byBkZWNhZiBlcnJvcnMgdmlhIHtAbGluayBodHRwRXJyb3J9LlxuICovXG5pbXBvcnQgeyBJbnRlcm5hbEVycm9yIH0gZnJvbSBcIkBkZWNhZi10cy9kYi1kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBJb0Vudmlyb25tZW50IH0gZnJvbSBcIi4uL2Vudmlyb25tZW50XCI7XG5pbXBvcnQgeyBlbnZOdW1iZXIsIGVudlN0cmluZyB9IGZyb20gXCIuLi8uLi9zaGFyZWQvZW52aXJvbm1lbnRWYWx1ZVwiO1xuaW1wb3J0IHtcbiAgSHR0cEFwaVNlcnZpY2UsXG4gIHR5cGUgSHR0cEFwaVNlcnZpY2VDb25maWcsXG4gIGh0dHBFcnJvcixcbn0gZnJvbSBcIi4uLy4uL3NoYXJlZC9odHRwXCI7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIENvbmZpZ3VyYXRpb24gZm9yIHRoZSBBaXJ0YWJsZSBzZXJ2aWNlXG4gKiBAc3VtbWFyeSBFeHRlbmRzIHtAbGluayBIdHRwQXBpU2VydmljZUNvbmZpZ30gd2l0aCB0aGUgQWlydGFibGUgcGVyc29uYWxcbiAqIGFjY2VzcyB0b2tlbiAoc2VudCBhcyBhIGJlYXJlciB0b2tlbikgYW5kIHRoZSBkZWZhdWx0IGBiYXNlSWRgIHVzZWQgd2hlbiBhXG4gKiBjYWxsIGRvZXMgbm90IG92ZXJyaWRlIGl0LiBXaGVuIG9taXR0ZWQsIHRoZSBgaW8uYWlydGFibGVgIGVudmlyb25tZW50XG4gKiBzbGljZSBzdXBwbGllcyB0aGUgdG9rZW4gKGFuZCBvcHRpb25hbCBgYmFzZUlkYCwgYGJhc2VVcmxgLCBgdGltZW91dGApLlxuICogQGNhdGVnb3J5IElPXG4gKiBAbWVtYmVyT2YgbW9kdWxlOmludGVncmF0aW9ucy9pby9haXJ0YWJsZS9zZXJ2aWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWlydGFibGVTZXJ2aWNlQ29uZmlnIGV4dGVuZHMgSHR0cEFwaVNlcnZpY2VDb25maWcge1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEFpcnRhYmxlIHBlcnNvbmFsIGFjY2VzcyB0b2tlblxuICAgKiBAc3VtbWFyeSBTZW50IGFzIGBBdXRob3JpemF0aW9uOiBCZWFyZXIgPHRva2VuPmAgd2l0aCBldmVyeSBBUEkgY2FsbC5cbiAgICovXG4gIHRva2VuPzogc3RyaW5nO1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIERlZmF1bHQgYmFzZSBJRCB1c2VkIHdoZW4gYSBjYWxsIGRvZXMgbm90IG92ZXJyaWRlIGl0XG4gICAqL1xuICBiYXNlSWQ/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIE5vcm1hbGl6ZWQgQWlydGFibGUgcmVjb3JkIGRlc2NyaXB0b3JcbiAqIEBzdW1tYXJ5IFRoZSBBaXJ0YWJsZSByZWNvcmQgZW52ZWxvcGU6IHRoZSByZWNvcmQgYGlkYCwgdGhlIGBmaWVsZHNgIG1hcFxuICogKGNvbHVtbiBuYW1lIHRvIHZhbHVlKSwgYW5kIHRoZSBvcHRpb25hbCBgY3JlYXRlZFRpbWVgIHRpbWVzdGFtcC5cbiAqIEBjYXRlZ29yeSBJT1xuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvaW8vYWlydGFibGUvc2VydmljZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFpcnRhYmxlUmVjb3JkIHtcbiAgaWQ6IHN0cmluZztcbiAgZmllbGRzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgY3JlYXRlZFRpbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIE9wdGlvbnMgZm9yIGxpc3RpbmcgQWlydGFibGUgcmVjb3Jkc1xuICogQHN1bW1hcnkgQ2FycmllcyB0aGUgcmVxdWlyZWQgYHRhYmxlYCBuYW1lIHBsdXMgdGhlIHZpZXcsIGZvcm11bGEgZmlsdGVyLFxuICogcmVjb3JkIGNhcHMgYW5kIHBhZ2luZyBvZmZzZXQsIGZpZWxkIHByb2plY3Rpb24sIGFuZCBmaXJzdC1zb3J0IGNvbmZpZ3VyYXRpb25cbiAqIEFpcnRhYmxlIHN1cHBvcnRzLiBPbmx5IHRoZSBmaXJzdCBzb3J0IGVudHJ5IGlzIHNlbnQgKEFpcnRhYmxlJ3NcbiAqIGBzb3J0WzBdW2ZpZWxkXWAvYHNvcnRbMF1bZGlyZWN0aW9uXWAgcXVlcnkgcGFyYW1ldGVycyk7IHBhZ2luZyB3b3JrcyBieVxuICogcGFzc2luZyB0aGUgcHJldmlvdXMgcGFnZSdzIGBvZmZzZXRgIGJhY2sgYXMgYG9mZnNldGAuXG4gKiBAY2F0ZWdvcnkgSU9cbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2lvL2FpcnRhYmxlL3NlcnZpY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBaXJ0YWJsZUxpc3RPcHRpb25zIHtcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBUYWJsZSBuYW1lIG9yIElEIHRvIGxpc3QgcmVjb3JkcyBmcm9tIChyZXF1aXJlZClcbiAgICovXG4gIHRhYmxlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gVmlldyBuYW1lIG9yIElEIHRvIHJlc3RyaWN0IHRoZSBsaXN0aW5nIHRvXG4gICAqL1xuICB2aWV3Pzogc3RyaW5nO1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEFpcnRhYmxlIGZvcm11bGEgcmVzdHJpY3RpbmcgdGhlIHJldHVybmVkIHJlY29yZHMgKGUuZy4gYFwie1N0YXR1c30gPSAnQWN0aXZlJ1wiYClcbiAgICovXG4gIGZpbHRlckJ5Rm9ybXVsYT86IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBNYXhpbXVtIG51bWJlciBvZiByZWNvcmRzIHRvIHJldHVybiBpbiB0b3RhbFxuICAgKi9cbiAgbWF4UmVjb3Jkcz86IG51bWJlcjtcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBOdW1iZXIgb2YgcmVjb3JkcyBwZXIgcGFnZVxuICAgKi9cbiAgcGFnZVNpemU/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gVGhlIGBvZmZzZXRgIGZyb20gdGhlIHByZXZpb3VzIHBhZ2UncyByZXN1bHRcbiAgICovXG4gIG9mZnNldD86IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBDb2x1bW4gbmFtZXMgdG8gcHJvamVjdFxuICAgKi9cbiAgZmllbGRzPzogc3RyaW5nW107XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gRmlyc3Qgc29ydCBlbnRyeSBhcHBsaWVkIHRvIHRoZSBsaXN0aW5nXG4gICAqL1xuICBzb3J0PzogQXJyYXk8eyBmaWVsZDogc3RyaW5nOyBkaXJlY3Rpb24/OiBcImFzY1wiIHwgXCJkZXNjXCIgfT47XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIFJlc3VsdCBvZiBhbiBBaXJ0YWJsZSByZWNvcmQgbGlzdGluZ1xuICogQHN1bW1hcnkgQ2FycmllcyB0aGUgcGFnZSBvZiBgcmVjb3Jkc2AgYW5kIHRoZSBgb2Zmc2V0YCBjdXJzb3IgdG8gcGFzcyBiYWNrXG4gKiBhcyBgQWlydGFibGVMaXN0T3B0aW9ucy5vZmZzZXRgIHdoZW4gbW9yZSBwYWdlcyBleGlzdC5cbiAqIEBjYXRlZ29yeSBJT1xuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvaW8vYWlydGFibGUvc2VydmljZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFpcnRhYmxlTGlzdFJlc3VsdCB7XG4gIHJlY29yZHM6IEFpcnRhYmxlUmVjb3JkW107XG4gIG9mZnNldD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gSW5wdXQgZm9yIGNyZWF0aW5nIG9yIHVwZGF0aW5nIGFuIEFpcnRhYmxlIHJlY29yZFxuICogQHN1bW1hcnkgQ2FycmllcyB0aGUgcmVxdWlyZWQgYHRhYmxlYCBuYW1lLCB0aGUgYGZpZWxkc2AgbWFwIHRvIHdyaXRlLCBhbmRcbiAqIHRoZSBgdHlwZWNhc3RgIGZsYWcgbGV0dGluZyBBaXJ0YWJsZSBjb252ZXJ0IHZhbHVlcyB0byB0aGUgY29sdW1uIHR5cGVzLlxuICogYHVwZGF0ZVJlY29yZGAgYWRkaXRpb25hbGx5IGNhcnJpZXMgdGhlIGByZWNvcmRJZGAuXG4gKiBAY2F0ZWdvcnkgSU9cbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2lvL2FpcnRhYmxlL3NlcnZpY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBaXJ0YWJsZVdyaXRlSW5wdXQge1xuICB0YWJsZTogc3RyaW5nO1xuICBmaWVsZHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICB0eXBlY2FzdD86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIEFpcnRhYmxlIFdlYiBBUEkgaW50ZWdyYXRpb24gc2VydmljZVxuICogQHN1bW1hcnkgQW4gdW5kZWNvcmF0ZWQgSFRUUCBzZXJ2aWNlIGZvciBsaXN0aW5nIHJlY29yZHNcbiAqIHdpdGggZmlsdGVyaW5nLCBzb3J0aW5nLCBhbmQgY3Vyc29yIHBhZ2luZzsgZmV0Y2hpbmcsIGNyZWF0aW5nLCB1cGRhdGluZyxcbiAqIGFuZCBkZWxldGluZyBpbmRpdmlkdWFsIHJlY29yZHMuIEJhc2UgdGFyZ2V0cyByZXNvbHZlIHBlciBjYWxsIGZyb20gdGhlXG4gKiBgYmFzZUlkYCBhcmd1bWVudCwgZmFsbGluZyBiYWNrIHRvIHRoZSBjb25maWd1cmVkIHZhbHVlLCBhbmQgdGhyb3dcbiAqIGBJbnRlcm5hbEVycm9yYCB3aGVuIHVucmVzb2x2ZWQuIEV2ZXJ5IG9wZXJhdGlvbiByZXF1aXJlcyBhIHRva2VuXG4gKiAoYHJlcXVpcmVUb2tlbigpYCksIGFuZCB0cmFuc3BvcnQgZmFpbHVyZXMgYXJlIG1hcHBlZCB0byBkZWNhZiBlcnJvcnMgdmlhXG4gKiB7QGxpbmsgaHR0cEVycm9yfS5cbiAqIEBjbGFzcyBBaXJ0YWJsZVNlcnZpY2VcbiAqIEBjYXRlZ29yeSBJT1xuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBBaXJ0YWJsZVNlcnZpY2UgfSBmcm9tIFwiQGRlY2FmLXRzL2ludGVncmF0aW9ucy9pby9haXJ0YWJsZVwiO1xuICpcbiAqIGNvbnN0IGFpcnRhYmxlID0gbmV3IEFpcnRhYmxlU2VydmljZSgpO1xuICogYXdhaXQgYWlydGFibGUuaW5pdGlhbGl6ZSh7XG4gKiAgIHRva2VuOiBwcm9jZXNzLmVudi5HUkFQSF9DUkVERU5USUFMX0FJUlRBQkxFX1RPS0VOLFxuICogICBiYXNlSWQ6IFwiYXBwRXhhbXBsZUJhc2VcIixcbiAqIH0pO1xuICogY29uc3QgY3JlYXRlZCA9IGF3YWl0IGFpcnRhYmxlLmNyZWF0ZVJlY29yZCh7XG4gKiAgIHRhYmxlOiBcIlRhc2tzXCIsXG4gKiAgIGZpZWxkczogeyBOYW1lOiBcIlNoaXAgcmVsZWFzZVwiLCBTdGF0dXM6IFwiVG9kb1wiIH0sXG4gKiB9KTtcbiAqIGBgYFxuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvaW8vYWlydGFibGUvc2VydmljZVxuICovXG5leHBvcnQgY2xhc3MgQWlydGFibGVTZXJ2aWNlIGV4dGVuZHMgSHR0cEFwaVNlcnZpY2U8QWlydGFibGVTZXJ2aWNlQ29uZmlnPiB7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gVGhlIHByb3ZpZGVyIG5hbWUgdXNlZCBpbiBlcnJvciBtZXNzYWdlc1xuICAgKi9cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHNlcnZpY2VOYW1lID0gXCJBaXJ0YWJsZVwiO1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gVGhlIEFpcnRhYmxlIFdlYiBBUEkgdjAgYmFzZSBVUkxcbiAgICogQHN1bW1hcnkgVXNlZCB3aGVuIHRoZSByZXNvbHZlZCBjb25maWcgY2FycmllcyBubyBgYmFzZVVybGAuXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IGBcImh0dHBzOi8vYXBpLmFpcnRhYmxlLmNvbS92MFwiYC5cbiAgICovXG4gIHByb3RlY3RlZCBkZWZhdWx0QmFzZVVybCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBcImh0dHBzOi8vYXBpLmFpcnRhYmxlLmNvbS92MFwiO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBCdWlsZHMgdGhlIEFpcnRhYmxlIGJlYXJlciBhdXRob3JpemF0aW9uIGhlYWRlcnNcbiAgICogQHN1bW1hcnkgUmV0dXJucyB0aGUgYEF1dGhvcml6YXRpb246IEJlYXJlciA8dG9rZW4+YCBoZWFkZXIgd2hlbiB0aGVcbiAgICogY29uZmlnIGNhcnJpZXMgYSB0b2tlbiwgYW5kIG5vIGhlYWRlcnMgb3RoZXJ3aXNlLlxuICAgKiBAcGFyYW0ge0FpcnRhYmxlU2VydmljZUNvbmZpZ30gY29uZmlnIC0gVGhlIHJlc29sdmVkIHNlcnZpY2UgY29uZmlndXJhdGlvbi5cbiAgICogQHJldHVybnMge1JlY29yZDxzdHJpbmcsIHN0cmluZz59IFRoZSBhdXRob3JpemF0aW9uIGhlYWRlcnMgKGVtcHR5IHdpdGhvdXQgYSB0b2tlbikuXG4gICAqL1xuICBwcm90ZWN0ZWQgYXV0aEhlYWRlcnMoY29uZmlnOiBBaXJ0YWJsZVNlcnZpY2VDb25maWcpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHtcbiAgICByZXR1cm4gY29uZmlnLnRva2VuID8geyBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7Y29uZmlnLnRva2VufWAgfSA6IHt9O1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBSZWFkcyB0aGUgQWlydGFibGUgY3JlZGVudGlhbHMgYW5kIGRlZmF1bHRzIGZyb20gdGhlIGVudmlyb25tZW50XG4gICAqIEBzdW1tYXJ5IFJlYWRzIHRoZSBgaW8uYWlydGFibGVgIGVudmlyb25tZW50IHNsaWNlIGFuZCByZXR1cm5zIGEgcGFydGlhbFxuICAgKiBjb25maWcgd2hlbiBhIHRva2VuIGlzIGNvbmZpZ3VyZWQsIGB1bmRlZmluZWRgIG90aGVyd2lzZS4gVmFsdWVzIHBhc3NcbiAgICogdGhyb3VnaCBgZW52U3RyaW5nYC9gZW52TnVtYmVyYCB0byByZWplY3QgdW5zZXQtbGVhZiBwcm94aWVzLlxuICAgKiBAcmV0dXJucyB7UGFydGlhbDxBaXJ0YWJsZVNlcnZpY2VDb25maWc+IHwgdW5kZWZpbmVkfSBBIHBhcnRpYWwgY29uZmlnLCBvciBgdW5kZWZpbmVkYCB3aGVuIG5vIEFpcnRhYmxlIHRva2VuIGlzIGNvbmZpZ3VyZWQuXG4gICAqL1xuICBwcm90ZWN0ZWQgY29uZmlnRnJvbUVudmlyb25tZW50KCk6IFBhcnRpYWw8QWlydGFibGVTZXJ2aWNlQ29uZmlnPiB8IHVuZGVmaW5lZCB7XG4gICAgY29uc3QgZW52ID0gSW9FbnZpcm9ubWVudC5pby5haXJ0YWJsZTtcbiAgICBjb25zdCB0b2tlbiA9IGVudlN0cmluZyhlbnY/LnRva2VuKTtcbiAgICBpZiAoIXRva2VuKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIHJldHVybiB7XG4gICAgICB0b2tlbixcbiAgICAgIGJhc2VJZDogZW52U3RyaW5nKGVudi5iYXNlSWQpLFxuICAgICAgYmFzZVVybDogZW52U3RyaW5nKGVudi5iYXNlVXJsKSxcbiAgICAgIHRpbWVvdXQ6IGVudk51bWJlcihlbnYudGltZW91dCksXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gUmVzb2x2ZXMgdGhlIFVSTC1lbmNvZGVkIGJhc2UgcGF0aCBmb3IgYSBjYWxsXG4gICAqIEBzdW1tYXJ5IEJ1aWxkcyBgLzxiYXNlSWQ+YCBmcm9tIHRoZSBnaXZlbiBiYXNlIElELCBmYWxsaW5nIGJhY2sgdG8gdGhlXG4gICAqIGNvbmZpZ3VyZWQgdmFsdWUsIGFuZCB0aHJvd3Mgd2hlbiBuZWl0aGVyIGlzIGF2YWlsYWJsZS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IFtiYXNlSWRdIC0gVGhlIHBlci1jYWxsIGJhc2Ugb3ZlcnJpZGUuXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBVUkwtZW5jb2RlZCBiYXNlIEFQSSBwYXRoLlxuICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIG5laXRoZXIgdGhlIGlucHV0IG5vciB0aGUgY29uZmlnIHlpZWxkcyBhIGJhc2UgSUQuXG4gICAqL1xuICBwcm90ZWN0ZWQgYmFzZVBhdGgoYmFzZUlkPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCByZXNvbHZlZCA9IGJhc2VJZCA/PyB0aGlzLmNvbmZpZy5iYXNlSWQ7XG4gICAgaWYgKCFyZXNvbHZlZCkge1xuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJBaXJ0YWJsZSByZXF1aXJlcyBhIGJhc2UgSURcIik7XG4gICAgfVxuICAgIHJldHVybiBgLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHJlc29sdmVkKX1gO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBSZXNvbHZlcyB0aGUgVVJMLWVuY29kZWQgdGFibGUgcGF0aCBmb3IgYSBjYWxsXG4gICAqIEBzdW1tYXJ5IEJ1aWxkcyBgPGJhc2VQYXRoPi88dGFibGU+YCB3aXRoIGJvdGggc2VnbWVudHMgVVJMLWVuY29kZWQsIGFuZFxuICAgKiB0aHJvd3Mgd2hlbiB0aGUgdGFibGUgbmFtZSBpcyBlbXB0eSAob3IgdGhlIGJhc2UgY2Fubm90IGJlIHJlc29sdmVkKS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHRhYmxlIC0gVGhlIHRhYmxlIG5hbWUgb3IgSUQuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbYmFzZUlkXSAtIFRoZSBwZXItY2FsbCBiYXNlIG92ZXJyaWRlLlxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSBUaGUgVVJMLWVuY29kZWQgdGFibGUgQVBJIHBhdGguXG4gICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IFdoZW4gdGhlIHRhYmxlIG5hbWUgaXMgZW1wdHkgb3IgdGhlIGJhc2UgSUQgY2Fubm90IGJlIHJlc29sdmVkLlxuICAgKi9cbiAgcHJvdGVjdGVkIHRhYmxlUGF0aCh0YWJsZTogc3RyaW5nLCBiYXNlSWQ/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmICghdGFibGUpIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFwiQWlydGFibGUgcmVxdWlyZXMgYSB0YWJsZSBuYW1lXCIpO1xuICAgIHJldHVybiBgJHt0aGlzLmJhc2VQYXRoKGJhc2VJZCl9LyR7ZW5jb2RlVVJJQ29tcG9uZW50KHRhYmxlKX1gO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBMaXN0cyByZWNvcmRzIGluIGFuIEFpcnRhYmxlIHRhYmxlIHdpdGggY3Vyc29yIHBhZ2luZ1xuICAgKiBAc3VtbWFyeSBgR0VUYHMgdGhlIHRhYmxlIGVuZHBvaW50IHdpdGggdGhlIGNvbmZpZ3VyZWQgdmlldywgZm9ybXVsYVxuICAgKiBmaWx0ZXIsIHJlY29yZCBjYXBzLCBwYWdlIHNpemUsIHBhZ2Ugb2Zmc2V0LCBmaWVsZCBwcm9qZWN0aW9uLCBhbmQgZmlyc3RcbiAgICogc29ydCBlbnRyeS4gUmV0dXJuIHRoZSBgb2Zmc2V0YCBjdXJzb3IgYXMgdGhlIG5leHQgY2FsbCdzXG4gICAqIGBBaXJ0YWJsZUxpc3RPcHRpb25zLm9mZnNldGAgdG8gZmV0Y2ggZnVydGhlciBwYWdlcy5cbiAgICogQHBhcmFtIHtBaXJ0YWJsZUxpc3RPcHRpb25zfSBvcHRpb25zIC0gVGhlIHRhYmxlIGFuZCBmaWx0ZXIvc29ydC9wYWdpbmcgb3B0aW9ucy5cbiAgICogQHBhcmFtIHtzdHJpbmd9IFtiYXNlSWRdIC0gVGhlIGJhc2Ugb3ZlcnJpZGU7IGZhbGxzIGJhY2sgdG8gdGhlIGNvbmZpZ3VyZWQgYGJhc2VJZGAuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPEFpcnRhYmxlTGlzdFJlc3VsdD59IFRoZSBwYWdlIG9mIHJlY29yZHMgYW5kIHRoZSBuZXh0IG9mZnNldCBjdXJzb3Igd2hlbiBtb3JlIHBhZ2VzIGV4aXN0LlxuICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIG5vIHRva2VuIGlzIGNvbmZpZ3VyZWQgb3IgdGhlIHRhYmxlL2Jhc2UgY2Fubm90IGJlIHJlc29sdmVkLlxuICAgKiBAdGhyb3dzIHtOb3RGb3VuZEVycm9yfSBXaGVuIHRoZSBiYXNlIG9yIHRhYmxlIGRvZXMgbm90IGV4aXN0IChIVFRQIDQwNCkuXG4gICAqIEB0aHJvd3Mge0NvbmZsaWN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIEhUVFAgNDA5LlxuICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIGFueSBvdGhlciBIVFRQIGVycm9yIHN0YXR1cyAoZS5nLiBpbnZhbGlkIGZvcm11bGEpLlxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGB0c1xuICAgKiBsZXQgb2Zmc2V0OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAqIGRvIHtcbiAgICogICBjb25zdCBwYWdlID0gYXdhaXQgYWlydGFibGUubGlzdFJlY29yZHMoe1xuICAgKiAgICAgdGFibGU6IFwiVGFza3NcIixcbiAgICogICAgIGZpbHRlckJ5Rm9ybXVsYTogXCJ7U3RhdHVzfSA9ICdBY3RpdmUnXCIsXG4gICAqICAgICBwYWdlU2l6ZTogMTAwLFxuICAgKiAgICAgb2Zmc2V0LFxuICAgKiAgICAgc29ydDogW3sgZmllbGQ6IFwiTmFtZVwiLCBkaXJlY3Rpb246IFwiYXNjXCIgfV0sXG4gICAqICAgfSk7XG4gICAqICAgY29uc29sZS5sb2cocGFnZS5yZWNvcmRzKTtcbiAgICogICBvZmZzZXQgPSBwYWdlLm9mZnNldDtcbiAgICogfSB3aGlsZSAob2Zmc2V0KTtcbiAgICogYGBgXG4gICAqL1xuICBhc3luYyBsaXN0UmVjb3JkcyhcbiAgICBvcHRpb25zOiBBaXJ0YWJsZUxpc3RPcHRpb25zLFxuICAgIGJhc2VJZD86IHN0cmluZ1xuICApOiBQcm9taXNlPEFpcnRhYmxlTGlzdFJlc3VsdD4ge1xuICAgIHRoaXMucmVxdWlyZVRva2VuKCk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQuZ2V0PEFpcnRhYmxlTGlzdFJlc3VsdD4oXG4gICAgICAgIHRoaXMudGFibGVQYXRoKG9wdGlvbnMudGFibGUsIGJhc2VJZCksXG4gICAgICAgIHtcbiAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgIHZpZXc6IG9wdGlvbnMudmlldyxcbiAgICAgICAgICAgIGZpbHRlckJ5Rm9ybXVsYTogb3B0aW9ucy5maWx0ZXJCeUZvcm11bGEsXG4gICAgICAgICAgICBtYXhSZWNvcmRzOiBvcHRpb25zLm1heFJlY29yZHMsXG4gICAgICAgICAgICBwYWdlU2l6ZTogb3B0aW9ucy5wYWdlU2l6ZSxcbiAgICAgICAgICAgIG9mZnNldDogb3B0aW9ucy5vZmZzZXQsXG4gICAgICAgICAgICBcImZpZWxkc1tdXCI6IG9wdGlvbnMuZmllbGRzLFxuICAgICAgICAgICAgXCJzb3J0WzBdW2ZpZWxkXVwiOiBvcHRpb25zLnNvcnQ/LlswXT8uZmllbGQsXG4gICAgICAgICAgICBcInNvcnRbMF1bZGlyZWN0aW9uXVwiOiBvcHRpb25zLnNvcnQ/LlswXT8uZGlyZWN0aW9uLFxuICAgICAgICAgIH0sXG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICByZWNvcmRzOiByZXNwb25zZS5kYXRhLnJlY29yZHMgPz8gW10sXG4gICAgICAgIG9mZnNldDogcmVzcG9uc2UuZGF0YS5vZmZzZXQsXG4gICAgICB9O1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBodHRwRXJyb3IoXCJBaXJ0YWJsZVwiLCBcImxpc3QgcmVjb3Jkc1wiLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBGZXRjaGVzIGEgc2luZ2xlIEFpcnRhYmxlIHJlY29yZFxuICAgKiBAc3VtbWFyeSBgR0VUYHMgdGhlIHRhYmxlIGVuZHBvaW50IHdpdGggdGhlIHJlY29yZCBJRCBhcHBlbmRlZCBhbmRcbiAgICogcmV0dXJucyB0aGUgcmVjb3JkIGVudmVsb3BlLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdGFibGUgLSBUaGUgdGFibGUgbmFtZSBvciBJRC5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHJlY29yZElkIC0gVGhlIHJlY29yZCBJRCB0byBmZXRjaCAoZS5nLiBgXCJyZWMxMjM0NTY3ODkwXCJgKS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IFtiYXNlSWRdIC0gVGhlIGJhc2Ugb3ZlcnJpZGU7IGZhbGxzIGJhY2sgdG8gdGhlIGNvbmZpZ3VyZWQgYGJhc2VJZGAuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPEFpcnRhYmxlUmVjb3JkPn0gVGhlIHJlY29yZCBlbnZlbG9wZS5cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBubyB0b2tlbiBpcyBjb25maWd1cmVkIG9yIHRoZSB0YWJsZS9iYXNlIGNhbm5vdCBiZSByZXNvbHZlZC5cbiAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgcmVjb3JkIGRvZXMgbm90IGV4aXN0IChIVFRQIDQwNCkuXG4gICAqIEB0aHJvd3Mge0NvbmZsaWN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIEhUVFAgNDA5LlxuICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIGFueSBvdGhlciBIVFRQIGVycm9yIHN0YXR1cy5cbiAgICovXG4gIGFzeW5jIGdldFJlY29yZChcbiAgICB0YWJsZTogc3RyaW5nLFxuICAgIHJlY29yZElkOiBzdHJpbmcsXG4gICAgYmFzZUlkPzogc3RyaW5nXG4gICk6IFByb21pc2U8QWlydGFibGVSZWNvcmQ+IHtcbiAgICB0aGlzLnJlcXVpcmVUb2tlbigpO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LmdldDxBaXJ0YWJsZVJlY29yZD4oXG4gICAgICAgIGAke3RoaXMudGFibGVQYXRoKHRhYmxlLCBiYXNlSWQpfS8ke2VuY29kZVVSSUNvbXBvbmVudChyZWNvcmRJZCl9YFxuICAgICAgKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBodHRwRXJyb3IoXCJBaXJ0YWJsZVwiLCBcImdldCByZWNvcmRcIiwgZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gQ3JlYXRlcyBhbiBBaXJ0YWJsZSByZWNvcmRcbiAgICogQHN1bW1hcnkgYFBPU1RgcyB0aGUgZmllbGRzIG1hcCB0byB0aGUgdGFibGUgZW5kcG9pbnQ7IGB0eXBlY2FzdGAgbGV0c1xuICAgKiBBaXJ0YWJsZSBjb2VyY2UgdmFsdWVzIGludG8gdGhlIGNvbHVtbiB0eXBlcyAoZGlzYWJsZWQgYnkgZGVmYXVsdCkuXG4gICAqIEBwYXJhbSB7QWlydGFibGVXcml0ZUlucHV0fSBpbnB1dCAtIFRoZSB0YWJsZSwgZmllbGRzLCBhbmQgdHlwZWNhc3Qgb3B0aW9uLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW2Jhc2VJZF0gLSBUaGUgYmFzZSBvdmVycmlkZTsgZmFsbHMgYmFjayB0byB0aGUgY29uZmlndXJlZCBgYmFzZUlkYC5cbiAgICogQHJldHVybnMge1Byb21pc2U8QWlydGFibGVSZWNvcmQ+fSBUaGUgY3JlYXRlZCByZWNvcmQgZW52ZWxvcGUuXG4gICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IFdoZW4gbm8gdG9rZW4gaXMgY29uZmlndXJlZCBvciB0aGUgdGFibGUvYmFzZSBjYW5ub3QgYmUgcmVzb2x2ZWQuXG4gICAqIEB0aHJvd3Mge05vdEZvdW5kRXJyb3J9IFdoZW4gdGhlIGJhc2Ugb3IgdGFibGUgZG9lcyBub3QgZXhpc3QgKEhUVFAgNDA0KS5cbiAgICogQHRocm93cyB7Q29uZmxpY3RFcnJvcn0gV2hlbiBBaXJ0YWJsZSBhbnN3ZXJzIHdpdGggSFRUUCA0MDkuXG4gICAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gV2hlbiBBaXJ0YWJsZSBhbnN3ZXJzIHdpdGggYW55IG90aGVyIEhUVFAgZXJyb3Igc3RhdHVzIChlLmcuIGludmFsaWQgZmllbGQgdmFsdWVzKS5cbiAgICovXG4gIGFzeW5jIGNyZWF0ZVJlY29yZChcbiAgICBpbnB1dDogQWlydGFibGVXcml0ZUlucHV0LFxuICAgIGJhc2VJZD86IHN0cmluZ1xuICApOiBQcm9taXNlPEFpcnRhYmxlUmVjb3JkPiB7XG4gICAgdGhpcy5yZXF1aXJlVG9rZW4oKTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmNsaWVudC5wb3N0PEFpcnRhYmxlUmVjb3JkPihcbiAgICAgICAgdGhpcy50YWJsZVBhdGgoaW5wdXQudGFibGUsIGJhc2VJZCksXG4gICAgICAgIHsgZmllbGRzOiBpbnB1dC5maWVsZHMsIHR5cGVjYXN0OiBpbnB1dC50eXBlY2FzdCA/PyBmYWxzZSB9XG4gICAgICApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkFpcnRhYmxlXCIsIFwiY3JlYXRlIHJlY29yZFwiLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBVcGRhdGVzIGFuIEFpcnRhYmxlIHJlY29yZFxuICAgKiBAc3VtbWFyeSBgUEFUQ0hgZXMgdGhlIGZpZWxkcyBtYXAgb250byB0aGUgcmVjb3JkIGlkZW50aWZpZWQgYnlcbiAgICogYHJlY29yZElkYDsgb25seSB0aGUgcHJvdmlkZWQgZmllbGRzIGNoYW5nZS4gYHR5cGVjYXN0YCBsZXRzIEFpcnRhYmxlXG4gICAqIGNvZXJjZSB2YWx1ZXMgaW50byB0aGUgY29sdW1uIHR5cGVzIChkaXNhYmxlZCBieSBkZWZhdWx0KS5cbiAgICogQHBhcmFtIHtBaXJ0YWJsZVdyaXRlSW5wdXQgJiB7cmVjb3JkSWQ6IHN0cmluZ319IGlucHV0IC0gVGhlIHRhYmxlLCBmaWVsZHMsIHR5cGVjYXN0IG9wdGlvbiwgYW5kIHRhcmdldCByZWNvcmQgSUQuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbYmFzZUlkXSAtIFRoZSBiYXNlIG92ZXJyaWRlOyBmYWxscyBiYWNrIHRvIHRoZSBjb25maWd1cmVkIGBiYXNlSWRgLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxBaXJ0YWJsZVJlY29yZD59IFRoZSB1cGRhdGVkIHJlY29yZCBlbnZlbG9wZS5cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBubyB0b2tlbiBpcyBjb25maWd1cmVkIG9yIHRoZSB0YWJsZS9iYXNlIGNhbm5vdCBiZSByZXNvbHZlZC5cbiAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgcmVjb3JkIGRvZXMgbm90IGV4aXN0IChIVFRQIDQwNCkuXG4gICAqIEB0aHJvd3Mge0NvbmZsaWN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIEhUVFAgNDA5LlxuICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIGFueSBvdGhlciBIVFRQIGVycm9yIHN0YXR1cyAoZS5nLiBpbnZhbGlkIGZpZWxkIHZhbHVlcykuXG4gICAqL1xuICBhc3luYyB1cGRhdGVSZWNvcmQoXG4gICAgaW5wdXQ6IEFpcnRhYmxlV3JpdGVJbnB1dCAmIHsgcmVjb3JkSWQ6IHN0cmluZyB9LFxuICAgIGJhc2VJZD86IHN0cmluZ1xuICApOiBQcm9taXNlPEFpcnRhYmxlUmVjb3JkPiB7XG4gICAgdGhpcy5yZXF1aXJlVG9rZW4oKTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmNsaWVudC5wYXRjaDxBaXJ0YWJsZVJlY29yZD4oXG4gICAgICAgIGAke3RoaXMudGFibGVQYXRoKGlucHV0LnRhYmxlLCBiYXNlSWQpfS8ke2VuY29kZVVSSUNvbXBvbmVudChcbiAgICAgICAgICBpbnB1dC5yZWNvcmRJZFxuICAgICAgICApfWAsXG4gICAgICAgIHsgZmllbGRzOiBpbnB1dC5maWVsZHMsIHR5cGVjYXN0OiBpbnB1dC50eXBlY2FzdCA/PyBmYWxzZSB9XG4gICAgICApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkFpcnRhYmxlXCIsIFwidXBkYXRlIHJlY29yZFwiLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBEZWxldGVzIGFuIEFpcnRhYmxlIHJlY29yZFxuICAgKiBAc3VtbWFyeSBgREVMRVRFYHMgdGhlIHJlY29yZCBpZGVudGlmaWVkIGJ5IGByZWNvcmRJZGAgYW5kIHJldHVybnMgdGhlXG4gICAqIEFpcnRhYmxlIGRlbGV0aW9uIGNvbmZpcm1hdGlvbi5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHRhYmxlIC0gVGhlIHRhYmxlIG5hbWUgb3IgSUQuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSByZWNvcmRJZCAtIFRoZSByZWNvcmQgSUQgdG8gZGVsZXRlLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW2Jhc2VJZF0gLSBUaGUgYmFzZSBvdmVycmlkZTsgZmFsbHMgYmFjayB0byB0aGUgY29uZmlndXJlZCBgYmFzZUlkYC5cbiAgICogQHJldHVybnMge1Byb21pc2U8e2lkOiBzdHJpbmcsIGRlbGV0ZWQ6IGJvb2xlYW59Pn0gVGhlIGRlbGV0ZWQgcmVjb3JkJ3MgSUQgYW5kIEFpcnRhYmxlJ3MgYGRlbGV0ZWRgIGNvbmZpcm1hdGlvbi5cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBubyB0b2tlbiBpcyBjb25maWd1cmVkIG9yIHRoZSB0YWJsZS9iYXNlIGNhbm5vdCBiZSByZXNvbHZlZC5cbiAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgcmVjb3JkIGRvZXMgbm90IGV4aXN0IChIVFRQIDQwNCkuXG4gICAqIEB0aHJvd3Mge0NvbmZsaWN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIEhUVFAgNDA5LlxuICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIGFueSBvdGhlciBIVFRQIGVycm9yIHN0YXR1cy5cbiAgICovXG4gIGFzeW5jIGRlbGV0ZVJlY29yZChcbiAgICB0YWJsZTogc3RyaW5nLFxuICAgIHJlY29yZElkOiBzdHJpbmcsXG4gICAgYmFzZUlkPzogc3RyaW5nXG4gICk6IFByb21pc2U8eyBpZDogc3RyaW5nOyBkZWxldGVkOiBib29sZWFuIH0+IHtcbiAgICB0aGlzLnJlcXVpcmVUb2tlbigpO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LmRlbGV0ZTx7XG4gICAgICAgIGlkOiBzdHJpbmc7XG4gICAgICAgIGRlbGV0ZWQ6IGJvb2xlYW47XG4gICAgICB9PihcbiAgICAgICAgYCR7dGhpcy50YWJsZVBhdGgodGFibGUsIGJhc2VJZCl9LyR7ZW5jb2RlVVJJQ29tcG9uZW50KHJlY29yZElkKX1gXG4gICAgICApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkFpcnRhYmxlXCIsIFwiZGVsZXRlIHJlY29yZFwiLCBlcnJvcik7XG4gICAgfVxuICB9XG59XG4iXX0=
261
+ //# sourceMappingURL=AirtableService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AirtableService.js","sourceRoot":"","sources":["../../../../src/io/airtable/AirtableService.ts"],"names":[],"mappings":"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"}
@@ -4,4 +4,4 @@
4
4
  * @description Re-exports the Airtable client-based service and its types.
5
5
  */
6
6
  export * from "./AirtableService.js";
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW8vYWlydGFibGUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILHFDQUFrQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG1vZHVsZSBpbnRlZ3JhdGlvbnMvaW8vYWlydGFibGVcbiAqIEBzdW1tYXJ5IEFpcnRhYmxlIFdlYiBBUEkgc2VydmljZSAocmVjb3JkIENSVUQpLlxuICogQGRlc2NyaXB0aW9uIFJlLWV4cG9ydHMgdGhlIEFpcnRhYmxlIGNsaWVudC1iYXNlZCBzZXJ2aWNlIGFuZCBpdHMgdHlwZXMuXG4gKi9cbmV4cG9ydCAqIGZyb20gXCIuL0FpcnRhYmxlU2VydmljZVwiO1xuIl19
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/io/airtable/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qCAAkC"}
@@ -309,4 +309,4 @@ export class ConfluenceService extends HttpApiService {
309
309
  }
310
310
  }
311
311
  }
312
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uZmx1ZW5jZVNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW8vY29uZmx1ZW5jZS9Db25mbHVlbmNlU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsNEJBQXVCO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLDJDQUFzQztBQUNyRSxPQUFPLEVBQ0wsY0FBYyxFQUVkLFNBQVMsR0FDVixxQ0FBMEI7QUF1RzNCLHlFQUF5RTtBQUN6RSxNQUFNLGlCQUFpQixHQUFHLE1BQU0sQ0FBQztBQUVqQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E0Q0c7QUFDSCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsY0FBdUM7SUFBOUU7O1FBQ0U7O1dBRUc7UUFDZ0IsZ0JBQVcsR0FBRyxZQUFZLENBQUM7SUF3UWhELENBQUM7SUF0UUM7Ozs7O09BS0c7SUFDTyxjQUFjO1FBQ3RCLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDTyxXQUFXLENBQ25CLE1BQStCO1FBRS9CLElBQUksTUFBTSxDQUFDLFFBQVEsSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDcEMsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FDekIsR0FBRyxNQUFNLENBQUMsUUFBUSxJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFDcEMsTUFBTSxDQUNQLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3JCLE9BQU8sRUFBRSxhQUFhLEVBQUUsU0FBUyxPQUFPLEVBQUUsRUFBRSxDQUFDO1FBQy9DLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FB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aW50ZWdyYXRpb25zL2lvL2NvbmZsdWVuY2Uvc2VydmljZVxuICogQHN1bW1hcnkgQ29uZmx1ZW5jZSBSRVNUIEFQSSBpbnRlZ3JhdGlvbiBzZXJ2aWNlIGZvciBzcGFjZXMgYW5kIHBhZ2VzLlxuICogQGRlc2NyaXB0aW9uIEV4cG9zZXMgQ29uZmx1ZW5jZSBjb250ZW50IG9wZXJhdGlvbnMgKHNwYWNlcywgcGFnZXMsIGFuZCBDUUxcbiAqIHNlYXJjaCkgYXMgYW4gdW5kZWNvcmF0ZWQgY2xpZW50LWJhc2VkIHNlcnZpY2UgYnVpbHQgb25cbiAqIHtAbGluayBIdHRwQXBpU2VydmljZX0uIENvbmZpZ3VyYXRpb24gY29tZXMgZnJvbSBhbiBleHBsaWNpdFxuICogYENvbmZsdWVuY2VTZXJ2aWNlQ29uZmlnYCBvciB0aGUgYGlvLmNvbmZsdWVuY2VgIGVudmlyb25tZW50IHNsaWNlLiBXaGVuIGJvdGhcbiAqIGB1c2VybmFtZWAgYW5kIGB0b2tlbmAgYXJlIGNvbmZpZ3VyZWQgdGhlIHNlcnZpY2Ugc2VuZHMgSFRUUCBCYXNpY1xuICogYXV0aGVudGljYXRpb24gKEFQSSB0b2tlbiBhcyB0aGUgcGFzc3dvcmQpOyBvdGhlcndpc2UgdGhlIHRva2VuIGlzIHNlbnQgYXMgYVxuICogYmVhcmVyIHRva2VuLiBUaGUgc2l0ZSBgYmFzZVVybGAgaXMgcmVxdWlyZWQuIENyZWRlbnRpYWxzIGFyZSByZWZlcmVuY2VkIGZyb21cbiAqIGNvbmZpZ3VyYXRpb24gKGFuZCwgZnJvbSBhcy1ncmFwaCBub2RlcywgZnJvbSB0aGUgcmVzb2x2ZWQgYGNvbmZsdWVuY2VgXG4gKiBjcmVkZW50aWFsIHNlY3JldCkgYW5kIGFyZSBuZXZlciBlbWJlZGRlZCBpbiBzb3VyY2UuIEZhaWx1cmVzIGFyZSBtYXBwZWQgdG9cbiAqIGRlY2FmIGVycm9ycyB2aWEge0BsaW5rIGh0dHBFcnJvcn0uXG4gKi9cbmltcG9ydCB7IEludGVybmFsRXJyb3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnNcIjtcbmltcG9ydCB7IElvRW52aXJvbm1lbnQgfSBmcm9tIFwiLi4vZW52aXJvbm1lbnRcIjtcbmltcG9ydCB7IGVudk51bWJlciwgZW52U3RyaW5nIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9lbnZpcm9ubWVudFZhbHVlXCI7XG5pbXBvcnQge1xuICBIdHRwQXBpU2VydmljZSxcbiAgdHlwZSBIdHRwQXBpU2VydmljZUNvbmZpZyxcbiAgaHR0cEVycm9yLFxufSBmcm9tIFwiLi4vLi4vc2hhcmVkL2h0dHBcIjtcblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gQ29uZmlndXJhdGlvbiBmb3IgdGhlIENvbmZsdWVuY2Ugc2VydmljZVxuICogQHN1bW1hcnkgRXh0ZW5kcyB7QGxpbmsgSHR0cEFwaVNlcnZpY2VDb25maWd9IHdpdGggdGhlIEFQSSBgdG9rZW5gLCB0aGVcbiAqIG9wdGlvbmFsIGB1c2VybmFtZWAgdGhhdCBlbmFibGVzIEJhc2ljIGF1dGhlbnRpY2F0aW9uLCBhbmQgdGhlIHJlcXVpcmVkXG4gKiBzaXRlIGBiYXNlVXJsYC4gV2hlbiBvbWl0dGVkLCB0aGUgYGlvLmNvbmZsdWVuY2VgIGVudmlyb25tZW50IHNsaWNlIHN1cHBsaWVzXG4gKiB0aGUgc2FtZSB2YWx1ZXMgKHBsdXMgb3B0aW9uYWwgYHRpbWVvdXRgKS5cbiAqIEBjYXRlZ29yeSBJT1xuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvaW8vY29uZmx1ZW5jZS9zZXJ2aWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmx1ZW5jZVNlcnZpY2VDb25maWcgZXh0ZW5kcyBIdHRwQXBpU2VydmljZUNvbmZpZyB7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gQ29uZmx1ZW5jZSBBUEkgdG9rZW5cbiAgICogQHN1bW1hcnkgVXNlZCBhcyB0aGUgQmFzaWMtYXV0aCBwYXNzd29yZCB3aGVuIGB1c2VybmFtZWAgaXMgc2V0LCBvdGhlcndpc2UgYXMgYSBiZWFyZXIgdG9rZW4uXG4gICAqL1xuICB0b2tlbj86IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBDb25mbHVlbmNlIGFjY291bnQgdXNlcm5hbWUgZm9yIEJhc2ljIGF1dGhlbnRpY2F0aW9uXG4gICAqL1xuICB1c2VybmFtZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gSW5wdXQgZm9yIGNyZWF0aW5nIGEgQ29uZmx1ZW5jZSBwYWdlXG4gKiBAc3VtbWFyeSBDYXJyaWVzIHRoZSB0YXJnZXQgYHNwYWNlS2V5YCwgcGFnZSBgdGl0bGVgLCBzdG9yYWdlLWZvcm1hdCBib2R5LFxuICogYW5kIG9wdGlvbmFsIGBwYXJlbnRJZGAgb2YgdGhlIGFuY2VzdG9yIHBhZ2UuXG4gKiBAY2F0ZWdvcnkgSU9cbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2lvL2NvbmZsdWVuY2Uvc2VydmljZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbmZsdWVuY2VQYWdlSW5wdXQge1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIFNwYWNlIGtleSB0aGF0IG93bnMgdGhlIG5ldyBwYWdlXG4gICAqL1xuICBzcGFjZUtleTogc3RyaW5nO1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIFBhZ2UgdGl0bGUgKHVuaXF1ZSB3aXRoaW4gdGhlIHNwYWNlKVxuICAgKi9cbiAgdGl0bGU6IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBQYWdlIGJvZHkgaW4gQ29uZmx1ZW5jZSBzdG9yYWdlIGZvcm1hdFxuICAgKi9cbiAgYm9keTogc3RyaW5nO1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIE9wdGlvbmFsIHBhcmVudCBwYWdlIElEXG4gICAqL1xuICBwYXJlbnRJZD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gSW5wdXQgZm9yIHVwZGF0aW5nIGEgQ29uZmx1ZW5jZSBwYWdlXG4gKiBAc3VtbWFyeSBDYXJyaWVzIHRoZSBgcGFnZUlkYCwgbmV3IGB0aXRsZWAgYW5kIHN0b3JhZ2UtZm9ybWF0IGJvZHksIGFuZCBhblxuICogb3B0aW9uYWwgYHZlcnNpb25gLiBXaGVuIGB2ZXJzaW9uYCBpcyBvbWl0dGVkIHRoZSBzZXJ2aWNlIGZldGNoZXMgdGhlXG4gKiBjdXJyZW50IHZlcnNpb24gYW5kIHN1Ym1pdHMgdGhlIG5leHQgb25lLlxuICogQGNhdGVnb3J5IElPXG4gKiBAbWVtYmVyT2YgbW9kdWxlOmludGVncmF0aW9ucy9pby9jb25mbHVlbmNlL3NlcnZpY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25mbHVlbmNlUGFnZVVwZGF0ZSB7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gSUQgb2YgdGhlIHBhZ2UgdG8gdXBkYXRlXG4gICAqL1xuICBwYWdlSWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBOZXcgcGFnZSB0aXRsZVxuICAgKi9cbiAgdGl0bGU6IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBOZXcgcGFnZSBib2R5IGluIENvbmZsdWVuY2Ugc3RvcmFnZSBmb3JtYXRcbiAgICovXG4gIGJvZHk6IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBFeHBsaWNpdCBuZXcgdmVyc2lvbiBudW1iZXIgKGF1dG8taW5jcmVtZW50ZWQgd2hlbiBvbWl0dGVkKVxuICAgKi9cbiAgdmVyc2lvbj86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gSW5wdXQgZm9yIGEgQ29uZmx1ZW5jZSBDUUwgc2VhcmNoXG4gKiBAc3VtbWFyeSBDYXJyaWVzIHRoZSBgY3FsYCBxdWVyeSBhbmQgYW4gb3B0aW9uYWwgcmVzdWx0IGBsaW1pdGAuXG4gKiBAY2F0ZWdvcnkgSU9cbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2lvL2NvbmZsdWVuY2Uvc2VydmljZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbmZsdWVuY2VTZWFyY2hJbnB1dCB7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gQ29uZmx1ZW5jZSBRdWVyeSBMYW5ndWFnZSBleHByZXNzaW9uXG4gICAqL1xuICBjcWw6IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBNYXhpbXVtIG51bWJlciBvZiByZXN1bHRzXG4gICAqL1xuICBsaW1pdD86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gTWluaW1hbCBDb25mbHVlbmNlIGNvbnRlbnQgZGVzY3JpcHRvciB1c2VkIGZvciB2ZXJzaW9uIGxvb2t1cFxuICogQHN1bW1hcnkgQ2FwdHVyZXMgdGhlIGlkZW50aXR5IGFuZCB2ZXJzaW9uIG51bWJlciByZWFkIGJlZm9yZSBhbiB1cGRhdGUuXG4gKi9cbmludGVyZmFjZSBDb25mbHVlbmNlUGFnZSB7XG4gIGlkPzogc3RyaW5nO1xuICB0aXRsZT86IHN0cmluZztcbiAgdmVyc2lvbj86IHsgbnVtYmVyPzogbnVtYmVyIH07XG59XG5cbi8qKiBEZWZhdWx0IENvbmZsdWVuY2UgY29udGVudCB0eXBlIHdyaXR0ZW4gYnkgdGhlIHNlcnZpY2UgKGBcInBhZ2VcImApLiAqL1xuY29uc3QgREVGQVVMVF9QQUdFX1RZUEUgPSBcInBhZ2VcIjtcblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gQ29uZmx1ZW5jZSBSRVNUIEFQSSBpbnRlZ3JhdGlvbiBzZXJ2aWNlXG4gKiBAc3VtbWFyeSBBbiB1bmRlY29yYXRlZCBIVFRQIHNlcnZpY2UgZm9yIHJlYWRpbmcsIGNyZWF0aW5nLCB1cGRhdGluZywgYW5kXG4gKiBkZWxldGluZyBwYWdlcywgbGlzdGluZyBzcGFjZXMsIGFuZCBydW5uaW5nIENRTCBzZWFyY2hlcy4gVGhlIHNpdGUgYmFzZSBVUkxcbiAqIGFuZCBBUEkgdG9rZW4gYXJlIHJlcXVpcmVkOyBzdXBwbHlpbmcgYSBgdXNlcm5hbWVgIHN3aXRjaGVzIGF1dGhlbnRpY2F0aW9uIHRvXG4gKiBCYXNpYywgYW5kIHRyYW5zcG9ydCBmYWlsdXJlcyBhcmUgbWFwcGVkIHRvIGRlY2FmIGVycm9ycyB2aWFcbiAqIHtAbGluayBodHRwRXJyb3J9LlxuICogQGNsYXNzIENvbmZsdWVuY2VTZXJ2aWNlXG4gKiBAZXh0ZW5kcyBIdHRwQXBpU2VydmljZVxuICogQGNhdGVnb3J5IElPXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIGltcG9ydCB7IENvbmZsdWVuY2VTZXJ2aWNlIH0gZnJvbSBcIkBkZWNhZi10cy9pbnRlZ3JhdGlvbnMvaW8vY29uZmx1ZW5jZVwiO1xuICpcbiAqIGNvbnN0IGNvbmZsdWVuY2UgPSBuZXcgQ29uZmx1ZW5jZVNlcnZpY2UoKTtcbiAqIGF3YWl0IGNvbmZsdWVuY2UuaW5pdGlhbGl6ZSh7XG4gKiAgIGJhc2VVcmw6IFwiaHR0cHM6Ly9leGFtcGxlLmF0bGFzc2lhbi5uZXQvd2lraVwiLFxuICogICB1c2VybmFtZTogcHJvY2Vzcy5lbnYuQ09ORkxVRU5DRV9VU0VSTkFNRSxcbiAqICAgdG9rZW46IHByb2Nlc3MuZW52LkdSQVBIX0NSRURFTlRJQUxfQ09ORkxVRU5DRV9UT0tFTixcbiAqIH0pO1xuICogY29uc3QgcGFnZSA9IGF3YWl0IGNvbmZsdWVuY2UuZ2V0UGFnZShcIjEyMzQ1NlwiKTtcbiAqIGBgYFxuICogQG1lcm1haWRcbiAqIHNlcXVlbmNlRGlhZ3JhbVxuICogICBhdXRvbnVtYmVyXG4gKiAgIHBhcnRpY2lwYW50IENhbGxlclxuICogICBwYXJ0aWNpcGFudCBTZXJ2aWNlIGFzIENvbmZsdWVuY2VTZXJ2aWNlXG4gKiAgIHBhcnRpY2lwYW50IEFQSSBhcyBDb25mbHVlbmNlIFJFU1QgQVBJXG4gKiAgIENhbGxlci0+PlNlcnZpY2U6IHVwZGF0ZVBhZ2UoaW5wdXQpXG4gKiAgIGFjdGl2YXRlIFNlcnZpY2VcbiAqICAgU2VydmljZS0+PlNlcnZpY2U6IHJlcXVpcmVDcmVkZW50aWFscygpXG4gKiAgIG9wdCB2ZXJzaW9uIG9taXR0ZWRcbiAqICAgICBTZXJ2aWNlLT4+QVBJOiBHRVQgL3Jlc3QvYXBpL2NvbnRlbnQve2lkfT9leHBhbmQ9dmVyc2lvblxuICogICAgIGFjdGl2YXRlIEFQSVxuICogICAgIEFQSS0tPj5TZXJ2aWNlOiBjdXJyZW50IHZlcnNpb25cbiAqICAgICBkZWFjdGl2YXRlIEFQSVxuICogICBlbmRcbiAqICAgU2VydmljZS0+PkFQSTogUFVUIC9yZXN0L2FwaS9jb250ZW50L3tpZH1cbiAqICAgYWN0aXZhdGUgQVBJXG4gKiAgIEFQSS0tPj5TZXJ2aWNlOiB1cGRhdGVkIHBhZ2VcbiAqICAgZGVhY3RpdmF0ZSBBUElcbiAqICAgU2VydmljZS0tPj5DYWxsZXI6IHVwZGF0ZWQgcGFnZVxuICogICBkZWFjdGl2YXRlIFNlcnZpY2VcbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2lvL2NvbmZsdWVuY2Uvc2VydmljZVxuICovXG5leHBvcnQgY2xhc3MgQ29uZmx1ZW5jZVNlcnZpY2UgZXh0ZW5kcyBIdHRwQXBpU2VydmljZTxDb25mbHVlbmNlU2VydmljZUNvbmZpZz4ge1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIFRoZSBwcm92aWRlciBuYW1lIHVzZWQgaW4gZXJyb3IgbWVzc2FnZXNcbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBzZXJ2aWNlTmFtZSA9IFwiQ29uZmx1ZW5jZVwiO1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gVGhlIGRlZmF1bHQgYmFzZSBVUkwgZm9yIENvbmZsdWVuY2VcbiAgICogQHN1bW1hcnkgUmV0dXJucyBhbiBlbXB0eSBzdHJpbmc7IENvbmZsdWVuY2UgaXMgc2l0ZS1ob3N0ZWQsIHNvIHRoZVxuICAgKiByZXNvbHZlZCBgYmFzZVVybGAgKGZyb20gY29uZmlnIG9yIGBpby5jb25mbHVlbmNlLmJhc2VVcmxgKSBpcyByZXF1aXJlZC5cbiAgICogQHJldHVybnMge3N0cmluZ30gQW4gZW1wdHkgc3RyaW5nLlxuICAgKi9cbiAgcHJvdGVjdGVkIGRlZmF1bHRCYXNlVXJsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFwiXCI7XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEJ1aWxkcyB0aGUgQ29uZmx1ZW5jZSBhdXRoZW50aWNhdGlvbiBoZWFkZXJzXG4gICAqIEBzdW1tYXJ5IFVzZXMgSFRUUCBCYXNpYyAoYHVzZXJuYW1lOnRva2VuYCkgd2hlbiBib3RoIHZhbHVlcyBhcmUgcHJlc2VudCxcbiAgICogb3RoZXJ3aXNlIGEgYmVhcmVyIHRva2VuIHdoZW4gb25seSBgdG9rZW5gIGlzIHByZXNlbnQsIG90aGVyd2lzZSBub1xuICAgKiBoZWFkZXJzLlxuICAgKiBAcGFyYW0ge0NvbmZsdWVuY2VTZXJ2aWNlQ29uZmlnfSBjb25maWcgLSBUaGUgcmVzb2x2ZWQgc2VydmljZSBjb25maWd1cmF0aW9uLlxuICAgKiBAcmV0dXJucyB7UmVjb3JkPHN0cmluZywgc3RyaW5nPn0gVGhlIGF1dGhvcml6YXRpb24gaGVhZGVycy5cbiAgICovXG4gIHByb3RlY3RlZCBhdXRoSGVhZGVycyhcbiAgICBjb25maWc6IENvbmZsdWVuY2VTZXJ2aWNlQ29uZmlnXG4gICk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4ge1xuICAgIGlmIChjb25maWcudXNlcm5hbWUgJiYgY29uZmlnLnRva2VuKSB7XG4gICAgICBjb25zdCBlbmNvZGVkID0gQnVmZmVyLmZyb20oXG4gICAgICAgIGAke2NvbmZpZy51c2VybmFtZX06JHtjb25maWcudG9rZW59YCxcbiAgICAgICAgXCJ1dGY4XCJcbiAgICAgICkudG9TdHJpbmcoXCJiYXNlNjRcIik7XG4gICAgICByZXR1cm4geyBBdXRob3JpemF0aW9uOiBgQmFzaWMgJHtlbmNvZGVkfWAgfTtcbiAgICB9XG4gICAgcmV0dXJuIGNvbmZpZy50b2tlbiA/IHsgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke2NvbmZpZy50b2tlbn1gIH0gOiB7fTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gUmVhZHMgdGhlIENvbmZsdWVuY2UgY3JlZGVudGlhbHMgYW5kIGRlZmF1bHRzIGZyb20gdGhlIGVudmlyb25tZW50XG4gICAqIEBzdW1tYXJ5IFJlYWRzIHRoZSBgaW8uY29uZmx1ZW5jZWAgc2xpY2UgYW5kIHJldHVybnMgYSBwYXJ0aWFsIGNvbmZpZyB3aGVuXG4gICAqIGFuIEFQSSB0b2tlbiBpcyBjb25maWd1cmVkLCBgdW5kZWZpbmVkYCBvdGhlcndpc2UuIFZhbHVlcyBwYXNzIHRocm91Z2hcbiAgICogYGVudlN0cmluZ2AvYGVudk51bWJlcmAgdG8gcmVqZWN0IHVuc2V0LWxlYWYgcHJveGllcy5cbiAgICogQHJldHVybnMge1BhcnRpYWw8Q29uZmx1ZW5jZVNlcnZpY2VDb25maWc+IHwgdW5kZWZpbmVkfSBBIHBhcnRpYWwgY29uZmlnLCBvciBgdW5kZWZpbmVkYCB3aGVuIG5vIENvbmZsdWVuY2UgdG9rZW4gaXMgY29uZmlndXJlZC5cbiAgICovXG4gIHByb3RlY3RlZCBjb25maWdGcm9tRW52aXJvbm1lbnQoKTpcbiAgICB8IFBhcnRpYWw8Q29uZmx1ZW5jZVNlcnZpY2VDb25maWc+XG4gICAgfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IGVudiA9IElvRW52aXJvbm1lbnQuaW8uY29uZmx1ZW5jZTtcbiAgICBjb25zdCB0b2tlbiA9IGVudlN0cmluZyhlbnY/LnRva2VuKTtcbiAgICBpZiAoIXRva2VuKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIHJldHVybiB7XG4gICAgICB0b2tlbixcbiAgICAgIHVzZXJuYW1lOiBlbnZTdHJpbmcoZW52LnVzZXJuYW1lKSxcbiAgICAgIGJhc2VVcmw6IGVudlN0cmluZyhlbnYuYmFzZVVybCksXG4gICAgICB0aW1lb3V0OiBlbnZOdW1iZXIoZW52LnRpbWVvdXQpLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEFzc2VydHMgdGhhdCB0aGUgQ29uZmx1ZW5jZSB0b2tlbiBhbmQgc2l0ZSBiYXNlIFVSTCBhcmUgY29uZmlndXJlZFxuICAgKiBAc3VtbWFyeSBDYWxsZWQgYnkgZXZlcnkgb3BlcmF0aW9uIGJlZm9yZSBpdCB0b3VjaGVzIHRoZSBuZXR3b3JrLlxuICAgKiBAcmV0dXJucyB7dm9pZH1cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBubyBBUEkgdG9rZW4gb3IgYmFzZSBVUkwgaXMgY29uZmlndXJlZC5cbiAgICovXG4gIHByb3RlY3RlZCByZXF1aXJlQ3JlZGVudGlhbHMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNvbmZpZy50b2tlbikge1xuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJDb25mbHVlbmNlIHJlcXVpcmVzIGFuIEFQSSB0b2tlblwiKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLmNvbmZpZy5iYXNlVXJsKSB7XG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIkNvbmZsdWVuY2UgcmVxdWlyZXMgYSBiYXNlIFVSTFwiKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIFdyYXBzIGEgYm9keSBpbiB0aGUgQ29uZmx1ZW5jZSBzdG9yYWdlIHJlcHJlc2VudGF0aW9uXG4gICAqIEBzdW1tYXJ5IFByb2R1Y2VzIHRoZSBgeyBzdG9yYWdlOiB7IHZhbHVlLCByZXByZXNlbnRhdGlvbiB9IH1gIGVudmVsb3BlXG4gICAqIHRoZSBjb250ZW50IEFQSSBleHBlY3RzLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYm9keSAtIFRoZSBDb25mbHVlbmNlIHN0b3JhZ2UtZm9ybWF0IGJvZHkuXG4gICAqIEByZXR1cm5zIHtSZWNvcmQ8c3RyaW5nLCB1bmtub3duPn0gVGhlIHN0b3JhZ2UgYm9keSBlbnZlbG9wZS5cbiAgICovXG4gIHByaXZhdGUgc3RvcmFnZUJvZHkoYm9keTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4ge1xuICAgIHJldHVybiB7XG4gICAgICBzdG9yYWdlOiB7XG4gICAgICAgIHZhbHVlOiBib2R5LFxuICAgICAgICByZXByZXNlbnRhdGlvbjogXCJzdG9yYWdlXCIsXG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEZldGNoZXMgYSBDb25mbHVlbmNlIHBhZ2VcbiAgICogQHN1bW1hcnkgYEdFVGBzIGAvcmVzdC9hcGkvY29udGVudC88aWQ+YCB3aXRoIHRoZSByZXF1ZXN0ZWQgYGV4cGFuZGBcbiAgICogZmllbGRzIChkZWZhdWx0IGBib2R5LnN0b3JhZ2UsdmVyc2lvbmApLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gcGFnZUlkIC0gVGhlIHBhZ2UgSUQuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbZXhwYW5kXSAtIENvbW1hLXNlcGFyYXRlZCBmaWVsZHMgdG8gZXhwYW5kOyBkZWZhdWx0cyB0byBgXCJib2R5LnN0b3JhZ2UsdmVyc2lvblwiYC5cbiAgICogQHJldHVybnMge1Byb21pc2U8dW5rbm93bj59IFRoZSBwYWdlIHBheWxvYWQuXG4gICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IFdoZW4gY3JlZGVudGlhbHMgYXJlIG1pc3Npbmcgb3IgdGhlIHBhZ2UgSUQgaXMgZW1wdHkuXG4gICAqIEB0aHJvd3Mge05vdEZvdW5kRXJyb3J9IFdoZW4gdGhlIHBhZ2UgZG9lcyBub3QgZXhpc3QgKEhUVFAgNDA0KS5cbiAgICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSBXaGVuIHRoZSBBUEkgcmVqZWN0cyB0aGUgcmVxdWVzdC5cbiAgICovXG4gIGFzeW5jIGdldFBhZ2UocGFnZUlkOiBzdHJpbmcsIGV4cGFuZCA9IFwiYm9keS5zdG9yYWdlLHZlcnNpb25cIik6IFByb21pc2U8dW5rbm93bj4ge1xuICAgIHRoaXMucmVxdWlyZUNyZWRlbnRpYWxzKCk7XG4gICAgaWYgKCFwYWdlSWQpIHtcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFwiQ29uZmx1ZW5jZSByZXF1aXJlcyBhIHBhZ2UgaWRcIik7XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LmdldChcbiAgICAgICAgYC9yZXN0L2FwaS9jb250ZW50LyR7ZW5jb2RlVVJJQ29tcG9uZW50KHBhZ2VJZCl9YCxcbiAgICAgICAgeyBwYXJhbXM6IHsgZXhwYW5kIH0gfVxuICAgICAgKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBodHRwRXJyb3IoXCJDb25mbHVlbmNlXCIsIFwiZ2V0IHBhZ2VcIiwgZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gTGlzdHMgQ29uZmx1ZW5jZSBzcGFjZXNcbiAgICogQHN1bW1hcnkgYEdFVGBzIGAvcmVzdC9hcGkvc3BhY2VgIHdpdGggYSByZXN1bHQgYGxpbWl0YCAoZGVmYXVsdCBgMjVgKS5cbiAgICogQHBhcmFtIHtudW1iZXJ9IFtsaW1pdF0gLSBNYXhpbXVtIG51bWJlciBvZiBzcGFjZXMgdG8gcmV0dXJuOyBkZWZhdWx0cyB0byBgMjVgLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx1bmtub3duPn0gVGhlIHNwYWNlIGNvbGxlY3Rpb24gcGF5bG9hZC5cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBjcmVkZW50aWFscyBhcmUgbWlzc2luZy5cbiAgICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSBXaGVuIHRoZSBBUEkgcmVqZWN0cyB0aGUgcmVxdWVzdC5cbiAgICovXG4gIGFzeW5jIGxpc3RTcGFjZXMobGltaXQgPSAyNSk6IFByb21pc2U8dW5rbm93bj4ge1xuICAgIHRoaXMucmVxdWlyZUNyZWRlbnRpYWxzKCk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQuZ2V0KFwiL3Jlc3QvYXBpL3NwYWNlXCIsIHtcbiAgICAgICAgcGFyYW1zOiB7IGxpbWl0IH0sXG4gICAgICB9KTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBodHRwRXJyb3IoXCJDb25mbHVlbmNlXCIsIFwibGlzdCBzcGFjZXNcIiwgZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gQ3JlYXRlcyBhIENvbmZsdWVuY2UgcGFnZVxuICAgKiBAc3VtbWFyeSBgUE9TVGBzIGEgYHBhZ2VgIGNvbnRlbnQgZW50cnkgaW4gdGhlIHRhcmdldCBzcGFjZSwgb3B0aW9uYWxseVxuICAgKiB1bmRlciBhIHBhcmVudCwgd2l0aCB0aGUgYm9keSBpbiBzdG9yYWdlIGZvcm1hdC5cbiAgICogQHBhcmFtIHtDb25mbHVlbmNlUGFnZUlucHV0fSBpbnB1dCAtIFRoZSBzcGFjZSwgdGl0bGUsIGJvZHksIGFuZCBvcHRpb25hbCBwYXJlbnQuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHVua25vd24+fSBUaGUgY3JlYXRlZCBwYWdlIHBheWxvYWQuXG4gICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IFdoZW4gY3JlZGVudGlhbHMgYXJlIG1pc3NpbmcsIG9yIHRoZSBzcGFjZSBrZXkgb3IgdGl0bGUgaXMgZW1wdHkuXG4gICAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gV2hlbiB0aGUgQVBJIHJlamVjdHMgdGhlIHBhZ2UuXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYHRzXG4gICAqIGF3YWl0IGNvbmZsdWVuY2UuY3JlYXRlUGFnZSh7XG4gICAqICAgc3BhY2VLZXk6IFwiT1BTXCIsXG4gICAqICAgdGl0bGU6IFwiUmVsZWFzZSAxLjIuMFwiLFxuICAgKiAgIGJvZHk6IFwiPHA+RGV0YWlsc+KApjwvcD5cIixcbiAgICogfSk7XG4gICAqIGBgYFxuICAgKi9cbiAgYXN5bmMgY3JlYXRlUGFnZShpbnB1dDogQ29uZmx1ZW5jZVBhZ2VJbnB1dCk6IFByb21pc2U8dW5rbm93bj4ge1xuICAgIHRoaXMucmVxdWlyZUNyZWRlbnRpYWxzKCk7XG4gICAgaWYgKCFpbnB1dC5zcGFjZUtleSB8fCAhaW5wdXQudGl0bGUpIHtcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgICBcIkNvbmZsdWVuY2UgY3JlYXRlUGFnZSByZXF1aXJlcyBhIHNwYWNlIGtleSBhbmQgdGl0bGVcIlxuICAgICAgKTtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQucG9zdChcIi9yZXN0L2FwaS9jb250ZW50XCIsIHtcbiAgICAgICAgdHlwZTogREVGQVVMVF9QQUdFX1RZUEUsXG4gICAgICAgIHRpdGxlOiBpbnB1dC50aXRsZSxcbiAgICAgICAgc3BhY2U6IHsga2V5OiBpbnB1dC5zcGFjZUtleSB9LFxuICAgICAgICAuLi4oaW5wdXQucGFyZW50SWQgPyB7IGFuY2VzdG9yczogW3sgaWQ6IGlucHV0LnBhcmVudElkIH1dIH0gOiB7fSksXG4gICAgICAgIGJvZHk6IHRoaXMuc3RvcmFnZUJvZHkoaW5wdXQuYm9keSA/PyBcIlwiKSxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkNvbmZsdWVuY2VcIiwgXCJjcmVhdGUgcGFnZVwiLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBVcGRhdGVzIGEgQ29uZmx1ZW5jZSBwYWdlXG4gICAqIEBzdW1tYXJ5IGBQVVRgcyB0aGUgbmV3IHRpdGxlIGFuZCBzdG9yYWdlIGJvZHkuIFdoZW4gYHZlcnNpb25gIGlzIG9taXR0ZWRcbiAgICogdGhlIGN1cnJlbnQgdmVyc2lvbiBpcyByZWFkIGZpcnN0IGFuZCB0aGUgbmV4dCBudW1iZXIgaXMgc3VibWl0dGVkLCBhc1xuICAgKiBDb25mbHVlbmNlIHJlcXVpcmVzIG9wdGltaXN0aWMgdmVyc2lvbmluZy5cbiAgICogQHBhcmFtIHtDb25mbHVlbmNlUGFnZVVwZGF0ZX0gaW5wdXQgLSBUaGUgcGFnZSwgbmV3IHRpdGxlL2JvZHksIGFuZCBvcHRpb25hbCB2ZXJzaW9uLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx1bmtub3duPn0gVGhlIHVwZGF0ZWQgcGFnZSBwYXlsb2FkLlxuICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIGNyZWRlbnRpYWxzIGFyZSBtaXNzaW5nLCBvciB0aGUgcGFnZSBJRCBvciB0aXRsZSBpcyBlbXB0eS5cbiAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgcGFnZSBkb2VzIG5vdCBleGlzdCAoSFRUUCA0MDQpLlxuICAgKiBAdGhyb3dzIHtDb25mbGljdEVycm9yfSBXaGVuIHRoZSBzdWJtaXR0ZWQgdmVyc2lvbiBpcyBzdGFsZSAoSFRUUCA0MDkpLlxuICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gdGhlIEFQSSByZWplY3RzIHRoZSB1cGRhdGUuXG4gICAqL1xuICBhc3luYyB1cGRhdGVQYWdlKGlucHV0OiBDb25mbHVlbmNlUGFnZVVwZGF0ZSk6IFByb21pc2U8dW5rbm93bj4ge1xuICAgIHRoaXMucmVxdWlyZUNyZWRlbnRpYWxzKCk7XG4gICAgaWYgKCFpbnB1dC5wYWdlSWQgfHwgIWlucHV0LnRpdGxlKSB7XG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcbiAgICAgICAgXCJDb25mbHVlbmNlIHVwZGF0ZVBhZ2UgcmVxdWlyZXMgYSBwYWdlIGlkIGFuZCB0aXRsZVwiXG4gICAgICApO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgbGV0IHZlcnNpb24gPSBpbnB1dC52ZXJzaW9uO1xuICAgICAgaWYgKHZlcnNpb24gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCBjdXJyZW50ID0gYXdhaXQgdGhpcy5jbGllbnQuZ2V0PENvbmZsdWVuY2VQYWdlPihcbiAgICAgICAgICBgL3Jlc3QvYXBpL2NvbnRlbnQvJHtlbmNvZGVVUklDb21wb25lbnQoaW5wdXQucGFnZUlkKX1gLFxuICAgICAgICAgIHsgcGFyYW1zOiB7IGV4cGFuZDogXCJ2ZXJzaW9uXCIgfSB9XG4gICAgICAgICk7XG4gICAgICAgIHZlcnNpb24gPSAoY3VycmVudC5kYXRhLnZlcnNpb24/Lm51bWJlciA/PyAwKSArIDE7XG4gICAgICB9XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LnB1dChcbiAgICAgICAgYC9yZXN0L2FwaS9jb250ZW50LyR7ZW5jb2RlVVJJQ29tcG9uZW50KGlucHV0LnBhZ2VJZCl9YCxcbiAgICAgICAge1xuICAgICAgICAgIGlkOiBpbnB1dC5wYWdlSWQsXG4gICAgICAgICAgdHlwZTogREVGQVVMVF9QQUdFX1RZUEUsXG4gICAgICAgICAgdGl0bGU6IGlucHV0LnRpdGxlLFxuICAgICAgICAgIHZlcnNpb246IHsgbnVtYmVyOiB2ZXJzaW9uIH0sXG4gICAgICAgICAgYm9keTogdGhpcy5zdG9yYWdlQm9keShpbnB1dC5ib2R5ID8/IFwiXCIpLFxuICAgICAgICB9XG4gICAgICApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkNvbmZsdWVuY2VcIiwgXCJ1cGRhdGUgcGFnZVwiLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBEZWxldGVzIGEgQ29uZmx1ZW5jZSBwYWdlXG4gICAqIEBzdW1tYXJ5IGBERUxFVEVgcyB0aGUgY29udGVudCBlbnRyeSBhbmQgcmV0dXJucyBgeyBkZWxldGVkOiB0cnVlLCBwYWdlSWQgfWAuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBwYWdlSWQgLSBUaGUgcGFnZSBJRCB0byBkZWxldGUuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHVua25vd24+fSBgeyBkZWxldGVkOiB0cnVlLCBwYWdlSWQgfWAgb24gc3VjY2Vzcy5cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBjcmVkZW50aWFscyBhcmUgbWlzc2luZyBvciB0aGUgcGFnZSBJRCBpcyBlbXB0eS5cbiAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgcGFnZSBkb2VzIG5vdCBleGlzdCAoSFRUUCA0MDQpLlxuICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gdGhlIEFQSSByZWplY3RzIHRoZSBkZWxldGlvbi5cbiAgICovXG4gIGFzeW5jIGRlbGV0ZVBhZ2UocGFnZUlkOiBzdHJpbmcpOiBQcm9taXNlPHVua25vd24+IHtcbiAgICB0aGlzLnJlcXVpcmVDcmVkZW50aWFscygpO1xuICAgIGlmICghcGFnZUlkKSB7XG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIkNvbmZsdWVuY2UgcmVxdWlyZXMgYSBwYWdlIGlkXCIpO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGhpcy5jbGllbnQuZGVsZXRlKFxuICAgICAgICBgL3Jlc3QvYXBpL2NvbnRlbnQvJHtlbmNvZGVVUklDb21wb25lbnQocGFnZUlkKX1gXG4gICAgICApO1xuICAgICAgcmV0dXJuIHsgZGVsZXRlZDogdHJ1ZSwgcGFnZUlkIH07XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkNvbmZsdWVuY2VcIiwgXCJkZWxldGUgcGFnZVwiLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBTZWFyY2hlcyBDb25mbHVlbmNlIGNvbnRlbnQgd2l0aCBDUUxcbiAgICogQHN1bW1hcnkgYEdFVGBzIGAvcmVzdC9hcGkvY29udGVudC9zZWFyY2hgIHdpdGggdGhlIENRTCBleHByZXNzaW9uIGFuZCBhblxuICAgKiBvcHRpb25hbCBgbGltaXRgLlxuICAgKiBAcGFyYW0ge0NvbmZsdWVuY2VTZWFyY2hJbnB1dH0gaW5wdXQgLSBUaGUgQ1FMIHF1ZXJ5IGFuZCByZXN1bHQgbGltaXQuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHVua25vd24+fSBUaGUgc2VhcmNoIHJlc3VsdCBwYXlsb2FkLlxuICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIGNyZWRlbnRpYWxzIGFyZSBtaXNzaW5nIG9yIHRoZSBDUUwgcXVlcnkgaXMgZW1wdHkuXG4gICAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gV2hlbiB0aGUgQ1FMIHF1ZXJ5IGlzIGludmFsaWQuXG4gICAqL1xuICBhc3luYyBzZWFyY2goaW5wdXQ6IENvbmZsdWVuY2VTZWFyY2hJbnB1dCk6IFByb21pc2U8dW5rbm93bj4ge1xuICAgIHRoaXMucmVxdWlyZUNyZWRlbnRpYWxzKCk7XG4gICAgaWYgKCFpbnB1dC5jcWwpIHtcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFwiQ29uZmx1ZW5jZSBzZWFyY2ggcmVxdWlyZXMgYSBDUUwgcXVlcnlcIik7XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LmdldChcIi9yZXN0L2FwaS9jb250ZW50L3NlYXJjaFwiLCB7XG4gICAgICAgIHBhcmFtczoge1xuICAgICAgICAgIGNxbDogaW5wdXQuY3FsLFxuICAgICAgICAgIC4uLihpbnB1dC5saW1pdCAhPT0gdW5kZWZpbmVkID8geyBsaW1pdDogaW5wdXQubGltaXQgfSA6IHt9KSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkNvbmZsdWVuY2VcIiwgXCJzZWFyY2ggY29udGVudFwiLCBlcnJvcik7XG4gICAgfVxuICB9XG59XG4iXX0=
312
+ //# sourceMappingURL=ConfluenceService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfluenceService.js","sourceRoot":"","sources":["../../../../src/io/confluence/ConfluenceService.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  export * from "./ConfluenceService.js";
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW8vY29uZmx1ZW5jZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1Q0FBb0MiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9Db25mbHVlbmNlU2VydmljZVwiO1xuIl19
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/io/confluence/index.ts"],"names":[],"mappings":"AAAA,uCAAoC"}
@@ -67,4 +67,4 @@ export const IoEnvironment = LoggedEnvironment.accumulate({
67
67
  },
68
68
  },
69
69
  });
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW8vZW52aXJvbm1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFzRnREOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQkc7QUFDSCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsaUJBQWlCLENBQUMsVUFBVSxDQUFDO0lBQ3hELEVBQUUsRUFBRTtRQUNGLFFBQVEsRUFBRTtZQUNSLEtBQUssRUFBRSxFQUFFO1lBQ1QsT0FBTyxFQUFFLEVBQUU7WUFDWCxNQUFNLEVBQUUsRUFBRTtZQUNWLE9BQU8sRUFBRSxTQUE4QjtTQUN4QztRQUNELFlBQVksRUFBRTtZQUNaLEtBQUssRUFBRSxFQUFFO1lBQ1QsTUFBTSxFQUFFLEVBQUU7WUFDVixPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxTQUE4QjtTQUN4QztRQUNELE9BQU8sRUFBRTtZQUNQLFFBQVEsRUFBRSxFQUFFO1lBQ1osS0FBSyxFQUFFLEVBQUU7WUFDVCxPQUFPLEVBQUUsU0FBOEI7U0FDeEM7UUFDRCxjQUFjLEVBQUU7WUFDZCxLQUFLLEVBQUUsRUFBRTtZQUNULE9BQU8sRUFBRSxFQUFFO1lBQ1gsT0FBTyxFQUFFLFNBQThCO1NBQ3hDO1FBQ0QsVUFBVSxFQUFFO1lBQ1YsUUFBUSxFQUFFLEVBQUU7WUFDWixLQUFLLEVBQUUsRUFBRTtZQUNULE9BQU8sRUFBRSxFQUFFO1lBQ1gsT0FBTyxFQUFFLFNBQThCO1NBQ3hDO1FBQ0QsSUFBSSxFQUFFO1lBQ0osUUFBUSxFQUFFLEVBQUU7WUFDWixLQUFLLEVBQUUsRUFBRTtZQUNULE9BQU8sRUFBRSxFQUFFO1lBQ1gsT0FBTyxFQUFFLFNBQThCO1NBQ3hDO1FBQ0QsVUFBVSxFQUFFO1lBQ1YsS0FBSyxFQUFFLEVBQUU7WUFDVCxNQUFNLEVBQUUsRUFBRTtZQUNWLE9BQU8sRUFBRSxFQUFFO1lBQ1gsT0FBTyxFQUFFLFNBQThCO1NBQ3hDO1FBQ0QsbUJBQW1CLEVBQUU7WUFDbkIsS0FBSyxFQUFFLEVBQUU7WUFDVCxPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxTQUE4QjtTQUN4QztLQUNGO0NBQ29CLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvZ2dlZEVudmlyb25tZW50IH0gZnJvbSBcIkBkZWNhZi10cy9sb2dnaW5nXCI7XG5cbi8qKlxuICogQG1vZHVsZSBpbnRlZ3JhdGlvbnMvaW8vZW52aXJvbm1lbnRcbiAqIEBzdW1tYXJ5IEVudmlyb25tZW50IGNvbnRyYWN0IGFuZCBhY2N1bXVsYXRlZCBlbnZpcm9ubWVudCBmb3IgdGhlIGlvIGludGVncmF0aW9uIHNlcnZpY2VzLlxuICogQGRlc2NyaXB0aW9uIERlY2xhcmVzIHRoZSBgSW9FbnZpcm9ubWVudFNoYXBlYCBjb25zdW1lZCBieSB0aGUgQWlydGFibGUsXG4gKiBHb29nbGUgU2hlZXRzLCBHcmFwaFFMLCBNaWNyb3NvZnQgRXhjZWwsIENvbmZsdWVuY2UsIEppcmEsIEdvb2dsZSBEb2NzLCBhbmRcbiAqIE1pY3Jvc29mdCBTaGFyZVBvaW50IHNlcnZpY2VzJyBgY29uZmlnRnJvbUVudmlyb25tZW50KClgIGltcGxlbWVudGF0aW9ucyBhbmRcbiAqIHRoZSBgSW9FbnZpcm9ubWVudGAgc2luZ2xldG9uIGNyZWF0ZWQgdmlhIGBMb2dnZWRFbnZpcm9ubWVudC5hY2N1bXVsYXRlYC5cbiAqIFNlcnZpY2VzIHJlYWQgdGhlaXIgY3JlZGVudGlhbHMgYW5kIGRlZmF1bHRzIGZyb20gdGhlIG1hdGNoaW5nXG4gKiBgaW8uPHByb3ZpZGVyPmAgc2xpY2UsIHVzaW5nIHRoZSBgZW52U3RyaW5nYC9gZW52TnVtYmVyYCBoZWxwZXJzIGZyb21cbiAqIGBzaGFyZWQvZW52aXJvbm1lbnRWYWx1ZWAgdG8gcmVqZWN0IHVuc2V0LWxlYWYgcHJveGllcy4gVGhlIG1hdGNoaW5nIHB1YmxpY1xuICogc3VicGF0aCBleHBvcnRzIGFyZSBgQGRlY2FmLXRzL2ludGVncmF0aW9ucy9pby9taWNyb3NvZnQtZXhjZWxgLFxuICogYEBkZWNhZi10cy9pbnRlZ3JhdGlvbnMvaW8vY29uZmx1ZW5jZWAsXG4gKiBgQGRlY2FmLXRzL2ludGVncmF0aW9ucy9pby9qaXJhYCxcbiAqIGBAZGVjYWYtdHMvaW50ZWdyYXRpb25zL2lvL2dvb2dsZS1kb2NzYCwgYW5kXG4gKiBgQGRlY2FmLXRzL2ludGVncmF0aW9ucy9pby9taWNyb3NvZnQtc2hhcmVwb2ludGAuXG4gKi9cbi8qKlxuICogQGRlc2NyaXB0aW9uIEVudmlyb25tZW50IHNoYXBlIGZvciB0aGUgaW8gaW50ZWdyYXRpb24gc2VydmljZXNcbiAqIEBzdW1tYXJ5IERlZmluZXMgdGhlIGBpb2Agcm9vdCB3aXRoIG9uZSBzbGljZSBwZXIgcHJvdmlkZXIgKGBhaXJ0YWJsZWAsXG4gKiBgZ29vZ2xlU2hlZXRzYCwgYGdyYXBocWxgLCBgbWljcm9zb2Z0RXhjZWxgLCBgY29uZmx1ZW5jZWAsIGBqaXJhYCxcbiAqIGBnb29nbGVEb2NzYCwgYG1pY3Jvc29mdFNoYXJlUG9pbnRgKS4gRWFjaCBzbGljZSBjYXJyaWVzIHRoZSBwcm92aWRlcidzXG4gKiByZXF1aXJlZCBjcmVkZW50aWFscyAoYHRva2VuYCwgcGx1cyBgYmFzZUlkYC9gYXBpS2V5YC9gZW5kcG9pbnRgL2B1c2VybmFtZWBcbiAqIHdoZXJlIGFwcGxpY2FibGUpIHBsdXMgYW4gb3B0aW9uYWwgYGJhc2VVcmxgIG92ZXJyaWRlIGFuZCBgdGltZW91dGAuIEZpZWxkc1xuICogYXJlIHR5cGVkIGFzIHJlcXVpcmVkIGhlcmUgc28gYExvZ2dlZEVudmlyb25tZW50LmFjY3VtdWxhdGVgIHJlZ2lzdGVycyB0aGVtO1xuICogYWJzZW50IHZhbHVlcyByZXNvbHZlIHRvIHByb3h5IHBsYWNlaG9sZGVycyBhdCBydW50aW1lIGFuZCBtdXN0IHBhc3MgdGhyb3VnaFxuICogYGVudlN0cmluZ2AvYGVudk51bWJlcmAuIFZhbHVlcyBhcmUgY3JlZGVudGlhbCByZWZlcmVuY2VzIHN1cHBsaWVkIGJ5IHRoZVxuICogZW52aXJvbm1lbnQsIG5ldmVyIGxpdGVyYWxzIGVtYmVkZGVkIGluIHNvdXJjZS5cbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2lvL2Vudmlyb25tZW50XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW9FbnZpcm9ubWVudFNoYXBlIHtcbiAgaW86IHtcbiAgICBhaXJ0YWJsZToge1xuICAgICAgdG9rZW46IHN0cmluZztcbiAgICAgIGJhc2VVcmw6IHN0cmluZztcbiAgICAgIGJhc2VJZDogc3RyaW5nO1xuICAgICAgdGltZW91dD86IG51bWJlcjtcbiAgICB9O1xuICAgIGdvb2dsZVNoZWV0czoge1xuICAgICAgdG9rZW46IHN0cmluZztcbiAgICAgIGFwaUtleTogc3RyaW5nO1xuICAgICAgYmFzZVVybDogc3RyaW5nO1xuICAgICAgdGltZW91dD86IG51bWJlcjtcbiAgICB9O1xuICAgIGdyYXBocWw6IHtcbiAgICAgIGVuZHBvaW50OiBzdHJpbmc7XG4gICAgICB0b2tlbjogc3RyaW5nO1xuICAgICAgdGltZW91dD86IG51bWJlcjtcbiAgICB9O1xuICAgIC8qKiBNaWNyb3NvZnQgR3JhcGggYWNjZXNzIHRva2VuIGZvciBFeGNlbCB3b3JrYm9va3MgKGBpby9taWNyb3NvZnQtZXhjZWxgKS4gKi9cbiAgICBtaWNyb3NvZnRFeGNlbDoge1xuICAgICAgdG9rZW46IHN0cmluZztcbiAgICAgIGJhc2VVcmw6IHN0cmluZztcbiAgICAgIHRpbWVvdXQ/OiBudW1iZXI7XG4gICAgfTtcbiAgICAvKiogQ29uZmx1ZW5jZSBBUEkgdG9rZW4sIG9wdGlvbmFsIEJhc2ljLWF1dGggdXNlcm5hbWUsIGFuZCBzaXRlIGJhc2UgVVJMIChgaW8vY29uZmx1ZW5jZWApLiAqL1xuICAgIGNvbmZsdWVuY2U6IHtcbiAgICAgIHVzZXJuYW1lOiBzdHJpbmc7XG4gICAgICB0b2tlbjogc3RyaW5nO1xuICAgICAgYmFzZVVybDogc3RyaW5nO1xuICAgICAgdGltZW91dD86IG51bWJlcjtcbiAgICB9O1xuICAgIC8qKiBKaXJhIEFQSSB0b2tlbiwgb3B0aW9uYWwgQmFzaWMtYXV0aCB1c2VybmFtZSwgYW5kIHNpdGUgYmFzZSBVUkwgKGBpby9qaXJhYCkuICovXG4gICAgamlyYToge1xuICAgICAgdXNlcm5hbWU6IHN0cmluZztcbiAgICAgIHRva2VuOiBzdHJpbmc7XG4gICAgICBiYXNlVXJsOiBzdHJpbmc7XG4gICAgICB0aW1lb3V0PzogbnVtYmVyO1xuICAgIH07XG4gICAgLyoqIEdvb2dsZSBEb2NzIE9BdXRoIHRva2VuIG9yIEFQSSBrZXkgKGBpby9nb29nbGUtZG9jc2ApLiAqL1xuICAgIGdvb2dsZURvY3M6IHtcbiAgICAgIHRva2VuOiBzdHJpbmc7XG4gICAgICBhcGlLZXk6IHN0cmluZztcbiAgICAgIGJhc2VVcmw6IHN0cmluZztcbiAgICAgIHRpbWVvdXQ/OiBudW1iZXI7XG4gICAgfTtcbiAgICAvKiogTWljcm9zb2Z0IEdyYXBoIGFjY2VzcyB0b2tlbiBmb3IgU2hhcmVQb2ludCAoYGlvL21pY3Jvc29mdC1zaGFyZXBvaW50YCkuICovXG4gICAgbWljcm9zb2Z0U2hhcmVQb2ludDoge1xuICAgICAgdG9rZW46IHN0cmluZztcbiAgICAgIGJhc2VVcmw6IHN0cmluZztcbiAgICAgIHRpbWVvdXQ/OiBudW1iZXI7XG4gICAgfTtcbiAgfTtcbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gQWNjdW11bGF0ZWQgaW8gZW52aXJvbm1lbnQgc2luZ2xldG9uXG4gKiBAc3VtbWFyeSBUaGUgYExvZ2dlZEVudmlyb25tZW50LmFjY3VtdWxhdGVgLXJlZ2lzdGVyZWQgaW5zdGFuY2UgYmFja2luZyB0aGVcbiAqIGBJb0Vudmlyb25tZW50U2hhcGVgIGNvbnRyYWN0LiBJTyBzZXJ2aWNlcyByZWFkIHRoZWlyIHByb3ZpZGVyIHNsaWNlXG4gKiAoZS5nLiBgSW9FbnZpcm9ubWVudC5pby5haXJ0YWJsZWApIGluc2lkZSBgY29uZmlnRnJvbUVudmlyb25tZW50KClgIGFuZFxuICogdHJhbnNsYXRlIGl0IGludG8gYW4gYEh0dHBBcGlTZXJ2aWNlQ29uZmlnYC1kZXJpdmVkIGNvbmZpZy4gQ3JlZGVudGlhbHNcbiAqIGNvbWUgZnJvbSBlbnZpcm9ubWVudCB2YXJpYWJsZXM7IGZvciBhcy1ncmFwaCBub2RlIHVzYWdlIHRob3NlIGFyZSBwcm92aWRlZFxuICogYXMgYEdSQVBIX0NSRURFTlRJQUxfKmAgdmFsdWVzIChwbGFjZWhvbGRlcnMgaW4gdGhpcyBleGFtcGxlKS5cbiAqIEBleGFtcGxlXG4gKiBgYGB0c1xuICogaW1wb3J0IHsgQWlydGFibGVTZXJ2aWNlIH0gZnJvbSBcIkBkZWNhZi10cy9pbnRlZ3JhdGlvbnMvaW8vYWlydGFibGVcIjtcbiAqXG4gKiAvLyB3aXRoIGlvLmFpcnRhYmxlLnRva2VuIC8gaW8uYWlydGFibGUuYmFzZUlkIGNvbmZpZ3VyZWQgaW4gdGhlIGVudmlyb25tZW50XG4gKiBjb25zdCBhaXJ0YWJsZSA9IG5ldyBBaXJ0YWJsZVNlcnZpY2UoKTtcbiAqIGF3YWl0IGFpcnRhYmxlLmluaXRpYWxpemUoKTtcbiAqIGBgYFxuICogQGNvbnN0YW50IHtMb2dnZWRFbnZpcm9ubWVudH0gSW9FbnZpcm9ubWVudFxuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvaW8vZW52aXJvbm1lbnRcbiAqL1xuZXhwb3J0IGNvbnN0IElvRW52aXJvbm1lbnQgPSBMb2dnZWRFbnZpcm9ubWVudC5hY2N1bXVsYXRlKHtcbiAgaW86IHtcbiAgICBhaXJ0YWJsZToge1xuICAgICAgdG9rZW46IFwiXCIsXG4gICAgICBiYXNlVXJsOiBcIlwiLFxuICAgICAgYmFzZUlkOiBcIlwiLFxuICAgICAgdGltZW91dDogdW5kZWZpbmVkIGFzIHVua25vd24gYXMgbnVtYmVyLFxuICAgIH0sXG4gICAgZ29vZ2xlU2hlZXRzOiB7XG4gICAgICB0b2tlbjogXCJcIixcbiAgICAgIGFwaUtleTogXCJcIixcbiAgICAgIGJhc2VVcmw6IFwiXCIsXG4gICAgICB0aW1lb3V0OiB1bmRlZmluZWQgYXMgdW5rbm93biBhcyBudW1iZXIsXG4gICAgfSxcbiAgICBncmFwaHFsOiB7XG4gICAgICBlbmRwb2ludDogXCJcIixcbiAgICAgIHRva2VuOiBcIlwiLFxuICAgICAgdGltZW91dDogdW5kZWZpbmVkIGFzIHVua25vd24gYXMgbnVtYmVyLFxuICAgIH0sXG4gICAgbWljcm9zb2Z0RXhjZWw6IHtcbiAgICAgIHRva2VuOiBcIlwiLFxuICAgICAgYmFzZVVybDogXCJcIixcbiAgICAgIHRpbWVvdXQ6IHVuZGVmaW5lZCBhcyB1bmtub3duIGFzIG51bWJlcixcbiAgICB9LFxuICAgIGNvbmZsdWVuY2U6IHtcbiAgICAgIHVzZXJuYW1lOiBcIlwiLFxuICAgICAgdG9rZW46IFwiXCIsXG4gICAgICBiYXNlVXJsOiBcIlwiLFxuICAgICAgdGltZW91dDogdW5kZWZpbmVkIGFzIHVua25vd24gYXMgbnVtYmVyLFxuICAgIH0sXG4gICAgamlyYToge1xuICAgICAgdXNlcm5hbWU6IFwiXCIsXG4gICAgICB0b2tlbjogXCJcIixcbiAgICAgIGJhc2VVcmw6IFwiXCIsXG4gICAgICB0aW1lb3V0OiB1bmRlZmluZWQgYXMgdW5rbm93biBhcyBudW1iZXIsXG4gICAgfSxcbiAgICBnb29nbGVEb2NzOiB7XG4gICAgICB0b2tlbjogXCJcIixcbiAgICAgIGFwaUtleTogXCJcIixcbiAgICAgIGJhc2VVcmw6IFwiXCIsXG4gICAgICB0aW1lb3V0OiB1bmRlZmluZWQgYXMgdW5rbm93biBhcyBudW1iZXIsXG4gICAgfSxcbiAgICBtaWNyb3NvZnRTaGFyZVBvaW50OiB7XG4gICAgICB0b2tlbjogXCJcIixcbiAgICAgIGJhc2VVcmw6IFwiXCIsXG4gICAgICB0aW1lb3V0OiB1bmRlZmluZWQgYXMgdW5rbm93biBhcyBudW1iZXIsXG4gICAgfSxcbiAgfSxcbn0gYXMgSW9FbnZpcm9ubWVudFNoYXBlKTtcbiJdfQ==
70
+ //# sourceMappingURL=environment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"environment.js","sourceRoot":"","sources":["../../../src/io/environment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAsFtD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,iBAAiB,CAAC,UAAU,CAAC;IACxD,EAAE,EAAE;QACF,QAAQ,EAAE;YACR,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,SAA8B;SACxC;QACD,YAAY,EAAE;YACZ,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,SAA8B;SACxC;QACD,OAAO,EAAE;YACP,QAAQ,EAAE,EAAE;YACZ,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,SAA8B;SACxC;QACD,cAAc,EAAE;YACd,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,SAA8B;SACxC;QACD,UAAU,EAAE;YACV,QAAQ,EAAE,EAAE;YACZ,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,SAA8B;SACxC;QACD,IAAI,EAAE;YACJ,QAAQ,EAAE,EAAE;YACZ,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,SAA8B;SACxC;QACD,UAAU,EAAE;YACV,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,SAA8B;SACxC;QACD,mBAAmB,EAAE;YACnB,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,SAA8B;SACxC;KACF;CACoB,CAAC,CAAC"}
@@ -267,4 +267,4 @@ export class GoogleDocsService extends HttpApiService {
267
267
  }
268
268
  }
269
269
  }
270
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR29vZ2xlRG9jc1NlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW8vZ29vZ2xlLWRvY3MvR29vZ2xlRG9jc1NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0gsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsNEJBQXVCO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLDJDQUFzQztBQUNyRSxPQUFPLEVBQ0wsY0FBYyxFQUVkLFNBQVMsR0FDVixxQ0FBMEI7QUE4RDNCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0NHO0FBQ0gsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGNBQXVDO0lBQTlFOztRQUNFOztXQUVHO1FBQ2dCLGdCQUFXLEdBQUcsYUFBYSxDQUFDO0lBd09qRCxDQUFDO0lBdE9DOzs7O09BSUc7SUFDTyxjQUFjO1FBQ3RCLE9BQU8sZ0NBQWdDLENBQUM7SUFDMUMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNPLFdBQVcsQ0FDbkIsTUFBK0I7UUFFL0IsSUFBSSxNQUFNLENBQUMsS0FBSztZQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsVUFBVSxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQztRQUNyRSxJQUFJLE1BQU0sQ0FBQyxNQUFNO1lBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUM5RCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDTyxxQkFBcUI7UUFHN0IsTUFBTSxHQUFHLEdBQUcsYUFBYSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUM7UUFDeEMsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNw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QWtCRztJQUNILEtBQUssQ0FBQyxjQUFjLENBQUMsS0FBNkI7UUFDaEQsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3JDLE1BQU0sSUFBSSxhQUFhLENBQ3JCLGlFQUFpRSxDQUNsRSxDQUFDO1FBQ0osQ0FBQztRQUNELElBQUksQ0FBQztZQUNILE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ3JDLGNBQWMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQ2hFO2dCQUNFLFFBQVEsRUFBRTtvQkFDUjt3QkFDRSxjQUFjLEVBQUU7NEJBQ2QsWUFBWSxFQUFFO2dDQUNaLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtnQ0FDaEIsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLElBQUksS0FBSzs2QkFDcEM7NEJBQ0QsV0FBVyxFQUFFLEtBQUssQ0FBQyxPQUFPLElBQUksRUFBRTt5QkFDakM7cUJBQ0Y7aUJBQ0Y7YUFDRixDQUNGLENBQUM7WUFDRixPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFDdkIsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixNQUFNLFNBQVMsQ0FBQyxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUQsQ0FBQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG1vZHVsZSBpbnRlZ3JhdGlvbnMvaW8vZ29vZ2xlLWRvY3Mvc2VydmljZVxuICogQHN1bW1hcnkgR29vZ2xlIERvY3MgQVBJIGludGVncmF0aW9uIHNlcnZpY2UgZm9yIGRvY3VtZW50IGNvbnRlbnQgb3BlcmF0aW9ucy5cbiAqIEBkZXNjcmlwdGlvbiBFeHBvc2VzIEdvb2dsZSBEb2NzIGRvY3VtZW50IG9wZXJhdGlvbnMgKGdldCwgY3JlYXRlLCBiYXRjaFxuICogdXBkYXRlLCBhcHBlbmQgdGV4dCwgYW5kIHJlcGxhY2UtYWxsKSBhcyBhbiB1bmRlY29yYXRlZCBjbGllbnQtYmFzZWQgc2VydmljZVxuICogYnVpbHQgb24ge0BsaW5rIEh0dHBBcGlTZXJ2aWNlfS4gQ29uZmlndXJhdGlvbiBjb21lcyBmcm9tIGFuIGV4cGxpY2l0XG4gKiBgR29vZ2xlRG9jc1NlcnZpY2VDb25maWdgIG9yIHRoZSBgaW8uZ29vZ2xlRG9jc2AgZW52aXJvbm1lbnQgc2xpY2UuIEFuIE9BdXRoXG4gKiBhY2Nlc3MgdG9rZW4gaXMgc2VudCBhcyBhIGJlYXJlciB0b2tlbiB3aGVuIHByZXNlbnQ7IG90aGVyd2lzZSBhbiBBUEkga2V5IGlzXG4gKiBzZW50IGFzIGBYLUdvb2ctQXBpLUtleWAgKHdyaXRlcyBnZW5lcmFsbHkgcmVxdWlyZSBPQXV0aCkuIENyZWRlbnRpYWxzIGFyZVxuICogcmVmZXJlbmNlZCBmcm9tIGNvbmZpZ3VyYXRpb24gKGFuZCwgZnJvbSBhcy1ncmFwaCBub2RlcywgZnJvbSB0aGUgcmVzb2x2ZWRcbiAqIGBnb29nbGUtZG9jc2AgY3JlZGVudGlhbCBzZWNyZXQpIGFuZCBhcmUgbmV2ZXIgZW1iZWRkZWQgaW4gc291cmNlLiBGYWlsdXJlc1xuICogYXJlIG1hcHBlZCB0byBkZWNhZiBlcnJvcnMgdmlhIHtAbGluayBodHRwRXJyb3J9LlxuICovXG5pbXBvcnQgeyBJbnRlcm5hbEVycm9yIH0gZnJvbSBcIkBkZWNhZi10cy9kYi1kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBJb0Vudmlyb25tZW50IH0gZnJvbSBcIi4uL2Vudmlyb25tZW50XCI7XG5pbXBvcnQgeyBlbnZOdW1iZXIsIGVudlN0cmluZyB9IGZyb20gXCIuLi8uLi9zaGFyZWQvZW52aXJvbm1lbnRWYWx1ZVwiO1xuaW1wb3J0IHtcbiAgSHR0cEFwaVNlcnZpY2UsXG4gIHR5cGUgSHR0cEFwaVNlcnZpY2VDb25maWcsXG4gIGh0dHBFcnJvcixcbn0gZnJvbSBcIi4uLy4uL3NoYXJlZC9odHRwXCI7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIENvbmZpZ3VyYXRpb24gZm9yIHRoZSBHb29nbGUgRG9jcyBzZXJ2aWNlXG4gKiBAc3VtbWFyeSBFeHRlbmRzIHtAbGluayBIdHRwQXBpU2VydmljZUNvbmZpZ30gd2l0aCBhbiBvcHRpb25hbCBPQXV0aFxuICogYHRva2VuYCAocHJlZmVycmVkKSBhbmQgYW4gb3B0aW9uYWwgYGFwaUtleWAuIFdoZW4gb21pdHRlZCwgdGhlXG4gKiBgaW8uZ29vZ2xlRG9jc2AgZW52aXJvbm1lbnQgc2xpY2Ugc3VwcGxpZXMgdGhlIHNhbWUgdmFsdWVzIChwbHVzIG9wdGlvbmFsXG4gKiBgYmFzZVVybGAvYHRpbWVvdXRgKS4gQXQgbGVhc3Qgb25lIGNyZWRlbnRpYWwgaXMgcmVxdWlyZWQ7IHRoZSB0b2tlbiB3aW5zXG4gKiB3aGVuIGJvdGggYXJlIHNldC5cbiAqIEBjYXRlZ29yeSBJT1xuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvaW8vZ29vZ2xlLWRvY3Mvc2VydmljZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdvb2dsZURvY3NTZXJ2aWNlQ29uZmlnIGV4dGVuZHMgSHR0cEFwaVNlcnZpY2VDb25maWcge1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEdvb2dsZSBPQXV0aCBhY2Nlc3MgdG9rZW5cbiAgICogQHN1bW1hcnkgU2VudCBhcyBgQXV0aG9yaXphdGlvbjogQmVhcmVyIDx0b2tlbj5gIHdoZW4gcHJlc2VudC5cbiAgICovXG4gIHRva2VuPzogc3RyaW5nO1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEdvb2dsZSBBUEkga2V5XG4gICAqIEBzdW1tYXJ5IFNlbnQgYXMgYFgtR29vZy1BcGktS2V5YCBvbmx5IHdoZW4gbm8gT0F1dGggdG9rZW4gaXMgY29uZmlndXJlZC5cbiAgICovXG4gIGFwaUtleT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gSW5wdXQgZm9yIHJlcGxhY2luZyBhbGwgbWF0Y2hpbmcgdGV4dCBpbiBhIGRvY3VtZW50XG4gKiBAc3VtbWFyeSBDYXJyaWVzIHRoZSBgZG9jdW1lbnRJZGAsIHRoZSBgZmluZGAgdGV4dCwgaXRzIGByZXBsYWNlYG1lbnQsIGFuZFxuICogd2hldGhlciBtYXRjaGluZyBpcyBjYXNlLXNlbnNpdGl2ZS5cbiAqIEBjYXRlZ29yeSBJT1xuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvaW8vZ29vZ2xlLWRvY3Mvc2VydmljZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdvb2dsZURvY3NSZXBsYWNlSW5wdXQge1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIERvY3VtZW50IElEIHRvIHVwZGF0ZVxuICAgKi9cbiAgZG9jdW1lbnRJZDogc3RyaW5nO1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIFRleHQgdG8gc2VhcmNoIGZvclxuICAgKi9cbiAgZmluZDogc3RyaW5nO1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIFJlcGxhY2VtZW50IHRleHQgKGRlZmF1bHRzIHRvIHRoZSBlbXB0eSBzdHJpbmcpXG4gICAqL1xuICByZXBsYWNlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gV2hldGhlciBtYXRjaGluZyBpcyBjYXNlLXNlbnNpdGl2ZSAoZGVmYXVsdCBgZmFsc2VgKVxuICAgKi9cbiAgbWF0Y2hDYXNlPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gTWluaW1hbCBHb29nbGUgRG9jcyBib2R5IGRlc2NyaXB0b3IgdXNlZCBmb3IgYXBwZW5kIHBvc2l0aW9uaW5nXG4gKiBAc3VtbWFyeSBDYXB0dXJlcyB0aGUgYm9keSBjb250ZW50IGVudHJpZXMgd2hvc2UgYGVuZEluZGV4YCBsb2NhdGVzIHRoZSBlbmRcbiAqIG9mIHRoZSBkb2N1bWVudC5cbiAqL1xuaW50ZXJmYWNlIEdvb2dsZURvY0JvZHkge1xuICBib2R5Pzoge1xuICAgIGNvbnRlbnQ/OiBBcnJheTx7IGVuZEluZGV4PzogbnVtYmVyIH0+O1xuICB9O1xufVxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbiBHb29nbGUgRG9jcyBBUEkgaW50ZWdyYXRpb24gc2VydmljZVxuICogQHN1bW1hcnkgQW4gdW5kZWNvcmF0ZWQgSFRUUCBzZXJ2aWNlIGZvciByZWFkaW5nIGFuZCBjcmVhdGluZyBkb2N1bWVudHMsXG4gKiBydW5uaW5nIHJhdyBiYXRjaCB1cGRhdGVzLCBhcHBlbmRpbmcgdGV4dCwgYW5kIHJlcGxhY2luZyBhbGwgbWF0Y2hpbmcgdGV4dC5cbiAqIEV2ZXJ5IG9wZXJhdGlvbiBuZWVkcyBlaXRoZXIgYW4gT0F1dGggdG9rZW4gb3IgYW4gQVBJIGtleTsgbWlzc2luZ1xuICogY3JlZGVudGlhbHMgb3IgaWRlbnRpZmllcnMgcmFpc2UgYEludGVybmFsRXJyb3JgLCBhbmQgdHJhbnNwb3J0IGZhaWx1cmVzIGFyZVxuICogbWFwcGVkIHRvIGRlY2FmIGVycm9ycyB2aWEge0BsaW5rIGh0dHBFcnJvcn0uXG4gKiBAY2xhc3MgR29vZ2xlRG9jc1NlcnZpY2VcbiAqIEBleHRlbmRzIEh0dHBBcGlTZXJ2aWNlXG4gKiBAY2F0ZWdvcnkgSU9cbiAqIEBleGFtcGxlXG4gKiBgYGB0c1xuICogaW1wb3J0IHsgR29vZ2xlRG9jc1NlcnZpY2UgfSBmcm9tIFwiQGRlY2FmLXRzL2ludGVncmF0aW9ucy9pby9nb29nbGUtZG9jc1wiO1xuICpcbiAqIGNvbnN0IGRvY3MgPSBuZXcgR29vZ2xlRG9jc1NlcnZpY2UoKTtcbiAqIGF3YWl0IGRvY3MuaW5pdGlhbGl6ZSh7XG4gKiAgIHRva2VuOiBwcm9jZXNzLmVudi5HUkFQSF9DUkVERU5USUFMX0dPT0dMRV9ET0NTX1RPS0VOLFxuICogfSk7XG4gKiBhd2FpdCBkb2NzLmFwcGVuZFRleHQocHJvY2Vzcy5lbnYuR09PR0xFX0RPQ19JRCA/PyBcIlwiLCBcIk5ldyBwYXJhZ3JhcGhcIik7XG4gKiBgYGBcbiAqIEBtZXJtYWlkXG4gKiBzZXF1ZW5jZURpYWdyYW1cbiAqICAgYXV0b251bWJlclxuICogICBwYXJ0aWNpcGFudCBDYWxsZXJcbiAqICAgcGFydGljaXBhbnQgU2VydmljZSBhcyBHb29nbGVEb2NzU2VydmljZVxuICogICBwYXJ0aWNpcGFudCBBUEkgYXMgR29vZ2xlIERvY3MgQVBJXG4gKiAgIENhbGxlci0+PlNlcnZpY2U6IGFwcGVuZFRleHQoZG9jdW1lbnRJZCwgdGV4dClcbiAqICAgYWN0aXZhdGUgU2VydmljZVxuICogICBTZXJ2aWNlLT4+U2VydmljZTogcmVxdWlyZUF1dGgoKVxuICogICBTZXJ2aWNlLT4+QVBJOiBHRVQgL2RvY3VtZW50cy97aWR9XG4gKiAgIGFjdGl2YXRlIEFQSVxuICogICBBUEktLT4+U2VydmljZTogYm9keSBjb250ZW50IGVuZEluZGV4XG4gKiAgIGRlYWN0aXZhdGUgQVBJXG4gKiAgIFNlcnZpY2UtPj5BUEk6IFBPU1QgL2RvY3VtZW50cy97aWR9OmJhdGNoVXBkYXRlXG4gKiAgIGFjdGl2YXRlIEFQSVxuICogICBBUEktLT4+U2VydmljZTogYmF0Y2ggdXBkYXRlIHJlc3VsdFxuICogICBkZWFjdGl2YXRlIEFQSVxuICogICBTZXJ2aWNlLS0+PkNhbGxlcjogYmF0Y2ggdXBkYXRlIHJlc3VsdFxuICogICBkZWFjdGl2YXRlIFNlcnZpY2VcbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2lvL2dvb2dsZS1kb2NzL3NlcnZpY2VcbiAqL1xuZXhwb3J0IGNsYXNzIEdvb2dsZURvY3NTZXJ2aWNlIGV4dGVuZHMgSHR0cEFwaVNlcnZpY2U8R29vZ2xlRG9jc1NlcnZpY2VDb25maWc+IHtcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBUaGUgcHJvdmlkZXIgbmFtZSB1c2VkIGluIGVycm9yIG1lc3NhZ2VzXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2VydmljZU5hbWUgPSBcIkdvb2dsZSBEb2NzXCI7XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBUaGUgR29vZ2xlIERvY3MgQVBJIGJhc2UgVVJMXG4gICAqIEBzdW1tYXJ5IFVzZWQgd2hlbiB0aGUgcmVzb2x2ZWQgY29uZmlnIGNhcnJpZXMgbm8gYGJhc2VVcmxgLlxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSBgXCJodHRwczovL2RvY3MuZ29vZ2xlYXBpcy5jb20vdjFcImAuXG4gICAqL1xuICBwcm90ZWN0ZWQgZGVmYXVsdEJhc2VVcmwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gXCJodHRwczovL2RvY3MuZ29vZ2xlYXBpcy5jb20vdjFcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gQnVpbGRzIHRoZSBHb29nbGUgRG9jcyBhdXRoZW50aWNhdGlvbiBoZWFkZXJzXG4gICAqIEBzdW1tYXJ5IFByZWZlcnMgYEF1dGhvcml6YXRpb246IEJlYXJlciA8dG9rZW4+YCwgZmFsbHMgYmFjayB0b1xuICAgKiBgWC1Hb29nLUFwaS1LZXk6IDxhcGlLZXk+YCwgYW5kIHJldHVybnMgbm8gaGVhZGVycyB3aGVuIG5laXRoZXIgaXMgc2V0LlxuICAgKiBAcGFyYW0ge0dvb2dsZURvY3NTZXJ2aWNlQ29uZmlnfSBjb25maWcgLSBUaGUgcmVzb2x2ZWQgc2VydmljZSBjb25maWd1cmF0aW9uLlxuICAgKiBAcmV0dXJucyB7UmVjb3JkPHN0cmluZywgc3RyaW5nPn0gVGhlIGF1dGhlbnRpY2F0aW9uIGhlYWRlcnMuXG4gICAqL1xuICBwcm90ZWN0ZWQgYXV0aEhlYWRlcnMoXG4gICAgY29uZmlnOiBHb29nbGVEb2NzU2VydmljZUNvbmZpZ1xuICApOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHtcbiAgICBpZiAoY29uZmlnLnRva2VuKSByZXR1cm4geyBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7Y29uZmlnLnRva2VufWAgfTtcbiAgICBpZiAoY29uZmlnLmFwaUtleSkgcmV0dXJuIHsgXCJYLUdvb2ctQXBpLUtleVwiOiBjb25maWcuYXBpS2V5IH07XG4gICAgcmV0dXJuIHt9O1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBSZWFkcyB0aGUgR29vZ2xlIERvY3MgY3JlZGVudGlhbHMgYW5kIGRlZmF1bHRzIGZyb20gdGhlIGVudmlyb25tZW50XG4gICAqIEBzdW1tYXJ5IFJlYWRzIHRoZSBgaW8uZ29vZ2xlRG9jc2Agc2xpY2UgYW5kIHJldHVybnMgYSBwYXJ0aWFsIGNvbmZpZyB3aGVuXG4gICAqIGEgdG9rZW4gb3IgQVBJIGtleSBpcyBjb25maWd1cmVkLCBgdW5kZWZpbmVkYCBvdGhlcndpc2UuIFZhbHVlcyBwYXNzXG4gICAqIHRocm91Z2ggYGVudlN0cmluZ2AvYGVudk51bWJlcmAgdG8gcmVqZWN0IHVuc2V0LWxlYWYgcHJveGllcy5cbiAgICogQHJldHVybnMge1BhcnRpYWw8R29vZ2xlRG9jc1NlcnZpY2VDb25maWc+IHwgdW5kZWZpbmVkfSBBIHBhcnRpYWwgY29uZmlnLCBvciBgdW5kZWZpbmVkYCB3aGVuIG5vIGNyZWRlbnRpYWwgaXMgY29uZmlndXJlZC5cbiAgICovXG4gIHByb3RlY3RlZCBjb25maWdGcm9tRW52aXJvbm1lbnQoKTpcbiAgICB8IFBhcnRpYWw8R29vZ2xlRG9jc1NlcnZpY2VDb25maWc+XG4gICAgfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IGVudiA9IElvRW52aXJvbm1lbnQuaW8uZ29vZ2xlRG9jcztcbiAgICBjb25zdCB0b2tlbiA9IGVudlN0cmluZyhlbnY/LnRva2VuKTtcbiAgICBjb25zdCBhcGlLZXkgPSBlbnZTdHJpbmcoZW52Py5hcGlLZXkpO1xuICAgIGlmICghdG9rZW4gJiYgIWFwaUtleSkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICByZXR1cm4ge1xuICAgICAgdG9rZW4sXG4gICAgICBhcGlLZXksXG4gICAgICBiYXNlVXJsOiBlbnZTdHJpbmcoZW52LmJhc2VVcmwpLFxuICAgICAgdGltZW91dDogZW52TnVtYmVyKGVudi50aW1lb3V0KSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBBc3NlcnRzIHRoYXQgYW4gT0F1dGggdG9rZW4gb3IgQVBJIGtleSBpcyBjb25maWd1cmVkXG4gICAqIEBzdW1tYXJ5IENhbGxlZCBieSBldmVyeSBvcGVyYXRpb24gYmVmb3JlIGl0IHRvdWNoZXMgdGhlIG5ldHdvcmsuXG4gICAqIEByZXR1cm5zIHt2b2lkfVxuICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIG5laXRoZXIgYSB0b2tlbiBub3IgYW4gQVBJIGtleSBpcyBjb25maWd1cmVkLlxuICAgKi9cbiAgcHJvdGVjdGVkIHJlcXVpcmVBdXRoKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5jb25maWcudG9rZW4gJiYgIXRoaXMuY29uZmlnLmFwaUtleSkge1xuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXG4gICAgICAgIFwiR29vZ2xlIERvY3MgcmVxdWlyZXMgYW4gT0F1dGggdG9rZW4gb3IgYW4gQVBJIGtleVwiXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gRmV0Y2hlcyBhIEdvb2dsZSBEb2NzIGRvY3VtZW50XG4gICAqIEBzdW1tYXJ5IGBHRVRgcyBgL2RvY3VtZW50cy88aWQ+YCBhbmQgcmV0dXJucyB0aGUgZnVsbCBkb2N1bWVudCBwYXlsb2FkLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gZG9jdW1lbnRJZCAtIFRoZSBkb2N1bWVudCBJRC5cbiAgICogQHJldHVybnMge1Byb21pc2U8dW5rbm93bj59IFRoZSBkb2N1bWVudCBwYXlsb2FkLlxuICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIG5vIGNyZWRlbnRpYWwgaXMgY29uZmlndXJlZCBvciB0aGUgZG9jdW1lbnQgSUQgaXMgZW1wdHkuXG4gICAqIEB0aHJvd3Mge05vdEZvdW5kRXJyb3J9IFdoZW4gdGhlIGRvY3VtZW50IGRvZXMgbm90IGV4aXN0IChIVFRQIDQwNCkuXG4gICAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gV2hlbiBHb29nbGUgcmVqZWN0cyB0aGUgcmVxdWVzdC5cbiAgICovXG4gIGFzeW5jIGdldERvY3VtZW50KGRvY3VtZW50SWQ6IHN0cmluZyk6IFByb21pc2U8dW5rbm93bj4ge1xuICAgIHRoaXMucmVxdWlyZUF1dGgoKTtcbiAgICBpZiAoIWRvY3VtZW50SWQpIHtcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFwiR29vZ2xlIERvY3MgcmVxdWlyZXMgYSBkb2N1bWVudCBpZFwiKTtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQuZ2V0PEdvb2dsZURvY0JvZHk+KFxuICAgICAgICBgL2RvY3VtZW50cy8ke2VuY29kZVVSSUNvbXBvbmVudChkb2N1bWVudElkKX1gXG4gICAgICApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkdvb2dsZSBEb2NzXCIsIFwiZ2V0IGRvY3VtZW50XCIsIGVycm9yKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIENyZWF0ZXMgYSBHb29nbGUgRG9jcyBkb2N1bWVudFxuICAgKiBAc3VtbWFyeSBgUE9TVGBzIGEgbmV3IGRvY3VtZW50IHdpdGggdGhlIGdpdmVuIHRpdGxlIGFuZCByZXR1cm5zIGl0c1xuICAgKiBwYXlsb2FkIChpbmNsdWRpbmcgYGRvY3VtZW50SWRgKS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHRpdGxlIC0gVGhlIG5ldyBkb2N1bWVudCB0aXRsZS5cbiAgICogQHJldHVybnMge1Byb21pc2U8dW5rbm93bj59IFRoZSBjcmVhdGVkIGRvY3VtZW50IHBheWxvYWQuXG4gICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IFdoZW4gbm8gY3JlZGVudGlhbCBpcyBjb25maWd1cmVkIG9yIHRoZSB0aXRsZSBpcyBlbXB0eS5cbiAgICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSBXaGVuIEdvb2dsZSByZWplY3RzIHRoZSByZXF1ZXN0LlxuICAgKi9cbiAgYXN5bmMgY3JlYXRlRG9jdW1lbnQodGl0bGU6IHN0cmluZyk6IFByb21pc2U8dW5rbm93bj4ge1xuICAgIHRoaXMucmVxdWlyZUF1dGgoKTtcbiAgICBpZiAoIXRpdGxlKSB7XG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIkdvb2dsZSBEb2NzIHJlcXVpcmVzIGEgZG9jdW1lbnQgdGl0bGVcIik7XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LnBvc3QoXCIvZG9jdW1lbnRzXCIsIHsgdGl0bGUgfSk7XG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhyb3cgaHR0cEVycm9yKFwiR29vZ2xlIERvY3NcIiwgXCJjcmVhdGUgZG9jdW1lbnRcIiwgZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gQXBwbGllcyBhIHJhdyBHb29nbGUgRG9jcyBiYXRjaCB1cGRhdGVcbiAgICogQHN1bW1hcnkgYFBPU1RgcyB0aGUgYHJlcXVlc3RzYCBhcnJheSB0byBgL2RvY3VtZW50cy88aWQ+OmJhdGNoVXBkYXRlYFxuICAgKiB1bmNoYW5nZWQsIGFsbG93aW5nIGFueSBEb2NzIEFQSSByZXF1ZXN0IHR5cGUuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBkb2N1bWVudElkIC0gVGhlIGRvY3VtZW50IElELlxuICAgKiBAcGFyYW0ge3Vua25vd25bXX0gcmVxdWVzdHMgLSBUaGUgRG9jcyBBUEkgcmVxdWVzdCBvYmplY3RzLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx1bmtub3duPn0gVGhlIGJhdGNoIHVwZGF0ZSByZXNwb25zZSBwYXlsb2FkLlxuICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIG5vIGNyZWRlbnRpYWwgaXMgY29uZmlndXJlZCwgb3IgdGhlIGRvY3VtZW50IElEIG9yIHJlcXVlc3RzIGFyZSBtaXNzaW5nLlxuICAgKiBAdGhyb3dzIHtOb3RGb3VuZEVycm9yfSBXaGVuIHRoZSBkb2N1bWVudCBkb2VzIG5vdCBleGlzdCAoSFRUUCA0MDQpLlxuICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gR29vZ2xlIHJlamVjdHMgYSByZXF1ZXN0LlxuICAgKi9cbiAgYXN5bmMgYmF0Y2hVcGRhdGUoXG4gICAgZG9jdW1lbnRJZDogc3RyaW5nLFxuICAgIHJlcXVlc3RzOiB1bmtub3duW11cbiAgKTogUHJvbWlzZTx1bmtub3duPiB7XG4gICAgdGhpcy5yZXF1aXJlQXV0aCgpO1xuICAgIGlmICghZG9jdW1lbnRJZCB8fCAhQXJyYXkuaXNBcnJheShyZXF1ZXN0cykgfHwgIXJlcXVlc3RzLmxlbmd0aCkge1xuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXG4gICAgICAgIFwiR29vZ2xlIERvY3MgYmF0Y2hVcGRhdGUgcmVxdWlyZXMgYSBkb2N1bWVudCBpZCBhbmQgcmVxdWVzdHNcIlxuICAgICAgKTtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQucG9zdChcbiAgICAgICAgYC9kb2N1bWVudHMvJHtlbmNvZGVVUklDb21wb25lbnQoZG9jdW1lbnRJZCl9OmJhdGNoVXBkYXRlYCxcbiAgICAgICAgeyByZXF1ZXN0cyB9XG4gICAgICApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkdvb2dsZSBEb2NzXCIsIFwiYmF0Y2ggdXBkYXRlXCIsIGVycm9yKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEFwcGVuZHMgdGV4dCB0byB0aGUgZW5kIG9mIGEgR29vZ2xlIERvY3MgZG9jdW1lbnRcbiAgICogQHN1bW1hcnkgUmVhZHMgdGhlIGRvY3VtZW50IHRvIGZpbmQgdGhlIGZpbmFsIGBlbmRJbmRleGAsIHRoZW4gaW5zZXJ0cyB0aGVcbiAgICogdGV4dCBqdXN0IGJlZm9yZSBpdCB0aHJvdWdoIGEgYGJhdGNoVXBkYXRlYC5cbiAgICogQHBhcmFtIHtzdHJpbmd9IGRvY3VtZW50SWQgLSBUaGUgZG9jdW1lbnQgSUQuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB0ZXh0IC0gVGhlIHRleHQgdG8gYXBwZW5kLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx1bmtub3duPn0gVGhlIGJhdGNoIHVwZGF0ZSByZXNwb25zZSBwYXlsb2FkLlxuICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIG5vIGNyZWRlbnRpYWwgaXMgY29uZmlndXJlZCwgb3IgdGhlIGRvY3VtZW50IElEIG9yIHRleHQgaXMgZW1wdHkuXG4gICAqIEB0aHJvd3Mge05vdEZvdW5kRXJyb3J9IFdoZW4gdGhlIGRvY3VtZW50IGRvZXMgbm90IGV4aXN0IChIVFRQIDQwNCkuXG4gICAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gV2hlbiBHb29nbGUgcmVqZWN0cyB0aGUgdXBkYXRlLlxuICAgKi9cbiAgYXN5bmMgYXBwZW5kVGV4dChkb2N1bWVudElkOiBzdHJpbmcsIHRleHQ6IHN0cmluZyk6IFByb21pc2U8dW5rbm93bj4ge1xuICAgIHRoaXMucmVxdWlyZUF1dGgoKTtcbiAgICBpZiAoIWRvY3VtZW50SWQgfHwgIXRleHQpIHtcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgICBcIkdvb2dsZSBEb2NzIGFwcGVuZFRleHQgcmVxdWlyZXMgYSBkb2N1bWVudCBpZCBhbmQgdGV4dFwiXG4gICAgICApO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgY29uc3QgZG9jdW1lbnQgPSBhd2FpdCB0aGlzLmNsaWVudC5nZXQ8R29vZ2xlRG9jQm9keT4oXG4gICAgICAgIGAvZG9jdW1lbnRzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KGRvY3VtZW50SWQpfWBcbiAgICAgICk7XG4gICAgICBjb25zdCBjb250ZW50ID0gZG9jdW1lbnQuZGF0YS5ib2R5Py5jb250ZW50ID8/IFtdO1xuICAgICAgY29uc3QgbGFzdCA9IGNvbnRlbnRbY29udGVudC5sZW5ndGggLSAxXTtcbiAgICAgIGNvbnN0IGVuZEluZGV4ID0gbGFzdD8uZW5kSW5kZXggPz8gMTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQucG9zdChcbiAgICAgICAgYC9kb2N1bWVudHMvJHtlbmNvZGVVUklDb21wb25lbnQoZG9jdW1lbnRJZCl9OmJhdGNoVXBkYXRlYCxcbiAgICAgICAge1xuICAgICAgICAgIHJlcXVlc3RzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGluc2VydFRleHQ6IHtcbiAgICAgICAgICAgICAgICBsb2NhdGlvbjogeyBpbmRleDogTWF0aC5tYXgoZW5kSW5kZXggLSAxLCAxKSB9LFxuICAgICAgICAgICAgICAgIHRleHQsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhyb3cgaHR0cEVycm9yKFwiR29vZ2xlIERvY3NcIiwgXCJhcHBlbmQgdGV4dFwiLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBSZXBsYWNlcyBhbGwgbWF0Y2hpbmcgdGV4dCBpbiBhIEdvb2dsZSBEb2NzIGRvY3VtZW50XG4gICAqIEBzdW1tYXJ5IFNlbmRzIGEgYHJlcGxhY2VBbGxUZXh0YCByZXF1ZXN0IGhvbm9yaW5nIHRoZSBgbWF0Y2hDYXNlYCBvcHRpb25cbiAgICogYW5kIHJldHVybnMgdGhlIGJhdGNoIHVwZGF0ZSByZXNwb25zZSBwYXlsb2FkLlxuICAgKiBAcGFyYW0ge0dvb2dsZURvY3NSZXBsYWNlSW5wdXR9IGlucHV0IC0gVGhlIGRvY3VtZW50LCBmaW5kL3JlcGxhY2UgdGV4dCwgYW5kIGNhc2Ugb3B0aW9uLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx1bmtub3duPn0gVGhlIGJhdGNoIHVwZGF0ZSByZXNwb25zZSBwYXlsb2FkLlxuICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIG5vIGNyZWRlbnRpYWwgaXMgY29uZmlndXJlZCwgb3IgdGhlIGRvY3VtZW50IElEIG9yIGZpbmQgdGV4dCBpcyBlbXB0eS5cbiAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgZG9jdW1lbnQgZG9lcyBub3QgZXhpc3QgKEhUVFAgNDA0KS5cbiAgICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSBXaGVuIEdvb2dsZSByZWplY3RzIHRoZSB1cGRhdGUuXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYHRzXG4gICAqIGF3YWl0IGRvY3MucmVwbGFjZUFsbFRleHQoe1xuICAgKiAgIGRvY3VtZW50SWQ6IFwiYWJjMTIzXCIsXG4gICAqICAgZmluZDogXCJUT0RPXCIsXG4gICAqICAgcmVwbGFjZTogXCJET05FXCIsXG4gICAqICAgbWF0Y2hDYXNlOiB0cnVlLFxuICAgKiB9KTtcbiAgICogYGBgXG4gICAqL1xuICBhc3luYyByZXBsYWNlQWxsVGV4dChpbnB1dDogR29vZ2xlRG9jc1JlcGxhY2VJbnB1dCk6IFByb21pc2U8dW5rbm93bj4ge1xuICAgIHRoaXMucmVxdWlyZUF1dGgoKTtcbiAgICBpZiAoIWlucHV0LmRvY3VtZW50SWQgfHwgIWlucHV0LmZpbmQpIHtcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgICBcIkdvb2dsZSBEb2NzIHJlcGxhY2VBbGxUZXh0IHJlcXVpcmVzIGEgZG9jdW1lbnQgaWQgYW5kIGZpbmQgdGV4dFwiXG4gICAgICApO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmNsaWVudC5wb3N0KFxuICAgICAgICBgL2RvY3VtZW50cy8ke2VuY29kZVVSSUNvbXBvbmVudChpbnB1dC5kb2N1bWVudElkKX06YmF0Y2hVcGRhdGVgLFxuICAgICAgICB7XG4gICAgICAgICAgcmVxdWVzdHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgcmVwbGFjZUFsbFRleHQ6IHtcbiAgICAgICAgICAgICAgICBjb250YWluc1RleHQ6IHtcbiAgICAgICAgICAgICAgICAgIHRleHQ6IGlucHV0LmZpbmQsXG4gICAgICAgICAgICAgICAgICBtYXRjaENhc2U6IGlucHV0Lm1hdGNoQ2FzZSA/PyBmYWxzZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHJlcGxhY2VUZXh0OiBpbnB1dC5yZXBsYWNlID8/IFwiXCIsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhyb3cgaHR0cEVycm9yKFwiR29vZ2xlIERvY3NcIiwgXCJyZXBsYWNlIGFsbCB0ZXh0XCIsIGVycm9yKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
270
+ //# sourceMappingURL=GoogleDocsService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GoogleDocsService.js","sourceRoot":"","sources":["../../../../src/io/google-docs/GoogleDocsService.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  export * from "./GoogleDocsService.js";
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW8vZ29vZ2xlLWRvY3MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdUNBQW9DIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vR29vZ2xlRG9jc1NlcnZpY2VcIjtcbiJdfQ==
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/io/google-docs/index.ts"],"names":[],"mappings":"AAAA,uCAAoC"}
@@ -280,4 +280,4 @@ export class GoogleSheetsService extends HttpApiService {
280
280
  }
281
281
  }
282
282
  }
283
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR29vZ2xlU2hlZXRzU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pby9nb29nbGUtc2hlZXRzL0dvb2dsZVNoZWV0c1NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7R0FVRztBQUNILE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsYUFBYSxFQUFFLDRCQUF1QjtBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSwyQ0FBc0M7QUFDckUsT0FBTyxFQUNMLGNBQWMsRUFFZCxTQUFTLEdBQ1YscUNBQTBCO0FBd0QzQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E2Qkc7QUFDSCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsY0FBeUM7SUFBbEY7O1FBQ0U7O1dBRUc7UUFDZ0IsZ0JBQVcsR0FBRyxlQUFlLENBQUM7SUFtUm5ELENBQUM7SUFqUkM7Ozs7T0FJRztJQUNPLGNBQWM7UUFDdEIsT0FBTywrQ0FBK0MsQ0FBQztJQUN6RCxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNPLFdBQVcsQ0FDbkIsTUFBaUM7UUFFakMsSUFBSSxNQUFNLENBQUMsS0FBSztZQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsVUFBVSxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQztRQUNyRSxJQUFJLE1BQU0sQ0FBQyxNQUFNO1lBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUM5RCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ08scUJBQXFCO1FBRzdCLE1BQU0sR0FBRyxHQUFHLGFBQWEsQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDO1FBQzFDLE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDcEMsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsTUFBTTtZQUFFLE9BQU8sU0FBUyxDQUFDO1FBQ3hDLE9BQU87WUFDTCxLQUFLO1lBQ0wsTUFBTTtZQUNOLE9BQU8sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQztZQUMvQixPQUFPLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUM7U0FDaEMsQ0FBQztJQUNKLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDTyxXQUFXO1FBQ25CLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDM0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLGFBQWEsQ0FDckIscURBQXFELENBQ3RELENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNPLFNBQVMsQ0FBQyxLQUFhO1FBQy9CLE9BQU8sa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7T0FZRztJQUNILEtBQUssQ0FBQyxTQUFTLENBQ2IsYUFBcUIsRUFDckIsS0FBYTtRQUViLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDN0IsTUFBTSxJQUFJLGFBQWEsQ0FDckIsNkRBQTZELENBQzlELENBQUM7UUFDSixDQUFDO1FBQ0QsSUFBSSxDQUFDO1lBQ0gsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FDcEMsSUFBSSxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsV0FBVyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQ3hFLENBQUM7WUFDRixPQUFPO2dCQUNMLGFBQWE7Z0JBQ2IsS0FBSyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLEtBQUs7Z0JBQ25DLGNBQWMsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWM7Z0JBQzVDLE1BQU0sRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxFQUFFO2FBQ25DLENBQUM7UUFDSixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLE1BQU0sU0FBUyxDQUFDLGVBQWUsRUFBRSxZQUFZLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDeEQsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7Ozs7Ozs7O09BWUc7SUFDSCxLQUFLLENBQUMsWUFBWSxDQUNoQixLQUE2QjtRQUU3QixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDO1lBQ0gsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FDcEMsSUFBSSxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLFdBQVcsSUFBSSxDQUFDLFNBQVMsQ0FDbEUsS0FBSyxDQUFDLEtBQUssQ0FDWixFQUFFLEVBQ0g7Z0JBQ0UsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO2dCQUNsQixjQUFjLEVBQUUsTUFBTTtnQkFDdEIsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO2FBQ3JCLEVBQ0Q7Z0JBQ0UsTUFBTSxFQUFFO29CQUNOLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxnQkFBZ0IsSUFBSSxjQUFjO2lCQUMzRDthQUNGLENBQ0YsQ0FBQztZQUNGLE9BQU87Z0JBQ0wsYUFBYSxFQUFFLEtBQUssQ0FBQyxhQUFhO2dCQUNsQyxLQUFLLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLEtBQUs7Z0JBQ3pDLGNBQWMsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxNQUFNO2dCQUN0RCxNQUFNLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksS0FBSyxDQUFDLE1BQU07YUFDN0MsQ0FBQztRQUNKLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsTUFBTSxTQUFTLENBQUMsZUFBZSxFQUFFLGVBQWUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMzRCxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7OztPQWNHO0lBQ0gsS0FBSyxDQUFDLFlBQVksQ0FDaEIsS0FBNkI7UUFFN0IsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQztZQUNILE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ3JDLElBQUksa0JBQWtCLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxXQUFXLElBQUksQ0FBQyxTQUFTLENBQ2xFLEtBQUssQ0FBQyxLQUFLLENBQ1osU0FBUyxFQUNWO2dCQUNFLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSztnQkFDbEIsY0FBYyxFQUFFLE1BQU07Z0JBQ3RCLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTthQUNyQixFQUNEO2dCQUNFLE1BQU0sRUFBRTtvQkFDTixnQkFBZ0IsRUFBRSxLQUFLLENBQUMsZ0JBQWdCLElBQUksY0FBYztvQkFDMUQsZ0JBQWdCLEVBQUUsYUFBYTtpQkFDaEM7YUFDRixDQUNGLENBQUM7WUFDRixPQUFPO2dCQUNMLGFBQWEsRUFBRSxLQUFLLENBQUMsYUFBYTtnQkFDbEMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxLQUFLO2dCQUN6QyxjQUFjLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksTUFBTTtnQkFDdEQsTUFBTSxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLEVBQUU7YUFDbkMsQ0FBQztRQUNKLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsTUFBTSxTQUFTLENBQUMsZUFBZSxFQUFFLGVBQWUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMzRCxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7T0FZRztJQUNILEtBQUssQ0FBQyxXQUFXLENBQ2YsYUFBcUIsRUFDckIsS0FBYTtRQUViLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUM7WUFDSCxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNyQyxJQUFJLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxXQUFXLElBQUksQ0FBQyxTQUFTLENBQzVELEtBQUssQ0FDTixRQUFRLEVBQ1QsRUFBRSxDQUNILENBQUM7WUFDRixPQUFPO2dCQUNMLGFBQWE7Z0JBQ2IsWUFBWSxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLEtBQUs7YUFDbEQsQ0FBQztRQUNKLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsTUFBTSxTQUFTLENBQUMsZUFBZSxFQUFFLGNBQWMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMxRCxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7Ozs7Ozs7O09BVUc7SUFDSCxLQUFLLENBQUMsaUJBQWlCLENBQ3JCLEtBQWE7UUFFYixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ1gsTUFBTSxJQUFJLGFBQWEsQ0FDckIsa0RBQWtELENBQ25ELENBQUM7UUFDSixDQUFDO1FBQ0QsSUFBSSxDQUFDO1lBQ0gsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FHcEMsR0FBRyxFQUFFO2dCQUNOLFVBQVUsRUFBRSxFQUFFLEtBQUssRUFBRTthQUN0QixDQUFDLENBQUM7WUFDSCxPQUFPO2dCQUNMLGFBQWEsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWE7Z0JBQzFDLGNBQWMsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWM7YUFDN0MsQ0FBQztRQUNKLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsTUFBTSxTQUFTLENBQUMsZUFBZSxFQUFFLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2hFLENBQUM7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgaW50ZWdyYXRpb25zL2lvL2dvb2dsZS1zaGVldHMvc2VydmljZVxuICogQHN1bW1hcnkgR29vZ2xlIFNoZWV0cyBBUEkgaW50ZWdyYXRpb24gc2VydmljZSBmb3IgcmVhZGluZyBhbmQgd3JpdGluZyBzcHJlYWRzaGVldCB2YWx1ZXMuXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgR29vZ2xlIFNoZWV0cyB2NCB2YWx1ZXMgQVBJIChgZ2V0YCwgYHVwZGF0ZWAsXG4gKiBgYXBwZW5kYCwgYGNsZWFyYCkgYW5kIHNwcmVhZHNoZWV0IGNyZWF0aW9uIGFzIGFuIHVuZGVjb3JhdGVkXG4gKiBjbGllbnQtYmFzZWQgc2VydmljZSBidWlsdCBvblxuICoge0BsaW5rIEh0dHBBcGlTZXJ2aWNlfS4gQXV0aGVudGljYXRpb24gYWNjZXB0cyBlaXRoZXIgYW4gT0F1dGggdG9rZW5cbiAqIChiZWFyZXIpIG9yIGEgcGxhaW4gQVBJIGtleSAoYFgtR29vZy1BcGktS2V5YCk7IGNvbmZpZ3VyYXRpb24gY29tZXMgZnJvbSBhblxuICogZXhwbGljaXQgYEdvb2dsZVNoZWV0c1NlcnZpY2VDb25maWdgIG9yIHRoZSBgaW8uZ29vZ2xlU2hlZXRzYCBlbnZpcm9ubWVudFxuICogc2xpY2UsIGFuZCBmYWlsdXJlcyBhcmUgbWFwcGVkIHRvIGRlY2FmIGVycm9ycyB2aWEge0BsaW5rIGh0dHBFcnJvcn0uXG4gKi9cbmltcG9ydCB7IEludGVybmFsRXJyb3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnNcIjtcbmltcG9ydCB7IElvRW52aXJvbm1lbnQgfSBmcm9tIFwiLi4vZW52aXJvbm1lbnRcIjtcbmltcG9ydCB7IGVudk51bWJlciwgZW52U3RyaW5nIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9lbnZpcm9ubWVudFZhbHVlXCI7XG5pbXBvcnQge1xuICBIdHRwQXBpU2VydmljZSxcbiAgdHlwZSBIdHRwQXBpU2VydmljZUNvbmZpZyxcbiAgaHR0cEVycm9yLFxufSBmcm9tIFwiLi4vLi4vc2hhcmVkL2h0dHBcIjtcblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gQ29uZmlndXJhdGlvbiBmb3IgdGhlIEdvb2dsZSBTaGVldHMgc2VydmljZVxuICogQHN1bW1hcnkgRXh0ZW5kcyB7QGxpbmsgSHR0cEFwaVNlcnZpY2VDb25maWd9IHdpdGggZWl0aGVyIGFuIE9BdXRoIHRva2VuXG4gKiAocHJlZmVycmVkLCBzZW50IGFzIGEgYmVhcmVyIHRva2VuKSBvciBhbiBBUEkga2V5IChzZW50IGFzXG4gKiBgWC1Hb29nLUFwaS1LZXlgOyByZWFkLW9ubHkgYWdhaW5zdCBwdWJsaWMgc3ByZWFkc2hlZXRzKS4gV2hlbiBvbWl0dGVkLCB0aGVcbiAqIGBpby5nb29nbGVTaGVldHNgIGVudmlyb25tZW50IHNsaWNlIHN1cHBsaWVzIGJvdGggKGFuZCBvcHRpb25hbFxuICogYGJhc2VVcmxgL2B0aW1lb3V0YCkuXG4gKiBAY2F0ZWdvcnkgSU9cbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2lvL2dvb2dsZS1zaGVldHMvc2VydmljZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdvb2dsZVNoZWV0c1NlcnZpY2VDb25maWcgZXh0ZW5kcyBIdHRwQXBpU2VydmljZUNvbmZpZyB7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gR29vZ2xlIE9BdXRoIGFjY2VzcyB0b2tlblxuICAgKiBAc3VtbWFyeSBTZW50IGFzIGBBdXRob3JpemF0aW9uOiBCZWFyZXIgPHRva2VuPmA7IHRha2VzIHByZWNlZGVuY2Ugb3ZlciB0aGUgQVBJIGtleS5cbiAgICovXG4gIHRva2VuPzogc3RyaW5nO1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEdvb2dsZSBBUEkga2V5XG4gICAqIEBzdW1tYXJ5IFNlbnQgYXMgYFgtR29vZy1BcGktS2V5YCB3aGVuIG5vIE9BdXRoIHRva2VuIGlzIGNvbmZpZ3VyZWQuXG4gICAqL1xuICBhcGlLZXk/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIFJlc3VsdCBvZiBhIEdvb2dsZSBTaGVldHMgdmFsdWVzIHJlYWQgb3Igd3JpdGVcbiAqIEBzdW1tYXJ5IEVjaG9lcyB0aGUgdGFyZ2V0IGBzcHJlYWRzaGVldElkYCBhbmQgdGhlIEExIGByYW5nZWAgR29vZ2xlXG4gKiBhY3R1YWxseSBzZXJ2ZWQsIHRoZSBgbWFqb3JEaW1lbnNpb25gIG9mIHRoZSBwYXlsb2FkLCBhbmQgdGhlIGdyaWRcbiAqIGB2YWx1ZXNgIGFzIGFuIGFycmF5IG9mIHJvd3MgKGFycmF5cyBvZiBjZWxsIHN0cmluZ3MpLlxuICogQGNhdGVnb3J5IElPXG4gKiBAbWVtYmVyT2YgbW9kdWxlOmludGVncmF0aW9ucy9pby9nb29nbGUtc2hlZXRzL3NlcnZpY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHb29nbGVTaGVldHNWYWx1ZXNSZXN1bHQge1xuICBzcHJlYWRzaGVldElkOiBzdHJpbmc7XG4gIHJhbmdlOiBzdHJpbmc7XG4gIG1ham9yRGltZW5zaW9uPzogc3RyaW5nO1xuICB2YWx1ZXM6IHN0cmluZ1tdW107XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIElucHV0IGZvciB3cml0aW5nIHZhbHVlcyBpbnRvIGEgR29vZ2xlIFNoZWV0cyByYW5nZVxuICogQHN1bW1hcnkgQ2FycmllcyB0aGUgdGFyZ2V0IGBzcHJlYWRzaGVldElkYCBhbmQgQTEgYHJhbmdlYCwgdGhlIHJvd1xuICogYHZhbHVlc2AgdG8gd3JpdGUsIGFuZCB0aGUgYHZhbHVlSW5wdXRPcHRpb25gIGNvbnRyb2xsaW5nIGhvdyBHb29nbGVcbiAqIGludGVycHJldHMgdGhlIGNlbGxzIChgXCJSQVdcImAgc3RvcmVzIHRleHQgYXMtaXMsIGBcIlVTRVJfRU5URVJFRFwiYCBhcHBsaWVzXG4gKiBzcHJlYWRzaGVldCBwYXJzaW5nIGFuZCBmb3JtdWxhczsgZGVmYXVsdHMgdG8gYFwiVVNFUl9FTlRFUkVEXCJgKS5cbiAqIEBjYXRlZ29yeSBJT1xuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvaW8vZ29vZ2xlLXNoZWV0cy9zZXJ2aWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR29vZ2xlU2hlZXRzV3JpdGVJbnB1dCB7XG4gIHNwcmVhZHNoZWV0SWQ6IHN0cmluZztcbiAgcmFuZ2U6IHN0cmluZztcbiAgdmFsdWVzOiB1bmtub3duW11bXTtcbiAgdmFsdWVJbnB1dE9wdGlvbj86IFwiUkFXXCIgfCBcIlVTRVJfRU5URVJFRFwiO1xufVxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbiBHb29nbGUgU2hlZXRzIEFQSSBpbnRlZ3JhdGlvbiBzZXJ2aWNlXG4gKiBAc3VtbWFyeSBBbiB1bmRlY29yYXRlZCBIVFRQIHNlcnZpY2UgZm9yIHJlYWRpbmcsXG4gKiB1cGRhdGluZywgYXBwZW5kaW5nLCBhbmQgY2xlYXJpbmcgdmFsdWVzIGluIEExIHJhbmdlcyBvZiBhIHNwcmVhZHNoZWV0LCBhbmRcbiAqIGZvciBjcmVhdGluZyBuZXcgc3ByZWFkc2hlZXRzLiBFdmVyeSBvcGVyYXRpb24gcmVxdWlyZXMgZWl0aGVyIGFuIE9BdXRoXG4gKiB0b2tlbiBvciBhbiBBUEkga2V5IChgcmVxdWlyZUF1dGgoKWApOyByYW5nZXMgYW5kIHNwcmVhZHNoZWV0IElEcyBhcmVcbiAqIFVSTC1lbmNvZGVkLCBhbmQgdHJhbnNwb3J0IGZhaWx1cmVzIGFyZSBtYXBwZWQgdG8gZGVjYWYgZXJyb3JzIHZpYVxuICoge0BsaW5rIGh0dHBFcnJvcn0uXG4gKiBAY2xhc3MgR29vZ2xlU2hlZXRzU2VydmljZVxuICogQGNhdGVnb3J5IElPXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIGltcG9ydCB7IEdvb2dsZVNoZWV0c1NlcnZpY2UgfSBmcm9tIFwiQGRlY2FmLXRzL2ludGVncmF0aW9ucy9pby9nb29nbGUtc2hlZXRzXCI7XG4gKlxuICogY29uc3Qgc2hlZXRzID0gbmV3IEdvb2dsZVNoZWV0c1NlcnZpY2UoKTtcbiAqIGF3YWl0IHNoZWV0cy5pbml0aWFsaXplKHtcbiAqICAgdG9rZW46IHByb2Nlc3MuZW52LkdSQVBIX0NSRURFTlRJQUxfR09PR0xFX1NIRUVUU19UT0tFTixcbiAqIH0pO1xuICogY29uc3QgY3JlYXRlZCA9IGF3YWl0IHNoZWV0cy5jcmVhdGVTcHJlYWRzaGVldChcIk1ldHJpY3NcIik7XG4gKiBhd2FpdCBzaGVldHMudXBkYXRlVmFsdWVzKHtcbiAqICAgc3ByZWFkc2hlZXRJZDogY3JlYXRlZC5zcHJlYWRzaGVldElkLFxuICogICByYW5nZTogXCJTaGVldDEhQTE6QjJcIixcbiAqICAgdmFsdWVzOiBbXG4gKiAgICAgW1wiZGF0ZVwiLCBcImNvdW50XCJdLFxuICogICAgIFtcIjIwMjYtMDEtMDFcIiwgXCI0MlwiXSxcbiAqICAgXSxcbiAqIH0pO1xuICogYGBgXG4gKiBAbWVtYmVyT2YgbW9kdWxlOmludGVncmF0aW9ucy9pby9nb29nbGUtc2hlZXRzL3NlcnZpY2VcbiAqL1xuZXhwb3J0IGNsYXNzIEdvb2dsZVNoZWV0c1NlcnZpY2UgZXh0ZW5kcyBIdHRwQXBpU2VydmljZTxHb29nbGVTaGVldHNTZXJ2aWNlQ29uZmlnPiB7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gVGhlIHByb3ZpZGVyIG5hbWUgdXNlZCBpbiBlcnJvciBtZXNzYWdlc1xuICAgKi9cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHNlcnZpY2VOYW1lID0gXCJHb29nbGUgU2hlZXRzXCI7XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBUaGUgR29vZ2xlIFNoZWV0cyB2NCB2YWx1ZXMgQVBJIGJhc2UgVVJMXG4gICAqIEBzdW1tYXJ5IFVzZWQgd2hlbiB0aGUgcmVzb2x2ZWQgY29uZmlnIGNhcnJpZXMgbm8gYGJhc2VVcmxgLlxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSBgXCJodHRwczovL3NoZWV0cy5nb29nbGVhcGlzLmNvbS92NC9zcHJlYWRzaGVldHNcImAuXG4gICAqL1xuICBwcm90ZWN0ZWQgZGVmYXVsdEJhc2VVcmwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gXCJodHRwczovL3NoZWV0cy5nb29nbGVhcGlzLmNvbS92NC9zcHJlYWRzaGVldHNcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gQnVpbGRzIHRoZSBHb29nbGUgU2hlZXRzIGF1dGhvcml6YXRpb24gaGVhZGVyc1xuICAgKiBAc3VtbWFyeSBSZXR1cm5zIHRoZSBgQXV0aG9yaXphdGlvbjogQmVhcmVyIDx0b2tlbj5gIGhlYWRlciB3aGVuIHRoZVxuICAgKiBjb25maWcgY2FycmllcyBhbiBPQXV0aCB0b2tlbiwgb3RoZXJ3aXNlIHRoZSBgWC1Hb29nLUFwaS1LZXlgIGhlYWRlciB3aGVuXG4gICAqIGFuIEFQSSBrZXkgaXMgY29uZmlndXJlZCwgYW5kIG5vIGhlYWRlcnMgb3RoZXJ3aXNlLlxuICAgKiBAcGFyYW0ge0dvb2dsZVNoZWV0c1NlcnZpY2VDb25maWd9IGNvbmZpZyAtIFRoZSByZXNvbHZlZCBzZXJ2aWNlIGNvbmZpZ3VyYXRpb24uXG4gICAqIEByZXR1cm5zIHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+fSBUaGUgYXV0aG9yaXphdGlvbiBoZWFkZXJzIChlbXB0eSB3aXRob3V0IGEgdG9rZW4gb3IgQVBJIGtleSkuXG4gICAqL1xuICBwcm90ZWN0ZWQgYXV0aEhlYWRlcnMoXG4gICAgY29uZmlnOiBHb29nbGVTaGVldHNTZXJ2aWNlQ29uZmlnXG4gICk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4ge1xuICAgIGlmIChjb25maWcudG9rZW4pIHJldHVybiB7IEF1dGhvcml6YXRpb246IGBCZWFyZXIgJHtjb25maWcudG9rZW59YCB9O1xuICAgIGlmIChjb25maWcuYXBpS2V5KSByZXR1cm4geyBcIlgtR29vZy1BcGktS2V5XCI6IGNvbmZpZy5hcGlLZXkgfTtcbiAgICByZXR1cm4ge307XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIFJlYWRzIHRoZSBHb29nbGUgU2hlZXRzIGNyZWRlbnRpYWxzIGFuZCBkZWZhdWx0cyBmcm9tIHRoZSBlbnZpcm9ubWVudFxuICAgKiBAc3VtbWFyeSBSZWFkcyB0aGUgYGlvLmdvb2dsZVNoZWV0c2AgZW52aXJvbm1lbnQgc2xpY2UgYW5kIHJldHVybnMgYVxuICAgKiBwYXJ0aWFsIGNvbmZpZyB3aGVuIGEgdG9rZW4gb3IgQVBJIGtleSBpcyBjb25maWd1cmVkLCBgdW5kZWZpbmVkYFxuICAgKiBvdGhlcndpc2UuIFZhbHVlcyBwYXNzIHRocm91Z2ggYGVudlN0cmluZ2AvYGVudk51bWJlcmAgdG8gcmVqZWN0XG4gICAqIHVuc2V0LWxlYWYgcHJveGllcy5cbiAgICogQHJldHVybnMge1BhcnRpYWw8R29vZ2xlU2hlZXRzU2VydmljZUNvbmZpZz4gfCB1bmRlZmluZWR9IEEgcGFydGlhbCBjb25maWcsIG9yIGB1bmRlZmluZWRgIHdoZW4gbmVpdGhlciB0b2tlbiBub3IgQVBJIGtleSBpcyBjb25maWd1cmVkLlxuICAgKi9cbiAgcHJvdGVjdGVkIGNvbmZpZ0Zyb21FbnZpcm9ubWVudCgpOlxuICAgIHwgUGFydGlhbDxHb29nbGVTaGVldHNTZXJ2aWNlQ29uZmlnPlxuICAgIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBlbnYgPSBJb0Vudmlyb25tZW50LmlvLmdvb2dsZVNoZWV0cztcbiAgICBjb25zdCB0b2tlbiA9IGVudlN0cmluZyhlbnY/LnRva2VuKTtcbiAgICBjb25zdCBhcGlLZXkgPSBlbnZTdHJpbmcoZW52Py5hcGlLZXkpO1xuICAgIGlmICghdG9rZW4gJiYgIWFwaUtleSkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICByZXR1cm4ge1xuICAgICAgdG9rZW4sXG4gICAgICBhcGlLZXksXG4gICAgICBiYXNlVXJsOiBlbnZTdHJpbmcoZW52LmJhc2VVcmwpLFxuICAgICAgdGltZW91dDogZW52TnVtYmVyKGVudi50aW1lb3V0KSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBBc3NlcnRzIHRoYXQgdGhlIHNlcnZpY2Ugd2FzIGNvbmZpZ3VyZWQgd2l0aCBPQXV0aCBjcmVkZW50aWFsc1xuICAgKiBAc3VtbWFyeSBUaHJvd3Mgd2hlbiB0aGUgcmVzb2x2ZWQgY29uZmlnIGNhcnJpZXMgbmVpdGhlciBhIGB0b2tlbmAgbm9yIGFuXG4gICAqIGBhcGlLZXlgOyBldmVyeSBvcGVyYXRpb24gY2FsbHMgdGhpcyBiZWZvcmUgaXNzdWluZyByZXF1ZXN0cy5cbiAgICogQHJldHVybnMge3ZvaWR9XG4gICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IFdoZW4gbmVpdGhlciBhbiBPQXV0aCB0b2tlbiBub3IgYW4gQVBJIGtleSBpcyBjb25maWd1cmVkLlxuICAgKi9cbiAgcHJvdGVjdGVkIHJlcXVpcmVBdXRoKCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuY29uZmlnO1xuICAgIGlmICghY29uZmlnLnRva2VuICYmICFjb25maWcuYXBpS2V5KSB7XG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcbiAgICAgICAgXCJHb29nbGUgU2hlZXRzIHJlcXVpcmVzIGFuIE9BdXRoIHRva2VuIG9yIGFuIEFQSSBrZXlcIlxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIFVSTC1lbmNvZGVzIGFuIEExIHJhbmdlIGZvciB0aGUgdmFsdWVzIEFQSSBwYXRoXG4gICAqIEBzdW1tYXJ5IFJhbmdlcyBzdWNoIGFzIGBTaGVldDEhQTE6QjJgIGNvbnRhaW4gY2hhcmFjdGVycyB0aGF0IG11c3QgYmVcbiAgICogcGVyY2VudC1lbmNvZGVkOyBhbGwgb3BlcmF0aW9ucyByb3V0ZSB0aGUgcmFuZ2UgdGhyb3VnaCB0aGlzIGhlbHBlci5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHJhbmdlIC0gVGhlIEExIG5vdGF0aW9uIHJhbmdlIHRvIGVuY29kZS5cbiAgICogQHJldHVybnMge3N0cmluZ30gVGhlIFVSTC1lbmNvZGVkIHJhbmdlLlxuICAgKi9cbiAgcHJvdGVjdGVkIHJhbmdlUGF0aChyYW5nZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KHJhbmdlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gUmVhZHMgdmFsdWVzIGZyb20gYW4gQTEgcmFuZ2Ugb2YgYSBzcHJlYWRzaGVldFxuICAgKiBAc3VtbWFyeSBgR0VUYHMgdGhlIHZhbHVlcyBlbmRwb2ludCBmb3IgdGhlIGdpdmVuIGBzcHJlYWRzaGVldElkYCBhbmRcbiAgICogYHJhbmdlYCBhbmQgcmV0dXJucyB0aGUgc2VydmVkIHJhbmdlLCBtYWpvciBkaW1lbnNpb24sIGFuZCB0aGUgZ3JpZFxuICAgKiB2YWx1ZXMgKHJvd3Mgb2YgY2VsbCBzdHJpbmdzKS4gUmVxdWlyZXMgY3JlZGVudGlhbHMgYW5kIGJvdGggYXJndW1lbnRzLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc3ByZWFkc2hlZXRJZCAtIFRoZSBzcHJlYWRzaGVldCB0byByZWFkIGZyb20uXG4gICAqIEBwYXJhbSB7c3RyaW5nfSByYW5nZSAtIFRoZSBBMSBub3RhdGlvbiByYW5nZSB0byByZWFkIChlLmcuIGBcIlNoZWV0MSFBMTpDMTBcImApLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxHb29nbGVTaGVldHNWYWx1ZXNSZXN1bHQ+fSBUaGUgc2VydmVkIHJhbmdlIGFuZCBncmlkIHZhbHVlcy5cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBjcmVkZW50aWFscyBhcmUgbWlzc2luZyBvciB0aGUgc3ByZWFkc2hlZXQgSUQvcmFuZ2UgaXMgZW1wdHkuXG4gICAqIEB0aHJvd3Mge05vdEZvdW5kRXJyb3J9IFdoZW4gdGhlIHNwcmVhZHNoZWV0IGRvZXMgbm90IGV4aXN0IChIVFRQIDQwNCkuXG4gICAqIEB0aHJvd3Mge0NvbmZsaWN0RXJyb3J9IFdoZW4gR29vZ2xlIGFuc3dlcnMgd2l0aCBIVFRQIDQwOS5cbiAgICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSBXaGVuIEdvb2dsZSBhbnN3ZXJzIHdpdGggYW55IG90aGVyIEhUVFAgZXJyb3Igc3RhdHVzIChlLmcuIGludmFsaWQgcmFuZ2UpLlxuICAgKi9cbiAgYXN5bmMgZ2V0VmFsdWVzKFxuICAgIHNwcmVhZHNoZWV0SWQ6IHN0cmluZyxcbiAgICByYW5nZTogc3RyaW5nXG4gICk6IFByb21pc2U8R29vZ2xlU2hlZXRzVmFsdWVzUmVzdWx0PiB7XG4gICAgdGhpcy5yZXF1aXJlQXV0aCgpO1xuICAgIGlmICghc3ByZWFkc2hlZXRJZCB8fCAhcmFuZ2UpIHtcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgICBcIkdvb2dsZSBTaGVldHMgZ2V0VmFsdWVzIHJlcXVpcmVzIGEgc3ByZWFkc2hlZXQgSUQgYW5kIHJhbmdlXCJcbiAgICAgICk7XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LmdldDxHb29nbGVTaGVldHNWYWx1ZXNSZXN1bHQ+KFxuICAgICAgICBgLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHNwcmVhZHNoZWV0SWQpfS92YWx1ZXMvJHt0aGlzLnJhbmdlUGF0aChyYW5nZSl9YFxuICAgICAgKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHNwcmVhZHNoZWV0SWQsXG4gICAgICAgIHJhbmdlOiByZXNwb25zZS5kYXRhLnJhbmdlID8/IHJhbmdlLFxuICAgICAgICBtYWpvckRpbWVuc2lvbjogcmVzcG9uc2UuZGF0YS5tYWpvckRpbWVuc2lvbixcbiAgICAgICAgdmFsdWVzOiByZXNwb25zZS5kYXRhLnZhbHVlcyA/PyBbXSxcbiAgICAgIH07XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkdvb2dsZSBTaGVldHNcIiwgXCJnZXQgdmFsdWVzXCIsIGVycm9yKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIE92ZXJ3cml0ZXMgdmFsdWVzIGluIGFuIEExIHJhbmdlIG9mIGEgc3ByZWFkc2hlZXRcbiAgICogQHN1bW1hcnkgYFBVVGBzIHRoZSByb3cgdmFsdWVzIHRvIHRoZSB2YWx1ZXMgZW5kcG9pbnQgZm9yIHRoZSBnaXZlblxuICAgKiBgc3ByZWFkc2hlZXRJZGAgYW5kIGByYW5nZWAuIENlbGxzIGFyZSBpbnRlcnByZXRlZCBhY2NvcmRpbmcgdG9cbiAgICogYHZhbHVlSW5wdXRPcHRpb25gIChgXCJVU0VSX0VOVEVSRURcImAgYnkgZGVmYXVsdCwgYFwiUkFXXCJgIHRvIHN0b3JlIHRleHRcbiAgICogdmVyYmF0aW0pLCBhbmQgdGhlIGV4aXN0aW5nIHJhbmdlIGNvbnRlbnQgaXMgcmVwbGFjZWQuXG4gICAqIEBwYXJhbSB7R29vZ2xlU2hlZXRzV3JpdGVJbnB1dH0gaW5wdXQgLSBUaGUgdGFyZ2V0IHNwcmVhZHNoZWV0LCByYW5nZSwgdmFsdWVzLCBhbmQgaW5wdXQgaW50ZXJwcmV0YXRpb24uXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPEdvb2dsZVNoZWV0c1ZhbHVlc1Jlc3VsdD59IFRoZSBzZXJ2ZWQgcmFuZ2UgYW5kIHRoZSB3cml0dGVuIHZhbHVlcy5cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBjcmVkZW50aWFscyBhcmUgbWlzc2luZy5cbiAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgc3ByZWFkc2hlZXQgZG9lcyBub3QgZXhpc3QgKEhUVFAgNDA0KS5cbiAgICogQHRocm93cyB7Q29uZmxpY3RFcnJvcn0gV2hlbiBHb29nbGUgYW5zd2VycyB3aXRoIEhUVFAgNDA5LlxuICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gR29vZ2xlIGFuc3dlcnMgd2l0aCBhbnkgb3RoZXIgSFRUUCBlcnJvciBzdGF0dXMgKGUuZy4gaW52YWxpZCByYW5nZSkuXG4gICAqL1xuICBhc3luYyB1cGRhdGVWYWx1ZXMoXG4gICAgaW5wdXQ6IEdvb2dsZVNoZWV0c1dyaXRlSW5wdXRcbiAgKTogUHJvbWlzZTxHb29nbGVTaGVldHNWYWx1ZXNSZXN1bHQ+IHtcbiAgICB0aGlzLnJlcXVpcmVBdXRoKCk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQucHV0PEdvb2dsZVNoZWV0c1ZhbHVlc1Jlc3VsdD4oXG4gICAgICAgIGAvJHtlbmNvZGVVUklDb21wb25lbnQoaW5wdXQuc3ByZWFkc2hlZXRJZCl9L3ZhbHVlcy8ke3RoaXMucmFuZ2VQYXRoKFxuICAgICAgICAgIGlucHV0LnJhbmdlXG4gICAgICAgICl9YCxcbiAgICAgICAge1xuICAgICAgICAgIHJhbmdlOiBpbnB1dC5yYW5nZSxcbiAgICAgICAgICBtYWpvckRpbWVuc2lvbjogXCJST1dTXCIsXG4gICAgICAgICAgdmFsdWVzOiBpbnB1dC52YWx1ZXMsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgIHZhbHVlSW5wdXRPcHRpb246IGlucHV0LnZhbHVlSW5wdXRPcHRpb24gPz8gXCJVU0VSX0VOVEVSRURcIixcbiAgICAgICAgICB9LFxuICAgICAgICB9XG4gICAgICApO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgc3ByZWFkc2hlZXRJZDogaW5wdXQuc3ByZWFkc2hlZXRJZCxcbiAgICAgICAgcmFuZ2U6IHJlc3BvbnNlLmRhdGEucmFuZ2UgPz8gaW5wdXQucmFuZ2UsXG4gICAgICAgIG1ham9yRGltZW5zaW9uOiByZXNwb25zZS5kYXRhLm1ham9yRGltZW5zaW9uID8/IFwiUk9XU1wiLFxuICAgICAgICB2YWx1ZXM6IHJlc3BvbnNlLmRhdGEudmFsdWVzID8/IGlucHV0LnZhbHVlcyxcbiAgICAgIH07XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkdvb2dsZSBTaGVldHNcIiwgXCJ1cGRhdGUgdmFsdWVzXCIsIGVycm9yKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEFwcGVuZHMgdmFsdWVzIGFmdGVyIHRoZSBsYXN0IHJvdyBvZiBhbiBBMSByYW5nZSdzIHRhYmxlXG4gICAqIEBzdW1tYXJ5IGBQT1NUYHMgdGhlIHJvdyB2YWx1ZXMgdG8gdGhlIGA6YXBwZW5kYCBlbmRwb2ludCBmb3IgdGhlIGdpdmVuXG4gICAqIGBzcHJlYWRzaGVldElkYCBhbmQgYHJhbmdlYCwgaW5zZXJ0aW5nIG5ldyByb3dzIGFmdGVyIGV4aXN0aW5nIHRhYmxlIGRhdGFcbiAgICogKGBpbnNlcnREYXRhT3B0aW9uOiBcIklOU0VSVF9ST1dTXCJgKS4gQ2VsbHMgYXJlIGludGVycHJldGVkIGFjY29yZGluZyB0b1xuICAgKiBgdmFsdWVJbnB1dE9wdGlvbmAgKGBcIlVTRVJfRU5URVJFRFwiYCBieSBkZWZhdWx0KS4gVXNlIGEgc2luZ2xlLXJvdyBvclxuICAgKiBzaW5nbGUtY29sdW1uIEExIHJhbmdlIHRvIGFuY2hvciB0aGUgdGFibGU7IEdvb2dsZSByZXBvcnRzIHRoZSByYW5nZSB0aGVcbiAgICogZGF0YSBhY3R1YWxseSBsYW5kZWQgaW4uXG4gICAqIEBwYXJhbSB7R29vZ2xlU2hlZXRzV3JpdGVJbnB1dH0gaW5wdXQgLSBUaGUgdGFyZ2V0IHNwcmVhZHNoZWV0LCBhbmNob3IgcmFuZ2UsIHZhbHVlcywgYW5kIGlucHV0IGludGVycHJldGF0aW9uLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxHb29nbGVTaGVldHNWYWx1ZXNSZXN1bHQ+fSBUaGUgcmFuZ2UgdGhlIGFwcGVuZGVkIHJvd3MgbGFuZGVkIGluIGFuZCB0aGUgYXBwZW5kZWQgdmFsdWVzLlxuICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIGNyZWRlbnRpYWxzIGFyZSBtaXNzaW5nLlxuICAgKiBAdGhyb3dzIHtOb3RGb3VuZEVycm9yfSBXaGVuIHRoZSBzcHJlYWRzaGVldCBkb2VzIG5vdCBleGlzdCAoSFRUUCA0MDQpLlxuICAgKiBAdGhyb3dzIHtDb25mbGljdEVycm9yfSBXaGVuIEdvb2dsZSBhbnN3ZXJzIHdpdGggSFRUUCA0MDkuXG4gICAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gV2hlbiBHb29nbGUgYW5zd2VycyB3aXRoIGFueSBvdGhlciBIVFRQIGVycm9yIHN0YXR1cyAoZS5nLiBpbnZhbGlkIHJhbmdlKS5cbiAgICovXG4gIGFzeW5jIGFwcGVuZFZhbHVlcyhcbiAgICBpbnB1dDogR29vZ2xlU2hlZXRzV3JpdGVJbnB1dFxuICApOiBQcm9taXNlPEdvb2dsZVNoZWV0c1ZhbHVlc1Jlc3VsdD4ge1xuICAgIHRoaXMucmVxdWlyZUF1dGgoKTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmNsaWVudC5wb3N0PEdvb2dsZVNoZWV0c1ZhbHVlc1Jlc3VsdD4oXG4gICAgICAgIGAvJHtlbmNvZGVVUklDb21wb25lbnQoaW5wdXQuc3ByZWFkc2hlZXRJZCl9L3ZhbHVlcy8ke3RoaXMucmFuZ2VQYXRoKFxuICAgICAgICAgIGlucHV0LnJhbmdlXG4gICAgICAgICl9OmFwcGVuZGAsXG4gICAgICAgIHtcbiAgICAgICAgICByYW5nZTogaW5wdXQucmFuZ2UsXG4gICAgICAgICAgbWFqb3JEaW1lbnNpb246IFwiUk9XU1wiLFxuICAgICAgICAgIHZhbHVlczogaW5wdXQudmFsdWVzLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcGFyYW1zOiB7XG4gICAgICAgICAgICB2YWx1ZUlucHV0T3B0aW9uOiBpbnB1dC52YWx1ZUlucHV0T3B0aW9uID8/IFwiVVNFUl9FTlRFUkVEXCIsXG4gICAgICAgICAgICBpbnNlcnREYXRhT3B0aW9uOiBcIklOU0VSVF9ST1dTXCIsXG4gICAgICAgICAgfSxcbiAgICAgICAgfVxuICAgICAgKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHNwcmVhZHNoZWV0SWQ6IGlucHV0LnNwcmVhZHNoZWV0SWQsXG4gICAgICAgIHJhbmdlOiByZXNwb25zZS5kYXRhLnJhbmdlID8/IGlucHV0LnJhbmdlLFxuICAgICAgICBtYWpvckRpbWVuc2lvbjogcmVzcG9uc2UuZGF0YS5tYWpvckRpbWVuc2lvbiA/PyBcIlJPV1NcIixcbiAgICAgICAgdmFsdWVzOiByZXNwb25zZS5kYXRhLnZhbHVlcyA/PyBbXSxcbiAgICAgIH07XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkdvb2dsZSBTaGVldHNcIiwgXCJhcHBlbmQgdmFsdWVzXCIsIGVycm9yKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIENsZWFycyBhbGwgdmFsdWVzIGluIGFuIEExIHJhbmdlIG9mIGEgc3ByZWFkc2hlZXRcbiAgICogQHN1bW1hcnkgYFBPU1RgcyB0aGUgYDpjbGVhcmAgZW5kcG9pbnQgZm9yIHRoZSBnaXZlbiBgc3ByZWFkc2hlZXRJZGAgYW5kXG4gICAqIGByYW5nZWAsIGVtcHR5aW5nIHRoZSBjZWxscyB3aGlsZSBwcmVzZXJ2aW5nIGZvcm1hdHRpbmcsIGFuZCByZXR1cm5zIHRoZVxuICAgKiByYW5nZSBHb29nbGUgYWN0dWFsbHkgY2xlYXJlZC5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHNwcmVhZHNoZWV0SWQgLSBUaGUgc3ByZWFkc2hlZXQgdG8gY2xlYXIgdmFsdWVzIGluLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gcmFuZ2UgLSBUaGUgQTEgbm90YXRpb24gcmFuZ2UgdG8gY2xlYXIuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHtzcHJlYWRzaGVldElkOiBzdHJpbmcsIGNsZWFyZWRSYW5nZTogc3RyaW5nfT59IFRoZSBjbGVhcmVkIHJhbmdlIGFzIHJlcG9ydGVkIGJ5IEdvb2dsZS5cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBjcmVkZW50aWFscyBhcmUgbWlzc2luZy5cbiAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgc3ByZWFkc2hlZXQgZG9lcyBub3QgZXhpc3QgKEhUVFAgNDA0KS5cbiAgICogQHRocm93cyB7Q29uZmxpY3RFcnJvcn0gV2hlbiBHb29nbGUgYW5zd2VycyB3aXRoIEhUVFAgNDA5LlxuICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gR29vZ2xlIGFuc3dlcnMgd2l0aCBhbnkgb3RoZXIgSFRUUCBlcnJvciBzdGF0dXMgKGUuZy4gaW52YWxpZCByYW5nZSkuXG4gICAqL1xuICBhc3luYyBjbGVhclZhbHVlcyhcbiAgICBzcHJlYWRzaGVldElkOiBzdHJpbmcsXG4gICAgcmFuZ2U6IHN0cmluZ1xuICApOiBQcm9taXNlPHsgc3ByZWFkc2hlZXRJZDogc3RyaW5nOyBjbGVhcmVkUmFuZ2U6IHN0cmluZyB9PiB7XG4gICAgdGhpcy5yZXF1aXJlQXV0aCgpO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LnBvc3Q8eyBjbGVhcmVkUmFuZ2U/OiBzdHJpbmcgfT4oXG4gICAgICAgIGAvJHtlbmNvZGVVUklDb21wb25lbnQoc3ByZWFkc2hlZXRJZCl9L3ZhbHVlcy8ke3RoaXMucmFuZ2VQYXRoKFxuICAgICAgICAgIHJhbmdlXG4gICAgICAgICl9OmNsZWFyYCxcbiAgICAgICAge31cbiAgICAgICk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBzcHJlYWRzaGVldElkLFxuICAgICAgICBjbGVhcmVkUmFuZ2U6IHJlc3BvbnNlLmRhdGEuY2xlYXJlZFJhbmdlID8/IHJhbmdlLFxuICAgICAgfTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhyb3cgaHR0cEVycm9yKFwiR29vZ2xlIFNoZWV0c1wiLCBcImNsZWFyIHZhbHVlc1wiLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBDcmVhdGVzIGEgbmV3IHNwcmVhZHNoZWV0IHdpdGggdGhlIGdpdmVuIHRpdGxlXG4gICAqIEBzdW1tYXJ5IGBQT1NUYHMgYSBzcHJlYWRzaGVldCByZXNvdXJjZSB3aXRoIGBwcm9wZXJ0aWVzLnRpdGxlYCB0byB0aGVcbiAgICogc3ByZWFkc2hlZXRzIGVuZHBvaW50IGFuZCByZXR1cm5zIHRoZSBuZXcgc3ByZWFkc2hlZXQncyBJRCBhbmQgVVJMLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdGl0bGUgLSBUaGUgdGl0bGUgZm9yIHRoZSBuZXcgc3ByZWFkc2hlZXQuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHtzcHJlYWRzaGVldElkOiBzdHJpbmcsIHNwcmVhZHNoZWV0VXJsPzogc3RyaW5nfT59IFRoZSBjcmVhdGVkIHNwcmVhZHNoZWV0J3MgSUQgYW5kIFVSTC5cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBjcmVkZW50aWFscyBhcmUgbWlzc2luZyBvciB0aGUgdGl0bGUgaXMgZW1wdHkuXG4gICAqIEB0aHJvd3Mge05vdEZvdW5kRXJyb3J9IFdoZW4gR29vZ2xlIGFuc3dlcnMgd2l0aCBIVFRQIDQwNC5cbiAgICogQHRocm93cyB7Q29uZmxpY3RFcnJvcn0gV2hlbiBHb29nbGUgYW5zd2VycyB3aXRoIEhUVFAgNDA5LlxuICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gR29vZ2xlIGFuc3dlcnMgd2l0aCBhbnkgb3RoZXIgSFRUUCBlcnJvciBzdGF0dXMuXG4gICAqL1xuICBhc3luYyBjcmVhdGVTcHJlYWRzaGVldChcbiAgICB0aXRsZTogc3RyaW5nXG4gICk6IFByb21pc2U8eyBzcHJlYWRzaGVldElkOiBzdHJpbmc7IHNwcmVhZHNoZWV0VXJsPzogc3RyaW5nIH0+IHtcbiAgICB0aGlzLnJlcXVpcmVBdXRoKCk7XG4gICAgaWYgKCF0aXRsZSkge1xuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXG4gICAgICAgIFwiR29vZ2xlIFNoZWV0cyBjcmVhdGVTcHJlYWRzaGVldCByZXF1aXJlcyBhIHRpdGxlXCJcbiAgICAgICk7XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LnBvc3Q8e1xuICAgICAgICBzcHJlYWRzaGVldElkOiBzdHJpbmc7XG4gICAgICAgIHNwcmVhZHNoZWV0VXJsPzogc3RyaW5nO1xuICAgICAgfT4oXCIvXCIsIHtcbiAgICAgICAgcHJvcGVydGllczogeyB0aXRsZSB9LFxuICAgICAgfSk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBzcHJlYWRzaGVldElkOiByZXNwb25zZS5kYXRhLnNwcmVhZHNoZWV0SWQsXG4gICAgICAgIHNwcmVhZHNoZWV0VXJsOiByZXNwb25zZS5kYXRhLnNwcmVhZHNoZWV0VXJsLFxuICAgICAgfTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhyb3cgaHR0cEVycm9yKFwiR29vZ2xlIFNoZWV0c1wiLCBcImNyZWF0ZSBzcHJlYWRzaGVldFwiLCBlcnJvcik7XG4gICAgfVxuICB9XG59XG4iXX0=
283
+ //# sourceMappingURL=GoogleSheetsService.js.map