{"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    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;AACtC,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;+GARS,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;;;;"}