hunk.code_window:                   <Stack>
                       {channels.map((channel) => (
                         <div
                           key={channel.tabKey}
                           data-test-id={`dnd-${channel.testId}`}
                           onDragStart={(event) => onDragStart(event, channel.channelType)}
                           draggable
                         >
                           <DragButton Icon={channel.Icon} description={channel.description} label={channel.label} />
                         </div>
                       ))}
  
hunk.labels: keep keep keep keep keep replace keep keep keep keep keep
hunk.after_edit:                         onDragStart={(event) => {
                             setDragging(true);
                             onDragStart(event, channel.channelType);
                           }}
                           onDragEnd={() => {
                             setDragging(false);
                           }}
  
hunk.file_path: apps/web/src/pages/templates/workflow/WorkflowEditorPage.tsx
hunk.type: replace
file: import { ITheme } from './theme.interface';
  
  interface IThemeStorage {
    id: string;
    theme: ITheme;
  }
  
  export class ThemeStore {
    private themes: Array<IThemeStorage> = [];
  
    private defaultTheme?: ITheme;
  
    async addTheme(id: string, theme: ITheme) {
      this.themes.push({
        id,
        theme,
      });
  
      return await this.getThemeById(id);
    }
  
    async getThemeById(id: string) {
      return this.themes.find((theme) => theme.id === id)?.theme;
    }
  
    async setDefaultTheme(themeId: string) {
      this.defaultTheme = await this.getThemeById(themeId);
    }
  
    async getDefaultTheme() {
      return this.defaultTheme;
    }
  }
  