New base code for mempool blockchain explorerer
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
<span #buttonWrapper [attr.data-tlite]="'Copied!'">
|
||||
<button #btn class="btn btn-sm btn-link pt-0" style="line-height: 1;" [attr.data-clipboard-text]="text">
|
||||
<img src="./assets/clippy.svg" width="13">
|
||||
</button>
|
||||
</span>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
|
||||
|
||||
import { ClipboardComponent } from './clipboard.component';
|
||||
|
||||
describe('ClipboardComponent', () => {
|
||||
let component: ClipboardComponent;
|
||||
let fixture: ComponentFixture<ClipboardComponent>;
|
||||
|
||||
beforeEach(async(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ ClipboardComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(ClipboardComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
33
frontend/src/app/components/clipboard/clipboard.component.ts
Normal file
33
frontend/src/app/components/clipboard/clipboard.component.ts
Normal file
@@ -0,0 +1,33 @@
|
||||
import { Component, OnInit, ViewChild, ElementRef, AfterViewInit, Input } from '@angular/core';
|
||||
import * as ClipboardJS from 'clipboard';
|
||||
import * as tlite from 'tlite';
|
||||
|
||||
@Component({
|
||||
selector: 'app-clipboard',
|
||||
templateUrl: './clipboard.component.html',
|
||||
styleUrls: ['./clipboard.component.scss']
|
||||
})
|
||||
export class ClipboardComponent implements AfterViewInit {
|
||||
@ViewChild('btn') btn: ElementRef;
|
||||
@ViewChild('buttonWrapper') buttonWrapper: ElementRef;
|
||||
@Input() text: string;
|
||||
|
||||
clipboard: any;
|
||||
|
||||
constructor() { }
|
||||
|
||||
ngAfterViewInit() {
|
||||
this.clipboard = new ClipboardJS(this.btn.nativeElement);
|
||||
this.clipboard.on('success', (e) => {
|
||||
tlite.show(this.buttonWrapper.nativeElement);
|
||||
setTimeout(() => {
|
||||
tlite.hide(this.buttonWrapper.nativeElement);
|
||||
}, 1000);
|
||||
});
|
||||
}
|
||||
|
||||
onDestroy() {
|
||||
this.clipboard.destroy();
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user