Migrate ABViewGrid#722
Conversation
|
|
||
| const verticalScrollState = $DataTable.getScrollState().y, | ||
| rowHeight = $DataTable.config.rowHeight, | ||
| height = |
| if (!CurrentObject) return; | ||
|
|
||
| if (settings.isEditable === 0) { | ||
| const items = $DataTable.getItem(id); |
|
|
||
| const updateRow = async () => { | ||
| try { | ||
| const response = await CurrentObject.model().update( |
| * @param {event} event | ||
| */ | ||
| async onAfterColumnDrop(sourceId, targetId, event) { | ||
| const $DataTable = this.getDataTable(); |
| */ | ||
| async onAfterColumnDrop(sourceId, targetId, event) { | ||
| const $DataTable = this.getDataTable(); | ||
| const CurrentObject = this.datacollection.datasource; |
Lighthouse Performance ReportMetrics📄Full Report |
| dc.on("loadData", this.__handler_dc_loadData); | ||
| this.grouping(); | ||
|
|
||
| this._isDatacollectionLoad = true; |
There was a problem hiding this comment.
Is this _isDatacollectionLoad supposed to be the same as _isDatacollectionLoaded from line 147?
Also in line 993 in the component file
| selectRow(rowData) { | ||
| let id = rowData?.id ?? rowData; | ||
| if (this.__timeout_selectRow) { | ||
| console.log("Duplicate selectRow():", id); |
There was a problem hiding this comment.
console.log
johnny-hausman
left a comment
There was a problem hiding this comment.
Rework those files into your plugin.
| @@ -0,0 +1,2415 @@ | |||
| import ABPopupExport from "../../../views/ABViewGridPopupExport.js"; | |||
| import ABPopupMassUpdateClass from "../../../views/ABViewGridPopupMassUpdate.js"; | |||
There was a problem hiding this comment.
So both ABViewGridPopupExport and ABViewGridPopupMassUpdate are exclusively used with the Grid. So let's pull those files into your view_grid/ directory and include them.
The ABViewGridPopupSortFields is actually shared with ABViewDataFilter. So let's make this a shared resource in the ClassManager.getPluginAPI(). Since it isn't GRID ONLY, lets rename it to something like: ABViewPopupSortFields
| dc.on("loadData", this.__handler_dc_loadData); | ||
| this.grouping(); | ||
|
|
||
| this._isDatacollectionLoad = true; |
Migrated the Grid View to the new plugin architecture and resolved a critical crash in the List data field when handling empty selections.
Relate PR.
CruGlobal/plugin_ABDesigner#349
CruGlobal/appbuilder_class_core#343