index.ts 752 B

1234567891011121314151617181920212223242526272829
  1. import {
  2. FreeLayoutPluginContext,
  3. ShortcutsHandler,
  4. WorkflowSelectService,
  5. } from '@flowgram.ai/free-layout-editor';
  6. import { FlowCommandId } from '../constants';
  7. export class ExpandShortcut implements ShortcutsHandler {
  8. public commandId = FlowCommandId.EXPAND;
  9. public commandDetail: ShortcutsHandler['commandDetail'] = {
  10. label: 'Expand',
  11. };
  12. public shortcuts = ['meta alt closebracket', 'ctrl alt openbracket'];
  13. private selectService: WorkflowSelectService;
  14. constructor(context: FreeLayoutPluginContext) {
  15. this.selectService = context.get(WorkflowSelectService);
  16. }
  17. public async execute(): Promise<void> {
  18. this.selectService.selectedNodes.forEach((node) => {
  19. node.renderData.expanded = true;
  20. });
  21. }
  22. }