import preview from "#.storybook/preview"; import { createForm } from "@tanstack/solid-form"; import { createSignal } from "solid-js"; import { z } from "zod"; import { Checkbox } from "../../src/ts/components/ui/form/Checkbox"; import { InputField } from "../../src/ts/components/ui/form/InputField"; import { SubmitButton } from "../../src/ts/components/ui/form/SubmitButton"; import { fieldMandatory, fromSchema, } from "../../src/ts/components/ui/form/utils"; import { showNoticeNotification } from "../../src/ts/states/notifications"; import { sleep } from "../../src/ts/utils/misc"; const meta = preview.meta({ title: "UI/Form", parameters: { layout: "centered", }, tags: ["autodocs"], argTypes: {}, }); export const withValidation = meta.story({ render: () => { const form = createForm(() => ({ defaultValues: { username: "", password: "", rememberMe: true, }, onSubmit: async () => { setEditable(false); await sleep(1000); setEditable(true); }, onSubmitInvalid: () => { showNoticeNotification("Please fill in all fields"); }, })); const [isEditable, setEditable] = createSignal(true); return (