Skip to content

Commit fb58a1d

Browse files
committed
More auto delete icon durations and hour type
1 parent a7322ae commit fb58a1d

16 files changed

Lines changed: 1242 additions & 1200 deletions

File tree

Lines changed: 3 additions & 0 deletions
Loading
Lines changed: 3 additions & 0 deletions
Loading
Lines changed: 3 additions & 0 deletions
Loading

‎public/assets/fonts/tgico.svg‎

Lines changed: 385 additions & 382 deletions
Loading

‎public/assets/fonts/tgico.ttf‎

664 Bytes
Binary file not shown.

‎public/assets/fonts/tgico.woff‎

664 Bytes
Binary file not shown.

‎src/components/autoDeleteIcon.ts‎

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
import {DurationType} from '@helpers/formatDuration';
2+
import Icon, {OverlayedIcon} from './icon';
3+
import {findMatchingAutoDeleteIconOption} from './sidebarLeft/tabs/autoDeleteMessages/options';
4+
5+
const shiftedIcons = [DurationType.Days, DurationType.Years]
6+
7+
const typeToIcon: Partial<Record<DurationType, Icon>> = {
8+
[DurationType.Hours]: 'auto_delete_circle_hours',
9+
[DurationType.Days]: 'auto_delete_circle_days',
10+
[DurationType.Weeks]: 'auto_delete_circle_weeks',
11+
[DurationType.Months]: 'auto_delete_circle_months',
12+
[DurationType.Years]: 'auto_delete_circle_years'
13+
};
14+
15+
const durationToIcon: Partial<Record<number, Icon>> = {
16+
1: 'auto_delete_circle_1',
17+
2: 'auto_delete_circle_2',
18+
3: 'auto_delete_circle_3',
19+
4: 'auto_delete_circle_4',
20+
5: 'auto_delete_circle_5',
21+
6: 'auto_delete_circle_6',
22+
7: 'auto_delete_circle_7',
23+
8: 'auto_delete_circle_8'
24+
};
25+
26+
export function createAutoDeleteIcon(period?: number) {
27+
const defaultResult = () => Icon('auto_delete_circle_clock');
28+
29+
if(!period) return defaultResult();
30+
31+
const option = findMatchingAutoDeleteIconOption(period);
32+
if(!option) return defaultResult();
33+
34+
const durationIcon = durationToIcon[option.duration];
35+
const typeIcon = typeToIcon[option.type];
36+
37+
if(!durationIcon || !typeIcon) return defaultResult();
38+
39+
const isShifted = shiftedIcons.includes(option.type);
40+
41+
return OverlayedIcon(
42+
[
43+
'auto_delete_circle_empty',
44+
{
45+
icon: durationIcon,
46+
className: isShifted ? 'auto-delete-icon--shifted' : undefined
47+
},
48+
{
49+
icon: typeIcon,
50+
className: isShifted ? 'auto-delete-icon--shifted' : undefined
51+
}
52+
],
53+
);
54+
}

‎src/components/avatarNew.tsx‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ import currencyStarIcon from '@components/currencyStarIcon';
4848
import type {ActiveAccountNumber} from '@lib/accounts/types';
4949
import {getCurrentAccount} from '@lib/accounts/getCurrentAccount';
5050
import {appSettings} from '@stores/appSettings';
51-
import {createAutoDeleteIcon} from '@components/chat/utils';
51+
import {createAutoDeleteIcon} from '@components/autoDeleteIcon';
5252
import {resolveElements} from '@solid-primitives/refs';
5353
import toArray from '@helpers/array/toArray';
5454
import computeLockColor from '@helpers/computeLockColor';

‎src/components/chat/input.ts‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ import tsNow from '@helpers/tsNow';
3232
import appNavigationController, {NavigationItem} from '@components/appNavigationController';
3333
import {IS_MOBILE, IS_MOBILE_SAFARI} from '@environment/userAgent';
3434
import I18n, {FormatterArguments, i18n, join, LangPackKey} from '@lib/langPack';
35-
import {AttachedMediaType, canUploadAsWhenEditing, createAutoDeleteIcon, generateTail, getMediaTypeForMessage, slowModeTimer} from '@components/chat/utils';
35+
import {AttachedMediaType, canUploadAsWhenEditing, generateTail, getMediaTypeForMessage, slowModeTimer} from '@components/chat/utils';
3636
import findUpClassName from '@helpers/dom/findUpClassName';
3737
import ButtonCorner from '@components/buttonCorner';
3838
import blurActiveElement from '@helpers/dom/blurActiveElement';
@@ -159,6 +159,7 @@ import getPhotoDownloadOptions from '@lib/appManagers/utils/photos/getPhotoDownl
159159
import {getFileNameByLocation} from '@helpers/fileName';
160160
import {Middleware, getMiddleware, MiddlewareHelper} from '@helpers/middleware';
161161
import {openCreatePollPopup} from '@components/popups/createPoll';
162+
import {createAutoDeleteIcon} from '@components/autoDeleteIcon';
162163

163164
// console.log('Recorder', Recorder);
164165

‎src/components/chat/topbar.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ import createSubmenuTrigger from '@components/createSubmenuTrigger';
8181
import ButtonMenu, {ButtonMenuItemOptionsVerifiable} from '@components/buttonMenu';
8282
import Icon from '@components/icon';
8383
import {getDefaultOptions} from '@components/sidebarLeft/tabs/autoDeleteMessages/options';
84-
import {createAutoDeleteIcon} from '@components/chat/utils';
84+
import {createAutoDeleteIcon} from '@components/autoDeleteIcon';
8585
import PopupBoost from '@components/popups/boost';
8686
import PopupPremium from '@components/popups/premium';
8787
import showNoForwardsPopup from '@components/popups/noForwards';

0 commit comments

Comments
 (0)