(refactor) remove lodash dependency

This commit is contained in:
Valentyne Stigloher 2024-11-01 17:53:00 +01:00
parent 1a435b9759
commit 4ba0b89809
3 changed files with 1 additions and 15 deletions

View File

@ -50,7 +50,6 @@
"js-md5": "^0.7.3",
"jsdom": "^24.1.1",
"jsonwebtoken": "^8.5.1",
"lodash": "^4.17.21",
"luxon": "^1.28.1",
"markdown-it": "^14.0.0",
"markdown-it-mark": "^4.0.0",
@ -102,7 +101,6 @@
"@types/js-md5": "^0.7.2",
"@types/jsdom": "^21.1.7",
"@types/jsonwebtoken": "^8.5.9",
"@types/lodash": "^4.14.197",
"@types/luxon": "^1.27.1",
"@types/markdown-it": "^14.0.1",
"@types/multer": "1.4.5",

11
pnpm-lock.yaml generated
View File

@ -113,9 +113,6 @@ importers:
jsonwebtoken:
specifier: ^8.5.1
version: 8.5.1
lodash:
specifier: ^4.17.21
version: 4.17.21
luxon:
specifier: ^1.28.1
version: 1.28.1
@ -264,9 +261,6 @@ importers:
'@types/jsonwebtoken':
specifier: ^8.5.9
version: 8.5.9
'@types/lodash':
specifier: ^4.14.197
version: 4.17.7
'@types/luxon':
specifier: ^1.27.1
version: 1.27.1
@ -2878,9 +2872,6 @@ packages:
'@types/linkify-it@5.0.0':
resolution: {integrity: sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==}
'@types/lodash@4.17.7':
resolution: {integrity: sha512-8wTvZawATi/lsmNu10/j2hk1KEP0IvjubqPE3cu1Xz7xfXXt5oCq3SNUz4fMIP4XGF9Ky+Ue2tBA3hcS7LSBlA==}
'@types/luxon@1.27.1':
resolution: {integrity: sha512-cPiXpOvPFDr2edMnOXlz3UBDApwUfR+cpizvxCy0n3vp9bz/qe8BWzHPIEFcy+ogUOyjKuCISgyq77ELZPmkkg==}
@ -11754,8 +11745,6 @@ snapshots:
'@types/linkify-it@5.0.0': {}
'@types/lodash@4.17.7': {}
'@types/luxon@1.27.1': {}
'@types/markdown-it@14.1.2':

View File

@ -3,7 +3,6 @@ import type { Request, Response, NextFunction } from 'express';
import { Base64 } from 'js-base64';
import md5 from 'js-md5';
import jwt from 'jsonwebtoken';
import _ from 'lodash';
import type { Database } from '../server/db.ts';
@ -154,7 +153,7 @@ export const now = (): number => {
};
export const isEmoji = (char: string): boolean => {
return _.toArray(char).length === 1 && !!char.trim().match(/(?:[\u2700-\u27bf]|(?:\ud83c[\udde6-\uddff]){2}|[\ud800-\udbff][\udc00-\udfff]|[\u0023-\u0039]\ufe0f?\u20e3|\u3299|\u3297|\u303d|\u3030|\u24c2|\ud83c[\udd70-\udd71]|\ud83c[\udd7e-\udd7f]|\ud83c\udd8e|\ud83c[\udd91-\udd9a]|\ud83c[\udde6-\uddff]|\ud83c[\ude01-\ude02]|\ud83c\ude1a|\ud83c\ude2f|\ud83c[\ude32-\ude3a]|\ud83c[\ude50-\ude51]|\u203c|\u2049|[\u25aa-\u25ab]|\u25b6|\u25c0|[\u25fb-\u25fe]|\u00a9|\u00ae|\u2122|\u2139|\ud83c\udc04|[\u2600-\u26FF]|\u2b05|\u2b06|\u2b07|\u2b1b|\u2b1c|\u2b50|\u2b55|\u231a|\u231b|\u2328|\u23cf|[\u23e9-\u23f3]|[\u23f8-\u23fa]|\ud83c\udccf|\u2934|\u2935|[\u2190-\u21ff])/);
return !!char.match(/[\u2700-\u27bf]|(?:\ud83c[\udde6-\uddff]){2}|[\ud800-\udbff][\udc00-\udfff]|[\u0023-\u0039]\ufe0f?\u20e3|\u3299|\u3297|\u303d|\u3030|\u24c2|\ud83c[\udd70-\udd71]|\ud83c[\udd7e-\udd7f]|\ud83c\udd8e|\ud83c[\udd91-\udd9a]|\ud83c[\udde6-\uddff]|\ud83c[\ude01-\ude02]|\ud83c\ude1a|\ud83c\ude2f|\ud83c[\ude32-\ude3a]|\ud83c[\ude50-\ude51]|\u203c|\u2049|[\u25aa-\u25ab]|\u25b6|\u25c0|[\u25fb-\u25fe]|\u00a9|\u00ae|\u2122|\u2139|\ud83c\udc04|[\u2600-\u26FF]|\u2b05|\u2b06|\u2b07|\u2b1b|\u2b1c|\u2b50|\u2b55|\u231a|\u231b|\u2328|\u23cf|[\u23e9-\u23f3]|[\u23f8-\u23fa]|\ud83c\udccf|\u2934|\u2935|[\u2190-\u21ff]/);
};
export function zip<K extends keyof unknown, V>(list: [K, V][], reverse: false): Record<K, V>;