import { OkaydFormConfig, OkaydFormStep } from "../types" // TODO: Write tests for this. - @gfargo export const getStep = ( stepIndex: number, config: OkaydFormConfig, ): OkaydFormStep => config?.steps[stepIndex] export const getStepId = (stepIndex: number, config: OkaydFormConfig): string => getStep(stepIndex, config)?.stepId || undefined export const getStepIndex = ( stepId: string, config: OkaydFormConfig, ): number => { const stepIndex = config?.steps?.findIndex(step => step.stepId === stepId) return stepIndex >= 0 ? stepIndex : undefined } export const getStepType = ( stepIndex: number, config: OkaydFormConfig, ): string => getStep(stepIndex, config)?.stepType || undefined export const extractFieldIds = (step: OkaydFormStep): string[] => (step.stepType === `form` && step?.content?.fields?.map(field => field.fieldId)) || []