Hi everyone,
I’m trying to add a new export option (“Export to Tab”) that should appear inside the Map Popup’s Data Action list — alongside the existing actions such as Export CSV, Export GeoJSON, etc.

I understand that data actions can be managed via the DataActionManager class in jimu-core/lib/data-action-manager.
I attempted to register a new DataAction dynamically like this:
import { DataActionManager } from 'jimu-core';
const manager = DataActionManager.getInstance();
await manager.registerAction({
id: 'export-tab',
label: 'Export to Tab',
icon: 'export',
uri: '../data-actions/export-to-tab'
});
And my export-to-tab.ts looks like this:
import { AbstractDataAction, DataRecordSet, DataLevel } from 'jimu-core';
export default class ExportToTabAction extends AbstractDataAction {
id = 'export-tab';
label = 'Export to Tab';
icon = 'export';
async isSupported(dataSets: DataRecordSet[], dataLevel: DataLevel, widgetId: string): Promise<boolean> {
return dataSets?.length > 0;
}
async onExecute(dataSets: DataRecordSet[], dataLevel: DataLevel, widgetId: string): Promise<boolean> {
console.log('Export to Tab clicked:', dataSets);
return true;
}
}
The registration runs without any error, but my new “Export to Tab” option does not appear in the popup’s Data Action list when clicking on a feature in the map.
When I log manager.getActions(), I can see the built-in ones (like Export CSV, Export GeoJSON, etc.), but not my custom action.