UNPKG

@c8y/ngx-components

Version:

Angular modules for Cumulocity IoT applications

40 lines 15.7 kB
import { CdkStep } from '@angular/cdk/stepper'; import { Component } from '@angular/core'; import { filter } from 'rxjs/operators'; import { AlertService, AppStateService, C8yStepper, SetupComponent } from '@c8y/ngx-components'; import { CockpitSetupStep } from './cockpit-setup-step'; import { ApplicationService } from '@c8y/client'; import { CockpitConfigService } from '../cockpit-config.service'; import * as i0 from "@angular/core"; import * as i1 from "@c8y/ngx-components"; import * as i2 from "@angular/cdk/stepper"; import * as i3 from "@c8y/client"; import * as i4 from "../cockpit-config.service"; import * as i5 from "@angular/forms"; import * as i6 from "@c8y/ngx-components/icon-selector"; import * as i7 from "../misc-config.component"; import * as i8 from "./cockpit-setup-stepper-buttons.component"; import * as i9 from "@angular/common"; export class CockpitSetupStep1Component extends CockpitSetupStep { constructor(stepper, step, setup, appState, alert, appService, cockpitConfigService) { super(stepper, step, setup, appState, alert, appService, cockpitConfigService); this.stepper = stepper; this.step = step; this.setup = setup; this.appState = appState; this.alert = alert; this.appService = appService; this.cockpitConfigService = cockpitConfigService; this.app$ = this.appState.currentApplication.pipe(filter(app => !!app)); } iconSelectionChange(icon) { this.config.icon = { class: icon }; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CockpitSetupStep1Component, deps: [{ token: i1.C8yStepper }, { token: i2.CdkStep }, { token: i1.SetupComponent }, { token: i1.AppStateService }, { token: i1.AlertService }, { token: i3.ApplicationService }, { token: i4.CockpitConfigService }], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CockpitSetupStep1Component, selector: "c8y-cockpit-setup-step1", host: { classAttribute: "d-contents" }, usesInheritance: true, ngImport: i0, template: "<form\n class=\"d-contents\"\n name=\"form\"\n #stepForm=\"ngForm\"\n>\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3\n data-cy=\"c8y-cockpit-setup-step1--step1-header-title\"\n class=\"text-medium l-h-base\"\n translate\n >\n Title, icon, and navigator collapse\n </h3>\n <p\n class=\"lead text-normal\"\n translate\n >\n Change the icon, the title, and set the initial navigator state.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w\">\n <div class=\"row\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3\">\n <div class=\"d-flex a-i-start gap-16 p-t-16\">\n <div class=\"form-group d-inline-block\">\n <label>{{ 'Icon' | translate }}</label>\n <c8y-icon-selector-wrapper\n [selectedIcon]=\"(app$ | async)?.config?.icon?.class || 'c8y-cockpit'\"\n [iconSize]=\"24\"\n (onSelect)=\"iconSelectionChange($event)\"\n ></c8y-icon-selector-wrapper>\n </div>\n <div class=\"form-group flex-grow\">\n <label\n for=\"confAppTitle\"\n translate\n >\n Change application title\n </label>\n <input\n class=\"form-control\"\n id=\"confAppTitle\"\n placeholder=\"{{ 'e.g. Cockpit' | translate }} \"\n type=\"text\"\n maxlength=\"254\"\n [(ngModel)]=\"config.appTitle\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n\n <c8y-misc-config [config]=\"config\"></c8y-misc-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n ></c8y-cockpit-setup-stepper-buttons>\n</form>\n", dependencies: [{ kind: "directive", type: i1.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i6.IconSelectorWrapperComponent, selector: "c8y-icon-selector-wrapper", inputs: ["canRemoveIcon", "selectedIcon", "iconSize"], outputs: ["onSelect"] }, { kind: "component", type: i7.MiscConfigComponent, selector: "c8y-misc-config", inputs: ["config"] }, { kind: "component", type: i8.CockpitSetupStepperButtonsComponent, selector: "c8y-cockpit-setup-stepper-buttons", inputs: ["index"], outputs: ["onNext", "onBack"] }, { kind: "pipe", type: i1.C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: i9.AsyncPipe, name: "async" }] }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CockpitSetupStep1Component, decorators: [{ type: Component, args: [{ selector: 'c8y-cockpit-setup-step1', host: { class: 'd-contents' }, template: "<form\n class=\"d-contents\"\n name=\"form\"\n #stepForm=\"ngForm\"\n>\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3\n data-cy=\"c8y-cockpit-setup-step1--step1-header-title\"\n class=\"text-medium l-h-base\"\n translate\n >\n Title, icon, and navigator collapse\n </h3>\n <p\n class=\"lead text-normal\"\n translate\n >\n Change the icon, the title, and set the initial navigator state.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w\">\n <div class=\"row\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3\">\n <div class=\"d-flex a-i-start gap-16 p-t-16\">\n <div class=\"form-group d-inline-block\">\n <label>{{ 'Icon' | translate }}</label>\n <c8y-icon-selector-wrapper\n [selectedIcon]=\"(app$ | async)?.config?.icon?.class || 'c8y-cockpit'\"\n [iconSize]=\"24\"\n (onSelect)=\"iconSelectionChange($event)\"\n ></c8y-icon-selector-wrapper>\n </div>\n <div class=\"form-group flex-grow\">\n <label\n for=\"confAppTitle\"\n translate\n >\n Change application title\n </label>\n <input\n class=\"form-control\"\n id=\"confAppTitle\"\n placeholder=\"{{ 'e.g. Cockpit' | translate }} \"\n type=\"text\"\n maxlength=\"254\"\n [(ngModel)]=\"config.appTitle\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n\n <c8y-misc-config [config]=\"config\"></c8y-misc-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n ></c8y-cockpit-setup-stepper-buttons>\n</form>\n" }] }], ctorParameters: () => [{ type: i1.C8yStepper }, { type: i2.CdkStep }, { type: i1.SetupComponent }, { type: i1.AppStateService }, { type: i1.AlertService }, { type: i3.ApplicationService }, { type: i4.CockpitConfigService }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ja3BpdC1zZXR1cC1zdGVwMS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9jb2NrcGl0LWNvbmZpZy9zZXR1cC9jb2NrcGl0LXNldHVwLXN0ZXAxLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL2NvY2twaXQtY29uZmlnL3NldHVwL2NvY2twaXQtc2V0dXAtc3RlcDEuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQWdCLE1BQU0sYUFBYSxDQUFDO0FBQy9ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7Ozs7OztBQU9qRSxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsZ0JBQWdCO0lBRzlELFlBQ1MsT0FBbUIsRUFDaEIsSUFBYSxFQUNiLEtBQXFCLEVBQ3JCLFFBQXlCLEVBQ3pCLEtBQW1CLEVBQ25CLFVBQThCLEVBQzlCLG9CQUEwQztRQUVwRCxLQUFLLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsb0JBQW9CLENBQUMsQ0FBQztRQVJ4RSxZQUFPLEdBQVAsT0FBTyxDQUFZO1FBQ2hCLFNBQUksR0FBSixJQUFJLENBQVM7UUFDYixVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixhQUFRLEdBQVIsUUFBUSxDQUFpQjtRQUN6QixVQUFLLEdBQUwsS0FBSyxDQUFjO1FBQ25CLGVBQVUsR0FBVixVQUFVLENBQW9CO1FBQzlCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFHcEQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsbUJBQW1CLENBQUMsSUFBSTtRQUN0QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUNyQyxDQUFDOytHQWxCVSwwQkFBMEI7bUdBQTFCLDBCQUEwQiw4SENkdkMsNnNFQW1FQTs7NEZEckRhLDBCQUEwQjtrQkFMdEMsU0FBUzsrQkFDRSx5QkFBeUIsUUFFN0IsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2RrU3RlcCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9zdGVwcGVyJztcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlLCBBcHBTdGF0ZVNlcnZpY2UsIEM4eVN0ZXBwZXIsIFNldHVwQ29tcG9uZW50IH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBDb2NrcGl0U2V0dXBTdGVwIH0gZnJvbSAnLi9jb2NrcGl0LXNldHVwLXN0ZXAnO1xuaW1wb3J0IHsgQXBwbGljYXRpb25TZXJ2aWNlLCBJQXBwbGljYXRpb24gfSBmcm9tICdAYzh5L2NsaWVudCc7XG5pbXBvcnQgeyBDb2NrcGl0Q29uZmlnU2VydmljZSB9IGZyb20gJy4uL2NvY2twaXQtY29uZmlnLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjOHktY29ja3BpdC1zZXR1cC1zdGVwMScsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2NrcGl0LXNldHVwLXN0ZXAxLmNvbXBvbmVudC5odG1sJyxcbiAgaG9zdDogeyBjbGFzczogJ2QtY29udGVudHMnIH1cbn0pXG5leHBvcnQgY2xhc3MgQ29ja3BpdFNldHVwU3RlcDFDb21wb25lbnQgZXh0ZW5kcyBDb2NrcGl0U2V0dXBTdGVwIHtcbiAgYXBwJDogT2JzZXJ2YWJsZTxJQXBwbGljYXRpb24+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBzdGVwcGVyOiBDOHlTdGVwcGVyLFxuICAgIHByb3RlY3RlZCBzdGVwOiBDZGtTdGVwLFxuICAgIHByb3RlY3RlZCBzZXR1cDogU2V0dXBDb21wb25lbnQsXG4gICAgcHJvdGVjdGVkIGFwcFN0YXRlOiBBcHBTdGF0ZVNlcnZpY2UsXG4gICAgcHJvdGVjdGVkIGFsZXJ0OiBBbGVydFNlcnZpY2UsXG4gICAgcHJvdGVjdGVkIGFwcFNlcnZpY2U6IEFwcGxpY2F0aW9uU2VydmljZSxcbiAgICBwcm90ZWN0ZWQgY29ja3BpdENvbmZpZ1NlcnZpY2U6IENvY2twaXRDb25maWdTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKHN0ZXBwZXIsIHN0ZXAsIHNldHVwLCBhcHBTdGF0ZSwgYWxlcnQsIGFwcFNlcnZpY2UsIGNvY2twaXRDb25maWdTZXJ2aWNlKTtcbiAgICB0aGlzLmFwcCQgPSB0aGlzLmFwcFN0YXRlLmN1cnJlbnRBcHBsaWNhdGlvbi5waXBlKGZpbHRlcihhcHAgPT4gISFhcHApKTtcbiAgfVxuXG4gIGljb25TZWxlY3Rpb25DaGFuZ2UoaWNvbik6IHZvaWQge1xuICAgIHRoaXMuY29uZmlnLmljb24gPSB7IGNsYXNzOiBpY29uIH07XG4gIH1cbn1cbiIsIjxmb3JtXG4gIGNsYXNzPVwiZC1jb250ZW50c1wiXG4gIG5hbWU9XCJmb3JtXCJcbiAgI3N0ZXBGb3JtPVwibmdGb3JtXCJcbj5cbiAgPGRpdiBjbGFzcz1cImNvbnRhaW5lci1mbHVpZCBmbGV4LW5vLXNocmluayBmaXQtd1wiPlxuICAgIDxkaXYgY2xhc3M9XCJyb3cgc2VwYXJhdG9yLWJvdHRvbVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC04IGNvbC1tZC1vZmZzZXQtMiBjb2wtbGctNiBjb2wtbGctb2Zmc2V0LTMgcC10LTI0IHAtbC0xNiBwLXItMTZcIj5cbiAgICAgICAgPGgzXG4gICAgICAgICAgZGF0YS1jeT1cImM4eS1jb2NrcGl0LXNldHVwLXN0ZXAxLS1zdGVwMS1oZWFkZXItdGl0bGVcIlxuICAgICAgICAgIGNsYXNzPVwidGV4dC1tZWRpdW0gbC1oLWJhc2VcIlxuICAgICAgICAgIHRyYW5zbGF0ZVxuICAgICAgICA+XG4gICAgICAgICAgVGl0bGUsIGljb24sIGFuZCBuYXZpZ2F0b3IgY29sbGFwc2VcbiAgICAgICAgPC9oMz5cbiAgICAgICAgPHBcbiAgICAgICAgICBjbGFzcz1cImxlYWQgdGV4dC1ub3JtYWxcIlxuICAgICAgICAgIHRyYW5zbGF0ZVxuICAgICAgICA+XG4gICAgICAgICAgQ2hhbmdlIHRoZSBpY29uLCB0aGUgdGl0bGUsIGFuZCBzZXQgdGhlIGluaXRpYWwgbmF2aWdhdG9yIHN0YXRlLlxuICAgICAgICA8L3A+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJpbm5lci1zY3JvbGwgZmxleC1ncm93XCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lci1mbHVpZCBmaXQtd1wiPlxuICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTggY29sLW1kLW9mZnNldC0yIGNvbC1sZy02IGNvbC1sZy1vZmZzZXQtM1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYS1pLXN0YXJ0IGdhcC0xNiBwLXQtMTZcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGQtaW5saW5lLWJsb2NrXCI+XG4gICAgICAgICAgICAgIDxsYWJlbD57eyAnSWNvbicgfCB0cmFuc2xhdGUgfX08L2xhYmVsPlxuICAgICAgICAgICAgICA8Yzh5LWljb24tc2VsZWN0b3Itd3JhcHBlclxuICAgICAgICAgICAgICAgIFtzZWxlY3RlZEljb25dPVwiKGFwcCQgfCBhc3luYyk/LmNvbmZpZz8uaWNvbj8uY2xhc3MgfHwgJ2M4eS1jb2NrcGl0J1wiXG4gICAgICAgICAgICAgICAgW2ljb25TaXplXT1cIjI0XCJcbiAgICAgICAgICAgICAgICAob25TZWxlY3QpPVwiaWNvblNlbGVjdGlvbkNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgPjwvYzh5LWljb24tc2VsZWN0b3Itd3JhcHBlcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgZmxleC1ncm93XCI+XG4gICAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgIGZvcj1cImNvbmZBcHBUaXRsZVwiXG4gICAgICAgICAgICAgICAgdHJhbnNsYXRlXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICBDaGFuZ2UgYXBwbGljYXRpb24gdGl0bGVcbiAgICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgIGlkPVwiY29uZkFwcFRpdGxlXCJcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdlLmcuIENvY2twaXQnIHwgdHJhbnNsYXRlIH19IFwiXG4gICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgIG1heGxlbmd0aD1cIjI1NFwiXG4gICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJjb25maWcuYXBwVGl0bGVcIlxuICAgICAgICAgICAgICAgIFtuZ01vZGVsT3B0aW9uc109XCJ7IHN0YW5kYWxvbmU6IHRydWUgfVwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxjOHktbWlzYy1jb25maWcgW2NvbmZpZ109XCJjb25maWdcIj48L2M4eS1taXNjLWNvbmZpZz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxjOHktY29ja3BpdC1zZXR1cC1zdGVwcGVyLWJ1dHRvbnNcbiAgICBbaW5kZXhdPVwic3RlcHBlci5zZWxlY3RlZEluZGV4XCJcbiAgICAob25OZXh0KT1cIm5leHQoKVwiXG4gICAgKG9uQmFjayk9XCJiYWNrKClcIlxuICA+PC9jOHktY29ja3BpdC1zZXR1cC1zdGVwcGVyLWJ1dHRvbnM+XG48L2Zvcm0+XG4iXX0=