@webiny/sdk 6.3.0-beta.2 → 6.3.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 (133) hide show
  1. package/CmsSdk.d.ts +8 -8
  2. package/CmsSdk.js.map +1 -1
  3. package/FileManagerSdk.d.ts +12 -12
  4. package/FileManagerSdk.js.map +1 -1
  5. package/LanguagesSdk.d.ts +2 -2
  6. package/LanguagesSdk.js.map +1 -1
  7. package/TasksSdk.d.ts +6 -6
  8. package/TasksSdk.js +1 -1
  9. package/TasksSdk.js.map +1 -1
  10. package/TenantManagerSdk.d.ts +6 -6
  11. package/TenantManagerSdk.js.map +1 -1
  12. package/errors.d.ts +10 -3
  13. package/errors.js +14 -2
  14. package/errors.js.map +1 -1
  15. package/index.d.ts +1 -1
  16. package/index.js +1 -1
  17. package/index.js.map +1 -1
  18. package/methods/cms/cmsTypes.d.ts +16 -0
  19. package/methods/cms/cmsTypes.js.map +1 -1
  20. package/methods/cms/createEntry.d.ts +3 -14
  21. package/methods/cms/createEntry.js +15 -13
  22. package/methods/cms/createEntry.js.map +1 -1
  23. package/methods/cms/deleteEntryRevision.d.ts +2 -3
  24. package/methods/cms/deleteEntryRevision.js +11 -14
  25. package/methods/cms/deleteEntryRevision.js.map +1 -1
  26. package/methods/cms/getEntry.d.ts +3 -18
  27. package/methods/cms/getEntry.js +17 -19
  28. package/methods/cms/getEntry.js.map +1 -1
  29. package/methods/cms/listEntries.d.ts +3 -19
  30. package/methods/cms/listEntries.js +19 -18
  31. package/methods/cms/listEntries.js.map +1 -1
  32. package/methods/cms/publishEntryRevision.d.ts +3 -14
  33. package/methods/cms/publishEntryRevision.js +15 -14
  34. package/methods/cms/publishEntryRevision.js.map +1 -1
  35. package/methods/cms/schemas.d.ts +43 -0
  36. package/methods/cms/schemas.js +50 -0
  37. package/methods/cms/schemas.js.map +1 -0
  38. package/methods/cms/unpublishEntryRevision.d.ts +3 -14
  39. package/methods/cms/unpublishEntryRevision.js +15 -14
  40. package/methods/cms/unpublishEntryRevision.js.map +1 -1
  41. package/methods/cms/updateEntryRevision.d.ts +3 -15
  42. package/methods/cms/updateEntryRevision.js +16 -14
  43. package/methods/cms/updateEntryRevision.js.map +1 -1
  44. package/methods/executeGraphQL.d.ts +2 -2
  45. package/methods/executeGraphQL.js +2 -2
  46. package/methods/executeGraphQL.js.map +1 -1
  47. package/methods/fileManager/completeMultiPartUpload.d.ts +3 -2
  48. package/methods/fileManager/completeMultiPartUpload.js +4 -7
  49. package/methods/fileManager/completeMultiPartUpload.js.map +1 -1
  50. package/methods/fileManager/createFile.d.ts +3 -2
  51. package/methods/fileManager/createFile.js +7 -16
  52. package/methods/fileManager/createFile.js.map +1 -1
  53. package/methods/fileManager/createFiles.d.ts +2 -2
  54. package/methods/fileManager/createFiles.js +4 -4
  55. package/methods/fileManager/createFiles.js.map +1 -1
  56. package/methods/fileManager/createMultiPartUpload.d.ts +3 -2
  57. package/methods/fileManager/createMultiPartUpload.js +4 -7
  58. package/methods/fileManager/createMultiPartUpload.js.map +1 -1
  59. package/methods/fileManager/deleteFile.d.ts +3 -2
  60. package/methods/fileManager/deleteFile.js +4 -7
  61. package/methods/fileManager/deleteFile.js.map +1 -1
  62. package/methods/fileManager/getFile.d.ts +3 -3
  63. package/methods/fileManager/getFile.js +13 -10
  64. package/methods/fileManager/getFile.js.map +1 -1
  65. package/methods/fileManager/getPresignedPostPayload.d.ts +3 -2
  66. package/methods/fileManager/getPresignedPostPayload.js +4 -7
  67. package/methods/fileManager/getPresignedPostPayload.js.map +1 -1
  68. package/methods/fileManager/getPresignedPostPayloads.d.ts +3 -2
  69. package/methods/fileManager/getPresignedPostPayloads.js +4 -7
  70. package/methods/fileManager/getPresignedPostPayloads.js.map +1 -1
  71. package/methods/fileManager/listFiles.d.ts +3 -3
  72. package/methods/fileManager/listFiles.js +13 -10
  73. package/methods/fileManager/listFiles.js.map +1 -1
  74. package/methods/fileManager/listTags.d.ts +3 -2
  75. package/methods/fileManager/listTags.js +3 -7
  76. package/methods/fileManager/listTags.js.map +1 -1
  77. package/methods/fileManager/schemas.d.ts +18 -0
  78. package/methods/fileManager/schemas.js +22 -0
  79. package/methods/fileManager/schemas.js.map +1 -0
  80. package/methods/fileManager/updateFile.d.ts +2 -3
  81. package/methods/fileManager/updateFile.js +11 -14
  82. package/methods/fileManager/updateFile.js.map +1 -1
  83. package/methods/fileManager/utils/uploadLargeFile.js +4 -8
  84. package/methods/fileManager/utils/uploadLargeFile.js.map +1 -1
  85. package/methods/languages/listLanguages.d.ts +3 -2
  86. package/methods/languages/listLanguages.js +3 -7
  87. package/methods/languages/listLanguages.js.map +1 -1
  88. package/methods/tasks/abortTask.d.ts +2 -3
  89. package/methods/tasks/abortTask.js +10 -13
  90. package/methods/tasks/abortTask.js.map +1 -1
  91. package/methods/tasks/listDefinitions.d.ts +3 -2
  92. package/methods/tasks/listDefinitions.js +3 -7
  93. package/methods/tasks/listDefinitions.js.map +1 -1
  94. package/methods/tasks/listLogs.d.ts +2 -3
  95. package/methods/tasks/listLogs.js +10 -10
  96. package/methods/tasks/listLogs.js.map +1 -1
  97. package/methods/tasks/listTasks.d.ts +3 -2
  98. package/methods/tasks/listTasks.js +3 -7
  99. package/methods/tasks/listTasks.js.map +1 -1
  100. package/methods/tasks/schemas.d.ts +14 -0
  101. package/methods/tasks/schemas.js +16 -0
  102. package/methods/tasks/schemas.js.map +1 -0
  103. package/methods/tasks/triggerTask.d.ts +2 -3
  104. package/methods/tasks/triggerTask.js +10 -13
  105. package/methods/tasks/triggerTask.js.map +1 -1
  106. package/methods/tenantManager/createTenant.d.ts +2 -3
  107. package/methods/tenantManager/createTenant.js +9 -12
  108. package/methods/tenantManager/createTenant.js.map +1 -1
  109. package/methods/tenantManager/disableTenant.d.ts +2 -3
  110. package/methods/tenantManager/disableTenant.js +9 -12
  111. package/methods/tenantManager/disableTenant.js.map +1 -1
  112. package/methods/tenantManager/enableTenant.d.ts +2 -3
  113. package/methods/tenantManager/enableTenant.js +9 -12
  114. package/methods/tenantManager/enableTenant.js.map +1 -1
  115. package/methods/tenantManager/getCurrentTenant.d.ts +3 -2
  116. package/methods/tenantManager/getCurrentTenant.js +3 -7
  117. package/methods/tenantManager/getCurrentTenant.js.map +1 -1
  118. package/methods/tenantManager/installTenant.d.ts +2 -3
  119. package/methods/tenantManager/installTenant.js +9 -12
  120. package/methods/tenantManager/installTenant.js.map +1 -1
  121. package/methods/tenantManager/schemas.d.ts +17 -0
  122. package/methods/tenantManager/schemas.js +20 -0
  123. package/methods/tenantManager/schemas.js.map +1 -0
  124. package/package.json +5 -13
  125. package/utils/createMethod.d.ts +19 -0
  126. package/utils/createMethod.js +27 -0
  127. package/utils/createMethod.js.map +1 -0
  128. package/utils/transformFieldErrors.d.ts +15 -0
  129. package/utils/transformFieldErrors.js +36 -0
  130. package/utils/transformFieldErrors.js.map +1 -0
  131. package/utils/validateParams.d.ts +10 -0
  132. package/utils/validateParams.js +23 -0
  133. package/utils/validateParams.js.map +1 -0
@@ -1,4 +1,6 @@
1
1
  import { Result } from "../../Result.js";
2
+ import { executeGraphQL } from "../executeGraphQL.js";
3
+ import { ApiError } from "../../errors.js";
2
4
  /**
3
5
  * Deletes a file from the file manager.
4
6
  *
@@ -8,13 +10,11 @@ import { Result } from "../../Result.js";
8
10
  * @param params.id - ID of the file to delete
9
11
  * @returns Result containing true on success or an error
10
12
  */
13
+ // Not using createMethod: params are simple but no Zod schema exists; trivial to add if needed.
11
14
  export async function deleteFile(config, fetchFn, params) {
12
15
  const {
13
16
  id
14
17
  } = params;
15
- const {
16
- executeGraphQL
17
- } = await import("../executeGraphQL.js");
18
18
  const query = `
19
19
  mutation DeleteFile($id: ID!) {
20
20
  fileManager {
@@ -36,10 +36,7 @@ export async function deleteFile(config, fetchFn, params) {
36
36
  }
37
37
  const responseData = result.value;
38
38
  if (responseData.fileManager.deleteFile.error) {
39
- const {
40
- GraphQLError
41
- } = await import("../../errors.js");
42
- return Result.fail(new GraphQLError(responseData.fileManager.deleteFile.error.message, responseData.fileManager.deleteFile.error.code));
39
+ return Result.fail(new ApiError(responseData.fileManager.deleteFile.error.message, responseData.fileManager.deleteFile.error.code));
43
40
  }
44
41
  return Result.ok(responseData.fileManager.deleteFile.data);
45
42
  }
@@ -1 +1 @@
1
- {"version":3,"names":["Result","deleteFile","config","fetchFn","params","id","executeGraphQL","query","result","isFail","fail","error","responseData","value","fileManager","GraphQLError","message","code","ok","data"],"sources":["deleteFile.ts"],"sourcesContent":["import type { WebinyConfig } from \"../../types.js\";\nimport { Result } from \"../../Result.js\";\nimport type { HttpError, GraphQLError, NetworkError } from \"../../errors.js\";\n\nexport interface DeleteFileParams {\n id: string;\n}\n\n/**\n * Deletes a file from the file manager.\n *\n * @param config - SDK configuration\n * @param fetchFn - Fetch function to use for HTTP requests\n * @param params - Parameters for deleting the file\n * @param params.id - ID of the file to delete\n * @returns Result containing true on success or an error\n */\nexport async function deleteFile(\n config: WebinyConfig,\n fetchFn: typeof fetch,\n params: DeleteFileParams\n): Promise<Result<boolean, HttpError | GraphQLError | NetworkError>> {\n const { id } = params;\n\n const { executeGraphQL } = await import(\"../executeGraphQL.js\");\n\n const query = `\n mutation DeleteFile($id: ID!) {\n fileManager {\n deleteFile(id: $id) {\n data\n error {\n message\n code\n }\n }\n }\n }\n `;\n\n const result = await executeGraphQL(config, fetchFn, query, { id });\n\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n const responseData = result.value;\n\n if (responseData.fileManager.deleteFile.error) {\n const { GraphQLError } = await import(\"../../errors.js\");\n return Result.fail(\n new GraphQLError(\n responseData.fileManager.deleteFile.error.message,\n responseData.fileManager.deleteFile.error.code\n )\n );\n }\n\n return Result.ok(responseData.fileManager.deleteFile.data);\n}\n"],"mappings":"AACA,SAASA,MAAM;AAOf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,UAAUA,CAC5BC,MAAoB,EACpBC,OAAqB,EACrBC,MAAwB,EACyC;EACjE,MAAM;IAAEC;EAAG,CAAC,GAAGD,MAAM;EAErB,MAAM;IAAEE;EAAe,CAAC,GAAG,MAAM,MAAM,uBAAuB,CAAC;EAE/D,MAAMC,KAAK,GAAG;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EAED,MAAMC,MAAM,GAAG,MAAMF,cAAc,CAACJ,MAAM,EAAEC,OAAO,EAAEI,KAAK,EAAE;IAAEF;EAAG,CAAC,CAAC;EAEnE,IAAIG,MAAM,CAACC,MAAM,CAAC,CAAC,EAAE;IACjB,OAAOT,MAAM,CAACU,IAAI,CAACF,MAAM,CAACG,KAAK,CAAC;EACpC;EAEA,MAAMC,YAAY,GAAGJ,MAAM,CAACK,KAAK;EAEjC,IAAID,YAAY,CAACE,WAAW,CAACb,UAAU,CAACU,KAAK,EAAE;IAC3C,MAAM;MAAEI;IAAa,CAAC,GAAG,MAAM,MAAM,kBAAkB,CAAC;IACxD,OAAOf,MAAM,CAACU,IAAI,CACd,IAAIK,YAAY,CACZH,YAAY,CAACE,WAAW,CAACb,UAAU,CAACU,KAAK,CAACK,OAAO,EACjDJ,YAAY,CAACE,WAAW,CAACb,UAAU,CAACU,KAAK,CAACM,IAC9C,CACJ,CAAC;EACL;EAEA,OAAOjB,MAAM,CAACkB,EAAE,CAACN,YAAY,CAACE,WAAW,CAACb,UAAU,CAACkB,IAAI,CAAC;AAC9D","ignoreList":[]}
1
+ {"version":3,"names":["Result","executeGraphQL","ApiError","deleteFile","config","fetchFn","params","id","query","result","isFail","fail","error","responseData","value","fileManager","message","code","ok","data"],"sources":["deleteFile.ts"],"sourcesContent":["import type { WebinyConfig } from \"../../types.js\";\nimport { Result } from \"../../Result.js\";\nimport type { HttpError, NetworkError } from \"../../errors.js\";\nimport { executeGraphQL } from \"../executeGraphQL.js\";\nimport { ApiError } from \"../../errors.js\";\n\nexport interface DeleteFileParams {\n id: string;\n}\n\n/**\n * Deletes a file from the file manager.\n *\n * @param config - SDK configuration\n * @param fetchFn - Fetch function to use for HTTP requests\n * @param params - Parameters for deleting the file\n * @param params.id - ID of the file to delete\n * @returns Result containing true on success or an error\n */\n// Not using createMethod: params are simple but no Zod schema exists; trivial to add if needed.\nexport async function deleteFile(\n config: WebinyConfig,\n fetchFn: typeof fetch,\n params: DeleteFileParams\n): Promise<Result<boolean, HttpError | ApiError | NetworkError>> {\n const { id } = params;\n\n const query = `\n mutation DeleteFile($id: ID!) {\n fileManager {\n deleteFile(id: $id) {\n data\n error {\n message\n code\n }\n }\n }\n }\n `;\n\n const result = await executeGraphQL(config, fetchFn, query, { id });\n\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n const responseData = result.value;\n\n if (responseData.fileManager.deleteFile.error) {\n return Result.fail(\n new ApiError(\n responseData.fileManager.deleteFile.error.message,\n responseData.fileManager.deleteFile.error.code\n )\n );\n }\n\n return Result.ok(responseData.fileManager.deleteFile.data);\n}\n"],"mappings":"AACA,SAASA,MAAM;AAEf,SAASC,cAAc;AACvB,SAASC,QAAQ;AAMjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,UAAUA,CAC5BC,MAAoB,EACpBC,OAAqB,EACrBC,MAAwB,EACqC;EAC7D,MAAM;IAAEC;EAAG,CAAC,GAAGD,MAAM;EAErB,MAAME,KAAK,GAAG;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EAED,MAAMC,MAAM,GAAG,MAAMR,cAAc,CAACG,MAAM,EAAEC,OAAO,EAAEG,KAAK,EAAE;IAAED;EAAG,CAAC,CAAC;EAEnE,IAAIE,MAAM,CAACC,MAAM,CAAC,CAAC,EAAE;IACjB,OAAOV,MAAM,CAACW,IAAI,CAACF,MAAM,CAACG,KAAK,CAAC;EACpC;EAEA,MAAMC,YAAY,GAAGJ,MAAM,CAACK,KAAK;EAEjC,IAAID,YAAY,CAACE,WAAW,CAACZ,UAAU,CAACS,KAAK,EAAE;IAC3C,OAAOZ,MAAM,CAACW,IAAI,CACd,IAAIT,QAAQ,CACRW,YAAY,CAACE,WAAW,CAACZ,UAAU,CAACS,KAAK,CAACI,OAAO,EACjDH,YAAY,CAACE,WAAW,CAACZ,UAAU,CAACS,KAAK,CAACK,IAC9C,CACJ,CAAC;EACL;EAEA,OAAOjB,MAAM,CAACkB,EAAE,CAACL,YAAY,CAACE,WAAW,CAACZ,UAAU,CAACgB,IAAI,CAAC;AAC9D","ignoreList":[]}
@@ -1,7 +1,7 @@
1
- import type { WebinyConfig } from "../../types.js";
2
1
  import { Result } from "../../Result.js";
3
- import type { HttpError, GraphQLError, NetworkError } from "../../errors.js";
2
+ import type { HttpError, NetworkError } from "../../errors.js";
4
3
  import type { FmFile } from "./fileManagerTypes.js";
4
+ import { ApiError } from "../../errors.js";
5
5
  export interface GetFileParams {
6
6
  id: string;
7
7
  fields: string[];
@@ -15,4 +15,4 @@ export interface GetFileParams {
15
15
  * @param params.id - ID of the file to get
16
16
  * @returns Result containing the file data or an error
17
17
  */
18
- export declare function getFile(config: WebinyConfig, fetchFn: typeof fetch, params: GetFileParams): Promise<Result<FmFile, HttpError | GraphQLError | NetworkError>>;
18
+ export declare const getFile: (config: import("../../types.js").WebinyConfig, fetchFn: typeof fetch, params: unknown) => Promise<Result<FmFile, HttpError | ApiError | NetworkError | import("../../errors.js").ValidationError>>;
@@ -1,5 +1,10 @@
1
1
  import { Result } from "../../Result.js";
2
2
  import { buildFieldsSelection } from "./buildFieldsSelection.js";
3
+ import { transformFieldErrors } from "../../utils/transformFieldErrors.js";
4
+ import { createMethod } from "../../utils/createMethod.js";
5
+ import { getFileSchema } from "./schemas.js";
6
+ import { executeGraphQL } from "../executeGraphQL.js";
7
+ import { ApiError } from "../../errors.js";
3
8
  /**
4
9
  * Gets a single file from the file manager.
5
10
  *
@@ -9,14 +14,11 @@ import { buildFieldsSelection } from "./buildFieldsSelection.js";
9
14
  * @param params.id - ID of the file to get
10
15
  * @returns Result containing the file data or an error
11
16
  */
12
- export async function getFile(config, fetchFn, params) {
17
+ export const getFile = createMethod(getFileSchema, async (config, fetchFn, params) => {
13
18
  const {
14
19
  id,
15
20
  fields
16
21
  } = params;
17
- const {
18
- executeGraphQL
19
- } = await import("../executeGraphQL.js");
20
22
  const fieldsSelection = buildFieldsSelection(fields);
21
23
  const query = `
22
24
  query GetFile($id: ID!) {
@@ -37,16 +39,17 @@ ${fieldsSelection}
37
39
  id
38
40
  });
39
41
  if (result.isFail()) {
40
- return Result.fail(result.error);
42
+ const error = result.error;
43
+ if (error instanceof ApiError) {
44
+ return Result.fail(new ApiError(transformFieldErrors(error.message, fields), error.data?.code));
45
+ }
46
+ return Result.fail(error);
41
47
  }
42
48
  const responseData = result.value;
43
49
  if (responseData.fileManager.getFile.error) {
44
- const {
45
- GraphQLError
46
- } = await import("../../errors.js");
47
- return Result.fail(new GraphQLError(responseData.fileManager.getFile.error.message, responseData.fileManager.getFile.error.code));
50
+ return Result.fail(new ApiError(responseData.fileManager.getFile.error.message, responseData.fileManager.getFile.error.code));
48
51
  }
49
52
  return Result.ok(responseData.fileManager.getFile.data);
50
- }
53
+ });
51
54
 
52
55
  //# sourceMappingURL=getFile.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","buildFieldsSelection","getFile","config","fetchFn","params","id","fields","executeGraphQL","fieldsSelection","query","result","isFail","fail","error","responseData","value","fileManager","GraphQLError","message","code","ok","data"],"sources":["getFile.ts"],"sourcesContent":["import type { WebinyConfig } from \"../../types.js\";\nimport { Result } from \"../../Result.js\";\nimport type { HttpError, GraphQLError, NetworkError } from \"../../errors.js\";\nimport type { FmFile } from \"./fileManagerTypes.js\";\nimport { buildFieldsSelection } from \"./buildFieldsSelection.js\";\n\nexport interface GetFileParams {\n id: string;\n fields: string[];\n}\n\n/**\n * Gets a single file from the file manager.\n *\n * @param config - SDK configuration\n * @param fetchFn - Fetch function to use for HTTP requests\n * @param params - Parameters for getting the file\n * @param params.id - ID of the file to get\n * @returns Result containing the file data or an error\n */\nexport async function getFile(\n config: WebinyConfig,\n fetchFn: typeof fetch,\n params: GetFileParams\n): Promise<Result<FmFile, HttpError | GraphQLError | NetworkError>> {\n const { id, fields } = params;\n\n const { executeGraphQL } = await import(\"../executeGraphQL.js\");\n\n const fieldsSelection = buildFieldsSelection(fields);\n\n const query = `\n query GetFile($id: ID!) {\n fileManager {\n getFile(id: $id) {\n data {\n${fieldsSelection}\n }\n error {\n message\n code\n }\n }\n }\n }\n `;\n\n const result = await executeGraphQL(config, fetchFn, query, { id });\n\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n const responseData = result.value;\n\n if (responseData.fileManager.getFile.error) {\n const { GraphQLError } = await import(\"../../errors.js\");\n return Result.fail(\n new GraphQLError(\n responseData.fileManager.getFile.error.message,\n responseData.fileManager.getFile.error.code\n )\n );\n }\n\n return Result.ok(responseData.fileManager.getFile.data);\n}\n"],"mappings":"AACA,SAASA,MAAM;AAGf,SAASC,oBAAoB;AAO7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,OAAOA,CACzBC,MAAoB,EACpBC,OAAqB,EACrBC,MAAqB,EAC2C;EAChE,MAAM;IAAEC,EAAE;IAAEC;EAAO,CAAC,GAAGF,MAAM;EAE7B,MAAM;IAAEG;EAAe,CAAC,GAAG,MAAM,MAAM,uBAAuB,CAAC;EAE/D,MAAMC,eAAe,GAAGR,oBAAoB,CAACM,MAAM,CAAC;EAEpD,MAAMG,KAAK,GAAG;AAClB;AACA;AACA;AACA;AACA,EAAED,eAAe;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EAED,MAAME,MAAM,GAAG,MAAMH,cAAc,CAACL,MAAM,EAAEC,OAAO,EAAEM,KAAK,EAAE;IAAEJ;EAAG,CAAC,CAAC;EAEnE,IAAIK,MAAM,CAACC,MAAM,CAAC,CAAC,EAAE;IACjB,OAAOZ,MAAM,CAACa,IAAI,CAACF,MAAM,CAACG,KAAK,CAAC;EACpC;EAEA,MAAMC,YAAY,GAAGJ,MAAM,CAACK,KAAK;EAEjC,IAAID,YAAY,CAACE,WAAW,CAACf,OAAO,CAACY,KAAK,EAAE;IACxC,MAAM;MAAEI;IAAa,CAAC,GAAG,MAAM,MAAM,kBAAkB,CAAC;IACxD,OAAOlB,MAAM,CAACa,IAAI,CACd,IAAIK,YAAY,CACZH,YAAY,CAACE,WAAW,CAACf,OAAO,CAACY,KAAK,CAACK,OAAO,EAC9CJ,YAAY,CAACE,WAAW,CAACf,OAAO,CAACY,KAAK,CAACM,IAC3C,CACJ,CAAC;EACL;EAEA,OAAOpB,MAAM,CAACqB,EAAE,CAACN,YAAY,CAACE,WAAW,CAACf,OAAO,CAACoB,IAAI,CAAC;AAC3D","ignoreList":[]}
1
+ {"version":3,"names":["Result","buildFieldsSelection","transformFieldErrors","createMethod","getFileSchema","executeGraphQL","ApiError","getFile","config","fetchFn","params","id","fields","fieldsSelection","query","result","isFail","error","fail","message","data","code","responseData","value","fileManager","ok"],"sources":["getFile.ts"],"sourcesContent":["import { Result } from \"../../Result.js\";\nimport type { HttpError, NetworkError } from \"../../errors.js\";\nimport type { FmFile } from \"./fileManagerTypes.js\";\nimport { buildFieldsSelection } from \"./buildFieldsSelection.js\";\nimport { transformFieldErrors } from \"../../utils/transformFieldErrors.js\";\nimport { createMethod } from \"../../utils/createMethod.js\";\nimport { getFileSchema } from \"./schemas.js\";\nimport { executeGraphQL } from \"../executeGraphQL.js\";\nimport { ApiError } from \"../../errors.js\";\n\nexport interface GetFileParams {\n id: string;\n fields: string[];\n}\n\n/**\n * Gets a single file from the file manager.\n *\n * @param config - SDK configuration\n * @param fetchFn - Fetch function to use for HTTP requests\n * @param params - Parameters for getting the file\n * @param params.id - ID of the file to get\n * @returns Result containing the file data or an error\n */\nexport const getFile = createMethod(\n getFileSchema,\n async (\n config,\n fetchFn,\n params\n ): Promise<Result<FmFile, HttpError | ApiError | NetworkError>> => {\n const { id, fields } = params;\n\n const fieldsSelection = buildFieldsSelection(fields);\n\n const query = `\n query GetFile($id: ID!) {\n fileManager {\n getFile(id: $id) {\n data {\n${fieldsSelection}\n }\n error {\n message\n code\n }\n }\n }\n }\n `;\n\n const result = await executeGraphQL(config, fetchFn, query, { id });\n\n if (result.isFail()) {\n const error = result.error;\n if (error instanceof ApiError) {\n return Result.fail(\n new ApiError(transformFieldErrors(error.message, fields), error.data?.code)\n );\n }\n return Result.fail(error);\n }\n\n const responseData = result.value;\n\n if (responseData.fileManager.getFile.error) {\n return Result.fail(\n new ApiError(\n responseData.fileManager.getFile.error.message,\n responseData.fileManager.getFile.error.code\n )\n );\n }\n\n return Result.ok(responseData.fileManager.getFile.data as FmFile);\n }\n);\n"],"mappings":"AAAA,SAASA,MAAM;AAGf,SAASC,oBAAoB;AAC7B,SAASC,oBAAoB;AAC7B,SAASC,YAAY;AACrB,SAASC,aAAa;AACtB,SAASC,cAAc;AACvB,SAASC,QAAQ;AAOjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,OAAO,GAAGJ,YAAY,CAC/BC,aAAa,EACb,OACII,MAAM,EACNC,OAAO,EACPC,MAAM,KACyD;EAC/D,MAAM;IAAEC,EAAE;IAAEC;EAAO,CAAC,GAAGF,MAAM;EAE7B,MAAMG,eAAe,GAAGZ,oBAAoB,CAACW,MAAM,CAAC;EAEpD,MAAME,KAAK,GAAG;AACtB;AACA;AACA;AACA;AACA,EAAED,eAAe;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EAEG,MAAME,MAAM,GAAG,MAAMV,cAAc,CAACG,MAAM,EAAEC,OAAO,EAAEK,KAAK,EAAE;IAAEH;EAAG,CAAC,CAAC;EAEnE,IAAII,MAAM,CAACC,MAAM,CAAC,CAAC,EAAE;IACjB,MAAMC,KAAK,GAAGF,MAAM,CAACE,KAAK;IAC1B,IAAIA,KAAK,YAAYX,QAAQ,EAAE;MAC3B,OAAON,MAAM,CAACkB,IAAI,CACd,IAAIZ,QAAQ,CAACJ,oBAAoB,CAACe,KAAK,CAACE,OAAO,EAAEP,MAAM,CAAC,EAAEK,KAAK,CAACG,IAAI,EAAEC,IAAI,CAC9E,CAAC;IACL;IACA,OAAOrB,MAAM,CAACkB,IAAI,CAACD,KAAK,CAAC;EAC7B;EAEA,MAAMK,YAAY,GAAGP,MAAM,CAACQ,KAAK;EAEjC,IAAID,YAAY,CAACE,WAAW,CAACjB,OAAO,CAACU,KAAK,EAAE;IACxC,OAAOjB,MAAM,CAACkB,IAAI,CACd,IAAIZ,QAAQ,CACRgB,YAAY,CAACE,WAAW,CAACjB,OAAO,CAACU,KAAK,CAACE,OAAO,EAC9CG,YAAY,CAACE,WAAW,CAACjB,OAAO,CAACU,KAAK,CAACI,IAC3C,CACJ,CAAC;EACL;EAEA,OAAOrB,MAAM,CAACyB,EAAE,CAACH,YAAY,CAACE,WAAW,CAACjB,OAAO,CAACa,IAAc,CAAC;AACrE,CACJ,CAAC","ignoreList":[]}
@@ -1,7 +1,8 @@
1
1
  import type { WebinyConfig } from "../../types.js";
2
2
  import { Result } from "../../Result.js";
3
- import type { HttpError, GraphQLError, NetworkError } from "../../errors.js";
3
+ import type { HttpError, NetworkError } from "../../errors.js";
4
4
  import type { PresignedPostPayloadResponse } from "./fileManagerTypes.js";
5
+ import { ApiError } from "../../errors.js";
5
6
  export interface GetPresignedPostPayloadParams {
6
7
  name: string;
7
8
  type: string;
@@ -22,4 +23,4 @@ export interface GetPresignedPostPayloadParams {
22
23
  * @param params.keyPrefix - Optional custom key prefix
23
24
  * @returns Result containing the presigned POST payload or an error
24
25
  */
25
- export declare function getPresignedPostPayload(config: WebinyConfig, fetchFn: typeof fetch, params: GetPresignedPostPayloadParams): Promise<Result<PresignedPostPayloadResponse, HttpError | GraphQLError | NetworkError>>;
26
+ export declare function getPresignedPostPayload(config: WebinyConfig, fetchFn: typeof fetch, params: GetPresignedPostPayloadParams): Promise<Result<PresignedPostPayloadResponse, HttpError | ApiError | NetworkError>>;
@@ -1,4 +1,6 @@
1
1
  import { Result } from "../../Result.js";
2
+ import { executeGraphQL } from "../executeGraphQL.js";
3
+ import { ApiError } from "../../errors.js";
2
4
  /**
3
5
  * Gets a presigned POST payload for uploading a file to S3.
4
6
  *
@@ -12,6 +14,7 @@ import { Result } from "../../Result.js";
12
14
  * @param params.keyPrefix - Optional custom key prefix
13
15
  * @returns Result containing the presigned POST payload or an error
14
16
  */
17
+ // Not using createMethod: simple params, no Zod schema defined for this method.
15
18
  export async function getPresignedPostPayload(config, fetchFn, params) {
16
19
  const {
17
20
  name,
@@ -20,9 +23,6 @@ export async function getPresignedPostPayload(config, fetchFn, params) {
20
23
  key,
21
24
  keyPrefix
22
25
  } = params;
23
- const {
24
- executeGraphQL
25
- } = await import("../executeGraphQL.js");
26
26
  const query = `
27
27
  query GetPreSignedPostPayload($data: PreSignedPostPayloadInput!) {
28
28
  fileManager {
@@ -59,10 +59,7 @@ export async function getPresignedPostPayload(config, fetchFn, params) {
59
59
  }
60
60
  const responseData = result.value;
61
61
  if (responseData.fileManager.getPreSignedPostPayload.error) {
62
- const {
63
- GraphQLError
64
- } = await import("../../errors.js");
65
- return Result.fail(new GraphQLError(responseData.fileManager.getPreSignedPostPayload.error.message, responseData.fileManager.getPreSignedPostPayload.error.code));
62
+ return Result.fail(new ApiError(responseData.fileManager.getPreSignedPostPayload.error.message, responseData.fileManager.getPreSignedPostPayload.error.code));
66
63
  }
67
64
  return Result.ok(responseData.fileManager.getPreSignedPostPayload.data);
68
65
  }
@@ -1 +1 @@
1
- {"version":3,"names":["Result","getPresignedPostPayload","config","fetchFn","params","name","type","size","key","keyPrefix","executeGraphQL","query","result","data","isFail","fail","error","responseData","value","fileManager","getPreSignedPostPayload","GraphQLError","message","code","ok"],"sources":["getPresignedPostPayload.ts"],"sourcesContent":["import type { WebinyConfig } from \"../../types.js\";\nimport { Result } from \"../../Result.js\";\nimport type { HttpError, GraphQLError, NetworkError } from \"../../errors.js\";\nimport type { PresignedPostPayloadResponse } from \"./fileManagerTypes.js\";\n\nexport interface GetPresignedPostPayloadParams {\n name: string;\n type: string;\n size: number;\n key?: string;\n keyPrefix?: string;\n}\n\n/**\n * Gets a presigned POST payload for uploading a file to S3.\n *\n * @param config - SDK configuration\n * @param fetchFn - Fetch function to use for HTTP requests\n * @param params - Parameters for getting the presigned POST payload\n * @param params.name - File name\n * @param params.type - File MIME type\n * @param params.size - File size in bytes\n * @param params.key - Optional custom S3 key\n * @param params.keyPrefix - Optional custom key prefix\n * @returns Result containing the presigned POST payload or an error\n */\nexport async function getPresignedPostPayload(\n config: WebinyConfig,\n fetchFn: typeof fetch,\n params: GetPresignedPostPayloadParams\n): Promise<Result<PresignedPostPayloadResponse, HttpError | GraphQLError | NetworkError>> {\n const { name, type, size, key, keyPrefix } = params;\n\n const { executeGraphQL } = await import(\"../executeGraphQL.js\");\n\n const query = `\n query GetPreSignedPostPayload($data: PreSignedPostPayloadInput!) {\n fileManager {\n getPreSignedPostPayload(data: $data) {\n data {\n data\n file {\n id\n name\n type\n size\n key\n }\n }\n error {\n message\n code\n }\n }\n }\n }\n `;\n\n const result = await executeGraphQL(config, fetchFn, query, {\n data: { name, type, size, key, keyPrefix }\n });\n\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n const responseData = result.value;\n\n if (responseData.fileManager.getPreSignedPostPayload.error) {\n const { GraphQLError } = await import(\"../../errors.js\");\n return Result.fail(\n new GraphQLError(\n responseData.fileManager.getPreSignedPostPayload.error.message,\n responseData.fileManager.getPreSignedPostPayload.error.code\n )\n );\n }\n\n return Result.ok(responseData.fileManager.getPreSignedPostPayload.data);\n}\n"],"mappings":"AACA,SAASA,MAAM;AAYf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,uBAAuBA,CACzCC,MAAoB,EACpBC,OAAqB,EACrBC,MAAqC,EACiD;EACtF,MAAM;IAAEC,IAAI;IAAEC,IAAI;IAAEC,IAAI;IAAEC,GAAG;IAAEC;EAAU,CAAC,GAAGL,MAAM;EAEnD,MAAM;IAAEM;EAAe,CAAC,GAAG,MAAM,MAAM,uBAAuB,CAAC;EAE/D,MAAMC,KAAK,GAAG;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EAED,MAAMC,MAAM,GAAG,MAAMF,cAAc,CAACR,MAAM,EAAEC,OAAO,EAAEQ,KAAK,EAAE;IACxDE,IAAI,EAAE;MAAER,IAAI;MAAEC,IAAI;MAAEC,IAAI;MAAEC,GAAG;MAAEC;IAAU;EAC7C,CAAC,CAAC;EAEF,IAAIG,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;IACjB,OAAOd,MAAM,CAACe,IAAI,CAACH,MAAM,CAACI,KAAK,CAAC;EACpC;EAEA,MAAMC,YAAY,GAAGL,MAAM,CAACM,KAAK;EAEjC,IAAID,YAAY,CAACE,WAAW,CAACC,uBAAuB,CAACJ,KAAK,EAAE;IACxD,MAAM;MAAEK;IAAa,CAAC,GAAG,MAAM,MAAM,kBAAkB,CAAC;IACxD,OAAOrB,MAAM,CAACe,IAAI,CACd,IAAIM,YAAY,CACZJ,YAAY,CAACE,WAAW,CAACC,uBAAuB,CAACJ,KAAK,CAACM,OAAO,EAC9DL,YAAY,CAACE,WAAW,CAACC,uBAAuB,CAACJ,KAAK,CAACO,IAC3D,CACJ,CAAC;EACL;EAEA,OAAOvB,MAAM,CAACwB,EAAE,CAACP,YAAY,CAACE,WAAW,CAACC,uBAAuB,CAACP,IAAI,CAAC;AAC3E","ignoreList":[]}
1
+ {"version":3,"names":["Result","executeGraphQL","ApiError","getPresignedPostPayload","config","fetchFn","params","name","type","size","key","keyPrefix","query","result","data","isFail","fail","error","responseData","value","fileManager","getPreSignedPostPayload","message","code","ok"],"sources":["getPresignedPostPayload.ts"],"sourcesContent":["import type { WebinyConfig } from \"../../types.js\";\nimport { Result } from \"../../Result.js\";\nimport type { HttpError, NetworkError } from \"../../errors.js\";\nimport type { PresignedPostPayloadResponse } from \"./fileManagerTypes.js\";\nimport { executeGraphQL } from \"../executeGraphQL.js\";\nimport { ApiError } from \"../../errors.js\";\n\nexport interface GetPresignedPostPayloadParams {\n name: string;\n type: string;\n size: number;\n key?: string;\n keyPrefix?: string;\n}\n\n/**\n * Gets a presigned POST payload for uploading a file to S3.\n *\n * @param config - SDK configuration\n * @param fetchFn - Fetch function to use for HTTP requests\n * @param params - Parameters for getting the presigned POST payload\n * @param params.name - File name\n * @param params.type - File MIME type\n * @param params.size - File size in bytes\n * @param params.key - Optional custom S3 key\n * @param params.keyPrefix - Optional custom key prefix\n * @returns Result containing the presigned POST payload or an error\n */\n// Not using createMethod: simple params, no Zod schema defined for this method.\nexport async function getPresignedPostPayload(\n config: WebinyConfig,\n fetchFn: typeof fetch,\n params: GetPresignedPostPayloadParams\n): Promise<Result<PresignedPostPayloadResponse, HttpError | ApiError | NetworkError>> {\n const { name, type, size, key, keyPrefix } = params;\n\n const query = `\n query GetPreSignedPostPayload($data: PreSignedPostPayloadInput!) {\n fileManager {\n getPreSignedPostPayload(data: $data) {\n data {\n data\n file {\n id\n name\n type\n size\n key\n }\n }\n error {\n message\n code\n }\n }\n }\n }\n `;\n\n const result = await executeGraphQL(config, fetchFn, query, {\n data: { name, type, size, key, keyPrefix }\n });\n\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n const responseData = result.value;\n\n if (responseData.fileManager.getPreSignedPostPayload.error) {\n return Result.fail(\n new ApiError(\n responseData.fileManager.getPreSignedPostPayload.error.message,\n responseData.fileManager.getPreSignedPostPayload.error.code\n )\n );\n }\n\n return Result.ok(responseData.fileManager.getPreSignedPostPayload.data);\n}\n"],"mappings":"AACA,SAASA,MAAM;AAGf,SAASC,cAAc;AACvB,SAASC,QAAQ;AAUjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,uBAAuBA,CACzCC,MAAoB,EACpBC,OAAqB,EACrBC,MAAqC,EAC6C;EAClF,MAAM;IAAEC,IAAI;IAAEC,IAAI;IAAEC,IAAI;IAAEC,GAAG;IAAEC;EAAU,CAAC,GAAGL,MAAM;EAEnD,MAAMM,KAAK,GAAG;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EAED,MAAMC,MAAM,GAAG,MAAMZ,cAAc,CAACG,MAAM,EAAEC,OAAO,EAAEO,KAAK,EAAE;IACxDE,IAAI,EAAE;MAAEP,IAAI;MAAEC,IAAI;MAAEC,IAAI;MAAEC,GAAG;MAAEC;IAAU;EAC7C,CAAC,CAAC;EAEF,IAAIE,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;IACjB,OAAOf,MAAM,CAACgB,IAAI,CAACH,MAAM,CAACI,KAAK,CAAC;EACpC;EAEA,MAAMC,YAAY,GAAGL,MAAM,CAACM,KAAK;EAEjC,IAAID,YAAY,CAACE,WAAW,CAACC,uBAAuB,CAACJ,KAAK,EAAE;IACxD,OAAOjB,MAAM,CAACgB,IAAI,CACd,IAAId,QAAQ,CACRgB,YAAY,CAACE,WAAW,CAACC,uBAAuB,CAACJ,KAAK,CAACK,OAAO,EAC9DJ,YAAY,CAACE,WAAW,CAACC,uBAAuB,CAACJ,KAAK,CAACM,IAC3D,CACJ,CAAC;EACL;EAEA,OAAOvB,MAAM,CAACwB,EAAE,CAACN,YAAY,CAACE,WAAW,CAACC,uBAAuB,CAACP,IAAI,CAAC;AAC3E","ignoreList":[]}
@@ -1,8 +1,9 @@
1
1
  import type { WebinyConfig } from "../../types.js";
2
2
  import { Result } from "../../Result.js";
3
- import type { HttpError, GraphQLError, NetworkError } from "../../errors.js";
3
+ import type { HttpError, NetworkError } from "../../errors.js";
4
4
  import type { PresignedPostPayloadResponse } from "./fileManagerTypes.js";
5
5
  import type { GetPresignedPostPayloadParams } from "./getPresignedPostPayload.js";
6
+ import { ApiError } from "../../errors.js";
6
7
  export interface GetPresignedPostPayloadsParams {
7
8
  files: GetPresignedPostPayloadParams[];
8
9
  }
@@ -15,4 +16,4 @@ export interface GetPresignedPostPayloadsParams {
15
16
  * @param params.files - Array of file metadata for which to get presigned POST payloads
16
17
  * @returns Result containing the presigned POST payloads or an error
17
18
  */
18
- export declare function getPresignedPostPayloads(config: WebinyConfig, fetchFn: typeof fetch, params: GetPresignedPostPayloadsParams): Promise<Result<PresignedPostPayloadResponse[], HttpError | GraphQLError | NetworkError>>;
19
+ export declare function getPresignedPostPayloads(config: WebinyConfig, fetchFn: typeof fetch, params: GetPresignedPostPayloadsParams): Promise<Result<PresignedPostPayloadResponse[], HttpError | ApiError | NetworkError>>;
@@ -1,4 +1,6 @@
1
1
  import { Result } from "../../Result.js";
2
+ import { executeGraphQL } from "../executeGraphQL.js";
3
+ import { ApiError } from "../../errors.js";
2
4
  /**
3
5
  * Gets presigned POST payloads for uploading multiple files to S3.
4
6
  *
@@ -8,13 +10,11 @@ import { Result } from "../../Result.js";
8
10
  * @param params.files - Array of file metadata for which to get presigned POST payloads
9
11
  * @returns Result containing the presigned POST payloads or an error
10
12
  */
13
+ // Not using createMethod: simple params, no Zod schema defined for this method.
11
14
  export async function getPresignedPostPayloads(config, fetchFn, params) {
12
15
  const {
13
16
  files
14
17
  } = params;
15
- const {
16
- executeGraphQL
17
- } = await import("../executeGraphQL.js");
18
18
  const query = `
19
19
  query GetPreSignedPostPayloads($data: [PreSignedPostPayloadInput]!) {
20
20
  fileManager {
@@ -51,10 +51,7 @@ export async function getPresignedPostPayloads(config, fetchFn, params) {
51
51
  }
52
52
  const responseData = result.value;
53
53
  if (responseData.fileManager.getPreSignedPostPayloads.error) {
54
- const {
55
- GraphQLError
56
- } = await import("../../errors.js");
57
- return Result.fail(new GraphQLError(responseData.fileManager.getPreSignedPostPayloads.error.message, responseData.fileManager.getPreSignedPostPayloads.error.code));
54
+ return Result.fail(new ApiError(responseData.fileManager.getPreSignedPostPayloads.error.message, responseData.fileManager.getPreSignedPostPayloads.error.code));
58
55
  }
59
56
  return Result.ok(responseData.fileManager.getPreSignedPostPayloads.data);
60
57
  }
@@ -1 +1 @@
1
- {"version":3,"names":["Result","getPresignedPostPayloads","config","fetchFn","params","files","executeGraphQL","query","result","data","map","f","name","type","size","key","keyPrefix","isFail","fail","error","responseData","value","fileManager","getPreSignedPostPayloads","GraphQLError","message","code","ok"],"sources":["getPresignedPostPayloads.ts"],"sourcesContent":["import type { WebinyConfig } from \"../../types.js\";\nimport { Result } from \"../../Result.js\";\nimport type { HttpError, GraphQLError, NetworkError } from \"../../errors.js\";\nimport type { PresignedPostPayloadResponse } from \"./fileManagerTypes.js\";\nimport type { GetPresignedPostPayloadParams } from \"./getPresignedPostPayload.js\";\n\nexport interface GetPresignedPostPayloadsParams {\n files: GetPresignedPostPayloadParams[];\n}\n\n/**\n * Gets presigned POST payloads for uploading multiple files to S3.\n *\n * @param config - SDK configuration\n * @param fetchFn - Fetch function to use for HTTP requests\n * @param params - Parameters for getting the presigned POST payloads\n * @param params.files - Array of file metadata for which to get presigned POST payloads\n * @returns Result containing the presigned POST payloads or an error\n */\nexport async function getPresignedPostPayloads(\n config: WebinyConfig,\n fetchFn: typeof fetch,\n params: GetPresignedPostPayloadsParams\n): Promise<Result<PresignedPostPayloadResponse[], HttpError | GraphQLError | NetworkError>> {\n const { files } = params;\n\n const { executeGraphQL } = await import(\"../executeGraphQL.js\");\n\n const query = `\n query GetPreSignedPostPayloads($data: [PreSignedPostPayloadInput]!) {\n fileManager {\n getPreSignedPostPayloads(data: $data) {\n data {\n data\n file {\n id\n name\n type\n size\n key\n }\n }\n error {\n message\n code\n }\n }\n }\n }\n `;\n\n const result = await executeGraphQL(config, fetchFn, query, {\n data: files.map(f => ({\n name: f.name,\n type: f.type,\n size: f.size,\n key: f.key,\n keyPrefix: f.keyPrefix\n }))\n });\n\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n const responseData = result.value;\n\n if (responseData.fileManager.getPreSignedPostPayloads.error) {\n const { GraphQLError } = await import(\"../../errors.js\");\n return Result.fail(\n new GraphQLError(\n responseData.fileManager.getPreSignedPostPayloads.error.message,\n responseData.fileManager.getPreSignedPostPayloads.error.code\n )\n );\n }\n\n return Result.ok(responseData.fileManager.getPreSignedPostPayloads.data);\n}\n"],"mappings":"AACA,SAASA,MAAM;AASf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,wBAAwBA,CAC1CC,MAAoB,EACpBC,OAAqB,EACrBC,MAAsC,EACkD;EACxF,MAAM;IAAEC;EAAM,CAAC,GAAGD,MAAM;EAExB,MAAM;IAAEE;EAAe,CAAC,GAAG,MAAM,MAAM,uBAAuB,CAAC;EAE/D,MAAMC,KAAK,GAAG;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EAED,MAAMC,MAAM,GAAG,MAAMF,cAAc,CAACJ,MAAM,EAAEC,OAAO,EAAEI,KAAK,EAAE;IACxDE,IAAI,EAAEJ,KAAK,CAACK,GAAG,CAACC,CAAC,KAAK;MAClBC,IAAI,EAAED,CAAC,CAACC,IAAI;MACZC,IAAI,EAAEF,CAAC,CAACE,IAAI;MACZC,IAAI,EAAEH,CAAC,CAACG,IAAI;MACZC,GAAG,EAAEJ,CAAC,CAACI,GAAG;MACVC,SAAS,EAAEL,CAAC,CAACK;IACjB,CAAC,CAAC;EACN,CAAC,CAAC;EAEF,IAAIR,MAAM,CAACS,MAAM,CAAC,CAAC,EAAE;IACjB,OAAOjB,MAAM,CAACkB,IAAI,CAACV,MAAM,CAACW,KAAK,CAAC;EACpC;EAEA,MAAMC,YAAY,GAAGZ,MAAM,CAACa,KAAK;EAEjC,IAAID,YAAY,CAACE,WAAW,CAACC,wBAAwB,CAACJ,KAAK,EAAE;IACzD,MAAM;MAAEK;IAAa,CAAC,GAAG,MAAM,MAAM,kBAAkB,CAAC;IACxD,OAAOxB,MAAM,CAACkB,IAAI,CACd,IAAIM,YAAY,CACZJ,YAAY,CAACE,WAAW,CAACC,wBAAwB,CAACJ,KAAK,CAACM,OAAO,EAC/DL,YAAY,CAACE,WAAW,CAACC,wBAAwB,CAACJ,KAAK,CAACO,IAC5D,CACJ,CAAC;EACL;EAEA,OAAO1B,MAAM,CAAC2B,EAAE,CAACP,YAAY,CAACE,WAAW,CAACC,wBAAwB,CAACd,IAAI,CAAC;AAC5E","ignoreList":[]}
1
+ {"version":3,"names":["Result","executeGraphQL","ApiError","getPresignedPostPayloads","config","fetchFn","params","files","query","result","data","map","f","name","type","size","key","keyPrefix","isFail","fail","error","responseData","value","fileManager","getPreSignedPostPayloads","message","code","ok"],"sources":["getPresignedPostPayloads.ts"],"sourcesContent":["import type { WebinyConfig } from \"../../types.js\";\nimport { Result } from \"../../Result.js\";\nimport type { HttpError, NetworkError } from \"../../errors.js\";\nimport type { PresignedPostPayloadResponse } from \"./fileManagerTypes.js\";\nimport type { GetPresignedPostPayloadParams } from \"./getPresignedPostPayload.js\";\nimport { executeGraphQL } from \"../executeGraphQL.js\";\nimport { ApiError } from \"../../errors.js\";\n\nexport interface GetPresignedPostPayloadsParams {\n files: GetPresignedPostPayloadParams[];\n}\n\n/**\n * Gets presigned POST payloads for uploading multiple files to S3.\n *\n * @param config - SDK configuration\n * @param fetchFn - Fetch function to use for HTTP requests\n * @param params - Parameters for getting the presigned POST payloads\n * @param params.files - Array of file metadata for which to get presigned POST payloads\n * @returns Result containing the presigned POST payloads or an error\n */\n// Not using createMethod: simple params, no Zod schema defined for this method.\nexport async function getPresignedPostPayloads(\n config: WebinyConfig,\n fetchFn: typeof fetch,\n params: GetPresignedPostPayloadsParams\n): Promise<Result<PresignedPostPayloadResponse[], HttpError | ApiError | NetworkError>> {\n const { files } = params;\n\n const query = `\n query GetPreSignedPostPayloads($data: [PreSignedPostPayloadInput]!) {\n fileManager {\n getPreSignedPostPayloads(data: $data) {\n data {\n data\n file {\n id\n name\n type\n size\n key\n }\n }\n error {\n message\n code\n }\n }\n }\n }\n `;\n\n const result = await executeGraphQL(config, fetchFn, query, {\n data: files.map(f => ({\n name: f.name,\n type: f.type,\n size: f.size,\n key: f.key,\n keyPrefix: f.keyPrefix\n }))\n });\n\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n const responseData = result.value;\n\n if (responseData.fileManager.getPreSignedPostPayloads.error) {\n return Result.fail(\n new ApiError(\n responseData.fileManager.getPreSignedPostPayloads.error.message,\n responseData.fileManager.getPreSignedPostPayloads.error.code\n )\n );\n }\n\n return Result.ok(responseData.fileManager.getPreSignedPostPayloads.data);\n}\n"],"mappings":"AACA,SAASA,MAAM;AAIf,SAASC,cAAc;AACvB,SAASC,QAAQ;AAMjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,wBAAwBA,CAC1CC,MAAoB,EACpBC,OAAqB,EACrBC,MAAsC,EAC8C;EACpF,MAAM;IAAEC;EAAM,CAAC,GAAGD,MAAM;EAExB,MAAME,KAAK,GAAG;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EAED,MAAMC,MAAM,GAAG,MAAMR,cAAc,CAACG,MAAM,EAAEC,OAAO,EAAEG,KAAK,EAAE;IACxDE,IAAI,EAAEH,KAAK,CAACI,GAAG,CAACC,CAAC,KAAK;MAClBC,IAAI,EAAED,CAAC,CAACC,IAAI;MACZC,IAAI,EAAEF,CAAC,CAACE,IAAI;MACZC,IAAI,EAAEH,CAAC,CAACG,IAAI;MACZC,GAAG,EAAEJ,CAAC,CAACI,GAAG;MACVC,SAAS,EAAEL,CAAC,CAACK;IACjB,CAAC,CAAC;EACN,CAAC,CAAC;EAEF,IAAIR,MAAM,CAACS,MAAM,CAAC,CAAC,EAAE;IACjB,OAAOlB,MAAM,CAACmB,IAAI,CAACV,MAAM,CAACW,KAAK,CAAC;EACpC;EAEA,MAAMC,YAAY,GAAGZ,MAAM,CAACa,KAAK;EAEjC,IAAID,YAAY,CAACE,WAAW,CAACC,wBAAwB,CAACJ,KAAK,EAAE;IACzD,OAAOpB,MAAM,CAACmB,IAAI,CACd,IAAIjB,QAAQ,CACRmB,YAAY,CAACE,WAAW,CAACC,wBAAwB,CAACJ,KAAK,CAACK,OAAO,EAC/DJ,YAAY,CAACE,WAAW,CAACC,wBAAwB,CAACJ,KAAK,CAACM,IAC5D,CACJ,CAAC;EACL;EAEA,OAAO1B,MAAM,CAAC2B,EAAE,CAACN,YAAY,CAACE,WAAW,CAACC,wBAAwB,CAACd,IAAI,CAAC;AAC5E","ignoreList":[]}
@@ -1,7 +1,7 @@
1
- import type { WebinyConfig } from "../../types.js";
2
1
  import { Result } from "../../Result.js";
3
- import type { HttpError, GraphQLError, NetworkError } from "../../errors.js";
2
+ import type { HttpError, NetworkError } from "../../errors.js";
4
3
  import type { FmFile, FmFileListWhereInput, FmFileListSorter, FmListMeta } from "./fileManagerTypes.js";
4
+ import { ApiError } from "../../errors.js";
5
5
  export interface ListFilesParams {
6
6
  search?: string;
7
7
  where?: FmFileListWhereInput;
@@ -27,4 +27,4 @@ export interface ListFilesResult {
27
27
  * @param params.sort - Sort order
28
28
  * @returns Result containing the list of files or an error
29
29
  */
30
- export declare function listFiles(config: WebinyConfig, fetchFn: typeof fetch, params: ListFilesParams): Promise<Result<ListFilesResult, HttpError | GraphQLError | NetworkError>>;
30
+ export declare const listFiles: (config: import("../../types.js").WebinyConfig, fetchFn: typeof fetch, params: unknown) => Promise<Result<ListFilesResult, HttpError | ApiError | NetworkError | import("../../errors.js").ValidationError>>;
@@ -1,5 +1,10 @@
1
1
  import { Result } from "../../Result.js";
2
2
  import { buildFieldsSelection } from "./buildFieldsSelection.js";
3
+ import { transformFieldErrors } from "../../utils/transformFieldErrors.js";
4
+ import { createMethod } from "../../utils/createMethod.js";
5
+ import { listFilesSchema } from "./schemas.js";
6
+ import { executeGraphQL } from "../executeGraphQL.js";
7
+ import { ApiError } from "../../errors.js";
3
8
  /**
4
9
  * Lists files from the file manager.
5
10
  *
@@ -13,7 +18,7 @@ import { buildFieldsSelection } from "./buildFieldsSelection.js";
13
18
  * @param params.sort - Sort order
14
19
  * @returns Result containing the list of files or an error
15
20
  */
16
- export async function listFiles(config, fetchFn, params) {
21
+ export const listFiles = createMethod(listFilesSchema, async (config, fetchFn, params) => {
17
22
  const {
18
23
  search,
19
24
  where,
@@ -22,9 +27,6 @@ export async function listFiles(config, fetchFn, params) {
22
27
  sort,
23
28
  fields
24
29
  } = params;
25
- const {
26
- executeGraphQL
27
- } = await import("../executeGraphQL.js");
28
30
  const fieldsSelection = buildFieldsSelection(fields);
29
31
  const query = `
30
32
  query ListFiles($search: String, $where: FmFileListWhereInput, $limit: Int, $after: String, $sort: [FmFileListSorter!]) {
@@ -54,19 +56,20 @@ ${fieldsSelection}
54
56
  sort
55
57
  });
56
58
  if (result.isFail()) {
57
- return Result.fail(result.error);
59
+ const error = result.error;
60
+ if (error instanceof ApiError) {
61
+ return Result.fail(new ApiError(transformFieldErrors(error.message, fields), error.data?.code));
62
+ }
63
+ return Result.fail(error);
58
64
  }
59
65
  const responseData = result.value;
60
66
  if (responseData.fileManager.listFiles.error) {
61
- const {
62
- GraphQLError
63
- } = await import("../../errors.js");
64
- return Result.fail(new GraphQLError(responseData.fileManager.listFiles.error.message, responseData.fileManager.listFiles.error.code));
67
+ return Result.fail(new ApiError(responseData.fileManager.listFiles.error.message, responseData.fileManager.listFiles.error.code));
65
68
  }
66
69
  return Result.ok({
67
70
  data: responseData.fileManager.listFiles.data,
68
71
  meta: responseData.fileManager.listFiles.meta
69
72
  });
70
- }
73
+ });
71
74
 
72
75
  //# sourceMappingURL=listFiles.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","buildFieldsSelection","listFiles","config","fetchFn","params","search","where","limit","after","sort","fields","executeGraphQL","fieldsSelection","query","result","isFail","fail","error","responseData","value","fileManager","GraphQLError","message","code","ok","data","meta"],"sources":["listFiles.ts"],"sourcesContent":["import type { WebinyConfig } from \"../../types.js\";\nimport { Result } from \"../../Result.js\";\nimport type { HttpError, GraphQLError, NetworkError } from \"../../errors.js\";\nimport type {\n FmFile,\n FmFileListWhereInput,\n FmFileListSorter,\n FmListMeta\n} from \"./fileManagerTypes.js\";\nimport { buildFieldsSelection } from \"./buildFieldsSelection.js\";\n\nexport interface ListFilesParams {\n search?: string;\n where?: FmFileListWhereInput;\n limit?: number;\n after?: string;\n sort?: FmFileListSorter[];\n fields: string[];\n}\n\nexport interface ListFilesResult {\n data: FmFile[];\n meta: FmListMeta;\n}\n\n/**\n * Lists files from the file manager.\n *\n * @param config - SDK configuration\n * @param fetchFn - Fetch function to use for HTTP requests\n * @param params - Parameters for listing files\n * @param params.search - Search query\n * @param params.where - Filter conditions\n * @param params.limit - Maximum number of items to return\n * @param params.after - Cursor for pagination\n * @param params.sort - Sort order\n * @returns Result containing the list of files or an error\n */\nexport async function listFiles(\n config: WebinyConfig,\n fetchFn: typeof fetch,\n params: ListFilesParams\n): Promise<Result<ListFilesResult, HttpError | GraphQLError | NetworkError>> {\n const { search, where, limit, after, sort, fields } = params;\n\n const { executeGraphQL } = await import(\"../executeGraphQL.js\");\n\n const fieldsSelection = buildFieldsSelection(fields);\n\n const query = `\n query ListFiles($search: String, $where: FmFileListWhereInput, $limit: Int, $after: String, $sort: [FmFileListSorter!]) {\n fileManager {\n listFiles(search: $search, where: $where, limit: $limit, after: $after, sort: $sort) {\n data {\n${fieldsSelection}\n }\n meta {\n cursor\n hasMoreItems\n totalCount\n }\n error {\n message\n code\n }\n }\n }\n }\n `;\n\n const result = await executeGraphQL(config, fetchFn, query, {\n search,\n where,\n limit,\n after,\n sort\n });\n\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n const responseData = result.value;\n\n if (responseData.fileManager.listFiles.error) {\n const { GraphQLError } = await import(\"../../errors.js\");\n return Result.fail(\n new GraphQLError(\n responseData.fileManager.listFiles.error.message,\n responseData.fileManager.listFiles.error.code\n )\n );\n }\n\n return Result.ok({\n data: responseData.fileManager.listFiles.data,\n meta: responseData.fileManager.listFiles.meta\n });\n}\n"],"mappings":"AACA,SAASA,MAAM;AAQf,SAASC,oBAAoB;AAgB7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,SAASA,CAC3BC,MAAoB,EACpBC,OAAqB,EACrBC,MAAuB,EACkD;EACzE,MAAM;IAAEC,MAAM;IAAEC,KAAK;IAAEC,KAAK;IAAEC,KAAK;IAAEC,IAAI;IAAEC;EAAO,CAAC,GAAGN,MAAM;EAE5D,MAAM;IAAEO;EAAe,CAAC,GAAG,MAAM,MAAM,uBAAuB,CAAC;EAE/D,MAAMC,eAAe,GAAGZ,oBAAoB,CAACU,MAAM,CAAC;EAEpD,MAAMG,KAAK,GAAG;AAClB;AACA;AACA;AACA;AACA,EAAED,eAAe;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EAED,MAAME,MAAM,GAAG,MAAMH,cAAc,CAACT,MAAM,EAAEC,OAAO,EAAEU,KAAK,EAAE;IACxDR,MAAM;IACNC,KAAK;IACLC,KAAK;IACLC,KAAK;IACLC;EACJ,CAAC,CAAC;EAEF,IAAIK,MAAM,CAACC,MAAM,CAAC,CAAC,EAAE;IACjB,OAAOhB,MAAM,CAACiB,IAAI,CAACF,MAAM,CAACG,KAAK,CAAC;EACpC;EAEA,MAAMC,YAAY,GAAGJ,MAAM,CAACK,KAAK;EAEjC,IAAID,YAAY,CAACE,WAAW,CAACnB,SAAS,CAACgB,KAAK,EAAE;IAC1C,MAAM;MAAEI;IAAa,CAAC,GAAG,MAAM,MAAM,kBAAkB,CAAC;IACxD,OAAOtB,MAAM,CAACiB,IAAI,CACd,IAAIK,YAAY,CACZH,YAAY,CAACE,WAAW,CAACnB,SAAS,CAACgB,KAAK,CAACK,OAAO,EAChDJ,YAAY,CAACE,WAAW,CAACnB,SAAS,CAACgB,KAAK,CAACM,IAC7C,CACJ,CAAC;EACL;EAEA,OAAOxB,MAAM,CAACyB,EAAE,CAAC;IACbC,IAAI,EAAEP,YAAY,CAACE,WAAW,CAACnB,SAAS,CAACwB,IAAI;IAC7CC,IAAI,EAAER,YAAY,CAACE,WAAW,CAACnB,SAAS,CAACyB;EAC7C,CAAC,CAAC;AACN","ignoreList":[]}
1
+ {"version":3,"names":["Result","buildFieldsSelection","transformFieldErrors","createMethod","listFilesSchema","executeGraphQL","ApiError","listFiles","config","fetchFn","params","search","where","limit","after","sort","fields","fieldsSelection","query","result","isFail","error","fail","message","data","code","responseData","value","fileManager","ok","meta"],"sources":["listFiles.ts"],"sourcesContent":["import { Result } from \"../../Result.js\";\nimport type { HttpError, NetworkError } from \"../../errors.js\";\nimport type {\n FmFile,\n FmFileListWhereInput,\n FmFileListSorter,\n FmListMeta\n} from \"./fileManagerTypes.js\";\nimport { buildFieldsSelection } from \"./buildFieldsSelection.js\";\nimport { transformFieldErrors } from \"../../utils/transformFieldErrors.js\";\nimport { createMethod } from \"../../utils/createMethod.js\";\nimport { listFilesSchema } from \"./schemas.js\";\nimport { executeGraphQL } from \"../executeGraphQL.js\";\nimport { ApiError } from \"../../errors.js\";\n\nexport interface ListFilesParams {\n search?: string;\n where?: FmFileListWhereInput;\n limit?: number;\n after?: string;\n sort?: FmFileListSorter[];\n fields: string[];\n}\n\nexport interface ListFilesResult {\n data: FmFile[];\n meta: FmListMeta;\n}\n\n/**\n * Lists files from the file manager.\n *\n * @param config - SDK configuration\n * @param fetchFn - Fetch function to use for HTTP requests\n * @param params - Parameters for listing files\n * @param params.search - Search query\n * @param params.where - Filter conditions\n * @param params.limit - Maximum number of items to return\n * @param params.after - Cursor for pagination\n * @param params.sort - Sort order\n * @returns Result containing the list of files or an error\n */\nexport const listFiles = createMethod(\n listFilesSchema,\n async (\n config,\n fetchFn,\n params\n ): Promise<Result<ListFilesResult, HttpError | ApiError | NetworkError>> => {\n const { search, where, limit, after, sort, fields } = params;\n\n const fieldsSelection = buildFieldsSelection(fields);\n\n const query = `\n query ListFiles($search: String, $where: FmFileListWhereInput, $limit: Int, $after: String, $sort: [FmFileListSorter!]) {\n fileManager {\n listFiles(search: $search, where: $where, limit: $limit, after: $after, sort: $sort) {\n data {\n${fieldsSelection}\n }\n meta {\n cursor\n hasMoreItems\n totalCount\n }\n error {\n message\n code\n }\n }\n }\n }\n `;\n\n const result = await executeGraphQL(config, fetchFn, query, {\n search,\n where,\n limit,\n after,\n sort\n });\n\n if (result.isFail()) {\n const error = result.error;\n if (error instanceof ApiError) {\n return Result.fail(\n new ApiError(transformFieldErrors(error.message, fields), error.data?.code)\n );\n }\n return Result.fail(error);\n }\n\n const responseData = result.value;\n\n if (responseData.fileManager.listFiles.error) {\n return Result.fail(\n new ApiError(\n responseData.fileManager.listFiles.error.message,\n responseData.fileManager.listFiles.error.code\n )\n );\n }\n\n return Result.ok({\n data: responseData.fileManager.listFiles.data as FmFile[],\n meta: responseData.fileManager.listFiles.meta as FmListMeta\n });\n }\n);\n"],"mappings":"AAAA,SAASA,MAAM;AAQf,SAASC,oBAAoB;AAC7B,SAASC,oBAAoB;AAC7B,SAASC,YAAY;AACrB,SAASC,eAAe;AACxB,SAASC,cAAc;AACvB,SAASC,QAAQ;AAgBjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,SAAS,GAAGJ,YAAY,CACjCC,eAAe,EACf,OACII,MAAM,EACNC,OAAO,EACPC,MAAM,KACkE;EACxE,MAAM;IAAEC,MAAM;IAAEC,KAAK;IAAEC,KAAK;IAAEC,KAAK;IAAEC,IAAI;IAAEC;EAAO,CAAC,GAAGN,MAAM;EAE5D,MAAMO,eAAe,GAAGhB,oBAAoB,CAACe,MAAM,CAAC;EAEpD,MAAME,KAAK,GAAG;AACtB;AACA;AACA;AACA;AACA,EAAED,eAAe;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EAEG,MAAME,MAAM,GAAG,MAAMd,cAAc,CAACG,MAAM,EAAEC,OAAO,EAAES,KAAK,EAAE;IACxDP,MAAM;IACNC,KAAK;IACLC,KAAK;IACLC,KAAK;IACLC;EACJ,CAAC,CAAC;EAEF,IAAII,MAAM,CAACC,MAAM,CAAC,CAAC,EAAE;IACjB,MAAMC,KAAK,GAAGF,MAAM,CAACE,KAAK;IAC1B,IAAIA,KAAK,YAAYf,QAAQ,EAAE;MAC3B,OAAON,MAAM,CAACsB,IAAI,CACd,IAAIhB,QAAQ,CAACJ,oBAAoB,CAACmB,KAAK,CAACE,OAAO,EAAEP,MAAM,CAAC,EAAEK,KAAK,CAACG,IAAI,EAAEC,IAAI,CAC9E,CAAC;IACL;IACA,OAAOzB,MAAM,CAACsB,IAAI,CAACD,KAAK,CAAC;EAC7B;EAEA,MAAMK,YAAY,GAAGP,MAAM,CAACQ,KAAK;EAEjC,IAAID,YAAY,CAACE,WAAW,CAACrB,SAAS,CAACc,KAAK,EAAE;IAC1C,OAAOrB,MAAM,CAACsB,IAAI,CACd,IAAIhB,QAAQ,CACRoB,YAAY,CAACE,WAAW,CAACrB,SAAS,CAACc,KAAK,CAACE,OAAO,EAChDG,YAAY,CAACE,WAAW,CAACrB,SAAS,CAACc,KAAK,CAACI,IAC7C,CACJ,CAAC;EACL;EAEA,OAAOzB,MAAM,CAAC6B,EAAE,CAAC;IACbL,IAAI,EAAEE,YAAY,CAACE,WAAW,CAACrB,SAAS,CAACiB,IAAgB;IACzDM,IAAI,EAAEJ,YAAY,CAACE,WAAW,CAACrB,SAAS,CAACuB;EAC7C,CAAC,CAAC;AACN,CACJ,CAAC","ignoreList":[]}
@@ -1,7 +1,8 @@
1
1
  import type { WebinyConfig } from "../../types.js";
2
2
  import { Result } from "../../Result.js";
3
- import type { HttpError, GraphQLError, NetworkError } from "../../errors.js";
3
+ import type { HttpError, NetworkError } from "../../errors.js";
4
4
  import type { FmTag, FmTagsListWhereInput } from "./fileManagerTypes.js";
5
+ import { ApiError } from "../../errors.js";
5
6
  export interface ListTagsParams {
6
7
  where?: FmTagsListWhereInput;
7
8
  }
@@ -14,4 +15,4 @@ export interface ListTagsParams {
14
15
  * @param params.where - Filter conditions
15
16
  * @returns Result containing the list of tags or an error
16
17
  */
17
- export declare function listTags(config: WebinyConfig, fetchFn: typeof fetch, params?: ListTagsParams): Promise<Result<FmTag[], HttpError | GraphQLError | NetworkError>>;
18
+ export declare function listTags(config: WebinyConfig, fetchFn: typeof fetch, params?: ListTagsParams): Promise<Result<FmTag[], HttpError | ApiError | NetworkError>>;
@@ -1,4 +1,6 @@
1
1
  import { Result } from "../../Result.js";
2
+ import { executeGraphQL } from "../executeGraphQL.js";
3
+ import { ApiError } from "../../errors.js";
2
4
  /**
3
5
  * Lists tags from the file manager.
4
6
  *
@@ -12,9 +14,6 @@ export async function listTags(config, fetchFn, params = {}) {
12
14
  const {
13
15
  where
14
16
  } = params;
15
- const {
16
- executeGraphQL
17
- } = await import("../executeGraphQL.js");
18
17
  const query = `
19
18
  query ListTags($where: FmTagsListWhereInput) {
20
19
  fileManager {
@@ -39,10 +38,7 @@ export async function listTags(config, fetchFn, params = {}) {
39
38
  }
40
39
  const responseData = result.value;
41
40
  if (responseData.fileManager.listTags.error) {
42
- const {
43
- GraphQLError
44
- } = await import("../../errors.js");
45
- return Result.fail(new GraphQLError(responseData.fileManager.listTags.error.message, responseData.fileManager.listTags.error.code));
41
+ return Result.fail(new ApiError(responseData.fileManager.listTags.error.message, responseData.fileManager.listTags.error.code));
46
42
  }
47
43
  return Result.ok(responseData.fileManager.listTags.data);
48
44
  }
@@ -1 +1 @@
1
- {"version":3,"names":["Result","listTags","config","fetchFn","params","where","executeGraphQL","query","result","isFail","fail","error","responseData","value","fileManager","GraphQLError","message","code","ok","data"],"sources":["listTags.ts"],"sourcesContent":["import type { WebinyConfig } from \"../../types.js\";\nimport { Result } from \"../../Result.js\";\nimport type { HttpError, GraphQLError, NetworkError } from \"../../errors.js\";\nimport type { FmTag, FmTagsListWhereInput } from \"./fileManagerTypes.js\";\n\nexport interface ListTagsParams {\n where?: FmTagsListWhereInput;\n}\n\n/**\n * Lists tags from the file manager.\n *\n * @param config - SDK configuration\n * @param fetchFn - Fetch function to use for HTTP requests\n * @param params - Parameters for listing tags\n * @param params.where - Filter conditions\n * @returns Result containing the list of tags or an error\n */\nexport async function listTags(\n config: WebinyConfig,\n fetchFn: typeof fetch,\n params: ListTagsParams = {}\n): Promise<Result<FmTag[], HttpError | GraphQLError | NetworkError>> {\n const { where } = params;\n\n const { executeGraphQL } = await import(\"../executeGraphQL.js\");\n\n const query = `\n query ListTags($where: FmTagsListWhereInput) {\n fileManager {\n listTags(where: $where) {\n data {\n tag\n count\n }\n error {\n message\n code\n }\n }\n }\n }\n `;\n\n const result = await executeGraphQL(config, fetchFn, query, { where });\n\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n const responseData = result.value;\n\n if (responseData.fileManager.listTags.error) {\n const { GraphQLError } = await import(\"../../errors.js\");\n return Result.fail(\n new GraphQLError(\n responseData.fileManager.listTags.error.message,\n responseData.fileManager.listTags.error.code\n )\n );\n }\n\n return Result.ok(responseData.fileManager.listTags.data);\n}\n"],"mappings":"AACA,SAASA,MAAM;AAQf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,QAAQA,CAC1BC,MAAoB,EACpBC,OAAqB,EACrBC,MAAsB,GAAG,CAAC,CAAC,EACsC;EACjE,MAAM;IAAEC;EAAM,CAAC,GAAGD,MAAM;EAExB,MAAM;IAAEE;EAAe,CAAC,GAAG,MAAM,MAAM,uBAAuB,CAAC;EAE/D,MAAMC,KAAK,GAAG;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EAED,MAAMC,MAAM,GAAG,MAAMF,cAAc,CAACJ,MAAM,EAAEC,OAAO,EAAEI,KAAK,EAAE;IAAEF;EAAM,CAAC,CAAC;EAEtE,IAAIG,MAAM,CAACC,MAAM,CAAC,CAAC,EAAE;IACjB,OAAOT,MAAM,CAACU,IAAI,CAACF,MAAM,CAACG,KAAK,CAAC;EACpC;EAEA,MAAMC,YAAY,GAAGJ,MAAM,CAACK,KAAK;EAEjC,IAAID,YAAY,CAACE,WAAW,CAACb,QAAQ,CAACU,KAAK,EAAE;IACzC,MAAM;MAAEI;IAAa,CAAC,GAAG,MAAM,MAAM,kBAAkB,CAAC;IACxD,OAAOf,MAAM,CAACU,IAAI,CACd,IAAIK,YAAY,CACZH,YAAY,CAACE,WAAW,CAACb,QAAQ,CAACU,KAAK,CAACK,OAAO,EAC/CJ,YAAY,CAACE,WAAW,CAACb,QAAQ,CAACU,KAAK,CAACM,IAC5C,CACJ,CAAC;EACL;EAEA,OAAOjB,MAAM,CAACkB,EAAE,CAACN,YAAY,CAACE,WAAW,CAACb,QAAQ,CAACkB,IAAI,CAAC;AAC5D","ignoreList":[]}
1
+ {"version":3,"names":["Result","executeGraphQL","ApiError","listTags","config","fetchFn","params","where","query","result","isFail","fail","error","responseData","value","fileManager","message","code","ok","data"],"sources":["listTags.ts"],"sourcesContent":["import type { WebinyConfig } from \"../../types.js\";\nimport { Result } from \"../../Result.js\";\nimport type { HttpError, NetworkError } from \"../../errors.js\";\nimport type { FmTag, FmTagsListWhereInput } from \"./fileManagerTypes.js\";\nimport { executeGraphQL } from \"../executeGraphQL.js\";\nimport { ApiError } from \"../../errors.js\";\n\nexport interface ListTagsParams {\n where?: FmTagsListWhereInput;\n}\n\n/**\n * Lists tags from the file manager.\n *\n * @param config - SDK configuration\n * @param fetchFn - Fetch function to use for HTTP requests\n * @param params - Parameters for listing tags\n * @param params.where - Filter conditions\n * @returns Result containing the list of tags or an error\n */\nexport async function listTags(\n config: WebinyConfig,\n fetchFn: typeof fetch,\n params: ListTagsParams = {}\n): Promise<Result<FmTag[], HttpError | ApiError | NetworkError>> {\n const { where } = params;\n\n const query = `\n query ListTags($where: FmTagsListWhereInput) {\n fileManager {\n listTags(where: $where) {\n data {\n tag\n count\n }\n error {\n message\n code\n }\n }\n }\n }\n `;\n\n const result = await executeGraphQL(config, fetchFn, query, { where });\n\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n const responseData = result.value;\n\n if (responseData.fileManager.listTags.error) {\n return Result.fail(\n new ApiError(\n responseData.fileManager.listTags.error.message,\n responseData.fileManager.listTags.error.code\n )\n );\n }\n\n return Result.ok(responseData.fileManager.listTags.data);\n}\n"],"mappings":"AACA,SAASA,MAAM;AAGf,SAASC,cAAc;AACvB,SAASC,QAAQ;AAMjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,QAAQA,CAC1BC,MAAoB,EACpBC,OAAqB,EACrBC,MAAsB,GAAG,CAAC,CAAC,EACkC;EAC7D,MAAM;IAAEC;EAAM,CAAC,GAAGD,MAAM;EAExB,MAAME,KAAK,GAAG;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EAED,MAAMC,MAAM,GAAG,MAAMR,cAAc,CAACG,MAAM,EAAEC,OAAO,EAAEG,KAAK,EAAE;IAAED;EAAM,CAAC,CAAC;EAEtE,IAAIE,MAAM,CAACC,MAAM,CAAC,CAAC,EAAE;IACjB,OAAOV,MAAM,CAACW,IAAI,CAACF,MAAM,CAACG,KAAK,CAAC;EACpC;EAEA,MAAMC,YAAY,GAAGJ,MAAM,CAACK,KAAK;EAEjC,IAAID,YAAY,CAACE,WAAW,CAACZ,QAAQ,CAACS,KAAK,EAAE;IACzC,OAAOZ,MAAM,CAACW,IAAI,CACd,IAAIT,QAAQ,CACRW,YAAY,CAACE,WAAW,CAACZ,QAAQ,CAACS,KAAK,CAACI,OAAO,EAC/CH,YAAY,CAACE,WAAW,CAACZ,QAAQ,CAACS,KAAK,CAACK,IAC5C,CACJ,CAAC;EACL;EAEA,OAAOjB,MAAM,CAACkB,EAAE,CAACL,YAAY,CAACE,WAAW,CAACZ,QAAQ,CAACgB,IAAI,CAAC;AAC5D","ignoreList":[]}
@@ -0,0 +1,18 @@
1
+ import { z } from "zod";
2
+ export declare const listFilesSchema: z.ZodObject<{
3
+ search: z.ZodOptional<z.ZodString>;
4
+ where: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5
+ limit: z.ZodOptional<z.ZodNumber>;
6
+ after: z.ZodOptional<z.ZodString>;
7
+ sort: z.ZodOptional<z.ZodArray<z.ZodString>>;
8
+ fields: z.ZodArray<z.ZodString>;
9
+ }, z.core.$strip>;
10
+ export declare const getFileSchema: z.ZodObject<{
11
+ id: z.ZodString;
12
+ fields: z.ZodArray<z.ZodString>;
13
+ }, z.core.$strip>;
14
+ export declare const updateFileSchema: z.ZodObject<{
15
+ id: z.ZodString;
16
+ data: z.ZodRecord<z.ZodString, z.ZodUnknown>;
17
+ fields: z.ZodArray<z.ZodString>;
18
+ }, z.core.$strip>;
@@ -0,0 +1,22 @@
1
+ import { z } from "zod";
2
+ const fields = z.array(z.string().min(1)).min(1, "fields must contain at least one entry");
3
+ const where = z.record(z.string(), z.unknown()).optional();
4
+ export const listFilesSchema = z.object({
5
+ search: z.string().optional(),
6
+ where,
7
+ limit: z.number().int().positive().optional(),
8
+ after: z.string().optional(),
9
+ sort: z.array(z.string()).optional(),
10
+ fields
11
+ });
12
+ export const getFileSchema = z.object({
13
+ id: z.string().min(1, "id is required"),
14
+ fields
15
+ });
16
+ export const updateFileSchema = z.object({
17
+ id: z.string().min(1, "id is required"),
18
+ data: z.record(z.string(), z.unknown()),
19
+ fields
20
+ });
21
+
22
+ //# sourceMappingURL=schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["z","fields","array","string","min","where","record","unknown","optional","listFilesSchema","object","search","limit","number","int","positive","after","sort","getFileSchema","id","updateFileSchema","data"],"sources":["schemas.ts"],"sourcesContent":["import { z } from \"zod\";\n\nconst fields = z.array(z.string().min(1)).min(1, \"fields must contain at least one entry\");\nconst where = z.record(z.string(), z.unknown()).optional();\n\nexport const listFilesSchema = z.object({\n search: z.string().optional(),\n where,\n limit: z.number().int().positive().optional(),\n after: z.string().optional(),\n sort: z.array(z.string()).optional(),\n fields\n});\n\nexport const getFileSchema = z.object({\n id: z.string().min(1, \"id is required\"),\n fields\n});\n\nexport const updateFileSchema = z.object({\n id: z.string().min(1, \"id is required\"),\n data: z.record(z.string(), z.unknown()),\n fields\n});\n"],"mappings":"AAAA,SAASA,CAAC,QAAQ,KAAK;AAEvB,MAAMC,MAAM,GAAGD,CAAC,CAACE,KAAK,CAACF,CAAC,CAACG,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAAC,CAAC,CAACA,GAAG,CAAC,CAAC,EAAE,wCAAwC,CAAC;AAC1F,MAAMC,KAAK,GAAGL,CAAC,CAACM,MAAM,CAACN,CAAC,CAACG,MAAM,CAAC,CAAC,EAAEH,CAAC,CAACO,OAAO,CAAC,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;AAE1D,OAAO,MAAMC,eAAe,GAAGT,CAAC,CAACU,MAAM,CAAC;EACpCC,MAAM,EAAEX,CAAC,CAACG,MAAM,CAAC,CAAC,CAACK,QAAQ,CAAC,CAAC;EAC7BH,KAAK;EACLO,KAAK,EAAEZ,CAAC,CAACa,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,CAACP,QAAQ,CAAC,CAAC;EAC7CQ,KAAK,EAAEhB,CAAC,CAACG,MAAM,CAAC,CAAC,CAACK,QAAQ,CAAC,CAAC;EAC5BS,IAAI,EAAEjB,CAAC,CAACE,KAAK,CAACF,CAAC,CAACG,MAAM,CAAC,CAAC,CAAC,CAACK,QAAQ,CAAC,CAAC;EACpCP;AACJ,CAAC,CAAC;AAEF,OAAO,MAAMiB,aAAa,GAAGlB,CAAC,CAACU,MAAM,CAAC;EAClCS,EAAE,EAAEnB,CAAC,CAACG,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,EAAE,gBAAgB,CAAC;EACvCH;AACJ,CAAC,CAAC;AAEF,OAAO,MAAMmB,gBAAgB,GAAGpB,CAAC,CAACU,MAAM,CAAC;EACrCS,EAAE,EAAEnB,CAAC,CAACG,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,EAAE,gBAAgB,CAAC;EACvCiB,IAAI,EAAErB,CAAC,CAACM,MAAM,CAACN,CAAC,CAACG,MAAM,CAAC,CAAC,EAAEH,CAAC,CAACO,OAAO,CAAC,CAAC,CAAC;EACvCN;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -1,7 +1,6 @@
1
- import type { WebinyConfig } from "../../types.js";
2
1
  import { Result } from "../../Result.js";
3
- import type { HttpError, GraphQLError, NetworkError } from "../../errors.js";
4
2
  import type { FmFile, FmIdentity, FmLocationInput } from "./fileManagerTypes.js";
3
+ import { ApiError } from "../../errors.js";
5
4
  export interface UpdateFileData {
6
5
  createdOn?: Date | string;
7
6
  modifiedOn?: Date | string;
@@ -32,4 +31,4 @@ export interface UpdateFileParams {
32
31
  * @param params.data - The file data to update
33
32
  * @returns Result containing the updated file data or an error
34
33
  */
35
- export declare function updateFile(config: WebinyConfig, fetchFn: typeof fetch, params: UpdateFileParams): Promise<Result<FmFile, HttpError | GraphQLError | NetworkError>>;
34
+ export declare const updateFile: (config: import("../../types.js").WebinyConfig, fetchFn: typeof fetch, params: unknown) => Promise<Result<FmFile, import("../../errors.js").HttpError | ApiError | import("../../errors.js").NetworkError | import("../../errors.js").ValidationError>>;
@@ -1,5 +1,9 @@
1
1
  import { Result } from "../../Result.js";
2
2
  import { buildFieldsSelection } from "./buildFieldsSelection.js";
3
+ import { createMethod } from "../../utils/createMethod.js";
4
+ import { updateFileSchema } from "./schemas.js";
5
+ import { executeGraphQL } from "../executeGraphQL.js";
6
+ import { ApiError } from "../../errors.js";
3
7
  /**
4
8
  * Updates a file in the file manager.
5
9
  *
@@ -10,15 +14,11 @@ import { buildFieldsSelection } from "./buildFieldsSelection.js";
10
14
  * @param params.data - The file data to update
11
15
  * @returns Result containing the updated file data or an error
12
16
  */
13
- export async function updateFile(config, fetchFn, params) {
14
- const {
15
- id,
16
- data,
17
- fields
18
- } = params;
19
- const {
20
- executeGraphQL
21
- } = await import("../executeGraphQL.js");
17
+ export const updateFile = createMethod(updateFileSchema, async (config, fetchFn, {
18
+ id,
19
+ data,
20
+ fields
21
+ }) => {
22
22
  const fieldsSelection = buildFieldsSelection(fields);
23
23
  const query = `
24
24
  mutation UpdateFile($id: ID!, $data: FmFileUpdateInput!) {
@@ -44,12 +44,9 @@ ${fieldsSelection}
44
44
  }
45
45
  const responseData = result.value;
46
46
  if (responseData.fileManager.updateFile.error) {
47
- const {
48
- GraphQLError
49
- } = await import("../../errors.js");
50
- return Result.fail(new GraphQLError(responseData.fileManager.updateFile.error.message, responseData.fileManager.updateFile.error.code));
47
+ return Result.fail(new ApiError(responseData.fileManager.updateFile.error.message, responseData.fileManager.updateFile.error.code));
51
48
  }
52
49
  return Result.ok(responseData.fileManager.updateFile.data);
53
- }
50
+ });
54
51
 
55
52
  //# sourceMappingURL=updateFile.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","buildFieldsSelection","updateFile","config","fetchFn","params","id","data","fields","executeGraphQL","fieldsSelection","query","result","isFail","fail","error","responseData","value","fileManager","GraphQLError","message","code","ok"],"sources":["updateFile.ts"],"sourcesContent":["import type { WebinyConfig } from \"../../types.js\";\nimport { Result } from \"../../Result.js\";\nimport type { HttpError, GraphQLError, NetworkError } from \"../../errors.js\";\nimport type { FmFile, FmIdentity, FmLocationInput } from \"./fileManagerTypes.js\";\nimport { buildFieldsSelection } from \"./buildFieldsSelection.js\";\n\nexport interface UpdateFileData {\n createdOn?: Date | string;\n modifiedOn?: Date | string;\n savedOn?: Date | string;\n createdBy?: FmIdentity;\n modifiedBy?: FmIdentity;\n savedBy?: FmIdentity;\n location?: FmLocationInput;\n name?: string;\n key?: string;\n type?: string;\n size?: number;\n tags?: string[];\n [key: string]: any;\n}\n\nexport interface UpdateFileParams {\n id: string;\n data: UpdateFileData;\n fields: string[];\n}\n\n/**\n * Updates a file in the file manager.\n *\n * @param config - SDK configuration\n * @param fetchFn - Fetch function to use for HTTP requests\n * @param params - Parameters for updating the file\n * @param params.id - ID of the file to update\n * @param params.data - The file data to update\n * @returns Result containing the updated file data or an error\n */\nexport async function updateFile(\n config: WebinyConfig,\n fetchFn: typeof fetch,\n params: UpdateFileParams\n): Promise<Result<FmFile, HttpError | GraphQLError | NetworkError>> {\n const { id, data, fields } = params;\n\n const { executeGraphQL } = await import(\"../executeGraphQL.js\");\n\n const fieldsSelection = buildFieldsSelection(fields);\n\n const query = `\n mutation UpdateFile($id: ID!, $data: FmFileUpdateInput!) {\n fileManager {\n updateFile(id: $id, data: $data) {\n data {\n${fieldsSelection}\n }\n error {\n message\n code\n }\n }\n }\n }\n `;\n\n const result = await executeGraphQL(config, fetchFn, query, { id, data });\n\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n const responseData = result.value;\n\n if (responseData.fileManager.updateFile.error) {\n const { GraphQLError } = await import(\"../../errors.js\");\n return Result.fail(\n new GraphQLError(\n responseData.fileManager.updateFile.error.message,\n responseData.fileManager.updateFile.error.code\n )\n );\n }\n\n return Result.ok(responseData.fileManager.updateFile.data);\n}\n"],"mappings":"AACA,SAASA,MAAM;AAGf,SAASC,oBAAoB;AAwB7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,UAAUA,CAC5BC,MAAoB,EACpBC,OAAqB,EACrBC,MAAwB,EACwC;EAChE,MAAM;IAAEC,EAAE;IAAEC,IAAI;IAAEC;EAAO,CAAC,GAAGH,MAAM;EAEnC,MAAM;IAAEI;EAAe,CAAC,GAAG,MAAM,MAAM,uBAAuB,CAAC;EAE/D,MAAMC,eAAe,GAAGT,oBAAoB,CAACO,MAAM,CAAC;EAEpD,MAAMG,KAAK,GAAG;AAClB;AACA;AACA;AACA;AACA,EAAED,eAAe;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EAED,MAAME,MAAM,GAAG,MAAMH,cAAc,CAACN,MAAM,EAAEC,OAAO,EAAEO,KAAK,EAAE;IAAEL,EAAE;IAAEC;EAAK,CAAC,CAAC;EAEzE,IAAIK,MAAM,CAACC,MAAM,CAAC,CAAC,EAAE;IACjB,OAAOb,MAAM,CAACc,IAAI,CAACF,MAAM,CAACG,KAAK,CAAC;EACpC;EAEA,MAAMC,YAAY,GAAGJ,MAAM,CAACK,KAAK;EAEjC,IAAID,YAAY,CAACE,WAAW,CAAChB,UAAU,CAACa,KAAK,EAAE;IAC3C,MAAM;MAAEI;IAAa,CAAC,GAAG,MAAM,MAAM,kBAAkB,CAAC;IACxD,OAAOnB,MAAM,CAACc,IAAI,CACd,IAAIK,YAAY,CACZH,YAAY,CAACE,WAAW,CAAChB,UAAU,CAACa,KAAK,CAACK,OAAO,EACjDJ,YAAY,CAACE,WAAW,CAAChB,UAAU,CAACa,KAAK,CAACM,IAC9C,CACJ,CAAC;EACL;EAEA,OAAOrB,MAAM,CAACsB,EAAE,CAACN,YAAY,CAACE,WAAW,CAAChB,UAAU,CAACK,IAAI,CAAC;AAC9D","ignoreList":[]}
1
+ {"version":3,"names":["Result","buildFieldsSelection","createMethod","updateFileSchema","executeGraphQL","ApiError","updateFile","config","fetchFn","id","data","fields","fieldsSelection","query","result","isFail","fail","error","responseData","value","fileManager","message","code","ok"],"sources":["updateFile.ts"],"sourcesContent":["import { Result } from \"../../Result.js\";\nimport type { FmFile, FmIdentity, FmLocationInput } from \"./fileManagerTypes.js\";\nimport { buildFieldsSelection } from \"./buildFieldsSelection.js\";\nimport { createMethod } from \"../../utils/createMethod.js\";\nimport { updateFileSchema } from \"./schemas.js\";\nimport { executeGraphQL } from \"../executeGraphQL.js\";\nimport { ApiError } from \"../../errors.js\";\n\nexport interface UpdateFileData {\n createdOn?: Date | string;\n modifiedOn?: Date | string;\n savedOn?: Date | string;\n createdBy?: FmIdentity;\n modifiedBy?: FmIdentity;\n savedBy?: FmIdentity;\n location?: FmLocationInput;\n name?: string;\n key?: string;\n type?: string;\n size?: number;\n tags?: string[];\n [key: string]: any;\n}\n\nexport interface UpdateFileParams {\n id: string;\n data: UpdateFileData;\n fields: string[];\n}\n\n/**\n * Updates a file in the file manager.\n *\n * @param config - SDK configuration\n * @param fetchFn - Fetch function to use for HTTP requests\n * @param params - Parameters for updating the file\n * @param params.id - ID of the file to update\n * @param params.data - The file data to update\n * @returns Result containing the updated file data or an error\n */\nexport const updateFile = createMethod(\n updateFileSchema,\n async (config, fetchFn, { id, data, fields }) => {\n const fieldsSelection = buildFieldsSelection(fields);\n\n const query = `\n mutation UpdateFile($id: ID!, $data: FmFileUpdateInput!) {\n fileManager {\n updateFile(id: $id, data: $data) {\n data {\n${fieldsSelection}\n }\n error {\n message\n code\n }\n }\n }\n }\n `;\n\n const result = await executeGraphQL(config, fetchFn, query, { id, data });\n\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n const responseData = result.value;\n\n if (responseData.fileManager.updateFile.error) {\n return Result.fail(\n new ApiError(\n responseData.fileManager.updateFile.error.message,\n responseData.fileManager.updateFile.error.code\n )\n );\n }\n\n return Result.ok(responseData.fileManager.updateFile.data as FmFile);\n }\n);\n"],"mappings":"AAAA,SAASA,MAAM;AAEf,SAASC,oBAAoB;AAC7B,SAASC,YAAY;AACrB,SAASC,gBAAgB;AACzB,SAASC,cAAc;AACvB,SAASC,QAAQ;AAwBjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,UAAU,GAAGJ,YAAY,CAClCC,gBAAgB,EAChB,OAAOI,MAAM,EAAEC,OAAO,EAAE;EAAEC,EAAE;EAAEC,IAAI;EAAEC;AAAO,CAAC,KAAK;EAC7C,MAAMC,eAAe,GAAGX,oBAAoB,CAACU,MAAM,CAAC;EAEpD,MAAME,KAAK,GAAG;AACtB;AACA;AACA;AACA;AACA,EAAED,eAAe;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EAEG,MAAME,MAAM,GAAG,MAAMV,cAAc,CAACG,MAAM,EAAEC,OAAO,EAAEK,KAAK,EAAE;IAAEJ,EAAE;IAAEC;EAAK,CAAC,CAAC;EAEzE,IAAII,MAAM,CAACC,MAAM,CAAC,CAAC,EAAE;IACjB,OAAOf,MAAM,CAACgB,IAAI,CAACF,MAAM,CAACG,KAAK,CAAC;EACpC;EAEA,MAAMC,YAAY,GAAGJ,MAAM,CAACK,KAAK;EAEjC,IAAID,YAAY,CAACE,WAAW,CAACd,UAAU,CAACW,KAAK,EAAE;IAC3C,OAAOjB,MAAM,CAACgB,IAAI,CACd,IAAIX,QAAQ,CACRa,YAAY,CAACE,WAAW,CAACd,UAAU,CAACW,KAAK,CAACI,OAAO,EACjDH,YAAY,CAACE,WAAW,CAACd,UAAU,CAACW,KAAK,CAACK,IAC9C,CACJ,CAAC;EACL;EAEA,OAAOtB,MAAM,CAACuB,EAAE,CAACL,YAAY,CAACE,WAAW,CAACd,UAAU,CAACI,IAAc,CAAC;AACxE,CACJ,CAAC","ignoreList":[]}