diff --git a/CHANGELOG.md b/CHANGELOG.md index b80ead78..95c3bf1d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,16 +4,35 @@ ## 1.0.0 -- 889066b: Add subscription modal, authentication and hcapcha. - - - Add login - - Add Register - - Add Historical alert - -### Patch Changes - -- Updated dependencies and add patch [889066b] - - @ifrc-go/ui@1.2.1.patch - - -- 0d0ae7b: Bug fixes \ No newline at end of file +## New Features +- Project Setup: Initialized the project with foundational configurations for both frontend and backend. +- Home Page: + - Added a Map Tab to visually display alerts on an interactive map. + - Added a Table Tab to present alerts in a tabular format for easier analysis. + - Added filters to Map and Table. + +- Sources Page: Created a dedicated page to list and display all alert sources. +- Resources Page: Introduced a resources page containing external links for additional information. + +#### Subscriptions +- Create and Subscribe Alerts: + - Added a modal for users to create and subscribe to alerts directly from the platform. +- Subscription Management: + - Added a Subscriptions Page to display all active subscriptions. + - Introduced a Subscription Detail Page to view detailed alerts associated with each subscription. + +#### User Authentication +- Login Page: Implemented a login system for user authentication. +- Register Page: Added a registration feature for new users. +- hCaptcha Integration: Enhanced security by integrating hCaptcha to effectively prevent spam and unauthorized activities, ensuring a safer and more reliable user experience. + +#### Historical Alerts +- Added a Historical Alerts Page to list and manage past alerts, providing a comprehensive history for users. + +#### Enhancements +- Google Analytics: Integrated Google Analytics to monitor website traffic and user behavior. +- API Documentation: Updated API documentation to reflect the latest features and endpoints. +- README Update: Improved README files for both frontend and backend to aid developers in setup and contribution. + +#### Bug Fixes +- Resolved a redirection issue where users were unable to navigate from email links to the website seamlessly. diff --git a/backend b/backend index 9099c747..34e386bb 160000 --- a/backend +++ b/backend @@ -1 +1 @@ -Subproject commit 9099c7477f79af432283b3daa6c269c7f62e1712 +Subproject commit 34e386bbe3da782ddfd6631101a591f854ff4785 diff --git a/package.json b/package.json index 6673f2a3..575c3ae0 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,12 @@ "version": "1.0.0", "type": "module", "private": true, + "license": "MIT", + "repository": { + "type": "git", + "url": "git+https://github.com/IFRCGo/alert-hub-web-app.git", + "directory": "app" + }, "scripts": { "start": "vite", "build": "vite build", diff --git a/src/components/GlobalFooter/index.tsx b/src/components/GlobalFooter/index.tsx index 70d21710..ec90f4d5 100644 --- a/src/components/GlobalFooter/index.tsx +++ b/src/components/GlobalFooter/index.tsx @@ -9,6 +9,8 @@ import { _cs } from '@togglecorp/fujs'; import Link from '#components/Link'; import { appCommitHash, + appPackageName, + appRepositoryUrl, appVersion, } from '#config'; @@ -28,14 +30,20 @@ function GlobalFooter(props: Props) { } = props; const strings = useTranslation(i18n); + const versionTag = `${appPackageName}@${appVersion}`; + const versionUrl = `${appRepositoryUrl}/releases/tag/${versionTag}`; const copyrightText = resolveToComponent( strings.footerIFRC, { year, appVersion: ( - + {appVersion} - + ), }, ); diff --git a/src/config.ts b/src/config.ts index 17986041..c73334a8 100644 --- a/src/config.ts +++ b/src/config.ts @@ -6,6 +6,8 @@ const { APP_COMMIT_HASH, APP_VERSION, APP_HCAPTCHA_SITEKEY, + APP_PACKAGE_NAME, + APP_REPOSITORY_URL, } = import.meta.env; export const appTitle = APP_TITLE; // not used @@ -15,3 +17,5 @@ export const mapboxToken = APP_MAPBOX_ACCESS_TOKEN; export const hCaptchaKey = APP_HCAPTCHA_SITEKEY; export const appCommitHash = APP_COMMIT_HASH; export const appVersion = APP_VERSION; +export const appPackageName = APP_PACKAGE_NAME; +export const appRepositoryUrl = APP_REPOSITORY_URL; diff --git a/src/declarations/env.d.ts b/src/declarations/env.d.ts index 47391c40..683b9047 100644 --- a/src/declarations/env.d.ts +++ b/src/declarations/env.d.ts @@ -8,6 +8,8 @@ interface ImportMetaEnv extends ImportMetaEnvAugmented { // The custom environment variables that are passed through the vite APP_COMMIT_HASH: string; APP_VERSION: string; + APP_PACKAGE_NAME: string; + APP_REPOSITORY_URL: string; } interface ImportMeta { diff --git a/src/views/Unsubscribe/styles.module.css b/src/views/Unsubscribe/styles.module.css index 521c5fce..f151e397 100644 --- a/src/views/Unsubscribe/styles.module.css +++ b/src/views/Unsubscribe/styles.module.css @@ -1,7 +1,3 @@ -.unsubscribe { - display: flex; - flex-direction: column; - gap: var(--go-ui-spacing-xs); - align-items: center; +.unsubscribe { text-align: center; } diff --git a/vite.config.ts b/vite.config.ts index 45403fd5..e8288a3c 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -7,6 +7,7 @@ import { compression } from 'vite-plugin-compression2'; import checker from 'vite-plugin-checker'; import { ValidateEnv as validateEnv } from '@julr/vite-plugin-validate-env'; import { VitePluginRadar } from 'vite-plugin-radar'; +import pkg from './package.json'; import alertHubPackage from './package.json'; import envConfig from './env'; @@ -22,6 +23,8 @@ export default defineConfig(({ mode }) => { define: { 'import.meta.APP_COMMIT_HASH': JSON.stringify(commitHash), 'import.meta.env.APP_VERSION': JSON.stringify(alertHubPackage.version), + 'import.meta.env.APP_PACKAGE_NAME': JSON.stringify(env.npm_package_name), + 'import.meta.env.APP_REPOSITORY_URL': JSON.stringify(pkg.repository.url.match(/https:\/\/github\.com\/[^ ]+/)?.[0].replace(/\.git$/, '')), }, plugins: [ isProd ? checker({