UNPKG

@taiga-ui/cdk

Version:

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

35 lines (31 loc) 1.65 kB
import * as i0 from '@angular/core'; import { inject, input, Directive } from '@angular/core'; import { WA_WINDOW } from '@ng-web-apis/common'; import { tuiGetSelectedText } from '@taiga-ui/cdk/utils/dom'; import { identity } from 'rxjs'; class TuiCopyProcessor { constructor() { this.win = inject(WA_WINDOW); this.tuiCopyProcessor = input(identity); } onCopy(event) { const text = tuiGetSelectedText(this.win); if (text) { event.clipboardData?.setData('text/plain', this.tuiCopyProcessor()(text)); } } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TuiCopyProcessor, deps: [], target: i0.ɵɵFactoryTarget.Directive }); } static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.25", type: TuiCopyProcessor, isStandalone: true, selector: "[tuiCopyProcessor]", inputs: { tuiCopyProcessor: { classPropertyName: "tuiCopyProcessor", publicName: "tuiCopyProcessor", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "copy.prevent": "onCopy($event)" } }, ngImport: i0 }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TuiCopyProcessor, decorators: [{ type: Directive, args: [{ selector: '[tuiCopyProcessor]', host: { '(copy.prevent)': 'onCopy($event)' }, }] }] }); /** * Generated bundle index. Do not edit. */ export { TuiCopyProcessor }; //# sourceMappingURL=taiga-ui-cdk-directives-copy-processor.mjs.map