[ADF-4405] [ADF-4423] Fix clipboard directive on json cell (#4643)

* [ADF-4405] [ADF-4423] Fix clipboard directive on json cell

* [ADF-4405] Fix unit tests

* [ADF-4405] Fix e2e test
This commit is contained in:
Eugenio Romano 2019-04-25 19:49:38 +01:00 committed by GitHub
parent 37f52a139e
commit f94eb5872a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 10 additions and 9 deletions

View File

@ -31,7 +31,7 @@
readonly="readonly">
<mat-icon class="adf-input-action" matSuffix
[clipboard-notification]="'SHARE.CLIPBOARD-MESSAGE' | translate"
[adf-clipboard] target="sharedLinkInput">
[adf-clipboard] [target]="sharedLinkInput">
link
</mat-icon>
</mat-form-field>

View File

@ -72,11 +72,12 @@ describe('CopyClipboardDirective', () => {
@Component({
selector: 'adf-copy-conent-test-component',
template: `<span adf-clipboard>{{ mockText }}</span>`
template: `<span adf-clipboard="placeholder">{{ mockText }}</span>`
})
class TestCopyClipboardComponent {
mockText = 'text to copy';
placeholder = 'copy text';
@ViewChild(ClipboardDirective)
clipboardDirective: ClipboardDirective;

View File

@ -49,9 +49,11 @@ export class ClipboardDirective {
@HostListener('mouseenter')
showTooltip() {
const componentFactory = this.resolver.resolveComponentFactory(ClipboardComponent);
const componentRef = this.viewContainerRef.createComponent(componentFactory).instance;
componentRef.placeholder = this.placeholder;
if (this.placeholder) {
const componentFactory = this.resolver.resolveComponentFactory(ClipboardComponent);
const componentRef = this.viewContainerRef.createComponent(componentFactory).instance;
componentRef.placeholder = this.placeholder;
}
}
@HostListener('mouseleave')

View File

@ -36,7 +36,7 @@ import { Node } from '@alfresco/js-api';
template: `
<ng-container>
<span *ngIf="copyContent; else defaultCell"
adf-clipboard
adf-clipboard="CLIPBOARD.CLICK_TO_COPY"
[clipboard-notification]="'CLIPBOARD.SUCCESS_COPY'"
[attr.aria-label]="value$ | async"
[title]="tooltip"

View File

@ -27,9 +27,7 @@ import { DataTableCellComponent } from './datatable-cell.component';
<pre
class="adf-datatable-json-cell"
[adf-clipboard]="'CLIPBOARD.CLICK_TO_COPY'"
[clipboard-notification]="'CLIPBOARD.SUCCESS_COPY'">
{{ value$ | async | json }}
</pre>
[clipboard-notification]="'CLIPBOARD.SUCCESS_COPY'">{{ value$ | async | json }}</pre>
</span>
</ng-container>
<ng-template #defaultJsonTemplate>