@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
JavaScript
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