// @license magnet:?xt=urn:btih:0b31508aeb0634b347b8270c7bee4d411b5d4109&dn=agpl-3.0.txt AGPL-3.0-or-later
// @source: https://gitlab.com/soapbox-pub/ditto/-/tree/f0a3877c
import{u as e}from"./esm-CRVqHnq2.js";var t=15128,n=35128,r=5128,i=[t,n,r];function a(e){return e===15128||e===35128||e===5128}var o=50;function s(e){let t=0n;for(let n=0;n<e.length;n++)t=t*16n+BigInt(parseInt(e[n],16));return t.toString(36).padStart(o,`0`)}function c(e){return[...e].reduce((e,t)=>e*36n+BigInt(parseInt(t,36)),0n).toString(16).padStart(64,`0`)}function l(i){if(i.startsWith(`npub1`))try{let n=e.decode(i);return n.type===`npub`?{kind:t,pubkey:n.data,identifier:``}:null}catch{return null}if(/^v[0-9a-z]{50}$/.test(i))try{return{kind:r,id:c(i.slice(1))}}catch{return null}if(i.length<=o)return null;let a=i.slice(0,o),s=i.slice(o);if(!/^[0-9a-z]+$/.test(a))return null;try{return{kind:n,pubkey:c(a),identifier:s}}catch{return null}}function u(t){let n=t.tags.find(([e])=>e===`d`)?.[1];return t.kind===35128&&n?`${s(t.pubkey)}${n}`:t.kind===5128?`v${s(t.id)}`:e.npubEncode(t.pubkey)}function d(e){let t=e.tags.find(([e])=>e===`a`)?.[1];if(!t)return null;let[n,r,i=``]=t.split(`:`),a=Number(n);return a!==15128&&a!==35128||!/^[0-9a-f]{64}$/.test(r??``)?null:{kind:a,pubkey:r,identifier:i}}function f(e){let t=e.tags.find(([e,,t])=>e===`x`&&t===`aggregate`)?.[1];return t&&/^[0-9a-f]{64}$/.test(t)?t:void 0}export{f as a,s as c,r as i,a as l,n,u as o,t as r,d as s,i as t,l as u};
// @license-end
