@tldraw/editor
Version:
tldraw infinite canvas SDK (editor).
20 lines (15 loc) • 610 B
text/typescript
import { TLAssetUtilConstructor } from '../editor/assets/AssetUtil'
/** @public */
export type TLAnyAssetUtilConstructor = TLAssetUtilConstructor<any>
export function checkAssets(customAssets: readonly TLAnyAssetUtilConstructor[]) {
const assets = [] as TLAnyAssetUtilConstructor[]
const addedCustomAssetTypes = new Set<string>()
for (const customAsset of customAssets) {
if (addedCustomAssetTypes.has(customAsset.type)) {
throw new Error(`Asset type "${customAsset.type}" is defined more than once`)
}
assets.push(customAsset)
addedCustomAssetTypes.add(customAsset.type)
}
return assets
}