mirror of
https://github.com/koreanbots/core.git
synced 2025-12-15 14:10:22 +00:00
feat: added tools for client
This commit is contained in:
parent
7bee44c955
commit
436ed20473
29
utils/Tools.ts
Normal file
29
utils/Tools.ts
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
import { UserPemissionFlags } from '../types'
|
||||||
|
import { perms } from './Constants'
|
||||||
|
|
||||||
|
function formatNumber(num: number, digits = 1) {
|
||||||
|
const si = [
|
||||||
|
{ value: 1, symbol: '' },
|
||||||
|
{ value: 1e3, symbol: '천' },
|
||||||
|
{ value: 1e4, symbol: '만' },
|
||||||
|
{ value: 1e8, symbol: '억' },
|
||||||
|
{ value: 1e12, symbol: '조' },
|
||||||
|
{ value: 1e16, symbol: '해' },
|
||||||
|
]
|
||||||
|
const rx = /\.0+$|(\.[0-9]*[1-9])0+$/
|
||||||
|
let i
|
||||||
|
for (i = si.length - 1; i > 0; i--) {
|
||||||
|
if (num >= si[i].value) {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return (num / si[i].value).toFixed(digits).replace(rx, '$1') + si[i].symbol
|
||||||
|
}
|
||||||
|
|
||||||
|
function checkPerm(base: number, required: number | UserPemissionFlags) {
|
||||||
|
required = typeof required === 'number' ? required : perms[required]
|
||||||
|
if (typeof required !== 'number' && !required) throw new Error('올바르지 않은 권한입니다.')
|
||||||
|
return (base & required) === required
|
||||||
|
}
|
||||||
|
|
||||||
|
export { formatNumber, checkPerm }
|
||||||
@ -1,26 +1,6 @@
|
|||||||
import * as Query from './Query'
|
import * as Query from './Query'
|
||||||
import * as Constants from './Constants'
|
import { formatNumber } from './Tools'
|
||||||
import ResponseWrapper from './ResponseWrapper'
|
import ResponseWrapper from './ResponseWrapper'
|
||||||
import Fetch from './Fetch'
|
import Fetch from './Fetch'
|
||||||
|
|
||||||
function formatNumber(num:number, digits=1) {
|
export { Query, Fetch, ResponseWrapper, formatNumber }
|
||||||
const si = [
|
|
||||||
{ value: 1, symbol: '' },
|
|
||||||
{ value: 1E3, symbol: '천' },
|
|
||||||
{ value: 1E4, symbol: '만' },
|
|
||||||
{ value: 1E8, symbol: '억' },
|
|
||||||
{ value: 1E12, symbol: '조' },
|
|
||||||
{ value: 1E16, symbol: '해' }
|
|
||||||
]
|
|
||||||
const rx = /\.0+$|(\.[0-9]*[1-9])0+$/
|
|
||||||
let i
|
|
||||||
for (i = si.length - 1; i > 0; i--) {
|
|
||||||
if (num >= si[i].value) {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return (num / si[i].value).toFixed(digits).replace(rx, '$1') + si[i].symbol
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
export { Query, Constants, Fetch, ResponseWrapper, formatNumber }
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user