From 61d12fb5b85daab5b0dcdd50af49222b28c8e88b Mon Sep 17 00:00:00 2001 From: barshathakuri Date: Wed, 18 Dec 2024 11:04:46 +0545 Subject: [PATCH 1/2] bump version to 1.0.0 and add release notes --- CHANGELOG.md | 19 +++++++++++++++++++ package.json | 2 +- 2 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 CHANGELOG.md diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..b80ead7 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,19 @@ +# go-alert-hub + +### Major Changes + +## 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 diff --git a/package.json b/package.json index a0ae814..6673f2a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ifrc-alert-hub", - "version": "0.0.1", + "version": "1.0.0", "type": "module", "private": true, "scripts": { From f19f43b97114b0809446521863a371e62c7aeb63 Mon Sep 17 00:00:00 2001 From: barshathakuri Date: Thu, 19 Dec 2024 10:28:02 +0545 Subject: [PATCH 2/2] Add release note --- CHANGELOG.md | 44 ++++++++++++++++--------- LICENSE | 21 ++++++++++++ backend | 2 +- package.json | 5 +++ src/components/GlobalFooter/index.tsx | 12 +++++-- src/config.ts | 4 +++ src/declarations/env.d.ts | 2 ++ src/views/Unsubscribe/styles.module.css | 6 +--- vite.config.ts | 3 ++ 9 files changed, 75 insertions(+), 24 deletions(-) create mode 100644 LICENSE diff --git a/CHANGELOG.md b/CHANGELOG.md index b80ead7..76a9799 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,19 +1,31 @@ -# go-alert-hub - -### Major Changes +# IFRC Alert Hub ## 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. +- 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. + - 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. + +#### 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. + +#### Historical Alerts +- Added a Historical Alerts Page to list and manage past alerts, providing a comprehensive history. + +#### Enhancements +- Integrated Google Analytics to monitor website traffic and user behavior. Updated API documentation to reflect the latest features and endpoints. diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..0559789 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2024 IFRC Alert Hub + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/backend b/backend index 9099c74..34e386b 160000 --- a/backend +++ b/backend @@ -1 +1 @@ -Subproject commit 9099c7477f79af432283b3daa6c269c7f62e1712 +Subproject commit 34e386bbe3da782ddfd6631101a591f854ff4785 diff --git a/package.json b/package.json index 6673f2a..f8c5cfa 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,11 @@ "version": "1.0.0", "type": "module", "private": true, + "license": "MIT", + "repository": { + "type": "git", + "url": "git+https://github.com/IFRCGo/alert-hub-web-app.git" + }, "scripts": { "start": "vite", "build": "vite build", diff --git a/src/components/GlobalFooter/index.tsx b/src/components/GlobalFooter/index.tsx index 70d2171..ec90f4d 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 1798604..c73334a 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 47391c4..683b904 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 521c5fc..f151e39 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 45403fd..e8288a3 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({