@taruvi/sdk 1.5.0 → 1.5.1

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 (229) hide show
  1. package/README.md +60 -1289
  2. package/dist/client.d.ts +27 -0
  3. package/dist/client.d.ts.map +1 -0
  4. package/{src/client.ts → dist/client.js} +30 -48
  5. package/dist/client.js.map +1 -0
  6. package/dist/index.d.ts +28 -0
  7. package/dist/index.d.ts.map +1 -0
  8. package/dist/index.js +20 -0
  9. package/dist/index.js.map +1 -0
  10. package/dist/lib/analytics/AnalyticsClient.d.ts +9 -0
  11. package/dist/lib/analytics/AnalyticsClient.d.ts.map +1 -0
  12. package/dist/lib/analytics/AnalyticsClient.js +17 -0
  13. package/dist/lib/analytics/AnalyticsClient.js.map +1 -0
  14. package/dist/lib/analytics/types.d.ts +6 -0
  15. package/dist/lib/analytics/types.d.ts.map +1 -0
  16. package/dist/lib/analytics/types.js +2 -0
  17. package/dist/lib/analytics/types.js.map +1 -0
  18. package/dist/lib/app/AppClient.d.ts +15 -0
  19. package/dist/lib/app/AppClient.d.ts.map +1 -0
  20. package/dist/lib/app/AppClient.js +41 -0
  21. package/dist/lib/app/AppClient.js.map +1 -0
  22. package/dist/lib/app/types.d.ts +41 -0
  23. package/dist/lib/app/types.d.ts.map +1 -0
  24. package/dist/lib/app/types.js +2 -0
  25. package/dist/lib/app/types.js.map +1 -0
  26. package/dist/lib/auth/AuthClient.d.ts +47 -0
  27. package/dist/lib/auth/AuthClient.d.ts.map +1 -0
  28. package/{src/lib/auth/AuthClient.ts → dist/lib/auth/AuthClient.js} +58 -79
  29. package/dist/lib/auth/AuthClient.js.map +1 -0
  30. package/dist/lib/database/DatabaseClient.d.ts +76 -0
  31. package/dist/lib/database/DatabaseClient.d.ts.map +1 -0
  32. package/dist/lib/database/DatabaseClient.js +250 -0
  33. package/dist/lib/database/DatabaseClient.js.map +1 -0
  34. package/dist/lib/database/types.d.ts +66 -0
  35. package/dist/lib/database/types.d.ts.map +1 -0
  36. package/dist/lib/database/types.js +20 -0
  37. package/dist/lib/database/types.js.map +1 -0
  38. package/dist/lib/functions/FunctionsClient.d.ts +9 -0
  39. package/dist/lib/functions/FunctionsClient.d.ts.map +1 -0
  40. package/dist/lib/functions/FunctionsClient.js +20 -0
  41. package/dist/lib/functions/FunctionsClient.js.map +1 -0
  42. package/dist/lib/functions/types.d.ts +25 -0
  43. package/dist/lib/functions/types.d.ts.map +1 -0
  44. package/dist/lib/functions/types.js +2 -0
  45. package/dist/lib/functions/types.js.map +1 -0
  46. package/dist/lib/policy/PolicyClient.d.ts +25 -0
  47. package/dist/lib/policy/PolicyClient.d.ts.map +1 -0
  48. package/{src/lib/policy/PolicyClient.ts → dist/lib/policy/PolicyClient.js} +26 -40
  49. package/dist/lib/policy/PolicyClient.js.map +1 -0
  50. package/dist/lib/policy/types.d.ts +32 -0
  51. package/dist/lib/policy/types.d.ts.map +1 -0
  52. package/dist/lib/policy/types.js +2 -0
  53. package/dist/lib/policy/types.js.map +1 -0
  54. package/dist/lib/secrets/SecretsClient.d.ts +29 -0
  55. package/dist/lib/secrets/SecretsClient.d.ts.map +1 -0
  56. package/dist/lib/secrets/SecretsClient.js +66 -0
  57. package/dist/lib/secrets/SecretsClient.js.map +1 -0
  58. package/dist/lib/secrets/types.d.ts +43 -0
  59. package/dist/lib/secrets/types.d.ts.map +1 -0
  60. package/dist/lib/secrets/types.js +2 -0
  61. package/dist/lib/secrets/types.js.map +1 -0
  62. package/dist/lib/settings/SettingsClient.d.ts +9 -0
  63. package/dist/lib/settings/SettingsClient.d.ts.map +1 -0
  64. package/dist/lib/settings/SettingsClient.js +17 -0
  65. package/dist/lib/settings/SettingsClient.js.map +1 -0
  66. package/dist/lib/settings/types.d.ts +6 -0
  67. package/dist/lib/settings/types.d.ts.map +1 -0
  68. package/dist/lib/settings/types.js +2 -0
  69. package/dist/lib/settings/types.js.map +1 -0
  70. package/dist/lib/storage/StorageClient.d.ts +38 -0
  71. package/dist/lib/storage/StorageClient.d.ts.map +1 -0
  72. package/dist/lib/storage/StorageClient.js +102 -0
  73. package/dist/lib/storage/StorageClient.js.map +1 -0
  74. package/dist/lib/storage/types.d.ts +73 -0
  75. package/dist/lib/storage/types.d.ts.map +1 -0
  76. package/dist/lib/storage/types.js +2 -0
  77. package/dist/lib/storage/types.js.map +1 -0
  78. package/dist/lib/users/UserClient.d.ts +17 -0
  79. package/dist/lib/users/UserClient.d.ts.map +1 -0
  80. package/dist/lib/users/UserClient.js +40 -0
  81. package/dist/lib/users/UserClient.js.map +1 -0
  82. package/dist/lib/users/types.d.ts +108 -0
  83. package/dist/lib/users/types.d.ts.map +1 -0
  84. package/dist/lib/users/types.js +2 -0
  85. package/dist/lib/users/types.js.map +1 -0
  86. package/dist/lib-internal/errors/ErrorClient.d.ts +42 -0
  87. package/dist/lib-internal/errors/ErrorClient.d.ts.map +1 -0
  88. package/dist/lib-internal/errors/ErrorClient.js +102 -0
  89. package/dist/lib-internal/errors/ErrorClient.js.map +1 -0
  90. package/dist/lib-internal/errors/index.d.ts +4 -0
  91. package/dist/lib-internal/errors/index.d.ts.map +1 -0
  92. package/dist/lib-internal/errors/index.js +3 -0
  93. package/dist/lib-internal/errors/index.js.map +1 -0
  94. package/dist/lib-internal/errors/types.d.ts +29 -0
  95. package/dist/lib-internal/errors/types.d.ts.map +1 -0
  96. package/dist/lib-internal/errors/types.js +18 -0
  97. package/dist/lib-internal/errors/types.js.map +1 -0
  98. package/dist/lib-internal/http/HttpClient.d.ts +24 -0
  99. package/dist/lib-internal/http/HttpClient.d.ts.map +1 -0
  100. package/dist/lib-internal/http/HttpClient.js +103 -0
  101. package/dist/lib-internal/http/HttpClient.js.map +1 -0
  102. package/dist/lib-internal/http/types.d.ts +12 -0
  103. package/dist/lib-internal/http/types.d.ts.map +1 -0
  104. package/{src/lib-internal/http/types.ts → dist/lib-internal/http/types.js} +2 -3
  105. package/dist/lib-internal/http/types.js.map +1 -0
  106. package/dist/lib-internal/routes/AnalyticsRoutes.d.ts +4 -0
  107. package/dist/lib-internal/routes/AnalyticsRoutes.d.ts.map +1 -0
  108. package/dist/lib-internal/routes/AnalyticsRoutes.js +4 -0
  109. package/dist/lib-internal/routes/AnalyticsRoutes.js.map +1 -0
  110. package/dist/lib-internal/routes/AppRoutes.d.ts +10 -0
  111. package/dist/lib-internal/routes/AppRoutes.d.ts.map +1 -0
  112. package/dist/lib-internal/routes/AppRoutes.js +6 -0
  113. package/dist/lib-internal/routes/AppRoutes.js.map +1 -0
  114. package/dist/lib-internal/routes/AuthRoutes.d.ts +4 -0
  115. package/dist/lib-internal/routes/AuthRoutes.d.ts.map +1 -0
  116. package/{src/lib-internal/routes/AuthRoutes.ts → dist/lib-internal/routes/AuthRoutes.js} +2 -1
  117. package/dist/lib-internal/routes/AuthRoutes.js.map +1 -0
  118. package/dist/lib-internal/routes/DatabaseRoutes.d.ts +11 -0
  119. package/dist/lib-internal/routes/DatabaseRoutes.d.ts.map +1 -0
  120. package/dist/lib-internal/routes/DatabaseRoutes.js +7 -0
  121. package/dist/lib-internal/routes/DatabaseRoutes.js.map +1 -0
  122. package/dist/lib-internal/routes/FunctionRoutes.d.ts +4 -0
  123. package/dist/lib-internal/routes/FunctionRoutes.d.ts.map +1 -0
  124. package/dist/lib-internal/routes/FunctionRoutes.js +4 -0
  125. package/dist/lib-internal/routes/FunctionRoutes.js.map +1 -0
  126. package/dist/lib-internal/routes/PolicyRoutes.d.ts +5 -0
  127. package/dist/lib-internal/routes/PolicyRoutes.d.ts.map +1 -0
  128. package/dist/lib-internal/routes/PolicyRoutes.js +5 -0
  129. package/dist/lib-internal/routes/PolicyRoutes.js.map +1 -0
  130. package/dist/lib-internal/routes/SecretsRoutes.d.ts +6 -0
  131. package/dist/lib-internal/routes/SecretsRoutes.d.ts.map +1 -0
  132. package/dist/lib-internal/routes/SecretsRoutes.js +6 -0
  133. package/dist/lib-internal/routes/SecretsRoutes.js.map +1 -0
  134. package/dist/lib-internal/routes/SettingsRoutes.d.ts +5 -0
  135. package/dist/lib-internal/routes/SettingsRoutes.d.ts.map +1 -0
  136. package/{src/lib-internal/routes/SettingsRoutes.ts → dist/lib-internal/routes/SettingsRoutes.js} +2 -1
  137. package/dist/lib-internal/routes/SettingsRoutes.js.map +1 -0
  138. package/dist/lib-internal/routes/StorageRoutes.d.ts +11 -0
  139. package/dist/lib-internal/routes/StorageRoutes.d.ts.map +1 -0
  140. package/dist/lib-internal/routes/StorageRoutes.js +8 -0
  141. package/dist/lib-internal/routes/StorageRoutes.js.map +1 -0
  142. package/dist/lib-internal/routes/UserRoutes.d.ts +13 -0
  143. package/dist/lib-internal/routes/UserRoutes.d.ts.map +1 -0
  144. package/dist/lib-internal/routes/UserRoutes.js +13 -0
  145. package/dist/lib-internal/routes/UserRoutes.js.map +1 -0
  146. package/dist/lib-internal/routes/index.d.ts +2 -0
  147. package/dist/lib-internal/routes/index.d.ts.map +1 -0
  148. package/dist/lib-internal/routes/index.js +2 -0
  149. package/dist/lib-internal/routes/index.js.map +1 -0
  150. package/dist/lib-internal/token/TokenClient.d.ts +38 -0
  151. package/dist/lib-internal/token/TokenClient.d.ts.map +1 -0
  152. package/{src/lib-internal/token/TokenClient.ts → dist/lib-internal/token/TokenClient.js} +44 -59
  153. package/dist/lib-internal/token/TokenClient.js.map +1 -0
  154. package/dist/lib-internal/token/types.d.ts +2 -0
  155. package/dist/lib-internal/token/types.d.ts.map +1 -0
  156. package/dist/lib-internal/token/types.js +2 -0
  157. package/dist/lib-internal/token/types.js.map +1 -0
  158. package/dist/types.d.ts +74 -0
  159. package/dist/types.d.ts.map +1 -0
  160. package/dist/types.js +2 -0
  161. package/dist/types.js.map +1 -0
  162. package/dist/utils/enums.d.ts +31 -0
  163. package/dist/utils/enums.d.ts.map +1 -0
  164. package/dist/utils/enums.js +26 -0
  165. package/dist/utils/enums.js.map +1 -0
  166. package/dist/utils/utils.d.ts +6 -0
  167. package/dist/utils/utils.d.ts.map +1 -0
  168. package/dist/utils/utils.js +38 -0
  169. package/dist/utils/utils.js.map +1 -0
  170. package/package.json +11 -2
  171. package/.github/worflows/publish.yml +0 -57
  172. package/.github/workflows/publish.yml +0 -58
  173. package/.kiro/settings/lsp.json +0 -198
  174. package/MODULE_NAMING_CHANGES.md +0 -81
  175. package/PARAMETER_NAMING_CHANGES.md +0 -106
  176. package/USAGE_EXAMPLE.md +0 -86
  177. package/src/index.ts +0 -50
  178. package/src/lib/analytics/AnalyticsClient.ts +0 -24
  179. package/src/lib/analytics/types.ts +0 -8
  180. package/src/lib/app/AppClient.ts +0 -54
  181. package/src/lib/app/types.ts +0 -50
  182. package/src/lib/auth/types.ts +0 -123
  183. package/src/lib/database/DatabaseClient.ts +0 -244
  184. package/src/lib/database/types.ts +0 -90
  185. package/src/lib/functions/FunctionsClient.ts +0 -27
  186. package/src/lib/functions/types.ts +0 -27
  187. package/src/lib/policy/types.ts +0 -39
  188. package/src/lib/secrets/SecretsClient.ts +0 -75
  189. package/src/lib/secrets/types.ts +0 -59
  190. package/src/lib/settings/SettingsClient.ts +0 -22
  191. package/src/lib/settings/types.ts +0 -9
  192. package/src/lib/storage/StorageClient.ts +0 -131
  193. package/src/lib/storage/types.ts +0 -86
  194. package/src/lib/users/UserClient.ts +0 -63
  195. package/src/lib/users/types.ts +0 -123
  196. package/src/lib-internal/errors/ErrorClient.ts +0 -114
  197. package/src/lib-internal/errors/index.ts +0 -3
  198. package/src/lib-internal/errors/types.ts +0 -29
  199. package/src/lib-internal/http/HttpClient.ts +0 -117
  200. package/src/lib-internal/routes/AnalyticsRoutes.ts +0 -3
  201. package/src/lib-internal/routes/AppRoutes.ts +0 -9
  202. package/src/lib-internal/routes/DatabaseRoutes.ts +0 -10
  203. package/src/lib-internal/routes/FunctionRoutes.ts +0 -3
  204. package/src/lib-internal/routes/PolicyRoutes.ts +0 -4
  205. package/src/lib-internal/routes/SecretsRoutes.ts +0 -5
  206. package/src/lib-internal/routes/StorageRoutes.ts +0 -15
  207. package/src/lib-internal/routes/UserRoutes.ts +0 -12
  208. package/src/lib-internal/routes/index.ts +0 -0
  209. package/src/lib-internal/token/types.ts +0 -0
  210. package/src/types.ts +0 -98
  211. package/src/utils/enums.ts +0 -24
  212. package/src/utils/utils.ts +0 -37
  213. package/tests/fixtures/mockClient.ts +0 -19
  214. package/tests/mocks/db.json +0 -1
  215. package/tests/unit/analytics/AnalyticsClient.test.ts +0 -84
  216. package/tests/unit/app/AppClient.test.ts +0 -114
  217. package/tests/unit/auth/AuthClient.test.ts +0 -91
  218. package/tests/unit/client/Client.test.ts +0 -87
  219. package/tests/unit/database/DatabaseClient.test.ts +0 -565
  220. package/tests/unit/edge-cases/robustness.test.ts +0 -258
  221. package/tests/unit/errors/errors.test.ts +0 -236
  222. package/tests/unit/functions/FunctionsClient.test.ts +0 -99
  223. package/tests/unit/policy/PolicyClient.test.ts +0 -180
  224. package/tests/unit/secrets/SecretsClient.test.ts +0 -146
  225. package/tests/unit/settings/SettingsClient.test.ts +0 -50
  226. package/tests/unit/storage/StorageClient.test.ts +0 -252
  227. package/tests/unit/users/UserClient.test.ts +0 -150
  228. package/tsconfig.json +0 -44
  229. package/vitest.config.ts +0 -7
@@ -0,0 +1,20 @@
1
+ import { HttpMethod } from "../../lib-internal/http/types.js";
2
+ function isPlainObject(x) {
3
+ return typeof x === 'object' && x !== null && !Array.isArray(x);
4
+ }
5
+ function isBackendFilterLogicalNode(x) {
6
+ if (!isPlainObject(x))
7
+ return false;
8
+ if (x.operator !== 'and' && x.operator !== 'or')
9
+ return false;
10
+ if (!Array.isArray(x.value))
11
+ return false;
12
+ if ('field' in x)
13
+ return false;
14
+ return true;
15
+ }
16
+ /** Runtime check for the single-arg `filters(tree)` overload. */
17
+ export function isBackendFilterTreeRoot(x) {
18
+ return Array.isArray(x) && x.every(isBackendFilterLogicalNode);
19
+ }
20
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/database/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AA4I7D,SAAS,aAAa,CAAC,CAAU;IAC7B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AACnE,CAAC;AAED,SAAS,0BAA0B,CAAC,CAAU;IAC1C,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;QAAE,OAAO,KAAK,CAAA;IACnC,IAAI,CAAC,CAAC,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,QAAQ,KAAK,IAAI;QAAE,OAAO,KAAK,CAAA;IAC7D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACzC,IAAI,OAAO,IAAI,CAAC;QAAE,OAAO,KAAK,CAAA;IAC9B,OAAO,IAAI,CAAA;AACf,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,uBAAuB,CAAC,CAAU;IAC9C,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAA;AAClE,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { Client } from "../../client.js";
2
+ import type { FunctionRequest, FunctionResponse } from "./types.js";
3
+ export declare class Functions {
4
+ private client;
5
+ private config;
6
+ constructor(client: Client);
7
+ execute<T = unknown>(functionSlug: string, options?: FunctionRequest): Promise<FunctionResponse<T>>;
8
+ }
9
+ //# sourceMappingURL=FunctionsClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FunctionsClient.d.ts","sourceRoot":"","sources":["../../../src/lib/functions/FunctionsClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGpE,qBAAa,SAAS;IAClB,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,MAAM,CAAc;gBAEhB,MAAM,EAAE,MAAM;IAKpB,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;CAYhH"}
@@ -0,0 +1,20 @@
1
+ import { FunctionRoutes } from "../../lib-internal/routes/FunctionRoutes.js";
2
+ export class Functions {
3
+ client;
4
+ config;
5
+ constructor(client) {
6
+ this.client = client;
7
+ this.config = this.client.getConfig();
8
+ }
9
+ async execute(functionSlug, options = {}) {
10
+ const url = `${FunctionRoutes.baseUrl(this.config.appSlug, functionSlug)}/execute/`;
11
+ const body = {
12
+ async: options.async ?? false,
13
+ params: {
14
+ ...options.params
15
+ }
16
+ };
17
+ return await this.client.httpClient.post(url, body);
18
+ }
19
+ }
20
+ //# sourceMappingURL=FunctionsClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FunctionsClient.js","sourceRoot":"","sources":["../../../src/lib/functions/FunctionsClient.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAE7E,MAAM,OAAO,SAAS;IACV,MAAM,CAAQ;IACd,MAAM,CAAc;IAE5B,YAAY,MAAc;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAA;IACzC,CAAC;IAED,KAAK,CAAC,OAAO,CAAc,YAAoB,EAAE,UAA2B,EAAE;QAC1E,MAAM,GAAG,GAAG,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,WAAW,CAAA;QAEnF,MAAM,IAAI,GAAG;YACT,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK;YAC7B,MAAM,EAAE;gBACJ,GAAG,OAAO,CAAC,MAAM;aACpB;SACJ,CAAA;QAED,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAsB,GAAG,EAAE,IAAI,CAAC,CAAA;IAC5E,CAAC;CACJ"}
@@ -0,0 +1,25 @@
1
+ export interface FunctionRequest {
2
+ async?: boolean;
3
+ params?: Record<string, unknown>;
4
+ }
5
+ export interface FunctionInvocation {
6
+ id: number;
7
+ celery_task_id: string;
8
+ function: number;
9
+ function_name: string;
10
+ function_slug: string;
11
+ user_id: string | null;
12
+ user_username: string;
13
+ user_email: string;
14
+ task_status: string;
15
+ trigger_type: string;
16
+ created_at: string;
17
+ updated_at?: string;
18
+ }
19
+ export interface FunctionResponse<T = unknown> {
20
+ status: "success" | "error";
21
+ message: string;
22
+ data: T | null;
23
+ invocation: FunctionInvocation;
24
+ }
25
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/functions/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACnC;AAED,MAAM,WAAW,kBAAkB;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,cAAc,EAAE,MAAM,CAAA;IACtB,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACtB;AAGD,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,OAAO;IACzC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAA;IAC3B,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,CAAC,GAAG,IAAI,CAAA;IACd,UAAU,EAAE,kBAAkB,CAAA;CACjC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/functions/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,25 @@
1
+ import type { Client } from "../../client.js";
2
+ import type { Resources, Resource, PolicyCheckBatchResult, GetAllowedActionsOptions } from "./types.js";
3
+ export declare class Policy {
4
+ private client;
5
+ private config;
6
+ constructor(client: Client);
7
+ checkResource(resources: Resources): Promise<PolicyCheckBatchResult>;
8
+ /**
9
+ * Get list of allowed actions for a specific resource.
10
+ *
11
+ * @param resource - Resource with kind and id
12
+ * @param options - Optional actions list, principal override, and aux data
13
+ * @returns List of action names that are allowed
14
+ *
15
+ * @example
16
+ * ```typescript
17
+ * const allowed = await client.policy.getAllowedActions(
18
+ * { kind: 'datatable:users', id: '123', attr: {} }
19
+ * )
20
+ * // Returns: ['read', 'write', 'update'] // 'delete' not allowed
21
+ * ```
22
+ */
23
+ getAllowedActions(resource: Resource, options?: GetAllowedActionsOptions): Promise<string[]>;
24
+ }
25
+ //# sourceMappingURL=PolicyClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PolicyClient.d.ts","sourceRoot":"","sources":["../../../src/lib/policy/PolicyClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAG7C,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAA;AAEvG,qBAAa,MAAM;IACf,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,MAAM,CAAc;gBAChB,MAAM,EAAE,MAAM;IAKpB,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAgB1E;;;;;;;;;;;;;;OAcG;IACG,iBAAiB,CACnB,QAAQ,EAAE,QAAQ,EAClB,OAAO,GAAE,wBAA6B,GACvC,OAAO,CAAC,MAAM,EAAE,CAAC;CA+BvB"}
@@ -1,18 +1,13 @@
1
- import type { Client } from "../../client.js"
2
- import { PolicyRoutes } from "../../lib-internal/routes/PolicyRoutes.js"
3
- import type { TaruviConfig } from "../../types.js"
4
- import type { Resources, Resource, PolicyCheckBatchResult, GetAllowedActionsOptions } from "./types.js"
5
-
1
+ import { PolicyRoutes } from "../../lib-internal/routes/PolicyRoutes.js";
6
2
  export class Policy {
7
- private client: Client
8
- private config: TaruviConfig
9
- constructor(client: Client) {
10
- this.client = client
11
- this.config = this.client.getConfig()
3
+ client;
4
+ config;
5
+ constructor(client) {
6
+ this.client = client;
7
+ this.config = this.client.getConfig();
12
8
  }
13
-
14
- async checkResource(resources: Resources): Promise<PolicyCheckBatchResult> {
15
- const url = PolicyRoutes.baseUrl(this.config.appSlug) + PolicyRoutes.checkResource
9
+ async checkResource(resources) {
10
+ const url = PolicyRoutes.baseUrl(this.config.appSlug) + PolicyRoutes.checkResource;
16
11
  const body = {
17
12
  resources: resources.map(r => ({
18
13
  resource: {
@@ -22,11 +17,9 @@ export class Policy {
22
17
  },
23
18
  actions: r.actions
24
19
  }))
25
- }
26
-
27
- return await this.client.httpClient.post<PolicyCheckBatchResult>(url, body)
20
+ };
21
+ return await this.client.httpClient.post(url, body);
28
22
  }
29
-
30
23
  /**
31
24
  * Get list of allowed actions for a specific resource.
32
25
  *
@@ -42,38 +35,31 @@ export class Policy {
42
35
  * // Returns: ['read', 'write', 'update'] // 'delete' not allowed
43
36
  * ```
44
37
  */
45
- async getAllowedActions(
46
- resource: Resource,
47
- options: GetAllowedActionsOptions = {}
48
- ): Promise<string[]> {
49
- const { actions = ['read', 'write', 'create', 'update', 'delete'], principal, auxData } = options
50
-
51
- const url = PolicyRoutes.baseUrl(this.config.appSlug) + PolicyRoutes.checkResource
52
- const body: Record<string, unknown> = {
38
+ async getAllowedActions(resource, options = {}) {
39
+ const { actions = ['read', 'write', 'create', 'update', 'delete'], principal, auxData } = options;
40
+ const url = PolicyRoutes.baseUrl(this.config.appSlug) + PolicyRoutes.checkResource;
41
+ const body = {
53
42
  resources: [{
54
- resource: resource,
55
- actions: actions
56
- }]
57
- }
58
-
43
+ resource: resource,
44
+ actions: actions
45
+ }]
46
+ };
59
47
  if (principal) {
60
- body.principal = principal
48
+ body.principal = principal;
61
49
  }
62
50
  if (auxData) {
63
- body.auxData = auxData
51
+ body.auxData = auxData;
64
52
  }
65
-
66
- const result = await this.client.httpClient.post<PolicyCheckBatchResult>(url, body)
67
-
53
+ const result = await this.client.httpClient.post(url, body);
68
54
  // Extract allowed actions
69
55
  if (result.results && result.results.length > 0) {
70
- const firstResult = result.results[0]
71
- const actionResults = firstResult?.actions || {}
56
+ const firstResult = result.results[0];
57
+ const actionResults = firstResult?.actions || {};
72
58
  return Object.entries(actionResults)
73
59
  .filter(([_, effect]) => effect === 'EFFECT_ALLOW')
74
- .map(([action, _]) => action)
60
+ .map(([action, _]) => action);
75
61
  }
76
-
77
- return []
62
+ return [];
78
63
  }
79
64
  }
65
+ //# sourceMappingURL=PolicyClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PolicyClient.js","sourceRoot":"","sources":["../../../src/lib/policy/PolicyClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAA;AAIxE,MAAM,OAAO,MAAM;IACP,MAAM,CAAQ;IACd,MAAM,CAAc;IAC5B,YAAY,MAAc;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAA;IACzC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAoB;QACpC,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,aAAa,CAAA;QAClF,MAAM,IAAI,GAAG;YACT,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC3B,QAAQ,EAAE;oBACN,IAAI,EAAE,CAAC,CAAC,QAAQ;oBAChB,EAAE,EAAE,CAAC,CAAC,QAAQ;oBACd,IAAI,EAAE,CAAC,CAAC,UAAU,IAAI,EAAE;iBAC3B;gBACD,OAAO,EAAE,CAAC,CAAC,OAAO;aACrB,CAAC,CAAC;SACN,CAAA;QAED,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAyB,GAAG,EAAE,IAAI,CAAC,CAAA;IAC/E,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,iBAAiB,CACnB,QAAkB,EAClB,UAAoC,EAAE;QAEtC,MAAM,EAAE,OAAO,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;QAEjG,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,aAAa,CAAA;QAClF,MAAM,IAAI,GAA4B;YAClC,SAAS,EAAE,CAAC;oBACR,QAAQ,EAAE,QAAQ;oBAClB,OAAO,EAAE,OAAO;iBACnB,CAAC;SACL,CAAA;QAED,IAAI,SAAS,EAAE,CAAC;YACZ,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC9B,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YACV,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QAC1B,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAyB,GAAG,EAAE,IAAI,CAAC,CAAA;QAEnF,0BAA0B;QAC1B,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;YACrC,MAAM,aAAa,GAAG,WAAW,EAAE,OAAO,IAAI,EAAE,CAAA;YAChD,OAAO,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC;iBAC/B,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,KAAK,cAAc,CAAC;iBAClD,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAA;QACrC,CAAC;QAED,OAAO,EAAE,CAAA;IACb,CAAC;CACJ"}
@@ -0,0 +1,32 @@
1
+ import type { TaruviResponse } from "../../types.js";
2
+ export interface Principal {
3
+ id: string;
4
+ roles: string[];
5
+ attr: Record<string, unknown>;
6
+ }
7
+ export type Resource = {
8
+ kind: string;
9
+ id: string;
10
+ attr: Record<string, unknown>;
11
+ };
12
+ export type Resources = {
13
+ resource: string;
14
+ recordId: string;
15
+ attributes: Record<string, unknown>;
16
+ actions: string[];
17
+ }[];
18
+ export interface PolicyCheckResult {
19
+ resource: Resource;
20
+ actions: Record<string, string>;
21
+ }
22
+ export interface PolicyCheckBatchResult {
23
+ requestId: string;
24
+ results: PolicyCheckResult[];
25
+ }
26
+ export type GetAllowedActionsOptions = {
27
+ actions?: string[];
28
+ principal?: Principal;
29
+ auxData?: Record<string, unknown>;
30
+ };
31
+ export type ResourceCheckResponse = TaruviResponse<PolicyCheckBatchResult>;
32
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/policy/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,MAAM,WAAW,SAAS;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAChC;AAED,MAAM,MAAM,QAAQ,GAAG;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,SAAS,GAAG;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,OAAO,EAAE,MAAM,EAAE,CAAA;CACpB,EAAE,CAAA;AAEH,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,EAAE,QAAQ,CAAA;IAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAClC;AAED,MAAM,WAAW,sBAAsB;IACnC,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,iBAAiB,EAAE,CAAA;CAC/B;AAED,MAAM,MAAM,wBAAwB,GAAG;IACnC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC,CAAA;AAGD,MAAM,MAAM,qBAAqB,GAAG,cAAc,CAAC,sBAAsB,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/policy/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,29 @@
1
+ import type { Client } from "../../client.js";
2
+ import type { SecretsUrlParams, GetSecretOptions, GetSecretsOptions, SecretsBatchResponse, SecretsBatchMetadataResponse } from "./types.js";
3
+ import { HttpMethod } from "../../lib-internal/http/types.js";
4
+ export declare class Secrets {
5
+ private client;
6
+ private urlParams;
7
+ private body;
8
+ private method;
9
+ constructor(client: Client, urlParams?: SecretsUrlParams, body?: object, method?: HttpMethod);
10
+ /**
11
+ * Get a specific secret by key.
12
+ *
13
+ * @param key - Secret key/name
14
+ * @param options - Optional app context for 2-tier inheritance and tag validation
15
+ * @returns Secrets instance for chaining with execute()
16
+ */
17
+ get(key: string, options?: GetSecretOptions): Secrets;
18
+ /**
19
+ * List multiple secrets by keys using backend batch endpoint.
20
+ * More efficient than making multiple individual requests - uses a single API call.
21
+ *
22
+ * @param keys - List of secret keys to retrieve
23
+ * @param options - Optional app context and metadata flag
24
+ * @returns Promise with dict mapping keys to values (or full objects if includeMetadata=true)
25
+ */
26
+ list(keys: string[], options?: GetSecretsOptions): Promise<SecretsBatchResponse | SecretsBatchMetadataResponse>;
27
+ execute<T = unknown>(): Promise<T>;
28
+ }
29
+ //# sourceMappingURL=SecretsClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecretsClient.d.ts","sourceRoot":"","sources":["../../../src/lib/secrets/SecretsClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAC5I,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAI9D,qBAAa,OAAO;IAChB,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,IAAI,CAAoB;IAChC,OAAO,CAAC,MAAM,CAAY;gBAEd,MAAM,EAAE,MAAM,EAAE,SAAS,GAAE,gBAAqB,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,GAAE,UAA2B;IAOhH;;;;;;OAMG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB,GAAG,OAAO;IAczD;;;;;;;OAOG;IACG,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,oBAAoB,GAAG,4BAA4B,CAAC;IAcnH,OAAO,CAAC,CAAC,GAAG,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC;CAY3C"}
@@ -0,0 +1,66 @@
1
+ import { HttpMethod } from "../../lib-internal/http/types.js";
2
+ import { SecretsRoutes } from "../../lib-internal/routes/SecretsRoutes.js";
3
+ import { buildQueryString } from "../../utils/utils.js";
4
+ export class Secrets {
5
+ client;
6
+ urlParams;
7
+ body;
8
+ method;
9
+ constructor(client, urlParams = {}, body, method = HttpMethod.GET) {
10
+ this.client = client;
11
+ this.urlParams = urlParams;
12
+ this.body = body;
13
+ this.method = method;
14
+ }
15
+ /**
16
+ * Get a specific secret by key.
17
+ *
18
+ * @param key - Secret key/name
19
+ * @param options - Optional app context for 2-tier inheritance and tag validation
20
+ * @returns Secrets instance for chaining with execute()
21
+ */
22
+ get(key, options = {}) {
23
+ if (!key || typeof key !== 'string') {
24
+ throw new Error('Secret key is required and must be a string.');
25
+ }
26
+ const path = SecretsRoutes.get(key);
27
+ const queryParams = {};
28
+ if (options.app)
29
+ queryParams.app = options.app;
30
+ if (options.tags && options.tags.length > 0)
31
+ queryParams.tags = options.tags.join(',');
32
+ return new Secrets(this.client, { ...this.urlParams, path, queryParams }, undefined, HttpMethod.GET);
33
+ }
34
+ /**
35
+ * List multiple secrets by keys using backend batch endpoint.
36
+ * More efficient than making multiple individual requests - uses a single API call.
37
+ *
38
+ * @param keys - List of secret keys to retrieve
39
+ * @param options - Optional app context and metadata flag
40
+ * @returns Promise with dict mapping keys to values (or full objects if includeMetadata=true)
41
+ */
42
+ async list(keys, options = {}) {
43
+ const queryParams = {
44
+ keys: keys.join(',')
45
+ };
46
+ if (options.app)
47
+ queryParams.app = options.app;
48
+ if (options.includeMetadata)
49
+ queryParams.include_metadata = options.includeMetadata;
50
+ const queryString = buildQueryString(queryParams);
51
+ const url = SecretsRoutes.baseUrl + queryString;
52
+ return await this.client.httpClient.get(url);
53
+ }
54
+ async execute() {
55
+ const queryString = buildQueryString(this.urlParams.queryParams);
56
+ const url = (this.urlParams.path ?? SecretsRoutes.baseUrl) + queryString;
57
+ switch (this.method) {
58
+ case HttpMethod.PUT:
59
+ return await this.client.httpClient.put(url, this.body);
60
+ case HttpMethod.GET:
61
+ default:
62
+ return await this.client.httpClient.get(url);
63
+ }
64
+ }
65
+ }
66
+ //# sourceMappingURL=SecretsClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecretsClient.js","sourceRoot":"","sources":["../../../src/lib/secrets/SecretsClient.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,MAAM,OAAO,OAAO;IACR,MAAM,CAAQ;IACd,SAAS,CAAkB;IAC3B,IAAI,CAAoB;IACxB,MAAM,CAAY;IAE1B,YAAY,MAAc,EAAE,YAA8B,EAAE,EAAE,IAAa,EAAE,SAAqB,UAAU,CAAC,GAAG;QAC5G,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACxB,CAAC;IAED;;;;;;OAMG;IACH,GAAG,CAAC,GAAW,EAAE,UAA4B,EAAE;QAC3C,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;QACnE,CAAC;QAED,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACnC,MAAM,WAAW,GAA4B,EAAE,CAAA;QAE/C,IAAI,OAAO,CAAC,GAAG;YAAE,WAAW,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAA;QAC9C,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,WAAW,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAEtF,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,GAAG,CAAC,CAAA;IACxG,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,IAAI,CAAC,IAAc,EAAE,UAA6B,EAAE;QACtD,MAAM,WAAW,GAA4B;YACzC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;SACvB,CAAA;QAED,IAAI,OAAO,CAAC,GAAG;YAAE,WAAW,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAA;QAC9C,IAAI,OAAO,CAAC,eAAe;YAAE,WAAW,CAAC,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAA;QAEnF,MAAM,WAAW,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAA;QACjD,MAAM,GAAG,GAAG,aAAa,CAAC,OAAO,GAAG,WAAW,CAAA;QAE/C,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAsD,GAAG,CAAC,CAAA;IACrG,CAAC;IAED,KAAK,CAAC,OAAO;QACT,MAAM,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;QAChE,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,aAAa,CAAC,OAAO,CAAC,GAAG,WAAW,CAAA;QAExE,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;YAClB,KAAK,UAAU,CAAC,GAAG;gBACf,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAI,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;YAC9D,KAAK,UAAU,CAAC,GAAG,CAAC;YACpB;gBACI,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAI,GAAG,CAAC,CAAA;QACvD,CAAC;IACL,CAAC;CACJ"}
@@ -0,0 +1,43 @@
1
+ import type { TaruviResponse } from "../../types.js";
2
+ export interface SecretsUrlParams {
3
+ path?: string;
4
+ queryParams?: Record<string, unknown>;
5
+ }
6
+ export interface SecretCreateRequest {
7
+ key: string;
8
+ value: string | Record<string, unknown>;
9
+ secret_type: string;
10
+ tags?: string[];
11
+ app?: string;
12
+ }
13
+ export interface SecretUpdateRequest {
14
+ value?: string | Record<string, unknown>;
15
+ secret_type?: string;
16
+ tags?: string[];
17
+ app?: string;
18
+ }
19
+ export interface GetSecretOptions {
20
+ app?: string;
21
+ tags?: string[];
22
+ }
23
+ export interface GetSecretsOptions {
24
+ app?: string;
25
+ includeMetadata?: boolean;
26
+ }
27
+ export interface SecretData {
28
+ key: string;
29
+ value: string | Record<string, unknown>;
30
+ tags?: string[];
31
+ secret_type?: string;
32
+ created_at?: string;
33
+ updated_at?: string;
34
+ }
35
+ export type SecretResponse = TaruviResponse<SecretData>;
36
+ export type SecretsListResponse = TaruviResponse<SecretData[]>;
37
+ export type SecretsBatchResponse = TaruviResponse<Record<string, string>>;
38
+ export type SecretsBatchMetadataResponse = TaruviResponse<Record<string, {
39
+ value: string;
40
+ tags: string[];
41
+ secret_type: string;
42
+ }>>;
43
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/secrets/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAGpD,MAAM,WAAW,gBAAgB;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACxC;AAGD,MAAM,WAAW,mBAAmB;IAChC,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACvC,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,GAAG,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,mBAAmB;IAChC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACxC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,GAAG,CAAC,EAAE,MAAM,CAAA;CACf;AAGD,MAAM,WAAW,gBAAgB;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB;AAGD,MAAM,WAAW,iBAAiB;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,eAAe,CAAC,EAAE,OAAO,CAAA;CAC5B;AAGD,MAAM,WAAW,UAAU;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACvC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,MAAM,CAAA;CACtB;AAGD,MAAM,MAAM,cAAc,GAAG,cAAc,CAAC,UAAU,CAAC,CAAA;AACvD,MAAM,MAAM,mBAAmB,GAAG,cAAc,CAAC,UAAU,EAAE,CAAC,CAAA;AAG9D,MAAM,MAAM,oBAAoB,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;AAGzE,MAAM,MAAM,4BAA4B,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE;IACrE,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,WAAW,EAAE,MAAM,CAAA;CACtB,CAAC,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/secrets/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import type { Client } from "../../client.js";
2
+ export declare class Settings {
3
+ private client;
4
+ constructor(client: Client);
5
+ get<T = unknown>(): Promise<T>;
6
+ getUserAttributes<T = unknown>(): Promise<T>;
7
+ updateUserAttributes<T = unknown>(schema: Record<string, unknown>): Promise<T>;
8
+ }
9
+ //# sourceMappingURL=SettingsClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SettingsClient.d.ts","sourceRoot":"","sources":["../../../src/lib/settings/SettingsClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAG9C,qBAAa,QAAQ;IACjB,OAAO,CAAC,MAAM,CAAQ;gBAEV,MAAM,EAAE,MAAM;IAIpB,GAAG,CAAC,CAAC,GAAG,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC;IAI9B,iBAAiB,CAAC,CAAC,GAAG,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC;IAI5C,oBAAoB,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAGvF"}
@@ -0,0 +1,17 @@
1
+ import { SettingsRoutes } from "../../lib-internal/routes/SettingsRoutes.js";
2
+ export class Settings {
3
+ client;
4
+ constructor(client) {
5
+ this.client = client;
6
+ }
7
+ async get() {
8
+ return await this.client.httpClient.get(SettingsRoutes.metadata);
9
+ }
10
+ async getUserAttributes() {
11
+ return await this.client.httpClient.get(SettingsRoutes.userAttributes);
12
+ }
13
+ async updateUserAttributes(schema) {
14
+ return await this.client.httpClient.post(SettingsRoutes.userAttributes, schema);
15
+ }
16
+ }
17
+ //# sourceMappingURL=SettingsClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SettingsClient.js","sourceRoot":"","sources":["../../../src/lib/settings/SettingsClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAE7E,MAAM,OAAO,QAAQ;IACT,MAAM,CAAQ;IAEtB,YAAY,MAAc;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACxB,CAAC;IAED,KAAK,CAAC,GAAG;QACL,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAI,cAAc,CAAC,QAAQ,CAAC,CAAA;IACvE,CAAC;IAED,KAAK,CAAC,iBAAiB;QACnB,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAI,cAAc,CAAC,cAAc,CAAC,CAAA;IAC7E,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAc,MAA+B;QACnE,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAI,cAAc,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;IACtF,CAAC;CACJ"}
@@ -0,0 +1,6 @@
1
+ import type { TaruviResponse } from "../../types.js";
2
+ export interface SiteSettingsData {
3
+ [key: string]: unknown;
4
+ }
5
+ export type SettingsResponse = TaruviResponse<SiteSettingsData>;
6
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/settings/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAGpD,MAAM,WAAW,gBAAgB;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACzB;AAGD,MAAM,MAAM,gBAAgB,GAAG,cAAc,CAAC,gBAAgB,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/settings/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,38 @@
1
+ import type { Client } from "../../client.js";
2
+ import type { BucketUrlParams, StorageResponse, StorageListResponse, StorageUploadBatchResponse, StorageDeleteBatchResponse } from "./types.js";
3
+ import type { StorageFilters } from "../../types.js";
4
+ import { HttpMethod } from "../../lib-internal/http/types.js";
5
+ export declare class Storage {
6
+ private client;
7
+ private config;
8
+ private urlParams;
9
+ private operation;
10
+ private body;
11
+ private filters;
12
+ private queryParams;
13
+ constructor(client: Client, urlParams?: BucketUrlParams, operation?: HttpMethod | undefined, body?: object, filters?: StorageFilters, queryParams?: Record<string, string>);
14
+ from(bucket: string): Storage;
15
+ getUrl(path: string): string;
16
+ filter(filters: StorageFilters): Storage;
17
+ delete(paths: string[]): Storage;
18
+ update(path: string, body: object): Storage;
19
+ download(path: string): Storage;
20
+ metadata(path: string): Storage;
21
+ upload(filesData: {
22
+ files: File[];
23
+ metadatas: object[];
24
+ paths: string[];
25
+ }): Storage;
26
+ private buildRoute;
27
+ /**
28
+ * Execute the storage operation.
29
+ * Returns different types based on the operation:
30
+ * - List files: StorageListResponse[]
31
+ * - Download: Blob
32
+ * - Upload: StorageUploadBatchResponse
33
+ * - Delete: StorageDeleteBatchResponse
34
+ * - Update: StorageResponse
35
+ */
36
+ execute<T = StorageListResponse[] | StorageResponse | StorageUploadBatchResponse | StorageDeleteBatchResponse | Blob>(): Promise<T>;
37
+ }
38
+ //# sourceMappingURL=StorageClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StorageClient.d.ts","sourceRoot":"","sources":["../../../src/lib/storage/StorageClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EACR,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,0BAA0B,EAC1B,0BAA0B,EAC7B,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAgB,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAG9D,qBAAa,OAAO;IAEhB,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,SAAS,CAAwB;IACzC,OAAO,CAAC,IAAI,CAAoB;IAChC,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,WAAW,CAAoC;gBAG3C,MAAM,EAAE,MAAM,EAAE,SAAS,GAAE,eAAuC,EAAE,SAAS,CAAC,EAAE,UAAU,GAAG,SAAS,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAWjM,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAI7B,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAK5B,MAAM,CAAC,OAAO,EAAE,cAAc;IAI9B,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO;IAMhC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAI3C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI/B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI/B,MAAM,CAAC,SAAS,EAAE;QAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO;IAUnF,OAAO,CAAC,UAAU;IA6BlB;;;;;;;;OAQG;IACG,OAAO,CAAC,CAAC,GAAG,mBAAmB,EAAE,GAAG,eAAe,GAAG,0BAA0B,GAAG,0BAA0B,GAAG,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC;CAqB5I"}