aport-tools 4.2.12 → 4.3.0
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/forms/index.d.ts +1 -0
- package/dist/index.esm.js +212 -107
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +211 -105
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.esm.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../node_modules/tslib/tslib.es6.js","../src/forms/FormContext.tsx","../src/fonts/Text.tsx","../src/forms/ErrorList.tsx","../src/forms/Input.tsx","../src/forms/TextArea.tsx","../src/forms/Label.tsx","../src/forms/InputList.tsx","../src/forms/InputAttach.tsx","../src/components/Button.tsx","../src/cards/Card.tsx"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n","// src/forms/FormContext.tsx\n\nimport React, { createContext, useState, ReactNode, useContext } from 'react';\n\ninterface FormContextProps {\n formValues: Record<string, any>;\n setFormValue: (name: string, value: any) => void;\n errors: Record<string, string[]>;\n setErrors: (errors: Record<string, string[]>) => void;\n handleSubmit: () => void;\n}\n\nconst FormContext = createContext<FormContextProps | undefined>(undefined);\n\nexport const useFormContext = () => {\n const context = useContext(FormContext);\n if (!context) {\n throw new Error(\"useFormContext must be used within a Form\");\n }\n return context;\n};\n\ninterface FormProps {\n children: ReactNode;\n onSubmit: (values: Record<string, any>) => Promise<Record<string, string[]>>; // Returns errors\n}\n\nexport const Form: React.FC<FormProps> = ({ children, onSubmit }) => {\n const [formValues, setFormValues] = useState<Record<string, any>>({});\n const [errors, setErrors] = useState<Record<string, string[]>>({});\n\n const setFormValue = (name: string, value: any) => {\n setFormValues(prev => ({ ...prev, [name]: value }));\n };\n\n const handleSubmit = async () => {\n const validationErrors = await onSubmit(formValues);\n \n // Set the validation errors in state\n setErrors(validationErrors);\n \n // Prevent submission if there are any errors\n if (Object.keys(validationErrors).length > 0) {\n return; // Prevent submission\n }\n \n };\n \n\n return (\n <FormContext.Provider value={{ formValues, setFormValue, errors, setErrors, handleSubmit }}>\n {children}\n </FormContext.Provider>\n );\n};\n","// src/fonts/Text.tsx\n\nimport { ThemeColors, ThemeContext, ThemeFonts } from 'aport-themes';\nimport React, { useContext } from 'react';\nimport { Text as RNText, StyleSheet, TextProps, TextStyle } from 'react-native';\n\ninterface CustomTextProps extends TextProps {\n /**\n * Content to be displayed inside the Text component.\n */\n children: React.ReactNode;\n\n /**\n * Size of the text. Defaults to 14.\n */\n size?: number;\n\n /**\n * If true, applies bold styling to the text.\n */\n b?: boolean;\n\n /**\n * If true, applies italic styling to the text.\n */\n i?: boolean;\n\n /**\n * If true, applies underline styling to the text.\n */\n u?: boolean;\n\n /**\n * Paragraph alignment. Can be 'left', 'center', or 'right'. Defaults to 'left'.\n */\n align?: 'left' | 'center' | 'right' | 'justify'; // Paragraph alignment\n\n /**\n * Text type. Defaults to 'text'. Should match the keys in ThemeColors.\n * This restricts type to known color keys like 'primary', 'error', etc.\n */\n type?: keyof ThemeColors;\n \n /**\n * Text font type. Defaults to 'body'. Should match the keys in ThemeFonts.\n * This restricts type to known fonts keys like 'primary', 'secundary', etc.\n */\n typeFont?: keyof ThemeFonts; // <-- New prop to select font type\n\n /**\n * Header level. Accepts 0 (none), 1, 2, or 3. Defaults to 0.\n */\n h?: 0 | 1 | 2 | 3;\n\n /**\n * Additional styles to apply to the Text component.\n */\n style?: TextStyle | TextStyle[];\n}\n\n/**\n * A dynamic Text component that supports HTML-like formatting.\n * Integrates with the Theme system for consistent styling.\n *\n * @param children - The content to be displayed inside the Text component.\n * @param size - Size of the text. Defaults to 'medium'.\n * @param b - If true, applies bold styling.\n * @param i - If true, applies italic styling.\n * @param type - Type of Text component. Defaults to 'text'.\n * @param typeFont - Type of Font component. Defaults to 'body'.\n * @param u - If true, applies underline styling.\n * @param align - Paragraph alignment. Defaults to 'left'.\n * @param h - Header level. Accepts 0 (none), 1, 2, or 3. Defaults to 0.\n * @param style - Additional styles to apply.\n */\nexport const Text: React.FC<CustomTextProps> = ({\n children,\n size = 14,\n b = false,\n i = false,\n u = false,\n align = 'left',\n type = 'text',\n typeFont = 'body',\n h = 0,\n style,\n}) => {\n const { theme } = useContext(ThemeContext);\n const { colors, fonts } = theme;\n\n // Determine font family and size based on 'typeFont'\n const fontSettings = fonts[typeFont] || fonts.body;\n const fontFamily = fontSettings.fontFamily;\n let fontSize = fontSettings.fontSize || size;\n\n // Calculate header size based on 'h' prop\n if (h === 1) fontSize = 32;\n else if (h === 2) fontSize = 24;\n else if (h === 3) fontSize = 18;\n \n // Define font weight based on bold prop\n const fontWeight = b ? '700' : fontSettings.fontWeight || '400';\n\n // Define font style based on italic prop\n const fontStyle = i ? 'italic' : 'normal';\n\n // Define text decoration based on underline prop\n const textDecorationLine = u ? 'underline' : 'none';\n\n // Define text alignment\n const textAlign: TextStyle['textAlign'] = align;\n // Map the 'type' prop to the correct color from the theme\n const textColor = colors[type]?.hex || colors.text.hex;\n \n // Combine all styles\n const textStyles: TextStyle = {\n fontSize,\n fontWeight,\n fontFamily,\n fontStyle,\n textDecorationLine,\n textAlign,\n color: textColor,\n };\n\n \n return (\n <RNText style={[textStyles, style]}>\n {children}\n </RNText>\n );\n};\n\nconst styles = StyleSheet.create({\n // Define any default styles if needed\n});\n\n","// src/forms/ErrorList.tsx\n\nimport React, { useContext } from 'react';\nimport { View, StyleSheet } from 'react-native';\nimport { Text } from '../fonts/Text';\nimport { ThemeContext } from 'aport-themes';\n\ninterface ErrorListProps {\n errors: string[];\n}\n\nconst ErrorList: React.FC<ErrorListProps> = ({ errors }) => {\n const { theme } = useContext(ThemeContext);\n const { colors } = theme;\n\n return (\n <View style={styles.container}>\n {errors.map((error, index) => (\n <View key={index} style={styles.errorItem}>\n <Text style={[styles.bullet, { color: colors.error.hex }]}>•</Text>\n <Text style={[styles.errorText, { color: colors.error.hex }]}>{error}</Text>\n </View>\n ))}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n marginTop: 4,\n },\n errorItem: {\n flexDirection: 'row',\n alignItems: 'flex-start',\n marginBottom: 2,\n },\n bullet: {\n marginRight: 4,\n fontSize: 12,\n },\n errorText: {\n flex: 1,\n fontSize: 12,\n },\n});\n\nexport default ErrorList;\n","// src/forms/Input.tsx\n\nimport React, { useContext } from \"react\";\nimport {\n TextInput,\n StyleSheet,\n View,\n TextInputProps,\n} from \"react-native\";\nimport { useFormContext } from \"./FormContext\";\nimport { Text } from \"../fonts/Text\";\nimport ErrorList from \"./ErrorList\";\nimport { ThemeContext } from \"aport-themes\";\n\n/**\n * Defines the props for the Input component.\n */\ninterface InputProps extends TextInputProps {\n /**\n * The unique identifier for the input field, used to manage its state within the form.\n */\n name: string;\n\n /**\n * The text label displayed above the input field.\n */\n label: string;\n\n /**\n * Specifies the type of input and applies corresponding formatting.\n * - 'phone': Formats input as a phone number (xxx-xxx-xxxx).\n * - 'id': Converts all input characters to uppercase (useful for IDs, passports).\n * - 'uppercase': Forces all input characters to uppercase (useful for codes).\n * - 'numeric': Restricts input to numeric characters only.\n */\n inputType?: \"phone\" | \"id\" | \"uppercase\" | \"numeric\";\n}\n\n/**\n * Input component that supports labels, error messages, and integrates with the Theme system.\n *\n * @param {InputProps} props - Props passed to the component.\n * @returns {JSX.Element} The rendered Input component.\n *\n * @example\n * <Input\n * name=\"email\"\n * label=\"Email\"\n * keyboardType=\"email-address\"\n * inputType=\"id\"\n * />\n */\nexport const Input: React.FC<InputProps> = ({\n name,\n label,\n inputType,\n style,\n ...rest\n}) => {\n const { formValues, setFormValue, errors: formErrors } = useFormContext();\n const { theme } = useContext(ThemeContext);\n const { colors } = theme;\n\n /**\n * Handles text changes in the input field, applying formatting based on the inputType.\n *\n * @param {string} text - The current text input by the user.\n */\n const handleChange = (text: string) => {\n let formattedText = text;\n\n // Apply different formatting based on inputType\n switch (inputType) {\n case \"phone\":\n // Remove all non-digit characters\n formattedText = text.replace(/\\D/g, \"\");\n // Insert hyphens to format as xxx-xxx-xxxx\n if (formattedText.length > 3 && formattedText.length <= 6) {\n formattedText = `${formattedText.slice(0, 3)}-${formattedText.slice(3)}`;\n } else if (formattedText.length > 6) {\n formattedText = `${formattedText.slice(0, 3)}-${formattedText.slice(\n 3,\n 6\n )}-${formattedText.slice(6, 10)}`;\n }\n break;\n case \"id\":\n case \"uppercase\":\n // Convert all input to uppercase\n formattedText = text.toUpperCase();\n break;\n case \"numeric\":\n // Allow only numeric input\n formattedText = text.replace(/\\D/g, \"\");\n break;\n default:\n break;\n }\n\n setFormValue(name, formattedText);\n };\n\n return (\n <View style={styles.container}>\n {/* Label */}\n <Text style={[styles.label, { color: colors.text.hex }]}>{label}</Text>\n\n {/* Input Field */}\n <TextInput\n style={[\n styles.input,\n {\n backgroundColor: colors.body.hex,\n borderColor: formErrors[name] ? colors.error.hex : \"#CCC\",\n color: colors.text.hex,\n },\n style,\n ]}\n value={formValues[name] || \"\"}\n onChangeText={handleChange}\n placeholder={label}\n placeholderTextColor={colors.placeHolder.hex} // Can use a lighter version if needed\n {...rest}\n />\n\n {/* Display errors only if form has been submitted and there are errors */}\n {formErrors[name] && formErrors[name].length > 0 && (\n <ErrorList errors={formErrors[name]} />\n )}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n marginBottom: 16,\n },\n label: {\n marginBottom: 4,\n fontSize: 14,\n },\n input: {\n height: 40,\n borderWidth: 1,\n borderRadius: 4,\n paddingHorizontal: 8,\n },\n});\n","// src/forms/TextArea.tsx\n\nimport React, { useContext } from 'react';\nimport { TextInput, StyleSheet, View, TextInputProps } from 'react-native';\nimport { useFormContext } from './FormContext';\nimport { Text } from '../fonts/Text'; // Assuming the Text component is exported from fonts\nimport ErrorList from './ErrorList';\nimport { ThemeContext } from 'aport-themes';\n\ninterface TextAreaProps extends TextInputProps {\n name: string;\n label: string;\n errors?: string[]; // Optional prop to directly pass errors\n}\n\nconst TextArea: React.FC<TextAreaProps> = ({ name, label, errors, style, ...rest }) => {\n const { formValues, setFormValue, errors: formErrors } = useFormContext();\n const { theme } = useContext(ThemeContext);\n const { colors } = theme;\n\n const handleChange = (text: string) => {\n setFormValue(name, text);\n };\n\n return (\n <View style={styles.container}>\n <Text style={[styles.label, {color: colors.text.hex}]}>{label}</Text>\n <TextInput\n style={[\n styles.textArea,\n style,\n {backgroundColor: colors.body.hex, color: colors.text.hex, borderColor: colors.placeHolder.hex}\n ]}\n value={formValues[name] || ''}\n onChangeText={handleChange}\n placeholder={label}\n placeholderTextColor=\"#888\" // Can be themed if needed\n multiline\n numberOfLines={4}\n textAlignVertical=\"top\"\n {...rest}\n />\n {/* Display errors only if form has been submitted and there are errors */}\n {formErrors[name] && formErrors[name].length > 0 && (\n <ErrorList errors={formErrors[name]} />\n )}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n marginBottom: 16,\n },\n label: {\n marginBottom: 4,\n },\n textArea: {\n height: 100,\n borderWidth: 1,\n borderRadius: 4,\n paddingHorizontal: 8,\n paddingVertical: 8,\n },\n});\n\nexport default TextArea;\n","// src/forms/Label.tsx\n\nimport React, { useContext } from 'react';\nimport { StyleSheet } from 'react-native';\nimport { Text } from '../fonts/Text';\nimport { ThemeContext } from 'aport-themes';\n\ninterface LabelProps {\n text: string;\n style?: any;\n}\n\nconst Label: React.FC<LabelProps> = ({ text, style }) => {\n const { theme } = useContext(ThemeContext);\n const { colors } = theme;\n return <Text style={[styles.label, style, { color: colors.text.hex }]}>{text}</Text>;\n};\n\nconst styles = StyleSheet.create({\n label: {\n marginBottom: 4,\n fontWeight: '500',\n },\n});\n\nexport default Label;\n","import React, { useState, useRef, useCallback, useContext } from 'react';\nimport { View, Text, TouchableOpacity, FlatList, TextInput, StyleSheet, Modal, Pressable, Keyboard } from 'react-native';\nimport { ThemeContext } from \"aport-themes\";\nimport { useFormContext } from '../forms/FormContext';\n\ninterface Option {\n id: number | string;\n label: string;\n value: any;\n}\n\ninterface InputListProps {\n name: string;\n /**\n * Placeholder text displayed in the input box when no selection is made.\n * @type {string}\n * @default \"Choose value/s\"\n */\n placeholder?: string;\n \n /**\n * Custom styles for the component.\n * @type {object}\n */\n style?: object;\n\n /**\n * Array of options to display in the dropdown. Each option should have an id, label, and value.\n * @type {Option[]}\n */\n options: Option[];\n\n /**\n * Enables multi-selection mode when true. If enabled, users can select multiple values.\n * @type {boolean}\n * @default false\n */\n multi?: boolean;\n\n /**\n * Disables the dropdown input when true.\n * @type {boolean}\n * @default false\n */\n disabled?: boolean;\n\n /**\n * Key used to sort options in the dropdown (e.g., by 'id', 'label').\n * @type {keyof Option}\n */\n sortBy?: keyof Option;\n\n /**\n * If true, displays a separator line between each option.\n * @type {boolean}\n * @default false\n */\n separator?: boolean;\n\n /**\n * Closes the dropdown if the user scrolls the list.\n * @type {boolean}\n * @default false\n */\n closeOnScroll?: boolean;\n\n /**\n * Closes the dropdown after selecting an item if true (only relevant when multi is false).\n * @type {boolean}\n * @default true\n */\n closeOnSelect?: boolean;\n\n /**\n * Limits the maximum number of items that can be selected when multi is true.\n * Once the limit is reached, the dropdown closes, and no further selections can be made until\n * an item is deselected.\n * @type {number}\n */\n maxSelection?: number;\n\n /**\n * Callback function called when the selection changes. Useful for conditional field enabling.\n * @param {Option | Option[] | null} selection - The updated selection.\n */\n onChange?: (selection: Option | Option[] | null) => void;\n}\n\n/**\n * InputList component - A custom dropdown list component for React Native with multi-selection support,\n * customizable styling, sorting, and configurable close behavior on selection or scrolling.\n *\n * @param {string} placeholder - Placeholder text for the input.\n * @param {object} style - Custom styles for the component.\n * @param {Option[]} options - Array of options to display in the dropdown.\n * @param {boolean} multi - Enables multi-selection mode.\n * @param {boolean} disabled - Disables the dropdown input.\n * @param {keyof Option} sortBy - Key to sort options by (e.g., 'id').\n * @param {boolean} separator - If true, adds a separator line between options.\n * @param {boolean} closeOnScroll - Closes the dropdown if the user scrolls the list.\n * @param {boolean} closeOnSelect - Closes the dropdown on selection in single-select mode.\n * @param {number} maxSelection - Maximum number of items selectable in multi-select mode.\n */\nexport const InputList: React.FC<InputListProps> = ({\n name,\n placeholder = \"Choose value/s\",\n style,\n options,\n multi = false,\n disabled = false,\n sortBy,\n separator = false,\n closeOnScroll = false,\n closeOnSelect = true,\n maxSelection,\n onChange,\n}) => {\n const { formValues, setFormValue } = useFormContext();\n const [isDropdownVisible, setIsDropdownVisible] = useState(false);\n \n const selectedOptions = formValues[name] || (multi ? [] : null);\n const sortedOptions = sortBy ? [...options].sort((a, b) => (a[sortBy] > b[sortBy] ? 1 : -1)) : options;\n const { theme } = useContext(ThemeContext);\n const { colors } = theme;\n\n /**\n * Handles selection of an option. Adds or removes the option from selectedOptions based on\n * multi-selection and maxSelection criteria.\n * @param {Option} option - The selected option object.\n */\n const handleSelectOption = (option: Option) => {\n let updatedSelections;\n\n if (multi) {\n const alreadySelected = selectedOptions.some((opt: Option) => opt.id === option.id);\n updatedSelections = alreadySelected\n ? selectedOptions.filter((opt: Option) => opt.id !== option.id)\n : [...selectedOptions, option];\n\n if (!alreadySelected && maxSelection && updatedSelections.length >= maxSelection) {\n setIsDropdownVisible(false);\n }\n\n setFormValue(name, updatedSelections);\n } else {\n updatedSelections = option;\n setFormValue(name, option);\n if (closeOnSelect) setIsDropdownVisible(false);\n }\n\n // Trigger onChange callback with the updated selection\n if (onChange) {\n onChange(updatedSelections);\n }\n };\n\n\n\n /**\n * Renders selected options as a comma-separated string or the placeholder if none selected.\n * @returns {string} - The display text for selected options or placeholder.\n */\n const renderSelectedText = () => {\n if (multi) return selectedOptions.map((opt: Option) => opt.label).join(', ') || placeholder;\n return selectedOptions?.label || placeholder;\n };\n\n /**\n * Toggles dropdown visibility. Disables toggle if the component is disabled.\n */\n const toggleDropdown = () => {\n if (!disabled) {\n setIsDropdownVisible(!isDropdownVisible);\n if (!isDropdownVisible) Keyboard.dismiss();\n }\n };\n\n /**\n * Closes the dropdown when pressing outside.\n */\n const handleCloseDropdown = useCallback(() => {\n if (isDropdownVisible) setIsDropdownVisible(false);\n }, [isDropdownVisible]);\n\n // Conditionally render item as disabled if max selection reached and item is unselected\n const isItemDisabled = (option: Option) => {\n return (\n multi &&\n maxSelection &&\n selectedOptions.length >= maxSelection &&\n !selectedOptions.some((opt: Option) => opt.id === option.id)\n );\n };\n\n\n return (\n <View style={[styles.container, style]}>\n <Text style={{color: colors.text.hex,marginBottom: 4,\n}}>{name}</Text>\n\n <TouchableOpacity style={styles.inputContainer} onPress={toggleDropdown} disabled={disabled}>\n <Text style={{color: colors.text.hex}}>{renderSelectedText()}</Text>\n </TouchableOpacity>\n \n <Modal visible={isDropdownVisible} transparent animationType=\"fade\">\n <Pressable style={styles.overlay} onPress={handleCloseDropdown} />\n <View style={[styles.dropdownContainer,{backgroundColor: colors.body.hex,\n}]}>\n <FlatList\n data={sortedOptions}\n keyExtractor={(item) => item.id.toString()}\n renderItem={({ item }) => {\nconst isSelected = multi\n ? (selectedOptions as Option[]).some((opt: Option) => opt.id === item.id)\n : selectedOptions?.id === item.id;\n const isDisabled = isItemDisabled(item);\n\n return (\n <TouchableOpacity\n onPress={() => handleSelectOption(item)}\n style={[\n styles.optionItem,\n isSelected ? {backgroundColor: colors.primary.hex} : {},\n isDisabled ? {backgroundColor: colors.placeHolder.hex} : {},\n ]}\n disabled={!!isDisabled} // Ensure disabled prop is a boolean\n >\n <Text style={[isSelected ? {color: colors.body.hex}: {color: colors.text.hex}, isDisabled ? styles.disabledText : {}]}>\n {item.label}\n </Text>\n </TouchableOpacity>\n );\n }}\n ItemSeparatorComponent={() => (separator ? <View style={styles.separator} /> : null)}\n scrollEnabled={!closeOnScroll}\n />\n </View>\n </Modal>\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: { },\n inputContainer: { padding: 12, borderWidth: 1, borderColor: '#ccc', borderRadius: 5 },\n dropdownContainer: {\n position: 'absolute',\n top: '30%', // Center the dropdown vertically\n alignSelf: 'center',\n width: '90%',\n backgroundColor: '#fff',\n borderRadius: 8,\n elevation: 5,\n paddingVertical: 10,\n },\n optionItem: { padding: 12 },\n disabledText: { color: '#999' },\n separator: { height: 1, backgroundColor: '#ddd', marginHorizontal: 8 },\n overlay: { flex: 1, backgroundColor: 'rgba(0,0,0,0.3)' },\n});\n","// src/components/InputAttach.tsx\n\nimport React, { useContext, useState } from \"react\";\nimport { View, TouchableOpacity, Image, StyleSheet, Alert } from \"react-native\";\nimport { useFormContext } from \"./FormContext\";\nimport * as ImagePicker from \"expo-image-picker\";\nimport { Text } from \"../fonts\";\nimport { ThemeContext } from \"aport-themes\";\n\ninterface FileData {\n uri: string;\n name: string;\n type: string;\n}\n\ninterface InputAttachProps {\n name: string;\n type?: string[]; // Accepted file types\n amount?: number; // Maximum number of files\n disabled?: boolean; // If the input is pressable\n placeholder?: string; // Placeholder text\n}\n\nconst InputAttach: React.FC<InputAttachProps> = ({\n name,\n type = [\"png\", \"jpg\", \"jpeg\"],\n amount = 1,\n disabled = false,\n placeholder = \"Upload an image\",\n}) => {\n const { setFormValue, formValues, errors } = useFormContext();\n const [selectedFiles, setSelectedFiles] = useState<FileData[]>([]);\n const { theme } = useContext(ThemeContext);\n const { colors } = theme;\n\n const pickImage = async () => {\n if (disabled) return;\n\n const permissionResult = await ImagePicker.requestMediaLibraryPermissionsAsync();\n if (!permissionResult.granted) {\n Alert.alert(\"Permission Required\", \"We need access to your photos to upload images.\");\n return;\n }\n\n const result = await ImagePicker.launchImageLibraryAsync({\n mediaTypes: ImagePicker.MediaTypeOptions.Images,\n allowsMultipleSelection: amount > 1,\n quality: 1,\n });\n\n if (!result.canceled) {\n const selectedAssets = result.assets || [result]; // Handle different return formats\n const newFiles: FileData[] = selectedAssets.map((asset) => ({\n uri: asset.uri,\n name: asset.fileName || \"unknown.jpg\",\n type: asset.mimeType || \"image/jpeg\",\n }));\n\n // Validate file types\n const invalidFiles = newFiles.filter(\n (file) => !type.some((ext) => file.name.toLowerCase().endsWith(ext))\n );\n if (invalidFiles.length > 0) {\n Alert.alert(\"Invalid File Type\", `Please upload files of type: ${type.join(\", \")}`);\n return;\n }\n\n // Check max amount\n if (selectedFiles.length + newFiles.length > amount) {\n Alert.alert(\"Limit Exceeded\", `You can upload up to ${amount} files.`);\n return;\n }\n\n const updatedFiles = [...selectedFiles, ...newFiles].slice(0, amount);\n setSelectedFiles(updatedFiles);\n setFormValue(name, updatedFiles); // Update form context\n }\n };\n\n const removeFile = (index: number) => {\n const updatedFiles = selectedFiles.filter((_, i) => i !== index);\n setSelectedFiles(updatedFiles);\n setFormValue(name, updatedFiles); // Update form context\n };\n\n return (\n <View style={styles.container}>\n <Text style={[styles.label,{ color: colors.text.hex }]}>{placeholder}</Text>\n <View style={styles.fileContainer}>\n {selectedFiles.map((file, index) => (\n <View key={index} style={styles.fileItem}>\n <Image source={{ uri: file.uri }} style={styles.imagePreview} />\n <TouchableOpacity onPress={() => removeFile(index)} style={[styles.removeButton,{ backgroundColor: colors.error.hex }]}>\n <Text style={styles.removeButtonText}>X</Text>\n </TouchableOpacity>\n </View>\n ))}\n {selectedFiles.length < amount && (\n <TouchableOpacity onPress={pickImage} style={[styles.addButton,{ backgroundColor: colors.body.hex }]} disabled={disabled}>\n <Text style={[styles.addButtonText,{ color: colors.placeHolder.hex }]}>+</Text>\n </TouchableOpacity>\n )}\n </View>\n {errors[name] && <Text style={[styles.error,{ color: colors.error.hex }]}>{errors[name].join(\", \")}</Text>}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: { marginVertical: 10 },\n label: {marginBottom: 5 },\n fileContainer: { flexDirection: \"row\", flexWrap: \"wrap\", gap: 10 },\n fileItem: { position: \"relative\", width: 100, height: 100, marginRight: 10 },\n imagePreview: { width: \"100%\", height: \"100%\", borderRadius: 5 },\n removeButton: {\n position: \"absolute\",\n top: 0,\n right: 0,\n width: 20,\n height: 20,\n justifyContent: \"center\",\n alignItems: \"center\",\n borderRadius: 10,\n },\n removeButtonText: { color: \"#fff\", fontWeight: \"bold\" },\n addButton: {\n width: 100,\n height: 100,\n justifyContent: \"center\",\n alignItems: \"center\",\n borderRadius: 5,\n },\n addButtonText: { fontSize: 24 },\n error: { marginTop: 5 },\n});\n\nexport default InputAttach;\n","// src/components/Button.tsx\n\nimport React, { useMemo, useContext } from 'react';\nimport { Text, ViewStyle, StyleSheet, TouchableOpacity, ActivityIndicator } from 'react-native';\nimport { useFormContext } from '../forms';\nimport { ThemeColors, ThemeContext } from 'aport-themes';\n\n/**\n * Interface for the props that the Button component accepts.\n */\ninterface ButtonProps {\n /**\n * If true, the button is disabled and not pressable.\n */\n disabled?: boolean;\n\n /**\n * If true, the button expands to full width of its container.\n */\n isFullWidth?: boolean;\n\n /**\n * Text content of the button.\n */\n children?: string;\n\n /**\n * Function to call when the button is pressed.\n */\n onPress?: () => void;\n\n /**\n * If true, the button has rounded corners.\n */\n rounded?: boolean;\n\n /**\n * Custom border radius value. Overrides the `rounded` prop if provided.\n */\n borderRadius?: number;\n\n /**\n * Specifies the button type for styling. Can be 'submit', 'button', or 'cancel'.\n */\n type?: 'submit' | 'button' | 'cancel';\n\n /**\n * If true, a loading spinner is shown and the button is disabled.\n */\n loading?: boolean;\n}\n\n/**\n * Determines the styles based on the button type and whether it is disabled.\n *\n * @param type - The type of the button ('submit', 'button', 'cancel').\n * @param disabled - Whether the button is disabled.\n * @param themeColors - The theme colors.\n * @returns The computed style for the button.\n */\nfunction typeStyles(\n type?: string,\n disabled?: boolean,\n themeColors?: ThemeColors\n): ViewStyle {\n switch (type) {\n case 'submit':\n return {\n backgroundColor: `rgba(${themeColors?.primary.rgb.r}, ${themeColors?.primary.rgb.g}, ${themeColors?.primary.rgb.b}, ${\n disabled ? 0.5 : 1\n })`,\n borderWidth: 2,\n borderColor: themeColors?.primary.hex,\n };\n case 'button':\n return {\n backgroundColor: themeColors?.primary.hex,\n borderColor: themeColors?.secondary.hex,\n opacity: disabled ? 0.5 : 1,\n borderWidth: 2,\n };\n case 'cancel':\n return {\n backgroundColor: themeColors?.background.hex,\n borderWidth: 0,\n };\n default:\n return {};\n }\n}\n\n/**\n * Button component that adapts its styles based on the current theme.\n * Supports dynamic styling, full-width option, rounded corners, and different types.\n *\n * @param disabled - If true, the button is disabled and not pressable.\n * @param isFullWidth - If true, the button expands to full width of its container.\n * @param children - Text content of the button.\n * @param onPress - Function to call when the button is pressed.\n * @param rounded - If true, the button has rounded corners.\n * @param borderRadius - Custom border radius value. Overrides the `rounded` prop if provided.\n * @param type - Specifies the button type for styling ('submit', 'button', 'cancel').\n */\nexport const Button: React.FC<ButtonProps> = ({\n children,\n disabled = false,\n type = 'button',\n rounded = true,\n borderRadius = 30,\n isFullWidth = false,\n loading = false,\n onPress,\n}) => {\n const { theme } = useContext(ThemeContext);\n const { colors } = theme;\n const { handleSubmit } = useFormContext();\n\n const computedStyles = useMemo(() => {\n return StyleSheet.flatten([\n styles.button,\n typeStyles(type, disabled, colors),\n rounded && { borderRadius },\n isFullWidth && { width: '100%' },\n (disabled || loading) && styles.disabled,\n ]);\n }, [type, disabled, loading, rounded, borderRadius, isFullWidth, colors]);\n\n const textColor = useMemo(() => {\n return type === \"cancel\" ? { color: colors.text.hex } : { color: colors.textButton.hex };\n }, [type, colors]);\n\n const handlePress = () => {\n if (type === 'submit') {\n handleSubmit(); // Call the form's submit handler\n } else if (onPress) {\n onPress(); // Call a custom handler if needed\n }\n };\n\n\n return (\n <TouchableOpacity\n style={computedStyles as ViewStyle}\n disabled={disabled || loading}\n onPress={handlePress}\n activeOpacity={0.7}\n >\n {loading ? ( // Show loading spinner if loading\n <ActivityIndicator size=\"small\" color={colors.textButton.hex} />\n ) : (\n <Text style={textColor}>\n {Array.isArray(children) ? children.join('').toUpperCase() : children?.toUpperCase()}\n </Text>\n )}\n </TouchableOpacity>\n );\n};\n\nconst styles = StyleSheet.create({\n button: {\n justifyContent: 'center',\n alignItems: 'center',\n paddingVertical: 10,\n paddingHorizontal: 20,\n },\n disabled: {\n opacity: 0.6,\n },\n});\n\n","// src/cards/Card.tsx\n\nimport { ThemeContext } from 'aport-themes';\nimport React, { useContext } from 'react';\nimport {\n View,\n StyleSheet,\n StyleProp,\n ViewStyle,\n Platform,\n TouchableOpacity,\n GestureResponderEvent,\n} from 'react-native';\n\n/**\n * Interface for the props that the Card component accepts.\n */\ninterface CardProps {\n /**\n * Content to be rendered inside the Card.\n */\n children: React.ReactNode;\n\n /**\n * Style to be applied to the Card container.\n */\n style?: StyleProp<ViewStyle>;\n\n /**\n * Function to call when the Card is pressed.\n */\n onPress?: (event: GestureResponderEvent) => void;\n\n /**\n * Whether the Card is pressable. Defaults to false.\n */\n pressable?: boolean;\n\n /**\n * Border radius of the Card. Defaults to 12.\n */\n borderRadius?: number;\n\n /**\n * Elevation of the Card (Android only).\n */\n elevation?: number;\n\n /**\n * Shadow properties for iOS.\n */\n shadowProps?: {\n shadowColor?: string;\n shadowOffset?: { width: number; height: number };\n shadowOpacity?: number;\n shadowRadius?: number;\n };\n}\n\n/**\n * Card component that adapts its styles based on the current theme.\n * Supports dynamic styling, shadows, and press animations.\n *\n * @param children - The content to be displayed inside the Card.\n * @param style - Additional styles to apply to the Card.\n * @param onPress - Function to execute when the Card is pressed.\n * @param pressable - Determines if the Card is pressable. Defaults to false.\n * @param borderRadius - Border radius of the Card. Defaults to 12.\n * @param elevation - Elevation for Android shadow. Overrides default.\n * @param shadowProps - Custom shadow properties for iOS. Overrides defaults.\n */\nexport const Card: React.FC<CardProps> = ({\n children,\n style,\n onPress,\n pressable = false,\n borderRadius = 12,\n elevation = 4,\n shadowProps = {},\n }) => {\n const { theme } = useContext(ThemeContext);\n const { colors } = theme;\n \n // Animation state for pressable effect\n // Default shadow styles (improved platform-specific handling)\n const defaultShadow = Platform.select({\n ios: {\n shadowColor: shadowProps?.shadowColor || colors.text.hex, // Defaulting to theme text color\n shadowOffset: shadowProps?.shadowOffset || { width: 0, height: 2 },\n shadowOpacity: shadowProps?.shadowOpacity || 0.1,\n shadowRadius: shadowProps?.shadowRadius || 4,\n },\n android: {\n elevation: elevation, // Only applies to Android\n },\n });\n \n const cardStyles = [\n styles.container,\n { borderRadius, backgroundColor: colors.background.hex },\n defaultShadow, // Dynamic shadows based on platform\n style, // External styles\n ];\n \n return pressable ? (\n <TouchableOpacity\n activeOpacity={0.8}\n onPress={onPress}\n \n style={cardStyles}\n >\n \n {children}\n </TouchableOpacity>\n ) : (\n <View style={cardStyles}>\n {children}\n </View>\n );\n };\n \n const styles = StyleSheet.create({\n container: {\n padding: 16,\n borderRadius: 12,\n // Shadows handled dynamically with platform logic\n },\n });\n\n"],"names":["FormContext","createContext","undefined","useFormContext","context","useContext","Error","Form","_a","children","onSubmit","_b","useState","formValues","setFormValues","_c","errors","setErrors","setFormValue","name","value","prev","handleSubmit","__awaiter","validationErrors","sent","Object","keys","length","React","createElement","Provider","Text","size","_d","b","_e","i","_f","u","_g","align","_h","type","_j","typeFont","_k","h","style","theme","ThemeContext","colors","fonts","fontSettings","body","fontFamily","fontSize","fontWeight","fontStyle","textDecorationLine","textAlign","textColor","hex","text","textStyles","color","RNText","StyleSheet","create","ErrorList","View","styles","container","map","error","index","key","errorItem","bullet","errorText","marginTop","flexDirection","alignItems","marginBottom","marginRight","flex","Input","label","inputType","rest","__rest","formErrors","handleChange","formattedText","replace","concat","slice","toUpperCase","TextInput","__assign","input","backgroundColor","borderColor","onChangeText","placeholder","placeholderTextColor","placeHolder","height","borderWidth","borderRadius","paddingHorizontal","TextArea","textArea","multiline","numberOfLines","textAlignVertical","paddingVertical","Label","InputList","options","multi","disabled","sortBy","separator","closeOnScroll","closeOnSelect","maxSelection","onChange","isDropdownVisible","setIsDropdownVisible","selectedOptions","sortedOptions","__spreadArray","sort","a","handleSelectOption","option","updatedSelections","alreadySelected","some","opt","id","filter","renderSelectedText","join","toggleDropdown","Keyboard","dismiss","handleCloseDropdown","useCallback","isItemDisabled","TouchableOpacity","inputContainer","onPress","Modal","visible","transparent","animationType","Pressable","overlay","dropdownContainer","FlatList","data","keyExtractor","item","toString","renderItem","isSelected","isDisabled","optionItem","primary","disabledText","ItemSeparatorComponent","scrollEnabled","padding","position","top","alignSelf","width","elevation","marginHorizontal","InputAttach","amount","selectedFiles","setSelectedFiles","pickImage","ImagePicker","requestMediaLibraryPermissionsAsync","permissionResult","granted","Alert","alert","launchImageLibraryAsync","mediaTypes","MediaTypeOptions","Images","allowsMultipleSelection","quality","result","canceled","selectedAssets","assets","newFiles","asset","uri","fileName","mimeType","invalidFiles","file","ext","toLowerCase","endsWith","updatedFiles","removeFile","_","fileContainer","fileItem","Image","source","imagePreview","removeButton","removeButtonText","addButton","addButtonText","marginVertical","flexWrap","gap","right","justifyContent","typeStyles","themeColors","rgb","r","g","secondary","opacity","background","Button","rounded","isFullWidth","loading","computedStyles","useMemo","flatten","button","textButton","handlePress","activeOpacity","ActivityIndicator","Array","isArray","Card","pressable","shadowProps","defaultShadow","Platform","select","ios","shadowColor","shadowOffset","shadowOpacity","shadowRadius","android","cardStyles"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAeA;AACO,IAAI,QAAQ,GAAG,WAAW;AACjC,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,QAAQ,CAAC,CAAC,EAAE;AACrD,QAAQ,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;AAC7D,YAAY,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAC7B,YAAY,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACzF,SAAS;AACT,QAAQ,OAAO,CAAC,CAAC;AACjB,MAAK;AACL,IAAI,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AAC3C,EAAC;AACD;AACO,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE;AAC7B,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;AACf,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;AACvF,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACpB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;AACvE,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAChF,YAAY,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1F,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClC,SAAS;AACT,IAAI,OAAO,CAAC,CAAC;AACb,CAAC;AA6DD;AACO,SAAS,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE;AAC7D,IAAI,SAAS,KAAK,CAAC,KAAK,EAAE,EAAE,OAAO,KAAK,YAAY,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,UAAU,OAAO,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;AAChH,IAAI,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,OAAO,EAAE,MAAM,EAAE;AAC/D,QAAQ,SAAS,SAAS,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;AACnG,QAAQ,SAAS,QAAQ,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;AACtG,QAAQ,SAAS,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,EAAE;AACtH,QAAQ,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9E,KAAK,CAAC,CAAC;AACP,CAAC;AACD;AACO,SAAS,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE;AAC3C,IAAI,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,QAAQ,KAAK,UAAU,GAAG,QAAQ,GAAG,MAAM,EAAE,SAAS,CAAC,CAAC;AACrM,IAAI,OAAO,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,WAAW,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAChK,IAAI,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,OAAO,UAAU,CAAC,EAAE,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;AACtE,IAAI,SAAS,IAAI,CAAC,EAAE,EAAE;AACtB,QAAQ,IAAI,CAAC,EAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;AACtE,QAAQ,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI;AACtD,YAAY,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AACzK,YAAY,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AACpD,YAAY,QAAQ,EAAE,CAAC,CAAC,CAAC;AACzB,gBAAgB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM;AAC9C,gBAAgB,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACxE,gBAAgB,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;AACjE,gBAAgB,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS;AACjE,gBAAgB;AAChB,oBAAoB,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE;AAChI,oBAAoB,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE;AAC1G,oBAAoB,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;AACzF,oBAAoB,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE;AACvF,oBAAoB,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;AAC1C,oBAAoB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS;AAC3C,aAAa;AACb,YAAY,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;AACvC,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;AAClE,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACzF,KAAK;AACL,CAAC;AA8DD;AACO,SAAS,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;AAC9C,IAAI,IAAI,IAAI,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;AACzF,QAAQ,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE;AAChC,YAAY,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACjE,YAAY,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AAC5B,SAAS;AACT,KAAK;AACL,IAAI,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7D,CAAC;AAiGD;AACuB,OAAO,eAAe,KAAK,UAAU,GAAG,eAAe,GAAG,UAAU,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE;AACvH,IAAI,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AAC/B,IAAI,OAAO,CAAC,CAAC,IAAI,GAAG,iBAAiB,EAAE,CAAC,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC,UAAU,GAAG,UAAU,EAAE,CAAC,CAAC;AACrF;;AClUA;AAYA,IAAMA,WAAW,gBAAGC,aAAa,CAA+BC,SAAS,CAAC,CAAA;IAE7DC,cAAc,GAAG,SAAjBA,cAAcA,GAAG;AAC5B,EAAA,IAAMC,OAAO,GAAGC,UAAU,CAACL,WAAW,CAAC,CAAA;EACvC,IAAI,CAACI,OAAO,EAAE;AACZ,IAAA,MAAM,IAAIE,KAAK,CAAC,2CAA2C,CAAC,CAAA;AAC9D,GAAA;AACA,EAAA,OAAOF,OAAO,CAAA;AAChB,EAAC;IAOYG,IAAI,GAAwB,SAA5BA,IAAIA,CAAyBC,EAAsB,EAAA;MAApBC,QAAQ,GAAAD,EAAA,CAAAC,QAAA;IAAEC,QAAQ,GAAAF,EAAA,CAAAE,QAAA,CAAA;AACtD,EAAA,IAAAC,EAAA,GAA8BC,QAAQ,CAAsB,EAAE,CAAC;AAA9DC,IAAAA,UAAU,GAAAF,EAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,aAAa,GAAAH,EAAA,CAAA,CAAA,CAAqC,CAAA;AAC/D,EAAA,IAAAI,EAAA,GAAsBH,QAAQ,CAA2B,EAAE,CAAC;AAA3DI,IAAAA,MAAM,GAAAD,EAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,SAAS,GAAAF,EAAA,CAAA,CAAA,CAA0C,CAAA;EAElE,IAAMG,YAAY,GAAG,SAAfA,YAAYA,CAAIC,IAAY,EAAEC,KAAU,EAAA;IAC5CN,aAAa,CAAC,UAAAO,IAAI,EAAA;;MAAI,6BAAMA,IAAI,CAAA,GAAAb,EAAA,GAAA,EAAA,EAAAA,EAAA,CAAGW,IAAI,CAAA,GAAGC,KAAK,EAAGZ,EAAA,EAAA,CAAA;AAA5B,KAA4B,CAAC,CAAA;GACpD,CAAA;AAED,EAAA,IAAMc,YAAY,GAAG,SAAfA,YAAYA,GAAG;IAAA,OAAAC,SAAA,CAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,YAAA;;;;AACM,UAAA,KAAA,CAAA;YAAA,OAAA,CAAA,CAAA,YAAMb,QAAQ,CAACG,UAAU,CAAC,CAAA,CAAA;;AAA7CW,YAAAA,gBAAgB,GAAGhB,EAA0B,CAAAiB,IAAA,EAAA,CAAA;AAEnD;YACAR,SAAS,CAACO,gBAAgB,CAAC,CAAA;AAE3B;YACA,IAAIE,MAAM,CAACC,IAAI,CAACH,gBAAgB,CAAC,CAACI,MAAM,GAAG,CAAC,EAAE;AAC5C,cAAA,OAAA,CAAA,CAAA,YAAA,CAAO;AACT,aAAA;;;;;GAED,CAAA;AAGD,EAAA,oBACEC,KAAA,CAAAC,aAAA,CAAC9B,WAAW,CAAC+B,QAAQ,EAAA;AAACX,IAAAA,KAAK,EAAE;AAAEP,MAAAA,UAAU,EAAAA,UAAA;AAAEK,MAAAA,YAAY,EAAAA,YAAA;AAAEF,MAAAA,MAAM,EAAAA,MAAA;AAAEC,MAAAA,SAAS,EAAAA,SAAA;AAAEK,MAAAA,YAAY,EAAAA,YAAAA;AAAA,KAAA;GACrF,EAAAb,QAAQ,CACY,CAAA;AAE3B;;ACtDA;AA4DA;;;;;;;;;;;;;;AAcG;IACUuB,IAAI,GAA8B,SAAlCA,IAAIA,CAA+BxB,EAW/C,EAAA;;MAVCC,QAAQ,GAAAD,EAAA,CAAAC,QAAA;IACRM,EAAA,GAAAP,EAAA,CAAAyB,IAAS;IAATA,IAAI,GAAGlB,EAAA,KAAA,KAAA,CAAA,GAAA,EAAE,GAAAA,EAAA;IACTmB,EAAS,GAAA1B,EAAA,CAAA2B,CAAA;IAATA,CAAC,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,KAAK,GAAAA,EAAA;IACTE,EAAA,GAAA5B,EAAA,CAAA6B,CAAS;IAATA,CAAC,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,KAAK,GAAAA,EAAA;IACTE,EAAS,GAAA9B,EAAA,CAAA+B,CAAA;IAATA,CAAC,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,KAAK,GAAAA,EAAA;IACTE,EAAA,GAAAhC,EAAA,CAAAiC,KAAc;IAAdA,KAAK,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,MAAM,GAAAA,EAAA;IACdE,EAAa,GAAAlC,EAAA,CAAAmC,IAAA;IAAbA,IAAI,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,MAAM,GAAAA,EAAA;IACbE,EAAA,GAAApC,EAAA,CAAAqC,QAAiB;IAAjBA,QAAQ,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,MAAM,GAAAA,EAAA;IACjBE,EAAK,GAAAtC,EAAA,CAAAuC,CAAA;IAALA,CAAC,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,CAAC,GAAAA,EAAA;IACLE,KAAK,GAAAxC,EAAA,CAAAwC,KAAA,CAAA;AAEG,EAAA,IAAAC,KAAK,GAAK5C,UAAU,CAAC6C,YAAY,CAAC,MAA7B,CAAA;AACL,EAAA,IAAAC,MAAM,GAAYF,KAAK,CAAAE,MAAjB;IAAEC,KAAK,GAAKH,KAAK,CAAAG,KAAV,CAAA;AAErB;EACA,IAAMC,YAAY,GAAGD,KAAK,CAACP,QAAQ,CAAC,IAAIO,KAAK,CAACE,IAAI,CAAA;AAClD,EAAA,IAAMC,UAAU,GAAGF,YAAY,CAACE,UAAU,CAAA;AAC1C,EAAA,IAAIC,QAAQ,GAAGH,YAAY,CAACG,QAAQ,IAAIvB,IAAI,CAAA;AAE1C;EACA,IAAIc,CAAC,KAAK,CAAC,EAAES,QAAQ,GAAG,EAAE,CAAC,KACtB,IAAIT,CAAC,KAAK,CAAC,EAAES,QAAQ,GAAG,EAAE,CAAC,KAC3B,IAAIT,CAAC,KAAK,CAAC,EAAES,QAAQ,GAAG,EAAE,CAAA;AAEjC;EACA,IAAMC,UAAU,GAAGtB,CAAC,GAAG,KAAK,GAAGkB,YAAY,CAACI,UAAU,IAAI,KAAK,CAAA;AAE/D;AACA,EAAA,IAAMC,SAAS,GAAGrB,CAAC,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAEzC;AACA,EAAA,IAAMsB,kBAAkB,GAAGpB,CAAC,GAAG,WAAW,GAAG,MAAM,CAAA;AAEnD;EACA,IAAMqB,SAAS,GAA2BnB,KAAK,CAAA;AAC/C;AACA,EAAA,IAAMoB,SAAS,GAAG,CAAA,CAAAlD,EAAA,GAAAwC,MAAM,CAACR,IAAI,CAAC,MAAE,IAAA,IAAAhC,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,EAAA,CAAAmD,GAAG,KAAIX,MAAM,CAACY,IAAI,CAACD,GAAG,CAAA;AAEtD;AACA,EAAA,IAAME,UAAU,GAAc;AAC5BR,IAAAA,QAAQ,EAAAA,QAAA;AACRC,IAAAA,UAAU,EAAAA,UAAA;AACVF,IAAAA,UAAU,EAAAA,UAAA;AACVG,IAAAA,SAAS,EAAAA,SAAA;AACTC,IAAAA,kBAAkB,EAAAA,kBAAA;AAClBC,IAAAA,SAAS,EAAAA,SAAA;AACTK,IAAAA,KAAK,EAAEJ,SAAAA;GACR,CAAA;AAGD,EAAA,oBACEhC,KAAA,CAAAC,aAAA,CAACoC,MAAM,EAAA;AAAClB,IAAAA,KAAK,EAAE,CAACgB,UAAU,EAAEhB,KAAK,CAAA;GAAC,EAC/BvC,QAAQ,CACF,CAAA;AAEb,EAAC;AAEc0D,UAAU,CAACC,MAAM,CAAC;AAC/B;AAAA,CACD;;ACvID;AAWA,IAAMC,SAAS,GAA6B,SAAtCA,SAASA,CAA8B7D,EAAU,EAAA;AAAR,EAAA,IAAAQ,MAAM,GAAAR,EAAA,CAAAQ,MAAA,CAAA;AAC3C,EAAA,IAAAiC,KAAK,GAAK5C,UAAU,CAAC6C,YAAY,CAAC,MAA7B,CAAA;AACL,EAAA,IAAAC,MAAM,GAAKF,KAAK,CAAAE,MAAV,CAAA;AAEd,EAAA,oBACEtB,KAAA,CAAAC,aAAA,CAACwC,IAAI,EAAA;IAACtB,KAAK,EAAEuB,QAAM,CAACC,SAAAA;GACjB,EAAAxD,MAAM,CAACyD,GAAG,CAAC,UAACC,KAAK,EAAEC,KAAK,EAAK;AAAA,IAAA,oBAC5B9C,KAAA,CAAAC,aAAA,CAACwC,IAAI,EAAC;AAAAM,MAAAA,GAAG,EAAED,KAAK;MAAE3B,KAAK,EAAEuB,QAAM,CAACM,SAAAA;AAAS,KAAA,eACvChD,KAAA,CAAAC,aAAA,CAACE,IAAI,EAAC;AAAAgB,MAAAA,KAAK,EAAE,CAACuB,QAAM,CAACO,MAAM,EAAE;AAAEb,QAAAA,KAAK,EAAEd,MAAM,CAACuB,KAAK,CAACZ,GAAAA;OAAK,CAAA;KAAW,EAAA,QAAA,CAAA,eACnEjC,KAAA,CAAAC,aAAA,CAACE,IAAI,EAAA;AAACgB,MAAAA,KAAK,EAAE,CAACuB,QAAM,CAACQ,SAAS,EAAE;AAAEd,QAAAA,KAAK,EAAEd,MAAM,CAACuB,KAAK,CAACZ,GAAAA;OAAK,CAAA;KAAC,EAAGY,KAAK,CAAQ,CACvE,CAAA;AAJqB,GAK7B,CAAC,CACG,CAAA;AAEX,EAAC;AAED,IAAMH,QAAM,GAAGJ,UAAU,CAACC,MAAM,CAAC;AAC/BI,EAAAA,SAAS,EAAE;AACTQ,IAAAA,SAAS,EAAE,CAAA;GACZ;AACDH,EAAAA,SAAS,EAAE;AACTI,IAAAA,aAAa,EAAE,KAAK;AACpBC,IAAAA,UAAU,EAAE,YAAY;AACxBC,IAAAA,YAAY,EAAE,CAAA;GACf;AACDL,EAAAA,MAAM,EAAE;AACNM,IAAAA,WAAW,EAAE,CAAC;AACd5B,IAAAA,QAAQ,EAAE,EAAA;GACX;AACDuB,EAAAA,SAAS,EAAE;AACTM,IAAAA,IAAI,EAAE,CAAC;AACP7B,IAAAA,QAAQ,EAAE,EAAA;AACX,GAAA;AACF,CAAA,CAAC;;AC5CF;AAsCA;;;;;;;;;;;;;AAaG;IACU8B,KAAK,GAAyB,SAA9BA,KAAKA,CAA0B9E,EAM3C,EAAA;AALC,EAAA,IAAAW,IAAI,GAAAX,EAAA,CAAAW,IAAA;IACJoE,KAAK,WAAA;IACLC,SAAS,GAAAhF,EAAA,CAAAgF,SAAA;IACTxC,KAAK,GAAAxC,EAAA,CAAAwC,KAAA;AACFyC,IAAAA,IAAI,GAAAC,MAAA,CAAAlF,EAAA,EALmC,uCAM3C,CADQ,CAAA;AAED,EAAA,IAAAG,EAAmD,GAAAR,cAAc,EAAE;IAAjEU,UAAU,GAAAF,EAAA,CAAAE,UAAA;IAAEK,YAAY,GAAAP,EAAA,CAAAO,YAAA;IAAUyE,UAAU,GAAAhF,EAAA,CAAAK,MAAqB,CAAA;AACjE,EAAA,IAAAiC,KAAK,GAAK5C,UAAU,CAAC6C,YAAY,CAAC,MAA7B,CAAA;AACL,EAAA,IAAAC,MAAM,GAAKF,KAAK,CAAAE,MAAV,CAAA;AAEd;;;;AAIG;AACH,EAAA,IAAMyC,YAAY,GAAG,SAAfA,YAAYA,CAAI7B,IAAY,EAAA;IAChC,IAAI8B,aAAa,GAAG9B,IAAI,CAAA;AAExB;AACA,IAAA,QAAQyB,SAAS;AACf,MAAA,KAAK,OAAO;AACV;QACAK,aAAa,GAAG9B,IAAI,CAAC+B,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;AACvC;QACA,IAAID,aAAa,CAACjE,MAAM,GAAG,CAAC,IAAIiE,aAAa,CAACjE,MAAM,IAAI,CAAC,EAAE;UACzDiE,aAAa,GAAG,EAAG,CAAAE,MAAA,CAAAF,aAAa,CAACG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAA,GAAA,CAAA,CAAAD,MAAA,CAAIF,aAAa,CAACG,KAAK,CAAC,CAAC,CAAC,CAAE,CAAA;AAC1E,SAAC,MAAM,IAAIH,aAAa,CAACjE,MAAM,GAAG,CAAC,EAAE;AACnCiE,UAAAA,aAAa,GAAG,EAAA,CAAAE,MAAA,CAAGF,aAAa,CAACG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAI,GAAA,CAAA,CAAAD,MAAA,CAAAF,aAAa,CAACG,KAAK,CACjE,CAAC,EACD,CAAC,CACF,EAAA,GAAA,CAAA,CAAAD,MAAA,CAAIF,aAAa,CAACG,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAE,CAAA;AACnC,SAAA;AACA,QAAA,MAAA;AACF,MAAA,KAAK,IAAI,CAAA;AACT,MAAA,KAAK,WAAW;AACd;AACAH,QAAAA,aAAa,GAAG9B,IAAI,CAACkC,WAAW,EAAE,CAAA;AAClC,QAAA,MAAA;AACF,MAAA,KAAK,SAAS;AACZ;QACAJ,aAAa,GAAG9B,IAAI,CAAC+B,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;AACvC,QAAA,MAAA;AAGJ,KAAA;AAEA5E,IAAAA,YAAY,CAACC,IAAI,EAAE0E,aAAa,CAAC,CAAA;GAClC,CAAA;AAED,EAAA,oBACEhE,oBAACyC,IAAI,EAAA;IAACtB,KAAK,EAAEuB,QAAM,CAACC,SAAAA;AAAS,GAAA,eAE3B3C,KAAC,CAAAC,aAAA,CAAAE,IAAI;AAACgB,IAAAA,KAAK,EAAE,CAACuB,QAAM,CAACgB,KAAK,EAAE;AAAEtB,MAAAA,KAAK,EAAEd,MAAM,CAACY,IAAI,CAACD,GAAAA;KAAK,CAAA;GAAI,EAAAyB,KAAK,CAAQ,eAGvE1D,KAAC,CAAAC,aAAA,CAAAoE,SAAS,EACRC,QAAA,CAAA;AAAAnD,IAAAA,KAAK,EAAE,CACLuB,QAAM,CAAC6B,KAAK,EACZ;AACEC,MAAAA,eAAe,EAAElD,MAAM,CAACG,IAAI,CAACQ,GAAG;AAChCwC,MAAAA,WAAW,EAAEX,UAAU,CAACxE,IAAI,CAAC,GAAGgC,MAAM,CAACuB,KAAK,CAACZ,GAAG,GAAG,MAAM;AACzDG,MAAAA,KAAK,EAAEd,MAAM,CAACY,IAAI,CAACD,GAAAA;KACpB,EACDd,KAAK,CACN;AACD5B,IAAAA,KAAK,EAAEP,UAAU,CAACM,IAAI,CAAC,IAAI,EAAE;AAC7BoF,IAAAA,YAAY,EAAEX,YAAY;AAC1BY,IAAAA,WAAW,EAAEjB,KAAK;AAClBkB,IAAAA,oBAAoB,EAAEtD,MAAM,CAACuD,WAAW,CAAC5C,GAAAA;GACrC,EAAA2B,IAAI,CACR,CAAA,EAGDE,UAAU,CAACxE,IAAI,CAAC,IAAIwE,UAAU,CAACxE,IAAI,CAAC,CAACS,MAAM,GAAG,CAAC,kBAC9CC,KAAA,CAAAC,aAAA,CAACuC,SAAS,EAAA;IAACrD,MAAM,EAAE2E,UAAU,CAACxE,IAAI,CAAA;GAAK,CAAA,CACxC,CACI,CAAA;AAEX,EAAC;AAED,IAAMoD,QAAM,GAAGJ,UAAU,CAACC,MAAM,CAAC;AAC/BI,EAAAA,SAAS,EAAE;AACTW,IAAAA,YAAY,EAAE,EAAA;GACf;AACDI,EAAAA,KAAK,EAAE;AACLJ,IAAAA,YAAY,EAAE,CAAC;AACf3B,IAAAA,QAAQ,EAAE,EAAA;GACX;AACD4C,EAAAA,KAAK,EAAE;AACLO,IAAAA,MAAM,EAAE,EAAE;AACVC,IAAAA,WAAW,EAAE,CAAC;AACdC,IAAAA,YAAY,EAAE,CAAC;AACfC,IAAAA,iBAAiB,EAAE,CAAA;AACpB,GAAA;AACF,CAAA,CAAC;;ACnJF;AAeA,IAAMC,QAAQ,GAA4B,SAApCA,QAAQA,CAA6BvG,EAAuC,EAAA;AAArC,EAAA,IAAAW,IAAI,GAAAX,EAAA,CAAAW,IAAA,CAAA;IAAEoE,KAAK,WAAA,CAAA;IAAQ/E,EAAA,CAAAQ,MAAA,CAAA;QAAEgC,KAAK,GAAAxC,EAAA,CAAAwC,KAAA,CAAA;AAAKyC,IAAAA,IAAI,GAAAC,MAAA,CAAAlF,EAAA,EAArC,oCAAuC,EAAF;AACxE,EAAA,IAAAG,EAAmD,GAAAR,cAAc,EAAE;IAAjEU,UAAU,GAAAF,EAAA,CAAAE,UAAA;IAAEK,YAAY,GAAAP,EAAA,CAAAO,YAAA;IAAUyE,UAAU,GAAAhF,EAAA,CAAAK,MAAqB,CAAA;AACjE,EAAA,IAAAiC,KAAK,GAAK5C,UAAU,CAAC6C,YAAY,CAAC,MAA7B,CAAA;AACL,EAAA,IAAAC,MAAM,GAAKF,KAAK,CAAAE,MAAV,CAAA;AAEd,EAAA,IAAMyC,YAAY,GAAG,SAAfA,YAAYA,CAAI7B,IAAY,EAAA;AAChC7C,IAAAA,YAAY,CAACC,IAAI,EAAE4C,IAAI,CAAC,CAAA;GACzB,CAAA;AAED,EAAA,oBACElC,oBAACyC,IAAI,EAAA;IAACtB,KAAK,EAAEuB,QAAM,CAACC,SAAAA;AAAS,GAAA,eAC3B3C,KAAC,CAAAC,aAAA,CAAAE,IAAI;AAACgB,IAAAA,KAAK,EAAE,CAACuB,QAAM,CAACgB,KAAK,EAAE;AAACtB,MAAAA,KAAK,EAAEd,MAAM,CAACY,IAAI,CAACD,GAAAA;KAAI,CAAA;GAAI,EAAAyB,KAAK,CAAQ,eACrE1D,KAAC,CAAAC,aAAA,CAAAoE,SAAS,EACRC,QAAA,CAAA;AAAAnD,IAAAA,KAAK,EAAE,CACLuB,QAAM,CAACyC,QAAQ,EACfhE,KAAK,EACL;AAACqD,MAAAA,eAAe,EAAElD,MAAM,CAACG,IAAI,CAACQ,GAAG;AAAEG,MAAAA,KAAK,EAAEd,MAAM,CAACY,IAAI,CAACD,GAAG;AAAEwC,MAAAA,WAAW,EAAEnD,MAAM,CAACuD,WAAW,CAAC5C,GAAAA;AAAI,KAAA,CAChG;AACD1C,IAAAA,KAAK,EAAEP,UAAU,CAACM,IAAI,CAAC,IAAI,EAAE;AAC7BoF,IAAAA,YAAY,EAAEX,YAAY;AAC1BY,IAAAA,WAAW,EAAEjB,KAAK;IAClBkB,oBAAoB,EAAC,MAAM;AAAC;AAC5BQ,IAAAA,SAAS,EAAA,IAAA;AACTC,IAAAA,aAAa,EAAE,CAAC;AAChBC,IAAAA,iBAAiB,EAAC,KAAA;GACd,EAAA1B,IAAI,CACR,CAAA,EAEDE,UAAU,CAACxE,IAAI,CAAC,IAAIwE,UAAU,CAACxE,IAAI,CAAC,CAACS,MAAM,GAAG,CAAC,kBAC9CC,KAAA,CAAAC,aAAA,CAACuC,SAAS,EAAA;IAACrD,MAAM,EAAE2E,UAAU,CAACxE,IAAI,CAAA;GAAK,CAAA,CACxC,CACI,CAAA;AAEX,EAAC;AAED,IAAMoD,QAAM,GAAGJ,UAAU,CAACC,MAAM,CAAC;AAC/BI,EAAAA,SAAS,EAAE;AACTW,IAAAA,YAAY,EAAE,EAAA;GACf;AACDI,EAAAA,KAAK,EAAE;AACLJ,IAAAA,YAAY,EAAE,CAAA;GACf;AACD6B,EAAAA,QAAQ,EAAE;AACRL,IAAAA,MAAM,EAAE,GAAG;AACXC,IAAAA,WAAW,EAAE,CAAC;AACdC,IAAAA,YAAY,EAAE,CAAC;AACfC,IAAAA,iBAAiB,EAAE,CAAC;AACpBM,IAAAA,eAAe,EAAE,CAAA;AAClB,GAAA;AACF,CAAA,CAAC;;AChEF;AAYA,IAAMC,KAAK,GAAyB,SAA9BA,KAAKA,CAA0B7G,EAAe,EAAA;MAAbuD,IAAI,GAAAvD,EAAA,CAAAuD,IAAA;IAAEf,KAAK,GAAAxC,EAAA,CAAAwC,KAAA,CAAA;AACtC,EAAA,IAAAC,KAAK,GAAK5C,UAAU,CAAC6C,YAAY,CAAC,MAA7B,CAAA;AACL,EAAA,IAAAC,MAAM,GAAKF,KAAK,CAAAE,MAAV,CAAA;AAChB,EAAA,oBAAOtB,KAAA,CAAAC,aAAA,CAACE,IAAI,EAAA;AAACgB,IAAAA,KAAK,EAAE,CAACuB,QAAM,CAACgB,KAAK,EAAEvC,KAAK,EAAE;AAAEiB,MAAAA,KAAK,EAAEd,MAAM,CAACY,IAAI,CAACD,GAAAA;KAAK,CAAA;GAAC,EAAGC,IAAI,CAAQ,CAAA;AACtF,EAAC;AAED,IAAMQ,QAAM,GAAGJ,UAAU,CAACC,MAAM,CAAC;AAC/BmB,EAAAA,KAAK,EAAE;AACLJ,IAAAA,YAAY,EAAE,CAAC;AACf1B,IAAAA,UAAU,EAAE,KAAA;AACb,GAAA;AACF,CAAA,CAAC;;ACiEF;;;;;;;;;;;;;;AAcG;IACU6D,SAAS,GAA6B,SAAtCA,SAASA,CAA8B9G,EAanD,EAAA;MAZCW,IAAI,GAAAX,EAAA,CAAAW,IAAA;IACJR,EAAA,GAAAH,EAAA,CAAAgG,WAA8B;IAA9BA,WAAW,GAAG7F,EAAA,KAAA,KAAA,CAAA,GAAA,gBAAgB,GAAAA,EAAA;IAC9BqC,KAAK,GAAAxC,EAAA,CAAAwC,KAAA;IACLuE,OAAO,aAAA;IACPxG,EAAA,GAAAP,EAAA,CAAAgH,KAAa;IAAbA,KAAK,GAAGzG,EAAA,KAAA,KAAA,CAAA,GAAA,KAAK,GAAAA,EAAA;IACbmB,EAAgB,GAAA1B,EAAA,CAAAiH,QAAA;IAAhBA,QAAQ,GAAAvF,EAAA,KAAA,KAAA,CAAA,GAAG,KAAK,GAAAA,EAAA;IAChBwF,MAAM,GAAAlH,EAAA,CAAAkH,MAAA;IACNtF,EAAA,GAAA5B,EAAA,CAAAmH,SAAiB;IAAjBA,SAAS,GAAGvF,EAAA,KAAA,KAAA,CAAA,GAAA,KAAK,GAAAA,EAAA;IACjBE,EAAqB,GAAA9B,EAAA,CAAAoH,aAAA;IAArBA,aAAa,GAAAtF,EAAA,KAAA,KAAA,CAAA,GAAG,KAAK,GAAAA,EAAA;IACrBE,EAAA,GAAAhC,EAAA,CAAAqH,aAAoB;IAApBA,aAAa,GAAGrF,EAAA,KAAA,KAAA,CAAA,GAAA,IAAI,GAAAA,EAAA;IACpBsF,YAAY,GAAAtH,EAAA,CAAAsH,YAAA;IACZC,QAAQ,GAAAvH,EAAA,CAAAuH,QAAA,CAAA;AAEA,EAAA,IAAArF,EAAA,GAA+BvC,cAAc,EAAE;IAA7CU,UAAU,GAAA6B,EAAA,CAAA7B,UAAA;IAAEK,YAAY,GAAAwB,EAAA,CAAAxB,YAAqB,CAAA;AAC/C,EAAA,IAAA0B,EAAA,GAA4ChC,QAAQ,CAAC,KAAK,CAAC;AAA1DoH,IAAAA,iBAAiB,GAAApF,EAAA,CAAA,CAAA,CAAA;AAAEqF,IAAAA,oBAAoB,GAAArF,EAAA,CAAA,CAAA,CAAmB,CAAA;AAEjE,EAAA,IAAMsF,eAAe,GAAGrH,UAAU,CAACM,IAAI,CAAC,KAAKqG,KAAK,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA;AAC/D,EAAA,IAAMW,aAAa,GAAGT,MAAM,GAAGU,aAAA,CAAA,EAAA,EAAIb,OAAO,EAAE,IAAA,CAAA,CAAAc,IAAI,CAAC,UAACC,CAAC,EAAEnG,CAAC,EAAA;AAAK,IAAA,OAACmG,CAAC,CAACZ,MAAM,CAAC,GAAGvF,CAAC,CAACuF,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;GAAC,CAAC,GAAGH,OAAO,CAAA;AAC9F,EAAA,IAAAtE,KAAK,GAAK5C,UAAU,CAAC6C,YAAY,CAAC,MAA7B,CAAA;AACL,EAAA,IAAAC,MAAM,GAAKF,KAAK,CAAAE,MAAV,CAAA;AAEhB;;;;AAIG;AACH,EAAA,IAAMoF,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,MAAc,EAAA;AACxC,IAAA,IAAIC,iBAAiB,CAAA;AAErB,IAAA,IAAIjB,KAAK,EAAE;MACT,IAAMkB,eAAe,GAAGR,eAAe,CAACS,IAAI,CAAC,UAACC,GAAW,EAAK;AAAA,QAAA,OAAAA,GAAG,CAACC,EAAE,KAAKL,MAAM,CAACK,EAAE,CAAA;AAApB,OAAoB,CAAC,CAAA;MACnFJ,iBAAiB,GAAGC,eAAe,GAC/BR,eAAe,CAACY,MAAM,CAAC,UAACF,GAAW,EAAK;AAAA,QAAA,OAAAA,GAAG,CAACC,EAAE,KAAKL,MAAM,CAACK,EAAE,CAAA;AAApB,OAAoB,CAAC,GACzDT,aAAA,CAAAA,aAAA,CAAA,EAAA,EAAAF,eAAe,EAAE,IAAA,CAAA,EAAA,CAAAM,MAAM,SAAC,CAAA;MAEhC,IAAI,CAACE,eAAe,IAAIZ,YAAY,IAAIW,iBAAiB,CAAC7G,MAAM,IAAIkG,YAAY,EAAE;QAChFG,oBAAoB,CAAC,KAAK,CAAC,CAAA;AAC7B,OAAA;AAEA/G,MAAAA,YAAY,CAACC,IAAI,EAAEsH,iBAAiB,CAAC,CAAA;AACvC,KAAC,MAAM;AACLA,MAAAA,iBAAiB,GAAGD,MAAM,CAAA;AAC1BtH,MAAAA,YAAY,CAACC,IAAI,EAAEqH,MAAM,CAAC,CAAA;AAC1B,MAAA,IAAIX,aAAa,EAAEI,oBAAoB,CAAC,KAAK,CAAC,CAAA;AAChD,KAAA;AAEA;AACA,IAAA,IAAIF,QAAQ,EAAE;MACZA,QAAQ,CAACU,iBAAiB,CAAC,CAAA;AAC7B,KAAA;GACD,CAAA;AAID;;;AAGG;AACH,EAAA,IAAMM,kBAAkB,GAAG,SAArBA,kBAAkBA,GAAG;IACzB,IAAIvB,KAAK,EAAE,OAAOU,eAAe,CAACzD,GAAG,CAAC,UAACmE,GAAW,EAAA;MAAK,OAAAA,GAAG,CAACrD,KAAK,CAAA;AAAT,KAAS,CAAC,CAACyD,IAAI,CAAC,IAAI,CAAC,IAAIxC,WAAW,CAAA;AAC3F,IAAA,OAAO,CAAA0B,eAAe,KAAA,IAAA,IAAfA,eAAe,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAfA,eAAe,CAAE3C,KAAK,KAAIiB,WAAW,CAAA;GAC7C,CAAA;AAED;;AAEG;AACH,EAAA,IAAMyC,cAAc,GAAG,SAAjBA,cAAcA,GAAG;IACrB,IAAI,CAACxB,QAAQ,EAAE;MACbQ,oBAAoB,CAAC,CAACD,iBAAiB,CAAC,CAAA;AACxC,MAAA,IAAI,CAACA,iBAAiB,EAAEkB,QAAQ,CAACC,OAAO,EAAE,CAAA;AAC5C,KAAA;GACD,CAAA;AAED;;AAEG;AACH,EAAA,IAAMC,mBAAmB,GAAGC,WAAW,CAAC,YAAA;AACtC,IAAA,IAAIrB,iBAAiB,EAAEC,oBAAoB,CAAC,KAAK,CAAC,CAAA;AACpD,GAAC,EAAE,CAACD,iBAAiB,CAAC,CAAC,CAAA;AAEtB;AACA,EAAA,IAAMsB,cAAc,GAAG,SAAjBA,cAAcA,CAAId,MAAc,EAAA;AACrC,IAAA,OACEhB,KAAK,IACLM,YAAY,IACZI,eAAe,CAACtG,MAAM,IAAIkG,YAAY,IACtC,CAACI,eAAe,CAACS,IAAI,CAAC,UAACC,GAAW;AAAK,MAAA,OAAAA,GAAG,CAACC,EAAE,KAAKL,MAAM,CAACK,EAAE,CAAA;AAApB,KAAoB,CAAC,CAAA;GAE/D,CAAA;AAGD,EAAA,oBACEhH,KAAA,CAAAC,aAAA,CAACwC,IAAI,EAAA;AAACtB,IAAAA,KAAK,EAAE,CAACuB,QAAM,CAACC,SAAS,EAAExB,KAAK,CAAA;AAAC,GAAA,eAC5BnB,KAAA,CAAAC,aAAA,CAACE,MAAI,EAAA;AAACgB,IAAAA,KAAK,EAAE;AAACiB,MAAAA,KAAK,EAAEd,MAAM,CAACY,IAAI,CAACD,GAAG;AAACqB,MAAAA,YAAY,EAAE,CAAA;AAChE,KAAA;GAAA,EAAGhE,IAAI,CAAQ,eAEVU,KAAA,CAAAC,aAAA,CAACyH,gBAAgB,EAAA;IAACvG,KAAK,EAAEuB,QAAM,CAACiF,cAAc;AAAEC,IAAAA,OAAO,EAAER,cAAc;AAAExB,IAAAA,QAAQ,EAAEA,QAAAA;AAAQ,GAAA,eACzF5F,KAAA,CAAAC,aAAA,CAACE,MAAI,EAAC;AAAAgB,IAAAA,KAAK,EAAE;AAACiB,MAAAA,KAAK,EAAEd,MAAM,CAACY,IAAI,CAACD,GAAAA;AAAG,KAAA;KAAIiF,kBAAkB,EAAE,CAAQ,CACnD,eAEnBlH,KAAC,CAAAC,aAAA,CAAA4H,KAAK,EAAC;AAAAC,IAAAA,OAAO,EAAE3B,iBAAiB;AAAE4B,IAAAA,WAAW,EAAA,IAAA;AAACC,IAAAA,aAAa,EAAC,MAAA;AAAM,GAAA,eACjEhI,KAAC,CAAAC,aAAA,CAAAgI,SAAS,EAAC;IAAA9G,KAAK,EAAEuB,QAAM,CAACwF,OAAO;AAAEN,IAAAA,OAAO,EAAEL,mBAAAA;AAAuB,GAAA,CAAA,eAClEvH,KAAA,CAAAC,aAAA,CAACwC,IAAI,EAAC;AAAAtB,IAAAA,KAAK,EAAE,CAACuB,QAAM,CAACyF,iBAAiB,EAAC;AAAC3D,MAAAA,eAAe,EAAElD,MAAM,CAACG,IAAI,CAACQ,GAAAA;KAC5E,CAAA;AAAC,GAAA,eACQjC,KAAC,CAAAC,aAAA,CAAAmI,QAAQ,EACP;AAAAC,IAAAA,IAAI,EAAE/B,aAAa;AACnBgC,IAAAA,YAAY,EAAE,SAAdA,YAAYA,CAAGC,IAAI,EAAK;AAAA,MAAA,OAAAA,IAAI,CAACvB,EAAE,CAACwB,QAAQ,EAAE,CAAA;KAAA;AAC1CC,IAAAA,UAAU,EAAE,SAAZA,UAAUA,CAAG9J,EAAQ,EAAA;AAAN,MAAA,IAAA4J,IAAI,GAAA5J,EAAA,CAAA4J,IAAA,CAAA;MAC/B,IAAMG,UAAU,GAAG/C,KAAK,GACnBU,eAA4B,CAACS,IAAI,CAAC,UAACC,GAAW,EAAK;AAAA,QAAA,OAAAA,GAAG,CAACC,EAAE,KAAKuB,IAAI,CAACvB,EAAE,CAAA;OAAA,CAAC,GACvE,CAAAX,eAAe,KAAA,IAAA,IAAfA,eAAe,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAfA,eAAe,CAAEW,EAAE,MAAKuB,IAAI,CAACvB,EAAE,CAAA;AACrB,MAAA,IAAM2B,UAAU,GAAGlB,cAAc,CAACc,IAAI,CAAC,CAAA;AAEvC,MAAA,oBACEvI,KAAC,CAAAC,aAAA,CAAAyH,gBAAgB,EACf;AAAAE,QAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;UAAA,OAAAlB,kBAAkB,CAAC6B,IAAI,CAAC,CAAA;SAAA;AACvCpH,QAAAA,KAAK,EAAE,CACLuB,QAAM,CAACkG,UAAU,EACjBF,UAAU,GAAG;AAAClE,UAAAA,eAAe,EAAElD,MAAM,CAACuH,OAAO,CAAC5G,GAAAA;AAAG,SAAC,GAAG,EAAE,EACvD0G,UAAU,GAAG;AAACnE,UAAAA,eAAe,EAAElD,MAAM,CAACuD,WAAW,CAAC5C,GAAAA;SAAI,GAAG,EAAE,CAC5D;QACD2D,QAAQ,EAAE,CAAC,CAAC+C,UAAAA;AAAU,OAAA,eAEtB3I,KAAC,CAAAC,aAAA,CAAAE,MAAI;QAACgB,KAAK,EAAE,CAACuH,UAAU,GAAG;AAACtG,UAAAA,KAAK,EAAEd,MAAM,CAACG,IAAI,CAACQ,GAAAA;AAAG,SAAC,GAAE;AAACG,UAAAA,KAAK,EAAEd,MAAM,CAACY,IAAI,CAACD,GAAAA;SAAI,EAAE0G,UAAU,GAAGjG,QAAM,CAACoG,YAAY,GAAG,EAAE,CAAA;AACjH,OAAA,EAAAP,IAAI,CAAC7E,KAAK,CACN,CACU,CAAA;KAEtB;AACDqF,IAAAA,sBAAsB,EAAE,SAAxBA,sBAAsBA,GAAQ;AAAA,MAAA,OAACjD,SAAS,gBAAG9F,oBAACyC,IAAI,EAAA;QAACtB,KAAK,EAAEuB,QAAM,CAACoD,SAAAA;OAAa,CAAA,GAAG,IAAI,CAAA;KAAC;AACpFkD,IAAAA,aAAa,EAAE,CAACjD,aAAAA;GAChB,CAAA,CACG,CACD,CACH,CAAA;AAEX,EAAC;AAED,IAAMrD,QAAM,GAAGJ,UAAU,CAACC,MAAM,CAAC;EAC/BI,SAAS,EAAE,EAAI;AACfgF,EAAAA,cAAc,EAAE;AAAEsB,IAAAA,OAAO,EAAE,EAAE;AAAElE,IAAAA,WAAW,EAAE,CAAC;AAAEN,IAAAA,WAAW,EAAE,MAAM;AAAEO,IAAAA,YAAY,EAAE,CAAA;GAAG;AACrFmD,EAAAA,iBAAiB,EAAE;AACjBe,IAAAA,QAAQ,EAAE,UAAU;AACpBC,IAAAA,GAAG,EAAE,KAAK;AAAE;AACZC,IAAAA,SAAS,EAAE,QAAQ;AACnBC,IAAAA,KAAK,EAAE,KAAK;AACZ7E,IAAAA,eAAe,EAAE,MAAM;AACvBQ,IAAAA,YAAY,EAAE,CAAC;AACfsE,IAAAA,SAAS,EAAE,CAAC;AACZ/D,IAAAA,eAAe,EAAE,EAAA;GAClB;AACDqD,EAAAA,UAAU,EAAE;AAAEK,IAAAA,OAAO,EAAE,EAAA;GAAI;AAC3BH,EAAAA,YAAY,EAAE;AAAE1G,IAAAA,KAAK,EAAE,MAAA;GAAQ;AAC/B0D,EAAAA,SAAS,EAAE;AAAEhB,IAAAA,MAAM,EAAE,CAAC;AAAEN,IAAAA,eAAe,EAAE,MAAM;AAAE+E,IAAAA,gBAAgB,EAAE,CAAA;GAAG;AACtErB,EAAAA,OAAO,EAAE;AAAE1E,IAAAA,IAAI,EAAE,CAAC;AAAEgB,IAAAA,eAAe,EAAE,iBAAA;AAAmB,GAAA;AACzD,CAAA,CAAC;;ACnQF;AAuBA,IAAMgF,WAAW,GAA+B,SAA1CA,WAAWA,CAAgC7K,EAMhD,EAAA;AALC,EAAA,IAAAW,IAAI,GAAAX,EAAA,CAAAW,IAAA;IACJR,EAA6B,GAAAH,EAAA,CAAAmC,IAAA;AAA7BA,IAAAA,IAAI,GAAGhC,EAAA,KAAA,KAAA,CAAA,GAAA,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,GAAAA,EAAA;IAC7BI,EAAU,GAAAP,EAAA,CAAA8K,MAAA;IAAVA,MAAM,GAAAvK,EAAA,KAAA,KAAA,CAAA,GAAG,CAAC,GAAAA,EAAA;IACVmB,EAAA,GAAA1B,EAAA,CAAAiH,QAAgB;IAAhBA,QAAQ,GAAAvF,EAAA,KAAA,KAAA,CAAA,GAAG,KAAK,GAAAA,EAAA;IAChBE,EAA+B,GAAA5B,EAAA,CAAAgG,WAAA;IAA/BA,WAAW,GAAApE,EAAA,KAAA,KAAA,CAAA,GAAG,iBAAiB,GAAAA,EAAA,CAAA;AAEzB,EAAA,IAAAE,EAAuC,GAAAnC,cAAc,EAAE,CAAA;IAArDe,YAAY,GAAAoB,EAAA,CAAApB,YAAA,CAAA;IAAYoB,EAAA,CAAAzB,UAAA,CAAA;QAAEG,MAAM,GAAAsB,EAAA,CAAAtB,OAAqB;AACvD,EAAA,IAAAwB,EAAA,GAAoC5B,QAAQ,CAAa,EAAE,CAAC;AAA3D2K,IAAAA,aAAa,GAAA/I,EAAA,CAAA,CAAA,CAAA;AAAEgJ,IAAAA,gBAAgB,GAAAhJ,EAAA,CAAA,CAAA,CAA4B,CAAA;AAC1D,EAAA,IAAAS,KAAK,GAAK5C,UAAU,CAAC6C,YAAY,CAAC,MAA7B,CAAA;AACL,EAAA,IAAAC,MAAM,GAAKF,KAAK,CAAAE,MAAV,CAAA;AAEd,EAAA,IAAMsI,SAAS,GAAG,SAAZA,SAASA,GAAG;IAAA,OAAAlK,SAAA,CAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,YAAA;;;;;AAChB,YAAA,IAAIkG,QAAQ,EAAE,OAAO,CAAA,CAAA,YAAA,CAAA;YAEI,OAAA,CAAA,CAAA,YAAMiE,WAAW,CAACC,mCAAmC,EAAE,CAAA,CAAA;;AAA1EC,YAAAA,gBAAgB,GAAGpL,EAAuD,CAAAiB,IAAA,EAAA,CAAA;AAChF,YAAA,IAAI,CAACmK,gBAAgB,CAACC,OAAO,EAAE;AAC7BC,cAAAA,KAAK,CAACC,KAAK,CAAC,qBAAqB,EAAE,iDAAiD,CAAC,CAAA;cACrF,OAAO,CAAA,CAAA,YAAA,CAAA;AACT,aAAA;AAEe,YAAA,OAAM,CAAA,CAAA,YAAAL,WAAW,CAACM,uBAAuB,CAAC;AACvDC,cAAAA,UAAU,EAAEP,WAAW,CAACQ,gBAAgB,CAACC,MAAM;cAC/CC,uBAAuB,EAAEd,MAAM,GAAG,CAAC;AACnCe,cAAAA,OAAO,EAAE,CAAA;AACV,aAAA,CAAC,CAAA,CAAA;;AAJIC,YAAAA,MAAM,GAAG9L,EAIb,CAAAiB,IAAA,EAAA,CAAA;AAEF,YAAA,IAAI,CAAC6K,MAAM,CAACC,QAAQ,EAAE;AACdC,cAAAA,cAAc,GAAGF,MAAM,CAACG,MAAM,IAAI,CAACH,MAAM,CAAC,CAAA;AAC1CI,cAAAA,QAAQ,GAAeF,cAAc,CAAC/H,GAAG,CAAC,UAACkI,KAAK,EAAK;gBAAA,OAAC;kBAC1DC,GAAG,EAAED,KAAK,CAACC,GAAG;AACdzL,kBAAAA,IAAI,EAAEwL,KAAK,CAACE,QAAQ,IAAI,aAAa;AACrClK,kBAAAA,IAAI,EAAEgK,KAAK,CAACG,QAAQ,IAAI,YAAA;iBACzB,CAAA;AAJ0D,eAIzD,CAAC,CAAA;AAGGC,cAAAA,YAAY,GAAGL,QAAQ,CAAC5D,MAAM,CAClC,UAACkE,IAAI,EAAK;AAAA,gBAAA,OAAA,CAACrK,IAAI,CAACgG,IAAI,CAAC,UAACsE,GAAG,EAAA;kBAAK,OAAAD,IAAI,CAAC7L,IAAI,CAAC+L,WAAW,EAAE,CAACC,QAAQ,CAACF,GAAG,CAAC,CAAA;AAArC,iBAAqC,CAAC,CAAA;AAA1D,eAA0D,CACrE,CAAA;AACD,cAAA,IAAIF,YAAY,CAACnL,MAAM,GAAG,CAAC,EAAE;AAC3BkK,gBAAAA,KAAK,CAACC,KAAK,CAAC,mBAAmB,EAAE,+BAAgC,CAAAhG,MAAA,CAAApD,IAAI,CAACqG,IAAI,CAAC,IAAI,CAAC,CAAE,CAAC,CAAA;gBACnF,OAAO,CAAA,CAAA,YAAA,CAAA;AACT,eAAA;AAEA;cACA,IAAIuC,aAAa,CAAC3J,MAAM,GAAG8K,QAAQ,CAAC9K,MAAM,GAAG0J,MAAM,EAAE;AACnDQ,gBAAAA,KAAK,CAACC,KAAK,CAAC,gBAAgB,EAAE,uBAAwB,CAAAhG,MAAA,CAAAuF,MAAM,EAAS,SAAA,CAAA,CAAC,CAAA;gBACtE,OAAO,CAAA,CAAA,YAAA,CAAA;AACT,eAAA;cAEM8B,YAAY,GAAGhF,aAAA,CAAAA,aAAA,CAAA,EAAA,EAAImD,aAAa,EAAA,IAAA,CAAA,EAAKmB,QAAQ,EAAA,IAAA,CAAA,CAAE1G,KAAK,CAAC,CAAC,EAAEsF,MAAM,CAAC,CAAA;cACrEE,gBAAgB,CAAC4B,YAAY,CAAC,CAAA;AAC9BlM,cAAAA,YAAY,CAACC,IAAI,EAAEiM,YAAY,CAAC,CAAC;AACnC,aAAA;;;;;GACD,CAAA;AAED,EAAA,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAI1I,KAAa,EAAA;IAC/B,IAAMyI,YAAY,GAAG7B,aAAa,CAACzC,MAAM,CAAC,UAACwE,CAAC,EAAEjL,CAAC,EAAA;MAAK,OAAAA,CAAC,KAAKsC,KAAK,CAAA;AAAX,KAAW,CAAC,CAAA;IAChE6G,gBAAgB,CAAC4B,YAAY,CAAC,CAAA;AAC9BlM,IAAAA,YAAY,CAACC,IAAI,EAAEiM,YAAY,CAAC,CAAC;GAClC,CAAA;AAED,EAAA,oBACEvL,oBAACyC,IAAI,EAAA;IAACtB,KAAK,EAAEuB,QAAM,CAACC,SAAAA;AAAS,GAAA,eAC3B3C,KAAC,CAAAC,aAAA,CAAAE,IAAI;AAACgB,IAAAA,KAAK,EAAE,CAACuB,QAAM,CAACgB,KAAK,EAAC;AAAEtB,MAAAA,KAAK,EAAEd,MAAM,CAACY,IAAI,CAACD,GAAAA;KAAK,CAAA;GAAI,EAAA0C,WAAW,CAAQ,eAC5E3E,KAAA,CAAAC,aAAA,CAACwC,IAAI,EAAC;IAAAtB,KAAK,EAAEuB,QAAM,CAACgJ,aAAAA;GAAa,EAC9BhC,aAAa,CAAC9G,GAAG,CAAC,UAACuI,IAAI,EAAErI,KAAK;AAAK,IAAA,oBAClC9C,oBAACyC,IAAI,EAAA;AAACM,MAAAA,GAAG,EAAED,KAAK;MAAE3B,KAAK,EAAEuB,QAAM,CAACiJ,QAAAA;AAAQ,KAAA,eACtC3L,KAAA,CAAAC,aAAA,CAAC2L,KAAK,EAAC;AAAAC,MAAAA,MAAM,EAAE;QAAEd,GAAG,EAAEI,IAAI,CAACJ,GAAAA;OAAK;MAAE5J,KAAK,EAAEuB,QAAM,CAACoJ,YAAAA;AAAgB,KAAA,CAAA,eAChE9L,KAAA,CAAAC,aAAA,CAACyH,gBAAgB,EAAA;AAACE,MAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;QAAA,OAAA4D,UAAU,CAAC1I,KAAK,CAAC,CAAA;OAAA;AAAE3B,MAAAA,KAAK,EAAE,CAACuB,QAAM,CAACqJ,YAAY,EAAC;AAAEvH,QAAAA,eAAe,EAAElD,MAAM,CAACuB,KAAK,CAACZ,GAAAA;OAAK,CAAA;AAAC,KAAA,eACpHjC,KAAA,CAAAC,aAAA,CAACE,IAAI,EAAA;MAACgB,KAAK,EAAEuB,QAAM,CAACsJ,gBAAAA;AAAgB,KAAA,EAAA,GAAA,CAAU,CAC7B,CACd,CAAA;AAN2B,GAOnC,CAAC,EACDtC,aAAa,CAAC3J,MAAM,GAAG0J,MAAM,kBAC5BzJ,KAAA,CAAAC,aAAA,CAACyH,gBAAgB,EAAA;AAACE,IAAAA,OAAO,EAAEgC,SAAS;AAAEzI,IAAAA,KAAK,EAAE,CAACuB,QAAM,CAACuJ,SAAS,EAAC;AAAEzH,MAAAA,eAAe,EAAElD,MAAM,CAACG,IAAI,CAACQ,GAAAA;AAAK,KAAA,CAAC;AAAE2D,IAAAA,QAAQ,EAAEA,QAAAA;AAAQ,GAAA,eACtH5F,KAAC,CAAAC,aAAA,CAAAE,IAAI;AAACgB,IAAAA,KAAK,EAAE,CAACuB,QAAM,CAACwJ,aAAa,EAAC;AAAE9J,MAAAA,KAAK,EAAEd,MAAM,CAACuD,WAAW,CAAC5C,GAAAA;KAAK,CAAA;AAAC,GAAA,EAAA,GAAA,CAAU,CAC9D,CACpB,CACI,EACN9C,MAAM,CAACG,IAAI,CAAC,iBAAIU,KAAA,CAAAC,aAAA,CAACE,IAAI,EAAC;AAAAgB,IAAAA,KAAK,EAAE,CAACuB,QAAM,CAACG,KAAK,EAAC;AAAET,MAAAA,KAAK,EAAEd,MAAM,CAACuB,KAAK,CAACZ,GAAAA;KAAK,CAAA;GAAC,EAAG9C,MAAM,CAACG,IAAI,CAAC,CAAC6H,IAAI,CAAC,IAAI,CAAC,CAAQ,CACrG,CAAA;AAEX,EAAC;AAED,IAAMzE,QAAM,GAAGJ,UAAU,CAACC,MAAM,CAAC;AAC/BI,EAAAA,SAAS,EAAE;AAAEwJ,IAAAA,cAAc,EAAE,EAAA;GAAI;AACjCzI,EAAAA,KAAK,EAAE;AAACJ,IAAAA,YAAY,EAAE,CAAA;GAAG;AACzBoI,EAAAA,aAAa,EAAE;AAAEtI,IAAAA,aAAa,EAAE,KAAK;AAAEgJ,IAAAA,QAAQ,EAAE,MAAM;AAAEC,IAAAA,GAAG,EAAE,EAAA;GAAI;AAClEV,EAAAA,QAAQ,EAAE;AAAEzC,IAAAA,QAAQ,EAAE,UAAU;AAAEG,IAAAA,KAAK,EAAE,GAAG;AAAEvE,IAAAA,MAAM,EAAE,GAAG;AAAEvB,IAAAA,WAAW,EAAE,EAAA;GAAI;AAC5EuI,EAAAA,YAAY,EAAE;AAAEzC,IAAAA,KAAK,EAAE,MAAM;AAAEvE,IAAAA,MAAM,EAAE,MAAM;AAAEE,IAAAA,YAAY,EAAE,CAAA;GAAG;AAChE+G,EAAAA,YAAY,EAAE;AACZ7C,IAAAA,QAAQ,EAAE,UAAU;AACpBC,IAAAA,GAAG,EAAE,CAAC;AACNmD,IAAAA,KAAK,EAAE,CAAC;AACRjD,IAAAA,KAAK,EAAE,EAAE;AACTvE,IAAAA,MAAM,EAAE,EAAE;AACVyH,IAAAA,cAAc,EAAE,QAAQ;AACxBlJ,IAAAA,UAAU,EAAE,QAAQ;AACpB2B,IAAAA,YAAY,EAAE,EAAA;GACf;AACDgH,EAAAA,gBAAgB,EAAE;AAAE5J,IAAAA,KAAK,EAAE,MAAM;AAAER,IAAAA,UAAU,EAAE,MAAA;GAAQ;AACvDqK,EAAAA,SAAS,EAAE;AACT5C,IAAAA,KAAK,EAAE,GAAG;AACVvE,IAAAA,MAAM,EAAE,GAAG;AACXyH,IAAAA,cAAc,EAAE,QAAQ;AACxBlJ,IAAAA,UAAU,EAAE,QAAQ;AACpB2B,IAAAA,YAAY,EAAE,CAAA;GACf;AACDkH,EAAAA,aAAa,EAAE;AAAEvK,IAAAA,QAAQ,EAAE,EAAA;GAAI;AAC/BkB,EAAAA,KAAK,EAAE;AAAGM,IAAAA,SAAS,EAAE,CAAA;AAAG,GAAA;AACzB,CAAA,CAAC;;ACtIF;AAoDA;;;;;;;AAOG;AACH,SAASqJ,UAAUA,CACjB1L,IAAa,EACb8E,QAAkB,EAClB6G,WAAyB,EAAA;AAEzB,EAAA,QAAQ3L,IAAI;AACV,IAAA,KAAK,QAAQ;MACX,OAAO;AACL0D,QAAAA,eAAe,EAAE,eAAQiI,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,WAAW,CAAE5D,OAAO,CAAC6D,GAAG,CAACC,CAAC,eAAKF,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,WAAW,CAAE5D,OAAO,CAAC6D,GAAG,CAACE,CAAC,EAAA,IAAA,CAAA,CAAA1I,MAAA,CAAKuI,WAAW,KAAX,IAAA,IAAAA,WAAW,uBAAXA,WAAW,CAAE5D,OAAO,CAAC6D,GAAG,CAACpM,CAAC,EAC/G,IAAA,CAAA,CAAA4D,MAAA,CAAA0B,QAAQ,GAAG,GAAG,GAAG,CAAC,EACjB,GAAA,CAAA;AACHb,QAAAA,WAAW,EAAE,CAAC;AACdN,QAAAA,WAAW,EAAEgI,WAAW,KAAX,IAAA,IAAAA,WAAW,uBAAXA,WAAW,CAAE5D,OAAO,CAAC5G,GAAAA;OACnC,CAAA;AACH,IAAA,KAAK,QAAQ;MACX,OAAO;AACLuC,QAAAA,eAAe,EAAEiI,WAAW,KAAX,IAAA,IAAAA,WAAW,uBAAXA,WAAW,CAAE5D,OAAO,CAAC5G,GAAG;AACzCwC,QAAAA,WAAW,EAAEgI,WAAW,KAAX,IAAA,IAAAA,WAAW,uBAAXA,WAAW,CAAEI,SAAS,CAAC5K,GAAG;AACvC6K,QAAAA,OAAO,EAAElH,QAAQ,GAAG,GAAG,GAAG,CAAC;AAC3Bb,QAAAA,WAAW,EAAE,CAAA;OACd,CAAA;AACH,IAAA,KAAK,QAAQ;MACX,OAAO;AACLP,QAAAA,eAAe,EAAEiI,WAAW,KAAX,IAAA,IAAAA,WAAW,uBAAXA,WAAW,CAAEM,UAAU,CAAC9K,GAAG;AAC5C8C,QAAAA,WAAW,EAAE,CAAA;OACd,CAAA;AACH,IAAA;AACE,MAAA,OAAO,EAAE,CAAA;AACb,GAAA;AACF,CAAA;AAEA;;;;;;;;;;;AAWG;IACUiI,MAAM,GAA0B,SAAhCA,MAAMA,CAA2BrO,EAS7C,EAAA;MARCC,QAAQ,GAAAD,EAAA,CAAAC,QAAA;IACRE,EAAgB,GAAAH,EAAA,CAAAiH,QAAA;IAAhBA,QAAQ,GAAG9G,EAAA,KAAA,KAAA,CAAA,GAAA,KAAK,KAAA;IAChBI,EAAA,GAAAP,EAAA,CAAAmC,IAAe;IAAfA,IAAI,GAAA5B,EAAA,KAAA,KAAA,CAAA,GAAG,QAAQ,GAAAA,EAAA;IACfmB,eAAc;IAAd4M,OAAO,mBAAG,IAAI,GAAA5M,EAAA;IACdE,EAAiB,GAAA5B,EAAA,CAAAqG,YAAA;IAAjBA,YAAY,GAAGzE,EAAA,KAAA,KAAA,CAAA,GAAA,EAAE,KAAA;IACjBE,EAAA,GAAA9B,EAAA,CAAAuO,WAAmB;IAAnBA,WAAW,GAAAzM,EAAA,KAAA,KAAA,CAAA,GAAG,KAAK,GAAAA,EAAA;IACnBE,eAAe;IAAfwM,OAAO,mBAAG,KAAK,GAAAxM,EAAA;IACfiH,OAAO,GAAAjJ,EAAA,CAAAiJ,OAAA,CAAA;AAEC,EAAA,IAAAxG,KAAK,GAAK5C,UAAU,CAAC6C,YAAY,CAAC,MAA7B,CAAA;AACL,EAAA,IAAAC,MAAM,GAAKF,KAAK,CAAAE,MAAV,CAAA;AACN,EAAA,IAAA7B,YAAY,GAAKnB,cAAc,EAAE,aAArB,CAAA;AAEpB,EAAA,IAAM8O,cAAc,GAAGC,OAAO,CAAC,YAAA;AAC7B,IAAA,OAAO/K,UAAU,CAACgL,OAAO,CAAC,CACxB5K,QAAM,CAAC6K,MAAM,EACbf,UAAU,CAAC1L,IAAI,EAAE8E,QAAQ,EAAEtE,MAAM,CAAC,EAClC2L,OAAO,IAAI;AAAEjI,MAAAA,YAAY,EAAAA,YAAAA;KAAE,EAC3BkI,WAAW,IAAI;AAAE7D,MAAAA,KAAK,EAAE,MAAA;KAAQ,EAChC,CAACzD,QAAQ,IAAIuH,OAAO,KAAKzK,QAAM,CAACkD,QAAQ,CACzC,CAAC,CAAA;AACJ,GAAC,EAAE,CAAC9E,IAAI,EAAE8E,QAAQ,EAAEuH,OAAO,EAAEF,OAAO,EAAEjI,YAAY,EAAEkI,WAAW,EAAE5L,MAAM,CAAC,CAAC,CAAA;AAEzE,EAAA,IAAMU,SAAS,GAAGqL,OAAO,CAAC,YAAA;IACxB,OAAOvM,IAAI,KAAK,QAAQ,GAAG;AAAEsB,MAAAA,KAAK,EAAEd,MAAM,CAACY,IAAI,CAACD,GAAAA;AAAG,KAAE,GAAG;AAAEG,MAAAA,KAAK,EAAEd,MAAM,CAACkM,UAAU,CAACvL,GAAAA;KAAK,CAAA;AAC1F,GAAC,EAAE,CAACnB,IAAI,EAAEQ,MAAM,CAAC,CAAC,CAAA;AAElB,EAAA,IAAMmM,WAAW,GAAG,SAAdA,WAAWA,GAAG;IAClB,IAAI3M,IAAI,KAAK,QAAQ,EAAE;MACrBrB,YAAY,EAAE,CAAC;KAChB,MAAM,IAAImI,OAAO,EAAE;MAClBA,OAAO,EAAE,CAAC;AACZ,KAAA;GACD,CAAA;AAGD,EAAA,oBACE5H,KAAC,CAAAC,aAAA,CAAAyH,gBAAgB,EACf;AAAAvG,IAAAA,KAAK,EAAEiM,cAA2B;IAClCxH,QAAQ,EAAEA,QAAQ,IAAIuH,OAAO;AAC7BvF,IAAAA,OAAO,EAAE6F,WAAW;AACpBC,IAAAA,aAAa,EAAE,GAAA;AAEd,GAAA,EAAAP,OAAO;AAAA;AAAK;AACXnN,EAAAA,KAAC,CAAAC,aAAA,CAAA0N,iBAAiB,EAAC;AAAAvN,IAAAA,IAAI,EAAC,OAAO;AAACgC,IAAAA,KAAK,EAAEd,MAAM,CAACkM,UAAU,CAACvL,GAAAA;AAAO,GAAA,CAAA,kBAEhEjC,KAAC,CAAAC,aAAA,CAAAE,MAAI,EAAC;AAAAgB,IAAAA,KAAK,EAAEa,SAAAA;AACV,GAAA,EAAA4L,KAAK,CAACC,OAAO,CAACjP,QAAQ,CAAC,GAAGA,QAAQ,CAACuI,IAAI,CAAC,EAAE,CAAC,CAAC/C,WAAW,EAAE,GAAGxF,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAARA,QAAQ,CAAEwF,WAAW,EAAE,CAC/E,CACR,CACgB,CAAA;AAEvB,EAAC;AAED,IAAM1B,QAAM,GAAGJ,UAAU,CAACC,MAAM,CAAC;AAC/BgL,EAAAA,MAAM,EAAE;AACNhB,IAAAA,cAAc,EAAE,QAAQ;AACxBlJ,IAAAA,UAAU,EAAE,QAAQ;AACpBkC,IAAAA,eAAe,EAAE,EAAE;AACnBN,IAAAA,iBAAiB,EAAE,EAAA;GACpB;AACDW,EAAAA,QAAQ,EAAE;AACRkH,IAAAA,OAAO,EAAE,GAAA;AACV,GAAA;AACF,CAAA,CAAC;;ACxKF;AA2DA;;;;;;;;;;;AAWG;IACUgB,IAAI,GAAwB,SAA5BA,IAAIA,CAAyBnP,EAQvC,EAAA;AAPC,EAAA,IAAAC,QAAQ,GAAAD,EAAA,CAAAC,QAAA;IACRuC,KAAK,GAAAxC,EAAA,CAAAwC,KAAA;IACLyG,OAAO,GAAAjJ,EAAA,CAAAiJ,OAAA;IACP9I,EAAA,GAAAH,EAAA,CAAAoP,SAAiB;IAAjBA,SAAS,GAAAjP,EAAA,KAAA,KAAA,CAAA,GAAG,KAAK,GAAAA,EAAA;IACjBI,EAAiB,GAAAP,EAAA,CAAAqG,YAAA;IAAjBA,YAAY,GAAA9F,EAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,EAAA;IACjBmB,EAAA,GAAA1B,EAAA,CAAA2K,SAAa;IAAbA,SAAS,GAAAjJ,EAAA,KAAA,KAAA,CAAA,GAAG,CAAC,GAAAA,EAAA;IACbE,EAAgB,GAAA5B,EAAA,CAAAqP,WAAA;IAAhBA,WAAW,GAAAzN,EAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,EAAA,CAAA;AAER,EAAA,IAAAa,KAAK,GAAK5C,UAAU,CAAC6C,YAAY,CAAC,MAA7B,CAAA;AACL,EAAA,IAAAC,MAAM,GAAKF,KAAK,CAAAE,MAAV,CAAA;AAEd;AACA;AACA,EAAA,IAAM2M,aAAa,GAAGC,QAAQ,CAACC,MAAM,CAAC;AACpCC,IAAAA,GAAG,EAAE;MACHC,WAAW,EAAE,CAAAL,WAAW,KAAX,IAAA,IAAAA,WAAW,uBAAXA,WAAW,CAAEK,WAAW,KAAI/M,MAAM,CAACY,IAAI,CAACD,GAAG;AAAE;AAC1DqM,MAAAA,YAAY,EAAE,CAAAN,WAAW,aAAXA,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAXA,WAAW,CAAEM,YAAY,KAAI;AAAEjF,QAAAA,KAAK,EAAE,CAAC;AAAEvE,QAAAA,MAAM,EAAE,CAAA;OAAG;AAClEyJ,MAAAA,aAAa,EAAE,CAAAP,WAAW,KAAX,IAAA,IAAAA,WAAW,uBAAXA,WAAW,CAAEO,aAAa,KAAI,GAAG;AAChDC,MAAAA,YAAY,EAAE,CAAAR,WAAW,KAAX,IAAA,IAAAA,WAAW,uBAAXA,WAAW,CAAEQ,YAAY,KAAI,CAAA;KAC5C;AACDC,IAAAA,OAAO,EAAE;MACPnF,SAAS,EAAEA,SAAS;AACrB,KAAA;AACF,GAAA,CAAC,CAAA;AAEF,EAAA,IAAMoF,UAAU,GAAG,CACjBhM,MAAM,CAACC,SAAS,EAChB;AAAEqC,IAAAA,YAAY,EAAAA,YAAA;AAAER,IAAAA,eAAe,EAAElD,MAAM,CAACyL,UAAU,CAAC9K,GAAAA;AAAK,GAAA,EACxDgM,aAAa;AAAE;AACf9M,EAAAA,KAAK;GACN,CAAA;AAED,EAAA,OAAO4M,SAAS,iBACd/N,oBAAC0H,gBAAgB,EAAA;AACfgG,IAAAA,aAAa,EAAE,GAAG;AAClB9F,IAAAA,OAAO,EAAEA,OAAO;AAEhBzG,IAAAA,KAAK,EAAEuN,UAAAA;GAAU,EAGd9P,QAAQ,CACM,kBAEnBoB,KAAA,CAAAC,aAAA,CAACwC,IAAI,EAAA;AAACtB,IAAAA,KAAK,EAAEuN,UAAAA;KACV9P,QAAQ,CACJ,CACR,CAAA;AACH,EAAC;AAED,IAAM8D,MAAM,GAAGJ,UAAU,CAACC,MAAM,CAAC;AAC/BI,EAAAA,SAAS,EAAE;AACTsG,IAAAA,OAAO,EAAE,EAAE;AACXjE,IAAAA,YAAY,EAAE,EAAA;AACd;AACD,GAAA;AACF,CAAA,CAAC;;;;","x_google_ignoreList":[0]}
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../node_modules/tslib/tslib.es6.js","../src/forms/FormContext.tsx","../src/fonts/Text.tsx","../src/forms/ErrorList.tsx","../src/forms/Input.tsx","../src/forms/TextArea.tsx","../src/forms/Label.tsx","../src/forms/InputList.tsx","../src/cards/Card.tsx","../src/forms/InputCheck.tsx","../src/forms/InputAttach.tsx","../src/components/Button.tsx"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n","// src/forms/FormContext.tsx\n\nimport React, { createContext, useState, ReactNode, useContext } from 'react';\n\ninterface FormContextProps {\n formValues: Record<string, any>;\n setFormValue: (name: string, value: any) => void;\n errors: Record<string, string[]>;\n setErrors: (errors: Record<string, string[]>) => void;\n handleSubmit: () => void;\n}\n\nconst FormContext = createContext<FormContextProps | undefined>(undefined);\n\nexport const useFormContext = () => {\n const context = useContext(FormContext);\n if (!context) {\n throw new Error(\"useFormContext must be used within a Form\");\n }\n return context;\n};\n\ninterface FormProps {\n children: ReactNode;\n onSubmit: (values: Record<string, any>) => Promise<Record<string, string[]>>; // Returns errors\n}\n\nexport const Form: React.FC<FormProps> = ({ children, onSubmit }) => {\n const [formValues, setFormValues] = useState<Record<string, any>>({});\n const [errors, setErrors] = useState<Record<string, string[]>>({});\n\n const setFormValue = (name: string, value: any) => {\n setFormValues(prev => ({ ...prev, [name]: value }));\n };\n\n const handleSubmit = async () => {\n const validationErrors = await onSubmit(formValues);\n \n // Set the validation errors in state\n setErrors(validationErrors);\n \n // Prevent submission if there are any errors\n if (Object.keys(validationErrors).length > 0) {\n return; // Prevent submission\n }\n \n };\n \n\n return (\n <FormContext.Provider value={{ formValues, setFormValue, errors, setErrors, handleSubmit }}>\n {children}\n </FormContext.Provider>\n );\n};\n","// src/fonts/Text.tsx\n\nimport { ThemeColors, ThemeContext, ThemeFonts } from 'aport-themes';\nimport React, { useContext } from 'react';\nimport { Text as RNText, StyleSheet, TextProps, TextStyle } from 'react-native';\n\ninterface CustomTextProps extends TextProps {\n /**\n * Content to be displayed inside the Text component.\n */\n children: React.ReactNode;\n\n /**\n * Size of the text. Defaults to 14.\n */\n size?: number;\n\n /**\n * If true, applies bold styling to the text.\n */\n b?: boolean;\n\n /**\n * If true, applies italic styling to the text.\n */\n i?: boolean;\n\n /**\n * If true, applies underline styling to the text.\n */\n u?: boolean;\n\n /**\n * Paragraph alignment. Can be 'left', 'center', or 'right'. Defaults to 'left'.\n */\n align?: 'left' | 'center' | 'right' | 'justify'; // Paragraph alignment\n\n /**\n * Text type. Defaults to 'text'. Should match the keys in ThemeColors.\n * This restricts type to known color keys like 'primary', 'error', etc.\n */\n type?: keyof ThemeColors;\n \n /**\n * Text font type. Defaults to 'body'. Should match the keys in ThemeFonts.\n * This restricts type to known fonts keys like 'primary', 'secundary', etc.\n */\n typeFont?: keyof ThemeFonts; // <-- New prop to select font type\n\n /**\n * Header level. Accepts 0 (none), 1, 2, or 3. Defaults to 0.\n */\n h?: 0 | 1 | 2 | 3;\n\n /**\n * Additional styles to apply to the Text component.\n */\n style?: TextStyle | TextStyle[];\n}\n\n/**\n * A dynamic Text component that supports HTML-like formatting.\n * Integrates with the Theme system for consistent styling.\n *\n * @param children - The content to be displayed inside the Text component.\n * @param size - Size of the text. Defaults to 'medium'.\n * @param b - If true, applies bold styling.\n * @param i - If true, applies italic styling.\n * @param type - Type of Text component. Defaults to 'text'.\n * @param typeFont - Type of Font component. Defaults to 'body'.\n * @param u - If true, applies underline styling.\n * @param align - Paragraph alignment. Defaults to 'left'.\n * @param h - Header level. Accepts 0 (none), 1, 2, or 3. Defaults to 0.\n * @param style - Additional styles to apply.\n */\nexport const Text: React.FC<CustomTextProps> = ({\n children,\n size = 14,\n b = false,\n i = false,\n u = false,\n align = 'left',\n type = 'text',\n typeFont = 'body',\n h = 0,\n style,\n}) => {\n const { theme } = useContext(ThemeContext);\n const { colors, fonts } = theme;\n\n // Determine font family and size based on 'typeFont'\n const fontSettings = fonts[typeFont] || fonts.body;\n const fontFamily = fontSettings.fontFamily;\n let fontSize = fontSettings.fontSize || size;\n\n // Calculate header size based on 'h' prop\n if (h === 1) fontSize = 32;\n else if (h === 2) fontSize = 24;\n else if (h === 3) fontSize = 18;\n \n // Define font weight based on bold prop\n const fontWeight = b ? '700' : fontSettings.fontWeight || '400';\n\n // Define font style based on italic prop\n const fontStyle = i ? 'italic' : 'normal';\n\n // Define text decoration based on underline prop\n const textDecorationLine = u ? 'underline' : 'none';\n\n // Define text alignment\n const textAlign: TextStyle['textAlign'] = align;\n // Map the 'type' prop to the correct color from the theme\n const textColor = colors[type]?.hex || colors.text.hex;\n \n // Combine all styles\n const textStyles: TextStyle = {\n fontSize,\n fontWeight,\n fontFamily,\n fontStyle,\n textDecorationLine,\n textAlign,\n color: textColor,\n };\n\n \n return (\n <RNText style={[textStyles, style]}>\n {children}\n </RNText>\n );\n};\n\nconst styles = StyleSheet.create({\n // Define any default styles if needed\n});\n\n","// src/forms/ErrorList.tsx\n\nimport React, { useContext } from 'react';\nimport { View, StyleSheet } from 'react-native';\nimport { Text } from '../fonts/Text';\nimport { ThemeContext } from 'aport-themes';\n\ninterface ErrorListProps {\n errors: string[];\n}\n\nconst ErrorList: React.FC<ErrorListProps> = ({ errors }) => {\n const { theme } = useContext(ThemeContext);\n const { colors } = theme;\n\n return (\n <View style={styles.container}>\n {errors.map((error, index) => (\n <View key={index} style={styles.errorItem}>\n <Text style={[styles.bullet, { color: colors.error.hex }]}>•</Text>\n <Text style={[styles.errorText, { color: colors.error.hex }]}>{error}</Text>\n </View>\n ))}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n marginTop: 4,\n },\n errorItem: {\n flexDirection: 'row',\n alignItems: 'flex-start',\n marginBottom: 2,\n },\n bullet: {\n marginRight: 4,\n fontSize: 12,\n },\n errorText: {\n flex: 1,\n fontSize: 12,\n },\n});\n\nexport default ErrorList;\n","// src/forms/Input.tsx\n\nimport React, { useContext } from \"react\";\nimport {\n TextInput,\n StyleSheet,\n View,\n TextInputProps,\n} from \"react-native\";\nimport { useFormContext } from \"./FormContext\";\nimport { Text } from \"../fonts/Text\";\nimport ErrorList from \"./ErrorList\";\nimport { ThemeContext } from \"aport-themes\";\n\n/**\n * Defines the props for the Input component.\n */\ninterface InputProps extends TextInputProps {\n /**\n * The unique identifier for the input field, used to manage its state within the form.\n */\n name: string;\n\n /**\n * The text label displayed above the input field.\n */\n label: string;\n\n /**\n * Specifies the type of input and applies corresponding formatting.\n * - 'phone': Formats input as a phone number (xxx-xxx-xxxx).\n * - 'id': Converts all input characters to uppercase (useful for IDs, passports).\n * - 'uppercase': Forces all input characters to uppercase (useful for codes).\n * - 'numeric': Restricts input to numeric characters only.\n */\n inputType?: \"phone\" | \"id\" | \"uppercase\" | \"numeric\";\n}\n\n/**\n * Input component that supports labels, error messages, and integrates with the Theme system.\n *\n * @param {InputProps} props - Props passed to the component.\n * @returns {JSX.Element} The rendered Input component.\n *\n * @example\n * <Input\n * name=\"email\"\n * label=\"Email\"\n * keyboardType=\"email-address\"\n * inputType=\"id\"\n * />\n */\nexport const Input: React.FC<InputProps> = ({\n name,\n label,\n inputType,\n style,\n ...rest\n}) => {\n const { formValues, setFormValue, errors: formErrors } = useFormContext();\n const { theme } = useContext(ThemeContext);\n const { colors } = theme;\n\n /**\n * Handles text changes in the input field, applying formatting based on the inputType.\n *\n * @param {string} text - The current text input by the user.\n */\n const handleChange = (text: string) => {\n let formattedText = text;\n\n // Apply different formatting based on inputType\n switch (inputType) {\n case \"phone\":\n // Remove all non-digit characters\n formattedText = text.replace(/\\D/g, \"\");\n // Insert hyphens to format as xxx-xxx-xxxx\n if (formattedText.length > 3 && formattedText.length <= 6) {\n formattedText = `${formattedText.slice(0, 3)}-${formattedText.slice(3)}`;\n } else if (formattedText.length > 6) {\n formattedText = `${formattedText.slice(0, 3)}-${formattedText.slice(\n 3,\n 6\n )}-${formattedText.slice(6, 10)}`;\n }\n break;\n case \"id\":\n case \"uppercase\":\n // Convert all input to uppercase\n formattedText = text.toUpperCase();\n break;\n case \"numeric\":\n // Allow only numeric input\n formattedText = text.replace(/\\D/g, \"\");\n break;\n default:\n break;\n }\n\n setFormValue(name, formattedText);\n };\n\n return (\n <View style={styles.container}>\n {/* Label */}\n <Text style={[styles.label, { color: colors.text.hex }]}>{label}</Text>\n\n {/* Input Field */}\n <TextInput\n style={[\n styles.input,\n {\n backgroundColor: colors.body.hex,\n borderColor: formErrors[name] ? colors.error.hex : \"#CCC\",\n color: colors.text.hex,\n },\n style,\n ]}\n value={formValues[name] || \"\"}\n onChangeText={handleChange}\n placeholder={label}\n placeholderTextColor={colors.placeHolder.hex} // Can use a lighter version if needed\n {...rest}\n />\n\n {/* Display errors only if form has been submitted and there are errors */}\n {formErrors[name] && formErrors[name].length > 0 && (\n <ErrorList errors={formErrors[name]} />\n )}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n marginBottom: 16,\n },\n label: {\n marginBottom: 4,\n fontSize: 14,\n },\n input: {\n height: 40,\n borderWidth: 1,\n borderRadius: 4,\n paddingHorizontal: 8,\n },\n});\n","// src/forms/TextArea.tsx\n\nimport React, { useContext } from 'react';\nimport { TextInput, StyleSheet, View, TextInputProps } from 'react-native';\nimport { useFormContext } from './FormContext';\nimport { Text } from '../fonts/Text'; // Assuming the Text component is exported from fonts\nimport ErrorList from './ErrorList';\nimport { ThemeContext } from 'aport-themes';\n\ninterface TextAreaProps extends TextInputProps {\n name: string;\n label: string;\n errors?: string[]; // Optional prop to directly pass errors\n}\n\nconst TextArea: React.FC<TextAreaProps> = ({ name, label, errors, style, ...rest }) => {\n const { formValues, setFormValue, errors: formErrors } = useFormContext();\n const { theme } = useContext(ThemeContext);\n const { colors } = theme;\n\n const handleChange = (text: string) => {\n setFormValue(name, text);\n };\n\n return (\n <View style={styles.container}>\n <Text style={[styles.label, {color: colors.text.hex}]}>{label}</Text>\n <TextInput\n style={[\n styles.textArea,\n style,\n {backgroundColor: colors.body.hex, color: colors.text.hex, borderColor: colors.placeHolder.hex}\n ]}\n value={formValues[name] || ''}\n onChangeText={handleChange}\n placeholder={label}\n placeholderTextColor=\"#888\" // Can be themed if needed\n multiline\n numberOfLines={4}\n textAlignVertical=\"top\"\n {...rest}\n />\n {/* Display errors only if form has been submitted and there are errors */}\n {formErrors[name] && formErrors[name].length > 0 && (\n <ErrorList errors={formErrors[name]} />\n )}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n marginBottom: 16,\n },\n label: {\n marginBottom: 4,\n },\n textArea: {\n height: 100,\n borderWidth: 1,\n borderRadius: 4,\n paddingHorizontal: 8,\n paddingVertical: 8,\n },\n});\n\nexport default TextArea;\n","// src/forms/Label.tsx\n\nimport React, { useContext } from 'react';\nimport { StyleSheet } from 'react-native';\nimport { Text } from '../fonts/Text';\nimport { ThemeContext } from 'aport-themes';\n\ninterface LabelProps {\n text: string;\n style?: any;\n}\n\nconst Label: React.FC<LabelProps> = ({ text, style }) => {\n const { theme } = useContext(ThemeContext);\n const { colors } = theme;\n return <Text style={[styles.label, style, { color: colors.text.hex }]}>{text}</Text>;\n};\n\nconst styles = StyleSheet.create({\n label: {\n marginBottom: 4,\n fontWeight: '500',\n },\n});\n\nexport default Label;\n","import React, { useState, useRef, useCallback, useContext } from 'react';\nimport { View, Text, TouchableOpacity, FlatList, TextInput, StyleSheet, Modal, Pressable, Keyboard } from 'react-native';\nimport { ThemeContext } from \"aport-themes\";\nimport { useFormContext } from '../forms/FormContext';\n\ninterface Option {\n id: number | string;\n label: string;\n value: any;\n}\n\ninterface InputListProps {\n name: string;\n /**\n * Placeholder text displayed in the input box when no selection is made.\n * @type {string}\n * @default \"Choose value/s\"\n */\n placeholder?: string;\n \n /**\n * Custom styles for the component.\n * @type {object}\n */\n style?: object;\n\n /**\n * Array of options to display in the dropdown. Each option should have an id, label, and value.\n * @type {Option[]}\n */\n options: Option[];\n\n /**\n * Enables multi-selection mode when true. If enabled, users can select multiple values.\n * @type {boolean}\n * @default false\n */\n multi?: boolean;\n\n /**\n * Disables the dropdown input when true.\n * @type {boolean}\n * @default false\n */\n disabled?: boolean;\n\n /**\n * Key used to sort options in the dropdown (e.g., by 'id', 'label').\n * @type {keyof Option}\n */\n sortBy?: keyof Option;\n\n /**\n * If true, displays a separator line between each option.\n * @type {boolean}\n * @default false\n */\n separator?: boolean;\n\n /**\n * Closes the dropdown if the user scrolls the list.\n * @type {boolean}\n * @default false\n */\n closeOnScroll?: boolean;\n\n /**\n * Closes the dropdown after selecting an item if true (only relevant when multi is false).\n * @type {boolean}\n * @default true\n */\n closeOnSelect?: boolean;\n\n /**\n * Limits the maximum number of items that can be selected when multi is true.\n * Once the limit is reached, the dropdown closes, and no further selections can be made until\n * an item is deselected.\n * @type {number}\n */\n maxSelection?: number;\n\n /**\n * Callback function called when the selection changes. Useful for conditional field enabling.\n * @param {Option | Option[] | null} selection - The updated selection.\n */\n onChange?: (selection: Option | Option[] | null) => void;\n}\n\n/**\n * InputList component - A custom dropdown list component for React Native with multi-selection support,\n * customizable styling, sorting, and configurable close behavior on selection or scrolling.\n *\n * @param {string} placeholder - Placeholder text for the input.\n * @param {object} style - Custom styles for the component.\n * @param {Option[]} options - Array of options to display in the dropdown.\n * @param {boolean} multi - Enables multi-selection mode.\n * @param {boolean} disabled - Disables the dropdown input.\n * @param {keyof Option} sortBy - Key to sort options by (e.g., 'id').\n * @param {boolean} separator - If true, adds a separator line between options.\n * @param {boolean} closeOnScroll - Closes the dropdown if the user scrolls the list.\n * @param {boolean} closeOnSelect - Closes the dropdown on selection in single-select mode.\n * @param {number} maxSelection - Maximum number of items selectable in multi-select mode.\n */\nexport const InputList: React.FC<InputListProps> = ({\n name,\n placeholder = \"Choose value/s\",\n style,\n options,\n multi = false,\n disabled = false,\n sortBy,\n separator = false,\n closeOnScroll = false,\n closeOnSelect = true,\n maxSelection,\n onChange,\n}) => {\n const { formValues, setFormValue } = useFormContext();\n const [isDropdownVisible, setIsDropdownVisible] = useState(false);\n \n const selectedOptions = formValues[name] || (multi ? [] : null);\n const sortedOptions = sortBy ? [...options].sort((a, b) => (a[sortBy] > b[sortBy] ? 1 : -1)) : options;\n const { theme } = useContext(ThemeContext);\n const { colors } = theme;\n\n /**\n * Handles selection of an option. Adds or removes the option from selectedOptions based on\n * multi-selection and maxSelection criteria.\n * @param {Option} option - The selected option object.\n */\n const handleSelectOption = (option: Option) => {\n let updatedSelections;\n\n if (multi) {\n const alreadySelected = selectedOptions.some((opt: Option) => opt.id === option.id);\n updatedSelections = alreadySelected\n ? selectedOptions.filter((opt: Option) => opt.id !== option.id)\n : [...selectedOptions, option];\n\n if (!alreadySelected && maxSelection && updatedSelections.length >= maxSelection) {\n setIsDropdownVisible(false);\n }\n\n setFormValue(name, updatedSelections);\n } else {\n updatedSelections = option;\n setFormValue(name, option);\n if (closeOnSelect) setIsDropdownVisible(false);\n }\n\n // Trigger onChange callback with the updated selection\n if (onChange) {\n onChange(updatedSelections);\n }\n };\n\n\n\n /**\n * Renders selected options as a comma-separated string or the placeholder if none selected.\n * @returns {string} - The display text for selected options or placeholder.\n */\n const renderSelectedText = () => {\n if (multi) return selectedOptions.map((opt: Option) => opt.label).join(', ') || placeholder;\n return selectedOptions?.label || placeholder;\n };\n\n /**\n * Toggles dropdown visibility. Disables toggle if the component is disabled.\n */\n const toggleDropdown = () => {\n if (!disabled) {\n setIsDropdownVisible(!isDropdownVisible);\n if (!isDropdownVisible) Keyboard.dismiss();\n }\n };\n\n /**\n * Closes the dropdown when pressing outside.\n */\n const handleCloseDropdown = useCallback(() => {\n if (isDropdownVisible) setIsDropdownVisible(false);\n }, [isDropdownVisible]);\n\n // Conditionally render item as disabled if max selection reached and item is unselected\n const isItemDisabled = (option: Option) => {\n return (\n multi &&\n maxSelection &&\n selectedOptions.length >= maxSelection &&\n !selectedOptions.some((opt: Option) => opt.id === option.id)\n );\n };\n\n\n return (\n <View style={[styles.container, style]}>\n <Text style={{color: colors.text.hex,marginBottom: 4,\n}}>{name}</Text>\n\n <TouchableOpacity style={styles.inputContainer} onPress={toggleDropdown} disabled={disabled}>\n <Text style={{color: colors.text.hex}}>{renderSelectedText()}</Text>\n </TouchableOpacity>\n \n <Modal visible={isDropdownVisible} transparent animationType=\"fade\">\n <Pressable style={styles.overlay} onPress={handleCloseDropdown} />\n <View style={[styles.dropdownContainer,{backgroundColor: colors.body.hex,\n}]}>\n <FlatList\n data={sortedOptions}\n keyExtractor={(item) => item.id.toString()}\n renderItem={({ item }) => {\nconst isSelected = multi\n ? (selectedOptions as Option[]).some((opt: Option) => opt.id === item.id)\n : selectedOptions?.id === item.id;\n const isDisabled = isItemDisabled(item);\n\n return (\n <TouchableOpacity\n onPress={() => handleSelectOption(item)}\n style={[\n styles.optionItem,\n isSelected ? {backgroundColor: colors.primary.hex} : {},\n isDisabled ? {backgroundColor: colors.placeHolder.hex} : {},\n ]}\n disabled={!!isDisabled} // Ensure disabled prop is a boolean\n >\n <Text style={[isSelected ? {color: colors.body.hex}: {color: colors.text.hex}, isDisabled ? styles.disabledText : {}]}>\n {item.label}\n </Text>\n </TouchableOpacity>\n );\n }}\n ItemSeparatorComponent={() => (separator ? <View style={styles.separator} /> : null)}\n scrollEnabled={!closeOnScroll}\n />\n </View>\n </Modal>\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: { },\n inputContainer: { padding: 12, borderWidth: 1, borderColor: '#ccc', borderRadius: 5 },\n dropdownContainer: {\n position: 'absolute',\n top: '30%', // Center the dropdown vertically\n alignSelf: 'center',\n width: '90%',\n backgroundColor: '#fff',\n borderRadius: 8,\n elevation: 5,\n paddingVertical: 10,\n },\n optionItem: { padding: 12 },\n disabledText: { color: '#999' },\n separator: { height: 1, backgroundColor: '#ddd', marginHorizontal: 8 },\n overlay: { flex: 1, backgroundColor: 'rgba(0,0,0,0.3)' },\n});\n","// src/cards/Card.tsx\n\nimport { ThemeContext } from 'aport-themes';\nimport React, { useContext } from 'react';\nimport {\n View,\n StyleSheet,\n StyleProp,\n ViewStyle,\n Platform,\n TouchableOpacity,\n GestureResponderEvent,\n} from 'react-native';\n\n/**\n * Interface for the props that the Card component accepts.\n */\ninterface CardProps {\n /**\n * Content to be rendered inside the Card.\n */\n children: React.ReactNode;\n\n /**\n * Style to be applied to the Card container.\n */\n style?: StyleProp<ViewStyle>;\n\n /**\n * Function to call when the Card is pressed.\n */\n onPress?: (event: GestureResponderEvent) => void;\n\n /**\n * Whether the Card is pressable. Defaults to false.\n */\n pressable?: boolean;\n\n /**\n * Border radius of the Card. Defaults to 12.\n */\n borderRadius?: number;\n\n /**\n * Elevation of the Card (Android only).\n */\n elevation?: number;\n\n /**\n * Shadow properties for iOS.\n */\n shadowProps?: {\n shadowColor?: string;\n shadowOffset?: { width: number; height: number };\n shadowOpacity?: number;\n shadowRadius?: number;\n };\n}\n\n/**\n * Card component that adapts its styles based on the current theme.\n * Supports dynamic styling, shadows, and press animations.\n *\n * @param children - The content to be displayed inside the Card.\n * @param style - Additional styles to apply to the Card.\n * @param onPress - Function to execute when the Card is pressed.\n * @param pressable - Determines if the Card is pressable. Defaults to false.\n * @param borderRadius - Border radius of the Card. Defaults to 12.\n * @param elevation - Elevation for Android shadow. Overrides default.\n * @param shadowProps - Custom shadow properties for iOS. Overrides defaults.\n */\nexport const Card: React.FC<CardProps> = ({\n children,\n style,\n onPress,\n pressable = false,\n borderRadius = 12,\n elevation = 4,\n shadowProps = {},\n }) => {\n const { theme } = useContext(ThemeContext);\n const { colors } = theme;\n \n // Animation state for pressable effect\n // Default shadow styles (improved platform-specific handling)\n const defaultShadow = Platform.select({\n ios: {\n shadowColor: shadowProps?.shadowColor || colors.text.hex, // Defaulting to theme text color\n shadowOffset: shadowProps?.shadowOffset || { width: 0, height: 2 },\n shadowOpacity: shadowProps?.shadowOpacity || 0.1,\n shadowRadius: shadowProps?.shadowRadius || 4,\n },\n android: {\n elevation: elevation, // Only applies to Android\n },\n });\n \n const cardStyles = [\n styles.container,\n { borderRadius, backgroundColor: colors.background.hex },\n defaultShadow, // Dynamic shadows based on platform\n style, // External styles\n ];\n \n return pressable ? (\n <TouchableOpacity\n activeOpacity={0.8}\n onPress={onPress}\n \n style={cardStyles}\n >\n \n {children}\n </TouchableOpacity>\n ) : (\n <View style={cardStyles}>\n {children}\n </View>\n );\n };\n \n const styles = StyleSheet.create({\n container: {\n padding: 16,\n borderRadius: 12,\n // Shadows handled dynamically with platform logic\n },\n });\n\n","import React, { useContext, useState } from \"react\";\nimport { useFormContext } from \"../forms/FormContext\";\nimport {\n Image,\n StyleSheet,\n FlatList,\n} from \"react-native\";\nimport { ThemeContext } from \"aport-themes\";\nimport { Text } from \"../fonts\";\nimport { Card } from \"../cards\";\n\ninterface InputCheckProps {\n name: string;\n options: { id: string; label: string; icon?: string }[]; // Array of options with optional icon\n multi?: boolean; // Allows multiple selection (checkbox behavior)\n max?: number; // Maximum number of selections\n rowAmount?: number; // Number of items per row\n iconPosition?: \"row\" | \"column\"; // Icon and label layout\n disabled?: boolean; // Disable the input\n}\n\nconst InputCheck: React.FC<InputCheckProps> = ({\n name,\n options,\n multi = false,\n max,\n rowAmount = 3,\n iconPosition = \"row\",\n disabled = false,\n}) => {\n const { formValues, setFormValue } = useFormContext();\n const [selectedValues, setSelectedValues] = useState<string[]>(\n formValues[name] || []\n );\n const { theme } = useContext(ThemeContext);\n const { colors } = theme;\n\n const handleSelect = (id: string) => {\n if (disabled) return;\n\n let updatedSelection;\n if (multi) {\n if (selectedValues.includes(id)) {\n updatedSelection = selectedValues.filter((value) => value !== id);\n } else {\n if (max && selectedValues.length >= max) return; // Prevent selection beyond max\n updatedSelection = [...selectedValues, id];\n }\n } else {\n updatedSelection = [id];\n }\n\n setSelectedValues(updatedSelection);\n setFormValue(name, updatedSelection);\n };\n\n const renderItem = ({ item }: { item: { id: string; label: string; icon?: string } }) => {\n const isSelected = selectedValues.includes(item.id);\n\n return (\n\n <Card\n pressable\n onPress={() => handleSelect(item.id)}\n style={[\n styles.card,\n isSelected && { backgroundColor: colors.primary.hex }, // Replace with colors.primary.hex if available\n disabled && styles.cardDisabled,\n ]}\n >\n {item.icon && (\n <Image\n source={{ uri: item.icon }}\n style={[\n styles.icon,\n iconPosition === \"column\" && styles.iconColumn,\n ]}\n />\n )}\n <Text\n style={[\n styles.label,\n { color: isSelected ? colors.textButton.hex:colors.text.hex }, // Replace with colors.textButton.hex\n ]}\n >\n {item.label}\n </Text>\n </Card>\n );};\n\n return (\n <FlatList\n data={options}\n renderItem={renderItem}\n keyExtractor={(item) => item.id}\n numColumns={rowAmount}\n columnWrapperStyle={rowAmount > 1 ? styles.row : undefined}\n scrollEnabled={false}\n />\n );\n};\n\nexport default InputCheck;\n\nconst styles = StyleSheet.create({\n card: {\n flex: 1,\n margin: 5,\n padding: 10,\n borderWidth: 1,\n borderColor: \"#ccc\",\n borderRadius: 8,\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n cardDisabled: {\n opacity: 0.5,\n },\n icon: {\n width: 40,\n height: 40,\n marginBottom: 5,\n },\n iconColumn: {\n marginBottom: 10,\n },\n label: {\n fontSize: 14,\n textAlign: \"center\",\n },\n row: {\n justifyContent: \"space-between\",\n },\n});\n","// src/components/InputAttach.tsx\n\nimport React, { useContext, useState } from \"react\";\nimport { View, TouchableOpacity, Image, StyleSheet, Alert } from \"react-native\";\nimport { useFormContext } from \"./FormContext\";\nimport * as ImagePicker from \"expo-image-picker\";\nimport { Text } from \"../fonts\";\nimport { ThemeContext } from \"aport-themes\";\n\ninterface FileData {\n uri: string;\n name: string;\n type: string;\n}\n\ninterface InputAttachProps {\n name: string;\n type?: string[]; // Accepted file types\n amount?: number; // Maximum number of files\n disabled?: boolean; // If the input is pressable\n placeholder?: string; // Placeholder text\n}\n\nconst InputAttach: React.FC<InputAttachProps> = ({\n name,\n type = [\"png\", \"jpg\", \"jpeg\"],\n amount = 1,\n disabled = false,\n placeholder = \"Upload an image\",\n}) => {\n const { setFormValue, formValues, errors } = useFormContext();\n const [selectedFiles, setSelectedFiles] = useState<FileData[]>([]);\n const { theme } = useContext(ThemeContext);\n const { colors } = theme;\n\n const pickImage = async () => {\n if (disabled) return;\n\n const permissionResult = await ImagePicker.requestMediaLibraryPermissionsAsync();\n if (!permissionResult.granted) {\n Alert.alert(\"Permission Required\", \"We need access to your photos to upload images.\");\n return;\n }\n\n const result = await ImagePicker.launchImageLibraryAsync({\n mediaTypes: ImagePicker.MediaTypeOptions.Images,\n allowsMultipleSelection: amount > 1,\n quality: 1,\n });\n\n if (!result.canceled) {\n const selectedAssets = result.assets || [result]; // Handle different return formats\n const newFiles: FileData[] = selectedAssets.map((asset) => ({\n uri: asset.uri,\n name: asset.fileName || \"unknown.jpg\",\n type: asset.mimeType || \"image/jpeg\",\n }));\n\n // Validate file types\n const invalidFiles = newFiles.filter(\n (file) => !type.some((ext) => file.name.toLowerCase().endsWith(ext))\n );\n if (invalidFiles.length > 0) {\n Alert.alert(\"Invalid File Type\", `Please upload files of type: ${type.join(\", \")}`);\n return;\n }\n\n // Check max amount\n if (selectedFiles.length + newFiles.length > amount) {\n Alert.alert(\"Limit Exceeded\", `You can upload up to ${amount} files.`);\n return;\n }\n\n const updatedFiles = [...selectedFiles, ...newFiles].slice(0, amount);\n setSelectedFiles(updatedFiles);\n setFormValue(name, updatedFiles); // Update form context\n }\n };\n\n const removeFile = (index: number) => {\n const updatedFiles = selectedFiles.filter((_, i) => i !== index);\n setSelectedFiles(updatedFiles);\n setFormValue(name, updatedFiles); // Update form context\n };\n\n return (\n <View style={styles.container}>\n <Text style={[styles.label,{ color: colors.text.hex }]}>{placeholder}</Text>\n <View style={styles.fileContainer}>\n {selectedFiles.map((file, index) => (\n <View key={index} style={styles.fileItem}>\n <Image source={{ uri: file.uri }} style={styles.imagePreview} />\n <TouchableOpacity onPress={() => removeFile(index)} style={[styles.removeButton,{ backgroundColor: colors.error.hex }]}>\n <Text style={styles.removeButtonText}>X</Text>\n </TouchableOpacity>\n </View>\n ))}\n {selectedFiles.length < amount && (\n <TouchableOpacity onPress={pickImage} style={[styles.addButton,{ backgroundColor: colors.body.hex }]} disabled={disabled}>\n <Text style={[styles.addButtonText,{ color: colors.placeHolder.hex }]}>+</Text>\n </TouchableOpacity>\n )}\n </View>\n {errors[name] && <Text style={[styles.error,{ color: colors.error.hex }]}>{errors[name].join(\", \")}</Text>}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: { marginVertical: 10 },\n label: {marginBottom: 5 },\n fileContainer: { flexDirection: \"row\", flexWrap: \"wrap\", gap: 10 },\n fileItem: { position: \"relative\", width: 100, height: 100, marginRight: 10 },\n imagePreview: { width: \"100%\", height: \"100%\", borderRadius: 5 },\n removeButton: {\n position: \"absolute\",\n top: 0,\n right: 0,\n width: 20,\n height: 20,\n justifyContent: \"center\",\n alignItems: \"center\",\n borderRadius: 10,\n },\n removeButtonText: { color: \"#fff\", fontWeight: \"bold\" },\n addButton: {\n width: 100,\n height: 100,\n justifyContent: \"center\",\n alignItems: \"center\",\n borderRadius: 5,\n },\n addButtonText: { fontSize: 24 },\n error: { marginTop: 5 },\n});\n\nexport default InputAttach;\n","// src/components/Button.tsx\n\nimport React, { useMemo, useContext } from 'react';\nimport { Text, ViewStyle, StyleSheet, TouchableOpacity, ActivityIndicator } from 'react-native';\nimport { useFormContext } from '../forms';\nimport { ThemeColors, ThemeContext } from 'aport-themes';\n\n/**\n * Interface for the props that the Button component accepts.\n */\ninterface ButtonProps {\n /**\n * If true, the button is disabled and not pressable.\n */\n disabled?: boolean;\n\n /**\n * If true, the button expands to full width of its container.\n */\n isFullWidth?: boolean;\n\n /**\n * Text content of the button.\n */\n children?: string;\n\n /**\n * Function to call when the button is pressed.\n */\n onPress?: () => void;\n\n /**\n * If true, the button has rounded corners.\n */\n rounded?: boolean;\n\n /**\n * Custom border radius value. Overrides the `rounded` prop if provided.\n */\n borderRadius?: number;\n\n /**\n * Specifies the button type for styling. Can be 'submit', 'button', or 'cancel'.\n */\n type?: 'submit' | 'button' | 'cancel';\n\n /**\n * If true, a loading spinner is shown and the button is disabled.\n */\n loading?: boolean;\n}\n\n/**\n * Determines the styles based on the button type and whether it is disabled.\n *\n * @param type - The type of the button ('submit', 'button', 'cancel').\n * @param disabled - Whether the button is disabled.\n * @param themeColors - The theme colors.\n * @returns The computed style for the button.\n */\nfunction typeStyles(\n type?: string,\n disabled?: boolean,\n themeColors?: ThemeColors\n): ViewStyle {\n switch (type) {\n case 'submit':\n return {\n backgroundColor: `rgba(${themeColors?.primary.rgb.r}, ${themeColors?.primary.rgb.g}, ${themeColors?.primary.rgb.b}, ${\n disabled ? 0.5 : 1\n })`,\n borderWidth: 2,\n borderColor: themeColors?.primary.hex,\n };\n case 'button':\n return {\n backgroundColor: themeColors?.primary.hex,\n borderColor: themeColors?.secondary.hex,\n opacity: disabled ? 0.5 : 1,\n borderWidth: 2,\n };\n case 'cancel':\n return {\n backgroundColor: themeColors?.background.hex,\n borderWidth: 0,\n };\n default:\n return {};\n }\n}\n\n/**\n * Button component that adapts its styles based on the current theme.\n * Supports dynamic styling, full-width option, rounded corners, and different types.\n *\n * @param disabled - If true, the button is disabled and not pressable.\n * @param isFullWidth - If true, the button expands to full width of its container.\n * @param children - Text content of the button.\n * @param onPress - Function to call when the button is pressed.\n * @param rounded - If true, the button has rounded corners.\n * @param borderRadius - Custom border radius value. Overrides the `rounded` prop if provided.\n * @param type - Specifies the button type for styling ('submit', 'button', 'cancel').\n */\nexport const Button: React.FC<ButtonProps> = ({\n children,\n disabled = false,\n type = 'button',\n rounded = true,\n borderRadius = 30,\n isFullWidth = false,\n loading = false,\n onPress,\n}) => {\n const { theme } = useContext(ThemeContext);\n const { colors } = theme;\n const { handleSubmit } = useFormContext();\n\n const computedStyles = useMemo(() => {\n return StyleSheet.flatten([\n styles.button,\n typeStyles(type, disabled, colors),\n rounded && { borderRadius },\n isFullWidth && { width: '100%' },\n (disabled || loading) && styles.disabled,\n ]);\n }, [type, disabled, loading, rounded, borderRadius, isFullWidth, colors]);\n\n const textColor = useMemo(() => {\n return type === \"cancel\" ? { color: colors.text.hex } : { color: colors.textButton.hex };\n }, [type, colors]);\n\n const handlePress = () => {\n if (type === 'submit') {\n handleSubmit(); // Call the form's submit handler\n } else if (onPress) {\n onPress(); // Call a custom handler if needed\n }\n };\n\n\n return (\n <TouchableOpacity\n style={computedStyles as ViewStyle}\n disabled={disabled || loading}\n onPress={handlePress}\n activeOpacity={0.7}\n >\n {loading ? ( // Show loading spinner if loading\n <ActivityIndicator size=\"small\" color={colors.textButton.hex} />\n ) : (\n <Text style={textColor}>\n {Array.isArray(children) ? children.join('').toUpperCase() : children?.toUpperCase()}\n </Text>\n )}\n </TouchableOpacity>\n );\n};\n\nconst styles = StyleSheet.create({\n button: {\n justifyContent: 'center',\n alignItems: 'center',\n paddingVertical: 10,\n paddingHorizontal: 20,\n },\n disabled: {\n opacity: 0.6,\n },\n});\n\n"],"names":["FormContext","createContext","undefined","useFormContext","context","useContext","Error","Form","_a","children","onSubmit","_b","useState","formValues","setFormValues","_c","errors","setErrors","setFormValue","name","value","prev","handleSubmit","__awaiter","validationErrors","sent","Object","keys","length","React","createElement","Provider","Text","size","_d","b","_e","i","_f","u","_g","align","_h","type","_j","typeFont","_k","h","style","theme","ThemeContext","colors","fonts","fontSettings","body","fontFamily","fontSize","fontWeight","fontStyle","textDecorationLine","textAlign","textColor","hex","text","textStyles","color","RNText","StyleSheet","create","ErrorList","View","styles","container","map","error","index","key","errorItem","bullet","errorText","marginTop","flexDirection","alignItems","marginBottom","marginRight","flex","Input","label","inputType","rest","__rest","formErrors","handleChange","formattedText","replace","concat","slice","toUpperCase","TextInput","__assign","input","backgroundColor","borderColor","onChangeText","placeholder","placeholderTextColor","placeHolder","height","borderWidth","borderRadius","paddingHorizontal","TextArea","textArea","multiline","numberOfLines","textAlignVertical","paddingVertical","Label","InputList","options","multi","disabled","sortBy","separator","closeOnScroll","closeOnSelect","maxSelection","onChange","isDropdownVisible","setIsDropdownVisible","selectedOptions","sortedOptions","__spreadArray","sort","a","handleSelectOption","option","updatedSelections","alreadySelected","some","opt","id","filter","renderSelectedText","join","toggleDropdown","Keyboard","dismiss","handleCloseDropdown","useCallback","isItemDisabled","TouchableOpacity","inputContainer","onPress","Modal","visible","transparent","animationType","Pressable","overlay","dropdownContainer","FlatList","data","keyExtractor","item","toString","renderItem","isSelected","isDisabled","optionItem","primary","disabledText","ItemSeparatorComponent","scrollEnabled","padding","position","top","alignSelf","width","elevation","marginHorizontal","Card","pressable","shadowProps","defaultShadow","Platform","select","ios","shadowColor","shadowOffset","shadowOpacity","shadowRadius","android","cardStyles","background","activeOpacity","InputCheck","max","rowAmount","iconPosition","selectedValues","setSelectedValues","handleSelect","updatedSelection","includes","card","cardDisabled","icon","Image","source","uri","iconColumn","textButton","numColumns","columnWrapperStyle","row","margin","justifyContent","opacity","InputAttach","amount","selectedFiles","setSelectedFiles","pickImage","ImagePicker","requestMediaLibraryPermissionsAsync","permissionResult","granted","Alert","alert","launchImageLibraryAsync","mediaTypes","MediaTypeOptions","Images","allowsMultipleSelection","quality","result","canceled","selectedAssets","assets","newFiles","asset","fileName","mimeType","invalidFiles","file","ext","toLowerCase","endsWith","updatedFiles","removeFile","_","fileContainer","fileItem","imagePreview","removeButton","removeButtonText","addButton","addButtonText","marginVertical","flexWrap","gap","right","typeStyles","themeColors","rgb","r","g","secondary","Button","rounded","isFullWidth","loading","computedStyles","useMemo","flatten","button","handlePress","ActivityIndicator","Array","isArray"],"mappings":"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","x_google_ignoreList":[0]}
|