UNPKG

@taiga-ui/core

Version:

Core library for creating Angular components and applications using Taiga UI

22 lines 3.86 kB
import { inject, InjectionToken } from '@angular/core'; import { TUI_ASSETS_PATH } from './assets-path'; import { TUI_ICON_REGISTRY } from './icons'; export const TUI_ICON_RESOLVER = new InjectionToken(ngDevMode ? 'TUI_ICON_RESOLVER' : '', { factory: () => { const path = inject(TUI_ASSETS_PATH); return (icon) => `${path}/${icon.replace('@tui.', '').split('.').join('/')}.svg`; }, }); /** * @deprecated use {@link TUI_ICON_RESOLVER} */ export const TUI_ICON_START_RESOLVER = TUI_ICON_RESOLVER; export function tuiInjectIconResolver() { const icons = inject(TUI_ICON_REGISTRY); const resolver = inject(TUI_ICON_RESOLVER); return (icon) => !icon || icon.includes('/') ? icon : (icons[icon] ?? resolver(icon)); } export function tuiIconResolverProvider(useValue) { return { provide: TUI_ICON_RESOLVER, useValue }; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1yZXNvbHZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdG9rZW5zL2ljb24tcmVzb2x2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxjQUFjLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBR3BFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDOUMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sU0FBUyxDQUFDO0FBRTFDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLElBQUksY0FBYyxDQUMvQyxTQUFTLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQ3BDO0lBQ0ksT0FBTyxFQUFFLEdBQUcsRUFBRTtRQUNWLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUVyQyxPQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FDWixHQUFHLElBQUksSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUM7SUFDeEUsQ0FBQztDQUNKLENBQ0osQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsaUJBQWlCLENBQUM7QUFFekQsTUFBTSxVQUFVLHFCQUFxQjtJQUNqQyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUN4QyxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUUzQyxPQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FDWixDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQzdFLENBQUM7QUFFRCxNQUFNLFVBQVUsdUJBQXVCLENBQUMsUUFBa0M7SUFDdEUsT0FBTyxFQUFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxRQUFRLEVBQUMsQ0FBQztBQUNsRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtpbmplY3QsIEluamVjdGlvblRva2VuLCB0eXBlIFByb3ZpZGVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dHlwZSBUdWlTdHJpbmdIYW5kbGVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3R5cGVzJztcblxuaW1wb3J0IHtUVUlfQVNTRVRTX1BBVEh9IGZyb20gJy4vYXNzZXRzLXBhdGgnO1xuaW1wb3J0IHtUVUlfSUNPTl9SRUdJU1RSWX0gZnJvbSAnLi9pY29ucyc7XG5cbmV4cG9ydCBjb25zdCBUVUlfSUNPTl9SRVNPTFZFUiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxUdWlTdHJpbmdIYW5kbGVyPHN0cmluZz4+KFxuICAgIG5nRGV2TW9kZSA/ICdUVUlfSUNPTl9SRVNPTFZFUicgOiAnJyxcbiAgICB7XG4gICAgICAgIGZhY3Rvcnk6ICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHBhdGggPSBpbmplY3QoVFVJX0FTU0VUU19QQVRIKTtcblxuICAgICAgICAgICAgcmV0dXJuIChpY29uKSA9PlxuICAgICAgICAgICAgICAgIGAke3BhdGh9LyR7aWNvbi5yZXBsYWNlKCdAdHVpLicsICcnKS5zcGxpdCgnLicpLmpvaW4oJy8nKX0uc3ZnYDtcbiAgICAgICAgfSxcbiAgICB9LFxuKTtcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2Uge0BsaW5rIFRVSV9JQ09OX1JFU09MVkVSfVxuICovXG5leHBvcnQgY29uc3QgVFVJX0lDT05fU1RBUlRfUkVTT0xWRVIgPSBUVUlfSUNPTl9SRVNPTFZFUjtcblxuZXhwb3J0IGZ1bmN0aW9uIHR1aUluamVjdEljb25SZXNvbHZlcigpOiBUdWlTdHJpbmdIYW5kbGVyPHN0cmluZz4ge1xuICAgIGNvbnN0IGljb25zID0gaW5qZWN0KFRVSV9JQ09OX1JFR0lTVFJZKTtcbiAgICBjb25zdCByZXNvbHZlciA9IGluamVjdChUVUlfSUNPTl9SRVNPTFZFUik7XG5cbiAgICByZXR1cm4gKGljb24pID0+XG4gICAgICAgICFpY29uIHx8IGljb24uaW5jbHVkZXMoJy8nKSA/IGljb24gOiAoaWNvbnNbaWNvbl0gPz8gcmVzb2x2ZXIoaWNvbikpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdHVpSWNvblJlc29sdmVyUHJvdmlkZXIodXNlVmFsdWU6IFR1aVN0cmluZ0hhbmRsZXI8c3RyaW5nPik6IFByb3ZpZGVyIHtcbiAgICByZXR1cm4ge3Byb3ZpZGU6IFRVSV9JQ09OX1JFU09MVkVSLCB1c2VWYWx1ZX07XG59XG4iXX0=