Skip to main content

angular-expanders


5.4.0 (2024-12-12)

Added

  • Added searchKey attribute for <nsc-select> components explicitly in forms. This is based on the angular.defaultFilterField option, if present, otherwise it is the constant displaylabel. This attribute value can be overridden in custom anchors.
  • Added custom anchor providers to <DataView>Module.ts. This now allows supplying or overriding providers.

Changed

  • Upgrade PackageJsonExpander to latest versions:
    • @nsx/ngx-ns-core: 1.1.1 -> 1.2.0

Fixed

  • Fixed infinite loading bug when reloading browser on a page with DataView Children open.

5.3.2 (2024-12-09)

Fixed

  • It was possible to have data children filtered on the wrong parent. The CanActivate guard checked if an id is present, but it did not check if it was the correct id. This is now fixed.

5.3.1 (2024-12-05)

Added

  • Added convert method to <DataConnector>-SegmentParametersState.
  • Added DataViewGuard to fix datachildren issue with same child different identifier to same parent.

Changed

  • Upgrade PackageJsonExpander to latest versions:
    • @nsx/ngx-ns-core: 1.1.0 -> 1.1.1

Fixed

  • Fixed datachild imports.

5.3.0 (2024-12-03)

Added

  • Added custom variables anchors to table component.
  • Added segment parameters save capabilities with url save implementation:
    • Created <DataConnector>-SegmentParametersState that has the following methods:
      • saveState({segmentParameters}: {segmentParameters: %dataConnector%SegmentParameters}): void;
      • retrieveState(): %dataConnector%SegmentParameters;
    • To use this and make it possible to swap out the implementation a <DataConnector>_SEGMENT_PARAMETERS_STATE InjectionToken has been added that can be injected.
    • Created <DataConnector>-SegmentParametersUrlStateService that implements the <DataConnector>-SegmentParametersState interface. It uses the SegmentParametersClearer, SegmentParametersSerializer, SegmentParametersDeserializer and SegmentParametersUrlSaver from ngx-ns-core to save/retrieve SegmentParameters to/from the url.
    • In the list page every change to the SegmentParameters now get persisted. On init of the page these parameters get read from storage and used to initialize the datasource.
  • Added child DataView capabilities. This is based on the dataChilds model in elements. If no DataView is present for the chosen child, an error will show at expansion time:
    • Added translations for these pages in gen.json5.
    • Added IS_DATA_CHILD InjectionToken in core.tokens expander.
    • Added use of NavTabDirective and NavTabGroupComponent to visualize data children in tabs.
    • Added <DataView>.resolver to handle getting <DataConnector>Model before routing to details or edit. This resolver also contains functions for its children to provide (1) the parent information to the child add form and (2) the correct filter options to make the parent filter static on child list view.
    • Added the children of a DataView as lazy loaded children of the detail route.
  • Added edit button on details page.
  • Added [initialSorting]="initialSorting" to <nsc-table> component to reflect the sorting correctly.

Changed

  • Caution: Made following routing options default (these can be overridden where effect is not desired):
    • bindToComponentInputs: true
    • paramsInheritanceStrategy: 'always'
  • Changed Subject to BehaviourSubject for sort observable in <DataConnector>-data-source expander.
  • <DataConnector>-data-source now also updates individual observables on initialization of the segment parameters.
  • Changed <DataView>-action.service to handle routing correctly in data children. This now gets provided on module level as well as on root.
  • Breaking Change: Following has been requested by several projects and also fits well together with data children. The routing of edit and details has been switched around with :id. Meaning details/:id has become :id/details.
  • Breaking Change: Currently routing used always :id als path parameter. With data children this is not possible anymore, because :id would get overridden. Now the path parameter is as follows: :<featureModule><dataView>Id. Please check this where you retrieve path parameters from the route.
  • Breaking Change: Because resolvers are now used, details and edit pages have a <DataConnector>Model input attribute that gets filled. It does not rely on retrieve the id from the path parameters anymore.
  • Breaking Change: The details page uses InputSignals, because of the added reactivity needed to initialize children filters. This is also the way forward with Angular 19. What breaks is that calls to the model in the html template now needs a () behind it.
  • Changed behaviour of cancel in add page, it now does this.location.back().
  • Breaking Change: Added [filterOptions] be default in list page. This can interfere with custom code.
  • Rejuvenations:
    • net.democritus.maven.plugins:expanders-maven-plugin: 2024.6.0 -> 2024.6.1
  • Upgrade PackageJsonExpander to latest versions:
    • @nsx/ngx-ns-core: 1.0.0 -> 1.1.0

5.2.1 (2024-11-26)

Fixed

  • Fixed the custom anchors in auth.config.ts.

5.2.0 (2024-11-20)

Added

  • Added custom anchors before and after form components in the new add and edit page HTML templates.
  • Added custom anchors to the auth.config.ts file.

Changed

  • Breaking change: Replaced existing custom add/edit-page anchors with add/edit-page-after-form anchor.
  • Rejuvenations:
    • net.democritus.metamodel:prime-test-support: 2024.6.0 -> 2024.7.0
    • net.democritus.metamodel:prime-core: 2024.7.0 -> 2024.8.0
    • net.democritus.metamodel:nsx-metamodel-stack: 2024.7.0 -> 2024.8.0
    • net.democritus.maven.plugins:expanders-maven-plugin: 2024.5.0 -> 2024.6.0
    • org.sonarsource.scanner.maven:sonar-maven-plugin: 4.0.0.4121 -> 5.0.0.4389
    • net.democritus:nsx-parent: 2024.1.0 -> 2024.2.0

5.1.0 (2024-11-07)

Added

  • Added FilterOption functionality. You can now define a FilterOption object using custom code in the <list-page> component. This can be used as attribute for the <nsc-filter> component as well as the <DataView-filter-form> component. This will disable certain filters or make them hidden.
  • Added DataView and DataConnector to the extendable elements.

Changed

  • Rejuvenations:
    • net.democritus.metamodel:prime-test-support: 2024.6.0 -> 2024.7.0
    • net.democritus.metamodel:prime-core: 2024.6.0 -> 2024.7.0
    • net.democritus:expanders-test-utils: 7.7.3 -> 7.8.2
    • net.democritus:Expanders: 7.7.3 -> 7.8.2
    • net.democritus:expanders-core: 7.7.3 -> 7.8.2
    • net.democritus:base-components-model: 2024.6.1 -> 2024.6.2
  • Upgrade PackageJsonExpander to latest versions:
    • @nsx/ngx-ns-core: 0.7.0 -> 1.0.0
    • @angular/*: ^18.2.9 -> ^18.2.11
    • @angular/cdk: ^18.2.10 -> ^18.2.12
    • @angular/material: ^18.2.10 -> ^18.2.12
    • @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
    • @ngx-translate/core: ^15.0.0 -> ^16.0.3
  • Updated ngx-translate to latest version and removed use of TranslateModule. See migration guide for more information.
  • Changed uses of valueField neq null or linkField neq null to linkFieldType check in expanders.

5.0.3 (2024-11-06)

Fixed

  • Added field specific classes on field for filter-form component.
  • Fixed DATASOURCE InjectionTokens for filter-form. Now an InjectionToken is expanded for every filter field present, it does not implicitly rely on linkFields anymore.
  • Fixed lowerCase legacy filter formControlName entries.

5.0.2 (2024-11-04)

Changed

  • Rejuvenations:
    • org.apache.maven.plugins:maven-surefire-plugin: 3.5.1 -> 3.5.2

Fixed

  • Legacy filter forms were not altered with the camelCase filter name breaking change.

5.0.1 (2024-10-31)

Fixed

  • Made expanders that use LINK_FIELDS, only allow Ln02. This was not done consistently. However, this can be changed in the future.

5.0.0 (2024-10-30)

caution

This version contains some breaking changes. Please refer to the migration guide in the documentation for more information about this change and what code is affected.

This major release marks the beginning of control layer separation in the angular stack. This has been accomplished by expanding DataAccess interfaces and InjectionTokens. This token can be implemented by a separate expansion resource specific to a certain control layer implementation, e.g. rest-expanders, json:API, ...

Added

  • Added custom serve-options anchors in angular.json5.
  • Breaking change: Added <DataConnector>-event.model.ts and <DataConnector>-event.service.ts where DataAccess events can be defined and subscribed to. This is now separated from the <DataConnector>-data-access.service.

Changed

  • Rejuvenations:
    • net.democritus:base-components-model: 2024.5.3 -> 2024.6.1
    • net.democritus:expanders-test-utils: 7.7.2 -> 7.7.3
    • net.democritus:Expanders: 7.7.2 -> 7.7.3
    • net.democritus:expanders-core: 7.7.2 -> 7.7.3
    • net.democritus.maven.plugins:expanders-maven-plugin: 2024.4.0 -> 2024.5.0
    • com.fasterxml.jackson.core:jackson-databind: 2.17.2 -> 2.18.1
    • net.democritus.test:expanders-assert: 1.0.0 -> 1.1.0
    • net.democritus.model:modelTransmutations-test-support: 2.4.3 -> 2.5.0
    • net.democritus.model:modelTransmutations-core: 2.4.3 -> 2.5.0
    • net.democritus.validations.model:validations-test-support: 3.6.2 -> 3.7.0
    • net.democritus.validations.model:validations-core: 3.6.2 -> 3.7.0
    • org.junit.jupiter:junit-jupiter: 5.11.0 -> 5.11.3
    • org.apache.maven.plugins:maven-surefire-plugin: 3.5.0 -> 3.5.1
  • Upgrade PackageJsonExpander to latest versions:
    • @nsx/ngx-ns-core: 0.6.0 -> 0.7.0
    • @angular/*: ^18.2.5 -> ^18.2.9
    • @angular/cdk: ^18.2.5 -> ^18.2.10
    • @angular/material: ^18.2.5 -> ^18.2.10
    • @angular-devkit/*: ^18.2.5 -> ^18.2.10
    • @angular/cli: ^18.2.5 -> ^18.2.10
    • @angular/compiler-cli: ^18.2.5 -> ^18.2.9
    • tslib: ^2.7.0 -> ^2.8.0
  • Refactored login authentication call. Now it uses a AUTH_DATA_ACCESS InjectionToken that implements the AuthDataAccess interface that can be implemented by a control layer implementation.
  • Breaking change: Refactored <DataConnector>-data-access.service to use data access pattern. Before, all calls were directly to the <DataConnector>-data-access.service. This has been changed, and now instead a <DATACONNECTOR>_DATA_ACCESS InjectionToken is used. This token implements the <DataConnector>DataAccess interface that can be implemented by a control layer implementation. The method signatures got some small changed:
    • getSingle({ id }: { id: string }): Observable<%dataConnector%Model>;
    • getList({ segmentParameters }: { segmentParameters?: %dataConnector%SegmentParameters }): Observable<%dataConnector%ListModel>;
    • create({ model }: { model: %dataConnector%Model }): Observable<{ id: string }>;
    • update({ model }: { model: %dataConnector%Model }): Observable<void>;
    • delete({ id }: { id: string }): Observable<void>;
  • Breaking change: Refactored file IO to use data access pattern. Before, an all-purpose upload and download method was available in the http.service. This has been removed, and now it uses a FILE_IO_DATA_ACCESS InjectionToken that implements the FileIoDataAccess interface that can be implemented by a control layer implementation.
  • Breaking change: Filter fields are now camelCase. Previous filter fields found in <DataConnector>-filters.ts (and related services/components) were lowercase. This was a overfitting to the rest-expanders, with the separation of the control layer this has been fixed. This will result in custom code that not will compile and potentially missing translations.
  • The TableTsExpander and TableHtmlExpander got a refactor of the pagination implementation. Now using the page.model.ts DTO from @nsx/ngx-ns-core.
  • The DataSourceTsExpander got a refactor to true private fields and new implementation of the updated NscPaginatedDataSource using the Page DTO.
  • Updated all xsd versions to latest.

Deleted

  • Removed dependencies:

    • net.democritus:rest-jaxrs-stack
    • net.democritus:rest-expanders
    • one.util.streamex
  • Breaking change: Removed angular-jaxrs-stack definition. This has been moved to a new repo and renamed to angular-stdapi-stack.

  • Breaking change: Removed http.service. The implementation of this service was control layer specific. Due to the separation of the control layer implementation this service has been removed. Functionality has been moved to either FILE_IO_DATA_ACCESS of other helper services/functions with the same behaviour.

  • Breaking change: Removed rest-expanders specific DTO expanders.

    • HrefModelTsExpander
    • InstanceCreatedTsExpander
    • LinksModelTsExpander
    • PageModelTsExpander
    • PaginatedListTsExpander
    • PaginationTsExpander

    These have been either moved to the angular-svcapi-expanders or replaced with an angular specific DTO. For the latter PageModel.ts and Pagination.ts are a good example. These have been replaced by page.model.ts from @nsx/ngx-ns-core. The rest-expander and standard APIs alternative will map to this.


4.11.1 (2024-09-30)

Changed

  • Rejuvenations:
    • org.junit:junit-bom: 5.11.0 -> 5.11.1

Fixed

  • Added tag applicability check to FilterFormModelExpander.

4.11.0 (2024-09-25)

Added

  • Added custom attribute anchors to <nsc-table-row-action-menu-item> components usages in <dataview-table-column-actions> component.

Changed

  • New forms implementation:
    • Added legacy.angular.oldForms.reenable option on AngularApp, FeatureModule and DataView to re-enable old form behaviour. This option is cascading.
    • Forms are now split up in to:
      • dataview-add/edit/filter-form.directive.ts: This directive contains the definition and submit logic of the form. It implements the FormDefinition interface.
      • dataview-add/edit/filter-form.component.*: This is a self-containing form that gives a visual representation of the form and used the directive to add logic to the form. Using the FormHostControlDirective this form can also be used as a subset of a larger form. The definition of form buttons can be changed using content with the FormButtonsDirective. The visual placement of the form is now powered by css-grid and can be easily altered using custom anchors.
      • dataview-add/edit/filter.form.ts: The forms ar now typed and defined in this file.
      • dataview-add/edit/filter-form-mapper.service.ts: This mapper service will map the form representation onto a dataview.model.ts or dataconnector.filters.ts.
      • dataview-add/edit-page.component.*: The definition of the page that uses the form component. The page now has an add/edit_page_title translation key to make grammatically correct changes. This component is now standalone.
      • Changed route from /new to /add. Also, the breadcrumb translation has been changed.
  • Changed typing in dataconnector-filters.ts. Links are now typed as Reference and dates are typed as Date.
  • Changed value type of <nsx-date-picker> component to also accept null.
  • Changed value type of <nsx-yes-no-toggle> component to also accept null.
  • Changed that non-required fields in dataconnector.model.ts, dataconnector-create.document.ts and dataconnector-modify.document.ts can also be null instead of only undefined.
  • Increased anyComponentStyle css budgets to 30kb for a warning and 40kb for an error.
  • Rejuvenations:
    • one.util:streamex: 0.8.2 -> 0.8.3
    • net.democritus:base-components-model: 2024.5.2 -> 2024.5.3
    • net.democritus.model:prime-builders: 2.4.2 -> 2.4.3
    • net.democritus.maven.plugins:expanders-maven-plugin: 2024.3.2 -> 2024.4.0
    • net.democritus:rest-jaxrs-stack: 4.32.1 -> 4.34.0
    • net.democritus:rest-expanders: 4.28.1 -> 4.29.0
    • net.democritus.metamodel:nsx-metamodel-stack: 2024.5.0 -> 2024.6.0
    • net.democritus.metamodel:prime-metamodel: 2024.5.0 -> 2024.6.0
    • net.democritus.metamodel:prime-core: 2024.5.0 -> 2024.6.0
  • Upgrade PackageJsonExpander to latest versions:
    • @nsx/ngx-ns-core: 0.5.0 -> 0.6.0
    • @angular/*: ^18.2.2 -> ^18.2.5
    • @angular-devkit/build-angular: ^18.2.2 -> ^18.2.5
    • tslib: ^2.6.3 -> ^2.7.0
    • Pinned rollup version to 4.22.4 to fix vulnerabilities.

Deleted

  • Removed unused imports from dataview.module.ts, because now add- and edit-pages are standalone.

4.10.3 (2024-09-16)

Fixed

  • Upload file client method did not work for Chrome. This browser does not provide the ResponseHeader event the method was relying on. Instead now the Response event is being used.

4.10.2 (2024-09-04)

Changed

  • Rejuvenations:
    • net.democritus.test:expanders-assert: 0.10.0 -> 1.0.0

Fixed

  • Compatibility issue with micro-radiant. Added FeatureModuleDataRefConverter.

4.10.1 (2024-09-03)

Fixed

  • Increased error budget from 10kb to 30kb. Needed to handle styling of quill.
  • Upgrade rest-expanders:
    • net.democritus:rest-jaxrs-stack: 4.32.0 -> 4.32.1
    • net.democritus:rest-expanders: 4.28.0 -> 4.28.1

4.10.0 (2024-09-03)

Added

  • Added support for audit.modify.timestamp and audit.create.timestamp options, and the behaviour of the rest-expanders with these options. Use document values of created and lastModified. Also added support for sorting.
  • Added support for MarkupString valueType in add en edit pages.
  • Added blobErrorInterceptor to httpClient. This will convert blob errors that actually should be a json.
  • Added validation that checks for every DataView in a rest-expanders setting if a default filter is defined. This can be either name or the value of the option angular.defaultFilterField.
  • Added allowedCommonJsDependencies entry for quill-delta.
  • Added testing dependencies:
    • org.assertj:assertj-core: 3.26.3
    • org.junit.jupiter:junit-jupiter: 5.11.0

Changed

  • Angular 18 support:
    • @angular/*: 17.x.x -> 18.2.2
    • typescript: 5.4.5 -> 5.5.4
    • Changed Webpack to Vite.
    • Angular Material still has material design 2 support.
  • Upgrade PackageJsonExpander to latest versions:
    • @nsx/ngx-ns-core: 0.4.0 -> 0.5.0
    • tslib: 2.6.2 -> 2.6.3
    • zone.js: 0.14.8 -> 0.14.10
  • Rejuvenations:
    • net.democritus.model:modelTransmutations-core: 2.4.2 -> 2.4.3
    • net.democritus.model:model-builder-expanders: 2.4.2 -> 2.4.3
    • org.apache.maven.plugins:maven-surefire-plugin: 3.4.0 -> 3.5.0
    • net.democritus.test:expanders-assert: 0.9.1 -> 0.10.0
    • net.democritus:rest-jaxrs-stack: 4.30.1 -> 4.32.0
    • net.democritus:rest-expanders: 4.26.0 -> 4.28.0
    • net.democritus.metamodel:nsx-metamodel-stack: 2024.4.5 -> 2024.5.0
    • net.democritus.metamodel:prime-metamodel: 2024.4.5 -> 2024.5.0
    • net.democritus.metamodel:prime-core: 2024.4.5 -> 2024.5.0
    • net.democritus:querysearch-expanders: 3.3.0 -> 3.3.1
  • Placed error handling of http calls in DataConnector-data-access.service. This way a rest call is always handled correctly, even in error.
  • Changed validations test to expanders-assert.
  • Changed transmutations test to expanders-assert.
  • Changed metamodel to use ontology-expanders.

Fix

  • Fixed copy error in EnglishI18nJsonExpander. Changed to min to max.
  • Fixed filter value mapping in http.service. When an array is given as filter value, this now gets converted to a comma separated list and set in the HttpParams. Before the same filter key was added multiple times with different values to the HttpParams. That behaviour could not be handled by the rest-expanders back-end.
  • Translations of link fields in FilterForm component were fixed.
  • Made test options hidden.
  • fixed #131: Fixed scrolling behaviour of layout. Now sidebar and main content will scroll correctly.
  • Re-added field specific classes on field components for add and edit pages.
  • Fixed missing reason in unknown rest-expanders http errors.
  • Fixed unused headers in download file method (http.service).

Removed

  • Removed hamcrest dependency.
  • Removed builders.

4.9.1 (2024-08-20)

Changed

  • Rejuvenations:
    • org.junit:junit-bom: 5.10.2 -> 5.11.0
    • org.apache.maven.plugins:maven-surefire-plugin: 3.3.1 -> 3.4.0

Fixed

  • Anchor names in FilterFormHtmlExpander were not the field names, but the types. Changed to field names.

4.9.0 (2024-08-14)

Added

  • Added custom anchor to data-element-filter-form.component.ts Expander to allow customising defaultSegmentParameters.
  • Added custom anchors to TopbarComponentScssExpander. While adding the setup also changed to accommodate expanders-assert and import-strategy.
  • Added support for file IO:
    • DataConnectorField element added to angularProjects.
    • FieldIoSourceExpander generates an IO client service for every DataConnectorField.
    • RestExpFileDataConnectorFieldEnricher model loading step adds a DataConnectorField for every Field that is a file.
    • Added rules that will trigger based on rest-expander options (svcapi.endpoint.upload and svcapi.endpoint.download).
  • Added columns attribute to DataViewTable component that accepts an array of strings representing column ids. This can be used to only render these corresponding columns.

Changed

  • Implemented // TODO implement new error service in data-element-details.component.ts and data-element-edit.component.ts by replacing the {next: () => {}, error: (err) =>{}} subscription with a regular subscription.
  • Changed translationKey of filterForm linkField dropdowns to use filterField instead of fields in data-element-filter-form.component.html.
  • Split defaultSegmentParameters definition and linkFieldDataSource initialization in data-element-filter-form.component.ts to allow customising defaultSegmentParameters.
  • Split value-definition and usage of the fields id and diplayLabel in RestExpReferenceMapperExpander.stg to allow customisation of the reference mapping. Also added custom anchors in the RestExpModelMapperExpander to allow the same functionality.
  • Rejuvenations:
    • net.democritus.test:expanders-assert: 0.9.0 -> 0.9.1
    • org.hamcrest:hamcrest: 2.2 -> 3.0
    • net.democritus:rest-jaxrs-stack: 4.21.1 -> 4.30.1
    • net.democritus:rest-expanders: 4.21.1 -> 4.26.0
    • net.democritus:base-components-model: 2024.3.4 -> 2024.5.2
    • net.democritus:querysearch-expanders: 2.28.0 -> 3.3.0
    • net.democritus:prime-data: 2024.0.2 -> 2024.0.3
    • net.democritus.maven.plugins:expanders.maven.plugin: 2024.2.1 -> 2024.3.2
    • net.democritus.metamodel:nsx-metamodel-stack: 2024.3.13 -> 2024.4.5
    • net.democritus.metamodel:prime-metamodel: 2024.3.13 -> 2024.4.5
    • net.democritus.metamodel:prime-test-support: 2024.3.13 -> 2024.4.5
    • net.democritus.metamodel:prime-core: 2024.3.13 -> 2024.4.5
    • net.democritus:expanders-test-utils: 7.5.0 -> 7.7.2
    • net.democritus:Expanders: 7.5.0 -> 7.7.1
    • net.democritus:expanders-core: 7.5.0 -> 7.7.1
    • com.fasterxml.jackson.core:jackson-databind: 2.17.1 -> 2.17.2
  • Added support for file IO:
    • Add form Html and Ts expander can handle files.
    • Edit form Html and Ts expander can handle files.
    • Detail page Html and Ts expander can handle files.
    • Table component Html and Ts expander can handle files.
    • Model and mapper changes to support files.
    • Translations and errors updated to accommodate files.
    • Updated data-access.service and http.service to handle file uploads and downloads.
  • Upgrade PackageJsonExpander to latest versions:
    • @nsx/ngx-ns-core: 0.3.0 -> 0.4.0

4.8.1 (2024-07-30)

Changed

  • Made actions column sticky for tables, so that overflow does not push it of screen.

Fixed

  • Added forgotten sidebar-collapsed class in <layout> component.

4.8.0 (2024-07-25)

Added

  • Added custom anchors to DataConnector.tokens.ts Expander.
  • Added custom anchors to tsconfig.json5 Expander for lib customizations.
  • LinkFields and ValueFields are now seen as sortable, only CalculatedFields are ignored.
  • Added const type to the service import handler of AngularImportResolver.
  • Added new error handling expanders:
    • ErrorInterceptorExpander
    • ErrorMapperInterceptorExpander
    • AlertErrorModelExpander
    • FieldErrorModelExpander
    • FormErrorModelExpander
    • RestExpDataAccessErrorDocumentExpander
    • AlertErrorHandlerServiceExpander
    • AlertErrorServiceExpander
    • ErrorHandlerServiceExpander
    • FormErrorHandlerServiceExpander
    • FormFieldErrorParserExpander
    • RestExpDataAccessErrorMapperExpander
    • RestExpDataAccessFormErrorMapperExpander
    • FormFieldErrorParserExpander
  • Added translations for error codes in EnglishI18nJsonExpander.
  • Added LOGGER token to CoreTokensExpander.
  • Added nativeTypes:
    • angular:form-input-import:big-string
    • angular:form-input:big-string
    • angular:form-input-import:number
    • angular:form-input:number
    • angular:form-input-import:date-time
    • angular:form-input:date-time

Changed

  • Changed importStatement method of AngularServiceImportsDefinition to also correctly translate service tokens names that do not contain an underscore.
  • Changed overflow styling of layout to make tables scroll and keep the rest fixed.
  • Changed column-gap to gap property for DataView-filter-form.scss expander.
  • Changed date pipes in DataView-table-component to use nscDatePipe and nscDateTimePipe instead.
  • Changed AuthInterceptorExpander to a function instead of a service. This also changes the location of the artifact, which is a Breaking Change, from /services to /constants in the auth module.
  • Changed error handling in DataAccessTsExpander, NewTsExpander, EditTsExpander, LoginComponentTsExpander and ActionServiceTsExpander.
  • ** Breaking Change**: Changed provideNscDateFormat to provideNscDateFormats in AppModuleExpander.
  • Changed AppModuleExpander to provide HttpClient with function that accepts providers.
  • Changed AppModuleExpander to provide a root error handler.
  • Changed AppModuleExpander to provide a FORM_FIELD_ERROR_PARSER.
  • Upgrade PackageJsonExpander to latest versions:
    • @nsx/ngx-ns-core: 0.2.0 -> 0.3.0
    • @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
    • zone.js: ~0.14.6 -> ~0.14.8
  • Updated simpleValueTypes with new nativeTypes.
  • Changed New*Expander and Edit*Expander to use nativeTypes.

Fixed

  • Fixed double login call when using basic authentication.
  • Fixed missing translation in delete dialog.

4.7.1 (2024-07-16)

Changed

  • Rejuvenations:
    • net.democritus.metamodel:nsx-metamodel-stack: 2024.3.13 -> 2024.3.15
    • net.democritus.metamodel:prime-metamodel: 2024.3.13 -> 2024.3.15
    • net.democritus.metamodel:prime-test-support: 2024.3.13 -> 2024.3.15
    • net.democritus.metamodel:prime-core: 2024.3.13 -> 2024.3.15
    • net.democritus:expanders-test-utils: 7.4.5 -> 7.5.0
    • net.democritus:Expanders: 7.4.5 -> 7.5.0
    • net.democritus:expanders-core: 7.4.5 -> 7.5.0
    • net.democritus.test:expanders-assert: 0.7.1-SNAPSHOT -> 0.9.0
    • org.apache.maven.plugins:maven-surefire-plugin: 3.3.0 -> 3.3.1

4.7.0 (2024-07-09)

Added

  • Made oidc authentication flow able to redirect to initial load url after authentication was successful.
  • Added custom-table-attributes anchors to DataView-table component.
  • Added support for yes-no-toggle in DataView-filter-form component.
  • Added support for date-picker in DataView-filter-form component.

Changed

  • Rejuvenations:
    • net.democritus:Expanders: 7.4.4 -> 7.4.5
    • net.democritus:base-components-model: 2024.3.2 -> 2024.3.4
  • Upgrade PackageJsonExpander to latest versions:
    • @nsx/ngx-ns-core: 0.1.1 -> 0.2.0
  • Changed use of DateAdapter to handle i18n of date-picker component correctly.
  • Made filtering handle booleans and dates correctly.

Fixed

  • Fixed scss @use conflict for DataViews with the same name in different FeatureModules.
  • Fixed missing search translation of <select> component.

Removed

  • Removed DataView specific search translation.

4.6.1 (2024-06-17)

Added

  • Added content anchors for select in add, edit and filter form.

Changed

  • Rejuvenations:
    • net.democritus:rest-jaxrs-stack: 4.20.2 -> 4.21.1
    • net.democritus.metamodel:prime-metamodel: 2024.3.11 -> 2024.3.12
    • net.democritus.metamodel:prime-core: 2024.3.11 -> 2024.3.12
    • net.democritus:Expanders: 7.4.0 -> 7.4.4
    • net.democritus:base-components-model: 2024.3.0 -> 2024.3.2
    • net.democritus:querysearch-expanders: 2.27.0 -> 2.28.0
    • org.apache.maven.plugins:maven-surefire-plugin: 3.2.5 -> 3.3.0
  • Upgrade PackageJsonExpander to latest versions:
    • @nsx/ngx-ns-core: 0.1.0 -> 0.1.1

4.6.0 (2024-06-11)

Added

  • Added global style partial for DataViewTable. In this file you can set column width and other styles that need to be defined globally.
  • Added classes to detail, table, edit, and new fields for styling following descriptive-class-name__{fieldName}.
  • Added get pagination$() method to DataSourceTsExpander.
  • Added anchors in html attributes for nsc-select.
  • Added logic to store and retrieve preferred page size in list page.

Changed

  • Rejuvenations:
    • net.democritus.test:expanders-assert: 0.5.0 -> 0.8.0
    • net.democritus.validations.model:validations-core: 3.5.1 -> 3.6.2
    • net.democritus.model:modelTransmutations-core: 2.3.4 -> 2.4.1
    • net.democritus.maven.plugins:expanders.maven.plugin: 2024.1.1 -> 2024.2.1
    • net.democritus:rest-jaxrs-stack: 4.19.0 -> 4.20.2
    • net.democritus.model:model-builder-expanders: 2.3.4 -> 2.4.2
    • net.democritus.metamodel:prime-metamodel: 2024.2.3 -> 2024.3.11
    • net.democritus.metamodel:prime-core: 2024.2.3 -> 2024.3.11
    • org.sonarsource.scanner.maven:org.sonarsource.scanner.mave: 3.11.0.3922 -> 4.0.0.4121
    • net.democritus:Expanders: 7.0.5 -> 7.4.0
    • net.democritus:base-components-model: 2024.2.0 -> 2024.3.0
  • Added a value to option angular.isLinkFilterField that follows the pattern featureModuleName::DataConnectorName.
  • A SelectComponent is expanded in the FilterFormComponent when a QueryField has the option angular.isLinkFilterField:featureModuleName::DataConnectorName instead of custom anchors.
  • Upgrade PackageJsonExpander to latest versions:
    • @nsx/ngx-ns-core: 0.0.6 -> 0.1.0
  • Changed behaviour of storage for base authentication related information. Instead of localStorage it now uses sessionStorage. Each time you open a tab with the website you will need to log in again.

Fixed

  • Fixed padding issue in add and edit pages.

4.5.0 (2024-05-27)

caution

This version contains some breaking changes. Please refer to the migration guide in the documentation for more information about this change and what code is affected.

Added

  • Added feature anchor translations to EnglishI18nJsonExpander.
  • Added deprecation date (2024-11-01) for angular.migration.filter option.
  • Added AngularImportResolver that can be used to add ECMAScript imports as well as angular specific imports and service injections. Two parameters for the import anchor are now handled, namely Component and Service. The <uses> tag can have 4 types now: component, module, service and private_service. All these types will be placed in the @imports anchor using the EsImportResolver. The first two will also be placed under @imports(Component) and the service ones will be placed under @imports(Service).
  • Added list action to ActionsServiceTsExpander that routes to the DataView list page.
  • More elaborate and correct mapping services for going from DTO to Entity models.
    • CreateDocumentMapper
    • ModifyDocumentMapper
    • ModelMapper
    • ReferenceMapper
  • Added option angular.defaultLanguage for AngularApp to set the value of the default used language.

Changed

  • Rejuvenations:

    • net.democritus:Expanders: 7.0.5 -> 7.3.1
    • net.democritus:base-components-model: 2024.1.3 -> 2024.2.0
    • net.democritus.validations.model:validations-core: 3.4.1 -> 3.5.1
    • net.democritus.model:modelTransmutations-core: 2.3.2 -> 2.3.4
    • net.democritus.maven.plugins:expanders.maven.plugin: 2024.0.0 -> 2024.1.1
    • net.democritus:nsx-parent: 2024.0.0 -> 2024.1.0
    • net.democritus:rest-jaxrs-stack: 4.16.0 -> 4.19.0
    • net.democritus:prime-data: 2024.0.1 -> 2024.0.2
    • net.democritus.metamodel:prime-metamodel: 2024.1.1 -> 2024.2.3
    • net.democritus.test:expanders-assert: 0.3.0 -> 0.5.0
    • net.democritus:querysearch-expanders: 2.24.0 -> 2.27.0
    • com.fasterxml.jackson.core:jackson-databind: 2.17.0 -> 2.17.1
  • Updated all xsd schema's to latest version.

  • Internal angular services, routes and pages don't rely on functionalKey option anymore, but use a generic id identifier as variable. This is a breaking change for route information extraction and Service and Actions methods.

  • Refactored more tests to expanders-assert:

    • DataViewModuleExpander
    • DataViewRoutingModuleExpander
    • NewScssExpander
    • DetailsScssExpander
    • EditScssExpander
    • HttpServiceExpander
    • LocaleSelectorExpanders
  • Streamlined usage of name DataElement, DataView and DataConnector in expanders.

  • Expanders don't rely on rest-expanders options anymore but use tags instead. These tags can be added by a rule activated via rest-expanders options or different constructs.

  • Moved services from injection in constructor to field variable with inject() as angular devs are hinting at the change. Applied for:

    • NewTsExpander
    • DetailTsExpander
    • ListTsExpander
    • EditTsExpander
    • TableTsExpander
    • ServiceTsExpander
    • ActionsServiceTsExpander
    • HttpServiceExpander
    • AppComponentTsExpander

    The name of injected services in these files are changed to use a camelCase version of the class name. Impacts:

    • dataSource -> dataConnectorDataSource
    • filterSource -> dataConnectorFilterSource
    • route -> activatedRoute
    • translate -> translateService
  • Upgrade PackageJsonExpander to latest versions:

    • @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
    • typescript: ~5.4.2 -> ~5.4.5
    • zone.js: ~0.14.4 -> ~0.14.6
    • @nsx/ngx-ns-core: 0.0.5 -> 0.0.6
  • Changed .data model files to .document. Also added more .document files:

    • DataConnector-create.document
    • DataConnector-modify.document
    • DataConnector-reference.document
  • Renamed service file-names:

    • dataConnector.service -> DataConnector-data-access.service
    • dataConnector.datasource -> DataConnector-data-source.service
    • dataConnector.filtersource -> DataConnector-filter-source.service
    • dataConnector-infinite.datasource -> DataConnector-infinite-data-source.service
  • Renamed service:

    • DataConnectorService -> DataConnectorDataAccessService
  • Changed filter mapping in http.service to accommodate use of Reference in filters.

  • Refactored use of DropDownComponent to SelectComponent from ns-core. Also added translations for the search.

  • Changed how dates are displayed in a table:

    • Date: "dd-MM-yyyy"
    • Timestamp: "dd-MM-yyyy HH:mm"

Fixed

  • Routing of table columns (name and linkFields) do not happen in function of current route anymore. Instead, it uses the corresponding action service.
  • Routing of links in detail components do not happen in function of current route anymore. Instead, it uses the corresponding action service.
  • Fixed behaviour of locale-selector, now it stores selected language, meaning when a page refresh is done, the other language does not reappear. The styling and look of the component is also fixed.

Removed

  • Removed redundant imports feature anchors.
    • DataViewRoutingModuleExpander
    • AppComponentTsExpander
    • ServiceTsExpander
    • FilterTsExpander
    • ListDataTsExpander
    • ListModelTsExpander
    • FilterFormModelTsExpander
    • TableTsExpander
    • TableColumnActionsTsExpander
    • ListTsExpander
    • NewTsExpander
    • EditTsExpander
    • ModelTsExpander
    • HttpServiceExpander
  • Removed option legacy.iconFont.enabled, because deprecation date has been surpassed.
  • Removed deprecated options angular.auth.basic.enable and angular.auth.oidc.enable.
  • Removed component expanders:
    • DropdownComponent
    • MultiSelectDropdownComponent

4.4.4 (2024-04-08)

Added

  • Custom anchors for constructor-arguments and on-init method in *-filter-form.component.ts.

Changed

  • Rejuvenations:
    • net.democritus:Expanders: 7.0.1 -> 7.0.5
    • net.democritus:base-components-model: 2024.1.1 -> 2024.1.3
    • net.democritus:rest-jaxrs-stack: 4.13.1 -> 4.16.0
    • net.democritus.metamodel:prime-metamodel: 2024.1.0 -> 2024.1.1
    • com.fasterxml.jackson.core:jackson-databind: 2.16.1 -> 2.17.0
    • org.jacoco:jacoco-maven-plugin: 0.8.11 -> 0.8.12

4.4.3 (2024-04-04)

Added

  • Custom anchors for imports, variables, constructor and methods in *-filter-form.component.ts.

4.4.2 (2024-03-21)

Added

  • Custom anchors for providers in page components.

4.4.1 (2024-03-20)

Added

  • Custom anchors at the bottom of the crud pages.
  • Added 'update' Event for update action.

Changed

  • Fixed missing translations:
    • Delete dialog
    • Apply filter button
  • Rejuvenations:
    • net.democritus:Expanders: 7.0.0 -> 7.0.1
    • net.democritus:base-components-model: 2024.1.0 -> 2024.1.1
    • net.democritus:rest-jaxrs-stack: 4.13.0 -> 4.13.1
  • Upgrade PackageJsonExpander to latest versions:
    • @nsx/ngx-ns-core: 0.0.4 -> 0.0.5

4.4.0 (2024-03-18)

Added

  • Custom anchor for assets in AngularJsonExpander.
  • Sorting on link fields.
  • An event observable has been added to the DataElementService. Side effects have been added to the create and delete calls that push an Event onto the observable. This observable can be used to act on delete and create actions.
export interface Event {
objectIdentifier: string;
type: 'create' | 'delete';
}
  • DataElementActionsService has been added that defines what actions are present on a DataElement, e.g. add, edit, delete and details.
  • Branding feature that toggles all nsx branding off and adds custom anchors instead. Option angular.hasCustomBranding on the AngularApp can be used for this.
  • Customization feature to change specific default expanded code into custom anchors:
    • angular.hasCustomHeaderContent on AngularApp: The header of the layout can be altered.
    • angular.hasCustomTableRowActions on DataView: The default table row actions can be altered.

MINOR BREAKING CHANGE:

Naming of anchors have been changed to prefix branding and customization:

  • index.html: favicon -> branding-favicon
  • _default-theme.scss: colors -> branding-colors
  • _default-theme.scss: typography -> branding-typography
  • _default-theme.scss: density -> branding-density
  • layout.html: sidebar-branding -> branding-sidebar
  • layout.html: header-content -> customization-header-content

Changed

  • Added reset of margin to 0px for h1, h2, h3, h4, h5, h6. Added more sensible bottom margin for add, edit, list and detail page title.
  • Action column of table refactored. Separated in component that uses the DataElementActionsService for cleaner code.
  • EsImportResolver now also allows underscores.
  • Changed imports for ngx-ns-core.
  • Rejuvenations:
    • com.fasterxml.jackson.core:jackson-databind: 2.16.1 -> 2.17.0
    • org.sonarsource.scanner.maven:org.sonarsource.scanner.mave: 3.10.0.2594 -> 3.11.0.3922
    • net.democritus.metamodel:nsx-metamodel-stack: 2024.0.4 -> 2024.1.0
    • net.democritus:Expanders: 6.5.0 -> 7.0.0
    • net.democritus:base-components-model: 2024.0.0 -> 2024.1.0
    • net.democritus:nsx-parent: 2023.0.2 -> 2024.0.0
    • net.democritus:rest-jaxrs-stack: 4.12.0 -> 4.13.0
    • net.democritus:querysearch-expanders: 2.23.1 -> 2.24.0
  • Upgrade PackageJsonExpander to latest versions:
    • @angular/*: ^17.2.x -> ^17.3.0
    • @angular-devkit/build-angular: ^17.2.1 -> ^17.3.0
    • @nsx/ngx-ns-core: 0.0.3 -> 0.0.4

4.3.0 (2024-02-29)

Added

  • DataSourceTsExpander: Adds for every DataConnector a DataSource service.
  • FilterSourceTsExpander: Adds for every DataConnector a FilterSource service.
  • Table*Expander: Adds for every DataView a table component containing the fields tagged with option angular.isTableColumn as columns.
  • FilterForm*Expander: Adds for every DataView a filter form component containing the fields tagged with #angular.isFilterField.
  • FilterFormModelTsExpander: Adds for every DataView a filter form interface.
  • SegmentParametersTsExpander: Adds a type that combines sorting, pagination and filtering for a DataConnector.
  • Tag rules to not be dependent on rest-expander or querysearch-expander options:
    • #angular.isTableColumn
    • #angular.hasFilterForm
    • #angular.isFilterField
  • Options:
    • angular.isTableColumn: Marks a field as column for a DataElement table.
    • angular.isLinkFilterField: Marks a QueryFilterField as a LinkField instead of a string ValueField.
    • angular.defaultFilterField: Defines the default field name to filter on.
  • AddDefaultAngularTable transmutation that adds the angular.isTableColumn option to all fields with the option exposeRestField.
  • angular:form-input:string nativeType.
  • String simpleValueType.

Removed

  • PaginatorComponent*Expander
  • TableComponent*Expander
  • TableColumnComponent*Expander
  • TableCellDirectiveTsExpander
  • TableSearchComponent*Expander

Changed

  • Rejuvenations:
    • net.democritus.metamodel:nsx-metamodel-stack: 2023.12.0 -> 2024.0.4
    • net.democritus:prime-data: 2023.2.3 -> 2024.0.1
    • net.democritus.metamodel:prime-metamodel: 2023.12.0 -> 2024.0.4
    • net.democritus.model:model-builder-expanders: 2.3.0 -> 2.3.2
    • net.democritus.maven.plugins:expanders.maven.plugin: 2023.8.3 -> 2024.0.0
    • net.democritus:Expanders: 6.2.2 -> 6.5.0
    • net.democritus:rest-jaxrs-stack: 4.8.0 -> 4.12.0
    • net.democritus:querysearch-expanders: 2.22.0 -> 2.23.1
    • net.democritus:base-components-model: 2023.14.5 -> 2024.0.0
    • net.democritus.model:modelTransmutations-core: 2.3.0 -> 2.3.2
    • org.junit:junit-bom: 5.10.1 -> 5.10.2
    • org.apache.maven.plugins:maven-surefire-plugin: 3.2.3 -> 3.2.5
    • org.codehaus.mojo:flatten-maven-plugin: 1.5.0 -> 1.6.0
    • net.democritus.test:expanders-assert: 0.1.4 -> 0.3.0
  • Removed sortby field from PaginationTsExpander.
  • Changed Sorting and Filter types to the ones defined in ngx-ns-core in HttpServiceExpander.
  • Updated all xlmns schema's to latest versions. Expander and mapping .xml files were updated accordingly.
  • List*Expander now uses new table and filter components. Everything is linked by the dataSource.
  • Refactored more tests to expanders-assert:
    • ServiceTsExpander
    • SortingTsExpander
    • ModelTsExpander
    • ListModelTsExpander
    • ListDataTsExpander
    • FiltersTsExpander
    • DataTsExpander
  • Refactored expanders to use new import system:
    • ServiceTsExpander
    • ListModelTsExpander
    • ListDataTsExpander
    • ListTsExpander
    • FiltersTsExpander
  • Upgrade PackageJsonExpander to latest versions:
    • @angular/*: ^17.0.* -> ^17.2.2
    • @angular/material: ^17.0.4 -> ^17.2.1
    • @angular/cdk: ^17.0.4 -> ^17.2.1
    • @angular-devkit/build-angular: ^17.0.10 -> ^17.2.1
    • @angular/cli: ^17.0.10 -> ^17.2.1
    • typescript: ~5.2.2 -> ~5.3.3
    • zone.js: ~0.14.3 -> ~0.14.4
    • @nsx/ngx-ns-core: 0.0.2 -> 0.0.3
  • Updated list component:
    • Updated table component to new design
    • Updated paginator component to new design
    • Updated filter component to new design
  • Translations added in EnglishI18nJsonExpander:
    • Paginator translations
    • FilterFields translations
  • Expand filter fields in FiltersTsExpander based on #angular.isFilterField tag.

4.2.0 (2024-01-11)

Added

  • Added ngx-ns-core version 0.0.2
  • Added net.democritus.test:expanders-assert: 0.1.4

Refactored

  • Started refactoring tests to expanders-assert
  • Breadcrumbs refactored. Breaking change: in routing change name and isBreadcrumb data entries to breadcrumb. The former is replaced by breadcrumb and the latter has become obsolete.
  • Styling setup. Breaking change: _theme-to-material-component-exposer.scss has been replaced with _theme-to-component-exposer.scss. Material expose mixin _theme-to-css-classes-exposer.scss has been deleted. Behaviour can be re-added custom if wanted.
  • Changed to Material symbols instead of Material icons. Introduced the option legacy.iconFont.enabled to allow gradual change.

Changed

  • Rejuvenations:
    • net.democritus.metamodel:nsx-metamodel-stack: 2023.9.1 -> 2023.12.0
    • net.democritus:prime-data: 2023.1.2 -> 2023.2.2
    • net.democritus.metamodel:prime-metamodel: 2023.9.1 -> 2023.12.0
    • net.democritus.model:model-builder-expanders: 2.2.3 -> 2.3.0
    • net.democritus.maven.plugins:expanders.maven.plugin: 2023.7.0 -> 2023.8.3
    • net.democritus:Expanders: 5.37.5 -> 6.2.2
    • net.democritus:rest-jaxrs-stack: 3.33.0 -> 4.8.0
    • net.democritus:querysearch-expanders: 2.20.0 -> 2.22.0
    • net.democritus:base-components-model: 2023.14.2 -> 2023.14.5
    • net.democritus.metamodel:prime-core: 2023.9.1 -> 2023.10.1
    • net.democritus.model:modelTransmutations-core: 2.2.3 -> 2.3.0
    • com.fasterxml.jackson.core:jackson-databind: 2.15.3 -> 2.16.1
    • org.apache.maven.plugins:maven-surefire-plugin: 3.2.2 -> 3.2.3
    • net.democritus.validations.model:validations-core: 3.3.2 -> 3.4.1
  • Updated layout component:
    • Updated sidebar component to new design
    • Updated header component to new design
  • Updated alert component
  • Updated login screen to match with the designs
  • Added mobile-viewport mode for login screen
  • Changed PrettyPrinter config of .json5 to .json file conversion.
  • Upgrade to angular 17 and angular material 17

4.1.1 (2023-10-23)

Merged 4.0.13 into main branch.

Changed

  • Rejuvenations:
    • net.democritus:Expanders: 5.37.3 -> 5.37.5
    • net.democritus:base-components-model: 2023.14.0 -> 2023.14.2
    • net.democritus.maven.plugins:nsx-versions-maven-plugin: 2023.1.2 -> 2023.2.0
    • net.democritus:querysearch-expanders: 2.18.0 -> 2.20.0

4.1.0 (2023-10-17)

Changed

  • Refactored styling:
    • Added 2 extra expanded folders: layout and pages
    • Changed src/styles.scss to src/styles/main.scss
    • Refactored content of original styles.scss to better follow the '7-1 file system' pattern.
  • Upgrade to angular 16:
    • Upgraded package versions.
    • Changed AuthGuard implementation to follow new 'Functional router guards' guidelines.
    • Removed polyfills.ts file, zone.js is now added in the angular.json file.
    • Removed .browserlistrc file, a default is used. When this needs to be different, you can add it as an ext file.
    • Removed @angular/flex-layout implementation with regular css flex.
    • Used legacy version of Angular Material components. !IMPORTANT!: Reasoning for this is, we will redesign everything in the next release, meaning that a temporary upgrade of components would be wasted resources. Caution, when using this release you should use legacy Angular Material components in custom code!

4.0.13 (2023-10-23)

Fixed

  • Added trailing comma to NgxTranslate package.json FeatureExpander.

4.0.12 (2023-10-17)

Fixed

  • Fixed nullpointer in stg file of ModelTsExpander.
  • Made DataConnector expanders only look at Ln02 LinkFields.

Changed

  • Rejuvenations:
    • net.democritus:Expanders: 5.37.1 -> 5.37.3
    • com.fasterxml.jackson.core:jackson-databind: 2.15.2 -> 2.15.3
    • org.jacoco:jacoco-maven-plugin: 0.8.10 -> 0.8.11
    • net.democritus:rest-jaxrs-stack: 3.31.0 -> 3.33.0

4.0.11 (2023-10-13)

Fixed

  • Fixed angular.migration.filter option to be able to use LN02 fields correctly. Retrieve String SimpleValueType from DataRegistry instead of creating a new one that is missing the needed NativeTypes.
  • Removed canExecute check in write manifest file test. This check is OS dependent and actually does not add value.

Changed

  • Rejuvenations:
    • net.democritus:Expanders: 5.36.5 -> 5.37.1
    • net.democritus.model:modelTransmutations-core: 2.2.2 -> 2.2.3
    • net.democritus.maven.plugins:expanders.maven.plugin: 2023.6.0 -> 2023.7.0
    • net.democritus.metamodel:prime-core: 2023.8.0 -> 2023.9.1
    • net.democritus:base-components-model: 2023.12.0 -> 2023.14.0
    • net.democritus:rest-jaxrs-stack: 3.29.1 -> 3.31.0

4.0.10 (2023-10-06)

Fixed

  • Resolved issue when functionalKey has 'name' as value.

4.0.9 (2023-10-05)

Fixed

  • Fixed infinite error loop for http errors.

4.0.8 (2023-10-05)

Fixed

  • Fixed inconsistent naming of formGroup in list page.
  • Fixed isRequired issue.
  • Temp fix for DataElementModel fill in create and edit submit.

Changed

  • Rejuvenations:
    • NSX Metamodels and Expanders: 5.36.4 -> 5.36.5

4.0.7 (2023-10-03)

Fixed

  • Fixed broken oidc auth implementation.

Changed

  • Refactored auth module: removed auth routing and regular module. Instead now the login component is standalone and for oidc a module is added that handles oidc implementation.
  • Made CopyImagesStep synchronized and added better FileSystem check.

4.0.6 (2023-10-02)

Fixed

  • Deprecation warnings.
  • Name check of AngularApp now also checks if isAsciiAlphaNumeric.

Changed

  • Added quality of life improvements to Jenkinsfile.
  • Refactored expansion/harvest code. Added root as ext folder with depth 1.
  • Made manifest artifacts.xml read-only.
  • Rejuvenations:
    • net.democritus:base-components-model: 2023.11.0 -> 2023.12.0
    • NSX Metamodels and Expanders: 5.36.3 -> 5.36.4
    • net.democritus:rest-jaxrs-stack: 3.29.0 -> 3.29.1

4.0.5 (2023-09-26)

Fixed

  • Corrected baseUrl of HttpService to camelCase of AngularApp name.

Added

  • Added rule that checks if AngularApp is kebab-case of Application name.
  • Support for string[] filter type in HttpService.

4.0.4 (2023-09-25)

Changed

  • Upgrade transmutation is now called UpgradeToAngularProject, it also has added functionality concerning angular.migration.filter option and naming op elements.
  • Updated validations concerning naming: FeatureModule and AngularApp need to be kebab-case.
  • Altered angular.auth.basic.enable and angular.auth.oidc.enable options to angular.basicAuth.enable and angular.oidcAuth.enable respectively. This was needed for the upgrade transmutation. The old options are still active on Application but deprecated.

4.0.3 (2023-09-22)

  • Added transmutations:
    • Upgrade: Run on Application element. Creates for every DataElement with a angular.model or angular.view option, a MetaModel setup with a DataConnector and a DataConnector with DataView respectively. It creates FeatureModules based on packageName of the DataElement in question, e.g. org.normalizedsystems.users will become the FeatureModule users. If this contains a already existing predefined module name (core, shared, auth, translation) it takes the Application shortName.
    • AddDefaultAngularCrud: Run on DataElement. Creates a MetaModel setup with a DataConnector and a DataView. This is placed in the FeatureModule defined as described above.
  • Added validations:
    • <expansionResource name="net.democritus.angular:angularProjects-validation" version="4.0.3"/> can be added to enable the validations. This is also packaged in the stack.
    • AngularApp prefix should be kebab-case.
    • FeatureModule name should be kebab-case.
    • DataConnector name should be same as DataElement.
    • DataView name should be same as DataElement.

4.0.2 (2023-09-19)

  • Removed sonar build from stack deploy.

4.0.1 (2023-09-19)

  • Fixed malfunctioning jenkinsfile.

4.0.0 (2023-09-19)

  • Added metamodel support.
  • Changed expand and harvest logic to not use gen/ext folders anymore, but to use a manifest file containing all the expanded artifacts.
  • Changed expanded folder structure.
  • Refactored DataElementService.
  • Refactored table component.
  • Added backend support for filtering.
  • More small tweaks and refactorings.
  • Changed groupId to net.democritus.angular.

3.3.3 (2024-02-21)

Changed

  • Rejuvenations:
    • net.democritus.maven.plugins:expanders.maven.plugin: 2023.5.0 -> 2024.0.0
    • net.democritus:Expanders: 5.33.2 -> 6.5.0
    • net.democritus:base-components-model: 2023.11.0 -> 2024.0.0
    • net.democritus:prime-core: 2023.6.1 -> 2024.0.4
    • net.democritus:prime-data: 2023.1.2 -> 2024.0.1
    • net.democritus.validations.model:validations-core: 3.3.1 -> 3.4.1
    • com.fasterxml.jackson.core:jackson-databind: 2.15.2 -> 2.16.1
  • Added mvn flatten plugin to pom.xml

3.3.2 (2023-09-18)

  • Added custom anchors for allowedCommonJsDependencies in angular.json.

3.3.1 (2023-08-29)

  • [BUGFIX] Fixed dropdown components in add/edit/detail pages when no 'name' field is used.
  • Rejuvenation:
    • Expanders: 5.30.5 -> 5.32.0
    • Prime-core: 2023.5.3 -> 2023.5.4
    • Base-components: 2023.8.2 -> 2023.10.0

3.3.0 (2023-08-08)

  • [BUGFIX] Fixed front-end only expand when HyperLink is used in project.
  • Made tsconfig.json a json5 file.
  • Added custom anchor in tsconfig.json5.

3.2.0 (2023-07-11)

  • [BUGFIX] updated alertComponent scss to fix error, info, warn and success styles not being applied
  • [BUGFIX] updated contentProjection in multi-select-dropdown, this was missing from 3.1.4
  • [BUGFIX] ANG-33: added support for enteredAt and lastModifiedAt
  • [BUGFIX] Fixed front-end only expand when MarkupString is used in project.

3.1.4 (2023-06-23)

  • Added missing semicolon in basic AuthService.ts
  • [BUGFIX] Fixed contentProjection for mat-error and mat-hint in Dropdown, YesNoToggle and DatePicker.

MINOR BREAKING CHANGE:

Content-projection-identifiers have been changed to [matErrorContent] and [matHintContent], as the old identifiers [matErrors] and [matHint] do not represent the actual slot-function anymore.

Reasoning: Previous projection-slots did not behave like proper mat-errors and mat-hints. mat-error and mat-hint are forced to be a direct child of mat-form-field. But the old projetion just placed them inside the mat-form-field. Therefore, we have changed the setup such that the components use mat-error and mat-hint directly and have a contentSlot inside these elements, triggering the rename of the slots.


3.1.3 (2023-06-15)

  • Made frontend expand only possible again. Added base-components-model to dependencies.

3.1.2 (2023-06-13)

  • [BUGFIX] changed config.js script loading path to use absolute path instead of relative

3.1.1 (2023-05-30)

  • Refactored oidc implementation to use the new Config construction. If no oidcIssuer, oidcClientId or oidcScope is given in the config.js, the application will still compile, but a white screen is shown. Following error will be seen in the console:
ERROR issuer  must use HTTPS (with TLS), or config value for property 'requireHttps' must be set to 'false' and allow HTTP (without TLS).

3.1.0 upgrade notes

  • To upgrade to the 3.1.0+ release, you will need to update your docker setup.
  • An example of the setup can be found in the demo-project
  • Here is an overview of the most important changes
    • Ensure that projectName>docker>frontend>entrypoint.sh contains the following:
    for FILE in /app/config/*; do echo "$(envsubst < $FILE)" > $FILE; done;
    mv /app/config/config.template.js /app/config/config.js
    • Ensure that projectName>docker>frontend>Dockerfile ends with the following:
    COPY entrypoint.sh /
    RUN dos2unix /entrypoint.sh
    RUN chmod +x /entrypoint.sh
    ENTRYPOINT [ "/entrypoint.sh" ]
    • You no longer need the older env.js file. You can delete it and remove it from your index.html

3.1.0 (2023-05-26)

  • Added pretty print to output of json5.
  • Added translations to expanded components and pages.
  • Added custom anchors for module-imports.
  • [BUGFIX] support for valueTypes in ListHtml pages.
  • [BUGFIX] temp fix for dropdown entries (show 100).
  • [BUGFIX] use functionalKey for dropdown if name is not present.
  • [BUGFIX] made formControl empty string for link fields.
  • [BUGFIX] fixed kebab-case redirect for edit save.
  • [BUGFIX] fixed menu example to show title instead if name.
  • Added default logo's.
  • Reworked login page.
  • Made basic auth possible without custom code additions. Changed 'angular.auth.basic.enable' option to have a value, which is the endpoint used to do the login.
  • Altered docker environment substitution. No more is a window env subst in de environment.ts file recommended. Instead add docker substituted entries in de 'config.js' and 'config.template.js' files. Also alter the config.interface.ts interface to have typescripted variables. Use it in files as follows:
import {Config} from "~/config.interface";
declare let __config: Config;
// ...
__config.baseUrl

3.0.6 (2023-05-09)

  • [BUGFIX] Fixed table shortcomings
  • Added support for GET filter value on exposeRestField option for OutputModel.

3.0.5 (2023-04-26)

  • [BUGFIX] Fixed routing
  • [BUGFIX] Fixed login css
  • [BUGFIX] Fixed yes-no-toggle component being unable to use an initial value from the formControl
  • [BUGFIX] Split dual functionality in DropdownCompoment into separate DropdownComponent and MultiSelectDropdownComponent.
  • [BUGFIX] Fixed DropdownComponent being unable to use an initial value from the formControl
  • Refactored YesNoToggle and DropdownComponent to use translate pipe
  • Upgraded package-versions to latest Angular V14 compatible releases
  • Added anchors in app.module
  • [EXPERIMENTAL] MultiSelectDropdownComponent is considered experimental, as it lacks proper testing. Feedback or bugreports are welcome.

3.0.4 (2023-03-29)

  • [BUGFIX] Fixed yes-no-toggle component not passing the @Input color to the yes/no chips

3.0.3 (2023-03-14)

  • [BUGFIX] Added clean harvest functionality

3.0.2 (2023-03-13)

  • Authentication refactor: angular.auth.oidc.enable and angular.auth.basic.enable authentication options added for Application element
  • Model validation added to block use of both options at the same time
  • Added expansion step for automatic json5 conversion
  • Added extra anchors in angular.json5 and package.json5
  • Updated yes-no-toggle, datepicker and dropdown UI components. Dropdown now also have multiselect.
  • Added support for svgIcons in the menu
  • [BUGFIX] Changed TopBarComponent to look for logo in 'assets/ext/images' instead of 'assets/images'
  • [BUGFIX] Corrected Outputmodel to show linkFields for DataElements with the option angular.model
  • [BUGFIX] Added missing page query param to Pagination

3.0.1 (2023-01-16)

  • ngx-translate added
  • [BUGFIX] ReferenceModel duplicate name field fix

3.0.0 (2022-10-26)

  • refactored to angular material approach. See it as a big reset.

2.3.1 (2022-08-05)

Fixed

  • Corrected usage of functionalKey option in the expander mappings.

2.3.0 (2022-01-10)

  • translations_default.ts: Add some default translations for buttons, notifications, texts
  • TableControlComponent: Fix styling

2.2.0 (2021-12-30)

BackendConnectorService

  • Fix anchor name
  • Remove unused fields and methods

SelectDropdown

  • Only display maximum 5 options in the dropdown

AppRoutingModule

  • Remove route to PageNotFoundModule

PageNotFound

  • Do not expand this component anymore

package.json

  • Remove keycloak packages: keycloak-angular and keycloak-js. For application that uses those packages, please create a package.json overlay file

SearchComponent

  • Change button to link => allow 'Open in new tab'
  • Pass pagination from ListComponent to SearchComponent instead of just pageSize

LinkButtonComponent

  • Add expander for this Angular component
  • This is a link element that looks like a button

[DataElement]ListComponent

  • Change some buttons to links (use LinkButtonComponent instead of ButtonComponent)
  • Removed methods:
    • buttonNames()
    • goTo[DataElement]DetailPage() (with custom anchor: anchor:custom-go-to-detail-page)
    • goToAdd[DataElement]Form() (with custom anchor: anchor:custom-go-to-new-page)
    • goToEdit[DataElement]Form() (with custom anchor: custom-go-to-edit-page)
  • Removed custom anchors:
    • anchor:custom-new-button-click-handler
    • anchor:custom-detail-button-click-handler
    • anchor:custom-edit-button-click-handler

[DataElement]AdvancedSearchComponent

  • Change a button to link (use LinkButtonComponent instead of ButtonComponent)
  • Removed methods:
    • buttonNames()
    • goTo[DataElement]DetailPage() (with custom anchor: anchor:custom-go-to-detail-page)
  • Removed custom anchors:
    • anchor:custom-detail-button-click-handler

[DataElement]DetailComponent

  • Change a button to link (use LinkButtonComponent instead of ButtonComponent)
  • Removed methods:
    • buttonNames()
    • goToEdit[DataElement]Form() (with custom anchor: anchor:custom-go-to-edit-page)
  • Removed custom anchors:
    • anchor:custom-edit-button-click-handler

2.1.0 (2021-12-08)

AdvancedSearchComponent

  • Add method statusCssClass back to advanced-search.component.ts expander (must have been deleted by accident before)

2.0.0 (2021-11-18)

  • Do not use Angular runtime anymore

1.0.0 (2021-04-29)

  • Initial version, containing Angular expander and angular runtime