@taruvi/sdk 1.5.0-beta.2 → 1.5.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/dist/client.d.ts +27 -0
  2. package/dist/client.d.ts.map +1 -0
  3. package/dist/client.js +70 -0
  4. package/dist/client.js.map +1 -0
  5. package/dist/index.d.ts +28 -0
  6. package/dist/index.d.ts.map +1 -0
  7. package/dist/index.js +20 -0
  8. package/dist/index.js.map +1 -0
  9. package/dist/lib/analytics/AnalyticsClient.d.ts +9 -0
  10. package/dist/lib/analytics/AnalyticsClient.d.ts.map +1 -0
  11. package/dist/lib/analytics/AnalyticsClient.js +17 -0
  12. package/dist/lib/analytics/AnalyticsClient.js.map +1 -0
  13. package/dist/lib/analytics/types.d.ts +6 -0
  14. package/dist/lib/analytics/types.d.ts.map +1 -0
  15. package/dist/lib/analytics/types.js +2 -0
  16. package/dist/lib/analytics/types.js.map +1 -0
  17. package/dist/lib/app/AppClient.d.ts +15 -0
  18. package/dist/lib/app/AppClient.d.ts.map +1 -0
  19. package/dist/lib/app/AppClient.js +41 -0
  20. package/dist/lib/app/AppClient.js.map +1 -0
  21. package/dist/lib/app/types.d.ts +41 -0
  22. package/dist/lib/app/types.d.ts.map +1 -0
  23. package/dist/lib/app/types.js +2 -0
  24. package/dist/lib/app/types.js.map +1 -0
  25. package/dist/lib/auth/AuthClient.d.ts +38 -0
  26. package/dist/lib/auth/AuthClient.d.ts.map +1 -0
  27. package/dist/lib/auth/AuthClient.js +105 -0
  28. package/dist/lib/auth/AuthClient.js.map +1 -0
  29. package/dist/lib/database/DatabaseClient.d.ts +76 -0
  30. package/dist/lib/database/DatabaseClient.d.ts.map +1 -0
  31. package/dist/lib/database/DatabaseClient.js +250 -0
  32. package/dist/lib/database/DatabaseClient.js.map +1 -0
  33. package/dist/lib/database/types.d.ts +66 -0
  34. package/dist/lib/database/types.d.ts.map +1 -0
  35. package/dist/lib/database/types.js +20 -0
  36. package/dist/lib/database/types.js.map +1 -0
  37. package/dist/lib/functions/FunctionsClient.d.ts +9 -0
  38. package/dist/lib/functions/FunctionsClient.d.ts.map +1 -0
  39. package/dist/lib/functions/FunctionsClient.js +20 -0
  40. package/dist/lib/functions/FunctionsClient.js.map +1 -0
  41. package/dist/lib/functions/types.d.ts +25 -0
  42. package/dist/lib/functions/types.d.ts.map +1 -0
  43. package/dist/lib/functions/types.js +2 -0
  44. package/dist/lib/functions/types.js.map +1 -0
  45. package/dist/lib/policy/PolicyClient.d.ts +25 -0
  46. package/dist/lib/policy/PolicyClient.d.ts.map +1 -0
  47. package/dist/lib/policy/PolicyClient.js +65 -0
  48. package/dist/lib/policy/PolicyClient.js.map +1 -0
  49. package/dist/lib/policy/types.d.ts +32 -0
  50. package/dist/lib/policy/types.d.ts.map +1 -0
  51. package/dist/lib/policy/types.js +2 -0
  52. package/dist/lib/policy/types.js.map +1 -0
  53. package/dist/lib/secrets/SecretsClient.d.ts +29 -0
  54. package/dist/lib/secrets/SecretsClient.d.ts.map +1 -0
  55. package/dist/lib/secrets/SecretsClient.js +66 -0
  56. package/dist/lib/secrets/SecretsClient.js.map +1 -0
  57. package/dist/lib/secrets/types.d.ts +43 -0
  58. package/dist/lib/secrets/types.d.ts.map +1 -0
  59. package/dist/lib/secrets/types.js +2 -0
  60. package/dist/lib/secrets/types.js.map +1 -0
  61. package/dist/lib/settings/SettingsClient.d.ts +9 -0
  62. package/dist/lib/settings/SettingsClient.d.ts.map +1 -0
  63. package/dist/lib/settings/SettingsClient.js +17 -0
  64. package/dist/lib/settings/SettingsClient.js.map +1 -0
  65. package/dist/lib/settings/types.d.ts +6 -0
  66. package/dist/lib/settings/types.d.ts.map +1 -0
  67. package/dist/lib/settings/types.js +2 -0
  68. package/dist/lib/settings/types.js.map +1 -0
  69. package/dist/lib/storage/StorageClient.d.ts +38 -0
  70. package/dist/lib/storage/StorageClient.d.ts.map +1 -0
  71. package/dist/lib/storage/StorageClient.js +102 -0
  72. package/dist/lib/storage/StorageClient.js.map +1 -0
  73. package/dist/lib/storage/types.d.ts +73 -0
  74. package/dist/lib/storage/types.d.ts.map +1 -0
  75. package/dist/lib/storage/types.js +2 -0
  76. package/dist/lib/storage/types.js.map +1 -0
  77. package/dist/lib/users/UserClient.d.ts +17 -0
  78. package/dist/lib/users/UserClient.d.ts.map +1 -0
  79. package/dist/lib/users/UserClient.js +40 -0
  80. package/dist/lib/users/UserClient.js.map +1 -0
  81. package/dist/lib/users/types.d.ts +108 -0
  82. package/dist/lib/users/types.d.ts.map +1 -0
  83. package/dist/lib/users/types.js +2 -0
  84. package/dist/lib/users/types.js.map +1 -0
  85. package/dist/lib-internal/errors/ErrorClient.d.ts +42 -0
  86. package/dist/lib-internal/errors/ErrorClient.d.ts.map +1 -0
  87. package/dist/lib-internal/errors/ErrorClient.js +102 -0
  88. package/dist/lib-internal/errors/ErrorClient.js.map +1 -0
  89. package/dist/lib-internal/errors/index.d.ts +4 -0
  90. package/dist/lib-internal/errors/index.d.ts.map +1 -0
  91. package/dist/lib-internal/errors/index.js +3 -0
  92. package/dist/lib-internal/errors/index.js.map +1 -0
  93. package/dist/lib-internal/errors/types.d.ts +29 -0
  94. package/dist/lib-internal/errors/types.d.ts.map +1 -0
  95. package/dist/lib-internal/errors/types.js +18 -0
  96. package/dist/lib-internal/errors/types.js.map +1 -0
  97. package/dist/lib-internal/http/HttpClient.d.ts +24 -0
  98. package/dist/lib-internal/http/HttpClient.d.ts.map +1 -0
  99. package/dist/lib-internal/http/HttpClient.js +103 -0
  100. package/dist/lib-internal/http/HttpClient.js.map +1 -0
  101. package/dist/lib-internal/http/types.d.ts +12 -0
  102. package/dist/lib-internal/http/types.d.ts.map +1 -0
  103. package/dist/lib-internal/http/types.js +11 -0
  104. package/dist/lib-internal/http/types.js.map +1 -0
  105. package/dist/lib-internal/routes/AnalyticsRoutes.d.ts +4 -0
  106. package/dist/lib-internal/routes/AnalyticsRoutes.d.ts.map +1 -0
  107. package/dist/lib-internal/routes/AnalyticsRoutes.js +4 -0
  108. package/dist/lib-internal/routes/AnalyticsRoutes.js.map +1 -0
  109. package/dist/lib-internal/routes/AppRoutes.d.ts +10 -0
  110. package/dist/lib-internal/routes/AppRoutes.d.ts.map +1 -0
  111. package/dist/lib-internal/routes/AppRoutes.js +6 -0
  112. package/dist/lib-internal/routes/AppRoutes.js.map +1 -0
  113. package/dist/lib-internal/routes/AuthRoutes.d.ts +2 -0
  114. package/dist/lib-internal/routes/AuthRoutes.d.ts.map +1 -0
  115. package/dist/lib-internal/routes/AuthRoutes.js +2 -0
  116. package/dist/lib-internal/routes/AuthRoutes.js.map +1 -0
  117. package/dist/lib-internal/routes/DatabaseRoutes.d.ts +11 -0
  118. package/dist/lib-internal/routes/DatabaseRoutes.d.ts.map +1 -0
  119. package/dist/lib-internal/routes/DatabaseRoutes.js +7 -0
  120. package/dist/lib-internal/routes/DatabaseRoutes.js.map +1 -0
  121. package/dist/lib-internal/routes/FunctionRoutes.d.ts +4 -0
  122. package/dist/lib-internal/routes/FunctionRoutes.d.ts.map +1 -0
  123. package/dist/lib-internal/routes/FunctionRoutes.js +4 -0
  124. package/dist/lib-internal/routes/FunctionRoutes.js.map +1 -0
  125. package/dist/lib-internal/routes/PolicyRoutes.d.ts +5 -0
  126. package/dist/lib-internal/routes/PolicyRoutes.d.ts.map +1 -0
  127. package/dist/lib-internal/routes/PolicyRoutes.js +5 -0
  128. package/dist/lib-internal/routes/PolicyRoutes.js.map +1 -0
  129. package/dist/lib-internal/routes/SecretsRoutes.d.ts +6 -0
  130. package/dist/lib-internal/routes/SecretsRoutes.d.ts.map +1 -0
  131. package/dist/lib-internal/routes/SecretsRoutes.js +6 -0
  132. package/dist/lib-internal/routes/SecretsRoutes.js.map +1 -0
  133. package/dist/lib-internal/routes/SettingsRoutes.d.ts +5 -0
  134. package/dist/lib-internal/routes/SettingsRoutes.d.ts.map +1 -0
  135. package/dist/lib-internal/routes/SettingsRoutes.js +5 -0
  136. package/dist/lib-internal/routes/SettingsRoutes.js.map +1 -0
  137. package/dist/lib-internal/routes/StorageRoutes.d.ts +11 -0
  138. package/dist/lib-internal/routes/StorageRoutes.d.ts.map +1 -0
  139. package/dist/lib-internal/routes/StorageRoutes.js +8 -0
  140. package/dist/lib-internal/routes/StorageRoutes.js.map +1 -0
  141. package/dist/lib-internal/routes/UserRoutes.d.ts +13 -0
  142. package/dist/lib-internal/routes/UserRoutes.d.ts.map +1 -0
  143. package/dist/lib-internal/routes/UserRoutes.js +13 -0
  144. package/dist/lib-internal/routes/UserRoutes.js.map +1 -0
  145. package/dist/lib-internal/routes/index.d.ts +2 -0
  146. package/dist/lib-internal/routes/index.d.ts.map +1 -0
  147. package/dist/lib-internal/routes/index.js +2 -0
  148. package/dist/lib-internal/routes/index.js.map +1 -0
  149. package/dist/lib-internal/token/TokenClient.d.ts +38 -0
  150. package/dist/lib-internal/token/TokenClient.d.ts.map +1 -0
  151. package/dist/lib-internal/token/TokenClient.js +93 -0
  152. package/dist/lib-internal/token/TokenClient.js.map +1 -0
  153. package/dist/lib-internal/token/types.d.ts +2 -0
  154. package/dist/lib-internal/token/types.d.ts.map +1 -0
  155. package/dist/lib-internal/token/types.js +2 -0
  156. package/dist/lib-internal/token/types.js.map +1 -0
  157. package/dist/types.d.ts +74 -0
  158. package/dist/types.d.ts.map +1 -0
  159. package/dist/types.js +2 -0
  160. package/dist/types.js.map +1 -0
  161. package/dist/utils/enums.d.ts +31 -0
  162. package/dist/utils/enums.d.ts.map +1 -0
  163. package/dist/utils/enums.js +26 -0
  164. package/dist/utils/enums.js.map +1 -0
  165. package/dist/utils/utils.d.ts +6 -0
  166. package/dist/utils/utils.d.ts.map +1 -0
  167. package/dist/utils/utils.js +38 -0
  168. package/dist/utils/utils.js.map +1 -0
  169. package/package.json +2 -1
@@ -0,0 +1,27 @@
1
+ import { HttpClient } from "./lib-internal/http/HttpClient.js";
2
+ import { TokenClient } from "./lib-internal/token/TokenClient.js";
3
+ import type { TaruviConfig } from "./types.js";
4
+ export declare class Client {
5
+ private readonly config;
6
+ private readonly _httpClient;
7
+ private readonly _tokenClient;
8
+ constructor(config: TaruviConfig);
9
+ /**
10
+ * Extracts session token from URL hash and stores it using TokenClient.
11
+ * Handles callback URLs like: #session_token=xxx
12
+ * After extraction, the URL hash is cleared.
13
+ */
14
+ private extractTokensFromUrl;
15
+ /**
16
+ * @internal
17
+ * Internal use only - not part of public API
18
+ */
19
+ get httpClient(): HttpClient;
20
+ /**
21
+ * @internal
22
+ * Internal use only - not part of public API
23
+ */
24
+ get tokenClient(): TokenClient;
25
+ getConfig(): Readonly<TaruviConfig>;
26
+ }
27
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG/C,qBAAa,MAAM;IACf,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IACrC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAY;IACxC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAa;gBAE9B,MAAM,EAAE,YAAY;IA2BhC;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IA0B5B;;;OAGG;IACH,IAAI,UAAU,IAAI,UAAU,CAE3B;IAED;;;OAGG;IACH,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,SAAS,IAAI,QAAQ,CAAC,YAAY,CAAC;CAGtC"}
package/dist/client.js ADDED
@@ -0,0 +1,70 @@
1
+ import { HttpClient } from "./lib-internal/http/HttpClient.js";
2
+ import { TokenClient } from "./lib-internal/token/TokenClient.js";
3
+ import packageJson from "../package.json" with { type: "json" };
4
+ export class Client {
5
+ config;
6
+ _httpClient;
7
+ _tokenClient;
8
+ constructor(config) {
9
+ if (!config) {
10
+ throw new Error("Config is required");
11
+ }
12
+ if (!config.apiKey) {
13
+ throw new Error("API key is required");
14
+ }
15
+ if (!config.apiUrl) {
16
+ throw new Error("API URL is required");
17
+ }
18
+ this.config = config;
19
+ // Internal clients for SDK use only
20
+ // TokenClient must be created first, then passed to HttpClient
21
+ this._tokenClient = new TokenClient(config.token);
22
+ this._httpClient = new HttpClient(this.config, this._tokenClient);
23
+ // Check URL hash for tokens (OAuth callback)
24
+ this.extractTokensFromUrl();
25
+ console.info(`Taruvi SDK v${packageJson.version} initialized`);
26
+ }
27
+ /**
28
+ * Extracts session token from URL hash and stores it using TokenClient.
29
+ * Handles callback URLs like: #session_token=xxx
30
+ * After extraction, the URL hash is cleared.
31
+ */
32
+ extractTokensFromUrl() {
33
+ if (typeof window === "undefined" || typeof localStorage === "undefined") {
34
+ return;
35
+ }
36
+ const hash = window.location.hash;
37
+ if (!hash) {
38
+ return;
39
+ }
40
+ const params = new URLSearchParams(hash.substring(1));
41
+ const sessionToken = params.get("session_token");
42
+ if (!sessionToken) {
43
+ return;
44
+ }
45
+ this._tokenClient.setTokens({ sessionToken });
46
+ // Clear hash from URL without reloading page
47
+ if (window.history && window.history.replaceState) {
48
+ const urlWithoutHash = window.location.pathname + window.location.search;
49
+ window.history.replaceState(null, "", urlWithoutHash);
50
+ }
51
+ }
52
+ /**
53
+ * @internal
54
+ * Internal use only - not part of public API
55
+ */
56
+ get httpClient() {
57
+ return this._httpClient;
58
+ }
59
+ /**
60
+ * @internal
61
+ * Internal use only - not part of public API
62
+ */
63
+ get tokenClient() {
64
+ return this._tokenClient;
65
+ }
66
+ getConfig() {
67
+ return { ...this.config };
68
+ }
69
+ }
70
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAElE,OAAO,WAAW,MAAM,iBAAiB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAEhE,MAAM,OAAO,MAAM;IACE,MAAM,CAAc;IACpB,WAAW,CAAY;IACvB,YAAY,CAAa;IAE1C,YAAY,MAAoB;QAC5B,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;QACzC,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;QAC1C,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;QAC1C,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QAEpB,oCAAoC;QACpC,+DAA+D;QAE/D,IAAI,CAAC,YAAY,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACjD,IAAI,CAAC,WAAW,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;QAEjE,6CAA6C;QAC7C,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAE3B,OAAO,CAAC,IAAI,CAAC,eAAe,WAAW,CAAC,OAAO,cAAc,CAAC,CAAA;IAClE,CAAC;IAED;;;;OAIG;IACK,oBAAoB;QACxB,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,YAAY,KAAK,WAAW,EAAE,CAAC;YACvE,OAAM;QACV,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAA;QACjC,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAM;QACV,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QACrD,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;QAEhD,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,OAAM;QACV,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC,CAAA;QAE7C,6CAA6C;QAC7C,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;YAChD,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAA;YACxE,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,EAAE,cAAc,CAAC,CAAA;QACzD,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,WAAW,CAAA;IAC3B,CAAC;IAED;;;OAGG;IACH,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,YAAY,CAAA;IAC5B,CAAC;IAED,SAAS;QACL,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;IAC7B,CAAC;CACJ"}
@@ -0,0 +1,28 @@
1
+ export { Client } from "./client.js";
2
+ export { TaruviError, ValidationError, AuthError, ForbiddenError, NotFoundError, ConflictError, TimeoutError, NetworkError, RateLimitError } from "./lib-internal/errors/index.js";
3
+ export { ErrorCode } from "./lib-internal/errors/index.js";
4
+ export type { ErrorResponseBody } from "./lib-internal/errors/index.js";
5
+ export { Auth } from "./lib/auth/AuthClient.js";
6
+ export { User } from "./lib/users/UserClient.js";
7
+ export { Storage } from "./lib/storage/StorageClient.js";
8
+ export { Database } from "./lib/database/DatabaseClient.js";
9
+ export { Settings } from "./lib/settings/SettingsClient.js";
10
+ export { Functions } from "./lib/functions/FunctionsClient.js";
11
+ export { Secrets } from "./lib/secrets/SecretsClient.js";
12
+ export { Policy } from "./lib/policy/PolicyClient.js";
13
+ export { App } from "./lib/app/AppClient.js";
14
+ export { Analytics } from "./lib/analytics/AnalyticsClient.js";
15
+ export type { TaruviConfig, TaruviResponse, PaginationInfo, StorageFilters, DatabaseFilters } from "./types.js";
16
+ export type { AuthTokens } from "./lib-internal/token/TokenClient.js";
17
+ export type { UserCreateRequest, UserData, UserUpdateRequest, UserListFilters, UserApp, UserResponse, UserListResponse, UserAppsResponse, AssignRolesRequest, RevokeRolesRequest, RolesResponse, UserGroup, UserPermission, UserRole, UserPreferences, UserPreferencesUpdate, UserPreferencesResponse } from "./lib/users/types.js";
18
+ export type { Principal, Resource, Resources, PolicyCheckResult, PolicyCheckBatchResult, ResourceCheckResponse, GetAllowedActionsOptions } from "./lib/policy/types.js";
19
+ export type { RoleData, AppSettingsData, RoleResponse, RolesListResponse, AppSettingsResponse } from "./lib/app/types.js";
20
+ export type { FunctionRequest, FunctionResponse, FunctionInvocation } from "./lib/functions/types.js";
21
+ export type { DatabaseRequest, DatabaseResponse, DatabaseSingleResponse, FilterOperator, GraphFormat, EdgeRequest, EdgeResponse, EdgeDeleteRequest, PgRangeValue, BackendFilterLeafNode, BackendFilterLogicalNode, BackendFilterNode, BackendFilterTreeRoot } from "./lib/database/types.js";
22
+ export { isBackendFilterTreeRoot } from "./lib/database/types.js";
23
+ export { SortOrder, DataFormat, GraphInclude, Visibility, MimeTypeCategory } from "./utils/enums.js";
24
+ export type { StorageRequest, StorageUpdateRequest, StorageObject, StorageResponse, StorageListResponse, StorageUploadBatchResponse, StorageDeleteBatchResponse } from "./lib/storage/types.js";
25
+ export type { SiteSettingsData, SettingsResponse } from "./lib/settings/types.js";
26
+ export type { SecretCreateRequest, SecretUpdateRequest, SecretData, SecretResponse, SecretsListResponse, SecretsBatchResponse, SecretsBatchMetadataResponse, GetSecretOptions, GetSecretsOptions } from "./lib/secrets/types.js";
27
+ export type { AnalyticsRequest, AnalyticsResponse } from "./lib/analytics/types.js";
28
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAGpC,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAClL,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAC1D,YAAY,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAGvE,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAA;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAA;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAA;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAA;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAA;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAA;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAA;AACrD,OAAO,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAA;AAG9D,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC/G,YAAY,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAA;AAGrE,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,iBAAiB,EAAE,eAAe,EAAE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,aAAa,EAAE,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,eAAe,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAGnU,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAGvK,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE,YAAY,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAGzH,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAGrG,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,iBAAiB,EAAE,YAAY,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC5R,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AAGjE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAGpG,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,aAAa,EAAE,eAAe,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAA;AAG/L,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAGjF,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,UAAU,EAAE,cAAc,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAGhO,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA"}
package/dist/index.js ADDED
@@ -0,0 +1,20 @@
1
+ // Export main client
2
+ export { Client } from "./client.js";
3
+ // Export error classes
4
+ export { TaruviError, ValidationError, AuthError, ForbiddenError, NotFoundError, ConflictError, TimeoutError, NetworkError, RateLimitError } from "./lib-internal/errors/index.js";
5
+ export { ErrorCode } from "./lib-internal/errors/index.js";
6
+ // Export public client classes
7
+ export { Auth } from "./lib/auth/AuthClient.js";
8
+ export { User } from "./lib/users/UserClient.js";
9
+ export { Storage } from "./lib/storage/StorageClient.js";
10
+ export { Database } from "./lib/database/DatabaseClient.js";
11
+ export { Settings } from "./lib/settings/SettingsClient.js";
12
+ export { Functions } from "./lib/functions/FunctionsClient.js";
13
+ export { Secrets } from "./lib/secrets/SecretsClient.js";
14
+ export { Policy } from "./lib/policy/PolicyClient.js";
15
+ export { App } from "./lib/app/AppClient.js";
16
+ export { Analytics } from "./lib/analytics/AnalyticsClient.js";
17
+ export { isBackendFilterTreeRoot } from "./lib/database/types.js";
18
+ // Enums / runtime constants
19
+ export { SortOrder, DataFormat, GraphInclude, Visibility, MimeTypeCategory } from "./utils/enums.js";
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,qBAAqB;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,uBAAuB;AACvB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAClL,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAG1D,+BAA+B;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAA;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAA;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAA;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAA;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAA;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAA;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAA;AACrD,OAAO,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAA;AAoB9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AAEjE,4BAA4B;AAC5B,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA"}
@@ -0,0 +1,9 @@
1
+ import type { Client } from "../../client.js";
2
+ import type { AnalyticsRequest, AnalyticsResponse } from "./types.js";
3
+ export declare class Analytics {
4
+ private client;
5
+ private config;
6
+ constructor(client: Client);
7
+ execute<T = unknown>(querySlug: string, options?: AnalyticsRequest): Promise<AnalyticsResponse<T>>;
8
+ }
9
+ //# sourceMappingURL=AnalyticsClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnalyticsClient.d.ts","sourceRoot":"","sources":["../../../src/lib/analytics/AnalyticsClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAGtE,qBAAa,SAAS;IAClB,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,MAAM,CAAc;gBAEhB,MAAM,EAAE,MAAM;IAKpB,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;CAS/G"}
@@ -0,0 +1,17 @@
1
+ import { AnalyticsRoutes } from "../../lib-internal/routes/AnalyticsRoutes.js";
2
+ export class Analytics {
3
+ client;
4
+ config;
5
+ constructor(client) {
6
+ this.client = client;
7
+ this.config = this.client.getConfig();
8
+ }
9
+ async execute(querySlug, options = {}) {
10
+ const url = AnalyticsRoutes.baseUrl(this.config.appSlug, querySlug);
11
+ const body = {
12
+ params: options.params || {}
13
+ };
14
+ return await this.client.httpClient.post(url, body);
15
+ }
16
+ }
17
+ //# sourceMappingURL=AnalyticsClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnalyticsClient.js","sourceRoot":"","sources":["../../../src/lib/analytics/AnalyticsClient.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAE/E,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,SAAiB,EAAE,UAA4B,EAAE;QACxE,MAAM,GAAG,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QAEnE,MAAM,IAAI,GAAG;YACT,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE;SAC/B,CAAA;QAED,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAuB,GAAG,EAAE,IAAI,CAAC,CAAA;IAC7E,CAAC;CACJ"}
@@ -0,0 +1,6 @@
1
+ import type { TaruviResponse } from "../../types.js";
2
+ export interface AnalyticsRequest {
3
+ params?: Record<string, unknown>;
4
+ }
5
+ export type AnalyticsResponse<T = unknown> = TaruviResponse<T>;
6
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/analytics/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,MAAM,WAAW,gBAAgB;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACnC;AAGD,MAAM,MAAM,iBAAiB,CAAC,CAAC,GAAG,OAAO,IAAI,cAAc,CAAC,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/analytics/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ import type { Client } from "../../client.js";
2
+ import { HttpMethod } from "../../lib-internal/http/types.js";
3
+ import type { UrlParams } from "./types.js";
4
+ export declare class App {
5
+ private client;
6
+ private urlParams;
7
+ private config;
8
+ private operation;
9
+ constructor(client: Client, urlParams?: UrlParams, operation?: HttpMethod | undefined);
10
+ roles(): App;
11
+ settings(): App;
12
+ private buildRoute;
13
+ execute(): Promise<unknown>;
14
+ }
15
+ //# sourceMappingURL=AppClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppClient.d.ts","sourceRoot":"","sources":["../../../src/lib/app/AppClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAE9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,qBAAa,GAAG;IACZ,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,SAAS,CAAW;IAC5B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,SAAS,CAAwB;gBAE7B,MAAM,EAAE,MAAM,EAAE,SAAS,GAAE,SAAc,EAAE,SAAS,CAAC,EAAE,UAAU,GAAG,SAAS;IAOzF,KAAK;IAIL,QAAQ;IAIR,OAAO,CAAC,UAAU;IAgBZ,OAAO;CAUhB"}
@@ -0,0 +1,41 @@
1
+ import { AppRoutes } from "../../lib-internal/routes/AppRoutes.js";
2
+ import { HttpMethod } from "../../lib-internal/http/types.js";
3
+ export class App {
4
+ client;
5
+ urlParams;
6
+ config;
7
+ operation;
8
+ constructor(client, urlParams = {}, operation) {
9
+ this.client = client;
10
+ this.urlParams = urlParams;
11
+ this.operation = operation;
12
+ this.config = this.client.getConfig();
13
+ }
14
+ roles() {
15
+ return new App(this.client, { ...this.urlParams, roles: "roles" }, HttpMethod.GET);
16
+ }
17
+ settings() {
18
+ return new App(this.client, { ...this.urlParams, settings: "settings" }, HttpMethod.GET);
19
+ }
20
+ buildRoute() {
21
+ return (AppRoutes.baseUrl(this.config.appSlug) +
22
+ Object.keys(this.urlParams).reduce((acc, key) => {
23
+ const value = this.urlParams[key];
24
+ const routeBuilder = AppRoutes[key];
25
+ if (value && routeBuilder) {
26
+ acc += routeBuilder();
27
+ }
28
+ return acc;
29
+ }, ""));
30
+ }
31
+ async execute() {
32
+ const url = this.buildRoute();
33
+ const operation = this.operation || HttpMethod.GET;
34
+ switch (operation) {
35
+ case HttpMethod.GET:
36
+ default:
37
+ return await this.client.httpClient.get(url);
38
+ }
39
+ }
40
+ }
41
+ //# sourceMappingURL=AppClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppClient.js","sourceRoot":"","sources":["../../../src/lib/app/AppClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAoB,MAAM,wCAAwC,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAI9D,MAAM,OAAO,GAAG;IACJ,MAAM,CAAQ;IACd,SAAS,CAAW;IACpB,MAAM,CAAc;IACpB,SAAS,CAAwB;IAEzC,YAAY,MAAc,EAAE,YAAuB,EAAE,EAAE,SAAkC;QACrF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAA;IACzC,CAAC;IAED,KAAK;QACD,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,UAAU,CAAC,GAAG,CAAC,CAAA;IACtF,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,EAAC,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAC,EAAE,UAAU,CAAC,GAAG,CAAC,CAAA;IAC1F,CAAC;IAEO,UAAU;QACd,OAAO,CACH,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;YACrC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAmB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;gBACjC,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA;gBAEnC,IAAI,KAAK,IAAI,YAAY,EAAE,CAAC;oBACxB,GAAG,IAAI,YAAY,EAAE,CAAA;gBACzB,CAAC;gBAED,OAAO,GAAG,CAAA;YACd,CAAC,EAAE,EAAE,CAAC,CACT,CAAA;IACL,CAAC;IAED,KAAK,CAAC,OAAO;QACT,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,UAAU,CAAC,GAAG,CAAA;QAElD,QAAQ,SAAS,EAAE,CAAC;YAChB,KAAK,UAAU,CAAC,GAAG,CAAC;YACpB;gBACI,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACpD,CAAC;IACL,CAAC;CACJ"}
@@ -0,0 +1,41 @@
1
+ import type { Client } from "../../client.js";
2
+ import { HttpMethod } from "../../lib-internal/http/types.js";
3
+ import type { TaruviResponse } from "../../types.js";
4
+ export type AppOperation = HttpMethod;
5
+ export interface UrlParams {
6
+ appSlug?: string;
7
+ roles?: string;
8
+ settings?: string;
9
+ }
10
+ export interface AppClientInterface {
11
+ client: Client;
12
+ urlParams?: UrlParams;
13
+ }
14
+ export interface RoleData {
15
+ id: string | number;
16
+ name: string;
17
+ slug: string;
18
+ description?: string;
19
+ permissions?: string[];
20
+ created_at?: string;
21
+ updated_at?: string;
22
+ }
23
+ export interface AppSettingsData {
24
+ display_name: string;
25
+ icon: string | null;
26
+ icon_url: string | null;
27
+ primary_color: string;
28
+ secondary_color: string;
29
+ banner_image: string | null;
30
+ banner_image_url: string | null;
31
+ category: string;
32
+ documentation_url: string | null;
33
+ support_email: string | null;
34
+ default_frontend_worker_url: string | null;
35
+ created_at: string;
36
+ updated_at: string;
37
+ }
38
+ export type RoleResponse = TaruviResponse<RoleData>;
39
+ export type RolesListResponse = TaruviResponse<RoleData[]>;
40
+ export type AppSettingsResponse = TaruviResponse<AppSettingsData>;
41
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/app/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,MAAM,MAAM,YAAY,GAAG,UAAU,CAAA;AAGrC,MAAM,WAAW,SAAS;IACtB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,kBAAkB;IAC/B,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,SAAS,CAAA;CACxB;AAGD,MAAM,WAAW,QAAQ;IACrB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,MAAM,CAAA;CACtB;AAGD,MAAM,WAAW,eAAe;IAC5B,YAAY,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,eAAe,EAAE,MAAM,CAAA;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,QAAQ,EAAE,MAAM,CAAA;IAChB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,2BAA2B,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1C,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;CACrB;AAGD,MAAM,MAAM,YAAY,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;AACnD,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAA;AAC1D,MAAM,MAAM,mBAAmB,GAAG,cAAc,CAAC,eAAe,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ import { HttpMethod } from "../../lib-internal/http/types.js";
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/app/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA"}
@@ -0,0 +1,38 @@
1
+ import type { Client } from "../../client.js";
2
+ import type { TaruviResponse } from "../../types.js";
3
+ import type { UserData } from "../users/types.js";
4
+ /**
5
+ * Auth Client - Handles user authentication using Web UI Flow
6
+ * Uses session token for API authentication via X-Session-Token header.
7
+ * On 401, tokens are cleared automatically by HttpClient interceptor (403 does not clear the token).
8
+ */
9
+ export declare class Auth {
10
+ private client;
11
+ constructor(client: Client);
12
+ /**
13
+ * Redirect to login page (Web UI Flow)
14
+ */
15
+ login(callbackUrl?: string): void;
16
+ /**
17
+ * Redirect to signup page (Web UI Flow)
18
+ */
19
+ signup(callbackUrl?: string): void;
20
+ /**
21
+ * Logout user and redirect to logout page
22
+ */
23
+ logout(callbackUrl?: string): Promise<void>;
24
+ /**
25
+ * Check if user is authenticated (has session token)
26
+ */
27
+ isUserAuthenticated(): boolean;
28
+ /**
29
+ * Get the current session token
30
+ */
31
+ getSessionToken(): string | null;
32
+ /**
33
+ * Get current user from API
34
+ * @returns Promise with user data or null if not authenticated
35
+ */
36
+ getCurrentUser(): Promise<TaruviResponse<UserData> | null>;
37
+ }
38
+ //# sourceMappingURL=AuthClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthClient.d.ts","sourceRoot":"","sources":["../../../src/lib/auth/AuthClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAGlD;;;;GAIG;AACH,qBAAa,IAAI;IACb,OAAO,CAAC,MAAM,CAAQ;gBAEV,MAAM,EAAE,MAAM;IAI1B;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;IAqBjC;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;IAoBlC;;OAEG;IACG,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA4BjD;;OAEG;IACH,mBAAmB,IAAI,OAAO;IAI9B;;OAEG;IACH,eAAe,IAAI,MAAM,GAAG,IAAI;IAIhC;;;OAGG;IACG,cAAc,IAAI,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;CAYnE"}
@@ -0,0 +1,105 @@
1
+ import { UserRoutes } from "../../lib-internal/routes/UserRoutes.js";
2
+ /**
3
+ * Auth Client - Handles user authentication using Web UI Flow
4
+ * Uses session token for API authentication via X-Session-Token header.
5
+ * On 401, tokens are cleared automatically by HttpClient interceptor (403 does not clear the token).
6
+ */
7
+ export class Auth {
8
+ client;
9
+ constructor(client) {
10
+ this.client = client;
11
+ }
12
+ /**
13
+ * Redirect to login page (Web UI Flow)
14
+ */
15
+ login(callbackUrl) {
16
+ if (typeof window === "undefined") {
17
+ console.error("login() can only be called in browser environment");
18
+ return;
19
+ }
20
+ const config = this.client.getConfig();
21
+ const callback = callbackUrl || window.location.origin + window.location.pathname;
22
+ const deskUrl = config.deskUrl || config.apiUrl;
23
+ const loginUrl = `${deskUrl}/accounts/login/?redirect_to=${encodeURIComponent(callback)}`;
24
+ if (typeof sessionStorage !== "undefined") {
25
+ sessionStorage.setItem("auth_state", JSON.stringify({
26
+ returnTo: window.location.pathname,
27
+ timestamp: Date.now()
28
+ }));
29
+ }
30
+ window.location.href = loginUrl;
31
+ }
32
+ /**
33
+ * Redirect to signup page (Web UI Flow)
34
+ */
35
+ signup(callbackUrl) {
36
+ if (typeof window === "undefined") {
37
+ console.error("signup() can only be called in browser environment");
38
+ return;
39
+ }
40
+ const config = this.client.getConfig();
41
+ const callback = callbackUrl || window.location.origin + window.location.pathname;
42
+ const signupUrl = `${config.apiUrl}/accounts/signup/?redirect_to=${encodeURIComponent(callback)}`;
43
+ if (typeof sessionStorage !== "undefined") {
44
+ sessionStorage.setItem("auth_state", JSON.stringify({
45
+ returnTo: window.location.pathname,
46
+ timestamp: Date.now()
47
+ }));
48
+ }
49
+ window.location.href = signupUrl;
50
+ }
51
+ /**
52
+ * Logout user and redirect to logout page
53
+ */
54
+ async logout(callbackUrl) {
55
+ if (typeof window === "undefined") {
56
+ console.error("logout() can only be called in browser environment");
57
+ return;
58
+ }
59
+ this.client.tokenClient.clearTokens();
60
+ const config = this.client.getConfig();
61
+ const deskUrl = config.deskUrl || config.apiUrl;
62
+ let callback = callbackUrl || "";
63
+ if (!callback) {
64
+ try {
65
+ const settings = await this.client.httpClient.get(`api/sites/${config.appSlug}/metadata`);
66
+ callback = settings.frontend_url || window.location.origin;
67
+ }
68
+ catch (error) {
69
+ console.error("Failed to fetch site settings, using origin:", error);
70
+ callback = window.location.origin;
71
+ }
72
+ }
73
+ const logoutUrl = `${deskUrl}/accounts/logout/?redirect_to=${encodeURIComponent(callback)}`;
74
+ window.location.href = logoutUrl;
75
+ }
76
+ /**
77
+ * Check if user is authenticated (has session token)
78
+ */
79
+ isUserAuthenticated() {
80
+ return this.client.tokenClient.isAuthenticated();
81
+ }
82
+ /**
83
+ * Get the current session token
84
+ */
85
+ getSessionToken() {
86
+ return this.client.tokenClient.getSessionToken();
87
+ }
88
+ /**
89
+ * Get current user from API
90
+ * @returns Promise with user data or null if not authenticated
91
+ */
92
+ async getCurrentUser() {
93
+ if (!this.isUserAuthenticated()) {
94
+ return null;
95
+ }
96
+ try {
97
+ return await this.client.httpClient.get(UserRoutes.getCurrentUser());
98
+ }
99
+ catch (error) {
100
+ console.error("Failed to fetch current user:", error);
101
+ return null;
102
+ }
103
+ }
104
+ }
105
+ //# sourceMappingURL=AuthClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthClient.js","sourceRoot":"","sources":["../../../src/lib/auth/AuthClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ import type { Client } from "../../client.js";
2
+ import { HttpMethod } from "../../lib-internal/http/types.js";
3
+ import type { DatabaseFilters, TaruviResponse } from "../../types.js";
4
+ import type { UrlParams, FilterOperator, SortOrder, GraphInclude, GraphFormat, EdgeRequest, BackendFilterTreeRoot } from "./types.js";
5
+ interface GraphQueryParams {
6
+ include?: GraphInclude;
7
+ depth?: number;
8
+ format?: GraphFormat;
9
+ relationship_type?: string[];
10
+ }
11
+ export declare class Database<T = Record<string, unknown>> {
12
+ private client;
13
+ private urlParams;
14
+ private config;
15
+ private operation;
16
+ private body;
17
+ private queryParams;
18
+ private graphParams;
19
+ private isEdges;
20
+ private isUpsert;
21
+ constructor(client: Client, urlParams?: UrlParams, operation?: HttpMethod | undefined, body?: object | undefined, queryParams?: DatabaseFilters, graphParams?: GraphQueryParams, isEdges?: boolean, isUpsert?: boolean);
22
+ from<U = Record<string, unknown>>(dataTables: string): Database<U>;
23
+ edges(): Database<T>;
24
+ include(direction: GraphInclude): Database<T>;
25
+ depth(n: number): Database<T>;
26
+ format(fmt: GraphFormat): Database<T>;
27
+ types(types: string[]): Database<T>;
28
+ /**
29
+ * JSON filter tree for the `filters` query param. Must match the platform contract:
30
+ * root is an array of logical nodes `{ operator: "and" | "or", value: [...] }`; leaves are
31
+ * `{ field, operator, value }` where `operator` is a **backend** token (`contains` = case-insensitive
32
+ * substring, `containss` = case-sensitive, `eq`, `in`, …). The SDK only JSON-stringifies this value.
33
+ */
34
+ filters(tree: BackendFilterTreeRoot): Database<T>;
35
+ /**
36
+ * DRF-style flat filter: `field` or `field__operator` query keys.
37
+ */
38
+ filters(field: string, operator: FilterOperator, value: string | number | boolean | (string | number | boolean)[]): Database<T>;
39
+ /**
40
+ * Sets the `ordering` query param (DRF-style: `-field` for desc, comma-separated for multiple).
41
+ * - `orderBy('created_at', 'desc')` — one column (optional second arg defaults to `'asc'`)
42
+ * - `orderBy([{ field: 'salary', order: 'desc' }, { field: 'hire_date' }])` — multiple columns
43
+ * - `orderBy('-salary,hire_date')` — raw string (e.g. from `convertRefineSorters`); omit the second arg
44
+ */
45
+ orderBy(fieldOrFields: string | Array<{
46
+ field: string;
47
+ order?: SortOrder;
48
+ }>, order?: SortOrder): Database<T>;
49
+ pageSize(size: number): Database<T>;
50
+ page(num: number): Database<T>;
51
+ populate(populate: string[]): Database<T>;
52
+ /** Populate all first-level relations (`?populate=*`). */
53
+ populateAll(): Database<T>;
54
+ search(query: string): Database<T>;
55
+ /** Restrict SELECT to named columns (`?fields=a,b,c`). */
56
+ fields(columns: string): Database<T>;
57
+ allowedActions(actions: string[]): Database<T>;
58
+ aggregate(...expressions: string[]): Database<T>;
59
+ groupBy(...fields: string[]): Database<T>;
60
+ having(condition: string): Database<T>;
61
+ get(recordId: string): Database<T>;
62
+ create(body: Partial<T> | Partial<T>[] | EdgeRequest[]): Database<T>;
63
+ upsert(body: Partial<T> | Partial<T>[], uniqueFields?: string[]): Database<T>;
64
+ update(body: Partial<T> | EdgeRequest): Database<T>;
65
+ bulkUpdate(body: Partial<T>[]): Database<T>;
66
+ delete(recordIdOrEdgeIds: string | number[]): Database<T>;
67
+ bulkDelete(ids: string[]): Database<T>;
68
+ deleteFiltered(): Database<T>;
69
+ first(): Promise<T | null>;
70
+ count(): Promise<number>;
71
+ private getTableName;
72
+ private buildRoute;
73
+ execute(): Promise<TaruviResponse<T | T[]>>;
74
+ }
75
+ export {};
76
+ //# sourceMappingURL=DatabaseClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatabaseClient.d.ts","sourceRoot":"","sources":["../../../src/lib/database/DatabaseClient.ts"],"names":[],"mappings":"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"}