"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.MultiLineTextEditStories = void 0;
const jsx_runtime_1 = require("react/jsx-runtime");
const FormConfiguration_1 = require("../../FormConfiguration");
const FormRuntime_1 = require("../../FormRuntime");
const Containers_1 = require("../../Containers");
const LabelFormControl_1 = require("../Web/LabelFormControl");
const FormDesignConstants_1 = require("../../Utilities/FormDesignConstants");
const ExecutionData_1 = require("@appglue/common/dist/Common/Data/ExecutionData/ExecutionData");
const MultiLineTextEditFormControl_1 = require("../Web/MultiLineTextEditFormControl");
const StoryData_1 = require("../../../CommonUI/StoryBook/StoryData");
function getUI() {
    let ui = new FormConfiguration_1.FormConfiguration();
    let container = new Containers_1.XColumnContainer();
    let col1 = new Containers_1.XColumnContainerColumn();
    let col2 = new Containers_1.XColumnContainerColumn();
    col2.interControlSpacing = 20;
    container.add(col1);
    container.add(col2);
    ui.add(container);
    let label = new LabelFormControl_1.LabelFormControl();
    label.text = "Large Size";
    col1.add(label);
    let textField = new MultiLineTextEditFormControl_1.MultiLineTextEditFormControl();
    textField.label = "Text Field Label";
    textField.valueName = "value";
    textField.requiredOnAllOutcomes = false;
    col1.add(textField);
    textField = new MultiLineTextEditFormControl_1.MultiLineTextEditFormControl();
    textField.label = "Text Field Label";
    textField.style = FormDesignConstants_1.TextControlStyle.OUTLINE;
    textField.valueName = "value";
    textField.requiredOnAllOutcomes = false;
    textField.overrideStyle = true;
    col1.add(textField);
    textField = new MultiLineTextEditFormControl_1.MultiLineTextEditFormControl();
    textField.label = "Text Field Label";
    textField.style = FormDesignConstants_1.TextControlStyle.SHADED;
    textField.valueName = "value";
    textField.requiredOnAllOutcomes = false;
    textField.overrideStyle = true;
    col1.add(textField);
    textField = new MultiLineTextEditFormControl_1.MultiLineTextEditFormControl();
    textField.label = "Text Field Label";
    textField.valueName = "value";
    textField.style = FormDesignConstants_1.TextControlStyle.UNDERLINED;
    textField.requiredOnAllOutcomes = false;
    textField.overrideStyle = true;
    col1.add(textField);
    return { form: ui };
}
exports.MultiLineTextEditStories = [
    new StoryData_1.StoryNode(() => {
        let ui = getUI();
        return (0, jsx_runtime_1.jsx)(FormRuntime_1.FormRuntime, { form: ui.form });
    }, "Form Designer", "Controls", "Multi Line Text Edit", "Default"),
    new StoryData_1.StoryNode(() => {
        let ui = getUI();
        let controls = ui.form.getAllControls();
        for (let c of controls) {
            let ctf = c;
            if (ctf) {
                ctf.hintText = "hint text";
            }
        }
        return (0, jsx_runtime_1.jsx)(FormRuntime_1.FormRuntime, { form: ui.form });
    }, "Form Designer", "Controls", "Multi Line Text Edit", "With Hints"),
    new StoryData_1.StoryNode(() => {
        let ui = getUI();
        let controls = ui.form.getAllControls();
        for (let c of controls) {
            let ctf = c;
            if (ctf) {
                ctf.placeholderText = "placeholder text";
            }
        }
        return (0, jsx_runtime_1.jsx)(FormRuntime_1.FormRuntime, { form: ui.form });
    }, "Form Designer", "Controls", "Multi Line Text Edit", "With Placeholder"),
    new StoryData_1.StoryNode(() => {
        let ui = getUI();
        let controls = ui.form.getAllControls();
        for (let c of controls) {
            let ctf = c;
            if (ctf) {
                ctf.requiredOnAllOutcomes = true;
            }
        }
        return (0, jsx_runtime_1.jsx)(FormRuntime_1.FormRuntime, { form: ui.form });
    }, "Form Designer", "Controls", "Multi Line Text Edit", "With Validation"),
    new StoryData_1.StoryNode(() => {
        let ui = getUI();
        let data = new ExecutionData_1.ExecutionData();
        data.values["value"] = "text value";
        return (0, jsx_runtime_1.jsx)(FormRuntime_1.FormRuntime, { form: ui.form });
    }, "Form Designer", "Controls", "Multi Line Text Edit", "With Value"),
];
//# sourceMappingURL=XMultiLineTextEdit-stories.js.map