@fundamental-ngx/core
    TypeScript icon, indicating that this package has built-in type declarations

    0.33.0-rc.187 • Public • Published

    @Fundamental-NGX/Core

    npm version Minified Size Minzipped Size Build Status Coverage Status Slack REUSE status

    Content

    1. Description

    The @fundamental-ngx/core library is a set of Angular components built using Fundamental Library Styles.

    The Fundamental Library Styles is a design system and HTML/CSS component library used to build modern product user experiences with the SAP look and feel.

    See Component Documentation for examples and API details.

    2. Requirements

    To download and use Fundamental Library for Angular, you will first need to install the node package manager.

    Fundamental Library for Angular is intended for use with Angular 8 or newer.

    Prior knowledge of Angular is recommended, to use the fundamental-ngx library.

    3. Versioning

    Check the Breaking Changes for the latest patches changes.

    4. Getting Started

    For an existing Angular CLI application,

    1. Video tutorial How to use the Fundamental Core Library

    2. Install Fundamental-NGX. ng add @fundamental-ngx/core For models prior to 0.10 use fundamental-ngx

      If you do not use the Angular CLI or if this command does not work for you, please see the full installation guide.

    3. Edit your tsconfig. Edit the target in your tsconfig.json to es5. The library is incompatible with later versions.

    4. Import the modules you want to use.

      To add the entire library, add the following import to your main application module.

      import { FundamentalNgxCoreModule } from '@fundamental-ngx/core';
      
      @NgModule({
          ...
          imports: [FundamentalNgxCoreModule],
      })
      export class DemoModule { }

      To include an individual Angular Fundamental component in your application, you only need to import the relevant module.

      For example, to use Switchs, add the following import to your main application module.

      import { CheckboxModule } from '@fundamental-ngx/core';

      Version 0.31.0 brings new way of importing individual modules, which is prefered way.

      import { CheckboxModule } from '@fundamental-ngx/core/checkbox';

      For models prior to 0.10 use fundamental-ngx

      import { CheckboxModule } from 'fundamental-ngx';
      
      @NgModule({
          ...
          imports: [CheckboxModule],
      })
      export class DemoModule { }
    5. Provide the RtlService. In your main application module, add RtlService to the list of providers. This service is needed to ensure proper right-to-left functionality for users with their browser set to an RTL language.

    6. Provide the ContentDensityService. In your main application module, you will also need to add ContentDensityService to the list of providers if you wish to manage the content density of you application from a single point.

    7. Add the component to your HTML.

      <fd-checkbox label="Fundamental Ngx Checkbox"></fd-checkbox>

    5. Known Issues

    Please see Issues.

    6. Support

    If you encounter an issue, you can create a ticket.

    7. Contributing

    If you want to contribute, please check the CONTRIBUTING.md documentation for contribution guidelines. Please follow the Angular commit message guidelines.

    Check out the NEW_COMPONENT.md guide on building a new component for the library and creating the necessary documentation for your new component.

    8. Similar Projects

    Fundamental-react - React implementation of Fundamental Library Styles

    9. Using Jest in the host application

    If you're using Jest with jest-preset-angular you may see the following errors:

    Unexpected value 'FundamentalNgxCoreModule' imported by the module 'DynamicTestModule'. Please add an @NgModule annotation.

    This is happens because we publish library compiled with Template Engine (not Ivy) and NGCC doesn't compile it correctly because of settings in the preset.

    To fix such errors please add this to your package.json and reinstall npm packages.

    "postinstall-ivy": "ngcc --properties es2015 browser module main --first-only --create-ivy-entry-points",
    "postinstall-ivy-umd": "ngcc --properties main --create-ivy-entry-points",
    "postinstall": "npm run postinstall-ivy && npm run postinstall-ivy-umd"

    Keywords

    none

    Install

    npm i @fundamental-ngx/core

    DownloadsWeekly Downloads

    9,297

    Version

    0.33.0-rc.187

    License

    Apache-2.0

    Unpacked Size

    50.7 MB

    Total Files

    6978

    Last publish

    Collaborators

    • fundamental-ui