15 lines
431 B
TypeScript
15 lines
431 B
TypeScript
|
/*
|
||
|
* SPDX-FileCopyrightText: syuilo and misskey-project
|
||
|
* SPDX-License-Identifier: AGPL-3.0-only
|
||
|
*/
|
||
|
|
||
|
export function extractAvgColorFromBlurhash(hash: string) {
|
||
|
return typeof hash === 'string'
|
||
|
? '#' + [...hash.slice(2, 6)]
|
||
|
.map(x => '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz#$%*+,-.:;=?@[]^_{|}~'.indexOf(x))
|
||
|
.reduce((a, c) => a * 83 + c, 0)
|
||
|
.toString(16)
|
||
|
.padStart(6, '0')
|
||
|
: undefined;
|
||
|
}
|