Skip to content

Files

Latest commit

 

History

History

angular

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

@db-ux/ngx-core-components

Apache 2.0 license badge code style: prettier Conventional Commits PRs Welcome

An Angular library containing all styles & components of DB UX Design System (technical components).

Note: Find more information about specific components here

Install

npm i @db-ux/ngx-core-components

Note: This will install @db-ux/core-foundations and @db-ux/core-components as well which contains the css/scss files

Styling Dependencies

Import the styles in scss or css. Based on your technology the file names could be different.

  • Default (relative): points to ../assets
  • Rollup (rollup): points to @db-ux/core-foundations/assets
  • Webpack (webpack): points to ~@db-ux/core-foundations/assets
SCSS
// styles.scss
@forward "@db-ux/core-components/build/styles/rollup";
CSS
/* styles.css */
@import "@db-ux/core-components/build/styles/rollup.css";

Note: The relative file contains optional and all components styles. If you consider performance issues see @db-ux/core-components for more information.

Resolve assets

The current default development config in angular.json doesn't use output hashing. This may cause an issue loading the fonts. Look at this for more information.

As a solution add "outputHashing": "media" to configurations/development inangular.json.

DB Theme

In case that you're building a website or application for Deutsche Bahn, you'll additionally have to install the DB Theme via the @db-ux/db-theme node package (even also available as an inner source node package, as described within that packages README).

Usage

//app.component.ts
import { DBButton } from '@db-ux/ngx-core-components';

@Component({
	// ...
	imports: [
		// ...,
		DBButton
    ],
	standalone: true
	// ...
})
<!-- app.component.html -->
<db-button variant="brand">Button</db-button>

Events

There are 3 ways to use Events in Angular:

ngModel

<db-input
	label="Inputfield"
	name="input-name"
	[(ngModel)]="inputModel"
></db-input>

FormControl

<db-input
	label="Inputfield"
	name="input-name"
	[formControl]="inputControl"
></db-input>

change

<db-input
	label="Inputfield"
	name="input-name"
	(change)="inputModel = $event.target.value"
></db-input>

Deutsche Bahn brand

As we'd like to perfectly support our users and customers on their digital journey, the usage of Deutsche Bahn brand and trademarks are bound of clear guidelines and restrictions even if being used with the code that we're providing with this product; Deutsche Bahn fully reserves all rights regarding the Deutsche Bahn brand, even though that we're providing the code of DB UX Design System products free to use and release it under the Apache 2.0 license. Please have a look at our brand portal at https://marketingportal.extranet.deutschebahn.com/ for any further questions and whom to contact on any brand issues.

For any usage outside of Deutsche Bahn websites and applications you aren't allowed to use any Deutsche Bahn brand and design assets as well as protected characteristics and trademarks, that for not including the DB Theme.

Contributions

Contributions are very welcome, please refer to the contribution guide.

Code of conduct

We as members, contributors, and leaders pledge to make participation in our community a harassment-free experience for everyone – have a look at our Contributor Covenant Code of Conduct.

License

This project is licensed under Apache-2.0.