From 0f16dff55875254a82a5d900505ec7f0b10d5643 Mon Sep 17 00:00:00 2001 From: Ashirwada Date: Thu, 22 Aug 2024 16:01:58 +0530 Subject: [PATCH] Removing existing implementation --- react-apps/pom.xml | 2 +- react-apps/self-care-portal/README.md | 86 ---- react-apps/self-care-portal/pom.xml | 294 ----------- .../self-care-portal-frontend/.babelrc | 43 -- .../self-care-portal-frontend/README.md | 24 - .../accelerator/index.js | 44 -- .../accelerator/src/App.js | 40 -- .../accelerator/src/App.test.js | 27 - .../src/api/applicationInfo-api.js | 40 -- .../accelerator/src/api/consent-api.js | 189 ------- .../src/api/deviceRegistration-api.js | 41 -- .../accelerator/src/api/index.js | 21 - .../accelerator/src/common/Footer.jsx | 36 -- .../accelerator/src/common/Nav.jsx | 91 ---- .../accelerator/src/common/index.js | 20 - .../accelerator/src/config.js | 40 -- .../src/context/AppContextProvider.js | 45 -- .../accelerator/src/context/AppInfoContext.js | 67 --- .../accelerator/src/context/ConsentContext.js | 102 ---- .../src/context/DeviceRegistrationContext.js | 60 --- .../src/context/SearchObjectContext.js | 56 -- .../accelerator/src/context/UserContext.js | 55 -- .../accelerator/src/css/App.css | 61 --- .../accelerator/src/css/Body.css | 74 --- .../accelerator/src/css/Buttons.css | 46 -- .../accelerator/src/css/Cards.css | 89 ---- .../accelerator/src/css/DetailedAgreement.css | 64 --- .../accelerator/src/css/Footer.css | 47 -- .../accelerator/src/css/LandingTable.css | 54 -- .../accelerator/src/css/LandingTabs.css | 53 -- .../accelerator/src/css/Leftbar.css | 106 ---- .../accelerator/src/css/Nav.css | 103 ---- .../accelerator/src/css/Pagination.css | 118 ----- .../accelerator/src/css/Popup.css | 26 - .../accelerator/src/css/Profile.css | 142 ----- .../accelerator/src/css/Search.css | 216 -------- .../accelerator/src/css/SharingDetails.css | 78 --- .../accelerator/src/css/StatusLabel.css | 38 -- .../accelerator/src/css/index.css | 31 -- .../accelerator/src/css/withdrawal.css | 125 ----- .../accelerator/src/data/User.js | 71 --- .../detailedAgreementPage/AccountsInfo.jsx | 42 -- .../detailedAgreementPage/Accreditation.jsx | 41 -- .../detailedAgreementPage/DataSharedInfo.jsx | 73 --- .../DetailedAgreement.jsx | 139 ----- .../detailedAgreementPage/KeyDatesInfo.jsx | 139 ----- .../detailedAgreementPage/PermissionItem.jsx | 129 ----- .../src/detailedAgreementPage/Profile.jsx | 62 --- .../src/detailedAgreementPage/ProfileMain.jsx | 88 ---- .../ProtectedWithdrawRoute.jsx | 44 -- .../detailedAgreementPage/SharingDetails.jsx | 31 -- .../src/detailedAgreementPage/StatusLabel.jsx | 61 --- .../detailedAgreementPage/WithdrawStep1.jsx | 123 ----- .../detailedAgreementPage/WithdrawStep2.jsx | 180 ------- .../src/detailedAgreementPage/index.js | 31 -- .../src/errorPage/FourOhFourError.jsx | 34 -- .../src/errorPage/ResponseError.jsx | 63 --- .../accelerator/src/errorPage/index.js | 20 - .../accelerator/src/images/ADRLogo.png | Bin 155432 -> 0 bytes .../accelerator/src/images/Logo.png | Bin 1769 -> 0 bytes .../accelerator/src/images/accounts.png | Bin 17092 -> 0 bytes .../accelerator/src/images/cof.png | Bin 30411 -> 0 bytes .../accelerator/src/images/home.png | Bin 31363 -> 0 bytes .../accelerator/src/images/payments.png | Bin 43525 -> 0 bytes .../accelerator/src/images/userAvatar.png | Bin 7885 -> 0 bytes .../accelerator/src/images/wso2Logo.png | Bin 5095 -> 0 bytes .../src/landing_page/AdvanceSearch.jsx | 282 ---------- .../accelerator/src/landing_page/Body.jsx | 47 -- .../accelerator/src/landing_page/Home.jsx | 85 --- .../accelerator/src/landing_page/HomeTile.jsx | 63 --- .../src/landing_page/LandingTable.jsx | 44 -- .../src/landing_page/LandingTabs.jsx | 72 --- .../accelerator/src/landing_page/Leftbar.jsx | 99 ---- .../src/landing_page/ManageButton.jsx | 35 -- .../src/landing_page/PaginationTable.jsx | 142 ----- .../accelerator/src/landing_page/Popup.jsx | 49 -- .../src/landing_page/TableBody.jsx | 135 ----- .../src/landing_page/TableHeader.jsx | 49 -- .../accelerator/src/landing_page/index.js | 26 - .../accelerator/src/login/login.js | 55 -- .../accelerator/src/login/logout.js | 24 - .../accelerator/src/serviceWorker.js | 155 ------ .../accelerator/src/services/decodeIdToken.js | 21 - .../accelerator/src/services/index.js | 20 - .../accelerator/src/services/utils.js | 153 ------ .../accelerator/src/setupTests.js | 23 - .../accelerator/src/specConfigs/common.js | 77 --- .../accelerator/src/specConfigs/index.js | 22 - .../src/specConfigs/permissionDataLanguage.js | 48 -- .../src/specConfigs/specConfigurations.js | 486 ------------------ .../src/specConfigs/withdrawLang.js | 38 -- .../config-overrides.js | 26 - .../self-care-portal-frontend/loader.js | 72 --- .../self-care-portal-frontend/package.json | 74 --- .../self-care-portal-frontend/public/Logo.ico | Bin 15086 -> 0 bytes .../public/index.html | 42 -- .../public/manifest.json | 15 - .../public/robots.txt | 2 - .../public/runtime-config.js | 30 -- .../public/wso2Logo.png | Bin 5095 -> 0 bytes .../self-care-portal-frontend/src/config.js | 40 -- .../webpack.config.js | 66 --- .../exception/TokenGenerationException.java | 36 -- .../scp/webapp/model/SCPError.java | 47 -- .../scp/webapp/service/APIMService.java | 123 ----- .../scp/webapp/service/OAuthService.java | 203 -------- .../webapp/servlet/ApimReqHandlerServlet.java | 157 ------ .../servlet/OAuthAuthorizationServlet.java | 70 --- .../webapp/servlet/OAuthCallbackServlet.java | 84 --- .../scp/webapp/util/Constants.java | 67 --- .../openbanking/scp/webapp/util/Utils.java | 218 -------- .../main/resources/configurations.properties | 21 - .../src/main/resources/findbugs-exclude.xml | 25 - .../scp/webapp/service/APIMServiceTest.java | 160 ------ .../scp/webapp/service/OAuthServiceTest.java | 131 ----- .../scp/webapp/util/UtilsTest.java | 231 --------- .../src/test/resources/testng.xml | 29 -- react-apps/self-care-portal/web.xml | 32 -- 118 files changed, 1 insertion(+), 8515 deletions(-) delete mode 100644 react-apps/self-care-portal/README.md delete mode 100644 react-apps/self-care-portal/pom.xml delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/.babelrc delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/README.md delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/index.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/App.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/App.test.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/api/applicationInfo-api.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/api/consent-api.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/api/deviceRegistration-api.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/api/index.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/common/Footer.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/common/Nav.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/common/index.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/config.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/AppContextProvider.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/AppInfoContext.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/ConsentContext.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/DeviceRegistrationContext.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/SearchObjectContext.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/UserContext.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/App.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Body.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Buttons.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Cards.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/DetailedAgreement.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Footer.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/LandingTable.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/LandingTabs.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Leftbar.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Nav.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Pagination.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Popup.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Profile.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Search.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/SharingDetails.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/StatusLabel.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/index.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/withdrawal.css delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/data/User.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/AccountsInfo.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/Accreditation.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/DataSharedInfo.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/DetailedAgreement.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/KeyDatesInfo.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/PermissionItem.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/Profile.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/ProfileMain.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/ProtectedWithdrawRoute.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/SharingDetails.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/StatusLabel.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/WithdrawStep1.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/WithdrawStep2.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/index.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/errorPage/FourOhFourError.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/errorPage/ResponseError.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/errorPage/index.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/images/ADRLogo.png delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/images/Logo.png delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/images/accounts.png delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/images/cof.png delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/images/home.png delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/images/payments.png delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/images/userAvatar.png delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/images/wso2Logo.png delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/AdvanceSearch.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/Body.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/Home.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/HomeTile.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/LandingTable.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/LandingTabs.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/Leftbar.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/ManageButton.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/PaginationTable.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/Popup.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/TableBody.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/TableHeader.jsx delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/index.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/login/login.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/login/logout.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/serviceWorker.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/services/decodeIdToken.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/services/index.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/services/utils.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/setupTests.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/specConfigs/common.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/specConfigs/index.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/specConfigs/permissionDataLanguage.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/specConfigs/specConfigurations.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/specConfigs/withdrawLang.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/config-overrides.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/loader.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/package.json delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/public/Logo.ico delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/public/index.html delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/public/manifest.json delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/public/robots.txt delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/public/runtime-config.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/public/wso2Logo.png delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/src/config.js delete mode 100644 react-apps/self-care-portal/self-care-portal-frontend/webpack.config.js delete mode 100644 react-apps/self-care-portal/src/main/java/com/wso2/openbanking/scp/webapp/exception/TokenGenerationException.java delete mode 100644 react-apps/self-care-portal/src/main/java/com/wso2/openbanking/scp/webapp/model/SCPError.java delete mode 100644 react-apps/self-care-portal/src/main/java/com/wso2/openbanking/scp/webapp/service/APIMService.java delete mode 100644 react-apps/self-care-portal/src/main/java/com/wso2/openbanking/scp/webapp/service/OAuthService.java delete mode 100644 react-apps/self-care-portal/src/main/java/com/wso2/openbanking/scp/webapp/servlet/ApimReqHandlerServlet.java delete mode 100644 react-apps/self-care-portal/src/main/java/com/wso2/openbanking/scp/webapp/servlet/OAuthAuthorizationServlet.java delete mode 100644 react-apps/self-care-portal/src/main/java/com/wso2/openbanking/scp/webapp/servlet/OAuthCallbackServlet.java delete mode 100644 react-apps/self-care-portal/src/main/java/com/wso2/openbanking/scp/webapp/util/Constants.java delete mode 100644 react-apps/self-care-portal/src/main/java/com/wso2/openbanking/scp/webapp/util/Utils.java delete mode 100644 react-apps/self-care-portal/src/main/resources/configurations.properties delete mode 100644 react-apps/self-care-portal/src/main/resources/findbugs-exclude.xml delete mode 100644 react-apps/self-care-portal/src/test/java/com/wso2/openbanking/scp/webapp/service/APIMServiceTest.java delete mode 100644 react-apps/self-care-portal/src/test/java/com/wso2/openbanking/scp/webapp/service/OAuthServiceTest.java delete mode 100644 react-apps/self-care-portal/src/test/java/com/wso2/openbanking/scp/webapp/util/UtilsTest.java delete mode 100644 react-apps/self-care-portal/src/test/resources/testng.xml delete mode 100644 react-apps/self-care-portal/web.xml diff --git a/react-apps/pom.xml b/react-apps/pom.xml index 0eb7fe37..eea486b4 100644 --- a/react-apps/pom.xml +++ b/react-apps/pom.xml @@ -32,6 +32,6 @@ WSO2 Open Banking - React Apps - self-care-portal + diff --git a/react-apps/self-care-portal/README.md b/react-apps/self-care-portal/README.md deleted file mode 100644 index d1cef234..00000000 --- a/react-apps/self-care-portal/README.md +++ /dev/null @@ -1,86 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app), using the [Redux](https://redux.js.org/) and [Redux Toolkit](https://redux-toolkit.js.org/) template. - -## Available Scripts - -In the project directory, you can run: - -### `npm start` - -Runs the app in the development mode.
-Open [http://localhost:3000](http://localhost:3000) to view it in the browser. - -The page will reload if you make edits.
-You will also see any lint errors in the console. - -### `npm test` - -Launches the test runner in the interactive watch mode.
-See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information. - -### `npm run build` - -Builds the app for production to the `build` folder.
-It correctly bundles React in production mode and optimizes the build for the best performance. - -The build is minified and the filenames include the hashes.
-Your app is ready to be deployed! - -See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information. - -### `npm run eject` - -**Note: this is a one-way operation. Once you `eject`, you can’t go back!** - -If you aren’t satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project. - -Instead, it will copy all the configuration files and the transitive dependencies (Webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own. - -You don’t have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it. - -## Learn More - -You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started). - -To learn React, check out the [React documentation](https://reactjs.org/). - -### Code Splitting - -This section has moved here: https://facebook.github.io/create-react-app/docs/code-splitting - -### Analyzing the Bundle Size - -This section has moved here: https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size - -### Making a Progressive Web App - -This section has moved here: https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app - -### Advanced Configuration - -This section has moved here: https://facebook.github.io/create-react-app/docs/advanced-configuration - -### Deployment - -This section has moved here: https://facebook.github.io/create-react-app/docs/deployment - -### `npm run build` fails to minify - -This section has moved here: https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify diff --git a/react-apps/self-care-portal/pom.xml b/react-apps/self-care-portal/pom.xml deleted file mode 100644 index 8265c6f4..00000000 --- a/react-apps/self-care-portal/pom.xml +++ /dev/null @@ -1,294 +0,0 @@ - - - - - 4.0.0 - - - com.wso2.openbanking.accelerator - react-apps - 3.2.11-SNAPSHOT - ../pom.xml - - - consentmgr - war - WSO2 Open Banking - Self Care Portal Webapp - - - UTF-8 - - - - - com.wso2.openbanking.accelerator - com.wso2.openbanking.accelerator.identity - provided - - - com.wso2.openbanking.accelerator - com.wso2.openbanking.accelerator.common - provided - - - org.json.wso2 - json - provided - - - - org.testng - testng - test - - - org.powermock - powermock-module-testng - test - - - org.powermock - powermock-api-mockito - test - - - org.mockito - mockito-all - test - - - - - ${project.artifactId} - - - - org.apache.maven.plugins - maven-war-plugin - ${maven-war-plugin.version} - - - - ${basedir}/dist - dist - - - ${basedir}/self-care-portal-frontend/public/ - - index.html - - - - ${basedir}/self-care-portal-frontend/public/ - - runtime-config.js - - - - ${basedir}/self-care-portal-frontend - self-care-portal-frontend - - npm/** - node_modules/** - package-lock.json - - - - ${basedir}/web.xml - consentmgr - - - - - org.codehaus.mojo - exec-maven-plugin - - - - npm install (initialize) - - exec - - initialize - - npm - - install - - self-care-portal-frontend - - - - - - npm run build (compile) - - exec - - compile - - npm - - run - build - - self-care-portal-frontend - - - - - - - - false - - ${basedir}/self-care-portal-frontend/npm - - ${NPM_CONFIG_PREFIX}/cache - ${project.build.directory}/npmtmp - - - - - org.jacoco - jacoco-maven-plugin - - - - **/model/ - **/*Constants.class - **/*Exception.class - - - - - default-prepare-agent - - prepare-agent - - - - default-prepare-agent-integration - - prepare-agent-integration - - - - default-report - - report - - - - default-report-integration - - report-integration - - - - default-check - - check - - - - - BUNDLE - - - INSTRUCTION - COVEREDRATIO - 0.80 - - - - - - - - - - org.codehaus.mojo - findbugs-maven-plugin - 3.0.4 - - Max - Low - true - ${project.build.directory}/findbugs - - ${project.basedir}/src/main/resources/findbugs-exclude.xml - - - - - analyze-compile - compile - - check - - - - - - - - - - local - - true - - - - - org.codehaus.mojo - exec-maven-plugin - - - - /${project.artifactId} - - - - - - - - - prod - - - - org.codehaus.mojo - exec-maven-plugin - - - - /${project.artifactId} - - - - - - - - diff --git a/react-apps/self-care-portal/self-care-portal-frontend/.babelrc b/react-apps/self-care-portal/self-care-portal-frontend/.babelrc deleted file mode 100644 index 4b354732..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/.babelrc +++ /dev/null @@ -1,43 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -{ - "presets": [ - "@babel/preset-react", - [ - "@babel/preset-env", - { - "targets": { - "browsers": "last 2 versions" - }, - "modules": false, - "loose": false - } - ] - ], - "plugins": [ - "transform-class-properties" - ], - "env": { - "test": { - "plugins": [ - "transform-es2015-modules-commonjs" - ] - } - } -} diff --git a/react-apps/self-care-portal/self-care-portal-frontend/README.md b/react-apps/self-care-portal/self-care-portal-frontend/README.md deleted file mode 100644 index 8f32fd38..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/README.md +++ /dev/null @@ -1,24 +0,0 @@ -# Self care portal application structure - -**accelerator folder**: Includes the code for the default consent manager application. - -**webpack.config.js**: Contains configurations for webpack. - -**loader.js**: A custom webpack loader to override default application to use toolkit specific application. - -## Setup - -Navigate to the **self-care-portal-frontend** directory in the terminal and run the following command. - ->npm install - -Existing components can be modified and/or new components can be added as well. For more details follow the -documentation [here.](https://ob.docs.wso2.com/en/latest/develop/customize-consent-manager-ui/) - -## Start up - -To load the React app, navigate to **self-care-portal-frontend** directory and run the following command. - ->npm run build - -After a change is made to the project, rerun the above command to reflect the change. \ No newline at end of file diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/index.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/index.js deleted file mode 100644 index 50d84012..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/index.js +++ /dev/null @@ -1,44 +0,0 @@ -/** - * Copyright (c) 2023, 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 React from "react"; -import ReactDOM from "react-dom"; -import "./src/css/index.css"; -import { App } from "./src/App.js"; -import { unregister } from "./src/serviceWorker.js"; -import {disableReactDevTools} from "@fvilers/disable-react-devtools"; -import AppContextProvider from "./src/context/AppContextProvider.js"; -import { CONFIG } from "./src/config.js"; - -if (!CONFIG.IS_DEV_TOOLS_ENABLE) { - disableReactDevTools(); -} - -ReactDOM.render( - - - - - , - document.getElementById("root") -); - -// If you want your app to work offline and load faster, you can change -// unregister() to register() below. Note this comes with some pitfalls. -// Learn more about service workers: https://bit.ly/CRA-PWA -unregister(); diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/App.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/App.js deleted file mode 100644 index e284542b..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/App.js +++ /dev/null @@ -1,40 +0,0 @@ -/** - * Copyright (c) 2023, 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 React from "react"; -import "bootstrap/dist/css/bootstrap.min.css"; -import "./css/App.css"; -import { Login } from "./login/login.js"; -import { ResponseError } from "./errorPage/index.js"; -import { BrowserRouter as Router, Switch, Route } from "react-router-dom"; -import { logout } from "./login/logout.js"; -import { User } from "./data/User"; - -const idToken = User.idToken; - -export const App = () => { - return ( - - - - - logout(User?.idToken)} /> - - - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/App.test.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/App.test.js deleted file mode 100644 index 6fa0090e..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/App.test.js +++ /dev/null @@ -1,27 +0,0 @@ -/** - * Copyright (c) 2023, 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 React from 'react' -import ReactDOM from 'react-dom' -import {App} from './App' - -it('App renders without crashing', () => { - const root = document.createElement('div'); - ReactDOM.render(, root); -}); - diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/api/applicationInfo-api.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/api/applicationInfo-api.js deleted file mode 100644 index 94443630..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/api/applicationInfo-api.js +++ /dev/null @@ -1,40 +0,0 @@ -/** - * Copyright (c) 2023, 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 axios from "axios"; -import {CONFIG} from "../config"; - -/** - * Get the service provider application information. - */ -export const getApplicationInfo = async (clientIdList) => { - var serverURL = CONFIG.SERVER_URL - const requestConfig = { - method: "GET", - url: `${serverURL}/api/openbanking/application/all/metadata` - }; - - return await axios - .request(requestConfig) - .then((response) => { - return Promise.resolve(response); - }) - .catch((error) => { - return Promise.reject(error); - }); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/api/consent-api.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/api/consent-api.js deleted file mode 100644 index e41dea90..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/api/consent-api.js +++ /dev/null @@ -1,189 +0,0 @@ -/** - * Copyright (c) 2023, 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 axios from "axios"; -import { CONFIG } from "../config"; -import moment from "moment"; -import User from "../data/User"; -import Cookies from "js-cookie"; -import { specConfigurations } from "../specConfigs"; - -/** - * Get the list of consents from the API. - */ -export const getConsentsFromAPI = (user, consentTypes) => { - var adminUrl; - var defaultUrl; - - var userId = user.email - - // Accelerator only supporting the account consents type in SCP. - adminUrl = `${CONFIG.BACKEND_URL}/admin/search?consentTypes=${consentTypes}` - defaultUrl = `${CONFIG.BACKEND_URL}/admin/search?consentTypes=${consentTypes}&userIDs=${userId}` - - var selectedUrl - if (user.role === "customerCareOfficer") { - selectedUrl = adminUrl; - } else { - selectedUrl = defaultUrl - } - - const requestConfig = { - headers: { - "Content-Type": "application/json", - "Authorization": "Bearer " + Cookies.get(User.CONST.OB_SCP_ACC_TOKEN_P1), - }, - method: "GET", - url: `${selectedUrl}`, - }; - return axios - .request(requestConfig) - .then((response) => { - return Promise.resolve(response); - }) - .catch((error) => { - return Promise.reject(error); - }); -}; - - -function getFromTimeFromSearchObject(dateRange) { - if (dateRange.replace(/ /g, "") !== "") { - let fromTime = dateRange.split("/")[0].replace(/ /g, ""); - return moment(fromTime, "DD-MMM-YYYY") - .startOf("day") - .unix(); - } else { - return ""; - } -} - -function getToTimeFromSearchObject(dateRange) { - if (dateRange.replace(/ /g, "") !== "") { - let toTime = dateRange.split("/")[1].replace(/ /g, ""); - return moment(toTime, "DD-MMM-YYYY") - .endOf("day") - .unix(); - } else { - return ""; - } -} - -function getClientIdsFromSoftwareProvider(softwareProvider, appInfo) { - for (let clientId in appInfo.data) { - if (appInfo.data.hasOwnProperty(clientId)) { - let softwareClientName = - appInfo.data[clientId].metadata[specConfigurations.application.displayNameAttribute]; - if (softwareProvider.toString().toLowerCase().trim() === - softwareClientName.toString().toLowerCase()) { - return clientId; - } - } - } - return "*"; -} - -export const getConsentsFromAPIForSearch = (searchObj, user, appInfo) => { - - let currentUserEmail = user.email; - - const serverURL = `${CONFIG.BACKEND_URL}/admin/search`; - - let defaultUrl = `${serverURL}?`; - let searchUrl - let paramList = [ - "offset", - "limit", - "consentIDs", - "userIDs", - "clientIDs", - "consentStatuses", - "consentTypes" - ]; - - // Accelerator only supporting the account consents type in SCP. - if (user.role === "customerCareOfficer") { - searchUrl = defaultUrl; - } else { - searchUrl = defaultUrl + `&userIDs=${currentUserEmail}`; - } - - paramList.forEach(function (key, index) { - if (searchObj.hasOwnProperty(key) && searchObj[key] !== "") { - if (key === 'userIDs') { - if (user.role === "customerCareOfficer") { - searchUrl = searchUrl + "&" + key + "=" + searchObj[key]; - } else { - searchUrl = searchUrl + "&" + key + "=" + currentUserEmail; - } - } else if (key === 'clientIDs') { - searchUrl = searchUrl + "&" + key + "=" + - getClientIdsFromSoftwareProvider(searchObj[key], appInfo); - } else { - searchUrl = searchUrl + "&" + key + "=" + searchObj[key]; - } - } - }); - - let fromTime = getFromTimeFromSearchObject(searchObj.dateRange); - let toTime = getToTimeFromSearchObject(searchObj.dateRange); - //Appending fromTime to search query - if (fromTime !== "") { - searchUrl = searchUrl + "&" + 'fromTime' + "=" + fromTime; - } - //Appending toTime to search query - if (toTime !== "") { - searchUrl = searchUrl + "&" + 'toTime' + "=" + toTime; - } - - const requestConfig = { - headers: { - "Content-Type": "application/json", - "Authorization": "Bearer " + Cookies.get(User.CONST.OB_SCP_ACC_TOKEN_P1), - }, - method: "GET", - url: `${searchUrl}`, - }; - return axios - .request(requestConfig) - .then((response) => { - // set pagination obj - return Promise.resolve(response); - }) - .catch((error) => { - return Promise.reject(error); - }); -}; - -export const getRevokeUrl = (consentId, user) => { - const adminUrl = `${CONFIG.BACKEND_URL}/admin/revoke?consentID=${consentId}`; - const defaultUrl = `${CONFIG.BACKEND_URL}/admin/revoke?consentID=${consentId}&userID=${user.email}`; - - return user.role === 'customerCareOfficer' ? adminUrl : defaultUrl; -}; - -export const revokeConsent = (clientId, consentId, user) => { - return axios.delete(getRevokeUrl(consentId, user), { - headers: { - 'Content-Type': 'application/json', - Authorization: `Bearer ${Cookies.get(User.CONST.OB_SCP_ACC_TOKEN_P1)}`, - 'x-wso2-client-id': clientId, - 'x-fapi-financial-id': 'open-bank' - }, - }); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/api/deviceRegistration-api.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/api/deviceRegistration-api.js deleted file mode 100644 index b8b3fe7c..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/api/deviceRegistration-api.js +++ /dev/null @@ -1,41 +0,0 @@ -/** - * Copyright (c) 2023, 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 axios from "axios"; -import {CONFIG} from "../config" - -export const getDeviceRegistrationData = async (token) => { - var serverURL = CONFIG.DEVICE_REGISTRATION_URL; - const requestConfig = { - headers: { - "Content-Type": "application/json", - "Authorization": "Bearer " + token, - }, - method: "GET", - url: serverURL, - }; - - return await axios - .request(requestConfig) - .then((response) => { - return Promise.resolve(response); - }) - .catch((error) => { - return Promise.reject(error); - }); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/api/index.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/api/index.js deleted file mode 100644 index ac981194..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/api/index.js +++ /dev/null @@ -1,21 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -export * from './consent-api.js' -export * from './applicationInfo-api.js' -export * from './deviceRegistration-api.js' diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/common/Footer.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/common/Footer.jsx deleted file mode 100644 index f3e87c22..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/common/Footer.jsx +++ /dev/null @@ -1,36 +0,0 @@ -/** - * Copyright (c) 2023, 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 React from 'react' -import { common } from '../specConfigs' -import '../css/Footer.css' -import Container from 'react-bootstrap/Col' -import Row from 'react-bootstrap/Row' -import Col from 'react-bootstrap/Col' - -export const Footer = () => { - - return( - - - {common.complaintHandleLinkText} - {common.footerContent} - - - ) -} diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/common/Nav.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/common/Nav.jsx deleted file mode 100644 index e21f6432..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/common/Nav.jsx +++ /dev/null @@ -1,91 +0,0 @@ -/** - * Copyright (c) 2023, 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 React from "react"; -import "../css/Nav.css"; -import wso2Logo from "../images/wso2Logo.png"; -import Row from "react-bootstrap/Row"; -import Col from "react-bootstrap/Col"; -import Container from "react-bootstrap/Col"; -import userAvatar from "../images/userAvatar.png"; -import Image from "react-bootstrap/Image"; -import NavDropdown from "react-bootstrap/NavDropdown"; -import { Link } from "react-router-dom"; -import { logout } from "../login/logout.js"; -import { QRButton } from "../landing_page/Popup.jsx"; -import Popup from "reactjs-popup"; - -export const Nav = (user) => { - - const handleLogout = () => { - logout(user.idToken) - }; - - const showQR = () => { - return (
Show QR
) - } - - return ( - - - - { - - Logo - Consent Manager - - } - - - - User Avatar - {user.email} - - } - > - - - - - - - Log out - - - - - - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/common/index.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/common/index.js deleted file mode 100644 index 91d3a9c8..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/common/index.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -export * from './Nav.jsx' -export * from './Footer.jsx' diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/config.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/config.js deleted file mode 100644 index b729c0cb..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/config.js +++ /dev/null @@ -1,40 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -// The Identity Server URL need not be specifically configured unless the SCP is deployed in a different server. -let serverUrl; -if (window.env.USE_DEFAULT_CONFIGS) { - serverUrl = window.location.origin; -} else { - serverUrl = window.env.SERVER_URL; -} - -export const CONFIG = { - SERVER_URL: serverUrl, - SPEC: window.env.SPEC, - TENANT_DOMAIN:window.env.TENANT_DOMAIN, - TOKEN_ENDPOINT: serverUrl + "/oauth2/token", - AUTHORIZE_ENDPOINT: serverUrl + "/consentmgr/scp_oauth2_authorize", - LOGOUT_URL: serverUrl + "/oidc/logout", - REDIRECT_URI: serverUrl + "/consentmgr/scp_oauth2_callback", - BACKEND_URL: serverUrl + "/consentmgr/scp", - NUMBER_OF_CONSENTS: window.env.NUMBER_OF_CONSENTS, - VERSION: window.env.VERSION, - DEVICE_REGISTRATION_URL: serverUrl + "/api/openbanking/ciba/push-auth/discovery-data", - IS_DEV_TOOLS_ENABLE: window.env.IS_DEV_TOOLS_ENABLE -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/AppContextProvider.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/AppContextProvider.js deleted file mode 100644 index c17363cb..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/AppContextProvider.js +++ /dev/null @@ -1,45 +0,0 @@ -/** - * Copyright (c) 2023, 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 React from 'react' -import AppInfoContextProvider from './AppInfoContext'; -import ConsentContextProvider from './ConsentContext'; -import DeviceRegistrationContextProvider from './DeviceRegistrationContext'; -import SearchObjectContextProvider from './SearchObjectContext'; -import UserContextProvider from './UserContext'; - -//Higher wrapper provider component should be placed after lower wrapper provider components. -const contextProviderArray = [ - DeviceRegistrationContextProvider, - AppInfoContextProvider, - ConsentContextProvider, - SearchObjectContextProvider, - UserContextProvider] - - -const AppContextProvider = (props) => { - return ( - contextProviderArray.reduce((Children,Provider)=>{ - return( - {Children} - ); - },props.children) - ); -} - -export default AppContextProvider; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/AppInfoContext.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/AppInfoContext.js deleted file mode 100644 index 49ca61ba..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/AppInfoContext.js +++ /dev/null @@ -1,67 +0,0 @@ -/** - * Copyright (c) 2023, 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 React, { createContext, useContext, useState } from 'react'; -import { getApplicationInfo } from '../api'; -import { UserContext } from './UserContext'; - -export const AppInfoContext = createContext(); - -const AppInfoContextProvider = (props) => { - const [contextAppInfo , setAppInfo] = useState({ - isGetRequestLoading:false, - appInfo:[] - }); - - const {setResponseError} = useContext(UserContext) - - const setContextAppInfo = (payload)=> { - setAppInfo((contextAppInfo)=>({ - ...contextAppInfo, - appInfo:payload - })) - } - - const setContextAppInfoRequestLoadingStatus = (payload) => { - setAppInfo((contextAppInfo)=>({ - ...contextAppInfo, - isGetRequestLoading:payload - })) - } - - const getContextAppInfo = () => { - setContextAppInfoRequestLoadingStatus(true); - getApplicationInfo() - .then((response) => setContextAppInfo(response.data)) - .catch((error) => setResponseError(error.response.data)) - .finally(()=>setContextAppInfoRequestLoadingStatus(false)); - } - - const value = { - contextAppInfo, - getContextAppInfo - } - - return ( - - {props.children} - - ); -} - -export default AppInfoContextProvider; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/ConsentContext.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/ConsentContext.js deleted file mode 100644 index 068a3274..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/ConsentContext.js +++ /dev/null @@ -1,102 +0,0 @@ -/** - * Copyright (c) 2023, 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 React, { createContext, useContext, useState } from 'react'; -import { getConsentsFromAPI, getConsentsFromAPIForSearch } from '../api'; -import { UserContext } from './UserContext'; - -export const ConsentContext = createContext(); -const ConsentContextProvider = (props) => { - const [allContextConsents,setAllContextConsents] = useState({ - isGetRequestLoading: false, - consents: [], - metadata: { - total: 0, - count: 0, - } - }); - - const {setResponseError} = useContext(UserContext); - - const setContextConsents= (payload) => { - setAllContextConsents((allContextConsents)=>({ - ...allContextConsents, - consents:payload - })) - }; - - const setContextConsentsRequestLoadingStatus = (payload) => { - setAllContextConsents((allContextConsents)=>({ - ...allContextConsents, - isGetRequestLoading:payload - })) - }; - - const setContextConsentsMetadata = (payload) => { - setAllContextConsents((allContextConsents)=>({ - ...allContextConsents, - metadata: { - total: payload.metadata.total, - count: payload.metadata.count - } - })) - }; - - const getContextConsents = (user,consentTypes) => { - setContextConsentsRequestLoadingStatus(true) - getConsentsFromAPI(user,consentTypes) - .then((response)=>{ - setContextConsents(response.data) - setContextConsentsMetadata(response.data) - }) - .catch((error)=>{ - setResponseError(error.response.data) - }) - .finally(()=>setContextConsentsRequestLoadingStatus(false)) - }; - - const getContextConsentForSearch = (searchObj,user,appInfo)=>{ - setContextConsentsRequestLoadingStatus(true) - getConsentsFromAPIForSearch(searchObj,user,appInfo) - .then((response)=>{ - setContextConsents(response.data) - setContextConsentsMetadata(response.data) - }) - .catch((error)=>{ - setResponseError(error.response.data) - }) - .finally(()=>setContextConsentsRequestLoadingStatus(false)) - }; - - const value = { - allContextConsents, - setContextConsents, - setContextConsentsRequestLoadingStatus, - setContextConsentsMetadata, - getContextConsents, - getContextConsentForSearch - }; - - return ( - - {props.children} - - ); -} - -export default ConsentContextProvider; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/DeviceRegistrationContext.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/DeviceRegistrationContext.js deleted file mode 100644 index 684aa050..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/DeviceRegistrationContext.js +++ /dev/null @@ -1,60 +0,0 @@ -/** - * Copyright (c) 2023, 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 React, { useState, createContext, useContext } from 'react' -import { getDeviceRegistrationData } from '../api'; -import { UserContext } from './UserContext'; - -export const DeviceRegistrationContext = createContext(); - -const DeviceRegistrationContextProvider = (props) => { - const [deviceRegistrationContextData,setDeviceRegistrationContextData] = useState({ - deviceRegistrationData: "" - }); - - const {setResponseError} = useContext(UserContext) - - const setDeviceRegistrationContextInfo = (payload)=>{ - setDeviceRegistrationContextData((prevState)=>({ - ...prevState, - appInfo:payload - })) - } - - const getDeviceRegistrationContextInfo = (accessToken) => { - getDeviceRegistrationData(accessToken) - .then((response)=>{ - setDeviceRegistrationContextInfo(response.data) - }) - .catch((error) => { - setResponseError(error.response.data) - }) - } - - const value = { - deviceRegistrationContextData, - getDeviceRegistrationContextInfo - } - return ( - - {props.children} - - ); -} - -export default DeviceRegistrationContextProvider; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/SearchObjectContext.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/SearchObjectContext.js deleted file mode 100644 index c955b3b8..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/SearchObjectContext.js +++ /dev/null @@ -1,56 +0,0 @@ -/** - * Copyright (c) 2023, 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 React, { createContext, useState } from 'react'; -import {CONFIG} from "../config" -import { specConfigurations } from '../specConfigs'; - -export const SearchObjectContext = createContext(); - -const SearchObjectContextProvider = (props) => { - const [contextSearchObject,setContextSearchObject] = useState({ - limit: JSON.parse(window.localStorage.getItem("postsPerPage")) || CONFIG.NUMBER_OF_CONSENTS, - offset: 0, - dateRange: "", - consentIDs: "", - userIDs: "", - clientIDs: "", - consentStatuses: specConfigurations.status.authorised, - consentTypes: "accounts", // Accelerator only supporting the account consents type in SCP. - hideAdvanceSearchOptions: true - }); - - const [contextSearchUtilState,setContextSearchUtilState] = useState({ - searchOnClick:true - }) - - const value ={ - contextSearchObject, - setContextSearchObject, - contextSearchUtilState, - setContextSearchUtilState - } - - return ( - - {props.children} - - ); -} - -export default SearchObjectContextProvider; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/UserContext.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/UserContext.js deleted file mode 100644 index 5439892b..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/context/UserContext.js +++ /dev/null @@ -1,55 +0,0 @@ -/** - * Copyright (c) 2023, 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 React, { createContext, useState } from 'react'; - -export const UserContext = createContext(); -const UserContextProvider = (props) => { - const [currentContextUser,setCurrentUser] = useState({ - user:{}, - error:"" - }); - - const setContextUser = (userData) => { - setCurrentUser((currentContextUser)=>({ - ...currentContextUser, - user:userData - })); - }; - - const setResponseError =(error) => { - setCurrentUser((currentContextUser)=>({ - ...currentContextUser, - error:error - })); - } - - const value = { - currentContextUser, - setContextUser, - setResponseError - } - - return ( - - {props.children} - - ); -} - -export default UserContextProvider; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/App.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/App.css deleted file mode 100644 index 1b24bacc..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/App.css +++ /dev/null @@ -1,61 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -.App { - min-height: 100vh; - position: relative; - font-family: "Fira Sans"; - color:rgba(8, 18, 71, 1); -} - -.loader { - border: 10px solid #f3f3f3; - border-radius: 50%; - border-top: 10px solid rgba(8, 18, 71, 1); - width: 100px; - height: 100px; - -webkit-animation: spin 2s linear infinite; /* Safari */ - animation: spin 1s linear infinite; - margin: 0; -} - -.loaderBackground { - height: 100vh; - display: flex; - align-items: center; - justify-content: center; -} - -/* Safari */ -@-webkit-keyframes spin { - 0% { - -webkit-transform: rotate(0deg); - } - 100% { - -webkit-transform: rotate(360deg); - } -} - -@keyframes spin { - 0% { - transform: rotate(0deg); - } - 100% { - transform: rotate(360deg); - } -} diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Body.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Body.css deleted file mode 100644 index 1054a4bd..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Body.css +++ /dev/null @@ -1,74 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -.boxContainer { - border-radius: 20px; - min-height: 754px; - background: white; - position: relative; - display: flex; - justify-content: center; - margin-top: 2.25rem; - margin-bottom: 2.25rem; - width: 100%; -} - -.box { - display: inline-block; - width: 100%; -} - -@media (max-width: 500px) { - .boxContainer { - min-height: 200px; - min-width: 0; - width: 92%; - margin-right: 1rem; - margin-left: 1rem; - } - .box{ - padding: 0.2em; - width: 100%; - } -} - -.parent-componenet{ - display: grid; - grid-template-columns: 1fr 20fr; - flex-direction: row; - justify-content: space-between; - align-items: center; -} - -.searchBox { - top: 0; - right: 0; - width: 100%; -} - -.titleBar { - display: flex; - justify-content: space-between; -} - -.titleName{ - color: #081247; - top:18px; - width:300px; - font-size: 20px; -} diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Buttons.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Buttons.css deleted file mode 100644 index 074882d7..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Buttons.css +++ /dev/null @@ -1,46 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -.comButton { - background-color: white; - color: rgba(8, 18, 71, 1); - border: 1px solid rgba(8, 18, 71, 1); - border-radius: 15px; - padding: 0.25em 1.75em; - text-align: center; - text-decoration: none; - display: inline-block; - cursor: pointer; - - -webkit-box-shadow: 2px 4px 15px -9px rgba(0, 0, 0, 0.53); - box-shadow: 2px 4px 15px -9px rgba(0, 0, 0, 0.53); -} -.comButton:hover { - color: white; - background-color: rgba(8, 18, 71, 1); - transition: all ease-in-out 0.2s; - text-decoration: none; -} - -.comButton:focus { - outline: none; -} - -.pageBackBtn { - color: rgba(8, 18, 71, 1); -} diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Cards.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Cards.css deleted file mode 100644 index 7a4073dc..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Cards.css +++ /dev/null @@ -1,89 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -.cardView{ - width: 18rem; - margin:20px; - box-shadow: 0 2px 20px 0 rgba(0,0,0,0.1); - border-radius: 0.8rem; - transition: transform 200ms ease-in; - align-items: center; -} - -.card-image{ - height: 10rem; - width: 100%; - object-fit: cover; - border-color: #AAA7A7 ; - border: 2px; -} - -.card-button{ - padding: 0.1rem ; - font-family: inherit; - font-size: 12px; - font-weight: 500; - margin: 1rem; - border: 1px solid #081247; - color: #ffffff; - border-radius: 0.6rem; - transition: background 200ms ease-in, color 200ms ease-in; - background-color: #081247; - justify-content: center; - width: 180px; - justify-items: center; - height: 40px; -} - -.card-button:hover{ - background-color: white; - color: #081247; - border-color: #AAA7A7; -} - -.home-tile{ - display: flex; - flex-direction: row; - margin: 50px; - margin-top: 100px; - margin-bottom: 200px; - justify-content: center; -} - -.home { - width: 100%; /* Full width */ - min-height: calc(100vh - 100px); /* Full viewport height minus footer height */ - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - } - - -.home-content { - display: flex; - flex-direction: column; - width: 100%; - min-height: calc(100vh - 100px); - } - - @media (max-width: 768px) { - .home-content { - flex-direction: column; - } - } diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/DetailedAgreement.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/DetailedAgreement.css deleted file mode 100644 index 427130a7..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/DetailedAgreement.css +++ /dev/null @@ -1,64 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -.body { - /* margin: 2.25rem 2.25rem; */ - min-height: 84.2vh; - padding: 1.5em 2.25em; - color: rgba(8, 18, 71, 1); -} - -.row { - margin-left: 0; - margin-right: 0; -} - -#detailRow { - margin-top: 0.5rem; - min-height: 72.4vh; -} - -Col { - margin-right: 0; - margin-left: 0; -} - -#profileCol { - /* -webkit-box-shadow: 4px 7px 15px -10px rgba(0, 0, 0, 0.69); - box-shadow: 4px 7px 15px -10px rgba(0, 0, 0, 0.69); */ - border: 2px groove rgba(170, 167, 167, 0.16); - /* border: 1px solid #AAA7A7; */ - border-radius: 20px; -margin-bottom: 1rem; - background-color: white; - height: 100%; -} - -#consentDetailCol { - margin-left: 1rem; -} - -@media (max-width: 500px) { - .body{ - padding: 0.5em 1em; - margin-bottom: 1rem; - } - #consentDetailCol { - margin-left: 0; - } -} diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Footer.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Footer.css deleted file mode 100644 index e91ea7e2..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Footer.css +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (c) 2021-2023, WSO2 LLC. (https://www.wso2.com). All Rights Reserved. - * - * This software is the property of WSO2 LLC. and its suppliers, if any. - * Dissemination of any information or reproduction of any material contained - * herein in any form is strictly forbidden, unless permitted by WSO2 expressly. - * You may not alter or remove any copyright or other notice from copies of this content. - */ - -.Footer { - background-color: rgba(8, 18, 71, 1); - color: white; - bottom: 0; - /* position: relative; */ - position: relative; - height: 5.5rem; - - display: flex; - width: 100%; /* Full width */ - height: 100px; /* Set a fixed height for the footer */ - -} - -.complaintText { - color: inherit; - font-size: inherit; - text-decoration: underline; -} - -.complaintText:hover { - - color: inherit; -} - -.footerText { - justify-content: center; - text-align: center; - -} - -p { - margin-bottom: 0; -} - -.footerCol { - margin: auto; -} diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/LandingTable.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/LandingTable.css deleted file mode 100644 index e8bf01cd..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/LandingTable.css +++ /dev/null @@ -1,54 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -.infoSearchRow { - margin: 1rem 0.5rem; - color: rgba(8, 18, 71, 1); - position: relative; -} - -.table thead th { - border-top: none; - padding-bottom: 1.2em; -} - -.header1{ - width: 30%; -} - -.headerAction{ - width: 10%; -} - -.table { - color: rgba(8, 18, 71, 1); -} - -.table td::first-letter { - text-transform: uppercase; -} - -#lbl { - text-align: center; - margin: 5px; - padding-top: 2.5em; -} - -.table-responsive-sm { - min-height: 45vh; -} diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/LandingTabs.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/LandingTabs.css deleted file mode 100644 index c7f65933..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/LandingTabs.css +++ /dev/null @@ -1,53 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -.nav-tabs .nav-item.show .nav-link, -.nav-tabs .nav-link.active { - color: rgba(8, 18, 71, 1); - font-weight: 600; - background-color: #fff; - border-bottom: 3px solid rgba(8, 18, 71, 1); - transition: all ease-in-out 0.2s; -} - -.nav-tabs .nav-link { - flex-grow: 1; - text-align: center; - border-top: none; - border-left: none; - border-right: none; - color: rgba(8, 18, 71, 1); -} -a:-webkit-any-link:focus { - outline-offset: none; - outline: none; -} - -.tab-content > .active { - display: block; - /* transition-delay: 1s; */ - transition: all ease-in-out 0.75s; -} - -@media (max-width: 500px) { - .nav-tabs{ - display: flex; - flex-direction: column; - } - -} diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Leftbar.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Leftbar.css deleted file mode 100644 index 20d1954b..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Leftbar.css +++ /dev/null @@ -1,106 +0,0 @@ -/** - * Copyright (c) 2024, 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. - */ - -.leftbar { - background: #081247; - color: #fff; - height: 100%; - transition: all 0.5s; -} - -@media (max-width: 500px) { - .leftbar { - width: 150px; - left: 0; - } - .list-options { - font-size: 12px; - padding: 10px 1px; - } - .Lefticon { - font-size: 12px; - } - .bars { - font-size: 20px; - } -} - -.leftbar-options { - display: flex; - flex-direction: column; - width: 100%; - height: fit-content; - left: 0; - top: 0; -} - -.list-options { - display: flex; - color: white; - gap: 10px; - padding: 10px 15px; - text-decoration: none; - transition: 0.2s cubic-bezier(0.6, -0.28, 0.735, 0.045); - white-space: nowrap; - font-size: 14px; - font-weight: bold; - margin-top: 20px; - text-align: center; -} - -.list-options:hover { - transition: 0.3s cubic-bezier(0.6, -0.28, 0.735, 0.045); - background-color: rgb(45, 51, 89) ; - color: white ; - font-weight: bold; - border-radius: 200px; - transform: scale(1.05); -} - -.list-options.active { - background-color: rgb(45, 51, 89) !important; - color: white !important ; - border-radius: 200px; -} - -.flex-column { - display: flex; - flex-direction: column; - justify-content: space-evenly; - height: 60%; - width: max-content; -} - -.Lefticon { - width: 30px; - height: 25px; - border-radius: 12px; -} - -.top-section { - display: flex; - align-items: center; - padding: 20px 15px; -} - -.bars { - display: flex; - font-size: 25px; - margin-left: 0px; - cursor: pointer; -} diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Nav.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Nav.css deleted file mode 100644 index 67072b12..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Nav.css +++ /dev/null @@ -1,103 +0,0 @@ - /** - * Copyright (c) 2023, 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. - */ - - .nv{ - padding-right: 0; - padding-left: 0; - } - - .Navbar { - display: flex; - background-color: white; - box-shadow: 0 2px 2px -2px rgba(0,0,0,.2); - flex-grow: 1; - } - - .navLogoImage { - width: 125px; - } - - .navUserImage { - width: 50px; - margin-right: 1rem; - } - - .navAppName { - margin: auto; - font-size: 2.5rem; - color: rgba(8, 18, 71, 1); - font-weight: 400; - } - - .NavDropdown { - justify-content: flex-end; - margin: auto; - align-items: center; - display: flex; - } - - #dropdown-custom-components { - align-items: center; - background-color: white; - border-style: none; - color: rgba(8, 18, 71, 1) - } - - #dropdown-menu-items{ - color: rgba(8, 18, 71, 1) - } - - .branding { - margin-left: inherit; - flex-grow: 2; - } - - #navLinkStyle:hover{ - text-decoration: none; - } - - @media (max-width: 500px) { - .navAppName { - font-size: 1.3rem; - } - .navLogoImage { - width: 50px; - } - .dropdown-userId { - display: none; - } - .navUserImage { - width: 25px; - margin-right: 8px; - } - - .NavDropdown{ - padding-right: 0.5em; - } - - .branding { - align-content: center; - justify-content: center; - margin-top: 5px; - flex-grow: 3; - padding-left: 0em; - padding-right: 0em; - - } - - } \ No newline at end of file diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Pagination.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Pagination.css deleted file mode 100644 index 49811fff..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Pagination.css +++ /dev/null @@ -1,118 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -.paginationRow { - margin: 1.5rem 1.25rem; -} - -.pagination-container { - display: flex; - justify-content: center; - align-items: center; - /* background: rgba(216, 73, 73, 0.2); */ - width: 100%; - font-weight: 500; - font-size: 15px; -} - -.pagination-container a { - display: flex; - justify-content: center; - align-items: center; - color: rgba(8, 18, 71, 1); - /* padding: 8px 14px; */ - height: 2.25rem; - width: 2.25rem; - text-decoration: none; - transition: background-color 0.2s; - border: 1px solid #ddd; - cursor: pointer; -} - -.pagination-container a.active { - background-color: rgba(8, 18, 71, 1); - color: white; - border: 1px solid rgba(8, 18, 71, 1); -} - -.pagination-container a.disabled { - opacity: 0.2; -} -.pagination-container a:hover:not(.active) { - background-color: rgb(238, 238, 238); -} - -.postsPerPageCol { - margin-left: 7rem; - display: flex; -} - -.dropdown-menu { - min-width: 5rem; -} - -#postsPerPageDropdown { - background-color: white; - color: rgba(8, 18, 71, 1); - border: 1px solid rgba(8, 18, 71, 1); - border-radius: 15px; - padding: 0.25em 0.7em; - text-align: center; - text-decoration: none; - display: inline-block; - cursor: pointer; - margin-left: 1rem; - - -webkit-box-shadow: 2px 4px 15px -9px rgba(0, 0, 0, 0.53); - box-shadow: 2px 4px 15px -9px rgba(0, 0, 0, 0.53); -} - -#postsPerPageDropdown[aria-expanded="true"] { - color: white; - background-color: rgba(8, 18, 71, 1); - transition: all ease-in-out 0.2s; - text-decoration: none; -} - -.pagination { - display: flex; - justify-content: flex-end; - list-style: none; - cursor: pointer; -} - -.pagination a { - padding: 10px; - border-radius: 5px; - border: 1px solid rgba(8, 18, 71, 1); - color: rgba(8, 18, 71, 1); -} - -.pagination__link { - font-weight: bold; -} - -.pagination__link--active a { - color: #fff; - background: rgb(135, 149, 191); -} - -.pagination__link--disabled a { - color: rgb(198, 197, 202); - border: 1px solid rgb(198, 197, 202); -} diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Popup.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Popup.css deleted file mode 100644 index f3a08562..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Popup.css +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - - .device-registration-code > canvas{ - margin-left: 10% !important; - margin-top: 5% !important; - } - - .device-registration-header { - margin-left: 10%; - } diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Profile.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Profile.css deleted file mode 100644 index 2fa2ad29..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Profile.css +++ /dev/null @@ -1,142 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -.profileBody { - /* color: rgba(8, 18, 71, 1); */ - padding-left: 1em; - padding-right: 1em; - margin-top: 1.5rem; - margin-bottom: 1.5rem; -} - -#profileLogo { - border-radius: 50%; - width: 10rem; - height: 10rem; -} - -.profileMain { - text-align: center; - margin-top: -1rem; -} - -.confirmLink { - margin-top: 2.5rem; -} - -.withdrawBtn { - background-color: white; - color: #d9534f; - border: 1px solid #d9534f; - border-radius: 15px; - padding: 0.25em 1.75em; - text-align: center; - text-decoration: none; - display: inline-block; - cursor: pointer; -} - -.actionButtons { - margin-top: 1rem; - display: flex; - justify-content: center; - flex-wrap: wrap; -} - -.actionBtnDiv { - padding: 0.5rem; -} - -.withdrawBtn:hover { - color: white; - background-color: #d9534f; - transition: all ease-in-out 0.2s; - text-decoration: none; -} - -.withdrawBtn:focus { - outline: none; -} - -.horizontalLine { - border: none; - /* width: 100%; */ - height: 1.3125rem; - margin-top: 0; - border-bottom: 2px groove rgba(170, 167, 167, 0.16); - box-shadow: 0 4px 9px -10px rgba(0, 0, 0, 0.53); - /* margin: -50px auto 10px; */ -} - -.infoBox { - text-align: left; - margin-top: 1rem; -} - -.infoBox h5 { - margin-bottom: 1rem; -} - -.accredBox { - display: flex; - padding: 0.5em; - margin-top: 1rem; - margin-bottom: 1rem; - flex-wrap: wrap; -} - -.accredInfo { - margin-left: 2rem; -} - -#logo { - /* width: 5rem; */ - margin-left: 0.4rem; - height: 3rem; -} - -.note{ - margin-top: 2rem; -} - -#downloadIcon { - color: #527aff; -} - -@media (max-width: 1024px) { - .profileMain { - margin-top: 0.5rem; - } - #logo { - /* width: 5rem; */ - margin: auto; - margin-bottom: 0.5rem; - } - .accredBox { - - padding-left: 0em; - padding-right: 0em; - - } - .accredInfo { - margin-left: 0rem; - padding-left: 0.5em; - padding-right: 0.5em; - } - -} diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Search.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Search.css deleted file mode 100644 index 7ef50054..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/Search.css +++ /dev/null @@ -1,216 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ -.inputBox { - margin-top: 10px; - margin-left: 0; - border-radius: 15px; - border: 1px solid gray; - width: 10vw; - min-width: 15vw; - padding: 0.25em 1.75em; - -webkit-box-shadow: 2px 4px 15px -9px rgba(0, 0, 0, 0.53); - box-shadow: 2px 4px 15px -9px rgba(0, 0, 0, 0.53); -} - -.searchcontent { - transition: opacity 0.5s ease-out; - display: none; - opacity: 0; - height: 0; - width: 100%; -} - -.calIcon { - font-size: 1.6em; -} - -.calBorder { - margin-left: 0; - margin-top: 0.1em; - width: auto; - height: auto; - border-radius: 15px; - background-color: white; - border: 1px solid rgba(8, 18, 71, 1); - align-content: center; - padding: 0.3em; -} - -.calBorder:hover { - background-color: rgba(8, 18, 71, 1); - border: 1px solid white; - cursor: pointer; -} - -.calBorder:hover .calIcon { - background-color: rgba(8, 18, 71, 1); - border: 1px solid white; - cursor: pointer; -} - -.calBorder:hover .calIcon { - color: white; -} - -.sIcon { - font-size: 1.1em; - text-align: center; - color: white; -} - -.sIcon:hover { - color: white; -} - -.sBorder { - width: 4em; - height: auto; - border-radius: 15px; - background-color: #081247; - border: 1px solid rgba(8, 18, 71, 1); - align-content: center; - padding: 0.3em; - border-color: #081247; - display: inline-block; - float: right; - margin: 10px; -} - -.sBorder:hover { - background-color: white; - border: 1px solid rgba(8, 18, 71, 1); - cursor: pointer; - color: rgba(8, 18, 71, 1); -} - -.sBorder:hover .sIcon { - color:rgba(8, 18, 71, 1); -} - -.sbBorder { - margin-left: 0; - margin-right: 0em; - width: 23vw; - height: auto; - border-radius: 15px; - background-color: white; - border: 1px solid rgba(8, 18, 71, 1); - align-content: center; - padding: 0.3em; -} - -.sbBorder:hover { - background-color: rgba(8, 18, 71, 1); - border: 1px solid white; - cursor: pointer; -} - -.sbBorder:hover .sIcon { - color: white; -} - -.calandarArea { - display: none; -} - -.calander { - margin: 0em; - border-radius: 15px; - border: 0.5px solid gray; - padding: 0.25em 1.75em; - -webkit-box-shadow: 2px 4px 15px -9px rgba(0, 0, 0, 0.53); - box-shadow: 2px 4px 15px -9px rgba(0, 0, 0, 0.53); -} - -.inputBox:focus { - outline: none; - outline-color: none; - box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.53); - transition: all ease-in-out 0.2s; -} - -button, -input { - overflow: visible; - color: rgba(8, 18, 71, 1); -} - -.searchButton { - background-color: white; - color: rgba(8, 18, 71, 1); - border: 1px solid rgba(8, 18, 71, 1); - border-radius: 15px; - padding: 0.25em 0.7em; - text-align: center; - text-decoration: none; - display: inline-block; - cursor: pointer; - margin-left: 1rem; - - -webkit-box-shadow: 2px 4px 15px -9px rgba(0, 0, 0, 0.53); - box-shadow: 2px 4px 15px -9px rgba(0, 0, 0, 0.53); -} - -.searchButton:hover { - color: white; - background-color: rgba(8, 18, 71, 1); - transition: all ease-in-out 0.2s; - text-decoration: none; -} - -.searchButton:focus { - outline: none; -} - -#filterDropdown { - background-color: white; - color: rgba(8, 18, 71, 1); - border: 1px solid rgba(8, 18, 71, 1); - border-radius: 15px; - padding: 0.25em 0.7em; - text-align: center; - text-decoration: none; - display: inline-block; - cursor: pointer; - margin-left: 1rem; - - -webkit-box-shadow: 2px 4px 15px -9px rgba(0, 0, 0, 0.53); - box-shadow: 2px 4px 15px -9px rgba(0, 0, 0, 0.53); -} - -#filterDropdown[aria-expanded="true"] { - color: white; - background-color: rgba(8, 18, 71, 1); - transition: all ease-in-out 0.2s; - text-decoration: none; -} -.dropdown-menu.show { - min-width: 10rem; - padding: 1em 1em; -} - -.formCheckbox { - margin-bottom: 0; -} -.checkItem { - color: rgba(8, 18, 71, 1); -} - -.form-check-label { - color: rgba(8, 18, 71, 1); -} diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/SharingDetails.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/SharingDetails.css deleted file mode 100644 index e4b0ff75..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/SharingDetails.css +++ /dev/null @@ -1,78 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -/* .horizontalLine { - border: none; - - height: 1.3125rem; - margin-top: 0; - border-bottom: 2px groove rgba(170, 167, 167, 0.16); - box-shadow: 0 4px 9px -10px rgba(0, 0, 0, 0.53); - -} */ - -#sharingDetailsHr { - margin-top: 0rem; - height: 0; -} - -.infoItem { - margin-bottom: 1rem; -} - -.clusterRow { - display: flex; - background-color: white; - cursor: pointer; -} - -.clusterRow:hover { - background-color: #f3f3f3; -} - -.clusterContainer { - border: 2px groove rgba(170, 167, 167, 0.16); - border-radius: 15px; - margin-bottom: 0.5rem; -} - -.clusterLabel { - display: flex; - align-items: center; - padding-left: 0; - flex-basis: auto; -} -.clusterRow h6 { - margin-bottom: 0; -} - -.clusterRow .col { - margin: 0.2rem 0.2rem; -} - -.arrow { - display: flex; - justify-content: flex-end; - /* justify-content: center; */ - align-items: center; -} - -.permissionsUL { - margin-bottom: 0; -} - diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/StatusLabel.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/StatusLabel.css deleted file mode 100644 index e2671744..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/StatusLabel.css +++ /dev/null @@ -1,38 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -.statuslbl { - display: flex; - justify-content: flex-end; - /* margin-top: 1.5rem; */ -} - -.badge { - padding: 0.6em 1.5em; - font-size: 1em; - color: white; - /* background-color: rgb(50, 205, 50); */ -} - -@media (max-width: 500px) { - .statuslbl { - display: flex; - justify-content: center; - margin-top: 1.5rem; - } -} diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/index.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/index.css deleted file mode 100644 index 33e13a17..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/index.css +++ /dev/null @@ -1,31 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -body { - margin: 0; - /* font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', - 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', - sans-serif; */ - -webkit-font-smoothing: antialiased; - -} - -code { - font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', - monospace; -} \ No newline at end of file diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/withdrawal.css b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/withdrawal.css deleted file mode 100644 index bc080bdd..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/css/withdrawal.css +++ /dev/null @@ -1,125 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -.withdrawContainer { - border: 2px groove rgba(170, 167, 167, 0.16); - border-radius: 15px; - min-height: 78vh; - width: 35vw; - margin-top: 2rem; - margin-bottom: 2rem; - color: rgba(8, 18, 71, 1); - padding: 2em 2em; - padding-bottom: 1em; -} - -.withdrawalHeading { - font-weight: 400; -} - -.withdrawTitle { - text-align: center; -} - -.withdrawWarnIcon { - color: #d9534f; - margin-bottom: 1.5rem; -} - -.progress { - height: 1.2rem; - width: 10%; - margin: auto; - margin-top: 1rem; - - border-radius: 1rem; -} - -.progress-bar { - background-color: rgba(8, 18, 71, 1); -} - -.infoHeading { - margin-top: 2rem; - margin-bottom: 1rem; -} - -.subHeadings { - margin-top: 1.5rem; -} - -#withdrawStep1ActionBtns { - margin-top: 6rem; -} -.withdrawInfo{ - min-height: 29vh; -} - -.withdrawalPermissions{ - margin-top: 1rem; - -} - -.confirmationHeading{ - text-align: center; -} - -.withdrawMsgModalHeader{ - justify-content: center; - border-bottom: none; -} - -#withdrawSuccess{ - color: #5cb85c; -} - -#withdrawFail{ - color: #d9534f; -} - -.withdrawMsgModalBody{ - color: rgba(8, 18, 71, 1); - padding-right: 2em; - padding-left: 2em; - text-align: center; -} - -.withdrawMsgModalFooter{ - justify-content: center; - border-top: none; -} - -.modal-content { - - background-color: #fff; - - border-radius: 15px; - -} - -@media (max-width: 500px) { - .withdrawContainer { - width: auto; - margin-right: 1rem; - margin-left: 1rem; - padding-bottom: 2em; - } - #withdrawStep1ActionBtns { - margin-top: 2rem; - } -} diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/data/User.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/data/User.js deleted file mode 100644 index 2a4185f0..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/data/User.js +++ /dev/null @@ -1,71 +0,0 @@ -/** - * Copyright (c) 2023, 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 { id } from "date-fns/locale"; -import Cookies from "js-cookie"; - -export default class User { - constructor() { - let idToken = getIdToken(); - - if (idToken) { - this.isLogged = true; - this.idToken = idToken; - this.email = decodeIdToken(idToken).sub; - this.role = decodeIdToken(idToken).user_role; - } else { - this.isLogged = false; - } - } -} - -/** - * Concat id_token cookies and return token - * @returns {String|null} - If cookies found, return its value, Else null value is returned - */ -const getIdToken = () => { - const idTokenPart1 = Cookies.get(User.CONST.OB_SCP_ID_TOKEN_P1); - const idTokenPart2 = Cookies.get(User.CONST.OB_SCP_ID_TOKEN_P2); - - if (!idTokenPart1 || !idTokenPart2) { - return null; - } - return idTokenPart1 + idTokenPart2; -}; - -export const getAccessToken = () => { - const accessTokenPart1 = Cookies.get(User.CONST.OB_SCP_ACC_TOKEN_P1); - const accessTokenPart2 = Cookies.get(User.CONST.OB_SCP_ACC_TOKEN_P2); - - if (!accessTokenPart1 || !accessTokenPart2) { - return null; - } - return accessTokenPart1 + accessTokenPart2; -}; - -export function decodeIdToken(token) { - return JSON.parse(atob(token.split(".")[1])); -} - -User.CONST = { - OB_SCP_ACC_TOKEN_P1: "OB_SCP_AT_P1", - OB_SCP_ACC_TOKEN_P2: "OB_SCP_AT_P2", - OB_SCP_ID_TOKEN_P1: "OB_SCP_IT_P1", - OB_SCP_ID_TOKEN_P2: "OB_SCP_IT_P2", - OB_SCP_REF_TOKEN_P1: "OB_SCP_RT_P1", - OB_SCP_REF_TOKEN_P2: "OB_SCP_RT_P2", -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/AccountsInfo.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/AccountsInfo.jsx deleted file mode 100644 index 87cc63fe..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/AccountsInfo.jsx +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) 2021-2023, WSO2 LLC. (https://www.wso2.com). All Rights Reserved. - * - * This software is the property of WSO2 LLC. and its suppliers, if any. - * Dissemination of any information or reproduction of any material contained - * herein in any form is strictly forbidden, unless permitted by WSO2 expressly. - * You may not alter or remove any copyright or other notice from copies of this content. - */ - -//AccountsInfo for Default Application -import React from "react"; -import {lang, specConfigurations} from "../specConfigs/specConfigurations.js"; -import {permissionBindTypes} from "../specConfigs/common"; - -export const AccountsInfo = ({consent, consentType}) => { - - const consentStatus = consent.currentStatus; - const debtorAccounts = consent.consentMappingResources; - let keyDatesConfig = lang[consentType].filter((lbl) => - lbl.id.toLowerCase().includes(consent.currentStatus.toLowerCase()))[0]; - return ( -
- {specConfigurations.consent.permissionsView.permissionBindType === - permissionBindTypes.samePermissionSetForAllAccounts ? ( - <> -
{keyDatesConfig.accountsInfoLabel}
- {debtorAccounts.map((account, index) => ( - account.mappingStatus === "active" ? -
  • {account.accountId}
  • - : - <> - ))} -
    {""}
    - - ) : ( - <> - ) - } - -
    - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/Accreditation.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/Accreditation.jsx deleted file mode 100644 index 62436fce..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/Accreditation.jsx +++ /dev/null @@ -1,41 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -//Accreditation for Default Application -import React from "react"; - -export const Accreditation = ({infoLabel, accreditationNumber, applicationName}) => { - return ( - <> -
    {infoLabel.accreditation.accreditationLabel}
    -

    - {applicationName} {infoLabel.accreditation.accreditWebsite} [ - - {/* add website link */} - {infoLabel.accreditation.accreditWebsiteLinkText} - - ] -

    -
    -
    -

    {infoLabel.accreditation.accreditDR} {accreditationNumber}

    -
    -
    - - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/DataSharedInfo.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/DataSharedInfo.jsx deleted file mode 100644 index c35f9ef3..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/DataSharedInfo.jsx +++ /dev/null @@ -1,73 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -//DataSharedInfo for Default application -import React from "react"; -import {specConfigurations} from "../specConfigs/specConfigurations.js"; -import {PermissionItem} from "../detailedAgreementPage"; -import {getValueFromConsent} from "../services"; -import {permissionBindTypes} from "../specConfigs/common"; - -let id = 0; -export const DataSharedInfo = ({consent, infoLabels}) => { - - let permissions = []; - if (specConfigurations.consent.permissionsView.permissionBindType === - permissionBindTypes.samePermissionSetForAllAccounts) { - permissions = getValueFromConsent( - specConfigurations.consent.permissionsView.permissionsAttribute, consent) - if (permissions === "" || permissions === undefined) { - permissions = []; - } - } else { - permissions = {}; - let detailedAccountsList = getValueFromConsent("consentMappingResources", consent); - detailedAccountsList.map((detailedAccount) => { - if (permissions[detailedAccount.accountId] === undefined) { - permissions[detailedAccount.accountId] = [] - permissions[detailedAccount.accountId].push(detailedAccount.permission) - } else { - permissions[detailedAccount.accountId].push(detailedAccount.permission) - } - }) - } - return ( -
    -
    {infoLabels.dataSharedLabel}
    - {specConfigurations.consent.permissionsView.permissionBindType === - permissionBindTypes.differentPermissionsForEachAccount ? - ( - Object.keys(permissions).map((account) => { - return <> -
    Account : {account}
    -
    - {permissions[account].map((permission) => ( - - ))} -
    - - }) - ) : ( -
    - -
    - ) - } -
    - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/DetailedAgreement.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/DetailedAgreement.jsx deleted file mode 100644 index fde91134..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/DetailedAgreement.jsx +++ /dev/null @@ -1,139 +0,0 @@ -/** - * Copyright (c) 2023, 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 React, {useContext, useEffect, useState} from "react"; -import {Link} from "react-router-dom"; -import Container from "react-bootstrap/Container"; -import Row from "react-bootstrap/Row"; -import Col from "react-bootstrap/Col"; -import {Profile, SharingDetails} from "../detailedAgreementPage"; -import "../css/Buttons.css"; -import "../css/DetailedAgreement.css"; -import {FontAwesomeIcon} from "@fortawesome/react-fontawesome"; -import {faCaretSquareLeft} from "@fortawesome/free-solid-svg-icons"; -import {lang, specConfigurations} from "../specConfigs/specConfigurations"; -import {getDisplayName} from "../services"; -import {getLogoURL} from "../services/utils"; -import { UserContext } from "../context/UserContext"; -import { ConsentContext } from "../context/ConsentContext"; -import { AppInfoContext } from "../context/AppInfoContext"; -import { SearchObjectContext } from "../context/SearchObjectContext"; - -export const DetailedAgreement = ({match}) => { - const {currentContextUser} = useContext(UserContext); - const {getContextConsentForSearch,allContextConsents} = useContext(ConsentContext); - const {contextAppInfo} = useContext(AppInfoContext); - const {contextSearchObject} = useContext(SearchObjectContext) - - let searchObj = contextSearchObject; - const currentUser = currentContextUser.user; - const consents = allContextConsents.consents; - const appInfo = contextAppInfo.appInfo; - - const [consentTypeKey, setConsentTypeKey] = useState(searchObj.consentTypes); - const [consent, setConsent] = useState(() => { - setConsentTypeKey(searchObj.consentTypes); - let search = { - ...searchObj, - limit: 1, - offset: 0, - dateRange: "", - consentIDs: match.params.id, - userIDs: "", - clientIDs: "", - consentStatuses: "", - consentTypes: "" - } - getContextConsentForSearch(search,currentUser,appInfo); - const matchedConsentId = match.params.id; - let matchedConsent = consents.data.filter( - (consent) => consent.consentId === matchedConsentId - ); - return matchedConsent[0]; - }); - - const [applicationName, setApplicationName] = useState(() => { - return getDisplayName(appInfo, consent.clientId); - }); - const [logoURL, setLogoURL] = useState(() => { - return getLogoURL(appInfo, consent.clientId); - }); - const [infoLabel, setInfoLabel] = useState(() => { - const labels = lang[consentTypeKey].filter((lbl) => - lbl.id.split(",").some(x => x.toLowerCase() === consent.currentStatus.toLowerCase())); - return getInfoLabel(labels[0], consent); - }); - - useEffect(() => { - const matchedConsentId = match.params.id; - let matchedConsent = consents.data.filter( - (consent) => consent.consentId === matchedConsentId - ); - setConsent(matchedConsent[0]); - }, [consents]); - - useEffect(() => { - const labels = lang[consentTypeKey].filter((lbl) => - lbl.id.split(",").some(x => x.toLowerCase() === consent.currentStatus.toLowerCase())); - setInfoLabel(getInfoLabel(labels[0], consent)); - }, [consent]); - - function getInfoLabel(currentLabel, consent) { - // check consent's mapping statuses are active - const authResources = consent.authorizationResources; - if (Array.isArray(authResources) && authResources.length) { - // consent has more than one authorization resources - const currentAuthResources = authResources.filter(ar => ar.userId === currentUser.email); - if (Array.isArray(currentAuthResources) && currentAuthResources.length > 0) { - const currentAuthResource = currentAuthResources[0]; - const mappings = consent.consentMappingResources - .filter(mapping => mapping.authorizationId === currentAuthResource.authorizationId); - if (mappings.every(consentMapping => consentMapping.mappingStatus === "inactive")) { - // every consent mapping is inactive - return lang[consentTypeKey].filter((lbl) => - lbl.id.split(",").some(x => x.toLowerCase() === consent.currentStatus.toLowerCase()))[0]; - } - } - } - return currentLabel; - } - - return ( - - - - - {/* Back */} - - - - - - - - - - - - - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/KeyDatesInfo.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/KeyDatesInfo.jsx deleted file mode 100644 index 98fd48fb..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/KeyDatesInfo.jsx +++ /dev/null @@ -1,139 +0,0 @@ -/** - * Copyright (c) 2023, 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 {lang, specConfigurations} from "../specConfigs/specConfigurations"; -import {keyDateTypes} from "../specConfigs/common"; -import React from "react"; -import moment from "moment"; -import {getValueFromConsent} from "../services"; -import {getExpireTimeFromConsent} from "../services/utils"; - -export const KeyDatesInfo = ({consent, infoLabels, consentType}) => { - - let keyDatesConfig = infoLabels; - const consentStatus = consent.currentStatus; - const currentDate = moment().format("YYYY-MM-DDTHH:mm:ss[Z]"); - const expirationDateTime = getExpireTimeFromConsent(consent, "YYYY-MM-DDTHH:mm:ss[Z]") - let isExpired = (expirationDateTime !== "") ? moment(currentDate).isAfter(moment(expirationDateTime)) : false; - - if (consentStatus === specConfigurations.status.authorised && isExpired) { - keyDatesConfig = lang[consentType].filter((lbl) => - lbl.id.toLowerCase().includes(specConfigurations.status.expired.toLowerCase()))[0]; - } - - let keyDatesMap = keyDatesConfig.keyDates.map((keyDate) => { - if (keyDate.type == keyDateTypes.date) { - try { - let timestamp = getValueFromConsent(keyDate.dateParameterKey, consent); - // Get timestamp in millis - timestamp = getLongTimestampInMillis(timestamp); - return ( - <> -
    {keyDate.title}
    -

    {moment(timestamp).format(keyDate.dateFormat)}

    - - ) - } catch (e) { - return ( - <> -
    {keyDate.title}
    -

    - - ) - } - } else if (keyDate.type == keyDateTypes.dateRange) { - try { - let timeRanges = keyDate.dateParameterKey.split(",") - let fromTime = getValueFromConsent(timeRanges[0], consent); - let toTime = getValueFromConsent(timeRanges[1], consent); - - // Get timestamp in millis - fromTime = getLongTimestampInMillis(fromTime); - toTime = getLongTimestampInMillis(toTime); - - return ( - <> -
    {keyDate.title}
    -

    {moment(fromTime).format(keyDate.dateFormat)} - - {moment(toTime).format(keyDate.dateFormat)}

    - - ) - } catch (e) { - return ( - <> -
    {keyDate.title}
    -

    - - ) - } - } else if (keyDate.type == keyDateTypes.value) { - try { - let valueParameterKey = keyDate.valueParameterKey; - let valueFromConsent = getValueFromConsent(valueParameterKey, consent); - - if (!valueFromConsent || Object.keys(valueFromConsent).length === 0) { - valueFromConsent = "N/A"; - } else if (valueParameterKey === "receipt.Data.Initiation.InstructedAmount") { - valueFromConsent = `${valueFromConsent.Amount} ${valueFromConsent.Currency}`; - } - - return ( - <> -
    {keyDate.title}
    -

    {valueFromConsent}

    - - ) - } catch (e) { - return ( - <> -
    {keyDate.title}
    -

    - - ) - } - } else { - return ( - <> -
    {keyDate.title}
    -

    {keyDate.text}

    - - ) - } - }); - - // Method to convert epoch second timestamps to epoch millis - function getLongTimestampInMillis(timestamp) { - if (timestamp.toString().length === 10) { - timestamp = timestamp * 1000; - } - return timestamp; - } - - return ( -
    -
    {keyDatesConfig.keyDatesInfoLabel}
    -
    - {keyDatesMap.map((item, index) => ( -
    - {item} -
    - ))} -
    -
    - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/PermissionItem.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/PermissionItem.jsx deleted file mode 100644 index 7c378fdc..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/PermissionItem.jsx +++ /dev/null @@ -1,129 +0,0 @@ -/** - * Copyright (c) 2023, 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 { permissionDataLanguage } from "../specConfigs/permissionDataLanguage.js"; -import React, { useEffect, useState } from "react"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import { faCaretDown, faCaretUp } from "@fortawesome/free-solid-svg-icons"; -import { Accordion, Card, Col } from "react-bootstrap"; - -export const PermissionItem = ({ permissionScope }) => { - const [showDetailedPermissions, setShowDetailedPermissions] = useState(false); - const [permissionsData, setPermissionsData] = useState([]); - - useEffect(() => { - const hasPermissions = permissionScope.length > 0; - - if (hasPermissions) { - const updatedDataLanguage = permissionDataLanguage.map((data) => { - if (data.dataCluster === "Permissions" && Array.isArray(permissionScope)) { - const permissionsWithDescriptions = permissionScope.map((permission) => { - const permissionData = { - name: permission, - description: getPermissionDescription(permission), - }; - - return permissionData; - }); - - return { - ...data, - permissions: permissionsWithDescriptions, - }; - } - return data; - }); - setPermissionsData(updatedDataLanguage); - } else { - setPermissionsData([]); - } - }, [permissionScope]); - - const getPermissionDescription = (permission) => { - const permissionObject = permissionDataLanguage.find( - (data) => data.dataCluster === "Permissions" - ); - - if (permissionObject) { - const permissionData = permissionObject.permissions.find( - (perm) => perm.name === permission - ); - - if (permissionData) { - return permissionData.description; - } - } - - return ""; // Default description if no match found - }; - const toggle = () => setShowDetailedPermissions(!showDetailedPermissions); - - // must add conditional statements for data clusters and permissions - // when response is adjusted to receive the customer type (business, individual) - - return ( - <> - - {permissionsData.map((data, index) => ( - - - -
    {data.dataCluster}
    - - - - -
    - - -
    {data.title}
    - {data.permissions.length > 0 ? ( -
      - {data.permissions.map((permission, permissionIndex) => ( -
    • - {data.dataCluster === "Permissions" && permission.description && ( - {permission.description} - )} - {data.dataCluster === "Your Account Details" && ( - <> - {permission} - - )} -
    • - ))} -
    - ) : ( -

    No permissions available.

    - )} -
    -
    -
    - ))} -
    - - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/Profile.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/Profile.jsx deleted file mode 100644 index 1fb5eeb1..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/Profile.jsx +++ /dev/null @@ -1,62 +0,0 @@ -/** - * Copyright (c) 2023, 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 React, {useEffect, useState} from "react"; -import {Accreditation, ProfileMain, StatusLabel} from "../detailedAgreementPage"; - -import "../css/Profile.css"; -import "../css/Buttons.css"; -import {getExpireTimeFromConsent} from "../services/utils"; - -export const Profile = ({consent, infoLabel, appicationName, logoURL, consentType}) => { - - - const [expireTime, setExpireTime] = useState(() => { - return getExpireTimeFromConsent(consent, "YYYY-MM-DDTHH:mm:ss[Z]"); - }); - - useEffect(() => { - setExpireTime(getExpireTimeFromConsent(consent, "YYYY-MM-DDTHH:mm:ss[Z]")); - }, [consent]); - - - return ( - <> -
    - - -
    -
    - -
    -
    -
    Other important information
    -

    - There may be additional important information not shown here. Please - check this sharing arrangement of {appicationName}’s - website/app. -

    -
    -
    - - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/ProfileMain.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/ProfileMain.jsx deleted file mode 100644 index 12a261e5..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/ProfileMain.jsx +++ /dev/null @@ -1,88 +0,0 @@ -/** - * Copyright (c) 2023, 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 React, {useState} from "react"; -import {Container} from "react-bootstrap"; -import {Link} from "react-router-dom"; -import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' -import { faDownload } from '@fortawesome/free-solid-svg-icons'; -import {withdrawLang, lang} from "../specConfigs"; -import ADRLogo from "../images/ADRLogo.png"; -import moment from "moment"; -import {specConfigurations} from "../specConfigs/specConfigurations"; -import {generatePDF, getExpireTimeFromConsent} from "../services/utils"; - - -export const ProfileMain = ({consent, infoLabel, appicationName, logoURL}) => { - - const consentConsentId = consent.consentId; - const currentDate = moment().format("YYYY-MM-DDTHH:mm:ss[Z]"); - - if (logoURL === undefined || logoURL === '') { - logoURL = ADRLogo - } - - function isNotExpired() { - try { - let expireTimeFromConsent = getExpireTimeFromConsent(consent, "YYYY-MM-DDTHH:mm:ss[Z]"); - if (!expireTimeFromConsent) { - return true; - } - return moment(currentDate) - .isBefore(expireTimeFromConsent); - } catch (e) { - return true; - } - } - - const consentStatusLabel = (consent.currentStatus.toLowerCase() === - specConfigurations.status.authorised.toLowerCase() && !isNotExpired()) - ? specConfigurations.status.expired : infoLabel.label; - return ( - - -

    {appicationName}

    - <> -
    - generatePDF(consent, appicationName, consentStatusLabel)}> - {`${infoLabel.profile.confirmation} `} - - -
    - {consent.currentStatus.toLowerCase() === - specConfigurations.status.authorised.toLowerCase() && isNotExpired() ? ( -
    -
    - - {withdrawLang.detailedConsentPageStopSharingBtn} - -
    -
    - ) : ( -
    -
    - ) - } - -
    - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/ProtectedWithdrawRoute.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/ProtectedWithdrawRoute.jsx deleted file mode 100644 index 3693cb46..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/ProtectedWithdrawRoute.jsx +++ /dev/null @@ -1,44 +0,0 @@ -/** - * Copyright (c) 2023, 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 React from "react"; -import { Redirect, Route, useHistory } from "react-router"; - -export const ProtectedWithdrawRoute = ({ - match, - component: Component, - ...rest -}) => { - const history = useHistory(); - - const id = rest.computedMatch.params.id; - return ( - - - rest.location.state && rest.location.state.prevPath === - `/consentmgr/${id}/withdrawal-step-1` ? ( - - ) : ( - - ) - } - /> - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/SharingDetails.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/SharingDetails.jsx deleted file mode 100644 index 7b74f662..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/SharingDetails.jsx +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2021-2023, WSO2 LLC. (https://www.wso2.com). All Rights Reserved. - * - * This software is the property of WSO2 LLC. and its suppliers, if any. - * Dissemination of any information or reproduction of any material contained - * herein in any form is strictly forbidden, unless permitted by WSO2 expressly. - * You may not alter or remove any copyright or other notice from copies of this content. - */ - -import React from 'react' -import { KeyDatesInfo, AccountsInfo, DataSharedInfo } from '../detailedAgreementPage' - -import "../css/SharingDetails.css" - -export const SharingDetails = ({consent, infoLabels, consentType}) => { - return( - <> -
    -
    - -
    -
    - -
    -
    -
    - -
    - - ) -} diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/StatusLabel.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/StatusLabel.jsx deleted file mode 100644 index d36b1dbe..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/StatusLabel.jsx +++ /dev/null @@ -1,61 +0,0 @@ -/** - * Copyright (c) 2023, 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 React, {useEffect, useState} from "react"; -import Badge from "react-bootstrap/Badge"; -import {specConfigurations} from "../specConfigs/specConfigurations"; -import "../css/StatusLabel.css"; -import moment from "moment"; - -export const StatusLabel = ({infoLabel, expireDate}) => { - - const date_create = moment().format("YYYY-MM-DDTHH:mm:ss[Z]"); - const [statusForLbl, setStatusForLbl] = useState("Active"); - const [badge, setBadge] = useState("success"); - - - function defaultStatusLabel() { - setBadge(infoLabel.labelBadgeVariant); - setStatusForLbl(infoLabel.label); - } - - useEffect(() => { - try { - if (!expireDate) { - defaultStatusLabel(); - } else if (infoLabel.id === specConfigurations.status.authorised && - !moment(date_create).isBefore(moment(expireDate))) { - setBadge("secondary"); - setStatusForLbl(specConfigurations.status.expired); - } else { - defaultStatusLabel(); - } - } catch (e) { - defaultStatusLabel(); - } - }, [infoLabel]) - - - return ( -
    - - {statusForLbl} - -
    - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/WithdrawStep1.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/WithdrawStep1.jsx deleted file mode 100644 index e4ae422d..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/WithdrawStep1.jsx +++ /dev/null @@ -1,123 +0,0 @@ -/** - * Copyright (c) 2023, 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 React, {useEffect, useContext} from "react"; -import {Link, useLocation} from "react-router-dom"; -import Container from "react-bootstrap/Container"; -import "../css/Buttons.css"; -import "../css/DetailedAgreement.css"; -import "../css/withdrawal.css"; -import {FontAwesomeIcon} from "@fortawesome/react-fontawesome"; -import {faExclamationTriangle} from "@fortawesome/free-solid-svg-icons"; -import {withdrawLang, specConfigurations} from "../specConfigs"; -import ProgressBar from "react-bootstrap/ProgressBar"; -import {FourOhFourError} from "../errorPage/index.js"; -import {getDisplayName} from "../services"; -import { ConsentContext } from "../context/ConsentContext"; -import { AppInfoContext } from "../context/AppInfoContext"; - -export const WithdrawStep1 = ({ match }) => { - const {allContextConsents} = useContext(ConsentContext); - const {contextAppInfo} = useContext(AppInfoContext); - - const consents = allContextConsents.consents; - const appInfo = contextAppInfo.appInfo; - - useEffect(() => { - window.history.pushState(null, "", '/consentmgr'); - window.onpopstate = function () { - window.location.href='/consentmgr'; - }; - }, []); - - const matchedConsentId = match.params.id; - - var matchedConsent; - var applicationName; - var consentStatus; - var consentConsentId; - var consent; - - matchedConsent = consents.data.filter( - (consent) => consent.consentId === matchedConsentId - ); - - consent = matchedConsent[0]; - applicationName = getDisplayName(appInfo, consent.clientId); - consentStatus = consent.currentStatus; - consentConsentId= consent.consentId; - - const location = useLocation(); - - return ( - <> - {consentStatus.toLowerCase() === specConfigurations.status.authorised.toLowerCase() ? ( - -
    - -

    - Stop sharing data with {applicationName} -

    - -

    {withdrawLang.infoHeading}

    -
    -
    -
    -
  • {withdrawLang.impactHeading}
  • -
    -

    {withdrawLang.impactInfo}

    -
    -
  • {withdrawLang.sharedDataHandling}
  • -
    -

    {withdrawLang.sharedDataHandlingPara1}

    -

    {withdrawLang.sharedDataHandlingPara2}

    -
    - -
    -
    - - {withdrawLang.backBtn} - -
    -
    - - {withdrawLang.nextBtnStep1} - -
    -
    -
    - ) : ( - - )} - - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/WithdrawStep2.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/WithdrawStep2.jsx deleted file mode 100644 index 935995f7..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/WithdrawStep2.jsx +++ /dev/null @@ -1,180 +0,0 @@ -/** - * Copyright (c) 2023, 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 React, {useContext, useState} from "react"; -import {Link} from "react-router-dom"; -import Container from "react-bootstrap/Container"; -import "../css/Buttons.css"; -import "../css/DetailedAgreement.css"; -import "../css/withdrawal.css"; -import {FontAwesomeIcon} from "@fortawesome/react-fontawesome"; -import {faExclamationTriangle} from "@fortawesome/free-solid-svg-icons"; -import { faCheckCircle, faExclamationCircle } from '@fortawesome/free-solid-svg-icons'; -import {withdrawLang, specConfigurations} from "../specConfigs"; -import ProgressBar from "react-bootstrap/ProgressBar"; -import {FourOhFourError} from "../errorPage"; -import {PermissionItem} from "../detailedAgreementPage"; -import { revokeConsent } from '../api'; -import {Modal} from "react-bootstrap"; -import {getDisplayName, getValueFromConsent} from "../services"; -import { UserContext } from "../context/UserContext"; -import { ConsentContext } from "../context/ConsentContext"; -import { AppInfoContext } from "../context/AppInfoContext"; - -export const WithdrawStep2 = ({ match }) => { - const {currentContextUser} = useContext(UserContext); - const {allContextConsents} = useContext(ConsentContext); - const {contextAppInfo} = useContext(AppInfoContext); - - const [show, setShow] = useState(false); - const [message, setMessage] = useState(""); - const [withdrawMessageIcon, setWithdrawMessageIcon] = useState({}); - const [withdrawIconId, setWithdrawIconId] = useState(""); - - const handleClose = () => setShow(false); - - const consentId = match.params.id; - const user = currentContextUser.user; - const appInfo = contextAppInfo.appInfo; - const consents = allContextConsents.consents; - - const matchedConsent = consents.data.find((consent) => consent.consentId === consentId); - - const clientId = matchedConsent?.clientId; - const consentStatus = matchedConsent?.currentStatus; - const consentConsentId = matchedConsent?.consentId; - - const applicationName = getDisplayName(appInfo, clientId); - - const consentAccountResponseDataPermissions = getValueFromConsent( - specConfigurations.consent.permissionsView.permissionsAttribute, - matchedConsent - ) || []; - - const handleRevokeConsent = () => { - revokeConsent(clientId, consentId, user) - .then(response => { - if (response.status === 204) { - setMessage(withdrawLang.withdrawModalSuccessMsg + applicationName); - setWithdrawMessageIcon(faCheckCircle); - setWithdrawIconId('withdrawSuccess'); - } else { - setMessage(withdrawLang.withdrawModalFailMsg); - setWithdrawMessageIcon(faExclamationCircle); - setWithdrawIconId('withdrawFail'); - } - setShow(true); - }) - .catch(error => { - setMessage(withdrawLang.withdrawModalFailMsg + ': ' + error); - setWithdrawMessageIcon(faExclamationCircle); - setWithdrawIconId('withdrawFail'); - setShow(true); - }); -}; - - return ( - <> - {consentStatus.toLowerCase() === specConfigurations.status.authorised.toLowerCase() ? ( - <> - - - - - - - - {message} - - - - {withdrawLang.closeWithdrawMsgModal} - - - - - {consentStatus.toLowerCase() === specConfigurations.status.authorised.toLowerCase() ? ( - -
    - - -

    - {withdrawLang.stepHeading} - {applicationName} -

    - -

    {withdrawLang.infoHeading}

    -
    -
    -

    {withdrawLang.collectedData}

    -
    - {consentAccountResponseDataPermissions.map((permission) => ( - - ))} -
    -
    -
    -
    -
    - {withdrawLang.confirmationHeading} -
    -

    {withdrawLang.confirmationPara}

    -
    -
    - - {withdrawLang.backBtn} - -
    -
    - -
    -
    -
    - ) : ( - - )} - - ) : ( - - )} - - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/index.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/index.js deleted file mode 100644 index 8f484680..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/detailedAgreementPage/index.js +++ /dev/null @@ -1,31 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -export * from './DetailedAgreement.jsx' -export * from './Profile.jsx' -export * from './SharingDetails.jsx' -export * from './StatusLabel.jsx' -export * from './Accreditation.jsx' -export * from './ProfileMain.jsx' -export * from './KeyDatesInfo.jsx' -export * from './AccountsInfo.jsx' -export * from './DataSharedInfo.jsx' -export * from './PermissionItem.jsx' -export * from './WithdrawStep1.jsx' -export * from './WithdrawStep2.jsx' -export * from './ProtectedWithdrawRoute.jsx' diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/errorPage/FourOhFourError.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/errorPage/FourOhFourError.jsx deleted file mode 100644 index 29aec876..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/errorPage/FourOhFourError.jsx +++ /dev/null @@ -1,34 +0,0 @@ -/** - * Copyright (c) 2023, 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 React from "react"; - -import Container from "react-bootstrap/Col"; - -export const FourOhFourError = () => { - return ( - -
    - Error 404 : Page not found -
    -
    - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/errorPage/ResponseError.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/errorPage/ResponseError.jsx deleted file mode 100644 index 312358ab..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/errorPage/ResponseError.jsx +++ /dev/null @@ -1,63 +0,0 @@ -/** - * Copyright (c) 2023, 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 React from "react"; -import base64url from "base64url"; -import wso2Logo from "../images/wso2Logo.png"; - -export const ResponseError = (error = {}) => { - let message = error.message; - let description = error.description; - - if (!description) { - // Reads the URL and retrieves the error params. - const url = new URL(window.location.href); - - message = url.searchParams.get("message"); - description = url.searchParams.get("description"); - - if (message && description) { - message = base64url.decode(message); - description = base64url.decode(description); - } else { - message = "Redirecting Failed!"; - description = - "Something went wrong during the authentication process. Please try signing in again."; - } - } - - return ( -
    -
    -
    - WSO2 logo -
    -
    -

    {message}

    -

    {description}

    -
    -
    -
    -
    -
    - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/errorPage/index.js b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/errorPage/index.js deleted file mode 100644 index 31369b57..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/errorPage/index.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * Copyright (c) 2023, 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. - */ - -export * from './FourOhFourError.jsx' -export * from './ResponseError.jsx' diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/images/ADRLogo.png b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/images/ADRLogo.png deleted file mode 100644 index 2bbc9e029cac11aef705fecaae3ef352f9dd054b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 155432 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

    FZpJgT#}2Vrg?C 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 ekEx;Sr853%CO*#+Pj4NFg$ZMf%|6+tuT6d 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 Ilh$|t7k7{Yp8x;= diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/images/cof.png b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/images/cof.png deleted file mode 100644 index 86f5e9fdd7b405acd375f70b40c9b790c56f9ddf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30411 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 BSZM$N diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/images/payments.png b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/images/payments.png deleted file mode 100644 index dad847d344763c3ee8367425f85522dc5659baed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 43525 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 z z4)J!yuOCI)^%SXVL3QW|YUfhC?2!uBOgrQ_ykL}2{L7i-Ofv;YKVBL(>TgF=~>`CCWFn?kK87xf8YbTkJg`@rg*Z` zzG9|8D>9H22^9daXPBe=Km#z(+sn`p)yik1!n^bjAtI@Kk0oSm@xCBT-%U{u$W`>H z#*ar0@qWGs1ex?|5A-{hnb#7EwnY{~dFJtU!i5Z5KSdI>cKt|(V>-VzmGtNCj)9c7 zfZ9E$g5mJJg;}OddevObE}M+UR1po9cOpjO|WQH)hnh-|@b=HBlg_|0UMd zrq^jIL2P^G$J~nPr;zaYi@*a_pEO|5NwA$z8zI3&FgFQ`G)6EzZh_rxo73mkCms?> zN>hF0OX~tR1`}`%`B@m-KtR>k5on)s--`by3XnL^8SJ{r`~(1q@>A`U(OggBIGV?I}n%)~it?`<4# z@@oUDMV=f7*gA|R2cz=bHV!%-K5^Ee=>r;mhHQzWDP5lOawSH$x7Hgg+~33Nz@kR?qg{ zTrb)dWdYepE60Lg`A{JSD24IYKwLWYBF5AYm6IcC8)ZhJ^XgNcnqJj`3yiE8dTcWR zu}G6A$!GFetd#dKwh?N1zpEYNHeLkXvE9YE@18!|yNjaWDNWaqNkrNBG)>dE=@N%M zoL?2{!nr0gVano02vQ)7rTr|Yd+p~g=K^=*A8u-DOKA(2=&j}e!RyS>PEg#HW(w_- zm`;@UgpzhPltE;$WfPn+bCrd^&nPZ-d!}=4ifGy|_oE^XOt>+8Re*%skooCSZd9XC z``iaqWHgWLJuH^-C?aqUv3>@=y&qM~Fpr&4==ZtOZdg3O&;fr|?PjCTY0cTH4pXFJ znsP`T0(MhTLkeq*^AOCBsA?_$e=G3)o-YI}+I#0o+W~t_-JmoCGBU&-?0+X);28zd z>pSm$0Ckoxi70{E8@AQJo>l60y}6(yyxB(GTN@Yx z_JKUf@CcZX?@8ze?@^KGDlGcYu@9a-8+VgOBsdLB1(%Ttn{7Tmx%}~lu>UdO{yA}f`^^tGKl}}>`n-1MtOQLA z&$Zgtf3DTP{oBpYa=YJ8D+4A9El|^x;XqjQww#~rkDhM6`Mq0zuTIiG;nLUFdVxz7 zK?^k&`L3Q8dLGoV{3`}@+*Z&W2!q4c$j#60R(xDKJqg%IKiFsHD&r}RgLbUhzopr0N`zm`2YX_ diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/images/userAvatar.png b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/images/userAvatar.png deleted file mode 100644 index 62343dfe9dbd85e9ad97a68acd13aaf9d8beb1bc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7885 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 diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/AdvanceSearch.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/AdvanceSearch.jsx deleted file mode 100644 index 09a8775f..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/AdvanceSearch.jsx +++ /dev/null @@ -1,282 +0,0 @@ -/** - * Copyright (c) 2023, 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 React, {useContext, useEffect, useState} from "react"; -import "../css/Buttons.css"; -import "../css/Search.css"; -import Row from "react-bootstrap/Row"; -import {FontAwesomeIcon} from '@fortawesome/react-fontawesome' -import {faBars, faSearch, faTimes} from '@fortawesome/free-solid-svg-icons' -import 'react-date-range/dist/styles.css'; // main style file -import 'react-date-range/dist/theme/default.css'; // theme css file -import {Col} from "react-bootstrap"; -import {CONFIG} from "../config"; -import DateRange from "react-date-range/dist/components/DateRange"; -import moment from "moment"; -import { UserContext } from "../context/UserContext"; -import { ConsentContext } from "../context/ConsentContext"; -import { AppInfoContext } from "../context/AppInfoContext"; -import { SearchObjectContext } from "../context/SearchObjectContext"; - - -export const AdvanceSearch = () => { - const {currentContextUser} = useContext(UserContext); - const {getContextConsentForSearch} = useContext(ConsentContext); - const {contextAppInfo} = useContext(AppInfoContext); - const {contextSearchObject,setContextSearchObject,contextSearchUtilState,setContextSearchUtilState} = useContext(SearchObjectContext); - - let searchObj = contextSearchObject; - const currentUser = currentContextUser.user; - const searchOnClickState = contextSearchUtilState; - const appInfo = contextAppInfo.appInfo; - - const [calendarVisibility, setCalendarVisibility] = useState(false); - const [advanceSearchVisibility, setAdvanceSearchVisibility] = useState(false); - - let limitCount = window.localStorage.getItem("postsPerPage") || CONFIG.NUMBER_OF_CONSENTS; - const [searchLimit, setSearchLimit] = useState(limitCount); - const [searchOffset, setSearchOffset] = useState(0); - const [softwareId, setSoftwareId] = useState(""); - const [consentId, setConsentId] = useState(""); - const [dateRange, setDateRange] = useState(""); - const [searchUser, setSearchUser] = useState(""); - const [dateState, setDateState] = useState([ - { - startDate: new Date(), - endDate: new Date(), - key: "selection" - } - ]); - - useEffect(() => { - setSearchLimit(searchObj.limit); - setSearchOffset(searchObj.offset); - setDateRange(searchObj.dateRange); - setConsentId(searchObj.consentIDs); - setSearchUser(searchObj.userIDs); - setSoftwareId(searchObj.clientIDs); - setAdvanceSearchVisibility(!searchObj.hideAdvanceSearchOptions) - }, [searchObj]); - - useEffect(() => { - let elements = document.getElementsByClassName("searchcontent"); - if (advanceSearchVisibility === true) { - for (var i = 0; i < elements.length; i += 1) { - document.getElementsByClassName("searchcontent")[i].style.opacity = "1"; - document.getElementsByClassName("searchcontent")[i].style.height = "auto"; - document.getElementsByClassName("searchcontent")[i].style.display = "block"; - } - } else { - for (i = 0; i < elements.length; i += 1) { - document.getElementsByClassName("searchcontent")[i].style.opacity = "0"; - document.getElementsByClassName("searchcontent")[i].style.height = "0"; - document.getElementsByClassName("searchcontent")[i].style.display = "none"; - } - } - }, [advanceSearchVisibility]); - - - function doSearchConsents(search) { - getContextConsentForSearch(search, currentUser, appInfo); - } - - return ( -

    - - - - - - -
    -
    - - - - {/* Software Product */} - { - // softwareId is converted to clientId in API call - setSoftwareId(e.target.value); - }} - > - - - - {/* Account Id */} - { - setConsentId(e.target.value); - }} - // onKeyDown={handleKeyDown} - > - - - - {/* Consent Staged Period */} - { - console.log(e.target.value); - }} - onClick={() => { - var elems = document.getElementsByClassName("calandarArea"); - if (!calendarVisibility) { - for (var i = 0; i < elems.length; i += 1) { - document.getElementsByClassName("calandarArea")[ - i - ].style.display = "block"; - setCalendarVisibility(true) - } - } else { - for (i = 0; i < elems.length; i += 1) { - document.getElementsByClassName("calandarArea")[ - i - ].style.display = "none"; - setCalendarVisibility(false) - } - } - }} - readOnly="readonly" - > - -
    - -
    -
    - { - setDateState([item.selection]); - let dateStateVal = moment(item.selection.startDate).format("DD-MMM-YYYY") + - " / " + moment(item.selection.endDate).format("DD-MMM-YYYY"); - setDateRange(dateStateVal); - }} - moveRangeOnFirstSelection={false} - ranges={dateState} - className="calander" - startDatePlaceholder="Consent sharing period start date" - endDatePlaceholder="Consent sharing period end date" - /> -
    -
    - - - - {/* User Id */} - {currentUser.role === "customerCareOfficer" ? ( - { - setSearchUser(e.target.value); - }} - > - ) : ( - <> - )} - - - - - -
    -
    -
    - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/Body.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/Body.jsx deleted file mode 100644 index a025692f..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/Body.jsx +++ /dev/null @@ -1,47 +0,0 @@ -/** - * Copyright (c) 2023, 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 React, {useState} from "react"; -import {Container, Row} from "react-bootstrap"; -import "../css/Body.css"; - -import {LandingTabs} from "../landing_page"; -import {AdvanceSearch} from "./AdvanceSearch.jsx"; -import {Leftbar} from "./Leftbar.jsx"; - -export const Body = () => { - const [title, setTitle] = useState("Account Information"); - return ( -
    - - -
    -
    -

    {title}

    - -
    - -
    -
    -
    - -
    -
    -
    - ); -}; diff --git a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/Home.jsx b/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/Home.jsx deleted file mode 100644 index 048fdf6c..00000000 --- a/react-apps/self-care-portal/self-care-portal-frontend/accelerator/src/landing_page/Home.jsx +++ /dev/null @@ -1,85 +0,0 @@ -/** - * Copyright (c) 2023, 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 React, {useEffect, useContext} from "react"; -import {Nav, Footer} from "../common/index.js"; -import {Body} from "../landing_page"; -import {Switch, Route} from "react-router-dom"; -import {DetailedAgreement, WithdrawStep1, WithdrawStep2, ProtectedWithdrawRoute} from "../detailedAgreementPage"; -import {FourOhFourError} from '../errorPage/index.js' -import {BrowserRouter as Router} from "react-router-dom"; -import {ResponseError} from "../errorPage/index.js"; -import { UserContext } from "../context/UserContext"; -import { ConsentContext } from "../context/ConsentContext"; -import { AppInfoContext } from "../context/AppInfoContext"; -import { HomeTile } from "./HomeTile.jsx"; - -export const Home = (user) => { - const {currentContextUser} = useContext(UserContext); - const {allContextConsents,getContextConsents} = useContext(ConsentContext); - const {getContextAppInfo} = useContext(AppInfoContext); - - const consents = allContextConsents.consents; - const error = currentContextUser.error; - // Default consent type to view : accounts - // We are only supporting the account consents in SCP. - const consentTypes = "accounts"; - - useEffect(() => { - getContextConsents(user,consentTypes); - }, [user]); - - useEffect(() => { - if (consents.length !== 0) { - getContextAppInfo(); - } - }, [consents]); - - if (error) { - return - } - -return ( - <> -
    - {consents.length === 0 ? ( -
    -
    -
    - ) : ( - -
    -
    -
    - )} -
    -