@appconda/sdk 1.0.557 → 1.0.558

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 (345) hide show
  1. package/dist/EmploidClient.d.ts +52 -0
  2. package/dist/EmploidClient.js +78 -0
  3. package/dist/client.d.ts +149 -0
  4. package/dist/client.js +408 -0
  5. package/dist/enums/api-service.d.ts +13 -0
  6. package/dist/enums/api-service.js +15 -0
  7. package/dist/enums/api.d.ts +5 -0
  8. package/dist/enums/api.js +7 -0
  9. package/dist/enums/auth-method.d.ts +9 -0
  10. package/dist/enums/auth-method.js +11 -0
  11. package/dist/enums/browser.d.ts +16 -0
  12. package/dist/enums/browser.js +18 -0
  13. package/dist/enums/compression.d.ts +5 -0
  14. package/dist/enums/compression.js +7 -0
  15. package/dist/enums/credit-card.d.ts +18 -0
  16. package/dist/enums/credit-card.js +20 -0
  17. package/dist/enums/database-usage-range.d.ts +5 -0
  18. package/dist/enums/database-usage-range.js +7 -0
  19. package/dist/enums/email-template-locale.d.ts +133 -0
  20. package/dist/enums/email-template-locale.js +135 -0
  21. package/dist/enums/email-template-type.d.ts +9 -0
  22. package/dist/enums/email-template-type.js +11 -0
  23. package/dist/enums/entities/EntityLimitType.d.ts +4 -0
  24. package/dist/enums/entities/EntityLimitType.js +6 -0
  25. package/dist/enums/entities/PropertyAttributeName.d.ts +27 -0
  26. package/dist/enums/entities/PropertyAttributeName.js +29 -0
  27. package/dist/enums/entities/PropertyCondition.d.ts +7 -0
  28. package/dist/enums/entities/PropertyCondition.js +10 -0
  29. package/dist/enums/entities/PropertyType.d.ts +12 -0
  30. package/dist/enums/entities/PropertyType.js +18 -0
  31. package/dist/enums/entities/PropertyValueType.d.ts +6 -0
  32. package/dist/enums/entities/PropertyValueType.js +8 -0
  33. package/dist/enums/entities/RowAccess.d.ts +2 -0
  34. package/dist/enums/entities/RowAccess.js +2 -0
  35. package/dist/enums/entities/ViewFilterCondition.d.ts +12 -0
  36. package/dist/enums/entities/ViewFilterCondition.js +14 -0
  37. package/dist/enums/execution-method.d.ts +8 -0
  38. package/dist/enums/execution-method.js +10 -0
  39. package/dist/enums/flag.d.ts +197 -0
  40. package/dist/enums/flag.js +199 -0
  41. package/dist/enums/function-usage-range.d.ts +5 -0
  42. package/dist/enums/function-usage-range.js +7 -0
  43. package/dist/enums/image-format.d.ts +7 -0
  44. package/dist/enums/image-format.js +9 -0
  45. package/dist/enums/image-gravity.d.ts +11 -0
  46. package/dist/enums/image-gravity.js +13 -0
  47. package/dist/enums/index-type.d.ts +5 -0
  48. package/dist/enums/index-type.js +7 -0
  49. package/dist/enums/messaging-provider-type.d.ts +5 -0
  50. package/dist/enums/messaging-provider-type.js +7 -0
  51. package/dist/enums/name.d.ts +14 -0
  52. package/dist/enums/name.js +16 -0
  53. package/dist/enums/o-auth-provider copy.d.ts +41 -0
  54. package/dist/enums/o-auth-provider copy.js +43 -0
  55. package/dist/enums/password-hash.d.ts +13 -0
  56. package/dist/enums/password-hash.js +15 -0
  57. package/dist/enums/platform-type.d.ts +17 -0
  58. package/dist/enums/platform-type.js +19 -0
  59. package/dist/enums/project-usage-range.d.ts +4 -0
  60. package/dist/enums/project-usage-range.js +6 -0
  61. package/dist/enums/region.d.ts +4 -0
  62. package/dist/enums/region.js +6 -0
  63. package/dist/enums/relation-mutate.d.ts +5 -0
  64. package/dist/enums/relation-mutate.js +7 -0
  65. package/dist/enums/relationship-type.d.ts +6 -0
  66. package/dist/enums/relationship-type.js +8 -0
  67. package/dist/enums/resource-type.d.ts +4 -0
  68. package/dist/enums/resource-type.js +6 -0
  69. package/dist/enums/runtime.d.ts +48 -0
  70. package/dist/enums/runtime.js +50 -0
  71. package/dist/enums/s-m-t-p-secure.d.ts +3 -0
  72. package/dist/enums/s-m-t-p-secure.js +5 -0
  73. package/dist/enums/shared/ApplicationLayout.d.ts +4 -0
  74. package/dist/enums/shared/ApplicationLayout.js +6 -0
  75. package/dist/enums/shared/Colors.d.ts +24 -0
  76. package/dist/enums/shared/Colors.js +26 -0
  77. package/dist/enums/shared/InputType.d.ts +6 -0
  78. package/dist/enums/shared/InputType.js +8 -0
  79. package/dist/enums/shared/Periodicity.d.ts +7 -0
  80. package/dist/enums/shared/Periodicity.js +9 -0
  81. package/dist/enums/shared/SvgIcon.d.ts +37 -0
  82. package/dist/enums/shared/SvgIcon.js +39 -0
  83. package/dist/enums/shared/Theme.d.ts +4 -0
  84. package/dist/enums/shared/Theme.js +6 -0
  85. package/dist/enums/sms-template-locale.d.ts +133 -0
  86. package/dist/enums/sms-template-locale.js +135 -0
  87. package/dist/enums/sms-template-type.d.ts +6 -0
  88. package/dist/enums/sms-template-type.js +8 -0
  89. package/dist/enums/smtp-encryption.d.ts +5 -0
  90. package/dist/enums/smtp-encryption.js +7 -0
  91. package/dist/enums/storage-usage-range.d.ts +5 -0
  92. package/dist/enums/storage-usage-range.js +7 -0
  93. package/dist/enums/subscriptions/PricingModel.d.ts +11 -0
  94. package/dist/enums/subscriptions/PricingModel.js +12 -0
  95. package/dist/enums/subscriptions/SubscriptionBillingPeriod.d.ts +10 -0
  96. package/dist/enums/subscriptions/SubscriptionBillingPeriod.js +11 -0
  97. package/dist/enums/subscriptions/SubscriptionFeatureLimitType.d.ts +10 -0
  98. package/dist/enums/subscriptions/SubscriptionFeatureLimitType.js +13 -0
  99. package/dist/enums/subscriptions/SubscriptionPriceType.d.ts +7 -0
  100. package/dist/enums/subscriptions/SubscriptionPriceType.js +8 -0
  101. package/dist/enums/tenants/LinkedAccountStatus.d.ts +5 -0
  102. package/dist/enums/tenants/LinkedAccountStatus.js +7 -0
  103. package/dist/enums/tenants/TenantUserJoined.d.ts +6 -0
  104. package/dist/enums/tenants/TenantUserJoined.js +8 -0
  105. package/dist/enums/tenants/TenantUserStatus.d.ts +6 -0
  106. package/dist/enums/tenants/TenantUserStatus.js +8 -0
  107. package/dist/enums/tenants/TenantUserType.d.ts +5 -0
  108. package/dist/enums/tenants/TenantUserType.js +7 -0
  109. package/dist/enums/user-usage-range.d.ts +5 -0
  110. package/dist/enums/user-usage-range.js +7 -0
  111. package/dist/getAppcondaClient.d.ts +14 -0
  112. package/dist/getAppcondaClient.js +60 -0
  113. package/dist/getSDKForService.d.ts +22 -0
  114. package/dist/getSDKForService.js +72 -0
  115. package/dist/id.d.ts +20 -0
  116. package/dist/id.js +45 -0
  117. package/dist/index.d.ts +7 -0
  118. package/dist/index.js +6 -0
  119. package/dist/lib/errors.d.ts +70 -0
  120. package/dist/lib/errors.js +79 -0
  121. package/dist/lib/index.d.ts +0 -0
  122. package/dist/lib/index.js +1 -0
  123. package/dist/lib/types.d.ts +5 -0
  124. package/dist/lib/types.js +2 -0
  125. package/dist/models.d.ts +3272 -0
  126. package/dist/models.js +2 -0
  127. package/dist/modules/account/enums/authentication-factor.d.ts +6 -0
  128. package/dist/modules/account/enums/authentication-factor.js +8 -0
  129. package/dist/modules/account/enums/authenticator-type.d.ts +3 -0
  130. package/dist/modules/account/enums/authenticator-type.js +5 -0
  131. package/dist/modules/account/enums/o-auth-provider.d.ts +41 -0
  132. package/dist/modules/account/enums/o-auth-provider.js +43 -0
  133. package/dist/modules/account/index.d.ts +2 -0
  134. package/dist/modules/account/index.js +3 -0
  135. package/dist/modules/account/schema.d.ts +7 -0
  136. package/dist/modules/account/schema.js +8 -0
  137. package/dist/modules/account/service.d.ts +530 -0
  138. package/dist/modules/account/service.js +1263 -0
  139. package/dist/modules/account/types.d.ts +411 -0
  140. package/dist/modules/account/types.js +2 -0
  141. package/dist/modules/accounv1/index.d.ts +3 -0
  142. package/dist/modules/accounv1/index.js +4 -0
  143. package/dist/modules/accounv1/schema.d.ts +43 -0
  144. package/dist/modules/accounv1/schema.js +44 -0
  145. package/dist/modules/accounv1/service.d.ts +14 -0
  146. package/dist/modules/accounv1/service.js +28 -0
  147. package/dist/modules/accounv1/types.d.ts +14 -0
  148. package/dist/modules/accounv1/types.js +2 -0
  149. package/dist/modules/acl/service.d.ts +26 -0
  150. package/dist/modules/acl/service.js +27 -0
  151. package/dist/modules/agent/index.d.ts +3 -0
  152. package/dist/modules/agent/index.js +4 -0
  153. package/dist/modules/agent/schema.d.ts +20 -0
  154. package/dist/modules/agent/schema.js +21 -0
  155. package/dist/modules/agent/service.d.ts +12 -0
  156. package/dist/modules/agent/service.js +22 -0
  157. package/dist/modules/agent/types.d.ts +11 -0
  158. package/dist/modules/agent/types.js +2 -0
  159. package/dist/modules/ai/index.d.ts +1 -0
  160. package/dist/modules/ai/index.js +2 -0
  161. package/dist/modules/ai/node/index.d.ts +1 -0
  162. package/dist/modules/ai/node/index.js +2 -0
  163. package/dist/modules/ai/node/service.d.ts +5 -0
  164. package/dist/modules/ai/node/service.js +12 -0
  165. package/dist/modules/bpm/index.d.ts +3 -0
  166. package/dist/modules/bpm/index.js +4 -0
  167. package/dist/modules/bpm/schema.d.ts +18 -0
  168. package/dist/modules/bpm/schema.js +19 -0
  169. package/dist/modules/bpm/service.d.ts +11 -0
  170. package/dist/modules/bpm/service.js +20 -0
  171. package/dist/modules/bpm/types.d.ts +9 -0
  172. package/dist/modules/bpm/types.js +2 -0
  173. package/dist/modules/builder/index.d.ts +3 -0
  174. package/dist/modules/builder/index.js +4 -0
  175. package/dist/modules/builder/schema.d.ts +80 -0
  176. package/dist/modules/builder/schema.js +81 -0
  177. package/dist/modules/builder/service.d.ts +22 -0
  178. package/dist/modules/builder/service.js +52 -0
  179. package/dist/modules/builder/types.d.ts +62 -0
  180. package/dist/modules/builder/types.js +2 -0
  181. package/dist/modules/datasource/index.d.ts +3 -0
  182. package/dist/modules/datasource/index.js +4 -0
  183. package/dist/modules/datasource/schema.d.ts +55 -0
  184. package/dist/modules/datasource/schema.js +56 -0
  185. package/dist/modules/datasource/service.d.ts +19 -0
  186. package/dist/modules/datasource/service.js +43 -0
  187. package/dist/modules/datasource/types.d.ts +28 -0
  188. package/dist/modules/datasource/types.js +2 -0
  189. package/dist/modules/emploid/index.d.ts +3 -0
  190. package/dist/modules/emploid/index.js +4 -0
  191. package/dist/modules/emploid/schema.d.ts +1057 -0
  192. package/dist/modules/emploid/schema.js +1019 -0
  193. package/dist/modules/emploid/service.d.ts +198 -0
  194. package/dist/modules/emploid/service.js +575 -0
  195. package/dist/modules/emploid/types.d.ts +350 -0
  196. package/dist/modules/emploid/types.js +2 -0
  197. package/dist/modules/google/index.d.ts +3 -0
  198. package/dist/modules/google/index.js +4 -0
  199. package/dist/modules/google/schema.d.ts +13 -0
  200. package/dist/modules/google/schema.js +14 -0
  201. package/dist/modules/google/service.d.ts +10 -0
  202. package/dist/modules/google/service.js +16 -0
  203. package/dist/modules/google/types.d.ts +12 -0
  204. package/dist/modules/google/types.js +2 -0
  205. package/dist/modules/hooks/index.d.ts +2 -0
  206. package/dist/modules/hooks/index.js +3 -0
  207. package/dist/modules/hooks/lib/Hooks.d.ts +32 -0
  208. package/dist/modules/hooks/lib/Hooks.js +64 -0
  209. package/dist/modules/hooks/lib/jobs/index.d.ts +2 -0
  210. package/dist/modules/hooks/lib/jobs/index.js +3 -0
  211. package/dist/modules/hooks/lib/jobs/job1.d.ts +1 -0
  212. package/dist/modules/hooks/lib/jobs/job1.js +16 -0
  213. package/dist/modules/hooks/lib/jobs/log-job.d.ts +1 -0
  214. package/dist/modules/hooks/lib/jobs/log-job.js +9 -0
  215. package/dist/modules/hooks/lib/wait.d.ts +8 -0
  216. package/dist/modules/hooks/lib/wait.js +13 -0
  217. package/dist/modules/index.d.ts +18 -0
  218. package/dist/modules/index.js +19 -0
  219. package/dist/modules/mail/index.d.ts +3 -0
  220. package/dist/modules/mail/index.js +4 -0
  221. package/dist/modules/mail/schema.d.ts +6 -0
  222. package/dist/modules/mail/schema.js +7 -0
  223. package/dist/modules/mail/service.d.ts +8 -0
  224. package/dist/modules/mail/service.js +10 -0
  225. package/dist/modules/mail/types.d.ts +6 -0
  226. package/dist/modules/mail/types.js +2 -0
  227. package/dist/modules/notion/index.d.ts +3 -0
  228. package/dist/modules/notion/index.js +4 -0
  229. package/dist/modules/notion/schema.d.ts +13 -0
  230. package/dist/modules/notion/schema.js +14 -0
  231. package/dist/modules/notion/service.d.ts +10 -0
  232. package/dist/modules/notion/service.js +19 -0
  233. package/dist/modules/notion/types.d.ts +11 -0
  234. package/dist/modules/notion/types.js +2 -0
  235. package/dist/modules/organization/index.d.ts +3 -0
  236. package/dist/modules/organization/index.js +4 -0
  237. package/dist/modules/organization/schema.d.ts +31 -0
  238. package/dist/modules/organization/schema.js +27 -0
  239. package/dist/modules/organization/service.d.ts +13 -0
  240. package/dist/modules/organization/service.js +25 -0
  241. package/dist/modules/organization/types.d.ts +11 -0
  242. package/dist/modules/organization/types.js +2 -0
  243. package/dist/modules/scheduled-job/index.d.ts +5 -0
  244. package/dist/modules/scheduled-job/index.js +6 -0
  245. package/dist/modules/scheduled-job/lib/Schedules.d.ts +34 -0
  246. package/dist/modules/scheduled-job/lib/Schedules.js +65 -0
  247. package/dist/modules/scheduled-job/lib/jobs/index.d.ts +1 -0
  248. package/dist/modules/scheduled-job/lib/jobs/index.js +2 -0
  249. package/dist/modules/scheduled-job/lib/jobs/job1.d.ts +1 -0
  250. package/dist/modules/scheduled-job/lib/jobs/job1.js +10 -0
  251. package/dist/modules/scheduled-job/lib/wait.d.ts +8 -0
  252. package/dist/modules/scheduled-job/lib/wait.js +13 -0
  253. package/dist/modules/scheduled-job/schema.d.ts +39 -0
  254. package/dist/modules/scheduled-job/schema.js +40 -0
  255. package/dist/modules/scheduled-job/service.d.ts +20 -0
  256. package/dist/modules/scheduled-job/service.js +46 -0
  257. package/dist/modules/scheduled-job/types.d.ts +66 -0
  258. package/dist/modules/scheduled-job/types.js +2 -0
  259. package/dist/modules/scrapflow/index.d.ts +2 -0
  260. package/dist/modules/scrapflow/index.js +3 -0
  261. package/dist/modules/scrapflow/schema.d.ts +105 -0
  262. package/dist/modules/scrapflow/schema.js +106 -0
  263. package/dist/modules/scrapflow/service.d.ts +24 -0
  264. package/dist/modules/scrapflow/service.js +61 -0
  265. package/dist/modules/scrapflow/types.d.ts +0 -0
  266. package/dist/modules/scrapflow/types.js +1 -0
  267. package/dist/modules/task/index.d.ts +3 -0
  268. package/dist/modules/task/index.js +4 -0
  269. package/dist/modules/task/schema.d.ts +355 -0
  270. package/dist/modules/task/schema.js +371 -0
  271. package/dist/modules/task/service.d.ts +69 -0
  272. package/dist/modules/task/service.js +193 -0
  273. package/dist/modules/task/types.d.ts +293 -0
  274. package/dist/modules/task/types.js +37 -0
  275. package/dist/modules/tenant/index.d.ts +2 -0
  276. package/dist/modules/tenant/index.js +3 -0
  277. package/dist/modules/tenant/schema.d.ts +26 -0
  278. package/dist/modules/tenant/schema.js +28 -0
  279. package/dist/modules/tenant/service.d.ts +14 -0
  280. package/dist/modules/tenant/service.js +28 -0
  281. package/dist/modules/tenant/tenant.d.ts +32 -0
  282. package/dist/modules/tenant/tenant.js +125 -0
  283. package/dist/modules/tenant/types.d.ts +20 -0
  284. package/dist/modules/tenant/types.js +2 -0
  285. package/dist/modules/waitlist/index.d.ts +3 -0
  286. package/dist/modules/waitlist/index.js +4 -0
  287. package/dist/modules/waitlist/schema.d.ts +17 -0
  288. package/dist/modules/waitlist/schema.js +18 -0
  289. package/dist/modules/waitlist/service.d.ts +13 -0
  290. package/dist/modules/waitlist/service.js +28 -0
  291. package/dist/modules/waitlist/types.d.ts +14 -0
  292. package/dist/modules/waitlist/types.js +2 -0
  293. package/dist/permission.d.ts +43 -0
  294. package/dist/permission.js +54 -0
  295. package/dist/query.d.ts +194 -0
  296. package/dist/query.js +204 -0
  297. package/dist/role.d.ts +70 -0
  298. package/dist/role.js +94 -0
  299. package/dist/service-client.d.ts +10 -0
  300. package/dist/service-client.js +31 -0
  301. package/dist/service.d.ts +11 -0
  302. package/dist/service.js +23 -0
  303. package/dist/services/applets.d.ts +9 -0
  304. package/dist/services/applets.js +40 -0
  305. package/dist/services/avatars.d.ts +115 -0
  306. package/dist/services/avatars.js +251 -0
  307. package/dist/services/chat-flow.d.ts +7 -0
  308. package/dist/services/chat-flow.js +26 -0
  309. package/dist/services/community.d.ts +19 -0
  310. package/dist/services/community.js +69 -0
  311. package/dist/services/configuration.d.ts +5 -0
  312. package/dist/services/configuration.js +11 -0
  313. package/dist/services/databases.d.ts +613 -0
  314. package/dist/services/databases.js +1736 -0
  315. package/dist/services/functions.d.ts +319 -0
  316. package/dist/services/functions.js +810 -0
  317. package/dist/services/graphql.d.ts +25 -0
  318. package/dist/services/graphql.js +57 -0
  319. package/dist/services/health.d.ts +231 -0
  320. package/dist/services/health.js +463 -0
  321. package/dist/services/locale.d.ts +80 -0
  322. package/dist/services/locale.js +144 -0
  323. package/dist/services/messaging.d.ts +685 -0
  324. package/dist/services/messaging.js +1920 -0
  325. package/dist/services/permissions.d.ts +20 -0
  326. package/dist/services/permissions.js +90 -0
  327. package/dist/services/pricing.d.ts +15 -0
  328. package/dist/services/pricing.js +21 -0
  329. package/dist/services/projects.d.ts +542 -0
  330. package/dist/services/projects.js +1526 -0
  331. package/dist/services/roles.d.ts +19 -0
  332. package/dist/services/roles.js +72 -0
  333. package/dist/services/schema.d.ts +17 -0
  334. package/dist/services/schema.js +48 -0
  335. package/dist/services/storage.d.ts +189 -0
  336. package/dist/services/storage.js +474 -0
  337. package/dist/services/subscription.d.ts +15 -0
  338. package/dist/services/subscription.js +30 -0
  339. package/dist/services/teams.d.ts +167 -0
  340. package/dist/services/teams.js +395 -0
  341. package/dist/services/tenant-subscription.d.ts +12 -0
  342. package/dist/services/tenant-subscription.js +52 -0
  343. package/dist/services/users.d.ts +499 -0
  344. package/dist/services/users.js +1283 -0
  345. package/package.json +1 -1
package/dist/client.js ADDED
@@ -0,0 +1,408 @@
1
+ class AppcondaException extends Error {
2
+ constructor(message, code = 0, type = '', response = '') {
3
+ super(message);
4
+ this.name = 'AppcondaException';
5
+ this.message = message;
6
+ this.code = code;
7
+ this.type = type;
8
+ this.response = response;
9
+ }
10
+ }
11
+ function hasGlobalFileConstructor() {
12
+ return typeof globalThis !== 'undefined' && typeof globalThis.File !== 'undefined';
13
+ }
14
+ function isFileLike(value) {
15
+ if (!value || typeof value !== 'object') {
16
+ return false;
17
+ }
18
+ if (hasGlobalFileConstructor() && value instanceof globalThis.File) {
19
+ return true;
20
+ }
21
+ return typeof value.size === 'number' && typeof value.slice === 'function';
22
+ }
23
+ function getFileName(file, fallbackName = 'upload.bin') {
24
+ if (typeof file.name === 'string' && file.name.length > 0) {
25
+ return file.name;
26
+ }
27
+ return fallbackName;
28
+ }
29
+ function createChunkFile(chunk, filename) {
30
+ if (hasGlobalFileConstructor()) {
31
+ return new globalThis.File([chunk], filename, {
32
+ type: chunk.type || 'application/octet-stream',
33
+ });
34
+ }
35
+ const blob = new Blob([chunk], {
36
+ type: chunk.type || 'application/octet-stream',
37
+ });
38
+ try {
39
+ Object.defineProperty(blob, 'name', {
40
+ value: filename,
41
+ configurable: true,
42
+ });
43
+ }
44
+ catch {
45
+ // Fallback for runtimes where Blob is not extensible.
46
+ }
47
+ return blob;
48
+ }
49
+ function getUserAgent() {
50
+ let ua = 'AppcondaNodeJSSDK/14.1.0';
51
+ // `process` is a global in Node.js, but not fully available in all runtimes.
52
+ const platform = [];
53
+ if (typeof process !== 'undefined') {
54
+ if (typeof process.platform === 'string')
55
+ platform.push(process.platform);
56
+ if (typeof process.arch === 'string')
57
+ platform.push(process.arch);
58
+ }
59
+ if (platform.length > 0) {
60
+ ua += ` (${platform.join('; ')})`;
61
+ }
62
+ // `navigator.userAgent` is available in Node.js 21 and later.
63
+ // It's also part of the WinterCG spec, so many edge runtimes provide it.
64
+ // https://common-min-api.proposal.wintercg.org/#requirements-for-navigatoruseragent
65
+ // @ts-ignore
66
+ if (typeof navigator !== 'undefined' && typeof navigator.userAgent === 'string') {
67
+ // @ts-ignore
68
+ ua += ` ${navigator.userAgent}`;
69
+ // @ts-ignore
70
+ }
71
+ else if (typeof globalThis.EdgeRuntime === 'string') {
72
+ ua += ` EdgeRuntime`;
73
+ // Older Node.js versions don't have `navigator.userAgent`, so we have to use `process.version`.
74
+ }
75
+ else if (typeof process !== 'undefined' && typeof process.version === 'string') {
76
+ ua += ` Node.js/${process.version}`;
77
+ }
78
+ return ua;
79
+ }
80
+ class Client {
81
+ constructor() {
82
+ this.config = {
83
+ endpoint: 'https://cloud.appconda.io/v1',
84
+ selfSigned: false,
85
+ project: '',
86
+ mode: '',
87
+ key: '',
88
+ jwt: '',
89
+ locale: '',
90
+ session: '',
91
+ forwardeduseragent: '',
92
+ };
93
+ this.headers = {
94
+ 'x-sdk-name': 'Node.js',
95
+ 'x-sdk-platform': 'server',
96
+ 'x-sdk-language': 'nodejs',
97
+ 'x-sdk-version': '14.1.0',
98
+ 'user-agent': getUserAgent(),
99
+ 'X-Appconda-Response-Format': '1.6.0',
100
+ };
101
+ }
102
+ /**
103
+ * Set Endpoint
104
+ *
105
+ * Your project endpoint
106
+ *
107
+ * @param {string} endpoint
108
+ *
109
+ * @returns {this}
110
+ */
111
+ setEndpoint(endpoint) {
112
+ this.config.endpoint = endpoint;
113
+ return this;
114
+ }
115
+ /**
116
+ * Set self-signed
117
+ *
118
+ * @param {boolean} selfSigned
119
+ *
120
+ * @returns {this}
121
+ */
122
+ setSelfSigned(selfSigned) {
123
+ // @ts-ignore
124
+ if (typeof globalThis.EdgeRuntime !== 'undefined') {
125
+ console.warn('setSelfSigned is not supported in edge runtimes.');
126
+ }
127
+ this.config.selfSigned = selfSigned;
128
+ return this;
129
+ }
130
+ /**
131
+ * Add header
132
+ *
133
+ * @param {string} header
134
+ * @param {string} value
135
+ *
136
+ * @returns {this}
137
+ */
138
+ addHeader(header, value) {
139
+ this.headers[header.toLowerCase()] = value;
140
+ return this;
141
+ }
142
+ /**
143
+ * Set custom fetch implementation.
144
+ *
145
+ * Useful for Node.js versions without a global fetch.
146
+ */
147
+ setFetch(fetchImpl) {
148
+ this.fetchImpl = fetchImpl;
149
+ return this;
150
+ }
151
+ getFetch() {
152
+ const runtimeFetch = this.fetchImpl ?? (typeof globalThis !== 'undefined' ? globalThis.fetch : undefined);
153
+ if (!runtimeFetch) {
154
+ throw new AppcondaException('Fetch API is not available. Use Node.js 18+ or set a custom fetch with client.setFetch().');
155
+ }
156
+ return runtimeFetch.bind(globalThis);
157
+ }
158
+ /**
159
+ * Set Project
160
+ *
161
+ * Your project ID
162
+ *
163
+ * @param value string
164
+ *
165
+ * @return {this}
166
+ */
167
+ setProject(value) {
168
+ this.headers['X-Appconda-Project'] = value;
169
+ this.config.project = value;
170
+ return this;
171
+ }
172
+ /**
173
+ * Set Mode
174
+ *
175
+ * @param value string
176
+ *
177
+ * @return {this}
178
+ */
179
+ setMode(value) {
180
+ this.headers['X-Appconda-Mode'] = value;
181
+ this.config.mode = value;
182
+ return this;
183
+ }
184
+ /**
185
+ * Set Key
186
+ *
187
+ * Your secret API key
188
+ *
189
+ * @param value string
190
+ *
191
+ * @return {this}
192
+ */
193
+ setKey(value) {
194
+ this.headers['X-Appconda-Key'] = value;
195
+ this.config.key = value;
196
+ return this;
197
+ }
198
+ /**
199
+ * Set JWT
200
+ *
201
+ * Your secret JSON Web Token
202
+ *
203
+ * @param value string
204
+ *
205
+ * @return {this}
206
+ */
207
+ setJWT(value) {
208
+ this.headers['X-Appconda-JWT'] = value;
209
+ this.config.jwt = value;
210
+ return this;
211
+ }
212
+ /**
213
+ * Set Locale
214
+ *
215
+ * @param value string
216
+ *
217
+ * @return {this}
218
+ */
219
+ setLocale(value) {
220
+ this.headers['X-Appconda-Locale'] = value;
221
+ this.config.locale = value;
222
+ return this;
223
+ }
224
+ /**
225
+ * Set Session
226
+ *
227
+ * The user session to authenticate with
228
+ *
229
+ * @param value string
230
+ *
231
+ * @return {this}
232
+ */
233
+ setSession(value) {
234
+ this.headers['X-Appconda-Session'] = value;
235
+ this.config.session = value;
236
+ return this;
237
+ }
238
+ /**
239
+ * Set ForwardedUserAgent
240
+ *
241
+ * The user agent string of the client that made the request
242
+ *
243
+ * @param value string
244
+ *
245
+ * @return {this}
246
+ */
247
+ setForwardedUserAgent(value) {
248
+ this.headers['X-Forwarded-User-Agent'] = value;
249
+ this.config.forwardeduseragent = value;
250
+ return this;
251
+ }
252
+ setFallbackCookies(value) {
253
+ this.headers['X-Fallback-Cookies'] = value;
254
+ //this.config.forwardeduseragent = value;
255
+ return this;
256
+ }
257
+ prepareRequest(method, url, headers = {}, params = {}) {
258
+ method = method.toUpperCase();
259
+ headers = Object.assign({}, this.headers, headers);
260
+ if (typeof window !== 'undefined' && window.localStorage) {
261
+ const cookieFallback = window.localStorage.getItem('cookieFallback');
262
+ if (cookieFallback) {
263
+ headers['X-Fallback-Cookies'] = cookieFallback;
264
+ }
265
+ }
266
+ let options = {
267
+ method,
268
+ headers,
269
+ };
270
+ if (headers['X-Appconda-Dev-Key'] === undefined) {
271
+ options.credentials = 'include';
272
+ }
273
+ if (method === 'GET') {
274
+ for (const [key, value] of Object.entries(Client.flatten(params))) {
275
+ url.searchParams.append(key, value);
276
+ }
277
+ }
278
+ else {
279
+ switch (headers['content-type']) {
280
+ case 'application/json':
281
+ options.body = JSON.stringify(params);
282
+ break;
283
+ case 'multipart/form-data':
284
+ const formData = new FormData();
285
+ for (const [key, value] of Object.entries(params)) {
286
+ if (isFileLike(value)) {
287
+ formData.append(key, value, getFileName(value));
288
+ }
289
+ else if (Array.isArray(value)) {
290
+ for (const nestedValue of value) {
291
+ if (isFileLike(nestedValue)) {
292
+ formData.append(`${key}[]`, nestedValue, getFileName(nestedValue));
293
+ }
294
+ else {
295
+ formData.append(`${key}[]`, nestedValue);
296
+ }
297
+ }
298
+ }
299
+ else {
300
+ formData.append(key, value);
301
+ }
302
+ }
303
+ options.body = formData;
304
+ delete headers['content-type'];
305
+ break;
306
+ }
307
+ }
308
+ return { uri: url.toString(), options };
309
+ }
310
+ async chunkedUpload(method, url, headers = {}, originalPayload = {}, onProgress) {
311
+ const file = Object.values(originalPayload).find((value) => isFileLike(value));
312
+ if (!file) {
313
+ return await this.call(method, url, headers, originalPayload);
314
+ }
315
+ if (file.size <= Client.CHUNK_SIZE) {
316
+ return await this.call(method, url, headers, originalPayload);
317
+ }
318
+ let start = 0;
319
+ let response = null;
320
+ while (start < file.size) {
321
+ let end = start + Client.CHUNK_SIZE; // Prepare end for the next chunk
322
+ if (end >= file.size) {
323
+ end = file.size; // Adjust for the last chunk to include the last byte
324
+ }
325
+ headers['content-range'] = `bytes ${start}-${end - 1}/${file.size}`;
326
+ const chunk = file.slice(start, end);
327
+ const payload = {
328
+ ...originalPayload,
329
+ file: createChunkFile(chunk, getFileName(file)),
330
+ };
331
+ response = await this.call(method, url, headers, payload);
332
+ if (onProgress && typeof onProgress === 'function') {
333
+ onProgress({
334
+ $id: response.$id,
335
+ progress: Math.round((end / file.size) * 100),
336
+ sizeUploaded: end,
337
+ chunksTotal: Math.ceil(file.size / Client.CHUNK_SIZE),
338
+ chunksUploaded: Math.ceil(end / Client.CHUNK_SIZE)
339
+ });
340
+ }
341
+ if (response && response.$id) {
342
+ headers['x-appconda-id'] = response.$id;
343
+ }
344
+ start = end;
345
+ }
346
+ return response;
347
+ }
348
+ async redirect(method, url, headers = {}, params = {}) {
349
+ const { uri, options } = this.prepareRequest(method, url, headers, params);
350
+ const runtimeFetch = this.getFetch();
351
+ const response = await runtimeFetch(uri, {
352
+ ...options,
353
+ redirect: 'manual'
354
+ });
355
+ if (response.status !== 301 && response.status !== 302) {
356
+ throw new AppcondaException('Invalid redirect', response.status);
357
+ }
358
+ return response.headers.get('location') || '';
359
+ }
360
+ async call(method, url, headers = {}, params = {}, responseType = 'json') {
361
+ const { uri, options } = this.prepareRequest(method, url, headers, params);
362
+ const runtimeFetch = this.getFetch();
363
+ let data = null;
364
+ try {
365
+ const response = await runtimeFetch(uri, options);
366
+ const warnings = response.headers.get('x-appconda-warning');
367
+ if (warnings) {
368
+ warnings.split(';').forEach((warning) => console.warn('Warning: ' + warning));
369
+ }
370
+ if (response.headers.get('content-type')?.includes('application/json')) {
371
+ data = await response.json();
372
+ }
373
+ else if (responseType === 'arrayBuffer') {
374
+ data = await response.arrayBuffer();
375
+ }
376
+ else {
377
+ data = {
378
+ message: await response.text()
379
+ };
380
+ }
381
+ if (400 <= response.status) {
382
+ throw new AppcondaException(data?.message, response.status, data?.type, data);
383
+ }
384
+ return data;
385
+ }
386
+ catch (e) {
387
+ console.error(e);
388
+ throw e;
389
+ }
390
+ }
391
+ static flatten(data, prefix = '') {
392
+ let output = {};
393
+ for (const [key, value] of Object.entries(data)) {
394
+ let finalKey = prefix ? prefix + '[' + key + ']' : key;
395
+ if (Array.isArray(value)) {
396
+ output = { ...output, ...Client.flatten(value, finalKey) };
397
+ }
398
+ else {
399
+ output[finalKey] = value;
400
+ }
401
+ }
402
+ return output;
403
+ }
404
+ }
405
+ Client.CHUNK_SIZE = 1024 * 1024 * 5;
406
+ export { Client, AppcondaException };
407
+ export { Query } from './query';
408
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtQkEsTUFBTSxpQkFBa0IsU0FBUSxLQUFLO0lBSWpDLFlBQVksT0FBZSxFQUFFLE9BQWUsQ0FBQyxFQUFFLE9BQWUsRUFBRSxFQUFFLFdBQW1CLEVBQUU7UUFDbkYsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLElBQUksR0FBRyxtQkFBbUIsQ0FBQztRQUNoQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUM3QixDQUFDO0NBQ0o7QUFTRCxTQUFTLHdCQUF3QjtJQUM3QixPQUFPLE9BQU8sVUFBVSxLQUFLLFdBQVcsSUFBSSxPQUFRLFVBQWtCLENBQUMsSUFBSSxLQUFLLFdBQVcsQ0FBQztBQUNoRyxDQUFDO0FBRUQsU0FBUyxVQUFVLENBQUMsS0FBYztJQUM5QixJQUFJLENBQUMsS0FBSyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQ3RDLE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxJQUFJLHdCQUF3QixFQUFFLElBQUksS0FBSyxZQUFhLFVBQWtCLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDMUUsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVELE9BQU8sT0FBUSxLQUFrQixDQUFDLElBQUksS0FBSyxRQUFRLElBQUksT0FBUSxLQUFrQixDQUFDLEtBQUssS0FBSyxVQUFVLENBQUM7QUFDM0csQ0FBQztBQUVELFNBQVMsV0FBVyxDQUFDLElBQWMsRUFBRSxZQUFZLEdBQUcsWUFBWTtJQUM1RCxJQUFJLE9BQU8sSUFBSSxDQUFDLElBQUksS0FB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QUFHLElBQUksR0FBRyxDQUFDLEFBQWxCLENBQW1CO0FBaVh4QyxPQUFPLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLENBQUM7QUFDckMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHsgTW9kZWxzIH0gZnJvbSAnLi9tb2RlbHMnO1xuXG50eXBlIFBheWxvYWQgPSB7XG4gICAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG50eXBlIFVwbG9hZFByb2dyZXNzID0ge1xuICAgICRpZDogc3RyaW5nO1xuICAgIHByb2dyZXNzOiBudW1iZXI7XG4gICAgc2l6ZVVwbG9hZGVkOiBudW1iZXI7XG4gICAgY2h1bmtzVG90YWw6IG51bWJlcjtcbiAgICBjaHVua3NVcGxvYWRlZDogbnVtYmVyO1xufVxuXG50eXBlIEhlYWRlcnMgPSB7XG4gICAgW2tleTogc3RyaW5nXTogc3RyaW5nO1xufVxuXG5jbGFzcyBBcHBjb25kYUV4Y2VwdGlvbiBleHRlbmRzIEVycm9yIHtcbiAgICBjb2RlOiBudW1iZXI7XG4gICAgcmVzcG9uc2U6IHN0cmluZztcbiAgICB0eXBlOiBzdHJpbmc7XG4gICAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nLCBjb2RlOiBudW1iZXIgPSAwLCB0eXBlOiBzdHJpbmcgPSAnJywgcmVzcG9uc2U6IHN0cmluZyA9ICcnKSB7XG4gICAgICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgICAgICB0aGlzLm5hbWUgPSAnQXBwY29uZGFFeGNlcHRpb24nO1xuICAgICAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlO1xuICAgICAgICB0aGlzLmNvZGUgPSBjb2RlO1xuICAgICAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgICAgICB0aGlzLnJlc3BvbnNlID0gcmVzcG9uc2U7XG4gICAgfVxufVxuXG50eXBlIEZpbGVMaWtlID0ge1xuICAgIHNpemU6IG51bWJlcjtcbiAgICBzbGljZTogKHN0YXJ0PzogbnVtYmVyLCBlbmQ/OiBudW1iZXIpID0+IEJsb2I7XG4gICAgbmFtZT86IHN0cmluZztcbiAgICB0eXBlPzogc3RyaW5nO1xufVxuXG5mdW5jdGlvbiBoYXNHbG9iYWxGaWxlQ29uc3RydWN0b3IoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR5cGVvZiBnbG9iYWxUaGlzICE9PSAndW5kZWZpbmVkJyAmJiB0eXBlb2YgKGdsb2JhbFRoaXMgYXMgYW55KS5GaWxlICE9PSAndW5kZWZpbmVkJztcbn1cblxuZnVuY3Rpb24gaXNGaWxlTGlrZSh2YWx1ZTogdW5rbm93bik6IHZhbHVlIGlzIEZpbGVMaWtlIHtcbiAgICBpZiAoIXZhbHVlIHx8IHR5cGVvZiB2YWx1ZSAhPT0gJ29iamVjdCcpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGlmIChoYXNHbG9iYWxGaWxlQ29uc3RydWN0b3IoKSAmJiB2YWx1ZSBpbnN0YW5jZW9mIChnbG9iYWxUaGlzIGFzIGFueSkuRmlsZSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHlwZW9mICh2YWx1ZSBhcyBGaWxlTGlrZSkuc2l6ZSA9PT0gJ251bWJlcicgJiYgdHlwZW9mICh2YWx1ZSBhcyBGaWxlTGlrZSkuc2xpY2UgPT09ICdmdW5jdGlvbic7XG59XG5cbmZ1bmN0aW9uIGdldEZpbGVOYW1lKGZpbGU6IEZpbGVMaWtlLCBmYWxsYmFja05hbWUgPSAndXBsb2FkLmJpbicpOiBzdHJpbmcge1xuICAgIGlmICh0eXBlb2YgZmlsZS5uYW1lID09PSAnc3RyaW5nJyAmJiBmaWxlLm5hbWUubGVuZ3RoID4gMCkge1xuICAgICAgICByZXR1cm4gZmlsZS5uYW1lO1xuICAgIH1cblxuICAgIHJldHVybiBmYWxsYmFja05hbWU7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUNodW5rRmlsZShjaHVuazogQmxvYiwgZmlsZW5hbWU6IHN0cmluZyk6IEJsb2IgfCBGaWxlIHtcbiAgICBpZiAoaGFzR2xvYmFsRmlsZUNvbnN0cnVjdG9yKCkpIHtcbiAgICAgICAgcmV0dXJuIG5ldyAoZ2xvYmFsVGhpcyBhcyBhbnkpLkZpbGUoW2NodW5rXSwgZmlsZW5hbWUsIHtcbiAgICAgICAgICAgIHR5cGU6IGNodW5rLnR5cGUgfHwgJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbScsXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbY2h1bmtdLCB7XG4gICAgICAgIHR5cGU6IGNodW5rLnR5cGUgfHwgJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbScsXG4gICAgfSkgYXMgQmxvYiAmIHsgbmFtZT86IHN0cmluZyB9O1xuXG4gICAgdHJ5IHtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGJsb2IsICduYW1lJywge1xuICAgICAgICAgICAgdmFsdWU6IGZpbGVuYW1lLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICB9IGNhdGNoIHtcbiAgICAgICAgLy8gRmFsbGJhY2sgZm9yIHJ1bnRpbWVzIHdoZXJlIEJsb2IgaXMgbm90IGV4dGVuc2libGUuXG4gICAgfVxuXG4gICAgcmV0dXJuIGJsb2I7XG59XG5cbmZ1bmN0aW9uIGdldFVzZXJBZ2VudCgpIHtcbiAgICBsZXQgdWEgPSAnQXBwY29uZGFOb2RlSlNTREsvMTQuMS4wJztcblxuICAgIC8vIGBwcm9jZXNzYCBpcyBhIGdsb2JhbCBpbiBOb2RlLmpzLCBidXQgbm90IGZ1bGx5IGF2YWlsYWJsZSBpbiBhbGwgcnVudGltZXMuXG4gICAgY29uc3QgcGxhdGZvcm06IHN0cmluZ1tdID0gW107XG4gICAgaWYgKHR5cGVvZiBwcm9jZXNzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBpZiAodHlwZW9mIHByb2Nlc3MucGxhdGZvcm0gPT09ICdzdHJpbmcnKSBwbGF0Zm9ybS5wdXNoKHByb2Nlc3MucGxhdGZvcm0pO1xuICAgICAgICBpZiAodHlwZW9mIHByb2Nlc3MuYXJjaCA9PT0gJ3N0cmluZycpIHBsYXRmb3JtLnB1c2gocHJvY2Vzcy5hcmNoKTtcbiAgICB9XG4gICAgaWYgKHBsYXRmb3JtLmxlbmd0aCA+IDApIHtcbiAgICAgICAgdWEgKz0gYCAoJHtwbGF0Zm9ybS5qb2luKCc7ICcpfSlgO1xuICAgIH1cblxuICAgIC8vIGBuYXZpZ2F0b3IudXNlckFnZW50YCBpcyBhdmFpbGFibGUgaW4gTm9kZS5qcyAyMSBhbmQgbGF0ZXIuXG4gICAgLy8gSXQncyBhbHNvIHBhcnQgb2YgdGhlIFdpbnRlckNHIHNwZWMsIHNvIG1hbnkgZWRnZSBydW50aW1lcyBwcm92aWRlIGl0LlxuICAgIC8vIGh0dHBzOi8vY29tbW9uLW1pbi1hcGkucHJvcG9zYWwud2ludGVyY2cub3JnLyNyZXF1aXJlbWVudHMtZm9yLW5hdmlnYXRvcnVzZXJhZ2VudFxuICAgIC8vIEB0cy1pZ25vcmVcbiAgICBpZiAodHlwZW9mIG5hdmlnYXRvciAhPT0gJ3VuZGVmaW5lZCcgJiYgdHlwZW9mIG5hdmlnYXRvci51c2VyQWdlbnQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgdWEgKz0gYCAke25hdmlnYXRvci51c2VyQWdlbnR9YDtcblxuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgfSBlbHNlIGlmICh0eXBlb2YgZ2xvYmFsVGhpcy5FZGdlUnVudGltZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgdWEgKz0gYCBFZGdlUnVudGltZWA7XG5cbiAgICAgICAgLy8gT2xkZXIgTm9kZS5qcyB2ZXJzaW9ucyBkb24ndCBoYXZlIGBuYXZpZ2F0b3IudXNlckFnZW50YCwgc28gd2UgaGF2ZSB0byB1c2UgYHByb2Nlc3MudmVyc2lvbmAuXG4gICAgfSBlbHNlIGlmICh0eXBlb2YgcHJvY2VzcyAhPT0gJ3VuZGVmaW5lZCcgJiYgdHlwZW9mIHByb2Nlc3MudmVyc2lvbiA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgdWEgKz0gYCBOb2RlLmpzLyR7cHJvY2Vzcy52ZXJzaW9ufWA7XG4gICAgfVxuXG4gICAgcmV0dXJuIHVhO1xufVxuXG5jbGFzcyBDbGllbnQge1xuICAgIHN0YXRpYyBDSFVOS19TSVpFID0gMTAyNCAqIDEwMjQgKiA1O1xuXG4gICAgY29uZmlnID0ge1xuICAgICAgICBlbmRwb2ludDogJ2h0dHBzOi8vY2xvdWQuYXBwY29uZGEuaW8vdjEnLFxuICAgICAgICBzZWxmU2lnbmVkOiBmYWxzZSxcbiAgICAgICAgcHJvamVjdDogJycsXG4gICAgICAgIG1vZGU6ICcnLFxuICAgICAgICBrZXk6ICcnLFxuICAgICAgICBqd3Q6ICcnLFxuICAgICAgICBsb2NhbGU6ICcnLFxuICAgICAgICBzZXNzaW9uOiAnJyxcbiAgICAgICAgZm9yd2FyZGVkdXNlcmFnZW50OiAnJyxcbiAgICB9O1xuICAgIGhlYWRlcnM6IEhlYWRlcnMgPSB7XG4gICAgICAgICd4LXNkay1uYW1lJzogJ05vZGUuanMnLFxuICAgICAgICAneC1zZGstcGxhdGZvcm0nOiAnc2VydmVyJyxcbiAgICAgICAgJ3gtc2RrLWxhbmd1YWdlJzogJ25vZGVqcycsXG4gICAgICAgICd4LXNkay12ZXJzaW9uJzogJzE0LjEuMCcsXG4gICAgICAgICd1c2VyLWFnZW50JzogZ2V0VXNlckFnZW50KCksXG4gICAgICAgICdYLUFwcGNvbmRhLVJlc3BvbnNlLUZvcm1hdCc6ICcxLjYuMCcsXG4gICAgfTtcbiAgICBwcml2YXRlIGZldGNoSW1wbD86IHR5cGVvZiBmZXRjaDtcblxuICAgIC8qKlxuICAgICAqIFNldCBFbmRwb2ludFxuICAgICAqXG4gICAgICogWW91ciBwcm9qZWN0IGVuZHBvaW50XG4gICAgICpcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gZW5kcG9pbnRcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIHt0aGlzfVxuICAgICAqL1xuICAgIHNldEVuZHBvaW50KGVuZHBvaW50OiBzdHJpbmcpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5jb25maWcuZW5kcG9pbnQgPSBlbmRwb2ludDtcblxuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXQgc2VsZi1zaWduZWRcbiAgICAgKlxuICAgICAqIEBwYXJhbSB7Ym9vbGVhbn0gc2VsZlNpZ25lZFxuICAgICAqXG4gICAgICogQHJldHVybnMge3RoaXN9XG4gICAgICovXG4gICAgc2V0U2VsZlNpZ25lZChzZWxmU2lnbmVkOiBib29sZWFuKTogdGhpcyB7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgaWYgKHR5cGVvZiBnbG9iYWxUaGlzLkVkZ2VSdW50aW1lICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdzZXRTZWxmU2lnbmVkIGlzIG5vdCBzdXBwb3J0ZWQgaW4gZWRnZSBydW50aW1lcy4nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY29uZmlnLnNlbGZTaWduZWQgPSBzZWxmU2lnbmVkO1xuXG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCBoZWFkZXJcbiAgICAgKlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBoZWFkZXJcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gdmFsdWVcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIHt0aGlzfVxuICAgICAqL1xuICAgIGFkZEhlYWRlcihoZWFkZXI6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHRoaXMge1xuICAgICAgICB0aGlzLmhlYWRlcnNbaGVhZGVyLnRvTG93ZXJDYXNlKCldID0gdmFsdWU7XG5cbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0IGN1c3RvbSBmZXRjaCBpbXBsZW1lbnRhdGlvbi5cbiAgICAgKlxuICAgICAqIFVzZWZ1bCBmb3IgTm9kZS5qcyB2ZXJzaW9ucyB3aXRob3V0IGEgZ2xvYmFsIGZldGNoLlxuICAgICAqL1xuICAgIHNldEZldGNoKGZldGNoSW1wbDogdHlwZW9mIGZldGNoKTogdGhpcyB7XG4gICAgICAgIHRoaXMuZmV0Y2hJbXBsID0gZmV0Y2hJbXBsO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEZldGNoKCk6IHR5cGVvZiBmZXRjaCB7XG4gICAgICAgIGNvbnN0IHJ1bnRpbWVGZXRjaCA9IHRoaXMuZmV0Y2hJbXBsID8/ICh0eXBlb2YgZ2xvYmFsVGhpcyAhPT0gJ3VuZGVmaW5lZCcgPyBnbG9iYWxUaGlzLmZldGNoIDogdW5kZWZpbmVkKTtcblxuICAgICAgICBpZiAoIXJ1bnRpbWVGZXRjaCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEFwcGNvbmRhRXhjZXB0aW9uKCdGZXRjaCBBUEkgaXMgbm90IGF2YWlsYWJsZS4gVXNlIE5vZGUuanMgMTgrIG9yIHNldCBhIGN1c3RvbSBmZXRjaCB3aXRoIGNsaWVudC5zZXRGZXRjaCgpLicpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHJ1bnRpbWVGZXRjaC5iaW5kKGdsb2JhbFRoaXMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldCBQcm9qZWN0XG4gICAgICpcbiAgICAgKiBZb3VyIHByb2plY3QgSURcbiAgICAgKlxuICAgICAqIEBwYXJhbSB2YWx1ZSBzdHJpbmdcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge3RoaXN9XG4gICAgICovXG4gICAgc2V0UHJvamVjdCh2YWx1ZTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuaGVhZGVyc1snWC1BcHBjb25kYS1Qcm9qZWN0J10gPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5jb25maWcucHJvamVjdCA9IHZhbHVlO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAgIC8qKlxuICAgICAqIFNldCBNb2RlXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdmFsdWUgc3RyaW5nXG4gICAgICpcbiAgICAgKiBAcmV0dXJuIHt0aGlzfVxuICAgICAqL1xuICAgICAgc2V0TW9kZSh2YWx1ZTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuaGVhZGVyc1snWC1BcHBjb25kYS1Nb2RlJ10gPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5jb25maWcubW9kZSA9IHZhbHVlO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXQgS2V5XG4gICAgICpcbiAgICAgKiBZb3VyIHNlY3JldCBBUEkga2V5XG4gICAgICpcbiAgICAgKiBAcGFyYW0gdmFsdWUgc3RyaW5nXG4gICAgICpcbiAgICAgKiBAcmV0dXJuIHt0aGlzfVxuICAgICAqL1xuICAgIHNldEtleSh2YWx1ZTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuaGVhZGVyc1snWC1BcHBjb25kYS1LZXknXSA9IHZhbHVlO1xuICAgICAgICB0aGlzLmNvbmZpZy5rZXkgPSB2YWx1ZTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFNldCBKV1RcbiAgICAgKlxuICAgICAqIFlvdXIgc2VjcmV0IEpTT04gV2ViIFRva2VuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdmFsdWUgc3RyaW5nXG4gICAgICpcbiAgICAgKiBAcmV0dXJuIHt0aGlzfVxuICAgICAqL1xuICAgIHNldEpXVCh2YWx1ZTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuaGVhZGVyc1snWC1BcHBjb25kYS1KV1QnXSA9IHZhbHVlO1xuICAgICAgICB0aGlzLmNvbmZpZy5qd3QgPSB2YWx1ZTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFNldCBMb2NhbGVcbiAgICAgKlxuICAgICAqIEBwYXJhbSB2YWx1ZSBzdHJpbmdcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge3RoaXN9XG4gICAgICovXG4gICAgc2V0TG9jYWxlKHZhbHVlOiBzdHJpbmcpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5oZWFkZXJzWydYLUFwcGNvbmRhLUxvY2FsZSddID0gdmFsdWU7XG4gICAgICAgIHRoaXMuY29uZmlnLmxvY2FsZSA9IHZhbHVlO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG4gICAgLyoqXG4gICAgICogU2V0IFNlc3Npb25cbiAgICAgKlxuICAgICAqIFRoZSB1c2VyIHNlc3Npb24gdG8gYXV0aGVudGljYXRlIHdpdGhcbiAgICAgKlxuICAgICAqIEBwYXJhbSB2YWx1ZSBzdHJpbmdcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge3RoaXN9XG4gICAgICovXG4gICAgc2V0U2Vzc2lvbih2YWx1ZTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuaGVhZGVyc1snWC1BcHBjb25kYS1TZXNzaW9uJ10gPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5jb25maWcuc2Vzc2lvbiA9IHZhbHVlO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG4gICAgLyoqXG4gICAgICogU2V0IEZvcndhcmRlZFVzZXJBZ2VudFxuICAgICAqXG4gICAgICogVGhlIHVzZXIgYWdlbnQgc3RyaW5nIG9mIHRoZSBjbGllbnQgdGhhdCBtYWRlIHRoZSByZXF1ZXN0XG4gICAgICpcbiAgICAgKiBAcGFyYW0gdmFsdWUgc3RyaW5nXG4gICAgICpcbiAgICAgKiBAcmV0dXJuIHt0aGlzfVxuICAgICAqL1xuICAgIHNldEZvcndhcmRlZFVzZXJBZ2VudCh2YWx1ZTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuaGVhZGVyc1snWC1Gb3J3YXJkZWQtVXNlci1BZ2VudCddID0gdmFsdWU7XG4gICAgICAgIHRoaXMuY29uZmlnLmZvcndhcmRlZHVzZXJhZ2VudCA9IHZhbHVlO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBzZXRGYWxsYmFja0Nvb2tpZXModmFsdWU6IHN0cmluZyk6IHRoaXMge1xuICAgICAgICB0aGlzLmhlYWRlcnNbJ1gtRmFsbGJhY2stQ29va2llcyddID0gdmFsdWU7XG4gICAgICAgIC8vdGhpcy5jb25maWcuZm9yd2FyZGVkdXNlcmFnZW50ID0gdmFsdWU7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHByZXBhcmVSZXF1ZXN0KG1ldGhvZDogc3RyaW5nLCB1cmw6IFVSTCwgaGVhZGVyczogSGVhZGVycyA9IHt9LCBwYXJhbXM6IFBheWxvYWQgPSB7fSk6IHsgdXJpOiBzdHJpbmcsIG9wdGlvbnM6IFJlcXVlc3RJbml0IH0ge1xuICAgICAgICBtZXRob2QgPSBtZXRob2QudG9VcHBlckNhc2UoKTtcblxuICAgICAgICBoZWFkZXJzID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5oZWFkZXJzLCBoZWFkZXJzKTtcblxuICAgICAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93LmxvY2FsU3RvcmFnZSkge1xuICAgICAgICAgICAgY29uc3QgY29va2llRmFsbGJhY2sgPSB3aW5kb3cubG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2Nvb2tpZUZhbGxiYWNrJyk7XG4gICAgICAgICAgICBpZiAoY29va2llRmFsbGJhY2spIHtcbiAgICAgICAgICAgICAgICBoZWFkZXJzWydYLUZhbGxiYWNrLUNvb2tpZXMnXSA9IGNvb2tpZUZhbGxiYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbGV0IG9wdGlvbnM6IFJlcXVlc3RJbml0ID0ge1xuICAgICAgICAgICAgbWV0aG9kLFxuICAgICAgICAgICAgaGVhZGVycyxcbiAgICAgICAgfTtcblxuICAgICAgICBpZiAoaGVhZGVyc1snWC1BcHBjb25kYS1EZXYtS2V5J10gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgb3B0aW9ucy5jcmVkZW50aWFscyA9ICdpbmNsdWRlJztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChtZXRob2QgPT09ICdHRVQnKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhDbGllbnQuZmxhdHRlbihwYXJhbXMpKSkge1xuICAgICAgICAgICAgICAgIHVybC5zZWFyY2hQYXJhbXMuYXBwZW5kKGtleSwgdmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc3dpdGNoIChoZWFkZXJzWydjb250ZW50LXR5cGUnXSkge1xuICAgICAgICAgICAgICAgIGNhc2UgJ2FwcGxpY2F0aW9uL2pzb24nOlxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLmJvZHkgPSBKU09OLnN0cmluZ2lmeShwYXJhbXMpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgJ211bHRpcGFydC9mb3JtLWRhdGEnOlxuICAgICAgICAgICAgICAgICAgICBjb25zdCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuXG4gICAgICAgICAgICAgICAgICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKHBhcmFtcykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc0ZpbGVMaWtlKHZhbHVlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1EYXRhLmFwcGVuZChrZXksIHZhbHVlIGFzIHVua25vd24gYXMgQmxvYiwgZ2V0RmlsZU5hbWUodmFsdWUpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IG5lc3RlZFZhbHVlIG9mIHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc0ZpbGVMaWtlKG5lc3RlZFZhbHVlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybURhdGEuYXBwZW5kKGAke2tleX1bXWAsIG5lc3RlZFZhbHVlIGFzIHVua25vd24gYXMgQmxvYiwgZ2V0RmlsZU5hbWUobmVzdGVkVmFsdWUpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1EYXRhLmFwcGVuZChgJHtrZXl9W11gLCBuZXN0ZWRWYWx1ZSBhcyBhbnkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtRGF0YS5hcHBlbmQoa2V5LCB2YWx1ZSBhcyBhbnkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5ib2R5ID0gZm9ybURhdGE7XG4gICAgICAgICAgICAgICAgICAgIGRlbGV0ZSBoZWFkZXJzWydjb250ZW50LXR5cGUnXTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4geyB1cmk6IHVybC50b1N0cmluZygpLCBvcHRpb25zIH07XG4gICAgfVxuXG4gICAgYXN5bmMgY2h1bmtlZFVwbG9hZChtZXRob2Q6IHN0cmluZywgdXJsOiBVUkwsIGhlYWRlcnM6IEhlYWRlcnMgPSB7fSwgb3JpZ2luYWxQYXlsb2FkOiBQYXlsb2FkID0ge30sIG9uUHJvZ3Jlc3M6IChwcm9ncmVzczogVXBsb2FkUHJvZ3Jlc3MpID0+IHZvaWQpIHtcbiAgICAgICAgY29uc3QgZmlsZSA9IE9iamVjdC52YWx1ZXMob3JpZ2luYWxQYXlsb2FkKS5maW5kKCh2YWx1ZSkgPT4gaXNGaWxlTGlrZSh2YWx1ZSkpIGFzIEZpbGVMaWtlIHwgdW5kZWZpbmVkO1xuXG4gICAgICAgIGlmICghZmlsZSkge1xuICAgICAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuY2FsbChtZXRob2QsIHVybCwgaGVhZGVycywgb3JpZ2luYWxQYXlsb2FkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChmaWxlLnNpemUgPD0gQ2xpZW50LkNIVU5LX1NJWkUpIHtcbiAgICAgICAgICAgIHJldHVybiBhd2FpdCB0aGlzLmNhbGwobWV0aG9kLCB1cmwsIGhlYWRlcnMsIG9yaWdpbmFsUGF5bG9hZCk7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgc3RhcnQgPSAwO1xuICAgICAgICBsZXQgcmVzcG9uc2U6IGFueSA9IG51bGw7XG5cbiAgICAgICAgd2hpbGUgKHN0YXJ0IDwgZmlsZS5zaXplKSB7XG4gICAgICAgICAgICBsZXQgZW5kID0gc3RhcnQgKyBDbGllbnQuQ0hVTktfU0laRTsgLy8gUHJlcGFyZSBlbmQgZm9yIHRoZSBuZXh0IGNodW5rXG4gICAgICAgICAgICBpZiAoZW5kID49IGZpbGUuc2l6ZSkge1xuICAgICAgICAgICAgICAgIGVuZCA9IGZpbGUuc2l6ZTsgLy8gQWRqdXN0IGZvciB0aGUgbGFzdCBjaHVuayB0byBpbmNsdWRlIHRoZSBsYXN0IGJ5dGVcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaGVhZGVyc1snY29udGVudC1yYW5nZSddID0gYGJ5dGVzICR7c3RhcnR9LSR7ZW5kIC0gMX0vJHtmaWxlLnNpemV9YDtcbiAgICAgICAgICAgIGNvbnN0IGNodW5rID0gZmlsZS5zbGljZShzdGFydCwgZW5kKTtcblxuICAgICAgICAgICAgY29uc3QgcGF5bG9hZCA9IHtcbiAgICAgICAgICAgICAgICAuLi5vcmlnaW5hbFBheWxvYWQsXG4gICAgICAgICAgICAgICAgZmlsZTogY3JlYXRlQ2h1bmtGaWxlKGNodW5rLCBnZXRGaWxlTmFtZShmaWxlKSksXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2FsbChtZXRob2QsIHVybCwgaGVhZGVycywgcGF5bG9hZCk7XG5cbiAgICAgICAgICAgIGlmIChvblByb2dyZXNzICYmIHR5cGVvZiBvblByb2dyZXNzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgb25Qcm9ncmVzcyh7XG4gICAgICAgICAgICAgICAgICAgICRpZDogcmVzcG9uc2UuJGlkLFxuICAgICAgICAgICAgICAgICAgICBwcm9ncmVzczogTWF0aC5yb3VuZCgoZW5kIC8gZmlsZS5zaXplKSAqIDEwMCksXG4gICAgICAgICAgICAgICAgICAgIHNpemVVcGxvYWRlZDogZW5kLFxuICAgICAgICAgICAgICAgICAgICBjaHVua3NUb3RhbDogTWF0aC5jZWlsKGZpbGUuc2l6ZSAvIENsaWVudC5DSFVOS19TSVpFKSxcbiAgICAgICAgICAgICAgICAgICAgY2h1bmtzVXBsb2FkZWQ6IE1hdGguY2VpbChlbmQgLyBDbGllbnQuQ0hVTktfU0laRSlcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHJlc3BvbnNlICYmIHJlc3BvbnNlLiRpZCkge1xuICAgICAgICAgICAgICAgIGhlYWRlcnNbJ3gtYXBwY29uZGEtaWQnXSA9IHJlc3BvbnNlLiRpZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3RhcnQgPSBlbmQ7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzcG9uc2U7XG4gICAgfVxuXG4gICAgYXN5bmMgcmVkaXJlY3QobWV0aG9kOiBzdHJpbmcsIHVybDogVVJMLCBoZWFkZXJzOiBIZWFkZXJzID0ge30sIHBhcmFtczogUGF5bG9hZCA9IHt9KTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgICAgY29uc3QgeyB1cmksIG9wdGlvbnMgfSA9IHRoaXMucHJlcGFyZVJlcXVlc3QobWV0aG9kLCB1cmwsIGhlYWRlcnMsIHBhcmFtcyk7XG4gICAgICAgIGNvbnN0IHJ1bnRpbWVGZXRjaCA9IHRoaXMuZ2V0RmV0Y2goKTtcblxuICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHJ1bnRpbWVGZXRjaCh1cmksIHtcbiAgICAgICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgICAgICByZWRpcmVjdDogJ21hbnVhbCdcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1cyAhPT0gMzAxICYmIHJlc3BvbnNlLnN0YXR1cyAhPT0gMzAyKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgQXBwY29uZGFFeGNlcHRpb24oJ0ludmFsaWQgcmVkaXJlY3QnLCByZXNwb25zZS5zdGF0dXMpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCdsb2NhdGlvbicpIHx8ICcnO1xuICAgIH1cblxuICAgIGFzeW5jIGNhbGwobWV0aG9kOiBzdHJpbmcsIHVybDogVVJMLCBoZWFkZXJzOiBIZWFkZXJzID0ge30sIHBhcmFtczogUGF5bG9hZCA9IHt9LCByZXNwb25zZVR5cGUgPSAnanNvbicpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICBjb25zdCB7IHVyaSwgb3B0aW9ucyB9ID0gdGhpcy5wcmVwYXJlUmVxdWVzdChtZXRob2QsIHVybCwgaGVhZGVycywgcGFyYW1zKTtcbiAgICAgICAgY29uc3QgcnVudGltZUZldGNoID0gdGhpcy5nZXRGZXRjaCgpO1xuXG4gICAgICAgIGxldCBkYXRhOiBhbnkgPSBudWxsO1xuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHJ1bnRpbWVGZXRjaCh1cmksIG9wdGlvbnMpO1xuXG4gICAgICAgICAgICBjb25zdCB3YXJuaW5ncyA9IHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCd4LWFwcGNvbmRhLXdhcm5pbmcnKTtcbiAgICAgICAgICAgIGlmICh3YXJuaW5ncykge1xuICAgICAgICAgICAgICAgIHdhcm5pbmdzLnNwbGl0KCc7JykuZm9yRWFjaCgod2FybmluZzogc3RyaW5nKSA9PiBjb25zb2xlLndhcm4oJ1dhcm5pbmc6ICcgKyB3YXJuaW5nKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChyZXNwb25zZS5oZWFkZXJzLmdldCgnY29udGVudC10eXBlJyk/LmluY2x1ZGVzKCdhcHBsaWNhdGlvbi9qc29uJykpIHtcbiAgICAgICAgICAgICAgICBkYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChyZXNwb25zZVR5cGUgPT09ICdhcnJheUJ1ZmZlcicpIHtcbiAgICAgICAgICAgICAgICBkYXRhID0gYXdhaXQgcmVzcG9uc2UuYXJyYXlCdWZmZXIoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgZGF0YSA9IHtcbiAgICAgICAgICAgICAgICAgICAgbWVzc2FnZTogYXdhaXQgcmVzcG9uc2UudGV4dCgpXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKDQwMCA8PSByZXNwb25zZS5zdGF0dXMpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgQXBwY29uZGFFeGNlcHRpb24oZGF0YT8ubWVzc2FnZSwgcmVzcG9uc2Uuc3RhdHVzLCBkYXRhPy50eXBlLCBkYXRhKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGRhdGE7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XG4gICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc3RhdGljIGZsYXR0ZW4oZGF0YTogUGF5bG9hZCwgcHJlZml4ID0gJycpOiBQYXlsb2FkIHtcbiAgICAgICAgbGV0IG91dHB1dDogUGF5bG9hZCA9IHt9O1xuXG4gICAgICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKGRhdGEpKSB7XG4gICAgICAgICAgICBsZXQgZmluYWxLZXkgPSBwcmVmaXggPyBwcmVmaXggKyAnWycgKyBrZXkgKyAnXScgOiBrZXk7XG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICBvdXRwdXQgPSB7IC4uLm91dHB1dCwgLi4uQ2xpZW50LmZsYXR0ZW4odmFsdWUsIGZpbmFsS2V5KSB9O1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBvdXRwdXRbZmluYWxLZXldID0gdmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gb3V0cHV0O1xuICAgIH1cbn1cblxuZXhwb3J0IHsgQ2xpZW50LCBBcHBjb25kYUV4Y2VwdGlvbiB9O1xuZXhwb3J0IHsgUXVlcnkgfSBmcm9tICcuL3F1ZXJ5JztcbmV4cG9ydCB0eXBlIHsgTW9kZWxzLCBQYXlsb2FkLCBVcGxvYWRQcm9ncmVzcyB9O1xuZXhwb3J0IHR5cGUgeyBRdWVyeVR5cGVzLCBRdWVyeVR5cGVzTGlzdCB9IGZyb20gJy4vcXVlcnknO1xuIl19
@@ -0,0 +1,13 @@
1
+ export declare enum ApiService {
2
+ Account = "account",
3
+ Avatars = "avatars",
4
+ Databases = "databases",
5
+ Locale = "locale",
6
+ Health = "health",
7
+ Storage = "storage",
8
+ Teams = "teams",
9
+ Users = "users",
10
+ Functions = "functions",
11
+ Graphql = "graphql",
12
+ Messaging = "messaging"
13
+ }
@@ -0,0 +1,15 @@
1
+ export var ApiService;
2
+ (function (ApiService) {
3
+ ApiService["Account"] = "account";
4
+ ApiService["Avatars"] = "avatars";
5
+ ApiService["Databases"] = "databases";
6
+ ApiService["Locale"] = "locale";
7
+ ApiService["Health"] = "health";
8
+ ApiService["Storage"] = "storage";
9
+ ApiService["Teams"] = "teams";
10
+ ApiService["Users"] = "users";
11
+ ApiService["Functions"] = "functions";
12
+ ApiService["Graphql"] = "graphql";
13
+ ApiService["Messaging"] = "messaging";
14
+ })(ApiService || (ApiService = {}));
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLXNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZW51bXMvYXBpLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksVUFZWDtBQVpELFdBQVksVUFBVTtJQUNsQixpQ0FBbUIsQ0FBQTtJQUNuQixpQ0FBbUIsQ0FBQTtJQUNuQixxQ0FBdUIsQ0FBQTtJQUN2QiwrQkFBaUIsQ0FBQTtJQUNqQiwrQkFBaUIsQ0FBQTtJQUNqQixpQ0FBbUIsQ0FBQTtJQUNuQiw2QkFBZSxDQUFBO0lBQ2YsNkJBQWUsQ0FBQTtJQUNmLHFDQUF1QixDQUFBO0lBQ3ZCLGlDQUFtQixDQUFBO0lBQ25CLHFDQUF1QixDQUFBO0FBQzNCLENBQUMsRUFaVyxVQUFVLEtBQVYsVUFBVSxRQVlyQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEFwaVNlcnZpY2Uge1xuICAgIEFjY291bnQgPSAnYWNjb3VudCcsXG4gICAgQXZhdGFycyA9ICdhdmF0YXJzJyxcbiAgICBEYXRhYmFzZXMgPSAnZGF0YWJhc2VzJyxcbiAgICBMb2NhbGUgPSAnbG9jYWxlJyxcbiAgICBIZWFsdGggPSAnaGVhbHRoJyxcbiAgICBTdG9yYWdlID0gJ3N0b3JhZ2UnLFxuICAgIFRlYW1zID0gJ3RlYW1zJyxcbiAgICBVc2VycyA9ICd1c2VycycsXG4gICAgRnVuY3Rpb25zID0gJ2Z1bmN0aW9ucycsXG4gICAgR3JhcGhxbCA9ICdncmFwaHFsJyxcbiAgICBNZXNzYWdpbmcgPSAnbWVzc2FnaW5nJyxcbn0iXX0=
@@ -0,0 +1,5 @@
1
+ export declare enum Api {
2
+ Rest = "rest",
3
+ Graphql = "graphql",
4
+ Realtime = "realtime"
5
+ }
@@ -0,0 +1,7 @@
1
+ export var Api;
2
+ (function (Api) {
3
+ Api["Rest"] = "rest";
4
+ Api["Graphql"] = "graphql";
5
+ Api["Realtime"] = "realtime";
6
+ })(Api || (Api = {}));
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2VudW1zL2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxHQUlYO0FBSkQsV0FBWSxHQUFHO0lBQ1gsb0JBQWEsQ0FBQTtJQUNiLDBCQUFtQixDQUFBO0lBQ25CLDRCQUFxQixDQUFBO0FBQ3pCLENBQUMsRUFKVyxHQUFHLEtBQUgsR0FBRyxRQUlkIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gQXBpIHtcbiAgICBSZXN0ID0gJ3Jlc3QnLFxuICAgIEdyYXBocWwgPSAnZ3JhcGhxbCcsXG4gICAgUmVhbHRpbWUgPSAncmVhbHRpbWUnLFxufSJdfQ==
@@ -0,0 +1,9 @@
1
+ export declare enum AuthMethod {
2
+ Emailpassword = "email-password",
3
+ Magicurl = "magic-url",
4
+ Emailotp = "email-otp",
5
+ Anonymous = "anonymous",
6
+ Invites = "invites",
7
+ Jwt = "jwt",
8
+ Phone = "phone"
9
+ }
@@ -0,0 +1,11 @@
1
+ export var AuthMethod;
2
+ (function (AuthMethod) {
3
+ AuthMethod["Emailpassword"] = "email-password";
4
+ AuthMethod["Magicurl"] = "magic-url";
5
+ AuthMethod["Emailotp"] = "email-otp";
6
+ AuthMethod["Anonymous"] = "anonymous";
7
+ AuthMethod["Invites"] = "invites";
8
+ AuthMethod["Jwt"] = "jwt";
9
+ AuthMethod["Phone"] = "phone";
10
+ })(AuthMethod || (AuthMethod = {}));
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1tZXRob2QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZW51bXMvYXV0aC1tZXRob2QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksVUFRWDtBQVJELFdBQVksVUFBVTtJQUNsQiw4Q0FBZ0MsQ0FBQTtJQUNoQyxvQ0FBc0IsQ0FBQTtJQUN0QixvQ0FBc0IsQ0FBQTtJQUN0QixxQ0FBdUIsQ0FBQTtJQUN2QixpQ0FBbUIsQ0FBQTtJQUNuQix5QkFBVyxDQUFBO0lBQ1gsNkJBQWUsQ0FBQTtBQUNuQixDQUFDLEVBUlcsVUFBVSxLQUFWLFVBQVUsUUFRckIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBBdXRoTWV0aG9kIHtcbiAgICBFbWFpbHBhc3N3b3JkID0gJ2VtYWlsLXBhc3N3b3JkJyxcbiAgICBNYWdpY3VybCA9ICdtYWdpYy11cmwnLFxuICAgIEVtYWlsb3RwID0gJ2VtYWlsLW90cCcsXG4gICAgQW5vbnltb3VzID0gJ2Fub255bW91cycsXG4gICAgSW52aXRlcyA9ICdpbnZpdGVzJyxcbiAgICBKd3QgPSAnand0JyxcbiAgICBQaG9uZSA9ICdwaG9uZScsXG59Il19
@@ -0,0 +1,16 @@
1
+ export declare enum Browser {
2
+ AvantBrowser = "aa",
3
+ AndroidWebViewBeta = "an",
4
+ GoogleChrome = "ch",
5
+ GoogleChromeIOS = "ci",
6
+ GoogleChromeMobile = "cm",
7
+ Chromium = "cr",
8
+ MozillaFirefox = "ff",
9
+ Safari = "sf",
10
+ MobileSafari = "mf",
11
+ MicrosoftEdge = "ps",
12
+ MicrosoftEdgeIOS = "oi",
13
+ OperaMini = "om",
14
+ Opera = "op",
15
+ OperaNext = "on"
16
+ }
@@ -0,0 +1,18 @@
1
+ export var Browser;
2
+ (function (Browser) {
3
+ Browser["AvantBrowser"] = "aa";
4
+ Browser["AndroidWebViewBeta"] = "an";
5
+ Browser["GoogleChrome"] = "ch";
6
+ Browser["GoogleChromeIOS"] = "ci";
7
+ Browser["GoogleChromeMobile"] = "cm";
8
+ Browser["Chromium"] = "cr";
9
+ Browser["MozillaFirefox"] = "ff";
10
+ Browser["Safari"] = "sf";
11
+ Browser["MobileSafari"] = "mf";
12
+ Browser["MicrosoftEdge"] = "ps";
13
+ Browser["MicrosoftEdgeIOS"] = "oi";
14
+ Browser["OperaMini"] = "om";
15
+ Browser["Opera"] = "op";
16
+ Browser["OperaNext"] = "on";
17
+ })(Browser || (Browser = {}));
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbnVtcy9icm93c2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLE9BZVg7QUFmRCxXQUFZLE9BQU87SUFDZiw4QkFBbUIsQ0FBQTtJQUNuQixvQ0FBeUIsQ0FBQTtJQUN6Qiw4QkFBbUIsQ0FBQTtJQUNuQixpQ0FBc0IsQ0FBQTtJQUN0QixvQ0FBeUIsQ0FBQTtJQUN6QiwwQkFBZSxDQUFBO0lBQ2YsZ0NBQXFCLENBQUE7SUFDckIsd0JBQWEsQ0FBQTtJQUNiLDhCQUFtQixDQUFBO0lBQ25CLCtCQUFvQixDQUFBO0lBQ3BCLGtDQUF1QixDQUFBO0lBQ3ZCLDJCQUFnQixDQUFBO0lBQ2hCLHVCQUFZLENBQUE7SUFDWiwyQkFBZ0IsQ0FBQTtBQUNwQixDQUFDLEVBZlcsT0FBTyxLQUFQLE9BQU8sUUFlbEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBCcm93c2VyIHtcbiAgICBBdmFudEJyb3dzZXIgPSAnYWEnLFxuICAgIEFuZHJvaWRXZWJWaWV3QmV0YSA9ICdhbicsXG4gICAgR29vZ2xlQ2hyb21lID0gJ2NoJyxcbiAgICBHb29nbGVDaHJvbWVJT1MgPSAnY2knLFxuICAgIEdvb2dsZUNocm9tZU1vYmlsZSA9ICdjbScsXG4gICAgQ2hyb21pdW0gPSAnY3InLFxuICAgIE1vemlsbGFGaXJlZm94ID0gJ2ZmJyxcbiAgICBTYWZhcmkgPSAnc2YnLFxuICAgIE1vYmlsZVNhZmFyaSA9ICdtZicsXG4gICAgTWljcm9zb2Z0RWRnZSA9ICdwcycsXG4gICAgTWljcm9zb2Z0RWRnZUlPUyA9ICdvaScsXG4gICAgT3BlcmFNaW5pID0gJ29tJyxcbiAgICBPcGVyYSA9ICdvcCcsXG4gICAgT3BlcmFOZXh0ID0gJ29uJyxcbn0iXX0=
@@ -0,0 +1,5 @@
1
+ export declare enum Compression {
2
+ None = "none",
3
+ Gzip = "gzip",
4
+ Zstd = "zstd"
5
+ }
@@ -0,0 +1,7 @@
1
+ export var Compression;
2
+ (function (Compression) {
3
+ Compression["None"] = "none";
4
+ Compression["Gzip"] = "gzip";
5
+ Compression["Zstd"] = "zstd";
6
+ })(Compression || (Compression = {}));
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcHJlc3Npb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZW51bXMvY29tcHJlc3Npb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksV0FJWDtBQUpELFdBQVksV0FBVztJQUNuQiw0QkFBYSxDQUFBO0lBQ2IsNEJBQWEsQ0FBQTtJQUNiLDRCQUFhLENBQUE7QUFDakIsQ0FBQyxFQUpXLFdBQVcsS0FBWCxXQUFXLFFBSXRCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gQ29tcHJlc3Npb24ge1xuICAgIE5vbmUgPSAnbm9uZScsXG4gICAgR3ppcCA9ICdnemlwJyxcbiAgICBac3RkID0gJ3pzdGQnLFxufSJdfQ==
@@ -0,0 +1,18 @@
1
+ export declare enum CreditCard {
2
+ AmericanExpress = "amex",
3
+ Argencard = "argencard",
4
+ Cabal = "cabal",
5
+ Cencosud = "cencosud",
6
+ DinersClub = "diners",
7
+ Discover = "discover",
8
+ Elo = "elo",
9
+ Hipercard = "hipercard",
10
+ JCB = "jcb",
11
+ Mastercard = "mastercard",
12
+ Naranja = "naranja",
13
+ TarjetaShopping = "targeta-shopping",
14
+ UnionChinaPay = "union-china-pay",
15
+ Visa = "visa",
16
+ MIR = "mir",
17
+ Maestro = "maestro"
18
+ }
@@ -0,0 +1,20 @@
1
+ export var CreditCard;
2
+ (function (CreditCard) {
3
+ CreditCard["AmericanExpress"] = "amex";
4
+ CreditCard["Argencard"] = "argencard";
5
+ CreditCard["Cabal"] = "cabal";
6
+ CreditCard["Cencosud"] = "cencosud";
7
+ CreditCard["DinersClub"] = "diners";
8
+ CreditCard["Discover"] = "discover";
9
+ CreditCard["Elo"] = "elo";
10
+ CreditCard["Hipercard"] = "hipercard";
11
+ CreditCard["JCB"] = "jcb";
12
+ CreditCard["Mastercard"] = "mastercard";
13
+ CreditCard["Naranja"] = "naranja";
14
+ CreditCard["TarjetaShopping"] = "targeta-shopping";
15
+ CreditCard["UnionChinaPay"] = "union-china-pay";
16
+ CreditCard["Visa"] = "visa";
17
+ CreditCard["MIR"] = "mir";
18
+ CreditCard["Maestro"] = "maestro";
19
+ })(CreditCard || (CreditCard = {}));
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlZGl0LWNhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZW51bXMvY3JlZGl0LWNhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksVUFpQlg7QUFqQkQsV0FBWSxVQUFVO0lBQ2xCLHNDQUF3QixDQUFBO0lBQ3hCLHFDQUF1QixDQUFBO0lBQ3ZCLDZCQUFlLENBQUE7SUFDZixtQ0FBcUIsQ0FBQTtJQUNyQixtQ0FBcUIsQ0FBQTtJQUNyQixtQ0FBcUIsQ0FBQTtJQUNyQix5QkFBVyxDQUFBO0lBQ1gscUNBQXVCLENBQUE7SUFDdkIseUJBQVcsQ0FBQTtJQUNYLHVDQUF5QixDQUFBO0lBQ3pCLGlDQUFtQixDQUFBO0lBQ25CLGtEQUFvQyxDQUFBO0lBQ3BDLCtDQUFpQyxDQUFBO0lBQ2pDLDJCQUFhLENBQUE7SUFDYix5QkFBVyxDQUFBO0lBQ1gsaUNBQW1CLENBQUE7QUFDdkIsQ0FBQyxFQWpCVyxVQUFVLEtBQVYsVUFBVSxRQWlCckIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBDcmVkaXRDYXJkIHtcbiAgICBBbWVyaWNhbkV4cHJlc3MgPSAnYW1leCcsXG4gICAgQXJnZW5jYXJkID0gJ2FyZ2VuY2FyZCcsXG4gICAgQ2FiYWwgPSAnY2FiYWwnLFxuICAgIENlbmNvc3VkID0gJ2NlbmNvc3VkJyxcbiAgICBEaW5lcnNDbHViID0gJ2RpbmVycycsXG4gICAgRGlzY292ZXIgPSAnZGlzY292ZXInLFxuICAgIEVsbyA9ICdlbG8nLFxuICAgIEhpcGVyY2FyZCA9ICdoaXBlcmNhcmQnLFxuICAgIEpDQiA9ICdqY2InLFxuICAgIE1hc3RlcmNhcmQgPSAnbWFzdGVyY2FyZCcsXG4gICAgTmFyYW5qYSA9ICduYXJhbmphJyxcbiAgICBUYXJqZXRhU2hvcHBpbmcgPSAndGFyZ2V0YS1zaG9wcGluZycsXG4gICAgVW5pb25DaGluYVBheSA9ICd1bmlvbi1jaGluYS1wYXknLFxuICAgIFZpc2EgPSAndmlzYScsXG4gICAgTUlSID0gJ21pcicsXG4gICAgTWFlc3RybyA9ICdtYWVzdHJvJyxcbn0iXX0=
@@ -0,0 +1,5 @@
1
+ export declare enum DatabaseUsageRange {
2
+ TwentyFourHours = "24h",
3
+ ThirtyDays = "30d",
4
+ NinetyDays = "90d"
5
+ }
@@ -0,0 +1,7 @@
1
+ export var DatabaseUsageRange;
2
+ (function (DatabaseUsageRange) {
3
+ DatabaseUsageRange["TwentyFourHours"] = "24h";
4
+ DatabaseUsageRange["ThirtyDays"] = "30d";
5
+ DatabaseUsageRange["NinetyDays"] = "90d";
6
+ })(DatabaseUsageRange || (DatabaseUsageRange = {}));
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWJhc2UtdXNhZ2UtcmFuZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZW51bXMvZGF0YWJhc2UtdXNhZ2UtcmFuZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksa0JBSVg7QUFKRCxXQUFZLGtCQUFrQjtJQUMxQiw2Q0FBdUIsQ0FBQTtJQUN2Qix3Q0FBa0IsQ0FBQTtJQUNsQix3Q0FBa0IsQ0FBQTtBQUN0QixDQUFDLEVBSlcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQUk3QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIERhdGFiYXNlVXNhZ2VSYW5nZSB7XG4gICAgVHdlbnR5Rm91ckhvdXJzID0gJzI0aCcsXG4gICAgVGhpcnR5RGF5cyA9ICczMGQnLFxuICAgIE5pbmV0eURheXMgPSAnOTBkJyxcbn0iXX0=