Skip to content

chore: Migration Angular 17 to Angular 18#30

Closed
patricia-martinez-imatia wants to merge 35 commits into18.x.xfrom
migration/18.x.x
Closed

chore: Migration Angular 17 to Angular 18#30
patricia-martinez-imatia wants to merge 35 commits into18.x.xfrom
migration/18.x.x

Conversation

@patricia-martinez-imatia
Copy link
Copy Markdown
Contributor

No description provided.

daniel-grana and others added 30 commits May 7, 2025 10:04
* feat: initial structure

* test: adding tests

* test: adding tests

* feat: added CODEOWNERS file

* chore: fixt sonar issues

* chore: fix test

* chore: fix README and CHANGELOG files and bug report template

* fix: solve failing test
* Added new project for testing and created o-data-view component

* fixed sonar error

* added app_config in sheleton test

* fix: solve failing test

* add fake data and service for testing new component

* fix: clean console log errors

* ODataViewComponent structure

* template ref ready

* Deleted contentReady variable

* fix: dynamic inputs

* fix: expose directives

* fix: not found spec.ts

* fix: empty test

* fix: common inputs by forwarding

* feature: adding another fake service for testing

* test: template ref

* feature fail: table-column template ref

* OTableComponent inputs checked

* Deleted list and added especific grid inputs

* refactor: update imports to use barrel exports

* feat(o-table): allow dynamic column creation via registerColumnv

* chore: Removed @material/icon-button dependencie

* feature: add floatable toggle, toggle on toolbar and custom button using changeView method

* refactor code

* refactor: using parseBoolean from core

* refactor: remove unnecesary variable 'currentView'

* fix: align floatable toggle

* fix: add default values

* feature: add injection token table config

* fix: export directives

* feature: update ontimize-web-ngx version

* feature: update ontimize 15.8.1

* fix: sonar issues

* feature: add new OTable input

* fix: update package-lock

* refactor code

* fix: sonar issue

* feature: style grid example

* feature: share inputs 'show-buttons-text' and 'quick-filter-placeholder'

* feature: share insert and refresh button

* fix: apply same height on table and grid

* feature: change data example

* refactor: delete console logs

* refactor example code

* fix: modify grid styles

* feature: share fixed-header input

* Updated o-data-view example

* Improve syncTableColumnsWithTable method

* Update o-data-view example

* fix: add more o-data-view inputs

* feature: update common inputs

* feature: o-table show-title="yes"

* delete showTitle

* fix: toggle on toolbar style

* fix: toggle toolbar style and default values

---------

Co-authored-by: Noelia Prol Carballo <noelia.prol@imatia.com>
Co-authored-by: Patricia Martinez Tilve <patricia.martinez@imatia.com>
Co-authored-by: Noelia Prol Carballo <noelia.prol@imatia.com>
Co-authored-by: Noelia Prol Carballo <noelia.prol@imatia.com>
* fix: setters toggle buttons

* delete background color on grid

* fix: toggle floatable position

* refactor code

* refactor global inputs

* quick-filter-placeholder initial value

---------

Co-authored-by: Noelia Prol Carballo <noelia.prol@imatia.com>
* Install ngx-image-cropper": "^6.0.2

* feat(o-image-editor): generate OImageEditorComponent and OImageEditorModule

* Updated latest stable version in ontimize-web-ngx

* feature: o-image-editor component

* fix: replace ipTranslate pipe for OTranslate from ontimize

* fix injection MAT_DIALOG_DATA

* change app-test structure

* change project for testing name

* feature: o-image-editor example and modified logic component

* feature: re-style component

* feature: add crop funcionality and change image

* feat: save implemented

* feat: width and height options

* feat: translateExtraComponentsService

* fix: translate service

* feat: new design

* fix: inputs width and height

* refactor code

* delete unused translate pipe

* refactor code v2

* refactor code v3

* feat: input image

* feat: action buttons position, save option

* fix sonar issues

* fix: rename output

---------

Co-authored-by: Noelia Prol Carballo <noelia.prol@imatia.com>
Co-authored-by: Daniel <daniel.grana@imatia.com>
* fix: add localStorage

* refactor

* fix: persist width columns

* Refactor code

* Removed unused import

* Improved o-table creation

* Removed unused import

---------

Co-authored-by: Noelia Prol Carballo <noelia.prol@imatia.com>
Co-authored-by: Patricia Martinez Tilve <patricia.martinez@imatia.com>
- Update all Angular packages to ^16.2.0
- Replace @angular/flex-layout with @angular/flex-layout@^15.0.0-beta.42 (transitional, keep for Angular 15 peer compatibility) and add @ngbracket/ngx-layout@^16.0.0
- Update ng-packagr to ^16.2.0, typescript to ~5.0.4, zone.js to ~0.13.0
- Update third-party deps: ngx-image-cropper ^8.0.0, ngx-extended-pdf-viewer ^19.0.0, ngx-skeleton-loader ^8.0.0
- Add moment ^2.30.1 (required by @angular/material-moment-adapter)
- Replace ImageCropperModule with ImageCropperComponent (standalone) in OImageEditorModule
- Update tsconfig.json module to es2022
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Update all Angular packages to ^17.3.0
- ng-packagr ^17.3.0, typescript ~5.2.2, zone.js ~0.14.0
- @ngbracket/ngx-layout ^17.0.1
- @angular-eslint ^17.0.0
- Update all Angular packages to ^18.2.0
- ng-packagr ^18.2.0, typescript ~5.5.4
- Add luxon ^3.4.0 + @types/luxon (peer of ngx-material-timepicker transitivo)
- Remove @angular/flex-layout and @ngbracket/ngx-layout
- Remove FlexLayoutModule from o-components.ts
- ontimize-web-ngx -> file:../ontimize-web-ngx/dist/ontimize-web-ngx-18.0.0-SNAPSHOT-0.tgz
- Update peerDependencies to ontimize-web-ngx ^18.0.0
Add explicit "No aplica" sections in Fase 2 and Fase 3 covering control
flow, inject(), guards, standalone, M3 theming and typed forms — mirroring
the framework plan structure for easier cross-repo comparison.
…ing)

Document the 5 components/directives pending standalone migration in Fase 3,
aligned with the framework which already has 201 standalone components.
Update decisions section to reflect pending status.
- OSkeletonComponent: standalone: true, imports NgxSkeletonLoaderModule
- OImageEditorComponent: standalone: true, imports CommonModule, ImageCropperComponent, OntimizeWebModule
- ODataViewComponent: standalone: true, imports CommonModule, OTableModule, OGridModule, OButtonToggleModule, directives
- ODataViewTableColumnsDirective: standalone: true
- ODataViewGridItemDirective: standalone: true
- OImageEditorModule, ODataViewModule: converted to wrapper NgModules
- OExtraComponentsModule: updated declarations/imports arrays for standalone
MIGRATION-STATUS.md: add Fase 4 standalone migration section (commit 8b294f4)
plan: mark standalone migration as COMPLETADO
- o-image-editor.component.scss: replace the hard-coded #1464A5 (oxygen
  primary 500) with var(--o-primary-500) + var(--o-primary-contrast-500)
  so the component follows the active Ontimize theme at runtime.
- app-test/styles.scss: import themes/oxygen.scss (the legacy
  themes/ontimize.scss entry point was removed by the framework M2-M3
  cleanup).
- o-skeleton.component.spec.ts: move OSkeletonComponent from
  declarations to imports; the component is standalone and
  TestBed rejects it in declarations.
- package-lock.json: regenerated after reinstalling the framework tgz
  built from the theming/m3 branch (ontimize-web-ngx-18.0.0-SNAPSHOT-0).

Build + tests verde (TOTAL: 5 SUCCESS + 1 SUCCESS).

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
Updates MIGRATION-STATUS.md with the addon-side work done after the
framework completed its Material M2-M3 migration (branch theming/m3):

- Adds Fase 4 (standalone components, commit 8b294f4) to the global
  state table so every row tracks a commit.
- Adds Fase 5 entry and a dedicated section describing the three
  concrete changes introduced in commit 9f83a96:
    * o-image-editor.component.scss: hard-coded #1464A5 replaced by
      var(--o-primary-500) / var(--o-primary-contrast-500).
    * app-test/styles.scss: legacy themes/ontimize.scss entry point
      swapped for themes/oxygen.scss.
    * o-skeleton.component.spec.ts: standalone component moved from
      declarations to imports.
- Records the build and test outcomes (build verde; 5+1 tests SUCCESS,
  0 fallos).

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
…r and o-data-view

- o-image-editor.component.html: replace 23 fxLayout/fxFlex/fxLayoutGap/fxLayoutAlign
  directives with CSS classes (o-flex-*) and inline styles; migrate *ngIf/*ngFor → @if/@for
- o-data-view.component.html: migrate 7 *ngIf/*ngFor → @if/@for
- data-view-test.module.ts: add CommonModule import (app-test fix)
- index.html: Material Icons → Material Symbols Outlined
- styles.scss: add .o-dark dark-theme mixin
- app.module.ts: remove duplicate OntimizeWebModule bare import
- @angular-eslint/*: ^18.0.0 → 18.4.3
- @typescript-eslint/{eslint-plugin,parser}: ^5.43.0 → ^7.0.0 (required by @angular-eslint@18.4.3)
- eslint: ^8.28.0 → ^8.56.0
- @types/node: ^12 → ^18
- jasmine-core: ~4.5.0 → ~5.1.0
- karma*: aligned with framework versions
- ts-node: ~7.0.0 → ~10.9.0
- ngx-extended-pdf-viewer: ^19.0.0 → ^20.0.0 (Angular 18 support)
…in component scss

Material applies flex-direction:row with high specificity; moving the
column layout to .tools-toggle in the component stylesheet ensures it wins.
…kbox

- .tools-toggle.mat-button-toggle-group: flex-direction column wins over Material specificity
- border-radius: 0 removes rounded corners
- .mat-pseudo-checkbox: display none
- alignImage="center" on image-cropper so ngx-ic-overlay gets same margin-left as ngx-ic-cropper
- image-cropper: flex:1 1 0 + min-height:0 to stay within flex-column parent
- .o-image-editor: box-sizing:border-box so padding:32px does not cause overflow
@patricia-martinez-imatia patricia-martinez-imatia linked an issue Apr 29, 2026 that may be closed by this pull request
41 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants