TASK22269: group migrate remaining account/portal signed GET flows

This commit is contained in:
2026-03-25 14:06:18 +00:00
parent 85cc7d165e
commit 4e964ad1ad
7 changed files with 149 additions and 16 deletions
+39
View File
@@ -107,6 +107,15 @@ const loadServiceModule = (fileName, injected = {}) => {
return queryUrl + hashResponse.data.hash;
};
const defaultBuildSignedUrl = async (queryUrl, config = {}) => {
const { baseUrl = "" } = config;
const hashedUrl = await (
injected.buildHashedQueryUrl || defaultBuildHashedQueryUrl
)(queryUrl);
return `${baseUrl}${hashedUrl}`;
};
const defaultGetSignedFileJson = async (queryUrl) => {
const hashedUrl = await (
injected.buildHashedQueryUrl || defaultBuildHashedQueryUrl
@@ -138,6 +147,33 @@ const loadServiceModule = (fileName, injected = {}) => {
});
};
const defaultGetSignedJson = async (queryUrl, config = {}) => {
const { baseUrl, ...requestConfig } = config;
const signedUrl = await (
injected.buildSignedUrl || defaultBuildSignedUrl
)(queryUrl, { baseUrl });
return (injected.requestJson || defaultRequestJson)({
method: "get",
url: signedUrl,
...requestConfig
});
};
const defaultPostSignedJson = async (queryUrl, data, config = {}) => {
const { baseUrl, ...requestConfig } = config;
const signedUrl = await (
injected.buildSignedUrl || defaultBuildSignedUrl
)(queryUrl, { baseUrl });
return (injected.requestJson || defaultRequestJson)({
method: "post",
url: signedUrl,
data,
...requestConfig
});
};
const defaultBuildFileQuery = (pathValue, params = {}, options = {}) => {
const { encode = false } = options;
const entries = Object.entries(params).filter(([, value]) => {
@@ -184,7 +220,10 @@ const loadServiceModule = (fileName, injected = {}) => {
getSignedFileJson:
injected.getSignedFileJson || defaultGetSignedFileJson,
downloadFileBlob: injected.downloadFileBlob || defaultDownloadFileBlob,
getSignedJson: injected.getSignedJson || defaultGetSignedJson,
postSignedJson: injected.postSignedJson || defaultPostSignedJson,
deleteSignedJson: injected.deleteSignedJson || defaultDeleteSignedJson,
buildSignedUrl: injected.buildSignedUrl || defaultBuildSignedUrl,
buildHashedQueryUrl:
injected.buildHashedQueryUrl || defaultBuildHashedQueryUrl,
buildFileQuery: injected.buildFileQuery || defaultBuildFileQuery,