Compare commits
5 Commits
88679c0c9a
...
main
Author | SHA1 | Date | |
---|---|---|---|
|
b1db4ea590 | ||
822ddb1274 | |||
|
672dd6d4f1 | ||
|
b3ac73d903 | ||
|
f8554dd5e7 |
@@ -136,7 +136,7 @@ jobs:
|
||||
replace-in-files --regex='"hosturl".*' --replacement='hosturl:"http://localhost:4200",' ./cypress.config.ts
|
||||
cat ./cypress.config.ts
|
||||
# Start frontend and run cypress
|
||||
npm start & npx wait-on http://localhost:4200 && npx cypress run --browser chrome --spec "cypress/e2e/liveness.cy.ts,cypress/e2e/editor.cy.ts,cypress/e2e/excel-multi-load.cy.ts,cypress/e2e/excel.cy.ts,cypress/e2e/csv.cy.ts,cypress/e2e/filtering.cy.ts,cypress/e2e/licensing.cy.ts"
|
||||
npx ng serve --host 0.0.0.0 --port 4200 & npx wait-on http://localhost:4200 && npx cypress run --browser chrome --spec "cypress/e2e/liveness.cy.ts,cypress/e2e/editor.cy.ts,cypress/e2e/excel-multi-load.cy.ts,cypress/e2e/excel.cy.ts,cypress/e2e/csv.cy.ts,cypress/e2e/filtering.cy.ts,cypress/e2e/licensing.cy.ts"
|
||||
|
||||
- name: Zip Cypress videos
|
||||
if: always()
|
||||
|
21
CHANGELOG.md
21
CHANGELOG.md
@@ -1,3 +1,24 @@
|
||||
## [7.1.1](https://git.datacontroller.io/dc/dc/compare/v7.1.0...v7.1.1) (2025-07-24)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **viewboxes:** hot v16 fails to load because of relative height `100%` ([672dd6d](https://git.datacontroller.io/dc/dc/commit/672dd6d4f1fda27e3706dd7caa42b45922319497))
|
||||
|
||||
# [7.1.0](https://git.datacontroller.io/dc/dc/compare/v7.0.3...v7.1.0) (2025-07-23)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* adapter bump ([b495c41](https://git.datacontroller.io/dc/dc/commit/b495c41626c85b7c4141d9361e4d3a826efd6c05))
|
||||
* bumping CLI to 4.12.10 ([a08a717](https://git.datacontroller.io/dc/dc/commit/a08a717ca8d49e8a7d63f3fd91c6a7d42a1d6d8b))
|
||||
* bumping sasjs/core and sasjs/cli ([63e9af4](https://git.datacontroller.io/dc/dc/commit/63e9af402ed65f6be4426e76ee1376a40e6ed097))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* improving accessibility score up to 100, hot update to v16.0.1 ([71c308d](https://git.datacontroller.io/dc/dc/commit/71c308d052400ecedc03f8020a5a69471ac6b116))
|
||||
|
||||
## [7.0.3](https://git.datacontroller.io/dc/dc/compare/v7.0.2...v7.0.3) (2025-06-26)
|
||||
|
||||
|
||||
|
@@ -401,7 +401,7 @@
|
||||
[columns]="viewboxTables[viewboxTableIndex].hotTable.columns"
|
||||
[filters]="true"
|
||||
[dropdownMenu]="viewboxTables[viewboxTableIndex].hotTable.dropdownMenu"
|
||||
[height]="viewboxTables[viewboxTableIndex].hotTable.height"
|
||||
[height]="calculateTableHeight(viewbox)"
|
||||
stretchH="all"
|
||||
[cells]="viewboxTables[viewboxTableIndex].hotTable.cells"
|
||||
[maxRows]="viewboxTables[viewboxTableIndex].hotTable.maxRows"
|
||||
|
@@ -111,7 +111,7 @@ export class ViewboxesComponent implements OnInit, AfterViewInit, OnDestroy {
|
||||
},
|
||||
columns: [],
|
||||
cols: [],
|
||||
height: '100%',
|
||||
height: 200, //WORKAROUND: Changed from '100%' to fixed pixel value because otherwize hot does not load
|
||||
settings: {},
|
||||
hiddenColumns: true,
|
||||
manualColumnMove: false,
|
||||
@@ -513,6 +513,11 @@ export class ViewboxesComponent implements OnInit, AfterViewInit, OnDestroy {
|
||||
this.helperService.debounceCall(1000, () => {
|
||||
this.viewboxChanged()
|
||||
this.eventService.dispatchEvent('resize')
|
||||
|
||||
// Refresh all viewbox tables after resize
|
||||
this.viewboxes.forEach((viewbox) => {
|
||||
this.refreshTableAfterResize(viewbox)
|
||||
})
|
||||
})
|
||||
|
||||
return {
|
||||
@@ -672,6 +677,11 @@ export class ViewboxesComponent implements OnInit, AfterViewInit, OnDestroy {
|
||||
|
||||
setTimeout(() => {
|
||||
this.setAllHandleTransform()
|
||||
|
||||
// Refresh all tables after snap to grid
|
||||
this.viewboxes.forEach((viewbox) => {
|
||||
this.refreshTableAfterResize(viewbox)
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
@@ -713,6 +723,11 @@ export class ViewboxesComponent implements OnInit, AfterViewInit, OnDestroy {
|
||||
viewbox.minimized = false
|
||||
|
||||
this.viewboxChanged()
|
||||
|
||||
// Refresh table after restoring
|
||||
setTimeout(() => {
|
||||
this.refreshTableAfterResize(viewbox)
|
||||
}, 100)
|
||||
}
|
||||
|
||||
collapse(viewbox: Viewbox) {
|
||||
@@ -723,6 +738,11 @@ export class ViewboxesComponent implements OnInit, AfterViewInit, OnDestroy {
|
||||
expand(viewbox: Viewbox) {
|
||||
viewbox.collapsed = false
|
||||
this.viewboxChanged()
|
||||
|
||||
// Refresh table after expanding
|
||||
setTimeout(() => {
|
||||
this.refreshTableAfterResize(viewbox)
|
||||
}, 100)
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1158,6 +1178,35 @@ export class ViewboxesComponent implements OnInit, AfterViewInit, OnDestroy {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* WORKAROUND: This is a workaround to calculate the height of the table since `100%`
|
||||
* makes hot not load
|
||||
* Calculate available height for Handsontable
|
||||
* @param viewbox The viewbox to calculate height for
|
||||
* @returns Available height in pixels
|
||||
*/
|
||||
calculateTableHeight(viewbox: Viewbox): number {
|
||||
// Calculate the exact height of the content div
|
||||
const dragHandleHeight = 20
|
||||
const searchFormHeight = 38
|
||||
// Return the exact remaining height for the table
|
||||
return viewbox.height - dragHandleHeight - searchFormHeight
|
||||
}
|
||||
|
||||
/**
|
||||
* Refresh Handsontable instance after resize
|
||||
* @param viewbox The viewbox to refresh
|
||||
*/
|
||||
refreshTableAfterResize(viewbox: Viewbox): void {
|
||||
const hotInstance = this.getViewboxHotInstance(viewbox.id)
|
||||
if (hotInstance) {
|
||||
// Force the table to recalculate its dimensions
|
||||
setTimeout(() => {
|
||||
hotInstance.refreshDimensions()
|
||||
}, 100)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param viewboxId
|
||||
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "dcfrontend",
|
||||
"version": "7.0.3",
|
||||
"version": "7.1.1",
|
||||
"description": "Data Controller",
|
||||
"devDependencies": {
|
||||
"@saithodev/semantic-release-gitea": "^2.1.0",
|
||||
|
Reference in New Issue
Block a user