UNPKG

@taiga-ui/cdk

Version:

Base library for creating Angular components and applications using Taiga UI principles regarding of actual visual appearance

1 lines 2.04 kB
{"version":3,"file":"taiga-ui-cdk-directives-with-styles.mjs","sources":["../../../projects/cdk/directives/with-styles/with-styles.directive.ts","../../../projects/cdk/directives/with-styles/taiga-ui-cdk-directives-with-styles.ts"],"sourcesContent":["import {\n createComponent,\n Directive,\n EnvironmentInjector,\n inject,\n InjectionToken,\n type OnDestroy,\n type Type,\n type ValueProvider,\n} from '@angular/core';\n\nconst TUI_STYLES = new InjectionToken<ReadonlyArray<Type<unknown>>>(\n ngDevMode ? 'TUI_STYLES' : '',\n);\n\nexport function provideStyles(useValue: Type<unknown>): ValueProvider {\n return {provide: TUI_STYLES, multi: true, useValue};\n}\n\n// Use it after this is fixed: https://github.com/angular/angular/issues/57846\n@Directive()\nexport class TuiWithStyles implements OnDestroy {\n private readonly injector = inject(EnvironmentInjector);\n\n private readonly refs = inject(TUI_STYLES, {self: true}).map((component) =>\n createComponent(component, {environmentInjector: this.injector}),\n );\n\n public ngOnDestroy(): void {\n this.refs.forEach((ref) => ref.destroy());\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAWA,MAAM,UAAU,GAAG,IAAI,cAAc,CACjC,SAAS,GAAG,YAAY,GAAG,EAAE,CAChC;AAEK,SAAU,aAAa,CAAC,QAAuB,EAAA;IACjD,OAAO,EAAC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAC;AACvD;AAEA;MAEa,aAAa,CAAA;AAD1B,IAAA,WAAA,GAAA;AAEqB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,mBAAmB,CAAC;AAEtC,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,EAAC,IAAI,EAAE,IAAI,EAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,KACnE,eAAe,CAAC,SAAS,EAAE,EAAC,mBAAmB,EAAE,IAAI,CAAC,QAAQ,EAAC,CAAC,CACnE;AAKJ,IAAA;IAHU,WAAW,GAAA;AACd,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC;IAC7C;+GATS,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAb,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBADzB;;;ACpBD;;AAEG;;;;"}