{"version":3,"file":"vee-validate-valibot-DwAkpg6s.js","sources":["../../src/lightspeed/components/form/FormControl.vue","../../node_modules/@vee-validate/valibot/dist/vee-validate-valibot.mjs"],"sourcesContent":["\n\n\n","/**\n * vee-validate v4.15.0\n * (c) 2024 Abdelrahman Awad\n * @license MIT\n */\nimport { isNotNestedPath, cleanupNonNestedPath } from 'vee-validate';\nimport { safeParseAsync, safeParse, getDefault, optional, getDotPath } from 'valibot';\n\nconst isObject = (obj) => obj !== null && !!obj && typeof obj === 'object' && !Array.isArray(obj);\nfunction isIndex(value) {\n return Number(value) >= 0;\n}\nfunction isObjectLike(value) {\n return typeof value === 'object' && value !== null;\n}\nfunction getTag(value) {\n if (value == null) {\n return value === undefined ? '[object Undefined]' : '[object Null]';\n }\n return Object.prototype.toString.call(value);\n}\n// Reference: https://github.com/lodash/lodash/blob/master/isPlainObject.js\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || getTag(value) !== '[object Object]') {\n return false;\n }\n if (Object.getPrototypeOf(value) === null) {\n return true;\n }\n let proto = value;\n while (Object.getPrototypeOf(proto) !== null) {\n proto = Object.getPrototypeOf(proto);\n }\n return Object.getPrototypeOf(value) === proto;\n}\nfunction merge(target, source) {\n Object.keys(source).forEach(key => {\n if (isPlainObject(source[key]) && isPlainObject(target[key])) {\n if (!target[key]) {\n target[key] = {};\n }\n merge(target[key], source[key]);\n return;\n }\n target[key] = source[key];\n });\n return target;\n}\n/**\n * Constructs a path with dot paths for arrays to use brackets to be compatible with vee-validate path syntax\n */\nfunction normalizeFormPath(path) {\n const pathArr = path.split('.');\n if (!pathArr.length) {\n return '';\n }\n let fullPath = String(pathArr[0]);\n for (let i = 1; i < pathArr.length; i++) {\n if (isIndex(pathArr[i])) {\n fullPath += `[${pathArr[i]}]`;\n continue;\n }\n fullPath += `.${pathArr[i]}`;\n }\n return fullPath;\n}\n\nfunction toTypedSchema(valibotSchema, config) {\n const schema = {\n __type: 'VVTypedSchema',\n async parse(value) {\n const result = await safeParseAsync(valibotSchema, value, config);\n if (result.success) {\n return {\n value: result.output,\n errors: [],\n };\n }\n const errors = {};\n processIssues(result.issues, errors);\n return {\n errors: Object.values(errors),\n };\n },\n cast(values) {\n if (valibotSchema.async) {\n return values;\n }\n const result = safeParse(valibotSchema, values, config);\n if (result.success) {\n return result.output;\n }\n const defaults = getDefault(optional(valibotSchema));\n if (isObject(defaults) && isObject(values)) {\n return merge(defaults, values);\n }\n return values;\n },\n describe(path) {\n try {\n if (!path) {\n return {\n required: !queryOptional(valibotSchema),\n exists: true,\n };\n }\n const pathSchema = getSchemaForPath(path, valibotSchema);\n if (!pathSchema) {\n return {\n required: false,\n exists: false,\n };\n }\n return {\n required: !queryOptional(pathSchema),\n exists: true,\n };\n }\n catch (_a) {\n if ((process.env.NODE_ENV !== 'production')) {\n // eslint-disable-next-line no-console\n console.warn(`Failed to describe path ${path} on the schema, returning a default description.`);\n }\n return {\n required: false,\n exists: false,\n };\n }\n },\n };\n return schema;\n}\nfunction processIssues(issues, errors) {\n issues.forEach(issue => {\n const path = normalizeFormPath(getDotPath(issue) || '');\n if (issue.issues) {\n processIssues(issue.issues.flatMap(ue => ue.issues || []), errors);\n if (!path) {\n return;\n }\n }\n if (!errors[path]) {\n errors[path] = { errors: [], path };\n }\n errors[path].errors.push(issue.message);\n });\n}\nfunction getSchemaForPath(path, schema) {\n if (!isObjectSchema(schema)) {\n return null;\n }\n if (isNotNestedPath(path)) {\n return schema.entries[cleanupNonNestedPath(path)];\n }\n const paths = (path || '').split(/\\.|\\[(\\d+)\\]/).filter(Boolean);\n let currentSchema = schema;\n for (let i = 0; i <= paths.length; i++) {\n const p = paths[i];\n if (!p || !currentSchema) {\n return currentSchema;\n }\n if (isObjectSchema(currentSchema)) {\n currentSchema = currentSchema.entries[p] || null;\n continue;\n }\n if (isIndex(p) && isArraySchema(currentSchema)) {\n currentSchema = currentSchema.item;\n }\n }\n return null;\n}\nfunction queryOptional(schema) {\n return schema.type === 'optional';\n}\nfunction isArraySchema(schema) {\n return isObject(schema) && 'item' in schema;\n}\nfunction isObjectSchema(schema) {\n return isObject(schema) && 'entries' in schema;\n}\n\nexport { toTypedSchema };\n"],"names":["error","formItemId","formDescriptionId","formMessageId","useFormField","isObject","obj","isIndex","value","isObjectLike","getTag","isPlainObject","proto","merge","target","source","key","normalizeFormPath","path","pathArr","fullPath","i","toTypedSchema","valibotSchema","config","result","safeParseAsync","errors","processIssues","values","safeParse","defaults","getDefault","optional","queryOptional","pathSchema","getSchemaForPath","issues","issue","getDotPath","ue","schema","isObjectSchema","isNotNestedPath","cleanupNonNestedPath","paths","currentSchema","p","isArraySchema"],"mappings":"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","x_google_ignoreList":[1]}