diff --git a/_locales/en/messages.json b/_locales/en/messages.json index 211d0f5414..fd7834e7b4 100644 --- a/_locales/en/messages.json +++ b/_locales/en/messages.json @@ -9950,6 +9950,26 @@ "messageformat": "Signal does not collect or store any of your personal information when you make a donation.We use Stripe as our payment processor to receive your donations. We don't access, store, or save any of the information you provide to them.Signal does not and cannot connect your donation to your Signal account.Thank you for your support!", "description": "Content for the modal that explains donation privacy information" }, + "icu:PreferencesDonations__privacy-modal-intro": { + "messageformat": "As an independent nonprofit, Signal is committed to private messaging and calls. No ads, no trackers, no surveillance. Donate today to support Signal.", + "description": "Content for the modal that explains donation information" + }, + "icu:PreferencesDonations__privacy-modal-list-1": { + "messageformat": "Get an optional badge on your profile when you donate", + "description": "List content item for the modal that explains donation information" + }, + "icu:PreferencesDonations__privacy-modal-list-2": { + "messageformat": "Your privacy is our mission", + "description": "List content item for the modal that explains donation information" + }, + "icu:PreferencesDonations__privacy-modal-list-3": { + "messageformat": "Signal is a 501c3 nonprofit. US donations are tax deductible.", + "description": "List content item for the modal that explains donation information" + }, + "icu:PreferencesDonations__privacy-modal-icon-accessibility-label": { + "messageformat": "Heart icon in the style of the Signal logo", + "description": "Accessibility label for the icon showed at the top of the modal that explains donation information" + }, "icu:PreferencesDonations__privacy-modal-ok": { "messageformat": "OK", "description": "Button text in the modal that explains donation privacy information. Clicking the button will dismiss the modal." diff --git a/images/signal-heart.svg b/images/signal-heart.svg new file mode 100644 index 0000000000..7820ebc173 --- /dev/null +++ b/images/signal-heart.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ts/components/DonationPrivacyInformationModal.dom.tsx b/ts/components/DonationPrivacyInformationModal.dom.tsx index 2b1b1f723e..fb827badc6 100644 --- a/ts/components/DonationPrivacyInformationModal.dom.tsx +++ b/ts/components/DonationPrivacyInformationModal.dom.tsx @@ -1,12 +1,12 @@ // Copyright 2025 Signal Messenger, LLC // SPDX-License-Identifier: AGPL-3.0-only -import React, { useCallback } from 'react'; +import React from 'react'; import type { LocalizerType } from '../types/Util.std.js'; import { openLinkInWebBrowser } from '../util/openLinkInWebBrowser.dom.js'; import { AxoDialog } from '../axo/AxoDialog.dom.js'; -import { I18n } from './I18n.dom.js'; import { tw } from '../axo/tw.dom.js'; +import { AxoSymbol } from '../axo/AxoSymbol.dom.js'; export type DonationPrivacyInformationModalProps = { i18n: LocalizerType; @@ -23,11 +23,6 @@ export function DonationPrivacyInformationModal({ ); }; - const paragraphComponent = useCallback( - (parts: Array) =>

{parts}

, - [] - ); - return ( - + {i18n('icu:PreferencesDonations__privacy-modal-title')} + {i18n(
- +
+ {i18n('icu:PreferencesDonations__privacy-modal-intro')} +
+
    +
  • +
    + +
    +
    + {i18n('icu:PreferencesDonations__privacy-modal-list-1')} +
    +
  • +
  • +
    + +
    +
    + {i18n('icu:PreferencesDonations__privacy-modal-list-2')} +
    +
  • +
  • +
    + +
    +
    + {i18n('icu:PreferencesDonations__privacy-modal-list-3')} +
    +
  • +