@appconda/sdk 1.0.556 → 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 (347) 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
  346. package/src/modules/emploid/schema.ts +5 -5
  347. package/src/modules/emploid/types.ts +1 -1
@@ -0,0 +1,194 @@
1
+ type QueryTypesSingle = string | number | boolean;
2
+ export type QueryTypesList = string[] | number[] | boolean[] | Query[];
3
+ export type QueryTypes = QueryTypesSingle | QueryTypesList;
4
+ type AttributesTypes = string | string[];
5
+ /**
6
+ * Helper class to generate query strings.
7
+ */
8
+ export declare class Query {
9
+ method: string;
10
+ attribute: AttributesTypes | undefined;
11
+ values: QueryTypesList | undefined;
12
+ /**
13
+ * Constructor for Query class.
14
+ *
15
+ * @param {string} method
16
+ * @param {AttributesTypes} attribute
17
+ * @param {QueryTypes} values
18
+ */
19
+ constructor(method: string, attribute?: AttributesTypes, values?: QueryTypes);
20
+ /**
21
+ * Convert the query object to a JSON string.
22
+ *
23
+ * @returns {string}
24
+ */
25
+ toString(): string;
26
+ /**
27
+ * Filter resources where attribute is equal to value.
28
+ *
29
+ * @param {string} attribute
30
+ * @param {QueryTypes} value
31
+ * @returns {string}
32
+ */
33
+ static equal: (attribute: string, value: QueryTypes) => string;
34
+ /**
35
+ * Filter resources where attribute is not equal to value.
36
+ *
37
+ * @param {string} attribute
38
+ * @param {QueryTypes} value
39
+ * @returns {string}
40
+ */
41
+ static notEqual: (attribute: string, value: QueryTypes) => string;
42
+ /**
43
+ * Filter resources where attribute is less than value.
44
+ *
45
+ * @param {string} attribute
46
+ * @param {QueryTypes} value
47
+ * @returns {string}
48
+ */
49
+ static lessThan: (attribute: string, value: QueryTypes) => string;
50
+ /**
51
+ * Filter resources where attribute is less than or equal to value.
52
+ *
53
+ * @param {string} attribute
54
+ * @param {QueryTypes} value
55
+ * @returns {string}
56
+ */
57
+ static lessThanEqual: (attribute: string, value: QueryTypes) => string;
58
+ /**
59
+ * Filter resources where attribute is greater than value.
60
+ *
61
+ * @param {string} attribute
62
+ * @param {QueryTypes} value
63
+ * @returns {string}
64
+ */
65
+ static greaterThan: (attribute: string, value: QueryTypes) => string;
66
+ /**
67
+ * Filter resources where attribute is greater than or equal to value.
68
+ *
69
+ * @param {string} attribute
70
+ * @param {QueryTypes} value
71
+ * @returns {string}
72
+ */
73
+ static greaterThanEqual: (attribute: string, value: QueryTypes) => string;
74
+ /**
75
+ * Filter resources where attribute is null.
76
+ *
77
+ * @param {string} attribute
78
+ * @returns {string}
79
+ */
80
+ static isNull: (attribute: string) => string;
81
+ /**
82
+ * Filter resources where attribute is not null.
83
+ *
84
+ * @param {string} attribute
85
+ * @returns {string}
86
+ */
87
+ static isNotNull: (attribute: string) => string;
88
+ /**
89
+ * Filter resources where attribute is between start and end (inclusive).
90
+ *
91
+ * @param {string} attribute
92
+ * @param {string | number} start
93
+ * @param {string | number} end
94
+ * @returns {string}
95
+ */
96
+ static between: (attribute: string, start: string | number, end: string | number) => string;
97
+ /**
98
+ * Filter resources where attribute starts with value.
99
+ *
100
+ * @param {string} attribute
101
+ * @param {string} value
102
+ * @returns {string}
103
+ */
104
+ static startsWith: (attribute: string, value: string) => string;
105
+ /**
106
+ * Filter resources where attribute ends with value.
107
+ *
108
+ * @param {string} attribute
109
+ * @param {string} value
110
+ * @returns {string}
111
+ */
112
+ static endsWith: (attribute: string, value: string) => string;
113
+ /**
114
+ * Specify which attributes should be returned by the API call.
115
+ *
116
+ * @param {string[]} attributes
117
+ * @returns {string}
118
+ */
119
+ static select: (attributes: string[]) => string;
120
+ /**
121
+ * Filter resources by searching attribute for value.
122
+ * A fulltext index on attribute is required for this query to work.
123
+ *
124
+ * @param {string} attribute
125
+ * @param {string} value
126
+ * @returns {string}
127
+ */
128
+ static search: (attribute: string, value: string) => string;
129
+ /**
130
+ * Sort results by attribute descending.
131
+ *
132
+ * @param {string} attribute
133
+ * @returns {string}
134
+ */
135
+ static orderDesc: (attribute: string) => string;
136
+ /**
137
+ * Sort results by attribute ascending.
138
+ *
139
+ * @param {string} attribute
140
+ * @returns {string}
141
+ */
142
+ static orderAsc: (attribute: string) => string;
143
+ /**
144
+ * Return results after documentId.
145
+ *
146
+ * @param {string} documentId
147
+ * @returns {string}
148
+ */
149
+ static cursorAfter: (documentId: string) => string;
150
+ /**
151
+ * Return results before documentId.
152
+ *
153
+ * @param {string} documentId
154
+ * @returns {string}
155
+ */
156
+ static cursorBefore: (documentId: string) => string;
157
+ /**
158
+ * Return only limit results.
159
+ *
160
+ * @param {number} limit
161
+ * @returns {string}
162
+ */
163
+ static limit: (limit: number) => string;
164
+ /**
165
+ * Filter resources by skipping the first offset results.
166
+ *
167
+ * @param {number} offset
168
+ * @returns {string}
169
+ */
170
+ static offset: (offset: number) => string;
171
+ /**
172
+ * Filter resources where attribute contains the specified value.
173
+ *
174
+ * @param {string} attribute
175
+ * @param {string | string[]} value
176
+ * @returns {string}
177
+ */
178
+ static contains: (attribute: string, value: string | string[]) => string;
179
+ /**
180
+ * Combine multiple queries using logical OR operator.
181
+ *
182
+ * @param {string[]} queries
183
+ * @returns {string}
184
+ */
185
+ static or: (queries: string[]) => string;
186
+ /**
187
+ * Combine multiple queries using logical AND operator.
188
+ *
189
+ * @param {string[]} queries
190
+ * @returns {string}
191
+ */
192
+ static and: (queries: string[]) => string;
193
+ }
194
+ export {};
package/dist/query.js ADDED
@@ -0,0 +1,204 @@
1
+ /**
2
+ * Helper class to generate query strings.
3
+ */
4
+ export class Query {
5
+ /**
6
+ * Constructor for Query class.
7
+ *
8
+ * @param {string} method
9
+ * @param {AttributesTypes} attribute
10
+ * @param {QueryTypes} values
11
+ */
12
+ constructor(method, attribute, values) {
13
+ this.method = method;
14
+ this.attribute = attribute;
15
+ if (values !== undefined) {
16
+ if (Array.isArray(values)) {
17
+ this.values = values;
18
+ }
19
+ else {
20
+ this.values = [values];
21
+ }
22
+ }
23
+ }
24
+ /**
25
+ * Convert the query object to a JSON string.
26
+ *
27
+ * @returns {string}
28
+ */
29
+ toString() {
30
+ return JSON.stringify({
31
+ method: this.method,
32
+ attribute: this.attribute,
33
+ values: this.values,
34
+ });
35
+ }
36
+ }
37
+ /**
38
+ * Filter resources where attribute is equal to value.
39
+ *
40
+ * @param {string} attribute
41
+ * @param {QueryTypes} value
42
+ * @returns {string}
43
+ */
44
+ Query.equal = (attribute, value) => new Query("equal", attribute, value).toString();
45
+ /**
46
+ * Filter resources where attribute is not equal to value.
47
+ *
48
+ * @param {string} attribute
49
+ * @param {QueryTypes} value
50
+ * @returns {string}
51
+ */
52
+ Query.notEqual = (attribute, value) => new Query("notEqual", attribute, value).toString();
53
+ /**
54
+ * Filter resources where attribute is less than value.
55
+ *
56
+ * @param {string} attribute
57
+ * @param {QueryTypes} value
58
+ * @returns {string}
59
+ */
60
+ Query.lessThan = (attribute, value) => new Query("lessThan", attribute, value).toString();
61
+ /**
62
+ * Filter resources where attribute is less than or equal to value.
63
+ *
64
+ * @param {string} attribute
65
+ * @param {QueryTypes} value
66
+ * @returns {string}
67
+ */
68
+ Query.lessThanEqual = (attribute, value) => new Query("lessThanEqual", attribute, value).toString();
69
+ /**
70
+ * Filter resources where attribute is greater than value.
71
+ *
72
+ * @param {string} attribute
73
+ * @param {QueryTypes} value
74
+ * @returns {string}
75
+ */
76
+ Query.greaterThan = (attribute, value) => new Query("greaterThan", attribute, value).toString();
77
+ /**
78
+ * Filter resources where attribute is greater than or equal to value.
79
+ *
80
+ * @param {string} attribute
81
+ * @param {QueryTypes} value
82
+ * @returns {string}
83
+ */
84
+ Query.greaterThanEqual = (attribute, value) => new Query("greaterThanEqual", attribute, value).toString();
85
+ /**
86
+ * Filter resources where attribute is null.
87
+ *
88
+ * @param {string} attribute
89
+ * @returns {string}
90
+ */
91
+ Query.isNull = (attribute) => new Query("isNull", attribute).toString();
92
+ /**
93
+ * Filter resources where attribute is not null.
94
+ *
95
+ * @param {string} attribute
96
+ * @returns {string}
97
+ */
98
+ Query.isNotNull = (attribute) => new Query("isNotNull", attribute).toString();
99
+ /**
100
+ * Filter resources where attribute is between start and end (inclusive).
101
+ *
102
+ * @param {string} attribute
103
+ * @param {string | number} start
104
+ * @param {string | number} end
105
+ * @returns {string}
106
+ */
107
+ Query.between = (attribute, start, end) => new Query("between", attribute, [start, end]).toString();
108
+ /**
109
+ * Filter resources where attribute starts with value.
110
+ *
111
+ * @param {string} attribute
112
+ * @param {string} value
113
+ * @returns {string}
114
+ */
115
+ Query.startsWith = (attribute, value) => new Query("startsWith", attribute, value).toString();
116
+ /**
117
+ * Filter resources where attribute ends with value.
118
+ *
119
+ * @param {string} attribute
120
+ * @param {string} value
121
+ * @returns {string}
122
+ */
123
+ Query.endsWith = (attribute, value) => new Query("endsWith", attribute, value).toString();
124
+ /**
125
+ * Specify which attributes should be returned by the API call.
126
+ *
127
+ * @param {string[]} attributes
128
+ * @returns {string}
129
+ */
130
+ Query.select = (attributes) => new Query("select", undefined, attributes).toString();
131
+ /**
132
+ * Filter resources by searching attribute for value.
133
+ * A fulltext index on attribute is required for this query to work.
134
+ *
135
+ * @param {string} attribute
136
+ * @param {string} value
137
+ * @returns {string}
138
+ */
139
+ Query.search = (attribute, value) => new Query("search", attribute, value).toString();
140
+ /**
141
+ * Sort results by attribute descending.
142
+ *
143
+ * @param {string} attribute
144
+ * @returns {string}
145
+ */
146
+ Query.orderDesc = (attribute) => new Query("orderDesc", attribute).toString();
147
+ /**
148
+ * Sort results by attribute ascending.
149
+ *
150
+ * @param {string} attribute
151
+ * @returns {string}
152
+ */
153
+ Query.orderAsc = (attribute) => new Query("orderAsc", attribute).toString();
154
+ /**
155
+ * Return results after documentId.
156
+ *
157
+ * @param {string} documentId
158
+ * @returns {string}
159
+ */
160
+ Query.cursorAfter = (documentId) => new Query("cursorAfter", undefined, documentId).toString();
161
+ /**
162
+ * Return results before documentId.
163
+ *
164
+ * @param {string} documentId
165
+ * @returns {string}
166
+ */
167
+ Query.cursorBefore = (documentId) => new Query("cursorBefore", undefined, documentId).toString();
168
+ /**
169
+ * Return only limit results.
170
+ *
171
+ * @param {number} limit
172
+ * @returns {string}
173
+ */
174
+ Query.limit = (limit) => new Query("limit", undefined, limit).toString();
175
+ /**
176
+ * Filter resources by skipping the first offset results.
177
+ *
178
+ * @param {number} offset
179
+ * @returns {string}
180
+ */
181
+ Query.offset = (offset) => new Query("offset", undefined, offset).toString();
182
+ /**
183
+ * Filter resources where attribute contains the specified value.
184
+ *
185
+ * @param {string} attribute
186
+ * @param {string | string[]} value
187
+ * @returns {string}
188
+ */
189
+ Query.contains = (attribute, value) => new Query("contains", attribute, value).toString();
190
+ /**
191
+ * Combine multiple queries using logical OR operator.
192
+ *
193
+ * @param {string[]} queries
194
+ * @returns {string}
195
+ */
196
+ Query.or = (queries) => new Query("or", undefined, queries.map((query) => JSON.parse(query))).toString();
197
+ /**
198
+ * Combine multiple queries using logical AND operator.
199
+ *
200
+ * @param {string[]} queries
201
+ * @returns {string}
202
+ */
203
+ Query.and = (queries) => new Query("and", undefined, queries.map((query) => JSON.parse(query))).toString();
204
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcXVlcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0E7O0dBRUc7QUFDSCxNQUFNLE9BQU8sS0FBSztJQUtoQjs7Ozs7O09BTUc7SUFDSCxZQUNFLE1BQWMsRUFDZCxTQUEyQixFQUMzQixNQUFtQjtRQUVuQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUUzQixJQUFJLE1BQU0sS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN6QixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztnQkFDMUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7WUFDdkIsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxNQUFNLENBQW1CLENBQUM7WUFDM0MsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDcEIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ25CLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07U0FDcEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUFFRDs7Ozs7O0dBTUc7QUFDSSxXQUFLLEdBQUcsQ0FBQyxTQUFpQixFQUFFLEtBQWlCLEVBQVUsRUFBRSxDQUM5RCxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO0FBRWxEOzs7Ozs7R0FNRztBQUNJLGNBQVEsR0FBRyxDQUFDLFNBQWlCLEVBQUUsS0FBaUIsRUFBVSxFQUFFLENBQ2pFLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFD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QyxRQUFRLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbInR5cGUgUXVlcnlUeXBlc1NpbmdsZSA9IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW47XG5leHBvcnQgdHlwZSBRdWVyeVR5cGVzTGlzdCA9IHN0cmluZ1tdIHwgbnVtYmVyW10gfCBib29sZWFuW10gfCBRdWVyeVtdO1xuZXhwb3J0IHR5cGUgUXVlcnlUeXBlcyA9IFF1ZXJ5VHlwZXNTaW5nbGUgfCBRdWVyeVR5cGVzTGlzdDtcbnR5cGUgQXR0cmlidXRlc1R5cGVzID0gc3RyaW5nIHwgc3RyaW5nW107XG5cbi8qKlxuICogSGVscGVyIGNsYXNzIHRvIGdlbmVyYXRlIHF1ZXJ5IHN0cmluZ3MuXG4gKi9cbmV4cG9ydCBjbGFzcyBRdWVyeSB7XG4gIG1ldGhvZDogc3RyaW5nO1xuICBhdHRyaWJ1dGU6IEF0dHJpYnV0ZXNUeXBlcyB8IHVuZGVmaW5lZDtcbiAgdmFsdWVzOiBRdWVyeVR5cGVzTGlzdCB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogQ29uc3RydWN0b3IgZm9yIFF1ZXJ5IGNsYXNzLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbWV0aG9kXG4gICAqIEBwYXJhbSB7QXR0cmlidXRlc1R5cGVzfSBhdHRyaWJ1dGVcbiAgICogQHBhcmFtIHtRdWVyeVR5cGVzfSB2YWx1ZXNcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIG1ldGhvZDogc3RyaW5nLFxuICAgIGF0dHJpYnV0ZT86IEF0dHJpYnV0ZXNUeXBlcyxcbiAgICB2YWx1ZXM/OiBRdWVyeVR5cGVzXG4gICkge1xuICAgIHRoaXMubWV0aG9kID0gbWV0aG9kO1xuICAgIHRoaXMuYXR0cmlidXRlID0gYXR0cmlidXRlO1xuXG4gICAgaWYgKHZhbHVlcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZXMpKSB7XG4gICAgICAgIHRoaXMudmFsdWVzID0gdmFsdWVzO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy52YWx1ZXMgPSBbdmFsdWVzXSBhcyBRdWVyeVR5cGVzTGlzdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydCB0aGUgcXVlcnkgb2JqZWN0IHRvIGEgSlNPTiBzdHJpbmcuXG4gICAqXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICBtZXRob2Q6IHRoaXMubWV0aG9kLFxuICAgICAgYXR0cmlidXRlOiB0aGlzLmF0dHJpYnV0ZSxcbiAgICAgIHZhbHVlczogdGhpcy52YWx1ZXMsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogRmlsdGVyIHJlc291cmNlcyB3aGVyZSBhdHRyaWJ1dGUgaXMgZXF1YWwgdG8gdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhdHRyaWJ1dGVcbiAgICogQHBhcmFtIHtRdWVyeVR5cGVzfSB2YWx1ZVxuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgc3RhdGljIGVxdWFsID0gKGF0dHJpYnV0ZTogc3RyaW5nLCB2YWx1ZTogUXVlcnlUeXBlcyk6IHN0cmluZyA9PlxuICAgIG5ldyBRdWVyeShcImVxdWFsXCIsIGF0dHJpYnV0ZSwgdmFsdWUpLnRvU3RyaW5nKCk7XG5cbiAgLyoqXG4gICAqIEZpbHRlciByZXNvdXJjZXMgd2hlcmUgYXR0cmlidXRlIGlzIG5vdCBlcXVhbCB0byB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGF0dHJpYnV0ZVxuICAgKiBAcGFyYW0ge1F1ZXJ5VHlwZXN9IHZhbHVlXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICBzdGF0aWMgbm90RXF1YWwgPSAoYXR0cmlidXRlOiBzdHJpbmcsIHZhbHVlOiBRdWVyeVR5cGVzKTogc3RyaW5nID0+XG4gICAgbmV3IFF1ZXJ5KFwibm90RXF1YWxcIiwgYXR0cmlidXRlLCB2YWx1ZSkudG9TdHJpbmcoKTtcblxuICAvKipcbiAgICogRmlsdGVyIHJlc291cmNlcyB3aGVyZSBhdHRyaWJ1dGUgaXMgbGVzcyB0aGFuIHZhbHVlLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYXR0cmlidXRlXG4gICAqIEBwYXJhbSB7UXVlcnlUeXBlc30gdmFsdWVcbiAgICogQHJldHVybnMge3N0cmluZ31cbiAgICovXG4gIHN0YXRpYyBsZXNzVGhhbiA9IChhdHRyaWJ1dGU6IHN0cmluZywgdmFsdWU6IFF1ZXJ5VHlwZXMpOiBzdHJpbmcgPT5cbiAgICBuZXcgUXVlcnkoXCJsZXNzVGhhblwiLCBhdHRyaWJ1dGUsIHZhbHVlKS50b1N0cmluZygpO1xuXG4gIC8qKlxuICAgKiBGaWx0ZXIgcmVzb3VyY2VzIHdoZXJlIGF0dHJpYnV0ZSBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhdHRyaWJ1dGVcbiAgICogQHBhcmFtIHtRdWVyeVR5cGVzfSB2YWx1ZVxuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgc3RhdGljIGxlc3NUaGFuRXF1YWwgPSAoYXR0cmlidXRlOiBzdHJpbmcsIHZhbHVlOiBRdWVyeVR5cGVzKTogc3RyaW5nID0+XG4gICAgbmV3IFF1ZXJ5KFwibGVzc1RoYW5FcXVhbFwiLCBhdHRyaWJ1dGUsIHZhbHVlKS50b1N0cmluZygpO1xuXG4gIC8qKlxuICAgKiBGaWx0ZXIgcmVzb3VyY2VzIHdoZXJlIGF0dHJpYnV0ZSBpcyBncmVhdGVyIHRoYW4gdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhdHRyaWJ1dGVcbiAgICogQHBhcmFtIHtRdWVyeVR5cGVzfSB2YWx1ZVxuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgc3RhdGljIGdyZWF0ZXJUaGFuID0gKGF0dHJpYnV0ZTogc3RyaW5nLCB2YWx1ZTogUXVlcnlUeXBlcyk6IHN0cmluZyA9PlxuICAgIG5ldyBRdWVyeShcImdyZWF0ZXJUaGFuXCIsIGF0dHJpYnV0ZSwgdmFsdWUpLnRvU3RyaW5nKCk7XG5cbiAgLyoqXG4gICAqIEZpbHRlciByZXNvdXJjZXMgd2hlcmUgYXR0cmlidXRlIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGF0dHJpYnV0ZVxuICAgKiBAcGFyYW0ge1F1ZXJ5VHlwZXN9IHZhbHVlXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICBzdGF0aWMgZ3JlYXRlclRoYW5FcXVhbCA9IChhdHRyaWJ1dGU6IHN0cmluZywgdmFsdWU6IFF1ZXJ5VHlwZXMpOiBzdHJpbmcgPT5cbiAgICBuZXcgUXVlcnkoXCJncmVhdGVyVGhhbkVxdWFsXCIsIGF0dHJpYnV0ZSwgdmFsdWUpLnRvU3RyaW5nKCk7XG5cbiAgLyoqXG4gICAqIEZpbHRlciByZXNvdXJjZXMgd2hlcmUgYXR0cmlidXRlIGlzIG51bGwuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhdHRyaWJ1dGVcbiAgICogQHJldHVybnMge3N0cmluZ31cbiAgICovXG4gIHN0YXRpYyBpc051bGwgPSAoYXR0cmlidXRlOiBzdHJpbmcpOiBzdHJpbmcgPT5cbiAgICBuZXcgUXVlcnkoXCJpc051bGxcIiwgYXR0cmlidXRlKS50b1N0cmluZygpO1xuXG4gIC8qKlxuICAgKiBGaWx0ZXIgcmVzb3VyY2VzIHdoZXJlIGF0dHJpYnV0ZSBpcyBub3QgbnVsbC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGF0dHJpYnV0ZVxuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgc3RhdGljIGlzTm90TnVsbCA9IChhdHRyaWJ1dGU6IHN0cmluZyk6IHN0cmluZyA9PlxuICAgIG5ldyBRdWVyeShcImlzTm90TnVsbFwiLCBhdHRyaWJ1dGUpLnRvU3RyaW5nKCk7XG5cbiAgLyoqXG4gICAqIEZpbHRlciByZXNvdXJjZXMgd2hlcmUgYXR0cmlidXRlIGlzIGJldHdlZW4gc3RhcnQgYW5kIGVuZCAoaW5jbHVzaXZlKS5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGF0dHJpYnV0ZVxuICAgKiBAcGFyYW0ge3N0cmluZyB8IG51bWJlcn0gc3RhcnRcbiAgICogQHBhcmFtIHtzdHJpbmcgfCBudW1iZXJ9IGVuZFxuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgc3RhdGljIGJldHdlZW4gPSAoYXR0cmlidXRlOiBzdHJpbmcsIHN0YXJ0OiBzdHJpbmcgfCBudW1iZXIsIGVuZDogc3RyaW5nIHwgbnVtYmVyKTogc3RyaW5nID0+XG4gICAgbmV3IFF1ZXJ5KFwiYmV0d2VlblwiLCBhdHRyaWJ1dGUsIFtzdGFydCwgZW5kXSBhcyBRdWVyeVR5cGVzTGlzdCkudG9TdHJpbmcoKTtcblxuICAvKipcbiAgICogRmlsdGVyIHJlc291cmNlcyB3aGVyZSBhdHRyaWJ1dGUgc3RhcnRzIHdpdGggdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhdHRyaWJ1dGVcbiAgICogQHBhcmFtIHtzdHJpbmd9IHZhbHVlXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICBzdGF0aWMgc3RhcnRzV2l0aCA9IChhdHRyaWJ1dGU6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHN0cmluZyA9PlxuICAgIG5ldyBRdWVyeShcInN0YXJ0c1dpdGhcIiwgYXR0cmlidXRlLCB2YWx1ZSkudG9TdHJpbmcoKTtcblxuICAvKipcbiAgICogRmlsdGVyIHJlc291cmNlcyB3aGVyZSBhdHRyaWJ1dGUgZW5kcyB3aXRoIHZhbHVlLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYXR0cmlidXRlXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB2YWx1ZVxuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgc3RhdGljIGVuZHNXaXRoID0gKGF0dHJpYnV0ZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogc3RyaW5nID0+XG4gICAgbmV3IFF1ZXJ5KFwiZW5kc1dpdGhcIiwgYXR0cmlidXRlLCB2YWx1ZSkudG9TdHJpbmcoKTtcblxuICAvKipcbiAgICogU3BlY2lmeSB3aGljaCBhdHRyaWJ1dGVzIHNob3VsZCBiZSByZXR1cm5lZCBieSB0aGUgQVBJIGNhbGwuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nW119IGF0dHJpYnV0ZXNcbiAgICogQHJldHVybnMge3N0cmluZ31cbiAgICovXG4gIHN0YXRpYyBzZWxlY3QgPSAoYXR0cmlidXRlczogc3RyaW5nW10pOiBzdHJpbmcgPT5cbiAgICBuZXcgUXVlcnkoXCJzZWxlY3RcIiwgdW5kZWZpbmVkLCBhdHRyaWJ1dGVzKS50b1N0cmluZygpO1xuXG4gIC8qKlxuICAgKiBGaWx0ZXIgcmVzb3VyY2VzIGJ5IHNlYXJjaGluZyBhdHRyaWJ1dGUgZm9yIHZhbHVlLlxuICAgKiBBIGZ1bGx0ZXh0IGluZGV4IG9uIGF0dHJpYnV0ZSBpcyByZXF1aXJlZCBmb3IgdGhpcyBxdWVyeSB0byB3b3JrLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYXR0cmlidXRlXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB2YWx1ZVxuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgc3RhdGljIHNlYXJjaCA9IChhdHRyaWJ1dGU6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHN0cmluZyA9PlxuICAgIG5ldyBRdWVyeShcInNlYXJjaFwiLCBhdHRyaWJ1dGUsIHZhbHVlKS50b1N0cmluZygpO1xuXG4gIC8qKlxuICAgKiBTb3J0IHJlc3VsdHMgYnkgYXR0cmlidXRlIGRlc2NlbmRpbmcuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhdHRyaWJ1dGVcbiAgICogQHJldHVybnMge3N0cmluZ31cbiAgICovXG4gIHN0YXRpYyBvcmRlckRlc2MgPSAoYXR0cmlidXRlOiBzdHJpbmcpOiBzdHJpbmcgPT5cbiAgICBuZXcgUXVlcnkoXCJvcmRlckRlc2NcIiwgYXR0cmlidXRlKS50b1N0cmluZygpO1xuXG4gIC8qKlxuICAgKiBTb3J0IHJlc3VsdHMgYnkgYXR0cmlidXRlIGFzY2VuZGluZy5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGF0dHJpYnV0ZVxuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgc3RhdGljIG9yZGVyQXNjID0gKGF0dHJpYnV0ZTogc3RyaW5nKTogc3RyaW5nID0+XG4gICAgbmV3IFF1ZXJ5KFwib3JkZXJBc2NcIiwgYXR0cmlidXRlKS50b1N0cmluZygpO1xuXG4gIC8qKlxuICAgKiBSZXR1cm4gcmVzdWx0cyBhZnRlciBkb2N1bWVudElkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gZG9jdW1lbnRJZFxuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgc3RhdGljIGN1cnNvckFmdGVyID0gKGRvY3VtZW50SWQ6IHN0cmluZyk6IHN0cmluZyA9PlxuICAgIG5ldyBRdWVyeShcImN1cnNvckFmdGVyXCIsIHVuZGVmaW5lZCwgZG9jdW1lbnRJZCkudG9TdHJpbmcoKTtcblxuICAvKipcbiAgICogUmV0dXJuIHJlc3VsdHMgYmVmb3JlIGRvY3VtZW50SWQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBkb2N1bWVudElkXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICBzdGF0aWMgY3Vyc29yQmVmb3JlID0gKGRvY3VtZW50SWQ6IHN0cmluZyk6IHN0cmluZyA9PlxuICAgIG5ldyBRdWVyeShcImN1cnNvckJlZm9yZVwiLCB1bmRlZmluZWQsIGRvY3VtZW50SWQpLnRvU3RyaW5nKCk7XG5cbiAgLyoqXG4gICAqIFJldHVybiBvbmx5IGxpbWl0IHJlc3VsdHMuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBsaW1pdFxuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgc3RhdGljIGxpbWl0ID0gKGxpbWl0OiBudW1iZXIpOiBzdHJpbmcgPT5cbiAgICBuZXcgUXVlcnkoXCJsaW1pdFwiLCB1bmRlZmluZWQsIGxpbWl0KS50b1N0cmluZygpO1xuXG4gIC8qKlxuICAgKiBGaWx0ZXIgcmVzb3VyY2VzIGJ5IHNraXBwaW5nIHRoZSBmaXJzdCBvZmZzZXQgcmVzdWx0cy5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IG9mZnNldFxuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgc3RhdGljIG9mZnNldCA9IChvZmZzZXQ6IG51bWJlcik6IHN0cmluZyA9PlxuICAgIG5ldyBRdWVyeShcIm9mZnNldFwiLCB1bmRlZmluZWQsIG9mZnNldCkudG9TdHJpbmcoKTtcblxuICAvKipcbiAgICogRmlsdGVyIHJlc291cmNlcyB3aGVyZSBhdHRyaWJ1dGUgY29udGFpbnMgdGhlIHNwZWNpZmllZCB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGF0dHJpYnV0ZVxuICAgKiBAcGFyYW0ge3N0cmluZyB8IHN0cmluZ1tdfSB2YWx1ZVxuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgc3RhdGljIGNvbnRhaW5zID0gKGF0dHJpYnV0ZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIHwgc3RyaW5nW10pOiBzdHJpbmcgPT5cbiAgICBuZXcgUXVlcnkoXCJjb250YWluc1wiLCBhdHRyaWJ1dGUsIHZhbHVlKS50b1N0cmluZygpO1xuXG4gIC8qKlxuICAgKiBDb21iaW5lIG11bHRpcGxlIHF1ZXJpZXMgdXNpbmcgbG9naWNhbCBPUiBvcGVyYXRvci5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmdbXX0gcXVlcmllc1xuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgc3RhdGljIG9yID0gKHF1ZXJpZXM6IHN0cmluZ1tdKSA9PlxuICAgIG5ldyBRdWVyeShcIm9yXCIsIHVuZGVmaW5lZCwgcXVlcmllcy5tYXAoKHF1ZXJ5KSA9PiBKU09OLnBhcnNlKHF1ZXJ5KSkpLnRvU3RyaW5nKCk7XG5cbiAgLyoqXG4gICAqIENvbWJpbmUgbXVsdGlwbGUgcXVlcmllcyB1c2luZyBsb2dpY2FsIEFORCBvcGVyYXRvci5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmdbXX0gcXVlcmllc1xuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgc3RhdGljIGFuZCA9IChxdWVyaWVzOiBzdHJpbmdbXSkgPT5cbiAgICBuZXcgUXVlcnkoXCJhbmRcIiwgdW5kZWZpbmVkLCBxdWVyaWVzLm1hcCgocXVlcnkpID0+IEpTT04ucGFyc2UocXVlcnkpKSkudG9TdHJpbmcoKTtcbn1cbiJdfQ==
package/dist/role.d.ts ADDED
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Helper class to generate role strings for `Permission`.
3
+ */
4
+ export declare class Role {
5
+ /**
6
+ * Grants access to anyone.
7
+ *
8
+ * This includes authenticated and unauthenticated users.
9
+ *
10
+ * @returns {string}
11
+ */
12
+ static any(): string;
13
+ /**
14
+ * Grants access to a specific user by user ID.
15
+ *
16
+ * You can optionally pass verified or unverified for
17
+ * `status` to target specific types of users.
18
+ *
19
+ * @param {string} id
20
+ * @param {string} status
21
+ * @returns {string}
22
+ */
23
+ static user(id: string, status?: string): string;
24
+ /**
25
+ * Grants access to any authenticated or anonymous user.
26
+ *
27
+ * You can optionally pass verified or unverified for
28
+ * `status` to target specific types of users.
29
+ *
30
+ * @param {string} status
31
+ * @returns {string}
32
+ */
33
+ static users(status?: string): string;
34
+ /**
35
+ * Grants access to any guest user without a session.
36
+ *
37
+ * Authenticated users don't have access to this role.
38
+ *
39
+ * @returns {string}
40
+ */
41
+ static guests(): string;
42
+ /**
43
+ * Grants access to a team by team ID.
44
+ *
45
+ * You can optionally pass a role for `role` to target
46
+ * team members with the specified role.
47
+ *
48
+ * @param {string} id
49
+ * @param {string} role
50
+ * @returns {string}
51
+ */
52
+ static team(id: string, role?: string): string;
53
+ /**
54
+ * Grants access to a specific member of a team.
55
+ *
56
+ * When the member is removed from the team, they will
57
+ * no longer have access.
58
+ *
59
+ * @param {string} id
60
+ * @returns {string}
61
+ */
62
+ static member(id: string): string;
63
+ /**
64
+ * Grants access to a user with the specified label.
65
+ *
66
+ * @param {string} name
67
+ * @returns {string}
68
+ */
69
+ static label(name: string): string;
70
+ }
package/dist/role.js ADDED
@@ -0,0 +1,94 @@
1
+ /**
2
+ * Helper class to generate role strings for `Permission`.
3
+ */
4
+ export class Role {
5
+ /**
6
+ * Grants access to anyone.
7
+ *
8
+ * This includes authenticated and unauthenticated users.
9
+ *
10
+ * @returns {string}
11
+ */
12
+ static any() {
13
+ return 'any';
14
+ }
15
+ /**
16
+ * Grants access to a specific user by user ID.
17
+ *
18
+ * You can optionally pass verified or unverified for
19
+ * `status` to target specific types of users.
20
+ *
21
+ * @param {string} id
22
+ * @param {string} status
23
+ * @returns {string}
24
+ */
25
+ static user(id, status = '') {
26
+ if (status === '') {
27
+ return `user:${id}`;
28
+ }
29
+ return `user:${id}/${status}`;
30
+ }
31
+ /**
32
+ * Grants access to any authenticated or anonymous user.
33
+ *
34
+ * You can optionally pass verified or unverified for
35
+ * `status` to target specific types of users.
36
+ *
37
+ * @param {string} status
38
+ * @returns {string}
39
+ */
40
+ static users(status = '') {
41
+ if (status === '') {
42
+ return 'users';
43
+ }
44
+ return `users/${status}`;
45
+ }
46
+ /**
47
+ * Grants access to any guest user without a session.
48
+ *
49
+ * Authenticated users don't have access to this role.
50
+ *
51
+ * @returns {string}
52
+ */
53
+ static guests() {
54
+ return 'guests';
55
+ }
56
+ /**
57
+ * Grants access to a team by team ID.
58
+ *
59
+ * You can optionally pass a role for `role` to target
60
+ * team members with the specified role.
61
+ *
62
+ * @param {string} id
63
+ * @param {string} role
64
+ * @returns {string}
65
+ */
66
+ static team(id, role = '') {
67
+ if (role === '') {
68
+ return `team:${id}`;
69
+ }
70
+ return `team:${id}/${role}`;
71
+ }
72
+ /**
73
+ * Grants access to a specific member of a team.
74
+ *
75
+ * When the member is removed from the team, they will
76
+ * no longer have access.
77
+ *
78
+ * @param {string} id
79
+ * @returns {string}
80
+ */
81
+ static member(id) {
82
+ return `member:${id}`;
83
+ }
84
+ /**
85
+ * Grants access to a user with the specified label.
86
+ *
87
+ * @param {string} name
88
+ * @returns {string}
89
+ */
90
+ static label(name) {
91
+ return `label:${name}`;
92
+ }
93
+ }
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9yb2xlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxPQUFPLElBQUk7SUFFYjs7Ozs7O09BTUc7SUFDSSxNQUFNLENBQUMsR0FBRztRQUNiLE9BQU8sS0FBSyxDQUFBO0lBQ2hCLENBQUM7SUFFRDs7Ozs7Ozs7O09BU0c7SUFDSSxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQVUsRUFBRSxTQUFpQixFQUFFO1FBQzlDLElBQUksTUFBTSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ2hCLE9BQU8sUUFBUSxFQUFFLEVBQUUsQ0FBQTtRQUN2QixDQUFDO1FBQ0QsT0FBTyxRQUFRLEVBQUUsSUFBSSxNQUFNLEVBQUUsQ0FBQTtJQUNqQyxDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSSxNQUFNLENBQUMsS0FBSyxDQUFDLFNBQWlCLEVBQUU7UUFDbkMsSUFBSSxNQUFNLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDaEIsT0FBTyxPQUFPLENBQUE7UUFDbEIsQ0FBQztRQUNELE9BQU8sU0FBUyxNQUFNLEVBQUUsQ0FBQTtJQUM1QixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksTUFBTSxDQUFDLE1BQU07UUFDaEIsT0FBTyxRQUFRLENBQUE7SUFDbkIsQ0FBQztJQUVEOzs7Ozs7Ozs7T0FTRztJQUNJLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBVSxFQUFFLE9BQWUsRUFBRTtRQUM1QyxJQUFJLElBQUksS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUNkLE9BQU8sUUFBUSxFQUFFLEVBQUUsQ0FBQTtRQUN2QixDQUFDO1FBQ0QsT0FBTyxRQUFRLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQTtJQUMvQixDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQVU7UUFDM0IsT0FBTyxVQUFVLEVBQUUsRUFBRSxDQUFBO0lBQ3pCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBWTtRQUM1QixPQUFPLFNBQVMsSUFBSSxFQUFFLENBQUE7SUFDMUIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBIZWxwZXIgY2xhc3MgdG8gZ2VuZXJhdGUgcm9sZSBzdHJpbmdzIGZvciBgUGVybWlzc2lvbmAuXG4gKi9cbmV4cG9ydCBjbGFzcyBSb2xlIHtcblxuICAgIC8qKlxuICAgICAqIEdyYW50cyBhY2Nlc3MgdG8gYW55b25lLlxuICAgICAqIFxuICAgICAqIFRoaXMgaW5jbHVkZXMgYXV0aGVudGljYXRlZCBhbmQgdW5hdXRoZW50aWNhdGVkIHVzZXJzLlxuICAgICAqIFxuICAgICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBhbnkoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuICdhbnknXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR3JhbnRzIGFjY2VzcyB0byBhIHNwZWNpZmljIHVzZXIgYnkgdXNlciBJRC5cbiAgICAgKiBcbiAgICAgKiBZb3UgY2FuIG9wdGlvbmFsbHkgcGFzcyB2ZXJpZmllZCBvciB1bnZlcmlmaWVkIGZvclxuICAgICAqIGBzdGF0dXNgIHRvIHRhcmdldCBzcGVjaWZpYyB0eXBlcyBvZiB1c2Vycy5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBpZCBcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gc3RhdHVzIFxuICAgICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyB1c2VyKGlkOiBzdHJpbmcsIHN0YXR1czogc3RyaW5nID0gJycpOiBzdHJpbmcge1xuICAgICAgICBpZiAoc3RhdHVzID09PSAnJykge1xuICAgICAgICAgICAgcmV0dXJuIGB1c2VyOiR7aWR9YFxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBgdXNlcjoke2lkfS8ke3N0YXR1c31gXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR3JhbnRzIGFjY2VzcyB0byBhbnkgYXV0aGVudGljYXRlZCBvciBhbm9ueW1vdXMgdXNlci5cbiAgICAgKiBcbiAgICAgKiBZb3UgY2FuIG9wdGlvbmFsbHkgcGFzcyB2ZXJpZmllZCBvciB1bnZlcmlmaWVkIGZvclxuICAgICAqIGBzdGF0dXNgIHRvIHRhcmdldCBzcGVjaWZpYyB0eXBlcyBvZiB1c2Vycy5cbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gc3RhdHVzIFxuICAgICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyB1c2VycyhzdGF0dXM6IHN0cmluZyA9ICcnKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHN0YXR1cyA9PT0gJycpIHtcbiAgICAgICAgICAgIHJldHVybiAndXNlcnMnXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGB1c2Vycy8ke3N0YXR1c31gXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR3JhbnRzIGFjY2VzcyB0byBhbnkgZ3Vlc3QgdXNlciB3aXRob3V0IGEgc2Vzc2lvbi5cbiAgICAgKiBcbiAgICAgKiBBdXRoZW50aWNhdGVkIHVzZXJzIGRvbid0IGhhdmUgYWNjZXNzIHRvIHRoaXMgcm9sZS5cbiAgICAgKiBcbiAgICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ3Vlc3RzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAnZ3Vlc3RzJ1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdyYW50cyBhY2Nlc3MgdG8gYSB0ZWFtIGJ5IHRlYW0gSUQuXG4gICAgICogXG4gICAgICogWW91IGNhbiBvcHRpb25hbGx5IHBhc3MgYSByb2xlIGZvciBgcm9sZWAgdG8gdGFyZ2V0XG4gICAgICogdGVhbSBtZW1iZXJzIHdpdGggdGhlIHNwZWNpZmllZCByb2xlLlxuICAgICAqIFxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBpZCBcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gcm9sZSBcbiAgICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgdGVhbShpZDogc3RyaW5nLCByb2xlOiBzdHJpbmcgPSAnJyk6IHN0cmluZyB7XG4gICAgICAgIGlmIChyb2xlID09PSAnJykge1xuICAgICAgICAgICAgcmV0dXJuIGB0ZWFtOiR7aWR9YFxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBgdGVhbToke2lkfS8ke3JvbGV9YFxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdyYW50cyBhY2Nlc3MgdG8gYSBzcGVjaWZpYyBtZW1iZXIgb2YgYSB0ZWFtLlxuICAgICAqIFxuICAgICAqIFdoZW4gdGhlIG1lbWJlciBpcyByZW1vdmVkIGZyb20gdGhlIHRlYW0sIHRoZXkgd2lsbFxuICAgICAqIG5vIGxvbmdlciBoYXZlIGFjY2Vzcy5cbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gaWQgXG4gICAgICogQHJldHVybnMge3N0cmluZ31cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIG1lbWJlcihpZDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGBtZW1iZXI6JHtpZH1gXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR3JhbnRzIGFjY2VzcyB0byBhIHVzZXIgd2l0aCB0aGUgc3BlY2lmaWVkIGxhYmVsLlxuICAgICAqIFxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIFxuICAgICAqIEByZXR1cm5zICB7c3RyaW5nfVxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgbGFiZWwobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGBsYWJlbDoke25hbWV9YFxuICAgIH1cbn0iXX0=
@@ -0,0 +1,10 @@
1
+ import { Client, Payload } from "./client";
2
+ export declare abstract class ServiceClient {
3
+ client: Client;
4
+ constructor(client: Client);
5
+ protected abstract getServiceName(): string;
6
+ protected actionCall<T>(folder: string, actionName: string, payload: Payload): Promise<T>;
7
+ protected actionCall<T>(actionName: string, payload: Payload): Promise<T>;
8
+ protected get<T>(url: string, payload?: Payload): Promise<T>;
9
+ protected post<T>(url: string, payload: Payload): Promise<T>;
10
+ }
@@ -0,0 +1,31 @@
1
+ export class ServiceClient {
2
+ constructor(client) {
3
+ this.client = client;
4
+ }
5
+ async actionCall(...args) {
6
+ let apiPath = '';
7
+ if (args.length === 3) {
8
+ const [folder, actionName, payload] = args;
9
+ apiPath = `/service/registry/${this.getServiceName()}/${folder}/${actionName}`;
10
+ }
11
+ else {
12
+ const [actionName, payload] = args;
13
+ apiPath = `/service/registry/${this.getServiceName()}/${actionName}`;
14
+ }
15
+ const uri = new URL(this.client.config.endpoint + apiPath);
16
+ const apiHeaders = {
17
+ 'content-type': 'application/json',
18
+ };
19
+ return await this.client.call('post', uri, apiHeaders, args.length === 3 ? args[2] : args[1]);
20
+ }
21
+ get(url, payload) {
22
+ return this.client.call('get', new URL(this.client.config.endpoint + url + (payload ? '?' + new URLSearchParams(payload) : '')));
23
+ }
24
+ post(url, payload) {
25
+ const apiHeaders = {
26
+ 'content-type': 'application/json',
27
+ };
28
+ return this.client.call('post', new URL(this.client.config.endpoint + url), apiHeaders, payload);
29
+ }
30
+ }
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1jbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvc2VydmljZS1jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFnQixhQUFhO0lBSS9CLFlBQVksTUFBYztRQUN0QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUN6QixDQUFDO0lBTVMsS0FBSyxDQUFDLFVBQVUsQ0FBSSxHQUFHLElBQVc7UUFFeEMsSUFBSSxPQUFPLEdBQVcsRUFBRSxDQUFDO1FBRXpCLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNwQixNQUFNLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUM7WUFDM0MsT0FBTyxHQUFHLHFCQUFxQixJQUFJLENBQUMsY0FBYyxFQUFFLElBQUksTUFBTSxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQ25GLENBQUM7YUFBTSxDQUFDO1lBQ0osTUFBTSxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUM7WUFDbkMsT0FBTyxHQUFHLHFCQUFxQixJQUFJLENBQUMsY0FBYyxFQUFFLElBQUksVUFBVSxFQUFFLENBQUM7UUFDekUsQ0FBQztRQUVELE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsQ0FBQztRQUUzRCxNQUFNLFVBQVUsR0FBaUM7WUFDN0MsY0FBYyxFQUFFLGtCQUFrQjtTQUNyQyxDQUFBO1FBRUQsT0FBTyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUN6QixNQUFNLEVBQ04sR0FBRyxFQUNILFVBQVUsRUFDVixJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQ3hDLENBQUM7SUFDTixDQUFDO0lBRVMsR0FBRyxDQUFJLEdBQVcsRUFBRSxPQUFpQjtRQUMzQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNuQixLQUFLLEVBQ0wsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLElBQUksZUFBZSxDQUFDLE9BQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUMxRyxDQUFDO0lBQ04sQ0FBQztJQUVTLElBQUksQ0FBSSxHQUFXLEVBQUUsT0FBZ0I7UUFDM0MsTUFBTSxVQUFVLEdBQWlDO1lBQzdDLGNBQWMsRUFBRSxrQkFBa0I7U0FDckMsQ0FBQTtRQUNELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ25CLE1BQU0sRUFDTixJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLEVBQzFDLFVBQVUsRUFDVixPQUFPLENBQ1YsQ0FBQztJQUNOLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENsaWVudCwgUGF5bG9hZCB9IGZyb20gXCIuL2NsaWVudFwiO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU2VydmljZUNsaWVudCB7XG4gICAgY2xpZW50OiBDbGllbnQ7XG5cblxuICAgIGNvbnN0cnVjdG9yKGNsaWVudDogQ2xpZW50KSB7XG4gICAgICAgIHRoaXMuY2xpZW50ID0gY2xpZW50O1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBnZXRTZXJ2aWNlTmFtZSgpOiBzdHJpbmc7XG5cbiAgICBwcm90ZWN0ZWQgYXN5bmMgYWN0aW9uQ2FsbDxUPihmb2xkZXI6IHN0cmluZywgYWN0aW9uTmFtZTogc3RyaW5nLCBwYXlsb2FkOiBQYXlsb2FkKTogUHJvbWlzZTxUPjtcbiAgICBwcm90ZWN0ZWQgYXN5bmMgYWN0aW9uQ2FsbDxUPihhY3Rpb25OYW1lOiBzdHJpbmcsIHBheWxvYWQ6IFBheWxvYWQpOiBQcm9taXNlPFQ+XG4gICAgcHJvdGVjdGVkIGFzeW5jIGFjdGlvbkNhbGw8VD4oLi4uYXJnczogYW55W10pOiBQcm9taXNlPFQ+IHtcblxuICAgICAgICBsZXQgYXBpUGF0aDogc3RyaW5nID0gJyc7XG5cbiAgICAgICAgaWYgKGFyZ3MubGVuZ3RoID09PSAzKSB7XG4gICAgICAgICAgICBjb25zdCBbZm9sZGVyLCBhY3Rpb25OYW1lLCBwYXlsb2FkXSA9IGFyZ3M7XG4gICAgICAgICAgICBhcGlQYXRoID0gYC9zZXJ2aWNlL3JlZ2lzdHJ5LyR7dGhpcy5nZXRTZXJ2aWNlTmFtZSgpfS8ke2ZvbGRlcn0vJHthY3Rpb25OYW1lfWA7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBbYWN0aW9uTmFtZSwgcGF5bG9hZF0gPSBhcmdzO1xuICAgICAgICAgICAgYXBpUGF0aCA9IGAvc2VydmljZS9yZWdpc3RyeS8ke3RoaXMuZ2V0U2VydmljZU5hbWUoKX0vJHthY3Rpb25OYW1lfWA7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB1cmkgPSBuZXcgVVJMKHRoaXMuY2xpZW50LmNvbmZpZy5lbmRwb2ludCArIGFwaVBhdGgpO1xuXG4gICAgICAgIGNvbnN0IGFwaUhlYWRlcnM6IHsgW2hlYWRlcjogc3RyaW5nXTogc3RyaW5nIH0gPSB7XG4gICAgICAgICAgICAnY29udGVudC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuY2xpZW50LmNhbGwoXG4gICAgICAgICAgICAncG9zdCcsXG4gICAgICAgICAgICB1cmksXG4gICAgICAgICAgICBhcGlIZWFkZXJzLFxuICAgICAgICAgICAgYXJncy5sZW5ndGggPT09IDMgPyBhcmdzWzJdIDogYXJnc1sxXSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0PFQ+KHVybDogc3RyaW5nLCBwYXlsb2FkPzogUGF5bG9hZCk6IFByb21pc2U8VD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jbGllbnQuY2FsbChcbiAgICAgICAgICAgICdnZXQnLFxuICAgICAgICAgICAgbmV3IFVSTCh0aGlzLmNsaWVudC5jb25maWcuZW5kcG9pbnQgKyB1cmwgKyAocGF5bG9hZCA/ICc/JyArIG5ldyBVUkxTZWFyY2hQYXJhbXMocGF5bG9hZCBhcyBhbnkpIDogJycpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBwb3N0PFQ+KHVybDogc3RyaW5nLCBwYXlsb2FkOiBQYXlsb2FkKTogUHJvbWlzZTxUPiB7XG4gICAgICAgIGNvbnN0IGFwaUhlYWRlcnM6IHsgW2hlYWRlcjogc3RyaW5nXTogc3RyaW5nIH0gPSB7XG4gICAgICAgICAgICAnY29udGVudC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLmNsaWVudC5jYWxsKFxuICAgICAgICAgICAgJ3Bvc3QnLFxuICAgICAgICAgICAgbmV3IFVSTCh0aGlzLmNsaWVudC5jb25maWcuZW5kcG9pbnQgKyB1cmwpLFxuICAgICAgICAgICAgYXBpSGVhZGVycyxcbiAgICAgICAgICAgIHBheWxvYWRcbiAgICAgICAgKTtcbiAgICB9XG59Il19
@@ -0,0 +1,11 @@
1
+ import { Client } from './client';
2
+ import type { Payload } from './client';
3
+ export declare class Service {
4
+ /**
5
+ * The size for chunked uploads in bytes.
6
+ */
7
+ static CHUNK_SIZE: number;
8
+ client: Client;
9
+ constructor(client: Client);
10
+ static flatten(data: Payload, prefix?: string): Payload;
11
+ }