From 30fd50bb74f9eca2fc807e93657f0af8c62b5916 Mon Sep 17 00:00:00 2001 From: myxmaster Date: Thu, 30 Jan 2025 12:44:41 +0100 Subject: [PATCH 1/3] utilize PrivacyUtils.sensitiveValue() to hide memo if lurker mode is enabled --- views/Activity/Activity.tsx | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/views/Activity/Activity.tsx b/views/Activity/Activity.tsx index 805fb0462..af007f7e1 100644 --- a/views/Activity/Activity.tsx +++ b/views/Activity/Activity.tsx @@ -28,6 +28,7 @@ import { numberWithCommas, numberWithDecimals } from '../../utils/UnitsUtils'; +import PrivacyUtils from '../../utils/PrivacyUtils'; import ActivityStore from '../../stores/ActivityStore'; import FiatStore from '../../stores/FiatStore'; @@ -80,6 +81,7 @@ interface ActivityListItemProps { | 'warning' | 'warningReserve'; order?: Order; + lurkerMode: boolean; } const ActivityListItem = React.memo( @@ -88,7 +90,8 @@ const ActivityListItem = React.memo( selectedPaymentForOrder, onItemPress, getRightTitleTheme, - order + order, + lurkerMode }: ActivityListItemProps) => { const note = item.getNote; let displayName = item.model; @@ -113,7 +116,11 @@ const ActivityListItem = React.memo( {keysendMessageOrMemo ? ': ' : ''} {keysendMessageOrMemo ? ( - {keysendMessageOrMemo} + {lurkerMode + ? PrivacyUtils.sensitiveValue( + keysendMessageOrMemo + )?.toString() + : keysendMessageOrMemo} ) : ( '' @@ -133,7 +140,11 @@ const ActivityListItem = React.memo( {keysendMessageOrMemo ? ': ' : ''} {keysendMessageOrMemo ? ( - {keysendMessageOrMemo} + {lurkerMode + ? PrivacyUtils.sensitiveValue( + keysendMessageOrMemo + ) + : keysendMessageOrMemo} ) : ( '' @@ -444,6 +455,7 @@ export default class Activity extends React.PureComponent< const { filteredActivity, getActivityAndFilter } = ActivityStore; const { recordPayment } = PosStore; const { settings } = SettingsStore; + const lurkerMode = settings.privacy.lurkerMode || false; const { fiat } = settings; const order = route.params?.order; @@ -609,6 +621,7 @@ export default class Activity extends React.PureComponent< onItemPress={this.handleItemPress} getRightTitleTheme={this.getRightTitleTheme} order={route.params?.order} + lurkerMode={lurkerMode} /> )} keyExtractor={(item, index) => `${item.model}-${index}`} From 7be75a0845a9aa5b379d6d3158f141002f3e6fde Mon Sep 17 00:00:00 2001 From: myxmaster Date: Thu, 30 Jan 2025 12:57:33 +0100 Subject: [PATCH 2/3] hide notes too if lurker enabled --- views/Activity/Activity.tsx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/views/Activity/Activity.tsx b/views/Activity/Activity.tsx index af007f7e1..6ca6e6c0b 100644 --- a/views/Activity/Activity.tsx +++ b/views/Activity/Activity.tsx @@ -143,7 +143,7 @@ const ActivityListItem = React.memo( {lurkerMode ? PrivacyUtils.sensitiveValue( keysendMessageOrMemo - ) + )?.toString() : keysendMessageOrMemo} ) : ( @@ -311,7 +311,11 @@ const ActivityListItem = React.memo( }} ellipsizeMode="tail" > - {note.length > 150 + {lurkerMode + ? PrivacyUtils.sensitiveValue( + note + )?.toString() + : note.length > 150 ? `${note.substring(0, 150)}...` : note} From 362cea9e5263c51e784be05cf71dab733a3e37d1 Mon Sep 17 00:00:00 2001 From: myxmaster Date: Thu, 30 Jan 2025 13:13:42 +0100 Subject: [PATCH 3/3] remove lurkerMode checks because PrivacyUtils.sensitiveValue() handles it internally already --- views/Activity/Activity.tsx | 34 +++++++++++++--------------------- 1 file changed, 13 insertions(+), 21 deletions(-) diff --git a/views/Activity/Activity.tsx b/views/Activity/Activity.tsx index 6ca6e6c0b..db9ef297d 100644 --- a/views/Activity/Activity.tsx +++ b/views/Activity/Activity.tsx @@ -81,7 +81,6 @@ interface ActivityListItemProps { | 'warning' | 'warningReserve'; order?: Order; - lurkerMode: boolean; } const ActivityListItem = React.memo( @@ -90,8 +89,7 @@ const ActivityListItem = React.memo( selectedPaymentForOrder, onItemPress, getRightTitleTheme, - order, - lurkerMode + order }: ActivityListItemProps) => { const note = item.getNote; let displayName = item.model; @@ -116,11 +114,9 @@ const ActivityListItem = React.memo( {keysendMessageOrMemo ? ': ' : ''} {keysendMessageOrMemo ? ( - {lurkerMode - ? PrivacyUtils.sensitiveValue( - keysendMessageOrMemo - )?.toString() - : keysendMessageOrMemo} + {PrivacyUtils.sensitiveValue( + keysendMessageOrMemo + )?.toString()} ) : ( '' @@ -140,11 +136,9 @@ const ActivityListItem = React.memo( {keysendMessageOrMemo ? ': ' : ''} {keysendMessageOrMemo ? ( - {lurkerMode - ? PrivacyUtils.sensitiveValue( - keysendMessageOrMemo - )?.toString() - : keysendMessageOrMemo} + {PrivacyUtils.sensitiveValue( + keysendMessageOrMemo + )?.toString()} ) : ( '' @@ -311,13 +305,13 @@ const ActivityListItem = React.memo( }} ellipsizeMode="tail" > - {lurkerMode - ? PrivacyUtils.sensitiveValue( + {note.length > 150 + ? `${PrivacyUtils.sensitiveValue( + note.substring(0, 150) + )?.toString()}...` + : PrivacyUtils.sensitiveValue( note - )?.toString() - : note.length > 150 - ? `${note.substring(0, 150)}...` - : note} + )?.toString()} )} @@ -459,7 +453,6 @@ export default class Activity extends React.PureComponent< const { filteredActivity, getActivityAndFilter } = ActivityStore; const { recordPayment } = PosStore; const { settings } = SettingsStore; - const lurkerMode = settings.privacy.lurkerMode || false; const { fiat } = settings; const order = route.params?.order; @@ -625,7 +618,6 @@ export default class Activity extends React.PureComponent< onItemPress={this.handleItemPress} getRightTitleTheme={this.getRightTitleTheme} order={route.params?.order} - lurkerMode={lurkerMode} /> )} keyExtractor={(item, index) => `${item.model}-${index}`}