7fd89678b7
# Introduction Avoid having multiple `isDefined` definition across our pacakges Also avoid importing `isDefined` from `twenty-ui` which exposes a huge barrel for a such little util function ## In a nutshell Removed own `isDefined.ts` definition from `twenty-ui` `twenty-front` and `twenty-server` to move it to `twenty-shared`. Updated imports for each packages, and added explicit dependencies to `twenty-shared` if not already in place Related PR https://github.com/twentyhq/twenty/pull/9941
16 lines
552 B
TypeScript
16 lines
552 B
TypeScript
import {
|
|
Workflow,
|
|
WorkflowVersion,
|
|
WorkflowWithCurrentVersion,
|
|
} from '@/workflow/types/Workflow';
|
|
import { isDefined } from 'twenty-shared';
|
|
|
|
// eslint-disable-next-line prefer-arrow/prefer-arrow-functions
|
|
export function assertWorkflowWithCurrentVersionIsDefined(
|
|
workflow: WorkflowWithCurrentVersion | undefined,
|
|
): asserts workflow is Workflow & { currentVersion: WorkflowVersion } {
|
|
if (!isDefined(workflow) || !isDefined(workflow.currentVersion)) {
|
|
throw new Error('Expected workflow and its current version to be defined');
|
|
}
|
|
}
|