decentralised message store

feat: at uri to string helper

serenity 1eb6307e 7b07d83f

Changed files
+7
src
lib
utils
+7
src/lib/utils/atproto.ts
···
export const atUriRegexp =
/^at:\/\/([a-zA-Z0-9._:%-]+)(?:\/([a-zA-Z0-9-.]+)(?:\/([a-zA-Z0-9._~:@!$&%')(*+,;=-]+))?)?(?:#(\/[a-zA-Z0-9._~:@!$&%')(*+,;=\-[\]/\\]*))?$/;
export const stringToAtUri = (str: string): Result<AtUri, unknown> => {
const isValidAtUri = atUriRegexp.test(str);
if (!isValidAtUri)
···
export const atUriRegexp =
/^at:\/\/([a-zA-Z0-9._:%-]+)(?:\/([a-zA-Z0-9-.]+)(?:\/([a-zA-Z0-9._~:@!$&%')(*+,;=-]+))?)?(?:#(\/[a-zA-Z0-9._~:@!$&%')(*+,;=\-[\]/\\]*))?$/;
+
export const atUriToString = ({ authority, collection, rKey }: AtUri) => {
+
let result = `at://${authority}`;
+
result += collection ? `/${collection}` : "";
+
result += rKey ? `/${rKey}` : "";
+
return result;
+
};
+
export const stringToAtUri = (str: string): Result<AtUri, unknown> => {
const isValidAtUri = atUriRegexp.test(str);
if (!isValidAtUri)