summaryrefslogtreecommitdiff
path: root/apps/web/src/lib/stickers/providers/index.ts
blob: 3c4faee91c69f88ecba38d968f4d3c0094ea12f3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import { hasProvider, registerProvider } from "../registry";
import type { StickerProvider } from "@/types/stickers";
import { emojiProvider } from "./emoji";
import { flagsProvider } from "./flags";
import { iconsProvider } from "./icons";
import { shapesProvider } from "./shapes";

const defaultProviders: StickerProvider[] = [
	iconsProvider,
	emojiProvider,
	flagsProvider,
	shapesProvider,
];

export function registerDefaultStickerProviders({
	providersToRegister = defaultProviders,
}: {
	providersToRegister?: StickerProvider[];
} = {}): void {
	for (const provider of providersToRegister) {
		if (hasProvider({ providerId: provider.id })) {
			continue;
		}
		registerProvider({ provider });
	}
}