diff --git a/packages/backend/assets/notification-badges/LICENSE b/packages/backend/assets/notification-badges/LICENSE deleted file mode 100644 index 841c4c682..000000000 --- a/packages/backend/assets/notification-badges/LICENSE +++ /dev/null @@ -1,5 +0,0 @@ -Font Awesome Icons -------------------------- - -Ⓒ Font Awesome -CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/) diff --git a/packages/backend/assets/notification-badges/at.png b/packages/backend/assets/notification-badges/at.png deleted file mode 100644 index d1492856d..000000000 Binary files a/packages/backend/assets/notification-badges/at.png and /dev/null differ diff --git a/packages/backend/assets/notification-badges/check.png b/packages/backend/assets/notification-badges/check.png deleted file mode 100644 index baeb76bab..000000000 Binary files a/packages/backend/assets/notification-badges/check.png and /dev/null differ diff --git a/packages/backend/assets/notification-badges/clipboard-check-solid.png b/packages/backend/assets/notification-badges/clipboard-check-solid.png deleted file mode 100644 index d8cdfa9da..000000000 Binary files a/packages/backend/assets/notification-badges/clipboard-check-solid.png and /dev/null differ diff --git a/packages/backend/assets/notification-badges/clock.png b/packages/backend/assets/notification-badges/clock.png deleted file mode 100644 index 9323f8f30..000000000 Binary files a/packages/backend/assets/notification-badges/clock.png and /dev/null differ diff --git a/packages/backend/assets/notification-badges/comments.png b/packages/backend/assets/notification-badges/comments.png deleted file mode 100644 index bc8a1c35b..000000000 Binary files a/packages/backend/assets/notification-badges/comments.png and /dev/null differ diff --git a/packages/backend/assets/notification-badges/id-card-alt.png b/packages/backend/assets/notification-badges/id-card-alt.png deleted file mode 100644 index 67e1410e3..000000000 Binary files a/packages/backend/assets/notification-badges/id-card-alt.png and /dev/null differ diff --git a/packages/backend/assets/notification-badges/plus.png b/packages/backend/assets/notification-badges/plus.png deleted file mode 100644 index 05362c122..000000000 Binary files a/packages/backend/assets/notification-badges/plus.png and /dev/null differ diff --git a/packages/backend/assets/notification-badges/poll-h.png b/packages/backend/assets/notification-badges/poll-h.png deleted file mode 100644 index 3b7ded665..000000000 Binary files a/packages/backend/assets/notification-badges/poll-h.png and /dev/null differ diff --git a/packages/backend/assets/notification-badges/quote-right.png b/packages/backend/assets/notification-badges/quote-right.png deleted file mode 100644 index 0fa483765..000000000 Binary files a/packages/backend/assets/notification-badges/quote-right.png and /dev/null differ diff --git a/packages/backend/assets/notification-badges/reply.png b/packages/backend/assets/notification-badges/reply.png deleted file mode 100644 index 77021f71a..000000000 Binary files a/packages/backend/assets/notification-badges/reply.png and /dev/null differ diff --git a/packages/backend/assets/notification-badges/retweet.png b/packages/backend/assets/notification-badges/retweet.png deleted file mode 100644 index dc6106048..000000000 Binary files a/packages/backend/assets/notification-badges/retweet.png and /dev/null differ diff --git a/packages/backend/assets/notification-badges/satellite.png b/packages/backend/assets/notification-badges/satellite.png deleted file mode 100644 index 0e1831e8a..000000000 Binary files a/packages/backend/assets/notification-badges/satellite.png and /dev/null differ diff --git a/packages/backend/assets/notification-badges/user-plus.png b/packages/backend/assets/notification-badges/user-plus.png deleted file mode 100644 index 9d376d04d..000000000 Binary files a/packages/backend/assets/notification-badges/user-plus.png and /dev/null differ diff --git a/packages/backend/assets/tabler-badges/LICENSE b/packages/backend/assets/tabler-badges/LICENSE new file mode 100644 index 000000000..cab2551f6 --- /dev/null +++ b/packages/backend/assets/tabler-badges/LICENSE @@ -0,0 +1,24 @@ +Tabler Icons +https://github.com/tabler/tabler-icons/blob/master/LICENSE +==== +MIT License + +Copyright (c) 2020-2022 Paweł Kuna + +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. \ No newline at end of file diff --git a/packages/backend/assets/tabler-badges/antenna.png b/packages/backend/assets/tabler-badges/antenna.png new file mode 100644 index 000000000..013c7f4e6 Binary files /dev/null and b/packages/backend/assets/tabler-badges/antenna.png differ diff --git a/packages/backend/assets/tabler-badges/arrow-back-up.png b/packages/backend/assets/tabler-badges/arrow-back-up.png new file mode 100644 index 000000000..a253384c7 Binary files /dev/null and b/packages/backend/assets/tabler-badges/arrow-back-up.png differ diff --git a/packages/backend/assets/tabler-badges/at.png b/packages/backend/assets/tabler-badges/at.png new file mode 100644 index 000000000..cbf8df492 Binary files /dev/null and b/packages/backend/assets/tabler-badges/at.png differ diff --git a/packages/backend/assets/tabler-badges/chart-arrows.png b/packages/backend/assets/tabler-badges/chart-arrows.png new file mode 100644 index 000000000..b2b8a2d99 Binary files /dev/null and b/packages/backend/assets/tabler-badges/chart-arrows.png differ diff --git a/packages/backend/assets/tabler-badges/circle-check.png b/packages/backend/assets/tabler-badges/circle-check.png new file mode 100644 index 000000000..6464d5133 Binary files /dev/null and b/packages/backend/assets/tabler-badges/circle-check.png differ diff --git a/packages/backend/assets/tabler-badges/messages.png b/packages/backend/assets/tabler-badges/messages.png new file mode 100644 index 000000000..fa5072ebb Binary files /dev/null and b/packages/backend/assets/tabler-badges/messages.png differ diff --git a/packages/backend/assets/notification-badges/null.png b/packages/backend/assets/tabler-badges/null.png similarity index 100% rename from packages/backend/assets/notification-badges/null.png rename to packages/backend/assets/tabler-badges/null.png diff --git a/packages/backend/assets/tabler-badges/plus.png b/packages/backend/assets/tabler-badges/plus.png new file mode 100644 index 000000000..f13a86f4c Binary files /dev/null and b/packages/backend/assets/tabler-badges/plus.png differ diff --git a/packages/backend/assets/tabler-badges/quote.png b/packages/backend/assets/tabler-badges/quote.png new file mode 100644 index 000000000..e0fc6f3fb Binary files /dev/null and b/packages/backend/assets/tabler-badges/quote.png differ diff --git a/packages/backend/assets/tabler-badges/repeat.png b/packages/backend/assets/tabler-badges/repeat.png new file mode 100644 index 000000000..ab548043f Binary files /dev/null and b/packages/backend/assets/tabler-badges/repeat.png differ diff --git a/packages/backend/assets/tabler-badges/user-plus.png b/packages/backend/assets/tabler-badges/user-plus.png new file mode 100644 index 000000000..2ae96f0b7 Binary files /dev/null and b/packages/backend/assets/tabler-badges/user-plus.png differ diff --git a/packages/backend/assets/tabler-badges/users.png b/packages/backend/assets/tabler-badges/users.png new file mode 100644 index 000000000..786296332 Binary files /dev/null and b/packages/backend/assets/tabler-badges/users.png differ diff --git a/packages/sw/src/scripts/create-notification.ts b/packages/sw/src/scripts/create-notification.ts index 4b006e0f5..6744687fc 100644 --- a/packages/sw/src/scripts/create-notification.ts +++ b/packages/sw/src/scripts/create-notification.ts @@ -3,14 +3,21 @@ */ import { swLang } from '@/scripts/lang'; import { cli } from '@/scripts/operations'; -import { pushNotificationDataMap } from '@/types'; +import { badgeNames, pushNotificationDataMap } from '@/types'; import getUserName from '@/scripts/get-user-name'; import { I18n } from '@/scripts/i18n'; import { getAccountFromId } from '@/scripts/get-account-from-id'; import { char2fileName } from '@/scripts/twemoji-base'; import * as url from '@/scripts/url'; -const iconUrl = (name: string) => `/static-assets/notification-badges/${name}.png`; +const iconUrl = (name: badgeNames) => `/static-assets/tabler-badges/${name}.png`; +/* How to add a new badge: + * 1. Find the icon and download png from https://tabler-icons.io/ + * 2. vips resize ~/Downloads/icon-name.png vipswork.png 0.4; vips scRGB2BW vipswork.png ~/icon-name.png"[compression=9,strip]"; rm vipswork.png; + * 3. mv ~/icon-name.png ~/misskey/packages/backend/assets/tabler-badges/ + * 4. Add 'icon-name' to badgeNames + * 5. Add `badge: iconUrl('icon-name'),` + */ export async function createNotification(data: pushNotificationDataMap[K]) { const n = await composeNotification(data); @@ -75,7 +82,7 @@ async function composeNotification(data return [t('_notification.youGotReply', { name: getUserName(data.body.user) }), { body: data.body.note.text || '', icon: data.body.user.avatarUrl, - badge: iconUrl('reply'), + badge: iconUrl('arrow-back-up'), data, actions: [ { @@ -89,7 +96,7 @@ async function composeNotification(data return [t('_notification.youRenoted', { name: getUserName(data.body.user) }), { body: data.body.note.text || '', icon: data.body.user.avatarUrl, - badge: iconUrl('retweet'), + badge: iconUrl('repeat'), data, actions: [ { @@ -103,7 +110,7 @@ async function composeNotification(data return [t('_notification.youGotQuote', { name: getUserName(data.body.user) }), { body: data.body.note.text || '', icon: data.body.user.avatarUrl, - badge: iconUrl('quote-right'), + badge: iconUrl('quote'), data, actions: [ { @@ -171,7 +178,8 @@ async function composeNotification(data case 'pollEnded': return [t('_notification.pollEnded'), { body: data.body.note.text || '', - badge: iconUrl('clipboard-check-solid'), + badge: iconUrl('chart-arrows'), + tag: `poll:${data.body.note.id}`, data, }]; @@ -179,7 +187,7 @@ async function composeNotification(data return [t('_notification.youReceivedFollowRequest'), { body: getUserName(data.body.user), icon: data.body.user.avatarUrl, - badge: iconUrl('clock'), + badge: iconUrl('user-plus'), data, actions: [ { @@ -197,14 +205,14 @@ async function composeNotification(data return [t('_notification.yourFollowRequestAccepted'), { body: getUserName(data.body.user), icon: data.body.user.avatarUrl, - badge: iconUrl('check'), + badge: iconUrl('circle-check'), data, }]; case 'groupInvited': return [t('_notification.youWereInvitedToGroup', { userName: getUserName(data.body.user) }), { body: data.body.invitation.group.name, - badge: iconUrl('id-card-alt'), + badge: iconUrl('users'), data, actions: [ { @@ -232,7 +240,7 @@ async function composeNotification(data if (data.body.groupId === null) { return [t('_notification.youGotMessagingMessageFromUser', { name: getUserName(data.body.user) }), { icon: data.body.user.avatarUrl, - badge: iconUrl('comments'), + badge: iconUrl('messages'), tag: `messaging:user:${data.body.userId}`, data, renotify: true, @@ -240,7 +248,7 @@ async function composeNotification(data } return [t('_notification.youGotMessagingMessageFromGroup', { name: data.body.group.name }), { icon: data.body.user.avatarUrl, - badge: iconUrl('comments'), + badge: iconUrl('messages'), tag: `messaging:group:${data.body.groupId}`, data, renotify: true, @@ -249,7 +257,7 @@ async function composeNotification(data return [t('_notification.unreadAntennaNote', { name: data.body.antenna.name }), { body: `${getUserName(data.body.note.user)}: ${data.body.note.text || ''}`, icon: data.body.note.user.avatarUrl, - badge: iconUrl('satellite'), + badge: iconUrl('antenna'), tag: `antenna:${data.body.antenna.id}`, data, renotify: true, diff --git a/packages/sw/src/types.ts b/packages/sw/src/types.ts index 2e23de8e1..3b35de407 100644 --- a/packages/sw/src/types.ts +++ b/packages/sw/src/types.ts @@ -36,3 +36,18 @@ export type pushNotificationData export type pushNotificationDataMap = { [K in keyof pushNotificationDataSourceMap]: pushNotificationData; }; + +export type badgeNames = + 'null' + | 'antenna' + | 'arrow-back-up' + | 'at' + | 'chart-arrows' + | 'circle-check' + | 'messages' + | 'plus' + | 'quote' + | 'repeat' + | 'user-plus' + | 'users' + ;