UNPKG

@c8y/ngx-components

Version:

Angular modules for Cumulocity IoT applications

33 lines 8.28 kB
import { Component, Input } from '@angular/core'; import { FetchClient } from '@c8y/client'; import { gettext } from '@c8y/ngx-components'; import * as i0 from "@angular/core"; import * as i1 from "@c8y/client"; import * as i2 from "@c8y/ngx-components"; import * as i3 from "@angular/common"; export class LicenseViewComponent { constructor(fetchClient) { this.fetchClient = fetchClient; this.content = gettext('Loading license content'); this.FALL_BACK_URL = 'https://spdx.org/licenses/'; } async ngOnInit() { const response = await this.fetchClient.fetch(this.url); if (response.status === 200) { this.content = await response.text(); return; } this.content = ''; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LicenseViewComponent, deps: [{ token: i1.FetchClient }], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LicenseViewComponent, selector: "c8y-license-view", inputs: { url: "url", name: "name" }, ngImport: i0, template: "<ng-container *ngIf=\"content\">\n <a [href]=\"url\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"small pull-right\">\n <i c8yIcon=\"external-link\" class=\"m-r-4\"></i>\n <span translate>Open in new window</span>\n </a>\n <textarea\n [attr.aria-label]=\"'License' | translate\"\n class=\"form-control bg-level-1 text-monospace small m-b-16\"\n readonly\n style=\"height: 170px\"\n [textContent]=\"content\"\n ></textarea>\n</ng-container>\n\n<div class=\"alert alert-warning\" role=\"alert\" *ngIf=\"!content && name\">\n <strong translate>No license attached</strong>\n <p translate>\n The author of the package hasn't included a license file in a format that can be displayed.\n Verify the license online, for example, with a website like:\n </p>\n <a [href]=\"FALL_BACK_URL + name\" target=\"_blank\" rel=\"noopener noreferrer\">\n {{ FALL_BACK_URL }}{{ name }}\n </a>\n</div>\n\n<div class=\"alert alert-danger\" role=\"alert\" *ngIf=\"!content && !name\">\n <strong translate>No license found</strong>\n <p translate>\n There is no license attached to this package. You can continue installing it at your own risk.\n </p>\n</div>\n", dependencies: [{ kind: "directive", type: i2.IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: i2.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.C8yTranslatePipe, name: "translate" }] }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LicenseViewComponent, decorators: [{ type: Component, args: [{ selector: 'c8y-license-view', template: "<ng-container *ngIf=\"content\">\n <a [href]=\"url\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"small pull-right\">\n <i c8yIcon=\"external-link\" class=\"m-r-4\"></i>\n <span translate>Open in new window</span>\n </a>\n <textarea\n [attr.aria-label]=\"'License' | translate\"\n class=\"form-control bg-level-1 text-monospace small m-b-16\"\n readonly\n style=\"height: 170px\"\n [textContent]=\"content\"\n ></textarea>\n</ng-container>\n\n<div class=\"alert alert-warning\" role=\"alert\" *ngIf=\"!content && name\">\n <strong translate>No license attached</strong>\n <p translate>\n The author of the package hasn't included a license file in a format that can be displayed.\n Verify the license online, for example, with a website like:\n </p>\n <a [href]=\"FALL_BACK_URL + name\" target=\"_blank\" rel=\"noopener noreferrer\">\n {{ FALL_BACK_URL }}{{ name }}\n </a>\n</div>\n\n<div class=\"alert alert-danger\" role=\"alert\" *ngIf=\"!content && !name\">\n <strong translate>No license found</strong>\n <p translate>\n There is no license attached to this package. You can continue installing it at your own risk.\n </p>\n</div>\n" }] }], ctorParameters: () => [{ type: i1.FetchClient }], propDecorators: { url: [{ type: Input }], name: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGljZW5zZS12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2Vjb3N5c3RlbS9saWNlbnNlLWNvbmZpcm0vbGljZW5zZS12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL2Vjb3N5c3RlbS9saWNlbnNlLWNvbmZpcm0vbGljZW5zZS12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDMUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7OztBQU05QyxNQUFNLE9BQU8sb0JBQW9CO0lBUy9CLFlBQW9CLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBSjVDLFlBQU8sR0FBVyxPQUFPLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUV0RCxrQkFBYSxHQUFHLDRCQUE0QixDQUFDO0lBRUUsQ0FBQztJQUVoRCxLQUFLLENBQUMsUUFBUTtRQUNaLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3hELElBQUksUUFBUSxDQUFDLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3JDLE9BQU87UUFDVCxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDcEIsQ0FBQzsrR0FsQlUsb0JBQW9CO21HQUFwQixvQkFBb0IsOEZDUmpDLHlxQ0ErQkE7OzRGRHZCYSxvQkFBb0I7a0JBSmhDLFNBQVM7K0JBQ0Usa0JBQWtCO2dGQUs1QixHQUFHO3NCQURGLEtBQUs7Z0JBR04sSUFBSTtzQkFESCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGZXRjaENsaWVudCB9IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7IGdldHRleHQgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYzh5LWxpY2Vuc2UtdmlldycsXG4gIHRlbXBsYXRlVXJsOiAnLi9saWNlbnNlLXZpZXcuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIExpY2Vuc2VWaWV3Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KClcbiAgdXJsOiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIG5hbWU6IHN0cmluZztcbiAgY29udGVudDogc3RyaW5nID0gZ2V0dGV4dCgnTG9hZGluZyBsaWNlbnNlIGNvbnRlbnTigKYnKTtcblxuICBGQUxMX0JBQ0tfVVJMID0gJ2h0dHBzOi8vc3BkeC5vcmcvbGljZW5zZXMvJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZldGNoQ2xpZW50OiBGZXRjaENsaWVudCkge31cblxuICBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuZmV0Y2hDbGllbnQuZmV0Y2godGhpcy51cmwpO1xuICAgIGlmIChyZXNwb25zZS5zdGF0dXMgPT09IDIwMCkge1xuICAgICAgdGhpcy5jb250ZW50ID0gYXdhaXQgcmVzcG9uc2UudGV4dCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNvbnRlbnQgPSAnJztcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRlbnRcIj5cbiAgPGEgW2hyZWZdPVwidXJsXCIgdGFyZ2V0PVwiX2JsYW5rXCIgcmVsPVwibm9vcGVuZXIgbm9yZWZlcnJlclwiIGNsYXNzPVwic21hbGwgcHVsbC1yaWdodFwiPlxuICAgIDxpIGM4eUljb249XCJleHRlcm5hbC1saW5rXCIgY2xhc3M9XCJtLXItNFwiPjwvaT5cbiAgICA8c3BhbiB0cmFuc2xhdGU+T3BlbiBpbiBuZXcgd2luZG93PC9zcGFuPlxuICA8L2E+XG4gIDx0ZXh0YXJlYVxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ0xpY2Vuc2UnIHwgdHJhbnNsYXRlXCJcbiAgICBjbGFzcz1cImZvcm0tY29udHJvbCBiZy1sZXZlbC0xIHRleHQtbW9ub3NwYWNlIHNtYWxsIG0tYi0xNlwiXG4gICAgcmVhZG9ubHlcbiAgICBzdHlsZT1cImhlaWdodDogMTcwcHhcIlxuICAgIFt0ZXh0Q29udGVudF09XCJjb250ZW50XCJcbiAgPjwvdGV4dGFyZWE+XG48L25nLWNvbnRhaW5lcj5cblxuPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LXdhcm5pbmdcIiByb2xlPVwiYWxlcnRcIiAqbmdJZj1cIiFjb250ZW50ICYmIG5hbWVcIj5cbiAgPHN0cm9uZyB0cmFuc2xhdGU+Tm8gbGljZW5zZSBhdHRhY2hlZDwvc3Ryb25nPlxuICA8cCB0cmFuc2xhdGU+XG4gICAgVGhlIGF1dGhvciBvZiB0aGUgcGFja2FnZSBoYXNuJ3QgaW5jbHVkZWQgYSBsaWNlbnNlIGZpbGUgaW4gYSBmb3JtYXQgdGhhdCBjYW4gYmUgZGlzcGxheWVkLlxuICAgIFZlcmlmeSB0aGUgbGljZW5zZSBvbmxpbmUsIGZvciBleGFtcGxlLCB3aXRoIGEgd2Vic2l0ZSBsaWtlOlxuICA8L3A+XG4gIDxhIFtocmVmXT1cIkZBTExfQkFDS19VUkwgKyBuYW1lXCIgdGFyZ2V0PVwiX2JsYW5rXCIgcmVsPVwibm9vcGVuZXIgbm9yZWZlcnJlclwiPlxuICAgIHt7IEZBTExfQkFDS19VUkwgfX17eyBuYW1lIH19XG4gIDwvYT5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwiYWxlcnQgYWxlcnQtZGFuZ2VyXCIgcm9sZT1cImFsZXJ0XCIgKm5nSWY9XCIhY29udGVudCAmJiAhbmFtZVwiPlxuICA8c3Ryb25nIHRyYW5zbGF0ZT5ObyBsaWNlbnNlIGZvdW5kPC9zdHJvbmc+XG4gIDxwIHRyYW5zbGF0ZT5cbiAgICBUaGVyZSBpcyBubyBsaWNlbnNlIGF0dGFjaGVkIHRvIHRoaXMgcGFja2FnZS4gWW91IGNhbiBjb250aW51ZSBpbnN0YWxsaW5nIGl0IGF0IHlvdXIgb3duIHJpc2suXG4gIDwvcD5cbjwvZGl2PlxuIl19