import { BrandVersion, StoreBrandingService, BrandingVersionService, BrandingTrackingService, BrandingOptionsJson, BrandingShadesService, ApplyBrandingLocallyService } from '@c8y/ngx-components/branding/shared/data'; import { Observable } from 'rxjs'; import { ActivatedRoute, Router } from '@angular/router'; import { Pagination, DisplayOptions, ActionControl, Column, AppStateService, ZipService, ModalService, AlertService, MessageBannerService, FilesService, ThemeSwitcherService, CellRendererContext, ModalComponent, DroppedFile, ClipboardService } from '@c8y/ngx-components'; import { IApplication, ApplicationService } from '@c8y/client'; import { StaticAssetsService, StaticAsset } from '@c8y/ngx-components/static-assets/data'; import { BsModalService } from 'ngx-bootstrap/modal'; import { AddBrandingModalService } from '@c8y/ngx-components/branding/shared/lazy/add-branding-modal'; import * as i0 from '@angular/core'; import { OnDestroy } from '@angular/core'; import * as _angular_forms from '@angular/forms'; import { ControlValueAccessor, FormBuilder, FormControl, AsyncValidator } from '@angular/forms'; import { TranslateService } from '@ngx-translate/core'; declare class BrandingImportModalService { private modal; constructor(modal: BsModalService); openBrandingImportModal(): Promise; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare class BrandingComponent { private brandings; private activatedRoute; private appState; private applicationService; private zip; private staticAssets; private router; private modal; private confirmModal; private brandingVersionService; private addBrandingModalService; private alert; private brandingImportModalService; private brandingTracking; pagination: Pagination; displayOptions: DisplayOptions; actionControls: ActionControl[]; columns: Column[]; currentAppContextPath: string; availableBrandingVariants$: Observable<{ publicOptions: IApplication; variants: BrandVersion[]; }>; private reloadTrigger; constructor(brandings: StoreBrandingService, activatedRoute: ActivatedRoute, appState: AppStateService, applicationService: ApplicationService, zip: ZipService, staticAssets: StaticAssetsService, router: Router, modal: BsModalService, confirmModal: ModalService, brandingVersionService: BrandingVersionService, addBrandingModalService: AddBrandingModalService, alert: AlertService, brandingImportModalService: BrandingImportModalService, brandingTracking: BrandingTrackingService); deleteAllBrandings(publicOptions?: IApplication): Promise; exportBranding(variant: BrandVersion): Promise; refresh(): void; addNewVersion(): Promise; duplicateVersion(version: BrandVersion): Promise; editBranding(brandingName: string): Promise; getStartedUsingBranding(): Promise; applyToApps(version: BrandVersion): Promise; importBranding(): Promise; private removeTagsFromOtherVersions; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class ApplyBrandingToAppService { private apps; constructor(apps: ApplicationService); getBrandableApps(): Promise; getHostedAppsWhereDynamicOptionsUrlIsUndefined(apps: IApplication[]): IApplication[]; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare class BrandingFormComponent implements ControlValueAccessor { private formBuilder; private messageBannerService; formGroup: ReturnType; messageBannerHelp: "Supports markdown. Use {{ headerMark }} for headers, {{ listMark }} for lists, {{ boldMark }} for bold, {{ italicMark }} for italic, and {{ linkMark }} for links."; messageBannerHelpParams: { headerMark: string; listMark: string; boldMark: string; italicMark: string; linkMark: string; }; private onTouched; private externalValue; private formGroupValueChanges$; constructor(formBuilder: FormBuilder, messageBannerService: MessageBannerService); writeValue(obj: string): void; registerOnChange(fn: (value: string) => void): void; registerOnTouched(fn: () => void): void; cockieBannerChange(toggleState: boolean): void; onBlur(): void; initForm(): _angular_forms.FormGroup<{ darkThemeAvailable: _angular_forms.FormControl; cookieBanner: _angular_forms.FormGroup<{ cookieBannerTitle: _angular_forms.FormControl; cookieBannerText: _angular_forms.FormControl; cookieBannerDisabled: _angular_forms.FormControl; policyUrl: _angular_forms.FormControl; policyVersion: _angular_forms.FormControl; }>; messageBanner: _angular_forms.FormGroup<{ messageBannerEnabled: _angular_forms.FormControl; messageBannerContent: _angular_forms.FormControl; messageBannerType: _angular_forms.FormControl<"success" | "warning" | "danger" | "info" | "system">; messageBannerId: _angular_forms.FormControl; }>; baseTypography: _angular_forms.FormGroup<{ "font-url": _angular_forms.FormControl; "font-family-base": _angular_forms.FormControl; }>; headingsAndNavigatorTypography: _angular_forms.FormGroup<{ "font-family-headings": _angular_forms.FormControl; "navigator-font-family": _angular_forms.FormControl; }>; genericApplicationOptions: _angular_forms.FormGroup<{ globalTitle: _angular_forms.FormControl; faviconUrl: _angular_forms.FormControl; }>; }>; applyStateToForm(branding: BrandingOptionsJson): void; convertFormToState(value: BrandingFormComponent['formGroup']['value']): string; previewBanner(): void; private setupMessageBannerIdAutoGeneration; private ensureMessageBannerIdExists; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class BrandingThemeFormComponent implements ControlValueAccessor, OnDestroy { private activatedRoute; private formBuilder; private filesService; private brandingShades; private themeSwitcher; readonly formStructure: { readonly brandColors: { readonly label: "Brand colors"; readonly brandColors: { readonly label: "Brand colors"; readonly colors: [{ readonly label: "Brand primary"; readonly formControlName: "brand-primary"; }, { readonly label: "Brand light"; readonly formControlName: "brand-light"; }, { readonly label: "Brand dark"; readonly formControlName: "brand-dark"; }]; }; readonly shades: { readonly label: "Shades"; readonly colorColumn: [[{ readonly label: "c8y-brand-10"; readonly formControlName: "c8y-brand-10"; }, { readonly label: "c8y-brand-20"; readonly formControlName: "c8y-brand-20"; }, { readonly label: "c8y-brand-30"; readonly formControlName: "c8y-brand-30"; }, { readonly label: "c8y-brand-40"; readonly formControlName: "c8y-brand-40"; }], [{ readonly label: "c8y-brand-50"; readonly formControlName: "c8y-brand-50"; }, { readonly label: "c8y-brand-60"; readonly formControlName: "c8y-brand-60"; }, { readonly label: "c8y-brand-70"; readonly formControlName: "c8y-brand-70"; }, { readonly label: "c8y-brand-80"; readonly formControlName: "c8y-brand-80"; }]]; }; }; readonly statusColors: { readonly label: "Status colors"; readonly subCategories: readonly [{ readonly label: "Info colors"; readonly colors: [{ readonly label: "Info"; readonly formControlName: "palette-status-info"; }, { readonly label: "Info light"; readonly formControlName: "palette-status-info-light"; }, { readonly label: "Info dark"; readonly formControlName: "palette-status-info-dark"; }]; }, { readonly label: "Warning colors"; readonly colors: [{ readonly label: "Warning"; readonly formControlName: "palette-status-warning"; }, { readonly label: "Warning light"; readonly formControlName: "palette-status-warning-light"; }, { readonly label: "Warning dark"; readonly formControlName: "palette-status-warning-dark"; }]; }, { readonly label: "Danger colors"; readonly colors: [{ readonly label: "Danger"; readonly formControlName: "palette-status-danger"; }, { readonly label: "Danger light"; readonly formControlName: "palette-status-danger-light"; }, { readonly label: "Danger dark"; readonly formControlName: "palette-status-danger-dark"; }]; }, { readonly label: "Success colors"; readonly colors: [{ readonly label: "Success"; readonly formControlName: "palette-status-success"; }, { readonly label: "Success light"; readonly formControlName: "palette-status-success-light"; }, { readonly label: "Success dark"; readonly formControlName: "palette-status-success-dark"; }]; }]; }; readonly actionBar: { readonly label: "Action bar"; readonly colorColumns: readonly [{ readonly label: "Action bar"; readonly colorColumns: [[{ readonly label: "Background color"; readonly formControlName: "action-bar-background-default"; }, { readonly label: "Text color"; readonly formControlName: "action-bar-color-default"; }, { readonly label: "Icon color"; readonly formControlName: "action-bar-icon-color"; }], [{ readonly label: "Button color"; readonly formControlName: "action-bar-color-actions"; }, { readonly label: "Button hover color"; readonly formControlName: "action-bar-color-actions-hover"; }]]; }]; }; readonly mainHeader: { readonly label: "Main header"; readonly colorColumns: readonly [{ readonly label: "Main header"; readonly colorColumns: [[{ readonly label: "Background color"; readonly formControlName: "header-color"; }, { readonly label: "Text color"; readonly formControlName: "header-text-color"; }], [{ readonly label: "Button hover color"; readonly formControlName: "header-hover-color"; }]]; }]; }; readonly navigator: { readonly label: "Navigator"; readonly colorColumns: readonly [{ readonly label: "Navigation"; readonly colors: [{ readonly label: "Background color"; readonly formControlName: "navigator-bg-color"; }, { readonly label: "Text color"; readonly formControlName: "navigator-text-color"; }, { readonly label: "Separator color"; readonly formControlName: "navigator-separator-color"; }]; }, { readonly label: "Header"; readonly colors: [{ readonly label: "Header background color"; readonly formControlName: "navigator-header-bg"; }, { readonly label: "Title color"; readonly formControlName: "navigator-title-color"; }]; }, { readonly label: "Active node"; readonly colors: [{ readonly label: "Active background color"; readonly formControlName: "navigator-active-bg"; }, { readonly label: "Active border color"; readonly formControlName: "navigator-border-active"; }, { readonly label: "Active text color"; readonly formControlName: "navigator-color-active"; }]; }]; }; readonly rightDrawer: { readonly label: "Right drawer"; readonly colorColumns: readonly [{ readonly label: "Panel"; readonly colors: [{ readonly label: "Background color"; readonly formControlName: "right-drawer-background-default"; }, { readonly label: "Text color"; readonly formControlName: "right-drawer-text-color-default"; }, { readonly label: "Text muted color"; readonly formControlName: "right-drawer-text-color-muted"; }, { readonly label: "Separator color"; readonly formControlName: "right-drawer-separator-color"; }]; }, { readonly label: "Interactive"; readonly colors: [{ readonly label: "Link color"; readonly formControlName: "right-drawer-link-color"; }, { readonly label: "Link hover color"; readonly formControlName: "right-drawer-link-color-hover"; }]; }]; }; }; formGroup: ReturnType; imageFileExtensions: string[]; resetShadesButtonEnabled$: Observable; private onTouched; private externalValue; private formGroupValueChanges$; private addDarkThemePrefix; private readonly varsToConvertToHeight; constructor(activatedRoute: ActivatedRoute, formBuilder: FormBuilder, filesService: FilesService, brandingShades: BrandingShadesService, themeSwitcher: ThemeSwitcherService); ngOnDestroy(): void; regenerateShadesBasedOnPrimaryColor(color?: string): void; writeValue(obj: string): void; registerOnChange(fn: (value: string) => void): void; registerOnTouched(fn: () => void): void; onBlur(): void; initForm(): _angular_forms.FormGroup<{ "navigator-platform-logo-height": _angular_forms.FormControl; "brand-logo-img-height": _angular_forms.FormControl; "btn-border-radius-base": _angular_forms.FormControl; "brand-logo-img": _angular_forms.FormControl; "navigator-platform-logo": _angular_forms.FormControl; "login-platform-animation-img": _angular_forms.FormControl; "brand-dark": _angular_forms.FormControl; "brand-light": _angular_forms.FormControl; "brand-primary": _angular_forms.FormControl; "c8y-brand-10": _angular_forms.FormControl; "c8y-brand-20": _angular_forms.FormControl; "c8y-brand-30": _angular_forms.FormControl; "c8y-brand-40": _angular_forms.FormControl; "c8y-brand-50": _angular_forms.FormControl; "c8y-brand-60": _angular_forms.FormControl; "c8y-brand-70": _angular_forms.FormControl; "c8y-brand-80": _angular_forms.FormControl; "palette-status-info": _angular_forms.FormControl; "palette-status-warning": _angular_forms.FormControl; "palette-status-success": _angular_forms.FormControl; "palette-status-danger": _angular_forms.FormControl; "palette-status-info-light": _angular_forms.FormControl; "palette-status-warning-light": _angular_forms.FormControl; "palette-status-success-light": _angular_forms.FormControl; "palette-status-danger-light": _angular_forms.FormControl; "palette-status-info-dark": _angular_forms.FormControl; "palette-status-warning-dark": _angular_forms.FormControl; "palette-status-success-dark": _angular_forms.FormControl; "palette-status-danger-dark": _angular_forms.FormControl; "body-background-color": _angular_forms.FormControl; "text-color": _angular_forms.FormControl; "text-muted": _angular_forms.FormControl; "link-color": _angular_forms.FormControl; "link-hover-color": _angular_forms.FormControl; "action-bar-background-default": _angular_forms.FormControl; "action-bar-color-actions-hover": _angular_forms.FormControl; "action-bar-color-actions": _angular_forms.FormControl; "action-bar-color-default": _angular_forms.FormControl; "action-bar-icon-color": _angular_forms.FormControl; "header-color": _angular_forms.FormControl; "header-text-color": _angular_forms.FormControl; "header-hover-color": _angular_forms.FormControl; "navigator-bg-color": _angular_forms.FormControl; "navigator-active-bg": _angular_forms.FormControl; "navigator-border-active": _angular_forms.FormControl; "navigator-header-bg": _angular_forms.FormControl; "navigator-title-color": _angular_forms.FormControl; "navigator-separator-color": _angular_forms.FormControl; "navigator-text-color": _angular_forms.FormControl; "navigator-color-active": _angular_forms.FormControl; "right-drawer-background-default": _angular_forms.FormControl; "right-drawer-text-color-default": _angular_forms.FormControl; "right-drawer-separator-color": _angular_forms.FormControl; "right-drawer-link-color": _angular_forms.FormControl; "right-drawer-link-color-hover": _angular_forms.FormControl; "right-drawer-text-color-muted": _angular_forms.FormControl; }>; applyStateToForm(branding: BrandingOptionsJson): void; convertFormToState(value: BrandingThemeFormComponent['formGroup']['value']): string; private getPrefix; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class EditBrandingRouterOutletComponent implements OnDestroy { private activatedRoute; private store; private router; private alert; private applyBrandingService; private appState; brandingName$: Observable; formControl: FormControl; fallbackBranding$: Observable; tabName$: Observable; isGlobalBranding$: Observable; private newBranding; private currentlyDisplayedComponent; constructor(activatedRoute: ActivatedRoute, store: StoreBrandingService, router: Router, alert: AlertService, applyBrandingService: ApplyBrandingLocallyService, appState: AppStateService); ngOnDestroy(): void; routeActivated(event: ControlValueAccessor & Partial): void; saveBranding(): Promise; cancel(): void; openPreview(): Promise; markAsActive(): Promise; onBrandingVarChanges(value: string): Promise; private cleanUpObjects; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class BrandingTagsCellRendererComponent { private appState; hasLatestTag: boolean; appContextPathsOrApps$: Observable>; constructor(context: CellRendererContext, appState: AppStateService); private getAppContextPathsOrApps$; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class BrandingImportModalComponent { private addBrandingModalService; private zip; private staticAssets; private brandings; modal: ModalComponent; result: Promise; files: DroppedFile[]; loading: boolean; private _resovle; private _reject; constructor(addBrandingModalService: AddBrandingModalService, zip: ZipService, staticAssets: StaticAssetsService, brandings: StoreBrandingService); droppedFile(event: DroppedFile[]): Promise; import(file: File): Promise; cancel(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class BrandingTagsHeaderCellRendererComponent { readonly heading: "Applied to"; readonly popoverContent: "

Branding can be applied at two levels

\n
    \n
  • \n Global: \n Applied to the entire platform, affecting all apps and interfaces.\n
  • \n
  • \n App-specific: \n Applied only to selected apps within the platform.\n
  • \n
"; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class BrandingAssetsComponent { private clipboard; private filesService; private translate; filterOptions: ({ label: "All"; value: any[]; } | { label: "Images"; value: string[]; } | { label: "Fonts"; value: string[]; })[]; supportedFileExtensions: any[] | string[]; constructor(clipboard: ClipboardService, filesService: FilesService, translate: TranslateService); onItemSelected(file: StaticAsset): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export { ApplyBrandingToAppService, BrandingAssetsComponent, BrandingComponent, BrandingFormComponent, BrandingImportModalComponent, BrandingImportModalService, BrandingTagsCellRendererComponent, BrandingTagsHeaderCellRendererComponent, BrandingThemeFormComponent, EditBrandingRouterOutletComponent }; //# sourceMappingURL=index.d.ts.map