{"version":3,"file":"angular-copy-to-clipboard.mjs","sources":["../../../projects/angular-copy-to-clipboard/src/lib/angular-copy-to-clipboard.service.ts","../../../projects/angular-copy-to-clipboard/src/lib/component/copy/angular-copy-to-clipboard.component.ts","../../../projects/angular-copy-to-clipboard/src/lib/component/copy/angular-copy-to-clipboard.component.html","../../../projects/angular-copy-to-clipboard/src/lib/directive/angular-copy-to-clipboard.directive.ts","../../../projects/angular-copy-to-clipboard/src/lib/angular-copy-to-clipboard.module.ts","../../../projects/angular-copy-to-clipboard/src/public-api.ts","../../../projects/angular-copy-to-clipboard/src/angular-copy-to-clipboard.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class AngularCopyToClipboardService {\n\n  constructor() { }\n}\n","import { Component, EventEmitter, HostBinding, Input, OnInit, Output } from '@angular/core';\n\n@Component({\n  selector: 'angular-copy-to-clipboard',\n  templateUrl: './angular-copy-to-clipboard.component.html',\n  styleUrls: ['./angular-copy-to-clipboard.component.css']\n})\nexport class AngularCopyToClipboardComponent implements OnInit {\n  @Output() success: EventEmitter<boolean> = new EventEmitter();\n  @Output() error: EventEmitter<boolean> = new EventEmitter();\n  @Input() targetId!: string | number;\n  @Input() height: number = 1.3;\n  @Input() width: number = 1.3;\n  @Input() color: string = 'gray';\n  hasGradient: boolean = false;\n  @HostBinding(\"style.--c-i-color\") iconColor: string = '';\n  constructor() { }\n\n  ngOnInit(): void {\n    this.iconColor = this.color;\n  }\n  public copy(): void {\n    if (!this.targetId) {\n      this.error.emit(true);\n      return;\n    }\n    const target = document.getElementById(this.targetId.toString());\n    navigator.clipboard.writeText(target?.innerText || '').then(() => {\n      this.success.emit(true);\n    }\n    ).catch(e => {\n      const range = document.createRange();\n      const selection = window.getSelection();\n      if (!target) {\n        this.error.emit(true);\n      } else {\n        range.selectNodeContents(target);\n        selection?.removeAllRanges();\n        selection?.addRange(range);\n        const res = document.execCommand('copy');\n        if (res) {\n          this.success.emit(true);\n        } else {\n          this.error.emit(true);\n        }\n      }\n    });\n\n  }\n}\n","<div #ref class=\"d-inline-block\" (click)=\"copy()\">\n    <ng-content></ng-content>\n</div>\n<span  *ngIf=\"!ref.children.length\" class=\"icon\" [style.width.rem]=\"width\" [style.height.rem]=\"height\" (click)=\"copy()\">\n    <svg class=\"solid\" viewBox=\"0 0 115.77 122.88\" height=\"100%\" width=\"100%\" x=\"0px\" y=\"0px\">\n        <g>\n            <path\n                d=\"M89.62,13.96v7.73h12.19h0.01v0.02c3.85,0.01,7.34,1.57,9.86,4.1c2.5,2.51,4.06,5.98,4.07,9.82h0.02v0.02 v73.27v0.01h-0.02c-0.01,3.84-1.57,7.33-4.1,9.86c-2.51,2.5-5.98,4.06-9.82,4.07v0.02h-0.02h-61.7H40.1v-0.02 c-3.84-0.01-7.34-1.57-9.86-4.1c-2.5-2.51-4.06-5.98-4.07-9.82h-0.02v-0.02V92.51H13.96h-0.01v-0.02c-3.84-0.01-7.34-1.57-9.86-4.1 c-2.5-2.51-4.06-5.98-4.07-9.82H0v-0.02V13.96v-0.01h0.02c0.01-3.85,1.58-7.34,4.1-9.86c2.51-2.5,5.98-4.06,9.82-4.07V0h0.02h61.7 h0.01v0.02c3.85,0.01,7.34,1.57,9.86,4.1c2.5,2.51,4.06,5.98,4.07,9.82h0.02V13.96L89.62,13.96z M79.04,21.69v-7.73v-0.02h0.02 c0-0.91-0.39-1.75-1.01-2.37c-0.61-0.61-1.46-1-2.37-1v0.02h-0.01h-61.7h-0.02v-0.02c-0.91,0-1.75,0.39-2.37,1.01 c-0.61,0.61-1,1.46-1,2.37h0.02v0.01v64.59v0.02h-0.02c0,0.91,0.39,1.75,1.01,2.37c0.61,0.61,1.46,1,2.37,1v-0.02h0.01h12.19V35.65 v-0.01h0.02c0.01-3.85,1.58-7.34,4.1-9.86c2.51-2.5,5.98-4.06,9.82-4.07v-0.02h0.02H79.04L79.04,21.69z M105.18,108.92V35.65v-0.02 h0.02c0-0.91-0.39-1.75-1.01-2.37c-0.61-0.61-1.46-1-2.37-1v0.02h-0.01h-61.7h-0.02v-0.02c-0.91,0-1.75,0.39-2.37,1.01 c-0.61,0.61-1,1.46-1,2.37h0.02v0.01v73.27v0.02h-0.02c0,0.91,0.39,1.75,1.01,2.37c0.61,0.61,1.46,1,2.37,1v-0.02h0.01h61.7h0.02 v0.02c0.91,0,1.75-0.39,2.37-1.01c0.61-0.61,1-1.46,1-2.37h-0.02V108.92L105.18,108.92z\" />\n        </g>\n    </svg>\n</span>\n","import { Directive, EventEmitter, HostListener, Input, Output } from '@angular/core';\n\n@Directive({\n  selector: '[copyToClipboard]'\n})\nexport class AngularCopyToClipboardDirective {\n  @Input() targetId!: string | number;\n  @Output() success: EventEmitter<boolean> = new EventEmitter();\n  @Output() error: EventEmitter<boolean> = new EventEmitter();\n\n  constructor() { }\n  @HostListener(\"click\", [\"$event\"])\n  public onClick(event: any): void {\n    this.copy();\n  }\n  public copy(): void {\n    if (!this.targetId) {\n      this.error.emit(true);\n      return;\n    }\n    const target = document.getElementById(this.targetId.toString());\n    navigator.clipboard.writeText(target?.innerText || '').then(() => {\n      this.success.emit(true);\n    }\n    ).catch(e => {\n      const range = document.createRange();\n      const selection = window.getSelection();\n      if (!target) {\n        this.error.emit(true);\n      } else {\n        range.selectNodeContents(target);\n        selection?.removeAllRanges();\n        selection?.addRange(range);\n        const res = document.execCommand('copy');\n        if (res) {\n          this.success.emit(true);\n        } else {\n          this.error.emit(true);\n        }\n      }\n    });\n\n  }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AngularCopyToClipboardComponent } from './component/copy/angular-copy-to-clipboard.component';\nimport { AngularCopyToClipboardDirective } from './directive/angular-copy-to-clipboard.directive';\n\n\n\n@NgModule({\n  declarations: [\n    AngularCopyToClipboardComponent,\n    AngularCopyToClipboardDirective\n  ],\n  imports: [\n    CommonModule\n  ],\n  exports: [\n    AngularCopyToClipboardComponent,\n    AngularCopyToClipboardDirective\n  ]\n})\nexport class AngularCopyToClipboardModule { }\n","/*\n * Public API Surface of angular-copy-to-clipboard\n */\n\nexport * from './lib/angular-copy-to-clipboard.service';\nexport * from './lib/component/copy/angular-copy-to-clipboard.component';\nexport * from './lib/directive/angular-copy-to-clipboard.directive';\nexport * from './lib/angular-copy-to-clipboard.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}