diff --git a/.changeset/fifty-peaches-rhyme.md b/.changeset/fifty-peaches-rhyme.md new file mode 100644 index 00000000..65fcb3eb --- /dev/null +++ b/.changeset/fifty-peaches-rhyme.md @@ -0,0 +1,6 @@ +--- +'@asgardeo/browser': patch +'@asgardeo/react': patch +--- + +Add HTTP utility and export in browser and react packages diff --git a/packages/browser/src/index.ts b/packages/browser/src/index.ts index 7702f3d9..0131b741 100644 --- a/packages/browser/src/index.ts +++ b/packages/browser/src/index.ts @@ -58,3 +58,5 @@ export { createMediaQueryListener, BrowserThemeDetection, } from './theme/themeDetection'; + +export {default as http} from './utils/http'; diff --git a/packages/browser/src/utils/http.ts b/packages/browser/src/utils/http.ts new file mode 100644 index 00000000..793d0a63 --- /dev/null +++ b/packages/browser/src/utils/http.ts @@ -0,0 +1,45 @@ +/** + * Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com). + * + * WSO2 LLC. licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { AsgardeoSPAClient } from "../__legacy__/client"; + +/** + * HTTP utility for making requests using the AsgardeoSPAClient instance. + * + * @remarks + * This utility provides methods to make single or multiple HTTP requests. + */ +const http = { + /** + * Makes a single HTTP request using the AsgardeoSPAClient instance. + * + * @param config - The HTTP request configuration object. + * @returns A promise resolving to the HTTP response. + */ + request: AsgardeoSPAClient.getInstance().httpRequest.bind(AsgardeoSPAClient.getInstance()), + + /** + * Makes multiple HTTP requests in parallel using the AsgardeoSPAClient instance. + * + * @param configs - An array of HTTP request configuration objects. + * @returns A promise resolving to an array of HTTP responses. + */ + requestAll: AsgardeoSPAClient.getInstance().httpRequestAll.bind(AsgardeoSPAClient.getInstance()) +}; + +export default http; diff --git a/packages/react/src/index.ts b/packages/react/src/index.ts index 831fee2a..e4729eeb 100644 --- a/packages/react/src/index.ts +++ b/packages/react/src/index.ts @@ -273,4 +273,4 @@ export {default as updateMeProfile, UpdateMeProfileConfig} from './api/updateMeP export {default as getMeProfile} from './api/getScim2Me'; export * from './api/getScim2Me'; -export {AsgardeoRuntimeError} from '@asgardeo/browser'; +export {AsgardeoRuntimeError, http} from '@asgardeo/browser';