@nova-ui/dashboards
Version:
Nova Dashboards is a framework designed to provide feature developers with a common solution for presenting data coming from various sources within a single view, as well as a set of predefined widget visualizations that are 100% configuration-driven and
60 lines • 11.7 kB
JavaScript
// © 2022 SolarWinds Worldwide, LLC. All rights reserved.
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to
// deal in the Software without restriction, including without limitation the
// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
// sell copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Inject, Input, Output, } from "@angular/core";
import { EventBus } from "@nova-ui/bits";
import { DRILLDOWN } from "../../../../services/types";
import { PIZZAGNA_EVENT_BUS } from "../../../../types";
import * as i0 from "@angular/core";
import * as i1 from "@angular/common";
import * as i2 from "@nova-ui/bits";
export class ListNavigationBarComponent {
static { this.lateLoadKey = "ListNavigationBarComponent"; }
constructor(changeDetector, eventBus) {
this.changeDetector = changeDetector;
this.eventBus = eventBus;
this.navigated = new EventEmitter();
}
onBack() {
if (this.navBarConfig) {
this.eventBus.getStream(DRILLDOWN).next({
payload: {
back: this.navBarConfig?.buttons?.back?.disabled,
},
});
}
}
onHome() {
this.eventBus.getStream(DRILLDOWN).next({ payload: { reset: true } });
}
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ListNavigationBarComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: PIZZAGNA_EVENT_BUS }], target: i0.ɵɵFactoryTarget.Component }); }
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ListNavigationBarComponent, selector: "nui-navigation-bar", inputs: { navBarConfig: "navBarConfig" }, outputs: { navigated: "navigated" }, ngImport: i0, template: "<div class=\"list-nav-bar\" *ngIf=\"navBarConfig && !navBarConfig?.isRoot\">\n <button\n nui-button\n type=\"button\"\n [isRepeat]=\"true\"\n displayStyle=\"action\"\n icon=\"arrow-left\"\n [disabled]=\"!navBarConfig?.buttons?.back?.disabled\"\n (click)=\"onBack()\"\n ></button>\n\n <button\n nui-button\n type=\"button\"\n [isRepeat]=\"true\"\n displayStyle=\"action\"\n icon=\"overview\"\n (click)=\"onHome()\"\n ></button>\n <div class=\"list-nav-bar__label\">{{ navBarConfig?.label }}</div>\n</div>\n", styles: [".list-nav-bar{width:100%;margin:2px 0;padding:0 15px;display:flex;align-items:center}.list-nav-bar__label{padding-left:5px;color:#1119}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ButtonComponent, selector: "[nui-button]", inputs: ["displayStyle", "icon", "iconColor", "iconRight", "isBusy", "isEmpty", "ariaLabel", "isRepeat", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ListNavigationBarComponent, decorators: [{
type: Component,
args: [{ selector: "nui-navigation-bar", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"list-nav-bar\" *ngIf=\"navBarConfig && !navBarConfig?.isRoot\">\n <button\n nui-button\n type=\"button\"\n [isRepeat]=\"true\"\n displayStyle=\"action\"\n icon=\"arrow-left\"\n [disabled]=\"!navBarConfig?.buttons?.back?.disabled\"\n (click)=\"onBack()\"\n ></button>\n\n <button\n nui-button\n type=\"button\"\n [isRepeat]=\"true\"\n displayStyle=\"action\"\n icon=\"overview\"\n (click)=\"onHome()\"\n ></button>\n <div class=\"list-nav-bar__label\">{{ navBarConfig?.label }}</div>\n</div>\n", styles: [".list-nav-bar{width:100%;margin:2px 0;padding:0 15px;display:flex;align-items:center}.list-nav-bar__label{padding-left:5px;color:#1119}\n"] }]
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i2.EventBus, decorators: [{
type: Inject,
args: [PIZZAGNA_EVENT_BUS]
}] }], propDecorators: { navBarConfig: [{
type: Input
}], navigated: [{
type: Output
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1uYXZpZ2F0aW9uLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbGlzdC13aWRnZXQvbGlzdC1lbGVtZW50cy9saXN0LW5hdmlnYXRpb24tYmFyL2xpc3QtbmF2aWdhdGlvbi1iYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2xpc3Qtd2lkZ2V0L2xpc3QtZWxlbWVudHMvbGlzdC1uYXZpZ2F0aW9uLWJhci9saXN0LW5hdmlnYXRpb24tYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHlEQUF5RDtBQUN6RCxFQUFFO0FBQ0YsK0VBQStFO0FBQy9FLDRFQUE0RTtBQUM1RSw4RUFBOEU7QUFDOUUsK0VBQStFO0FBQy9FLDhFQUE4RTtBQUM5RSw0REFBNEQ7QUFDNUQsRUFBRTtBQUNGLDZFQUE2RTtBQUM3RSx1REFBdUQ7QUFDdkQsRUFBRTtBQUNGLDZFQUE2RTtBQUM3RSw0RUFBNEU7QUFDNUUsK0VBQStFO0FBQy9FLDBFQUEwRTtBQUMxRSxpRkFBaUY7QUFDakYsNkVBQTZFO0FBQzdFLGlCQUFpQjtBQUVqQixPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxRQUFRLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7O0FBU3ZELE1BQU0sT0FBTywwQkFBMEI7YUFDNUIsZ0JBQVcsR0FBRyw0QkFBNEIsQUFBL0IsQ0FBZ0M7SUFNbEQsWUFDVyxjQUFpQyxFQUNKLFFBQTBCO1FBRHZELG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNKLGFBQVEsR0FBUixRQUFRLENBQWtCO1FBSmpELGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBSzdDLENBQUM7SUFFRyxNQUFNO1FBQ1QsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFDcEMsT0FBTyxFQUFFO29CQUNMLElBQUksRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsUUFBUTtpQkFDbkQ7YUFDSixDQUFDLENBQUM7U0FDTjtJQUNMLENBQUM7SUFFTSxNQUFNO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMxRSxDQUFDO2tJQXhCUSwwQkFBMEIsbURBU3ZCLGtCQUFrQjtzSEFUckIsMEJBQTBCLHlJQzFDdkMscW1CQXFCQTs7NEZEcUJhLDBCQUEwQjtrQkFOdEMsU0FBUzsrQkFDSSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTTs7MEJBVzFDLE1BQU07MkJBQUMsa0JBQWtCO3lDQU5kLFlBQVk7c0JBQTNCLEtBQUs7Z0JBRVcsU0FBUztzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8vIMKpIDIwMjIgU29sYXJXaW5kcyBXb3JsZHdpZGUsIExMQy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyAgb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG9cbi8vICBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZVxuLy8gIHJpZ2h0cyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vclxuLy8gIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyAgZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vICBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vICBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vICBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyAgTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vICBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyAgVEhFIFNPRlRXQVJFLlxuXG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcblxuaW1wb3J0IHsgRXZlbnRCdXMsIElFdmVudCB9IGZyb20gXCJAbm92YS11aS9iaXRzXCI7XG5cbmltcG9ydCB7IERSSUxMRE9XTiB9IGZyb20gXCIuLi8uLi8uLi8uLi9zZXJ2aWNlcy90eXBlc1wiO1xuaW1wb3J0IHsgUElaWkFHTkFfRVZFTlRfQlVTIH0gZnJvbSBcIi4uLy4uLy4uLy4uL3R5cGVzXCI7XG5pbXBvcnQgeyBJTmF2aWdhdGlvbkJhckNvbmZpZyB9IGZyb20gXCIuLi8uLi90eXBlc1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogXCJudWktbmF2aWdhdGlvbi1iYXJcIixcbiAgICB0ZW1wbGF0ZVVybDogXCIuL2xpc3QtbmF2aWdhdGlvbi1iYXIuY29tcG9uZW50Lmh0bWxcIixcbiAgICBzdHlsZVVybHM6IFtcImxpc3QtbmF2aWdhdGlvbi1iYXIuY29tcG9uZW50Lmxlc3NcIl0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIExpc3ROYXZpZ2F0aW9uQmFyQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgbGF0ZUxvYWRLZXkgPSBcIkxpc3ROYXZpZ2F0aW9uQmFyQ29tcG9uZW50XCI7XG5cbiAgICBASW5wdXQoKSBwdWJsaWMgbmF2QmFyQ29uZmlnOiBJTmF2aWdhdGlvbkJhckNvbmZpZztcblxuICAgIEBPdXRwdXQoKSBwdWJsaWMgbmF2aWdhdGVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBJbmplY3QoUElaWkFHTkFfRVZFTlRfQlVTKSBwcml2YXRlIGV2ZW50QnVzOiBFdmVudEJ1czxJRXZlbnQ+XG4gICAgKSB7fVxuXG4gICAgcHVibGljIG9uQmFjaygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubmF2QmFyQ29uZmlnKSB7XG4gICAgICAgICAgICB0aGlzLmV2ZW50QnVzLmdldFN0cmVhbShEUklMTERPV04pLm5leHQoe1xuICAgICAgICAgICAgICAgIHBheWxvYWQ6IHtcbiAgICAgICAgICAgICAgICAgICAgYmFjazogdGhpcy5uYXZCYXJDb25maWc/LmJ1dHRvbnM/LmJhY2s/LmRpc2FibGVkLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvbkhvbWUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZXZlbnRCdXMuZ2V0U3RyZWFtKERSSUxMRE9XTikubmV4dCh7IHBheWxvYWQ6IHsgcmVzZXQ6IHRydWUgfSB9KTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibGlzdC1uYXYtYmFyXCIgKm5nSWY9XCJuYXZCYXJDb25maWcgJiYgIW5hdkJhckNvbmZpZz8uaXNSb290XCI+XG4gICAgPGJ1dHRvblxuICAgICAgICBudWktYnV0dG9uXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBbaXNSZXBlYXRdPVwidHJ1ZVwiXG4gICAgICAgIGRpc3BsYXlTdHlsZT1cImFjdGlvblwiXG4gICAgICAgIGljb249XCJhcnJvdy1sZWZ0XCJcbiAgICAgICAgW2Rpc2FibGVkXT1cIiFuYXZCYXJDb25maWc/LmJ1dHRvbnM/LmJhY2s/LmRpc2FibGVkXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uQmFjaygpXCJcbiAgICA+PC9idXR0b24+XG5cbiAgICA8YnV0dG9uXG4gICAgICAgIG51aS1idXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIFtpc1JlcGVhdF09XCJ0cnVlXCJcbiAgICAgICAgZGlzcGxheVN0eWxlPVwiYWN0aW9uXCJcbiAgICAgICAgaWNvbj1cIm92ZXJ2aWV3XCJcbiAgICAgICAgKGNsaWNrKT1cIm9uSG9tZSgpXCJcbiAgICA+PC9idXR0b24+XG4gICAgPGRpdiBjbGFzcz1cImxpc3QtbmF2LWJhcl9fbGFiZWxcIj57eyBuYXZCYXJDb25maWc/LmxhYmVsIH19PC9kaXY+XG48L2Rpdj5cbiJdfQ==