1
0
Fork 0
mirror of https://github.com/muerwre/vault-frontend.git synced 2025-04-24 12:26:40 +07:00
vault-frontend/src/utils/tag.ts
2025-01-24 17:51:59 +07:00

15 lines
522 B
TypeScript

import { ITag } from '~/types';
export const separateTags = (tags: Partial<ITag>[]): Partial<ITag>[][] =>
(tags || []).reduce(
(obj, tag) =>
tag?.title?.substr(0, 1) === '/'
? [[...obj[0], tag], obj[1]]
: [obj[0], [...obj[1], tag]],
[[], []] as Partial<ITag>[][],
);
export const separateTagOptions = (options: string[]): string[][] =>
separateTags(options.map((title): Partial<ITag> => ({ title }))).map((item) =>
item.filter((tag) => tag.title).map(({ title }) => title!),
);