@ebisearch/baseline-portal
TypeScript icon, indicating that this package has built-in type declarations

0.1.4 • Public • Published

BaselinePortal

This library was generated with Angular CLI version 16.2.0.

Importing components

Header

  1. Import configuration tokens into the app.component.ts file (replacing existing header component import):
   import {
  HeaderComponent,
  CATEGORY_CONFIG,
  GLOBAL_SEARCH_CONFIGURATION,
  INAVIGATION_DATA,
  INAVIGATION_ITEM
   } from '@ebisearch/baseline-portal';
  1. Create categories with the following schema:
export interface CategoryConfiguration {
  id: string;
  name: string;
  description: string;
  url?: string;
  defaultDomainId?: string;
  domains?: DomainConfiguration[];
  examples?: string[];
  dropdown?: boolean;
}

export interface DomainConfiguration {
  id: string;
  domainId: string;
  name: string;
  prefixedQuery?: string;
  examples?: string[];
  default?: boolean;
}

export interface GlobalSearchConfiguration {
  title: string,
  subTitle: string,
  searchExamples: string[]
}
  1. Create Navigation items with the following schema:
export interface INavigationLink {
  external: boolean;
  value: string;
  queryParams?: Params;
}

export interface INavigationItem {
  text: string;
  label?: string;
  link?: INavigationLink;
  items?: INavigationItem[];
  googleAnalyticsRegion?: string;
  renderAsChild?: boolean;
  displayIf?: () => boolean;
  onClick?: () => void;
}

export interface INavigationData {
  googleAnalyticsRegion: string;
}
  1. Import configurations and provide them to the header library component
import {
  categoriesConfiguration,
  globalSearchConfiguration,
  iNavigationData,
  iNavigationItems,
} from "./search/search-configuration";
//...
@Component({
//...
imports: [ HeaderComponent, RouterOutlet, FooterComponent ],
  providers: [
    {provide: CATEGORY_CONFIG, useValue: categoriesConfiguration},
    {provide: GLOBAL_SEARCH_CONFIGURATION, useValue: globalSearchConfiguration},
    {provide: INAVIGATION_DATA, useValue: iNavigationData},
    {provide: INAVIGATION_ITEM, useValue: iNavigationItems}
  ]
})
  1. Replace tags in html file:
<lib-header></lib-header>

Injection tokens

Token Interface
CATEGORY_CONFIG CategoryConfiguration
GLOBAL_SEARCH_CONFIGURATION GlobalSearchConfiguration
INAVIGATION_DATA INavigationData
INAVIGATION_ITEM INavigationItem
NOT_FOUND_PAGE_CONFIGURATION PagesConfiguration

Code scaffolding

Run ng generate component component-name --project baseline-portal to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module --project baseline-portal.

Note: Don't forget to add --project baseline-portal or else it will be added to the default project in your angular.json file.

Build

Run ng build baseline-portal to build the project. The build artifacts will be stored in the dist/ directory.

Publishing

After building your library with ng build baseline-portal, go to the dist folder cd dist/baseline-portal and run npm publish.

Running unit tests

Run ng test baseline-portal to execute the unit tests via Karma.

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI Overview and Command Reference page.

Readme

Keywords

none

Package Sidebar

Install

npm i @ebisearch/baseline-portal

Weekly Downloads

5

Version

0.1.4

License

none

Unpacked Size

1.27 MB

Total Files

118

Last publish

Collaborators

  • rneis
  • peterbasutkar
  • mattonthehill
  • renatocjn