import type { IFormCfg } from "../../../components/form/config/types"; const defaultCfg: IFormCfg = { /** Запрет на отправку формы клавишей `Enter` */ isPreventSubmitByEnter: true, /** Режим валидации полей "на лету" по событию `blur` */ isLiveValidation: false, /** Использование асинхронного метода отправки данных */ isUseFetch: true, /** Блокирование кнопки `submit` и добавление класса загрузки во время отправки данных */ isShowLoader: true, /** Адрес отправки формы, если не указан, то используется содержимое атрибута `action` либо текущая страница */ url: "./", /** Метод отправки формы, если не указан, то используется содержимое атрибута `method` */ method: "POST", /** Выборочная валидация формы по указанному селектору */ validateOnlySelector: "", /** Игнорирование отправки формы после успешной валидации */ isIgnoreAutoSend: false, /** Задержка перед показом успешной отправки формы */ successTimeOut: 0, /** Включение в запрос полей с атрибутом `disabled` */ isSerializeDisabledInputs: true, /** Включение в запрос полей с атрибутом `readOnly` */ isSerializeReadOnlyInputs: true, /** Подтверждение отправки */ isConfirmBeforeSubmit: false, /** Удаление пустых файлов из запроса */ isRemoveEmptyFiles: false, /** Кнопка, по которой форма отправляется. Вычисляется автоматически */ handler: null, /** Игнорирование валидации и мгновенная отправка */ isIgnoreValidation: false, /** Тип запроса. Может быть любым валидным типом, например "application/json" */ contentType: "auto", /** Прокрутка до первого неверного поля при валидации, если полей в форме более одного */ isScrollToFirstInvalidInput: true, /** Опции для метода отправки `getFromServer`, перезаписывающие `contentType`, `method` и `url` */ getFromServerOptions: { headers: { "X-Requested-With": "XMLHttpRequest", }, }, }; const selectors = { form: "[data-js-form]", formInput: "[data-js-input-required]", formBlock: "[data-js-form-block]", formInputMsg: "[data-js-form-input-msg]", inputs: "input, select, textarea, button", controlledInput: "[data-js-component-input]", greCaptcha: `[data-js-google-captcha] textarea`, }; export { defaultCfg, selectors, };