Skip to content

Merge fundamental-ngx and ui5-webcomponents-ngx #13176

@droshev

Description

@droshev

The objective is to combine the 2 repositories (fundamental-ngx and ui5-webcomponents-ngx) into one(the current one). Here are the topics we need to cover:

  • deprecate NGX native Angular components docs: add deprecation message #13399
  • scoping support (go for the attribute selector, document and explain the scoping support)
  • introduce the new npm packages: (main/ai/fiori) - (@fundamental-ngx/webcomponents, @fundamental-ngx/webcomponents-ai, @fundamental-ngx/webcomponents-fiori)
  • create the new generators (Events, enumerations, support zoneless scenarios, replace change detection with signals, form support, configuration like theming, i18n, language, calendar, formatter). remove schematics?
  • documentations (API)
  • update/create Coding Style Guide: e.g. recommend using modern Angular template features such as @for @if instead of ngFor, ngIf.
  • review and update playground and code examples
  • update and simplify nx workspace
  • releasing and hotfix
  • test automation - validate the generation whether it is still correct (snapshot testing, think about functional testing for setters/getters, CVA and Form support
  • data-driven components (table, form generator...) TBD
  • think about a nice way to provide typization for outputs instead of eg. UI5CustomEvent<_Input, 'input'> where UI5CustomEvent and _Input are imported from the webcomponents dist.
  • investigate if bundle size is different when all icons are imported by the wrapper library internally VS when the consuming app imports icons separately by import '@ui5/webcomponents-icons/dist/add.js'; (for the specific ison needed) or import '@ui5/webcomponents-icons/dist/AllIcons.js'; (for all icons). Can the application simply do import { Icon } from '@fundamental-ngx/ui5-webcomponents/icon'; and have all icons available, will Angular's treeshaking mechanizm remove the unused icons from the bundle? Alterantively, can/should the separate icons still be imported but from the wrapper library instead of the webcomponents dist?
  • Some components like time-picker and calendar require additional imports like import '@ui5/webcomponents-localization/dist/Assets.js';. Can/Should those also come from the wrapper library?

Topics to keep:

  • follow semantic versioning(NGX)

Metadata

Metadata

Labels

documentationThere is an issue with documentationtoolingtooling feature around fundamental-ngx

Type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions