feat: add zap
This commit is contained in:
@@ -9,6 +9,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@tanstack/react-query": "^5.24.1",
|
||||
"bitcoin-units": "^1.0.0",
|
||||
"clsx": "^2.1.0",
|
||||
"dayjs": "^1.11.10",
|
||||
"nostr-tools": "^2.3.1",
|
||||
|
||||
@@ -3,6 +3,7 @@ import relativeTime from "dayjs/plugin/relativeTime";
|
||||
import updateLocale from "dayjs/plugin/updateLocale";
|
||||
import { nip19 } from "nostr-tools";
|
||||
import { AUDIOS, IMAGES, VIDEOS } from "./constants";
|
||||
import { BitcoinUnit } from "bitcoin-units";
|
||||
|
||||
dayjs.extend(relativeTime);
|
||||
dayjs.extend(updateLocale);
|
||||
@@ -89,3 +90,34 @@ export function canPreview(text: string) {
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// source: https://github.com/synonymdev/bitkit/blob/master/src/utils/displayValues/index.ts
|
||||
export function getBitcoinDisplayValues(satoshis: number) {
|
||||
let bitcoinFormatted = new BitcoinUnit(satoshis, "satoshis")
|
||||
.getValue()
|
||||
.toFixed(10)
|
||||
.replace(/\.?0+$/, "");
|
||||
|
||||
const [bitcoinWhole, bitcoinDecimal] = bitcoinFormatted.split(".");
|
||||
|
||||
// format sats to group thousands
|
||||
// 4000000 -> 4 000 000
|
||||
let res = "";
|
||||
bitcoinFormatted
|
||||
.split("")
|
||||
.reverse()
|
||||
.forEach((c, index) => {
|
||||
if (index > 0 && index % 3 === 0) {
|
||||
res = " " + res;
|
||||
}
|
||||
res = c + res;
|
||||
});
|
||||
|
||||
bitcoinFormatted = res;
|
||||
|
||||
return {
|
||||
bitcoinFormatted,
|
||||
bitcoinWhole,
|
||||
bitcoinDecimal,
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user