@redonvn/redai-backend-api-sdk 0.1.10 → 0.1.12

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 (145) hide show
  1. package/.npm-cache/_cacache/content-v2/sha512/86/70/40787d3ad4c6bb74f182be681858c7e22dc44bd5679779bfe4f3aa562f18810e6b8e80144a539402fe397be24c37e2555f351176e49d8bd1ddff114d5e04 +0 -0
  2. package/.npm-cache/_cacache/tmp/6303939d +0 -0
  3. package/.npm-cache/_update-notifier-last-checked +0 -0
  4. package/package.json +12 -15
  5. package/src/core/auth.ts +62 -0
  6. package/src/core/http-client.ts +41 -0
  7. package/src/core/types.ts +23 -0
  8. package/{dist/generated/dynamic-table/index.d.ts → src/generated/dynamic-table/index.ts} +1 -0
  9. package/src/generated/dynamic-table/services/api-docs.service.ts +42 -0
  10. package/src/generated/dynamic-table/services/api-tokens.service.ts +53 -0
  11. package/src/generated/dynamic-table/services/attachments-secure.service.ts +31 -0
  12. package/src/generated/dynamic-table/services/attachments.service.ts +53 -0
  13. package/src/generated/dynamic-table/services/base-members.service.ts +55 -0
  14. package/src/generated/dynamic-table/services/bases.service.ts +66 -0
  15. package/src/generated/dynamic-table/services/caches.service.ts +42 -0
  16. package/src/generated/dynamic-table/services/calendar-data.service.ts +44 -0
  17. package/src/generated/dynamic-table/services/calendars.service.ts +45 -0
  18. package/src/generated/dynamic-table/services/columns.service.ts +98 -0
  19. package/src/generated/dynamic-table/services/command-palette.service.ts +42 -0
  20. package/src/generated/dynamic-table/services/data-table.service.ts +188 -0
  21. package/src/generated/dynamic-table/services/dynamic-table-auth.service.ts +21 -0
  22. package/src/generated/dynamic-table/services/filters.service.ts +76 -0
  23. package/src/generated/dynamic-table/services/forms.service.ts +45 -0
  24. package/src/generated/dynamic-table/services/galleries.service.ts +45 -0
  25. package/src/generated/dynamic-table/services/grids.service.ts +33 -0
  26. package/src/generated/dynamic-table/services/hooks.service.ts +145 -0
  27. package/{dist/generated/dynamic-table/services/index.d.ts → src/generated/dynamic-table/services/index.ts} +1 -0
  28. package/src/generated/dynamic-table/services/internal.service.ts +42 -0
  29. package/src/generated/dynamic-table/services/kanban-data.service.ts +21 -0
  30. package/src/generated/dynamic-table/services/kanbans.service.ts +45 -0
  31. package/src/generated/dynamic-table/services/maps.service.ts +45 -0
  32. package/src/generated/dynamic-table/services/row-color.service.ts +77 -0
  33. package/src/generated/dynamic-table/services/sorts.service.ts +76 -0
  34. package/src/generated/dynamic-table/services/sources.service.ts +66 -0
  35. package/src/generated/dynamic-table/services/tables.service.ts +77 -0
  36. package/src/generated/dynamic-table/services/user-ui-preferences.service.ts +32 -0
  37. package/src/generated/dynamic-table/services/utils.service.ts +53 -0
  38. package/src/generated/dynamic-table/services/view-columns.service.ts +87 -0
  39. package/src/generated/dynamic-table/services/views.service.ts +109 -0
  40. package/src/generated/dynamic-table/services/workspace-invite-link-settings.service.ts +43 -0
  41. package/src/generated/dynamic-table/services/workspace-invite-links.service.ts +55 -0
  42. package/src/generated/dynamic-table/services/workspace-invites.service.ts +21 -0
  43. package/src/generated/dynamic-table/services/workspace-join-requests.service.ts +45 -0
  44. package/src/generated/dynamic-table/services/workspace-members.service.ts +56 -0
  45. package/src/generated/dynamic-table/services/workspaces.service.ts +77 -0
  46. package/src/generated/dynamic-table/types.ts +2244 -0
  47. package/{dist/generated/index.d.ts → src/generated/index.ts} +1 -0
  48. package/{dist/generated/services/index.d.ts → src/generated/services/index.ts} +1 -0
  49. package/{dist/generated/types.d.ts → src/generated/types.ts} +1 -0
  50. package/src/index.ts +79 -0
  51. package/tools/.reports/dynamic-table-sdk-report.json +9 -0
  52. package/tools/generate-dynamic-table-sdk.ts +31 -0
  53. package/tools/generate-sdk.ts +13 -0
  54. package/tools/generator/openapi-resolver.ts +77 -0
  55. package/tools/generator/shared.ts +162 -0
  56. package/tools/generator/ts-resolver.ts +439 -0
  57. package/tools/verify-generated.ts +23 -0
  58. package/tsconfig.json +19 -0
  59. package/dist/core/auth.d.ts +0 -19
  60. package/dist/core/auth.js +0 -47
  61. package/dist/core/http-client.d.ts +0 -9
  62. package/dist/core/http-client.js +0 -41
  63. package/dist/core/types.d.ts +0 -19
  64. package/dist/core/types.js +0 -2
  65. package/dist/generated/dynamic-table/index.js +0 -19
  66. package/dist/generated/dynamic-table/services/api-docs.service.d.ts +0 -9
  67. package/dist/generated/dynamic-table/services/api-docs.service.js +0 -36
  68. package/dist/generated/dynamic-table/services/api-tokens.service.d.ts +0 -10
  69. package/dist/generated/dynamic-table/services/api-tokens.service.js +0 -45
  70. package/dist/generated/dynamic-table/services/attachments-secure.service.d.ts +0 -8
  71. package/dist/generated/dynamic-table/services/attachments-secure.service.js +0 -27
  72. package/dist/generated/dynamic-table/services/attachments.service.d.ts +0 -10
  73. package/dist/generated/dynamic-table/services/attachments.service.js +0 -45
  74. package/dist/generated/dynamic-table/services/base-members.service.d.ts +0 -10
  75. package/dist/generated/dynamic-table/services/base-members.service.js +0 -45
  76. package/dist/generated/dynamic-table/services/bases.service.d.ts +0 -11
  77. package/dist/generated/dynamic-table/services/bases.service.js +0 -54
  78. package/dist/generated/dynamic-table/services/caches.service.d.ts +0 -9
  79. package/dist/generated/dynamic-table/services/caches.service.js +0 -36
  80. package/dist/generated/dynamic-table/services/calendar-data.service.d.ts +0 -14
  81. package/dist/generated/dynamic-table/services/calendar-data.service.js +0 -36
  82. package/dist/generated/dynamic-table/services/calendars.service.d.ts +0 -9
  83. package/dist/generated/dynamic-table/services/calendars.service.js +0 -36
  84. package/dist/generated/dynamic-table/services/columns.service.d.ts +0 -17
  85. package/dist/generated/dynamic-table/services/columns.service.js +0 -81
  86. package/dist/generated/dynamic-table/services/command-palette.service.d.ts +0 -9
  87. package/dist/generated/dynamic-table/services/command-palette.service.js +0 -36
  88. package/dist/generated/dynamic-table/services/data-table.service.d.ts +0 -32
  89. package/dist/generated/dynamic-table/services/data-table.service.js +0 -153
  90. package/dist/generated/dynamic-table/services/dynamic-table-auth.service.d.ts +0 -7
  91. package/dist/generated/dynamic-table/services/dynamic-table-auth.service.js +0 -18
  92. package/dist/generated/dynamic-table/services/filters.service.d.ts +0 -12
  93. package/dist/generated/dynamic-table/services/filters.service.js +0 -63
  94. package/dist/generated/dynamic-table/services/forms.service.d.ts +0 -9
  95. package/dist/generated/dynamic-table/services/forms.service.js +0 -36
  96. package/dist/generated/dynamic-table/services/galleries.service.d.ts +0 -9
  97. package/dist/generated/dynamic-table/services/galleries.service.js +0 -36
  98. package/dist/generated/dynamic-table/services/grids.service.d.ts +0 -8
  99. package/dist/generated/dynamic-table/services/grids.service.js +0 -27
  100. package/dist/generated/dynamic-table/services/hooks.service.d.ts +0 -18
  101. package/dist/generated/dynamic-table/services/hooks.service.js +0 -117
  102. package/dist/generated/dynamic-table/services/index.js +0 -76
  103. package/dist/generated/dynamic-table/services/internal.service.d.ts +0 -9
  104. package/dist/generated/dynamic-table/services/internal.service.js +0 -36
  105. package/dist/generated/dynamic-table/services/kanban-data.service.d.ts +0 -7
  106. package/dist/generated/dynamic-table/services/kanban-data.service.js +0 -18
  107. package/dist/generated/dynamic-table/services/kanbans.service.d.ts +0 -9
  108. package/dist/generated/dynamic-table/services/kanbans.service.js +0 -36
  109. package/dist/generated/dynamic-table/services/maps.service.d.ts +0 -9
  110. package/dist/generated/dynamic-table/services/maps.service.js +0 -36
  111. package/dist/generated/dynamic-table/services/row-color.service.d.ts +0 -12
  112. package/dist/generated/dynamic-table/services/row-color.service.js +0 -63
  113. package/dist/generated/dynamic-table/services/sorts.service.d.ts +0 -12
  114. package/dist/generated/dynamic-table/services/sorts.service.js +0 -63
  115. package/dist/generated/dynamic-table/services/sources.service.d.ts +0 -11
  116. package/dist/generated/dynamic-table/services/sources.service.js +0 -54
  117. package/dist/generated/dynamic-table/services/tables.service.d.ts +0 -12
  118. package/dist/generated/dynamic-table/services/tables.service.js +0 -63
  119. package/dist/generated/dynamic-table/services/user-ui-preferences.service.d.ts +0 -8
  120. package/dist/generated/dynamic-table/services/user-ui-preferences.service.js +0 -27
  121. package/dist/generated/dynamic-table/services/utils.service.d.ts +0 -10
  122. package/dist/generated/dynamic-table/services/utils.service.js +0 -45
  123. package/dist/generated/dynamic-table/services/view-columns.service.d.ts +0 -13
  124. package/dist/generated/dynamic-table/services/view-columns.service.js +0 -72
  125. package/dist/generated/dynamic-table/services/views.service.d.ts +0 -14
  126. package/dist/generated/dynamic-table/services/views.service.js +0 -81
  127. package/dist/generated/dynamic-table/services/workspace-invite-link-settings.service.d.ts +0 -9
  128. package/dist/generated/dynamic-table/services/workspace-invite-link-settings.service.js +0 -36
  129. package/dist/generated/dynamic-table/services/workspace-invite-links.service.d.ts +0 -10
  130. package/dist/generated/dynamic-table/services/workspace-invite-links.service.js +0 -45
  131. package/dist/generated/dynamic-table/services/workspace-invites.service.d.ts +0 -7
  132. package/dist/generated/dynamic-table/services/workspace-invites.service.js +0 -18
  133. package/dist/generated/dynamic-table/services/workspace-join-requests.service.d.ts +0 -9
  134. package/dist/generated/dynamic-table/services/workspace-join-requests.service.js +0 -36
  135. package/dist/generated/dynamic-table/services/workspace-members.service.d.ts +0 -10
  136. package/dist/generated/dynamic-table/services/workspace-members.service.js +0 -45
  137. package/dist/generated/dynamic-table/services/workspaces.service.d.ts +0 -12
  138. package/dist/generated/dynamic-table/services/workspaces.service.js +0 -63
  139. package/dist/generated/dynamic-table/types.d.ts +0 -2179
  140. package/dist/generated/dynamic-table/types.js +0 -418
  141. package/dist/generated/index.js +0 -43
  142. package/dist/generated/services/index.js +0 -18
  143. package/dist/generated/types.js +0 -18
  144. package/dist/index.d.ts +0 -54
  145. package/dist/index.js +0 -94
Binary file
File without changes
package/package.json CHANGED
@@ -1,25 +1,25 @@
1
1
  {
2
2
  "name": "@redonvn/redai-backend-api-sdk",
3
- "version": "0.1.10",
3
+ "version": "0.1.12",
4
4
  "description": "Axios SDK for RedAI Dynamic Table APIs",
5
5
  "license": "UNLICENSED",
6
- "main": "dist/index.js",
7
- "types": "dist/index.d.ts",
6
+ "main": "src/index.ts",
7
+ "types": "src/index.ts",
8
8
  "exports": {
9
9
  ".": {
10
- "types": "./dist/index.d.ts",
11
- "require": "./dist/index.js",
12
- "default": "./dist/index.js"
10
+ "types": "./src/index.ts",
11
+ "require": "./src/index.ts",
12
+ "default": "./src/index.ts"
13
13
  },
14
14
  "./generated": {
15
- "types": "./dist/generated/index.d.ts",
16
- "require": "./dist/generated/index.js",
17
- "default": "./dist/generated/index.js"
15
+ "types": "./src/generated/index.ts",
16
+ "require": "./src/generated/index.ts",
17
+ "default": "./src/generated/index.ts"
18
18
  },
19
19
  "./generated/*": {
20
- "types": "./dist/generated/*.d.ts",
21
- "require": "./dist/generated/*.js",
22
- "default": "./dist/generated/*.js"
20
+ "types": "./src/generated/*.ts",
21
+ "require": "./src/generated/*.ts",
22
+ "default": "./src/generated/*.ts"
23
23
  },
24
24
  "./package.json": "./package.json"
25
25
  },
@@ -27,9 +27,6 @@
27
27
  "access": "public",
28
28
  "registry": "https://registry.npmjs.org/"
29
29
  },
30
- "files": [
31
- "dist"
32
- ],
33
30
  "scripts": {
34
31
  "clean": "node -e \"require('fs').rmSync('dist',{ recursive: true, force: true })\"",
35
32
  "generate": "cross-env GEN_MODE=hybrid OUTPUT_REPORT=true tsx tools/generate-dynamic-table-sdk.ts",
@@ -0,0 +1,62 @@
1
+ import { DynamicTableTokenProvider } from './types';
2
+
3
+ export interface AuthState {
4
+ bearerToken: string | null;
5
+ dtApiToken: string | null;
6
+ }
7
+
8
+ export class DynamicTableAuth {
9
+ private state: AuthState;
10
+ private tokenProvider: DynamicTableTokenProvider | null = null;
11
+
12
+ constructor(initial?: Partial<AuthState>, tokenProvider?: DynamicTableTokenProvider) {
13
+ this.state = {
14
+ bearerToken: initial?.bearerToken ?? null,
15
+ dtApiToken: initial?.dtApiToken ?? null,
16
+ };
17
+ this.tokenProvider = tokenProvider ?? null;
18
+ }
19
+
20
+ getState(): Readonly<AuthState> {
21
+ return this.state;
22
+ }
23
+
24
+ setTokenProvider(provider: DynamicTableTokenProvider | null): void {
25
+ this.tokenProvider = provider;
26
+ }
27
+
28
+ async resolveState(): Promise<Readonly<AuthState>> {
29
+ if (!this.tokenProvider) {
30
+ return this.state;
31
+ }
32
+
33
+ const [providerBearer, providerDtApiToken] = await Promise.all([
34
+ this.tokenProvider.getBearerToken?.(),
35
+ this.tokenProvider.getDtApiToken?.(),
36
+ ]);
37
+
38
+ return {
39
+ bearerToken:
40
+ providerBearer === undefined ? this.state.bearerToken : (providerBearer ?? null),
41
+ dtApiToken:
42
+ providerDtApiToken === undefined ? this.state.dtApiToken : (providerDtApiToken ?? null),
43
+ };
44
+ }
45
+
46
+ setBearerToken(token: string | null): void {
47
+ this.state.bearerToken = token;
48
+ }
49
+
50
+ setDtApiToken(token: string | null): void {
51
+ this.state.dtApiToken = token;
52
+ }
53
+
54
+ setAuth(input: { bearerToken?: string | null; dtApiToken?: string | null }): void {
55
+ if (Object.prototype.hasOwnProperty.call(input, 'bearerToken')) {
56
+ this.state.bearerToken = input.bearerToken ?? null;
57
+ }
58
+ if (Object.prototype.hasOwnProperty.call(input, 'dtApiToken')) {
59
+ this.state.dtApiToken = input.dtApiToken ?? null;
60
+ }
61
+ }
62
+ }
@@ -0,0 +1,41 @@
1
+ import axios, { AxiosInstance, AxiosRequestConfig } from 'axios';
2
+ import { DynamicTableAuth } from './auth';
3
+ import { DynamicTableSdkConfig } from './types';
4
+
5
+ export class HttpClient {
6
+ private readonly instance: AxiosInstance;
7
+
8
+ constructor(config: DynamicTableSdkConfig, private readonly auth: DynamicTableAuth) {
9
+ this.instance = axios.create({
10
+ baseURL: config.baseURL,
11
+ timeout: config.timeout ?? 30000,
12
+ headers: {
13
+ 'Content-Type': 'application/json',
14
+ ...(config.defaultHeaders ?? {}),
15
+ },
16
+ });
17
+
18
+ this.instance.interceptors.request.use(async (requestConfig) => {
19
+ const state = await this.auth.resolveState();
20
+
21
+ if (state.bearerToken) {
22
+ requestConfig.headers.Authorization = `Bearer ${state.bearerToken}`;
23
+ } else if (requestConfig.headers.Authorization) {
24
+ delete requestConfig.headers.Authorization;
25
+ }
26
+
27
+ if (state.dtApiToken) {
28
+ requestConfig.headers['x-dt-api-token'] = state.dtApiToken;
29
+ } else if (requestConfig.headers['x-dt-api-token']) {
30
+ delete requestConfig.headers['x-dt-api-token'];
31
+ }
32
+
33
+ return requestConfig;
34
+ });
35
+ }
36
+
37
+ async request<T>(config: AxiosRequestConfig): Promise<T> {
38
+ const response = await this.instance.request<T>(config);
39
+ return response.data;
40
+ }
41
+ }
@@ -0,0 +1,23 @@
1
+ export type Nullable<T> = T | null;
2
+
3
+ export interface ApiResponseDto<T> {
4
+ code: number;
5
+ message: string;
6
+ result: T;
7
+ }
8
+
9
+ export type MaybePromise<T> = T | Promise<T>;
10
+
11
+ export interface DynamicTableTokenProvider {
12
+ getBearerToken?: () => MaybePromise<string | null | undefined>;
13
+ getDtApiToken?: () => MaybePromise<string | null | undefined>;
14
+ }
15
+
16
+ export interface DynamicTableSdkConfig {
17
+ baseURL: string;
18
+ timeout?: number;
19
+ defaultHeaders?: Record<string, string>;
20
+ bearerToken?: string | null;
21
+ dtApiToken?: string | null;
22
+ tokenProvider?: DynamicTableTokenProvider;
23
+ }
@@ -1,2 +1,3 @@
1
+ /* eslint-disable */
1
2
  export * from './types';
2
3
  export * from './services';
@@ -0,0 +1,42 @@
1
+ /* eslint-disable */
2
+ import { HttpClient } from '../../../core/http-client';
3
+ import type {
4
+ ApiResponseDto,
5
+ OpenApiJsonParams,
6
+ RedocParams,
7
+ SwaggerParams,
8
+ } from '../types';
9
+
10
+ export class ApiDocsService {
11
+ constructor(private readonly client: HttpClient) {}
12
+
13
+ async openApiJson(params?: OpenApiJsonParams): Promise<ApiResponseDto<Record<string, unknown>>> {
14
+ return this.client.request<ApiResponseDto<Record<string, unknown>>>({
15
+ method: 'GET',
16
+ url: `/v1/dynamic-table/api-docs/openapi.json`,
17
+ params: undefined,
18
+ data: undefined,
19
+ headers: undefined,
20
+ });
21
+ }
22
+
23
+ async redoc(params?: RedocParams): Promise<ApiResponseDto<string>> {
24
+ return this.client.request<ApiResponseDto<string>>({
25
+ method: 'GET',
26
+ url: `/v1/dynamic-table/api-docs/redoc`,
27
+ params: undefined,
28
+ data: undefined,
29
+ headers: undefined,
30
+ });
31
+ }
32
+
33
+ async swagger(params?: SwaggerParams): Promise<ApiResponseDto<string>> {
34
+ return this.client.request<ApiResponseDto<string>>({
35
+ method: 'GET',
36
+ url: `/v1/dynamic-table/api-docs/swagger`,
37
+ params: undefined,
38
+ data: undefined,
39
+ headers: undefined,
40
+ });
41
+ }
42
+ }
@@ -0,0 +1,53 @@
1
+ /* eslint-disable */
2
+ import { HttpClient } from '../../../core/http-client';
3
+ import type {
4
+ ApiResponseDto,
5
+ CreateApiTokenParams,
6
+ DeleteApiTokenParams,
7
+ ListApiTokensParams,
8
+ UpdateApiTokenParams,
9
+ } from '../types';
10
+
11
+ export class ApiTokensService {
12
+ constructor(private readonly client: HttpClient) {}
13
+
14
+ async listApiTokens(params?: ListApiTokensParams): Promise<ApiResponseDto<Record<string, unknown>[]>> {
15
+ return this.client.request<ApiResponseDto<Record<string, unknown>[]>>({
16
+ method: 'GET',
17
+ url: `/v1/dynamic-table/db/meta/api-tokens`,
18
+ params: params?.query,
19
+ data: undefined,
20
+ headers: undefined,
21
+ });
22
+ }
23
+
24
+ async createApiToken(params: CreateApiTokenParams): Promise<ApiResponseDto<Record<string, unknown>>> {
25
+ return this.client.request<ApiResponseDto<Record<string, unknown>>>({
26
+ method: 'POST',
27
+ url: `/v1/dynamic-table/db/meta/api-tokens`,
28
+ params: undefined,
29
+ data: params?.body,
30
+ headers: undefined,
31
+ });
32
+ }
33
+
34
+ async deleteApiToken(params: DeleteApiTokenParams): Promise<ApiResponseDto<null>> {
35
+ return this.client.request<ApiResponseDto<null>>({
36
+ method: 'DELETE',
37
+ url: `/v1/dynamic-table/db/meta/api-tokens/${encodeURIComponent(String(params.tokenId))}`,
38
+ params: undefined,
39
+ data: undefined,
40
+ headers: undefined,
41
+ });
42
+ }
43
+
44
+ async updateApiToken(params: UpdateApiTokenParams): Promise<ApiResponseDto<Record<string, unknown>>> {
45
+ return this.client.request<ApiResponseDto<Record<string, unknown>>>({
46
+ method: 'PATCH',
47
+ url: `/v1/dynamic-table/db/meta/api-tokens/${encodeURIComponent(String(params.tokenId))}`,
48
+ params: undefined,
49
+ data: params?.body,
50
+ headers: undefined,
51
+ });
52
+ }
53
+ }
@@ -0,0 +1,31 @@
1
+ /* eslint-disable */
2
+ import { HttpClient } from '../../../core/http-client';
3
+ import type {
4
+ ApiResponseDto,
5
+ CreateSecureTokenParams,
6
+ GetSecureAttachmentParams,
7
+ } from '../types';
8
+
9
+ export class AttachmentsSecureService {
10
+ constructor(private readonly client: HttpClient) {}
11
+
12
+ async getSecureAttachment(params: GetSecureAttachmentParams): Promise<ApiResponseDto<Record<string, unknown>>> {
13
+ return this.client.request<ApiResponseDto<Record<string, unknown>>>({
14
+ method: 'GET',
15
+ url: `/v1/dynamic-table/storage/secure/${encodeURIComponent(String(params.attachmentId))}`,
16
+ params: undefined,
17
+ data: undefined,
18
+ headers: undefined,
19
+ });
20
+ }
21
+
22
+ async createSecureToken(params: CreateSecureTokenParams): Promise<ApiResponseDto<Record<string, unknown>>> {
23
+ return this.client.request<ApiResponseDto<Record<string, unknown>>>({
24
+ method: 'POST',
25
+ url: `/v1/dynamic-table/storage/secure/${encodeURIComponent(String(params.attachmentId))}/token`,
26
+ params: undefined,
27
+ data: params?.body,
28
+ headers: undefined,
29
+ });
30
+ }
31
+ }
@@ -0,0 +1,53 @@
1
+ /* eslint-disable */
2
+ import { HttpClient } from '../../../core/http-client';
3
+ import type {
4
+ ApiResponseDto,
5
+ CreatePresignedUrlParams,
6
+ DeleteAttachmentParams,
7
+ GetAttachmentParams,
8
+ UploadParams,
9
+ } from '../types';
10
+
11
+ export class AttachmentsService {
12
+ constructor(private readonly client: HttpClient) {}
13
+
14
+ async deleteAttachment(params: DeleteAttachmentParams): Promise<ApiResponseDto<null>> {
15
+ return this.client.request<ApiResponseDto<null>>({
16
+ method: 'DELETE',
17
+ url: `/v1/dynamic-table/storage/${encodeURIComponent(String(params.attachmentId))}`,
18
+ params: undefined,
19
+ data: undefined,
20
+ headers: undefined,
21
+ });
22
+ }
23
+
24
+ async getAttachment(params: GetAttachmentParams): Promise<ApiResponseDto<Record<string, unknown>>> {
25
+ return this.client.request<ApiResponseDto<Record<string, unknown>>>({
26
+ method: 'GET',
27
+ url: `/v1/dynamic-table/storage/${encodeURIComponent(String(params.attachmentId))}`,
28
+ params: undefined,
29
+ data: undefined,
30
+ headers: undefined,
31
+ });
32
+ }
33
+
34
+ async createPresignedUrl(params: CreatePresignedUrlParams): Promise<ApiResponseDto<Record<string, unknown>>> {
35
+ return this.client.request<ApiResponseDto<Record<string, unknown>>>({
36
+ method: 'POST',
37
+ url: `/v1/dynamic-table/storage/presigned-url`,
38
+ params: undefined,
39
+ data: params?.body,
40
+ headers: undefined,
41
+ });
42
+ }
43
+
44
+ async upload(params: UploadParams): Promise<ApiResponseDto<Record<string, unknown>>> {
45
+ return this.client.request<ApiResponseDto<Record<string, unknown>>>({
46
+ method: 'POST',
47
+ url: `/v1/dynamic-table/storage/upload`,
48
+ params: undefined,
49
+ data: params?.body,
50
+ headers: undefined,
51
+ });
52
+ }
53
+ }
@@ -0,0 +1,55 @@
1
+ /* eslint-disable */
2
+ import { HttpClient } from '../../../core/http-client';
3
+ import type {
4
+ AddBaseMemberParams,
5
+ ApiResponseDto,
6
+ BaseMemberListResponseDto,
7
+ BaseMemberResponseDto,
8
+ ListBaseMembersParams,
9
+ RemoveBaseMemberParams,
10
+ UpdateBaseMemberParams,
11
+ } from '../types';
12
+
13
+ export class BaseMembersService {
14
+ constructor(private readonly client: HttpClient) {}
15
+
16
+ async listBaseMembers(params: ListBaseMembersParams): Promise<ApiResponseDto<BaseMemberListResponseDto>> {
17
+ return this.client.request<ApiResponseDto<BaseMemberListResponseDto>>({
18
+ method: 'GET',
19
+ url: `/v1/dynamic-table/db/meta/bases/${encodeURIComponent(String(params.baseId))}/members`,
20
+ params: params?.query,
21
+ data: undefined,
22
+ headers: undefined,
23
+ });
24
+ }
25
+
26
+ async addBaseMember(params: AddBaseMemberParams): Promise<ApiResponseDto<BaseMemberResponseDto>> {
27
+ return this.client.request<ApiResponseDto<BaseMemberResponseDto>>({
28
+ method: 'POST',
29
+ url: `/v1/dynamic-table/db/meta/bases/${encodeURIComponent(String(params.baseId))}/members`,
30
+ params: undefined,
31
+ data: params?.body,
32
+ headers: undefined,
33
+ });
34
+ }
35
+
36
+ async removeBaseMember(params: RemoveBaseMemberParams): Promise<ApiResponseDto<BaseMemberResponseDto>> {
37
+ return this.client.request<ApiResponseDto<BaseMemberResponseDto>>({
38
+ method: 'DELETE',
39
+ url: `/v1/dynamic-table/db/meta/bases/${encodeURIComponent(String(params.baseId))}/members/${encodeURIComponent(String(params.baseMemberId))}`,
40
+ params: undefined,
41
+ data: undefined,
42
+ headers: undefined,
43
+ });
44
+ }
45
+
46
+ async updateBaseMember(params: UpdateBaseMemberParams): Promise<ApiResponseDto<BaseMemberResponseDto>> {
47
+ return this.client.request<ApiResponseDto<BaseMemberResponseDto>>({
48
+ method: 'PATCH',
49
+ url: `/v1/dynamic-table/db/meta/bases/${encodeURIComponent(String(params.baseId))}/members/${encodeURIComponent(String(params.baseMemberId))}`,
50
+ params: undefined,
51
+ data: params?.body,
52
+ headers: undefined,
53
+ });
54
+ }
55
+ }
@@ -0,0 +1,66 @@
1
+ /* eslint-disable */
2
+ import { HttpClient } from '../../../core/http-client';
3
+ import type {
4
+ ApiResponseDto,
5
+ BaseResponseDto,
6
+ CreateBaseParams,
7
+ DeleteBaseParams,
8
+ GetBaseParams,
9
+ ListBasesParams,
10
+ PagedResponse,
11
+ UpdateBaseParams,
12
+ } from '../types';
13
+
14
+ export class BasesService {
15
+ constructor(private readonly client: HttpClient) {}
16
+
17
+ async deleteBase(params: DeleteBaseParams): Promise<ApiResponseDto<BaseResponseDto>> {
18
+ return this.client.request<ApiResponseDto<BaseResponseDto>>({
19
+ method: 'DELETE',
20
+ url: `/v1/dynamic-table/db/meta/bases/${encodeURIComponent(String(params.baseId))}`,
21
+ params: undefined,
22
+ data: undefined,
23
+ headers: undefined,
24
+ });
25
+ }
26
+
27
+ async getBase(params: GetBaseParams): Promise<ApiResponseDto<BaseResponseDto>> {
28
+ return this.client.request<ApiResponseDto<BaseResponseDto>>({
29
+ method: 'GET',
30
+ url: `/v1/dynamic-table/db/meta/bases/${encodeURIComponent(String(params.baseId))}`,
31
+ params: undefined,
32
+ data: undefined,
33
+ headers: undefined,
34
+ });
35
+ }
36
+
37
+ async updateBase(params: UpdateBaseParams): Promise<ApiResponseDto<BaseResponseDto>> {
38
+ return this.client.request<ApiResponseDto<BaseResponseDto>>({
39
+ method: 'PATCH',
40
+ url: `/v1/dynamic-table/db/meta/bases/${encodeURIComponent(String(params.baseId))}`,
41
+ params: undefined,
42
+ data: params?.body,
43
+ headers: undefined,
44
+ });
45
+ }
46
+
47
+ async listBases(params: ListBasesParams): Promise<ApiResponseDto<PagedResponse<BaseResponseDto>>> {
48
+ return this.client.request<ApiResponseDto<PagedResponse<BaseResponseDto>>>({
49
+ method: 'GET',
50
+ url: `/v1/dynamic-table/db/meta/workspaces/${encodeURIComponent(String(params.workspaceId))}/bases`,
51
+ params: params?.query,
52
+ data: undefined,
53
+ headers: undefined,
54
+ });
55
+ }
56
+
57
+ async createBase(params: CreateBaseParams): Promise<ApiResponseDto<BaseResponseDto>> {
58
+ return this.client.request<ApiResponseDto<BaseResponseDto>>({
59
+ method: 'POST',
60
+ url: `/v1/dynamic-table/db/meta/workspaces/${encodeURIComponent(String(params.workspaceId))}/bases`,
61
+ params: undefined,
62
+ data: params?.body,
63
+ headers: undefined,
64
+ });
65
+ }
66
+ }
@@ -0,0 +1,42 @@
1
+ /* eslint-disable */
2
+ import { HttpClient } from '../../../core/http-client';
3
+ import type {
4
+ ApiResponseDto,
5
+ InvalidateParams,
6
+ StatsParams,
7
+ WarmupParams,
8
+ } from '../types';
9
+
10
+ export class CachesService {
11
+ constructor(private readonly client: HttpClient) {}
12
+
13
+ async invalidate(params: InvalidateParams): Promise<ApiResponseDto<Record<string, unknown>>> {
14
+ return this.client.request<ApiResponseDto<Record<string, unknown>>>({
15
+ method: 'POST',
16
+ url: `/v1/dynamic-table/db/meta/cache/invalidate`,
17
+ params: undefined,
18
+ data: params?.body,
19
+ headers: undefined,
20
+ });
21
+ }
22
+
23
+ async stats(params?: StatsParams): Promise<ApiResponseDto<Record<string, unknown>>> {
24
+ return this.client.request<ApiResponseDto<Record<string, unknown>>>({
25
+ method: 'GET',
26
+ url: `/v1/dynamic-table/db/meta/cache/stats`,
27
+ params: undefined,
28
+ data: undefined,
29
+ headers: undefined,
30
+ });
31
+ }
32
+
33
+ async warmup(params: WarmupParams): Promise<ApiResponseDto<Record<string, unknown>>> {
34
+ return this.client.request<ApiResponseDto<Record<string, unknown>>>({
35
+ method: 'POST',
36
+ url: `/v1/dynamic-table/db/meta/cache/warmup`,
37
+ params: undefined,
38
+ data: params?.body,
39
+ headers: undefined,
40
+ });
41
+ }
42
+ }
@@ -0,0 +1,44 @@
1
+ /* eslint-disable */
2
+ import { HttpClient } from '../../../core/http-client';
3
+ import type {
4
+ ApiResponseDto,
5
+ CountByDateParams,
6
+ CountRangeParams,
7
+ ListCalendarRecordsParams,
8
+ PagedResponse,
9
+ TableRecord,
10
+ } from '../types';
11
+
12
+ export class CalendarDataService {
13
+ constructor(private readonly client: HttpClient) {}
14
+
15
+ async listCalendarRecords(params: ListCalendarRecordsParams): Promise<ApiResponseDto<PagedResponse<TableRecord>>> {
16
+ return this.client.request<ApiResponseDto<PagedResponse<TableRecord>>>({
17
+ method: 'GET',
18
+ url: `/v1/dynamic-table/tables/${encodeURIComponent(String(params.tableId))}/calendars/${encodeURIComponent(String(params.viewId))}/records`,
19
+ params: params?.query,
20
+ data: undefined,
21
+ headers: undefined,
22
+ });
23
+ }
24
+
25
+ async countByDate(params: CountByDateParams): Promise<ApiResponseDto<{ count: number; dates: string[]; }>> {
26
+ return this.client.request<ApiResponseDto<{ count: number; dates: string[]; }>>({
27
+ method: 'GET',
28
+ url: `/v1/dynamic-table/tables/${encodeURIComponent(String(params.tableId))}/calendars/${encodeURIComponent(String(params.viewId))}/records/count-by-date`,
29
+ params: params?.query,
30
+ data: undefined,
31
+ headers: undefined,
32
+ });
33
+ }
34
+
35
+ async countRange(params: CountRangeParams): Promise<ApiResponseDto<{ count: number; }>> {
36
+ return this.client.request<ApiResponseDto<{ count: number; }>>({
37
+ method: 'GET',
38
+ url: `/v1/dynamic-table/tables/${encodeURIComponent(String(params.tableId))}/calendars/${encodeURIComponent(String(params.viewId))}/records/count-range`,
39
+ params: params?.query,
40
+ data: undefined,
41
+ headers: undefined,
42
+ });
43
+ }
44
+ }
@@ -0,0 +1,45 @@
1
+ /* eslint-disable */
2
+ import { HttpClient } from '../../../core/http-client';
3
+ import type {
4
+ ApiResponseDto,
5
+ CalendarViewDetailResponseDto,
6
+ CalendarViewResponseDto,
7
+ CreateCalendarViewParams,
8
+ GetCalendarViewParams,
9
+ UpdateCalendarViewParams,
10
+ ViewResponseDto,
11
+ } from '../types';
12
+
13
+ export class CalendarsService {
14
+ constructor(private readonly client: HttpClient) {}
15
+
16
+ async getCalendarView(params: GetCalendarViewParams): Promise<ApiResponseDto<CalendarViewDetailResponseDto>> {
17
+ return this.client.request<ApiResponseDto<CalendarViewDetailResponseDto>>({
18
+ method: 'GET',
19
+ url: `/v1/dynamic-table/db/meta/calendars/${encodeURIComponent(String(params.calendarViewId))}`,
20
+ params: undefined,
21
+ data: undefined,
22
+ headers: undefined,
23
+ });
24
+ }
25
+
26
+ async updateCalendarView(params: UpdateCalendarViewParams): Promise<ApiResponseDto<CalendarViewResponseDto>> {
27
+ return this.client.request<ApiResponseDto<CalendarViewResponseDto>>({
28
+ method: 'PATCH',
29
+ url: `/v1/dynamic-table/db/meta/calendars/${encodeURIComponent(String(params.calendarViewId))}`,
30
+ params: undefined,
31
+ data: params?.body,
32
+ headers: undefined,
33
+ });
34
+ }
35
+
36
+ async createCalendarView(params: CreateCalendarViewParams): Promise<ApiResponseDto<ViewResponseDto>> {
37
+ return this.client.request<ApiResponseDto<ViewResponseDto>>({
38
+ method: 'POST',
39
+ url: `/v1/dynamic-table/db/meta/tables/${encodeURIComponent(String(params.tableId))}/calendars`,
40
+ params: undefined,
41
+ data: params?.body,
42
+ headers: undefined,
43
+ });
44
+ }
45
+ }