feat: Test case movement (#290)
This commit is contained in:
19
frontend/utils/testCaseMoveEvent.ts
Normal file
19
frontend/utils/testCaseMoveEvent.ts
Normal file
@@ -0,0 +1,19 @@
|
||||
const eventBus = new EventTarget();
|
||||
const TEST_CASE_MOVE = 'testCasesMove';
|
||||
|
||||
type MoveEventDetail = {
|
||||
testCaseIds: number[];
|
||||
targetFolderId: number;
|
||||
};
|
||||
|
||||
export const emitMoveEvent = (ids: number[], targetFolderId: number) => {
|
||||
eventBus.dispatchEvent(
|
||||
new CustomEvent(TEST_CASE_MOVE, { detail: { testCaseIds: ids, targetFolderId: targetFolderId } })
|
||||
);
|
||||
};
|
||||
|
||||
export const onMoveEvent = (listener: (event: CustomEvent<MoveEventDetail>) => void) => {
|
||||
const handler = (e: Event) => listener(e as CustomEvent);
|
||||
eventBus.addEventListener(TEST_CASE_MOVE, handler);
|
||||
return () => eventBus.removeEventListener(TEST_CASE_MOVE, handler);
|
||||
};
|
||||
Reference in New Issue
Block a user