"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.FieldsValidationSchema = exports.fields = void 0;
const extensions_core_1 = require("@awell-health/extensions-core");
const Task_1 = require("../../../../../src/lib/fhir/schemas/Task");
const resources_1 = require("../../../fhir/schemas/resources");
exports.fields = {
    patientId: {
        id: 'patientId',
        label: 'Patient ID',
        description: 'ID of the patient in Medplum the task is for',
        type: extensions_core_1.FieldType.STRING,
        required: true,
    },
    taskTitle: {
        id: 'taskTitle',
        label: 'Task name',
        description: 'Briefly describes what the task involves',
        type: extensions_core_1.FieldType.STRING,
        required: true,
    },
    description: {
        id: 'description',
        label: 'Description name',
        description: 'Human-readable explanation of task',
        type: extensions_core_1.FieldType.STRING,
        required: false,
    },
    status: {
        id: 'status',
        label: 'Status',
        description: 'The status of the task',
        type: extensions_core_1.FieldType.STRING,
        required: true,
        options: {
            dropdownOptions: Object.values(Task_1.TaskStatusSchema.enum).map((status) => ({
                label: status,
                value: status,
            })),
        },
    },
    intent: {
        id: 'intent',
        label: 'Intent',
        description: 'Indicates the "level" of actionability associated with the Task.',
        type: extensions_core_1.FieldType.STRING,
        required: true,
        options: {
            dropdownOptions: Object.values(Task_1.TaskIntentSchema.enum).map((intent) => ({
                label: intent,
                value: intent,
            })),
        },
    },
    priority: {
        id: 'priority',
        label: 'Priority',
        description: 'The priority of the task',
        type: extensions_core_1.FieldType.STRING,
        required: false,
        options: {
            dropdownOptions: Object.values(Task_1.PrioritySchema.enum).map((priority) => ({
                label: priority,
                value: priority,
            })),
        },
    },
    dueDate: {
        id: 'dueDate',
        label: 'Due date',
        description: '',
        type: extensions_core_1.FieldType.DATE,
        required: false,
    },
    performerType: {
        id: 'performerType',
        label: 'Performer type',
        description: 'Indicate which role can/should perform this task',
        type: extensions_core_1.FieldType.STRING,
        required: false,
    },
};
exports.FieldsValidationSchema = resources_1.CreateTaskSchema;
//# sourceMappingURL=fields.js.map