import ngModule from '../module'; class Controller { constructor(vnToken) { this.accessToken = vnToken.token; this.moreOptions = [ {callback: this.showInvoiceOutPdf, name: 'Show invoice out PDF'} ]; } onMoreChange(callback) { callback.call(this); } set invoiceOut(value) { this._invoiceOut = value; if (value) { this._quicklinks = { btnOne: { icon: 'icon-person', state: `client.card.summary({id: ${value.clientFk}})`, tooltip: 'Client card' }, btnTwo: { icon: 'icon-ticket', state: `ticket.index({q: '{"refFk": "${value.ref}"}'})`, tooltip: 'Invoice ticket list' } }; } } get invoiceOut() { return this._invoiceOut; } showInvoiceOutPdf() { let url = `api/InvoiceOuts/${this.invoiceOut.id}/download?access_token=${this.accessToken}`; window.open(url, '_blank'); } set quicklinks(value = {}) { this._quicklinks = Object.assign(value, this._quicklinks); } get quicklinks() { return this._quicklinks; } } Controller.$inject = ['vnToken']; ngModule.component('vnInvoiceOutDescriptor', { template: require('./index.html'), bindings: { invoiceOut: '<', quicklinks: '<' }, controller: Controller });