angular-expanders-runtime
4.2.0 (2026-10-14)
Changed
- Separated styling from
@nsx/ngx-ns-core:- the palettes, mixins and variables are now in their own
@nsx/ngx-ns-core/abstracts, so components that need these compile much faster. - the rich text editor styles are now in their own
@nsx/ngx-ns-core/rich-text. Before, every stylesheet that used the library scss got its own copy of these styles.
- the palettes, mixins and variables are now in their own
4.1.1 (2026-10-13)
Fixed
nsc-table-row-action-menu-itemnow shows as disabled immediately whendisabledis set from code, for example by an authorization directive. Before, the item only looked disabled after hovering over it.
4.1.0 (2026-10-06)
Added
- Data cells of
nsc-tablehave thensc-table__cellclass.ns-core.table-themekeeps their content on a single line, so all rows have the same height. Content that does not fit is cut off with an ellipsis. - Added
nscAutofocusdirective, which focuses its host (or the first focusable element inside it, such as the input of a form fieldFieldA property of a DataElement expanded to a database column and user interface input element.) once it is rendered, and again whenever its bound value becomestrue. Itsfocus()method focuses it on demand. - Added
nscTooltipOnlyWhenTruncatedtonscTooltip, which only shows the tooltip when the text of the host element is cut off. - Added
nscTooltipPositiontonscTooltipto choose the preferred side of the host element (above,below,leftorright, defaultabove). - Added
selectedIndextonsc-tab-groupto activate a tab programmatically.selectedIndexChangeemits the index of the tab the user activates, and[(selectedIndex)]supports two-way binding.
Changed
- The tooltips of compacted items in
nsc-sidebar-menuare now shown to the right of the item instead of above it. WarningMissingTranslationHandlerwarnings about missing keys now include whether translations were still loading or not.
Fixed
- Long option labels in
nsc-selectandnsc-multi-selectno longer wrap. They are cut off with an ellipsis, and the full label is shown in a tooltip on hover. - The clear button of
nsc-filter-inputno longer changes the width of the fieldFieldA property of a DataElement expanded to a database column and user interface input element. when it appears. - Long file names in
nsc-table-file-columnare cut off with an ellipsis instead of pushing the download button out of the cell. - Scrolling the options of
nsc-selectandnsc-multi-selectno longer keeps firing scroll events after scrolling stops.
4.0.0 (2026-09-28)
Added
- Added
nsc-big-string-detailsandnsc-big-string-details-titleto show long strings in details. - Added support for grouping
nsc-sidebar-menuitems vertically under a title. A newMenuGrouptype can be used alongsideMenuItems. - Added support for opening menu items in new tabs by using the new
openInNewTabproperty ofMenuItem. - Added css variables to override styling which can be customized by defining
--nsc-custom-...--nsc-table-background-color--nsc-table-header-background-color--nsc-tab-background-color--nsc-tab-background-color-hover--nsc-tab-background-color-active--nsc-tab-border-width--nsc-tab-border-color--nsc-tab-border-radius--nsc-tab-gap-between--nsc-tab-margin-bottom--nsc-tab-indicator-display--nsc-sidebar-menu-navigation-group-title-color--nsc-sidebar-menu-navigation-group-title-padding-top--nsc-sidebar-menu-navigation-group-divider-color--nsc-button--no-background-background-color--nsc-dialog-actions-background--nsc-dialog-actions-border-width--nsc-dialog-actions-border-color--nsc-dialog-border-width--nsc-dialog-border-color
- Add icon config to change several icons in list table page.
- Row-inspect, default:
visibility - Row-action-menu, default:
more_vert - file, default:
download_file
- Row-inspect, default:
- Documentation: every component page now lists its usage, inputs, outputs and
--nsc-*styling variables, and has a playground to try the component.- New pages: alert, badge, tooltip, tabs, column-settings, details, number-fieldFieldA property of a DataElement expanded to a database column and user interface input element., file-input, rich-text-editor, fieldFieldA property of a DataElement expanded to a database column and user interface input element.-errors and dashboard-box.
- The table, filter, select, text-fieldFieldA property of a DataElement expanded to a database column and user interface input element., multi-select and text-area-fieldFieldA property of a DataElement expanded to a database column and user interface input element. pages are no longer empty.
Changed
- The translation loader now allows multiple translations to be loaded in by setting the language to a comma separated list of languages.
The list prioritizes the leftmost language so
this._translateService.use('custom,gen');will first fetchgen.json5and then overwrite/append translations incustom.json5. - Breaking Change: Update styling of Table component:
- Added wrapper div to provide background colors
- Added a default border between rows
- The header row's height is now also determined by the chosen RowHeight setting.
- Breaking Change: Update styling of Tabs component:
- Made tabs look like buttons
- Removed letter spacing
- Added a border around tab content
- Breaking Change: Update styling of Dialog component:
- Made title align vertically with close button
- Backdrop now blurs instead of darkening
- Dialog actions no longer take vertical space when there are no actions defined
- Added a background color to dialog actions
- Dialog actions are right-aligned by default now, instead of left.
- Breaking Change: Update styling of Button component:
- Removed bottom shadow from style buttons (info, warning, ...)
- Breaking Change: Made info-palette an alias for the accent-palette, reflected in info-alerts and info-buttons
- Updated dependencies:
uuid:^13.0.0 -> ^14.0.0ngx-skeleton-loader:^12.0.0 -> ^13.0.0@eslint/js:^9.39.2 -> ^10.0.0eslint:^9.39.2 -> ^10.0.0jasmine-core:~6.0.1 -> ~6.3.0karma-jasmine-html-reporter:~2.2.0 -> ~2.3.0
- Migrated the ESLint configuration to the flat config format (
eslint.config.mjs), as ESLint 10 no longer supports.eslintrc.json.- Added
angular-eslint,typescript-eslint,eslint-plugin-prettierandeslint-config-prettier. - Removed
@eslint/eslintrc,@angular-eslint/builder,@angular-eslint/eslint-plugin,@angular-eslint/eslint-plugin-template,@angular-eslint/schematics,@angular-eslint/template-parser,@typescript-eslint/eslint-pluginand@typescript-eslint/parser. These are now provided byangular-eslintandtypescript-eslint. - Resolved all lint errors reported by the new configuration.
- Added
- Breaking Change: Replaced constructor parameter injection with the
inject()function. Classes that extend or manually instantiate the following classes must no longer pass constructor arguments:BreadcrumbsIconService,PaginatorTranslationServiceBreadcrumbsComponent,FilterComponentDialogTitleDirective,ExpansionPanelTitleDirective,FilterFormDirective,FocusFormFieldDirective,FormFieldHostControlDirective,FormFieldLabelDirective,FormGroupHostControlDirective,SelectNoSelectableOptionsDirective,SelectNoneOptionDirective,SelectOptionDirective,SelectValueDirective
Fixed
- Clickable elements of
nsc-sidebar-menu(navigation items, breadcrumbs, header, return header and collapse toggle) andnsc-link-detailscan now be focused with the keyboard and activated with Enter. - Fixed
nsc-sidebar-menunavigation item icons getting cut off when a long title is truncated with an ellipsis. The icon no longer shrinks to make room for the title text. - When updating the select component's fallback option, the select component now always show it.
- Documentation: the docs app now includes the
details,column-settings,tooltipand charts theme mixins, so these components render as in the demo app (e.g.nsc-big-string-detailsclamps to 3 lines). - Documentation: corrected wrong examples, such as the icon config providers of the button and sidebar menu,
provideNscDateFormats()and the yes-no toggle translation keys.
Removed
- Breaking Change: Removed the table row height icon config. It is now part of the table icon config.
3.0.1 (2026-08-20)
Fixed
- Docs no longer fail at runtime because of the missing translation handler provider not working properly.
3.0.0 (2026-08-18)
Changed
- Updated to angular 22. See also the migration guide
- Version updates:
@angular/cdk:21.1.2 -> 22.1.0@angular/common:21.1.2 -> 22.1.1@angular/compiler:21.1.2 -> 22.1.1@angular/core:21.1.2 -> 22.1.1@angular/forms:21.1.2 -> 22.1.1@angular/material:21.1.2 -> 22.1.0@angular/material-date-fns-adapter:21.1.2 -> 22.1.0@angular/platform-browser:21.1.2 -> 22.1.1@angular/platform-browser-dynamic:21.1.2 -> 22.1.1@angular/router:21.1.2 -> 22.1.1@ng-doc/app:21.0.0 -> 21.1.0@ng-doc/builder:21.0.0 -> 21.1.0@ng-doc/core:21.0.0 -> 21.1.0@ng-doc/ui-kit:21.0.0 -> 21.1.0@ng-matero/extensions:21.1.3 -> 22.0.0@ng-matero/extensions-date-fns-adapter:21.0.0 -> 22.0.0@ngx-translate/core:17.0.0 -> 18.0.0@ngx-translate/http-loader:17.0.0 -> 18.0.0@angular/build:21.1.2 -> 22.1.3@angular-eslint/builder:21.2.0 -> 22.0.0@angular-eslint/eslint-plugin:21.2.0 -> 22.0.0@angular-eslint/eslint-plugin-template:21.2.0 -> 22.0.0@angular-eslint/schematics:21.2.0 -> 22.0.0@angular-eslint/template-parser:21.2.0 -> 22.0.0@angular/cli:21.1.2 -> 22.1.3@angular/compiler-cli:21.1.2 -> 22.1.1@typescript-eslint/eslint-plugin:8.54.0 -> 8.65.0@typescript-eslint/parser:8.54.0 -> 8.65.0ng-packagr:21.1.0 -> 22.1.0typescript:5.9.3 -> 6.0.0
- Version updates:
- Compiler options no longer allow a
baseUrl, this has been removed and all paths now start with./ MatSortHeaderwas changed, so theSortHeaderComponentthat extends it was also changed
2.6.1 (2026-07-30)
Added
- Added extra documentation regarding running the demo applicationApplicationThe overarching model container grouping all components, domain logic, and configurations for an enterprise solution. and deploying a snapshot on a separate applicationApplicationThe overarching model container grouping all components, domain logic, and configurations for an enterprise solution..
Fixed
- Fixed nsc-file-input fieldsFieldA property of a DataElement expanded to a database column and user interface input element. still allowing files to be uploaded/removed when disabled.
- Fixed aria warning coming from badge in sidebar.
- Fixed NG0956 warning in
nsc-breadcrumbscaused by tracking breadcrumbs by object identity; now tracks by index.
2.6.0 (2026-06-22)
Added
- Added
passwordInputinput tonsc-text-fieldcomponent to enable masking form fieldFieldA property of a DataElement expanded to a database column and user interface input element. value.
2.5.0 (2026-05-19)
Added
- Added a
inspectingMultipleRowsEnabledinput fieldFieldA property of a DataElement expanded to a database column and user interface input element. onnsc-tableto allow multiple inspect panels to be open at the same time. False by default (only allows 1 open panel at the same time).
Fixed
nsc-yes-no-togglenow always displays a star in its label when its form control is required. It did not work when Validator.required was passed in a list of validators.
2.4.0 (2026-04-22)
Added
- Added
DEFAULT_DATE_PROVIDERinjection token to provide the default date to be used fornsc-date-time-picker. - Added a
clear fieldicon-button to text-fieldFieldA property of a DataElement expanded to a database column and user interface input element. component, similar to the clear-button onnsc-select. Hidden by default. Can be activated with[hideClearButtons]="false"on the nsc-text-fieldFieldA property of a DataElement expanded to a database column and user interface input element. component.
Fixed
- Fixed table selection not persisting through a table refresh, when the underlying data didn't change.
- Data in selection will be compared by the
idFieldinput when provided.
- Data in selection will be compared by the
2.3.1 (2026-04-01)
Removed
- Removed peer-dependency on
@angular/animations:21.1.4, this is being deprecated.
2.3.0 (2026-03-17)
Changed
- Removed
(click)propagation when clicking on a button in a table column component.<nsc-table-row-inspect><nsc-table-file-column>
- Increased click surface of
<nsc-file-input>component to the whole component instead of only the inner input. - Improved behavior of
<nsc-file-input>component when an error happens during upload. Anerrorcallback has been added to the upload subscribe, this will reset the formControl if noFileInputErroris caught. When aFileInputErrorerror model is caught, it will add errors underneath the component. - Added an "error"
fileInputUploadInProgressduring upload, this will prevent forms to be submitted while an upload is still in progress. With the help of a customUploadStateMatcherthe error is not shown as an error, but with a yellow outline instead. - Refactored button HTML setup into templates for better readability.
Fixed
- Fixed triggering of validations when using button or dropzone to choose a file for
<nsc-file-input>component. - Fixed
<nsc-file-input>component can now try a file upload of the same file again. - Added
aria-hiddenwithtabindex=-1to:- home button of breadcrumb component
- hidden input of yes-no-toggle component
- Added
aria-labelattribute to:- file-input icon buttons
- asset download buttons in table
- Remove
aria-sortattribute from table sort headers when it is set to"none".
2.2.2 (2026-02-25)
Fixed
- Fixed flickering navigation buttons of
<nsc-entry-paginator>when loading page. - Added the
aria-sortattribute back to the correct<th>element instead of a<div>. This was unintentionally moved for the column resize feature in trying to make the order not change when pressing the column resizer. This has been implemented differently now.WCAG: Elements must only use supported ARIA attributes
- Wrapped home icon for breadcrumbs in an
<a>element with anaria-labelattribute.WCAG: ARIA hidden element must not be focusable or contain focusable elements
- Added
aria-labelattribute to icon only buttons.<nsc-column-settings><nsc-table-row-height><nsc-(multi-)select>clear buttons<nsc-entry-paginator><nsc-sidebar-menu-breadcrumb-menu>
WCAG: Buttons must have discernible text
- Added
aria-labelattribute to<mat-checkbox>components that have no label.WCAG: Form elements must have labels
2.2.1 (2026-02-12)
Changed
- Any select component using the
NscArrayDataSourceas data will now filter as case-insensitive by default.- Added optional input to the
NscArrayDataSource->NscArrayDataSourceOptions. This type contains the optional fieldFieldA property of a DataElement expanded to a database column and user interface input element.filterCaseSensitiveto control this behavior. - By default
filterCaseSensitiveis false.
- Added optional input to the
2.2.0 (2026-02-04)
Added
- Added new interface
NscFilterOptionsSource.
Changed
- Updated dependencies:
@angular/*:^21.1.2@nsx/ns-charts:^1.4.2 -> ^1.5.0ngx-skeleton-loader:~11.3.0 -> ~12.0.0@eslint/js:^10.0.0 -> ^9.39.2@types/jasmine:~5.1.8 -> ~6.0.0@typescript-eslint/eslint-plugin:^8.52.0 -> ^8.54.0@typescript-eslint/parser:^8.52.0 -> ^8.54.0jasmine-core:~5.13.0 -> ~6.0.1karma-jasmine-html-reporter:~2.1.0 -> ~2.2.0ng-packagr:^21.0.1 -> ^21.1.0prettier:^3.7.4 -> ^3.8.1
Deleted
- Removed vulnerable dependencies:
eslint-config-prettier: ^10.1.8eslint-plugin-prettier: ^5.5.4"
2.1.0 (2026-01-26)
Changed
- Made
BreadcrumbsRouteServiceable to take functions as breadcrumb data, this allows to use resolved data in the breadcrumbs.
2.0.0 (2026-01-16)
Added
- Added
PaginatedListmodel. - Added
LOGGERInjectionTokenthat defaults instantiates aConsoleLogger. - Added cache busting to the
Json5HttpTranslateLoader. - Added styling to the nsc-rich-text-editor so that the editable text more closely represents the output rendered by a browser.
- Added
<nsc-filter-input>component, this component is a simple<mat-form-field>that, when a value is entered, will emit that value after a certain debounce time. A label can also be given to this component if required. - Added
[nscBadge]directive. It takes a value and color input and will show a chip above the component where this directive is added.
Changed
- Transformed
blob-error-interceptor.tstoblob-error-handler.ts, that wraps acatchErrorpipeoperator. - Made
objectIdentifieroptional inevent.model.ts. - Made
<nsc-filter>component work with expanded new filtering structure. Relaxed the type restrictions. - Breaking Change: Made
objectIdentifieroptional inevent.model.ts. This can result in type errors. - Changed the tag of formatted block from
<p>to<div>in the nsc-rich-text-editor. - Upgraded to angular 21 together with a rejuvenationRejuvenationThe core process of harvesting custom code from designated anchors and ext directories, updating model configurations, and re-expanding code artifacts to continuously evolve software without losing custom implementations. of all other relevant dependencies.
- Updated
ngx-translateto version 17. - Make sidebar dynamic by updating all inputs/outputs to signals.
- Skip opening sidebar breadcrumb menu if it only contains 1 item.
- Changed the type
FilterOptionsto filter out any key that equals_type. This relates to the new filter functionality introduced inangular-expanders 7.0.0. - Changed component
<nsc-nav-tab-group>way it will handle queryParams frommergetoreplace. For more information: QueryParamsHandling. - Changed scss of component
<nsc-nav-tab-group>with the intent of improving reactivity.
Fixed
- Fixed double call of
sortChangeevent.
1.15.1 (2026-01-22)
Fixed
- None option and the loading indicator do not increase dropdown height for
<nsc-(multi-)select>components.
1.15.0 (2025-12-11)
Added
- Added
hideClearButtonattribute to<nsc-(multi-)select>component. There is also a `` CSS variable to make to indicative arrow disappear. - Added
decimalSeparatorsattribute to<nsc-number-field>component. This option allows to give a string of characters that will be interpreted as valid inputs for the decimal separator, e.g '.,;'.
Fixed
- Only using
asyncpipe ondatasource.$loadingonce in table component to improve performance.
1.14.0 (2025-11-20)
Added
- Translation for action buttons in
nsc-date-time-picker. - Added
visibleOptionsSizeinput to<nsc-(multi-)select>component.
Changed
- Show only loading indicator in
<nsc-(multi-)select>viewport if infinite datasource is loading first page.
Fixed
- Not detecting
<nsc-(multi-)select>viewport size, causing the buffer to be smaller than the viewport size. <nsc-(multi-)select>viewport shows only first page of infinite datasource if defaultPageSize is smaller than visible options size. Automatically load next page until there is enough buffer.
1.13.0 (2025-11-05)
Added
- Add table column width service for setting width from anywhere, instead of only within the resize directive.
- Add
nscTableColumnResizabledirective tonsc-bulk-select-column.
Changed
- Move "setting column width" logic into public method of
nscTableColumnResizable. - Removed validator for
minFractionDigitsoption. Show trailing zeros instead.
1.12.1 (2025-09-29)
Fixed
- Allow
undefinedas type ofselectedRowIdinnsc-tablecomponent. - Links are now editable in
nsc-rich-textcomponent. - Exported rich text now displays enters correctly.
1.12.0 (2025-09-02)
Added
- Add
hideNumberIndicatorSymbolinput tonsc-number-fieldto enable hiding number symbol. - Add
*nscDialogTitledialog directive for supplying dialog titles via templates. - Added
[minDate]and[maxDate]input properties to datepicker components. - Added
(yearSelected)and(monthSelected)output events to datepicker components. - Add
FormFieldLabelDirectiveto enable adding any content as form fieldFieldA property of a DataElement expanded to a database column and user interface input element. label.
Changed
- Form fieldFieldA property of a DataElement expanded to a database column and user interface input element. input
labelis not required anymore. - Update form fieldsFieldA property of a DataElement expanded to a database column and user interface input element. to use signals:
FileInput,RichTextEditor,TextAreaInput. - Migrate deprecated
NgIf/NgFor/NgSwitchusage to control flow.
Fixed
- Stop flickering of tooltip when tooltip-panel is displayed over tooltip-trigger element.
TooltipDirectivenow hastextas default type when not provided.
1.11.1 (2025-08-13)
Fixed
- Stop
<nsc-filter>component from interfering withnsc-(multi-)select>scrolling behavior.
1.11.0 (2025-08-13)
Added
- Added
nscTabLabelContentto enable custom tab label content. - Added explicit
margin: 0andpadding: 0inline styles to headers and paragraphs for<nsc-rich-text-editor>component. This allows for correct rendering when used in emails.
Changed
- Changed name of
<nsc-date-range-picker>component default errors for consistency. - Changed name of
<nsc-number-field>component default errors for consistency. - Refactored
<nsc-table>component. Switched to signal inputs and outputs for easier datasource changes. Also switched to more variables being protected or private. - Input
labelis no longer required for tabs and nav-tabs.
Fixed
<nsc-number-details>component could not show the value0, this has been fixed by allowingnullandundefinedas valid input of thenscNumberdirective that returns empty string.
1.10.0 (2025-07-29)
Added
- Added tracking to
nsc-tablewhen the[idField]is defined. - Added support for injecting table row inspect panel using
<ng-template nscTableRowInspectPanel let-row>. - Added optional
viewContainerRefvariable todialog.serviceopenmethod. This allows for passing on theinjectionContextof the calling component. - Added
alignHeaderinput variable totable-column.component. - Added
strictinput toYesNoToggleComponent. - Added
(selectChange)output event toSelectComponentandMultiSelectComponent
Changed
- Use signal inputs in
YesNoToggleComponent. - Inspect panel will now stay open when the data is updated but the row id did not change.
- Refactored
nsc-(multi-)selectcomponent to use signals.
Fixed
- Allow minus sign when formatting was disabled in
NscNumberDirective. Now you can start with a minus sign. - Table header cell needs
position: relativeto display column resizer properly.
1.9.0 (2025-07-08)
Added
- Added
get previousUrl(): string | undefinedmethod toPreviousRouteService.
1.8.2 (2025-07-01)
Fixed
blobErrorInterceptorerror type checking.- Only initialize row inspect panels that the user opens, and destroy it when the user closes it.
1.8.1 (2025-06-24)
Fixed
- Fixed
FormGroupnot being found when usingnsc-date-range-pickerwith aformGroupName.
1.8.0 (2025-06-23)
Added
- Added
<nsc-entry-paginator>component andNscEntryPaginatorDataSource<D>interface defining the logic needed by the component. This component can be used to navigate between previous and next entries. - Added
suffixattribute tonsc-number-fieldandnsc-text-field.
Changed
- Made
nscDatepipe also acceptundefinedandnull. - RejuvenationsRejuvenationThe core process of harvesting custom code from designated anchors and ext directories, updating model configurations, and re-expanding code artifacts to continuously evolve software without losing custom implementations.:
@angular/*:^19.2.9 -> ^19.2.14@angular/cdk:^19.2.14 -> ^19.2.18@angular/material*:^19.2.14 -> ^19.2.18@ng-matero/extensions:^19.3.3 -> ^19.4.1@angular/build:^19.2.10 -> ^19.2.15@angular/cli:^19.2.10 -> ^19.2.15@angular-eslint/*:^19.3.0 -> ^19.8.1@types/jasmine:~5.1.7 -> ~5.1.8eslint/js:^9.26.0 -> ^10.0.0eslint:^9.26.0 -> ^9.29.0@typescript-eslint/*:^8.32.0 -> ^8.34.1eslint-config-prettier:^10.1.2 -> ^10.1.5eslint-plugin-prettier:^5.4.0 -> ^5.5.0jasmine-core:~5.7.1 -> ~5.8.0prettier:^3.5.3 -> ^3.6.0prettier-eslint:^16.4.1 -> ^16.4.2zone.js:~0.15.0 -> ~0.15.1
Fixed
- Fixed
<nsc-date-range-picker>component value change and validation propagation - Chart components will now render the correct data when updating the
dataSourceafter the chart has been rendered - Added
dialogActionsAlignmentinput property toDialogComponent. - Switched
ngx-skeleton-loaderversion to stable one:^11.0.0 -> ~11.1.0 - Fixed faulty error border showing for
nsc-number-fieldandnsc-yes-no-togglewhen an initial value is given. - Fixed
nsc-filterdropdown not positioning correct when there is not enough screen real estate.
1.7.0 (2025-06-05)
Added
- Added
selectedRowIdmodel andidFieldinput for table component. - Added css variable to override styling:
--nsc-table-row-selected-background-color
Changed
- Refactored
<nsc-(multi-)select>andNscSelectDataSource. This update will allow dynamic updates to select fieldsFieldA property of a DataElement expanded to a database column and user interface input element.. Useful (for example) when the available options depend on another fieldFieldA property of a DataElement expanded to a database column and user interface input element. in the form.- Relaxes interface constraint on the nsc-select component (removes the InfiniteDataSource requirement, makes it optional instead).
- Re-implements the private
SelectArrayDataSourceas exportedNscArrayDataSource. - New implementation allows either Reference[] or Observable<Reference[]> as inputs.
Fixed
- Ignore
NaNvalues when transformingbadgeCountinput parameter inNavTabDirective. - Fixed table row index being undefined because of
multiTemplateDataRowsdirective. - Root-level menu-items without children will now close the sidebar on navigation for mobile viewports.
1.6.0 (2025-05-28)
Added
- Added
previous-route.service.ts. - Highlight selected rows in
TableComponent. - Added
TableRowInspectPanel - Added css variables to override styling:
--nsc-table-row-border-width--nsc-table-row-inspect-panel-background-color
Changed
- Removed the
setInitialValuefunction fromNscNumberDirective. Value changes are now detected and handled if thenumberinput changes. Allowed value typesValue Type (ValueType). A specifier defining how data in a Field is rendered in the UI, stored in the database, and validated in business logic. arenumber,undefined, andnull. All other types will result inNaNvalue. - Improved column widths implementation and added set saved column widths on load.
- Click directives now don't call
event.stopPropagation().
Fixed
1.5.0 (2025-05-07)
Added
- Emit expanded status of
nsc-expansion-panel. - Added
badgeCountoption to<nsc-tab>and<nsc-nav-tab>components. - Added
DataAccessValidatorclass with aformFieldErrors({ errors }: { errors: string[] })validator, that can be used to retain back-end errors.
Changed
- Breaking change Replaced
valueAxisproperty withvalueAxesproperty inLineChartConfigandBarChartConfig, which accepts an array ofValueAxisLayoutconfigurations instead of a single configuration. - Add explicit typing to
openmethod of dialog service to avoid returning any-type. - Made
warning-missing-translation-handleruseLogger. - Refactored
<nsc-column-settings>component to not be dependent on the<nsc-column>directive. - Reworked loading indicator of the table component.
- RejuvenationsRejuvenationThe core process of harvesting custom code from designated anchors and ext directories, updating model configurations, and re-expanding code artifacts to continuously evolve software without losing custom implementations.:
@angular/*:^19.2.3 -> ^19.2.9@angular/cdk:^19.2.4 -> ^19.2.14@angular/material*:^19.2.4 -> ^19.2.14@ng-matero/extensions:19.2.1 -> ^19.3.3@angular/cli:^19.2.4 -> ^19.2.10@ng-doc/*:19.1.0 -> 19.2.0@nsx/ns-charts:^1.2.0 -> ^1.3.0ngx-skeleton-loader:^10.0.0 -> ^11.0.0@angular-eslint/*:^19.2.1 -> ^19.3.0@types/jasmine:~5.1.7 -> ~5.1.8eslint:^9.22.0 -> ^9.26.0@typescript-eslint/*:^8.26.1 -> ^8.32.0eslint-config-prettier:^10.1.1 -> ^10.1.2eslint-plugin-prettier:^5.2.3 -> ^5.4.0jasmine-core:~5.6.0 -> ~5.7.1ng-packagr:^19.2.0 -> ^19.2.2prettier:^3.3.3 -> ^3.5.3prettier-eslint:^16.3.0 -> ^16.4.1typescript:~5.8.2 -> ~5.8.3@eslint/eslintrc:^3.3.0 -> ^3.3.1@eslint/js:^9.22.0 -> ^9.26.0
Fixed
- Fixed missing styling for
coreangular material components. - Fix styling for column-resizer of column with resizing disabled.
- Do not show
nsx.table.no_data_rowwhen table datasource is still loading. - Fixed
<nsc-rich-text-editor>component not showing initial value. - Fixed styling issues of
<nsc-markup-details>component. - Fixed
<nsc-(multi-)-select>component not opening when no values are present. - Fixed runtime error when resizing columns due to bulk-select column not having a
columnIdattribute.
1.4.0 (2025-03-24)
Added
- Added
nscTooltipdirective:- Added hover mode to nscTooltip directive.
- Added content type to nscTooltip directive. Supported types:
htmltext
- Added detail components:
<nsc-boolean-details><nsc-date-details><nsc-link-details><nsc-markup-details><nsc-number-details><nsc-time-stamp-details>
- Added
--nsc-details-colorand--nsc-details-color-contrastCSS variables to change the colors of icons, links, and chips. - Added button component:
button[nsc-button]
- Added support for click event in charts with examples in demo and doc.
- Added css variables to override styling:
--nsc-table-row-border-color--nsc-table-row-border-radius--nsc-table-row-hover-background-color--nsc-button-font-weight
- Add
TableRowInspectcomponent. - Added table column resizing, which can be disabled per column by setting
resizingDisabled. - Added dialog component and service.
- Added confirmation dialog component.
- Added
NscFormBuilderwith support for resizing ArrayForms. - Added
NscFormArraydirective to help with rendering ArrayForms. - Added
ExpansionPanelComponentcomponent.
Changed
- Redesigned
DetailsDemoComponentand<nsc-file-details>. - Redesigned
sidebar-menu:- Made sidebar standalone.
- Made sidebar responsive.
- Updated sidebar styling.
- Use
nsc-buttonfor all buttons in demo applicationApplicationThe overarching model container grouping all components, domain logic, and configurations for an enterprise solution.. - Disabled zoom of dashboard boxes by default.
- Changed
peerDependencysetup to allow yarn package manager. - Replaced min-width with
--nsc-form-field--min-widthcss variable for all form fieldFieldA property of a DataElement expanded to a database column and user interface input element. components. - Updated to
Angular 19. See update guide. - Breaking change: Changed filtering of
nsc-(multi-)select. Removed thesearchKeyinput attribute, instead filtering is now based on thefilter({ filterValue }: { filterValue: string | null }): voidmethod provided by theNscSelectFilterinterface. - RejuvenationsRejuvenationThe core process of harvesting custom code from designated anchors and ext directories, updating model configurations, and re-expanding code artifacts to continuously evolve software without losing custom implementations.:
@angular/*:^18.2.11 -> ^19.2.3@angular/cdk:^18.2.12 -> ^19.2.4@angular/material*:^18.2.12 -> ^19.2.4@ng-matero/extensions:18.2.4 -> ^19.2.1@ng-matero/extensions-date-fns-adapter:18.0.0 -> ^19.1.0@angular/cli:^18.2.11 -> ^19.2.4@ng-doc/*:18.3.0 -> 19.1.0@ngx-translate/core:^16.0.3 -> ^16.0.4@ngx-translate/http-loader:^16.0.0 -> ^16.0.1@nsx/ns-charts:^1.1.2 -> ^1.2.0ngx-skeleton-loader:^9.0.0 -> ^10.0.0quill:^2.0.2 -> ^2.0.3rxjs:~7.8.1 -> ~7.8.2tslib:^2.8.0 -> ^2.8.1uuid:11.0.3 -> ^11.1.0zone.js:~0.14.10 -> ~0.15.0@angular-eslint/*:^18.4.0 -> ^19.2.1@types/jasmine:~5.1.4 -> ~5.1.7eslint:^9.14.0 -> ^9.22.0@typescript-eslint/*:^8.13.0 -> ^8.26.1eslint-config-prettier:^9.1.0 -> ^10.1.1eslint-plugin-prettier:^5.2.1 -> ^5.2.3jasmine-core:~5.4.0 -> ~5.6.0ng-packagr:^18.2.1 -> ^19.2.0prettier:^3.3.3 -> ^3.5.3typescript:~5.5.4 -> ~5.8.2
Removed
- Removed dialog type variable.
- Removed segment parameter services:
SegmentParameterClearer,SegmentParameterSerializerandSegmentParameterDeserializer. They were moved to the angular-expandersExpanderA unit of generation that combines a data tree instance (functional M1 model) with a template to generate an artifact..
Fixed
- Viewport service considers all screen widths from a certain point as mobile, without a gap.
- Fixed table and mobile sidebar toggle button in demo.
- Ignore query parameters when calculating the active tab in
NavTabGroupComponent. - Text shown in select and multi-selects cuts off before remove icon instead of intersecting with it.
- Fixed
--nsc-sidebar-menu-custom-navigation-item-colornot changing the color of the navigation item icon.
1.3.4 (2025-03-21)
Fixed
- Changed order of
--nsc-sidebar-menu-navigation-title-colorand--nsc-sidebar-menu-custom-navigation-title-colorinsidebar-menu-navigation.component.scssto allow the custom value to override the default. - Fixed
matNoDataRowmessage not showing up in table when no results are present.
1.3.3 (2025-03-13)
Fixed
- Added
[replaceUrl]="true"tonav-tab-group-component.html. This fixes the issue that every load of a child-route pushes a new history entry for the browser.
1.3.2 (2025-02-25)
Fixed
- Added
replaceUrl: truetosegment-parameters-url-saver.service.ts. This fixes the issue that every change in segment parameters pushes a new history entry for the browser.
1.3.1 (2025-01-20)
Fixed
- The loading spinner in
<nsc-select>caused an overflow in the dropdown menu, which caused the user to see multiple scrollbars in some browsers. - The
segment-parameters-deserializerincorrectly deserialized strings starting with a number to a number. TheparseFloatimplementation has been swapped withNumber.
1.3.0 (2025-01-09)
Added
- Added
ProgressCharts:- Runtime angular component
- Demo and doc
- Added documentation for
console-logger.service,log-level.tsandlogger.model.ts. - Added code examples in documentation for chart components.
Fixed
- Increased the
RichTextEditorComponentfocus on click surface.
1.2.0 (2024-12-12)
Added
- Added new project
ngx-ns-charts:- Added chart and dashboard components:
- BarChartComponent
- LineChartComponent
- RadialChartComponent
- IconBox
- ValueBox
- DashboardBox
- Added
dashboard-icon-configto configure icon set used in dashboard components. - Added
graph-source.model.tsfor feeding charts data. - Added very simple mappers to convert types from
ns-chartstongx-ns-charts. - Added documentation for
yes-no-togglecomponent. - Added documentation for
paginatorcomponent.
- Added chart and dashboard components:
Changed
- The
ns-core-demoandns-core-docprojects were changed todemoanddocsince they demo and doc bothngx-ns-coreandngx-ns-chartsnow.
Fixed
<nsc-select>and<nsc-multi-select>component did not set filter tonullwhen empty string value was given, resulting in unwanted effects. This has been resolved.FormControlvalue changes were not reflected in theRichTextEditorComponent.
1.1.0 (2024-12-03)
Added
- Added
<nsc-tab-group>component which provides a wrapper for the<mat-tab-group>component. Tabs can be given as content using the<nsc-tab>component. The tab component takes a label and a disabled attribute as input. Using the--nsc-custom-active-tab-label-colorcss variable you can change the color of an active label, otherwise the theme color is being used. - Added
<nsc-nav-tab-group>component which provides a wrapper for the<mat-tab-nav-bar>component. Tabs can be given as content using the<nsc-nav-tab>directive. This component can be used to route to children routes. - Added helper classes to save segment parameters to the url:
SegmentParametersClearer: Makes existing entries null, that they don't persist forever.SegmentParametersSerializer: ConvertsSegmentParametersto a format that is compatible with the url.SegmentParametersDeserializer: Converts url parameters back toSegmentParameters.SegmentParametersUrlSaver: Service that adds queue capabilities to angular url parameter saving.
Changed
- Breadcrumbs routing now preserve query parameters.
- Breadcrumbs now changes route parameters everywhere (e.g.
:id).
1.0.0 (2024-11-07)
Added
- Added possibility to change visualization of filter chips. A
filter-options.model.tstype can be used to define if a filter is displayed asstaticorhidden. The optional@InputattributefilterOptionshas been added to the<nsc-filter>component
Changed
- RejuvenationsRejuvenationThe core process of harvesting custom code from designated anchors and ext directories, updating model configurations, and re-expanding code artifacts to continuously evolve software without losing custom implementations.:
@angular/*:^18.2.9 -> ^18.2.11@angular/cdk:^18.2.10 -> ^18.2.12@angular/material*:^18.2.10 -> ^18.2.12@ng-matero/extensions:18.2.3 -> 18.2.4@angular-devkit/*:^18.2.10 -> ^18.2.11@angular/cli:^18.2.10 -> ^18.2.11@angular/compiler-cli:^18.2.9 -> ^18.2.11@ng-doc/*:^17.6.16 -> ^18.3.0@ngx-translate/core:^15.0.0 -> ^16.0.3@ngx-translate/http-loader:^8.0.0 -> ^16.0.0eslint:^9.13.0 -> ^9.14.0@typescript-eslint/*:^8.12.2 -> ^8.13.0
NgDocupgrade.NgxTranslateupgrade.
Fixed
- Boolean values are correctly translated in the
filter.component.ts.
0.7.0 (2024-10-30)
Added
- Added
disableConcurrentBuildsfor jenkins. - Added
event.model.tsinterface. - Added
page.model.tsto represent pagination.
Changed
- Breaking change: Changed location for
filter.model.tsfrom@nsx/ngx-ns-core/filterto@nsx/ngx-ns-core. - Breaking change: Changed location for
sorting.model.tsfrom@nsx/ngx-ns-core/tableto@nsx/ngx-ns-core. - Breaking change: Changed paginator component. Instead of
paginatoras input attribute. It now has:@Input({ required: true }) pageNumber!: number;@Input({ required: true }) pageSize!: number;@Input({ required: true }) totalNumberOfElements!: number;
- Breaking change: Changed contract of
NscPaginatedDataSource, and removedpageInformation$(). It now is uniform withpagination$(). - RejuvenationsRejuvenationThe core process of harvesting custom code from designated anchors and ext directories, updating model configurations, and re-expanding code artifacts to continuously evolve software without losing custom implementations.:
@angular/*:^18.2.5 -> ^18.2.9@angular/cdk:^18.2.5 -> ^18.2.10@angular/material*:^18.2.5 -> ^18.2.10@ng-matero/extensions:18.2.1 -> 18.2.3tslib:^2.7.0 -> ^2.8.0uuid:^10.0.0 -> ^11.0.2@angular-devkit/*:^18.2.5 -> ^18.2.10@angular-eslint/*:18.3.1 -> ^18.4.0@angular/cli:^18.2.5 -> ^18.2.10@angular/compiler-cli:^18.2.5 -> ^18.2.9@typescript-eslint/*:^8.7.0 -> ^8.12.2jasmine-core:~5.3.0 -> ~5.4.0
Deleted
- Removed
paginator.model.ts.
0.6.0 (2024-09-25)
Added
- Disabled state is now reflected in form component host attributes.
- Added
form-buttons.directive.tsthat is used to indicate what are content buttons for form components. - Added
form-definition.interface.tsthat defines how a formdirectiveshould look like. - Added
form-host-control.directive.tsthat can be used re-use aFormGrouporFormArrayfrom a parent definition in a child self-contained form component. - Added
disabledproperty to<nsc-table-row-action-menu-item>component.
Changed
- Added
nullandundefinedas possibilities of input for<nsc-file-input>and<nsc-file-details>components. - RejuvenationsRejuvenationThe core process of harvesting custom code from designated anchors and ext directories, updating model configurations, and re-expanding code artifacts to continuously evolve software without losing custom implementations.:
@angular/*:^18.2.2 -> ^18.2.5@ng-matero/extensions:18.2.0 -> 18.2.1tslib:^2.6.3 -> ^2.7.0@angular-devkit/*:^18.2.2 -> ^18.2.5@angular-eslint/*:18.3.0 -> ^18.3.1@typescript-eslint/*:^8.2.0 -> ^8.7.0eslint:^9.9.1 -> ^9.11.1jasmine-core:~5.2.0 -> ~5.3.0
Fixed
- Made
<nsc-yes-no-toggle>component correctly reflect disabled changes. - Made file extension check case-insensitive, because the file selector pop-up is also case-insensitive.
0.5.0 (2024-09-02)
Added
- Added
<nsc-rich-text-editor>component that can be used in forms. This is aQuillJsbased WYSIWYG editor that fits our styling. With theRICH_TEXT_EDITOR_CONFIGinjection token you can define some configuration of the editor. This can be provided using theprovideRichTextEditorConfigfunction. Otherwise, the default value are used:
const DEFAULT_RICH_TEXT_EDITOR_CONFIG: NscRichTextEditorConfig = {
enableToolbar: true,
toolbarConfig: {
enableColorControls: true,
enableTextDecorationsControls: true,
enableAlignmentControls: true,
enableListControls: true,
enableFontControls: true,
},
};
- Added
Quillpeer dependency:quill:^2.0.2 - Added
placeholderinput attribute tonsc-filtercomponent. This can be used to customise shown placeholder when no filters are active. - Added
blob-error-interceptor. This interceptor will check if the response of an http call is a blob, but actually should be a json and convert it to json.
Changed
- Update to angular 18. Kept material design 2.
- RejuvenationsRejuvenationThe core process of harvesting custom code from designated anchors and ext directories, updating model configurations, and re-expanding code artifacts to continuously evolve software without losing custom implementations.:
@angular/*:^17.x.x -> ^18.2.2@ng-matero/extensions:17.3.5 -> 18.2.0@ng-matero/extensions-date-fns-adapter:17.1.2 -> 18.0.0zone.js:~0.14.8 -> ~0.14.10tslib:^2.6.2 -> ^2.6.3uuid:^9.0.1 -> ^10.0.0@angular-eslint/*:17.5.2 -> 18.3.0@types/uuid:^9.0.8 -> ^10.0.0@typescript-eslint/*:7.18.0 -> ^8.2.0eslint:^8.57.0 -> ^9.9.1karma:~6.4.3 -> ~6.4.4ng-packagr:^17.3.0 -> ^18.2.1typescript:~5.4.5 -> ~5.5.4
Fixed
- fixed #116:
nsc-filtercomponent does not alter all filters anymore when one entry gets deleted. - fixed #117:
nsc-filtercomponent does not have a hardcoded 'Search on' string anymore for the placeholder. Instead, only thesearhKeyis translated, or it can be customised withplaceholderinput attribute. - fixed #131a: Changed sort behaviour back to old behaviour. Original test has been adopted.
- fixed #131b: Made sidebar able to scroll vertically again.
0.4.0 (2024-08-14)
Added
- File IO components and helpers:
- Added
<nsc-file-input>component that can be used in forms. It can be linked with aFormControlthat hasFileModelas value. When adownloadUrlis present on theFileModelthen a download button will be shown. Validation is present with the attributes:allowedFileTypes?: string[]: Allows a list of file extensions to be given on which can be filtered and validated. An error is given namedfileInputInvalidTypewith the allowed extensions as parameter namedallowedFileTypes.allowedFileSize?: number: Allows a size in bytes to be given on which to validate. An error is given namedfileInputInvalidSizeaccompanied by the parametersactualSizeandallowedFileSize. A file can be added by opening a file window or by dropping a file in the dropzone. The upload and download functionality is based on theFileUploadSourceandFileDownloadSourceinterfaces. You can give an implementation by providing theuploadSourceanddownloadSourceattributes.
- Added
<nsc-file-detail>component that can be used in readonly pages. This component also relies on aFileModel. It will show the file name, and add a download button when theFileModelhas adownloadUrland adownloadSourcehas been provided. - Added
<nsc-table-file-column>component that can be used in tables. This component also relies on aFileModel. It will show the file name and add a download button when theFileModelhas adownloadUrland adownloadSourcehas been provided. - Added
file-sizeservice and pipe to transform bytes to a more human-readable format of kB, MB, GB, etc. - Added
file-name-parserfunction to extract file name fromContent-Dispositionheader. If it cannot be extracted an uuid v4 will be returned instead. - Added
save-filefunction to make a browser save a blob correctly to a file when is has been downloaded using a http call that has headers.
- Added
- Added
ESlintandprettiersetup.
Changed
- Reformated all code with new linter and formatter.
Fixed
- Added a null/empty check that returns
falsetoinstanceOfReferencefunction.
0.3.0 (2024-07-25)
Added
- Added a
<nsc-field-errors>component that can be used together with the form fieldsFieldA property of a DataElement expanded to a database column and user interface input element.. This component will accept a form control as input attribute and will call aFORM_FIELD_ERROR_PARSERservice to parse the present errors. An own implementation of the service needs to implement theFormFieldErrorParserinterface and can be provided with theFORM_FIELD_ERROR_PARSERtoken. - Added description attribute to
<date-picker>component. - Added
<date-time-picker>component to be used in forms. A default locale, parse- and displayFormat can be provided by usingprovideNscDateFormats. - Added logging interface and a console logging service.
- Added duration visualization of
<alert>component. Also added redirect capabilities to the component. - Added
NscDatePipeandNscDateTimePipethat formats dates based on the set formats in theNSC_DATE_ADAPTER. - The
alertservice now returns an observable to indicate when the triggered alert has been closed.
Changed
- Breaking Change: Changed
provideNscDateFormattoprovideNscDateFormatsthat accepts the interfaceNscDateFormatswhich is extended to also accept a date time format. <yes-no-toggle>component can now handle errors. The component has also got some visual tweaks to fit the styling better.- Made some visual tweaks to
<alert>component and set default alert duration to 5 seconds. - The table component now allows horizontal scrolling when the content of columns gets to wide.
- Made width and collapsed width of sidebar in to variables and exposed them.
- RejuvenationsRejuvenationThe core process of harvesting custom code from designated anchors and ext directories, updating model configurations, and re-expanding code artifacts to continuously evolve software without losing custom implementations.:
@angular/*:^17.3.9 -> ^17.3.12@angular/cdk:^17.3.9 -> ^17.3.10@angular/material:^17.3.9 -> ^17.3.10@angular-devkit/build-angular:^17.3.7 -> ^17.3.8@angular/cli:^17.3.7 -> ^17.3.8@ng-doc/*:^17.6.8 -> ^17.6.16zone.js:~0.14.6 -> ~0.14.8jasmine-core:~5.1.12 -> ~5.2.0
Fixed
<select>and<multi-select>components do not try to focus on search anymore when search is disabled.<select>and<multi-select>components now allow the use of the spacebar in the search.
0.2.0 (2024-07-09)
Added
- Added click and double click events to
tablewithTableCellInformationobject als content of the output event. - Added functionality to adjust height of
selectandmulti-selectviewport depending on the number of items available. When no entries are present it shows a default 'Nothing found for "{{value}}"' message. The maximum number of items shown at once is 4. The default translation key for this can be overridden by providingSELECT_TRANSLATION_CONFIGin your applicationApplicationThe overarching model container grouping all components, domain logic, and configurations for an enterprise solution.. - Added feature to disable search for
selectandmulti-select. Use thesearchDisabledinput attribute for this. - Added
<date-picker>component to be used in forms. A default locale, parse- and displayFormat can be provided by usingprovideNscDateFormat. Other formats can be instantiated with an object of typeNscDateFormatand given to the provide function as argument. The formats can be built using unicode tokens. Afterwards, these values can be changed by injectingNSC_DATE_ADAPTERand using the methods:updateParseFormat({value}: { value: string | string [] }): void;updateDisplayFormat({value}: { value: string }): void;updateLocale({value}: { value: string }): void;formatDate({value, displayFormat} : {value: Date, displayFormat: string}): string;
- Added
<date-range-picker>component to be used in forms.
Fixed
- Changed overlay close logic of
filter.component. This co-operates better with other components using an overlay, e.g.date-picker. - Disabled reset button for
selectandmulti-selectwhen form control is disabled. - Fixed value not being displayed issue when
selectandmulti-selectare instantiated with a value, but the value is not present in the current data stream. - Made
selectandmulti-selectnot override all the filters when a search is applied. Instead, now it appends the search filter to the current active filters. - Made
<filter>component display boolean and dates correctly.
Changed
- Changed scroll behaviour of filter form overlay. When overlay is shown, scrolling is now blocked.
- Changed default value for
isDummyShownvariable inselecttotrue.
0.1.1 (2024-06-17)
Added
- Added
orderingattribute toMenuItemwhich allows the sidebar component to take into account the order of theMenuItemarray as well as the set preferred ordering.
Changed
- Clear icon of
selectandmulti-selecthas been reverted to cross. - Search fieldFieldA property of a DataElement expanded to a database column and user interface input element. is focussed when
selectandmulti-selectopens. - Default "none" option in
selecthas been removed. This still can be added custom withSelectNoneOptionDirective.
Fixed
- Account for the possible 'overflow' (text that is too long) of items in the menu.
- Clear functionality of
selectandmulti-selectdoes not error anymore when item is cleared that was not rendered.
0.1.0 (2024-06-11)
Added
- Added
pagination$observable toNscPaginatedDataSourceinterface. - Added
searchKeyinput attribute toselectandmulti-selectto set used filter key. This attribute can only be setOnInitand cannot change anymore, otherwise an error is thrown. - Added
indexas an available context variable to TableCellDirective. This allows components within an nsc-table that use the*nscTableCelldirective to access the zero-based index of the row that the templateRef is in. - Added
SelectNoSelectableOptionsDirectiveand rendering capability inselectandmulti-selectfor this directive if no data is present when filtered.
Changed
- Default filter key of
selectandmulti-selectisdisplaylabelinstead ofdisplayLabel. - Clearing a
selectormulti-selectresets the form control now instead of setting an empty string/array. This change in behaviour is also represented with a different icon now. When a form control is made with{nonNullable:true}and a default starting value. The control is reset to this default value.
Fixed
- Fixed clear
selectbutton position when scrolling.
0.0.6 (2024-05-21)
Added
- Added
<nsc-select>component to be used in forms. The component allows aNscSelectDataSource<D>input as well as anArray<D>. The latter will be wrapped in the providedSelectArrayDatasource<D>. There are 3 directives to allow customizations.SelectNoneOptionDirective: Customize how the clear option looks like.SelectOptionDirective: Customize how options look like.SelectValueDirective: Customize how the selected option looks like.
- Added
<nsc-multi-select>component to be used in forms. - Added
NscInfiniteDataSourceinterface.
Changed
- RejuvenationsRejuvenationThe core process of harvesting custom code from designated anchors and ext directories, updating model configurations, and re-expanding code artifacts to continuously evolve software without losing custom implementations.:
@angular/*:^17.3.0 -> ^17.3.9@angular-devkit/build-angular:^17.3.0 -> ^17.3.7@angular/cli:^17.3.0 -> ^17.3.7@ng-doc/*:^17.5.5 -> ^17.6.8typescript:~5.4.2 -> ~5.4.5zone.js:~0.14.4 -> ~0.14.6
- Refactored file names of models to have kebab-case name with
.modelsuffix:Alert.ts->alert.model.tsBreadcrumb.ts->breadcrumb.model.tsBreadcrumbsIconConfig.ts->breadcrumbs-icon-config.model.tsFilter.ts->filter.model.tsNscFilterSource.ts->filter-source.model.tsFilterTranslationConfig.ts->filter-translation-config.model.tsNscSelectDataSource.ts->select-data-source.model.tsPaginator.ts->paginator.model.tsPaginatorTranslationConfig.ts->paginator-translation-config.model.tsReference.ts->reference.model.tsNscDataSource.ts->data-source.model.tsMenuItem.ts->menu-item.model.tsHomeItem.ts->home-item.model.tsSidebarMenuIconConfig.ts->sidebar-menu-icon-config.model.tsSorting.ts->sorting.model.tsAlert.ts->alert.model.tsAlert.ts->alert.model.tsAlert.ts->alert.model.ts
- Location of
NscDataSourceinterfaces has changed from@nsx/ns-core/tableto@nsx/ns-core.
0.0.5 (2024-03-20)
Changed
- Made
<sidebar-menu-navigation-item>an<a>tag instead of a<div>, which enables right click functionalities like "open in new tab". - Fixed border issue with divider.
0.0.4 (2024-03-18)
Added
- Added
<yes-no-toggle>component to be used in forms. - Created
<table-row-action-menu>and<table-row-action-menu-item>components that can be used together with the table component to add a row specific action menu. - Created demo pages for form components.
Changed
- Split up library in sub-entries to lower initial load size.
- Refactored
<text-area-field>:- Added auto resize capabilities
- Added warning icon when invalid
- Made
subscriptSizingdynamic
- Optimized routing of demo applicationApplicationThe overarching model container grouping all components, domain logic, and configurations for an enterprise solution..
- RejuvenationsRejuvenationThe core process of harvesting custom code from designated anchors and ext directories, updating model configurations, and re-expanding code artifacts to continuously evolve software without losing custom implementations.:
@angular/*:^17.2.* -> ^17.3.0@ng-doc/*:^17.5.1 -> ^17.5.5ng-packagr:^17.2.0 -> ^17.3.0typescript:~5.3.3 -> ~5.4.2
0.0.3 (2024-02-29)
Added
- ngx-ns-core
- FilterModel:
- FilterModel component
<nsc-filter>: Displays active filters as chips, can add a text filter and allows a dropdown form with more filters. Component has optional translation capabilities, that can be configured usingFilterTranslationConfigModel. FilterModelinterface.FilterSourceModelinterface: Holds filter state.- FilterModel form directive
[nscFilterForm]: Used to enable form dropdown capabilities.
- FilterModel component
- Forms:
- Focus directive
[nscFocusFormField]: Used to autofocus on a form control. - Form directive
[nscFormFieldHostControl]: Implementation ofControlValueAccessorinterface and can be used on filter fieldFieldA property of a DataElement expanded to a database column and user interface input element. components to addformControl,formControlName, ... capabilities more easily. - Text-fieldFieldA property of a DataElement expanded to a database column and user interface input element. component
<nsc-text-field> - Text-area-fieldFieldA property of a DataElement expanded to a database column and user interface input element. component
<nsc-text-area-field>
- Focus directive
- PaginatorModel:
- PaginatorModel component
<nsc-paginator>: Component has optional translation capabilities, that can be configured usingPaginatorTranslationConfigModel. PaginatorModelinterface.
- PaginatorModel component
- Table:
- Table component
<nsc-table>: AcceptsDataSourceModelor array as data input. Has multi sort capabilities. Expects<nsc-table-column>components as content to define how to render the data. - Table-column component
<nsc-table-column>and table-cell directive[nscTableCell]: Describes how the header and content of a column should look like. Sortinginterface.DataSourceModel,NscFilterableDataSource,NscSortableDataSource,NscPaginatedDataSourceinterfaces: Holds data state.
- Table component
- FilterModel:
Changed
- Refactored breadcrumbs and sidebar translations.
- Added 'identifier' fieldFieldA property of a DataElement expanded to a database column and user interface input element. as id for
SidebarMenuNavigationItem. - RejuvenationRejuvenationThe core process of harvesting custom code from designated anchors and ext directories, updating model configurations, and re-expanding code artifacts to continuously evolve software without losing custom implementations.:
@angular/*:^17.0.* -> ^17.2.2@angular/material:^17.0.4 -> ^17.2.1@angular/cdk:^17.0.4 -> ^17.2.1@ng-doc/*:^17.2.2 -> ^17.5.1@angular-devkit/build-angular:^17.0.10 -> ^17.2.1@angular/cli:^17.0.10 -> ^17.2.1@types/uuid:^9.0.7 -> ^9.0.8karma-coverage:~2.2.0 -> ~2.2.1karma:~6.4.2 -> ~6.4.3ng-packagr:^17.0.3 -> ^17.2.0typescript:~5.2.2 -> ~5.3.3zone.js:~0.14.3 -> ~0.14.4
0.0.2 (2024-01-11)
Added
- ngx-ns-core
- AlertModel service
AlertServiceand interfaceAlertModel - Breadcrumbs:
- component
<nsc-breadcrumbs>and interfaceBreadcrumbModel - service
BreadcrumbsRouteService: Retrieves breadcrumbs from angular routing data - service
BreadcrumbsIconService: Allows to change the icon font set and used icons of<nsc-breadcrumbs>
- component
- Service
SidebarMenuRouteService: Retrieves activeMenuItemModelfrom angular routing data - Translation tests for components using translation service
- Material theming default variables
- AlertModel service
Changed
- Upgrade to Angular 17 and Angular Material 17
- Documentation framework needed adjustments to work with Angular 17
- Deployment is changed for Angular 17
- RejuvenationRejuvenationThe core process of harvesting custom code from designated anchors and ext directories, updating model configurations, and re-expanding code artifacts to continuously evolve software without losing custom implementations.:
org.apache.maven.plugins:maven-clean-plugin:3.3.1 -> 3.3.2
- Jenkinsfile: no more publication for
renovatebranches and PRs
Fixed
- Translate tooltip of sidebar correctly
- Translation issue in demo + documentation
nscprefix was missing for sidebar css theming variables
0.0.1 (2023-12-08)
Added
- ngx-ns-core
- Divider component
<nsc-divider> - Header component
<nsc-header> - Sidebar-menu component
<nsc-sidebar-menu> - Translation classes:
Json5HttpTranslateLoader: adds possibility to load json5 translation files for@ngx-translate.WarningMissingTranslationHandler: adds possibility to show a console warning when a translation is missing for@ngx-translate.
- Commonly used SASS variables and mixins.
- Divider component
- ns-core-demo
- Demo Angular applicationApplicationThe overarching model container grouping all components, domain logic, and configurations for an enterprise solution. showcasing the content of the
ngx-ns-corelibrary.
- Demo Angular applicationApplicationThe overarching model container grouping all components, domain logic, and configurations for an enterprise solution. showcasing the content of the
- ns-core-doc
- Documentation Angular applicationApplicationThe overarching model container grouping all components, domain logic, and configurations for an enterprise solution. built with
@ng-docto showcase the different components, directives, services, API ofngx-ns-core. It has a markdown style for documentation enhanced with interactive demonstration environments.
- Documentation Angular applicationApplicationThe overarching model container grouping all components, domain logic, and configurations for an enterprise solution. built with