Made comcol-page-handle-component themeable

This commit is contained in:
Peter Wolfersberger
2022-07-05 19:18:28 +02:00
parent c7029ed8f6
commit b0d1a74128
9 changed files with 68 additions and 6 deletions

View File

@@ -6,10 +6,10 @@
<ds-comcol-page-header [name]="parentContext.name"> <ds-comcol-page-header [name]="parentContext.name">
</ds-comcol-page-header> </ds-comcol-page-header>
<!-- Handle --> <!-- Handle -->
<ds-comcol-page-handle <ds-themed-comcol-page-handle
[content]="parentContext.handle" [content]="parentContext.handle"
[title]="parentContext.type+'.page.handle'" > [title]="parentContext.type+'.page.handle'" >
</ds-comcol-page-handle> </ds-themed-comcol-page-handle>
<!-- Introductory text --> <!-- Introductory text -->
<ds-comcol-page-content [content]="parentContext.introductoryText" [hasInnerHtml]="true"> <ds-comcol-page-content [content]="parentContext.introductoryText" [hasInnerHtml]="true">
</ds-comcol-page-content> </ds-comcol-page-content>

View File

@@ -17,10 +17,10 @@
</ds-comcol-page-logo> </ds-comcol-page-logo>
<!-- Handle --> <!-- Handle -->
<ds-comcol-page-handle <ds-themed-comcol-page-handle
[content]="collection.handle" [content]="collection.handle"
[title]="'collection.page.handle'" > [title]="'collection.page.handle'" >
</ds-comcol-page-handle> </ds-themed-comcol-page-handle>
<!-- Introductory text --> <!-- Introductory text -->
<ds-comcol-page-content <ds-comcol-page-content
[content]="collection.introductoryText" [content]="collection.introductoryText"

View File

@@ -10,8 +10,8 @@
<ds-comcol-page-logo *ngIf="logoRD$" [logo]="(logoRD$ | async)?.payload" [alternateText]="'Community Logo'"> <ds-comcol-page-logo *ngIf="logoRD$" [logo]="(logoRD$ | async)?.payload" [alternateText]="'Community Logo'">
</ds-comcol-page-logo> </ds-comcol-page-logo>
<!-- Handle --> <!-- Handle -->
<ds-comcol-page-handle [content]="communityPayload.handle" [title]="'community.page.handle'"> <ds-themed-comcol-page-handle [content]="communityPayload.handle" [title]="'community.page.handle'">
</ds-comcol-page-handle> </ds-themed-comcol-page-handle>
<!-- Introductory text --> <!-- Introductory text -->
<ds-comcol-page-content [content]="communityPayload.introductoryText" [hasInnerHtml]="true"> <ds-comcol-page-content [content]="communityPayload.introductoryText" [hasInnerHtml]="true">
</ds-comcol-page-content> </ds-comcol-page-content>

View File

@@ -0,0 +1,36 @@
import {Component, Input} from '@angular/core';
import { ThemedComponent } from '../../theme-support/themed.component';
import { ComcolPageHandleComponent } from './comcol-page-handle.component';
/**
* Themed wrapper for BreadcrumbsComponent
*/
@Component({
selector: 'ds-themed-comcol-page-handle',
styleUrls: [],
templateUrl: '../../theme-support/themed.component.html',
})
export class ThemedComcolPageHandleComponent extends ThemedComponent<ComcolPageHandleComponent> {
// Optional title
@Input() title: string;
// The value of "handle"
@Input() content: string;
inAndOutputNames: (keyof ComcolPageHandleComponent & keyof this)[] = ['title', 'content'];
protected getComponentName(): string {
return 'ComcolPageHandleComponent';
}
protected importThemedComponent(themeName: string): Promise<any> {
return import(`../../../../themes/${themeName}/app/shared/comcol/comcol-page-handle/comcol-page-handle.component`);
}
protected importUnthemedComponent(): Promise<any> {
return import(`./comcol-page-handle.component`);
}
}

View File

@@ -2,6 +2,8 @@ import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common'; import { CommonModule } from '@angular/common';
import { ComcolPageContentComponent } from './comcol-page-content/comcol-page-content.component'; import { ComcolPageContentComponent } from './comcol-page-content/comcol-page-content.component';
import { ComcolPageHandleComponent } from './comcol-page-handle/comcol-page-handle.component'; import { ComcolPageHandleComponent } from './comcol-page-handle/comcol-page-handle.component';
import { ThemedComcolPageHandleComponent} from './comcol-page-handle/themed-comcol-page-handle.component';
import { ComcolPageHeaderComponent } from './comcol-page-header/comcol-page-header.component'; import { ComcolPageHeaderComponent } from './comcol-page-header/comcol-page-header.component';
import { ComcolPageLogoComponent } from './comcol-page-logo/comcol-page-logo.component'; import { ComcolPageLogoComponent } from './comcol-page-logo/comcol-page-logo.component';
import { ComColFormComponent } from './comcol-forms/comcol-form/comcol-form.component'; import { ComColFormComponent } from './comcol-forms/comcol-form/comcol-form.component';
@@ -26,6 +28,9 @@ const COMPONENTS = [
ComcolPageBrowseByComponent, ComcolPageBrowseByComponent,
ThemedComcolPageBrowseByComponent, ThemedComcolPageBrowseByComponent,
ComcolRoleComponent, ComcolRoleComponent,
ThemedComcolPageHandleComponent
]; ];
@NgModule({ @NgModule({

View File

@@ -0,0 +1,18 @@
import { Component } from '@angular/core';
import { ComcolPageHandleComponent as BaseComponent} from '../../../../../app/shared/comcol/comcol-page-handle/comcol-page-handle.component';
/**
* This component builds a URL from the value of "handle"
*/
@Component({
selector: 'ds-comcol-page-handle',
// templateUrl: './comcol-page-handle.component.html',
templateUrl: '../../../../../app/shared/comcol/comcol-page-handle/comcol-page-handle.component.html',
// styleUrls: ['./comcol-page-handle.component.scss'],
styleUrls: ['../../../../../app/shared/comcol/comcol-page-handle/comcol-page-handle.component.scss'],
})
export class ComcolPageHandleComponent extends BaseComponent {}

View File

@@ -88,6 +88,8 @@ import {
import { BreadcrumbsComponent } from './app/breadcrumbs/breadcrumbs.component'; import { BreadcrumbsComponent } from './app/breadcrumbs/breadcrumbs.component';
import { FeedbackComponent } from './app/info/feedback/feedback.component'; import { FeedbackComponent } from './app/info/feedback/feedback.component';
import { CommunityListComponent } from './app/community-list-page/community-list/community-list.component'; import { CommunityListComponent } from './app/community-list-page/community-list/community-list.component';
import { ComcolPageHandleComponent } from './app/shared/comcol-page-handle/comcol-page-handle.component';
import { AuthNavMenuComponent } from './app/shared/auth-nav-menu/auth-nav-menu.component'; import { AuthNavMenuComponent } from './app/shared/auth-nav-menu/auth-nav-menu.component';
import { import {
ExpandableNavbarSectionComponent ExpandableNavbarSectionComponent
@@ -146,6 +148,7 @@ const DECLARATIONS = [
BreadcrumbsComponent, BreadcrumbsComponent,
FeedbackComponent, FeedbackComponent,
CommunityListComponent, CommunityListComponent,
ComcolPageHandleComponent,
AuthNavMenuComponent, AuthNavMenuComponent,
ExpandableNavbarSectionComponent, ExpandableNavbarSectionComponent,
ItemMetadataComponent, ItemMetadataComponent,