{"version":3,"file":"index.mjs","sources":["../src/BABox.tsx","../src/BALoader.tsx","../src/BABackdropLoader.tsx","../src/BAButton.tsx","../src/BACheckbox.tsx","../src/BAPera.tsx","../src/BACollapse.tsx","../src/BADate.tsx","../src/BAFieldset.tsx","../node_modules/tslib/tslib.es6.js","../src/BAInput.tsx","../src/BASelect.tsx","../src/BASwitch.tsx","../src/BATextarea.tsx","../src/BARadio.tsx","../src/BAComponentSwitcher.tsx","../src/config/helpers.ts","../src/BAFormElement.tsx","../src/BAIconButton.tsx","../src/BAFormGrid.tsx","../src/BAGrid.tsx","../src/BAMenu.tsx","../src/BAModal.tsx","../src/BAPagination.tsx","../src/BAScreenHeader.tsx","../src/BASearchLookup.tsx","../src/config/apimethods.ts","../src/MasterContainer.tsx"],"sourcesContent":["\r\n\r\ntype propsType = {\r\n    children?: React.ReactNode,\r\n    className?: string,\r\n    sx?: any,\r\n    onClick?: () => void,\r\n}\r\nexport default function BABox(props: propsType) {\r\n    const { children, className, sx, onClick } = props;\r\n\r\n\r\n    return <>\r\n        <div onClick={onClick} style={sx} className={className}>{children}</div>\r\n    </>\r\n}","\r\nimport {\r\n    LoadingOutlined,\r\n} from '@ant-design/icons';\r\nimport BABox from \"./BABox\"\r\n\r\nexport default function BALoader() {\r\n    return <>\r\n        <BABox className=\"flex h-full items-center justify-center\">\r\n            <LoadingOutlined style={{ fontSize: '3em' }} />\r\n        </BABox>\r\n    </>\r\n}","import BABox from \"./BABox\";\r\nimport BALoader from \"./BALoader\";\r\n\r\nexport default function BABackdropLoader({ loading = true }) {\r\n    if (!loading) return null;\r\n    return (\r\n        <BABox\r\n            sx={{\r\n                position: \"fixed\",\r\n                top: 0,\r\n                left: 0,\r\n                width: \"100vw\",\r\n                height: \"100vh\",\r\n                background: \"rgba(255,255,255,0.6)\",\r\n                zIndex: 9999,\r\n                display: \"flex\",\r\n                alignItems: \"center\",\r\n                justifyContent: \"center\",\r\n            }}\r\n        >\r\n            <BALoader />\r\n        </BABox>\r\n    );\r\n}\r\n","\r\n\r\nimport { Button } from \"antd\"\r\n\r\n\r\ntype propsType = {\r\n    type?: \"primary\" | \"default\" | \"dashed\" | \"link\" | \"text\" | undefined,\r\n    htmlType?: \"submit\" | \"button\" | \"reset\" | undefined,\r\n    onClick?: any,\r\n    label?: React.ReactNode,\r\n    className?: string,\r\n    sx?: any,\r\n    icon?: any,\r\n    loading?: boolean,\r\n    disabled?: boolean,\r\n}\r\nexport default function BAButton(props: propsType) {\r\n    const { htmlType, onClick, label, loading, icon, disabled, type } = props;\r\n    return <>\r\n        <Button\r\n            disabled={disabled}\r\n            htmlType={htmlType}\r\n            icon={icon}\r\n            loading={loading}\r\n            onClick={onClick}\r\n            type={type || \"primary\"}\r\n        >{label}</Button>\r\n    </>\r\n}","\"use client\";\r\n\r\nimport { Checkbox } from 'antd';\r\nimport type { CheckboxProps } from 'antd';\r\n\r\ntype propTypes = {\r\n  isMultiple?: boolean;\r\n  label?: string;\r\n  onChange?: CheckboxProps['onChange'];\r\n  checked?: boolean\r\n  disabled?: boolean\r\n  required?: boolean\r\n}\r\n\r\nconst BACheckbox = (props: propTypes) => {\r\n  const { isMultiple, label, onChange, checked, disabled, required } = props\r\n\r\n  return (\r\n    <>\r\n      <Checkbox disabled={disabled} indeterminate={isMultiple} onChange={onChange} checked={checked}>\r\n        {label} {required && <span className='text-red-500'>*</span>}\r\n      </Checkbox>\r\n    </>\r\n  );\r\n};\r\n\r\nexport default BACheckbox;","\r\n\r\ntype propsType = {\r\n    children?: React.ReactNode,\r\n    className?: string,\r\n    sx?: any,\r\n    onClick?: () => void,\r\n}\r\nexport default function BAPera(props: propsType) {\r\n    const { children, className, sx, onClick } = props;\r\n    return <>\r\n        <p onClick={onClick} style={sx} className={`p-0 m-0 ${className}`}>{children}</p>\r\n    </>\r\n}","\"use client\";\r\n\r\nimport { useState } from \"react\"\r\nimport BABox from \"./BABox\"\r\nimport BAPera from \"./BAPera\"\r\nimport {\r\n    RightOutlined,\r\n    DownOutlined\r\n} from \"@ant-design/icons\";\r\n\r\nexport default function BACollapse(props: { label: string, children: any, icon?: any, expand?: boolean, labelClick?: any }) {\r\n    const { label, children, icon, expand, labelClick } = props\r\n    const [open, setOpen] = useState(expand)\r\n    const handleOpen = () => {\r\n        setOpen(!open)\r\n        if (labelClick) {\r\n            labelClick()\r\n        }\r\n    }\r\n    return <>\r\n        <BABox className=\"mb-2 border \" >\r\n            <BAPera onClick={handleOpen} className={`p-2 text-drawer font-semibold text-lg border-b hover:bg-[rgba(0,0,0,.1)] border-b-[drawer] cursor-pointer flex justify-between items-center`}><span>{icon && <span className=\"me-3 inline-block\">{icon}</span>}{label}</span>{<span style={{ fontSize: \"1rem\" }}>{open ? <DownOutlined /> : <RightOutlined />}</span>}</BAPera>\r\n            {open && <BABox className=\"p-2\">\r\n                {children}\r\n            </BABox>}\r\n        </BABox>\r\n    </>\r\n}","\"use client\";\r\n\r\nimport { DatePicker, Typography } from 'antd';\r\nimport dayjs from 'dayjs';\r\nimport BABox from './BABox';\r\n\r\n\r\ntype propsType = {\r\n    label: string,\r\n    disabled?: boolean,\r\n    required?: boolean,\r\n    onChange?: any,\r\n    value?: any,\r\n    minDate?: any,\r\n    maxDate?: any,\r\n    validate?: boolean,\r\n    picker?: 'week' | 'month' | 'quarter' | 'year' | undefined;\r\n    showTime?: boolean,\r\n}\r\n\r\n\r\n\r\n\r\nexport default function BADate(props: propsType) {\r\n    const { label, disabled, required, onChange, value, showTime, minDate, maxDate, picker } = props;\r\n    const { Title } = Typography;\r\n    const validatePeriod = (date: any, dateString: any) => {\r\n        if (!date) {\r\n            onChange(null, dateString);\r\n            return;\r\n        }\r\n        // Use local timezone (dayjs returns local by default)\r\n        const localDate = dayjs(date).toDate();\r\n        onChange(localDate, dateString);\r\n    };\r\n\r\n\r\n    return <BABox className=''>\r\n        {label && <Title level={5}>{label}<span className=\"text-2xl\">{required && \"*\"}</span></Title>}\r\n        <BABox>\r\n            <DatePicker\r\n                picker={picker}\r\n                minDate={minDate}\r\n                maxDate={maxDate}\r\n                required={required}\r\n                style={{ width: '100%' }}\r\n                onChange={validatePeriod}\r\n                value={value ? dayjs(value) : null}\r\n                disabled={disabled}\r\n                placeholder=''\r\n                showTime={showTime}\r\n                format={'DD-MMM-YYYY'}\r\n            />\r\n        </BABox>\r\n    </BABox>\r\n}","\"use client\";\r\n\r\nimport { theme } from \"antd\";\r\n\r\nexport default function BAFieldset({ title, body }: { title: string; body: React.ReactNode }) {\r\n    const { token }: any = theme.useToken();\r\n    return (\r\n        <fieldset className=\"rounded-lg border-2 bg-white p-2\">\r\n            <legend style={{ backgroundColor: token.token.colorPrimary }} className=\"rounded-lg p-2 px-4\">\r\n                <span className=\"text-white\">{title}</span>\r\n            </legend>\r\n            {body}\r\n        </fieldset>\r\n    );\r\n}","/******************************************************************************\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\nvar ownKeys = function(o) {\r\n    ownKeys = Object.getOwnPropertyNames || function (o) {\r\n        var ar = [];\r\n        for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n        return ar;\r\n    };\r\n    return ownKeys(o);\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 = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\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 function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n    if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n        return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n            return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n        });\r\n    }\r\n    return path;\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    __esDecorate: __esDecorate,\r\n    __runInitializers: __runInitializers,\r\n    __propKey: __propKey,\r\n    __setFunctionName: __setFunctionName,\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    __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n","\"use client\";\r\n\r\nimport { useState } from \"react\";\r\nimport { Input, Typography } from \"antd\";\r\nimport { PatternFormat, NumericFormat } from 'react-number-format';\r\nimport BABox from \"./BABox\";\r\nimport { OTPProps } from \"antd/es/input/OTP\";\r\nimport {\r\n    LoadingOutlined,\r\n    MailOutlined,\r\n} from '@ant-design/icons';\r\n\r\ntype propsType = {\r\n    label: string,\r\n    placeholder?: string,\r\n    disabled?: boolean,\r\n    required?: boolean,\r\n    className?: string,\r\n    onChange?: any,\r\n    onInput?: any,\r\n    onKeyDown?: any,\r\n    onBlur?: any,\r\n    value?: any,\r\n    type?: any\r\n    inputType?: \"numericinput\" | \"maskinput\" | \"passwordinput\" | \"otpinput\" | \"emailinput\"\r\n    mask?: string,\r\n    textAlign?: \"left\" | \"right\" | \"center\" | undefined,\r\n    validationType?: \"email\" | \"contactNumber\",\r\n    onFocus?: any,\r\n    decimalScale?: any,\r\n    prefix?: any,\r\n    suffix?: any,\r\n    allowNegative?: boolean,\r\n    loading?: boolean,\r\n    maxlength?: any,\r\n    length?: number,\r\n    otpMark?: string,\r\n}\r\nexport default function BAinput(props: propsType) {\r\n    const {\r\n        label,\r\n        placeholder,\r\n        disabled,\r\n        required,\r\n        onChange,\r\n        onInput,\r\n        value,\r\n        type,\r\n        onBlur,\r\n        onKeyDown,\r\n        validationType,\r\n        mask,\r\n        onFocus,\r\n        textAlign,\r\n        inputType,\r\n        decimalScale,\r\n        allowNegative,\r\n        prefix,\r\n        suffix,\r\n        maxlength,\r\n        otpMark,\r\n        loading,\r\n        length\r\n    } = props;\r\n    const [isError, setIsError] = useState(false);\r\n    const { Title } = Typography;\r\n    const emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$/;\r\n    const sharedProps: OTPProps = {\r\n        onChange,\r\n        onInput,\r\n    };\r\n\r\n    return <BABox>\r\n        {label && <Title level={5}>{label}<span className=\"text-2xl\">{required && \"*\"}</span></Title>}\r\n        <BABox>\r\n            {inputType === \"maskinput\" && mask ? <PatternFormat\r\n                value={value}\r\n                onChange={(e) => {\r\n                    const rawNumber = e.target.value?.replace(/\\D/g, \"\"); // Remove all non-numeric characters\r\n                    onChange(rawNumber || null)\r\n                }}\r\n                customInput={Input}\r\n                format={mask}\r\n                disabled={disabled || loading}\r\n                allowEmptyFormatting\r\n                suffix={loading ? <LoadingOutlined /> : suffix}\r\n                mask=\"_\"\r\n            /> : inputType === \"passwordinput\" ? <Input.Password\r\n\r\n                value={value}\r\n                placeholder={placeholder}\r\n                suffix={loading ? <LoadingOutlined /> : suffix}\r\n                prefix={prefix}\r\n                disabled={disabled || loading}\r\n                required={required}\r\n                onChange={onChange}\r\n            /> : inputType === \"numericinput\" ? <NumericFormat\r\n                onKeyDown={onKeyDown}\r\n                value={value}\r\n                customInput={Input}\r\n                thousandSeparator=\",\"\r\n                decimalScale={decimalScale}\r\n                fixedDecimalScale\r\n                allowNegative={allowNegative}\r\n                prefix={prefix ? `${prefix} ` : ''}\r\n                suffix={loading ? `${<LoadingOutlined />}` : suffix ? ` ${suffix}` : ''}\r\n                placeholder={placeholder}\r\n                disabled={disabled || loading}\r\n                onValueChange={onChange}\r\n                onBlur={onBlur}\r\n                onFocus={onFocus}\r\n                style={{\r\n                    textAlign: 'right',\r\n                }}\r\n            /> : inputType === \"otpinput\" ? <Input.OTP\r\n                {...sharedProps}\r\n                value={value}\r\n                length={length || 6}\r\n                disabled={disabled}\r\n                onChange={onChange}\r\n                mask={otpMark}\r\n                className=\"custom-otp\"\r\n            /> : inputType === \"emailinput\" ? <Input\r\n                suffix={loading ? <LoadingOutlined /> : suffix ? suffix : <MailOutlined />}\r\n                onBlur={(e) => {\r\n                    let emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$/\r\n                    if (!emailRegex.test(e.target.value)) {\r\n                        setIsError(true)\r\n                    } else {\r\n                        setIsError(false)\r\n                    }\r\n                    onBlur(e)\r\n                }}\r\n                status={isError ? \"error\" : \"\"}\r\n                type={'email'}\r\n                value={value}\r\n                placeholder={placeholder}\r\n                disabled={disabled || loading}\r\n                required={required}\r\n                style={{\r\n                    textAlign: textAlign || \"left\"\r\n                }}\r\n                onChange={(e) => {\r\n                    onChange(e)\r\n                    if (validationType === 'email') {\r\n                        if (emailRegex.test(e.target.value)) {\r\n                            setIsError(false);\r\n                        } else {\r\n                            setIsError(true);\r\n                        }\r\n                    }\r\n                }}\r\n                onFocus={onFocus}\r\n            /> : <Input\r\n                suffix={loading ? <LoadingOutlined /> : suffix}\r\n                maxLength={maxlength}\r\n                onKeyDown={onKeyDown}\r\n                onBlur={onBlur}\r\n                status={isError ? \"error\" : \"\"}\r\n                type={type === 'number' ? 'Number' : 'text'}\r\n                value={value}\r\n                placeholder={placeholder}\r\n                disabled={disabled || loading}\r\n                required={required}\r\n                style={{\r\n                    textAlign: textAlign || \"left\"\r\n                }}\r\n                onChange={(e) => {\r\n                    onChange(e)\r\n                    if (validationType === 'email') {\r\n                        if (emailRegex.test(e.target.value)) {\r\n                            setIsError(false);\r\n                        } else {\r\n                            setIsError(true);\r\n                        }\r\n                    }\r\n                }}\r\n                onFocus={onFocus}\r\n            />}\r\n        </BABox>\r\n    </BABox>\r\n}\r\n","\"use client\";\r\n\r\nimport { Select, Typography } from \"antd\"\r\nimport BABox from \"./BABox\";\r\n\r\n\r\ntype propsType = {\r\n    onChange: any,\r\n    options: {\r\n        value: any,\r\n        label: string,\r\n        disabled?: boolean,\r\n    }[],\r\n    value: any,\r\n    label: string,\r\n    disabled?: boolean,\r\n    multiple?: boolean,\r\n    required?: boolean,\r\n    width?: any,\r\n    onFocus?: any,\r\n    loading?: any,\r\n    showSearch?: boolean\r\n    api?: string,\r\n    apiParams?: any\r\n    valueField?: string\r\n    displayField?: string\r\n}\r\nexport default function BASelect(props: propsType) {\r\n    const { onChange, options, value, label, disabled, multiple, width, required, onFocus, loading, showSearch } = props;\r\n    const { Title } = Typography;\r\n\r\n    const handleChange = (ev: any, option: any) => {\r\n        onChange(ev, option);\r\n    }\r\n\r\n\r\n    return <>\r\n        <BABox className=\"\">\r\n            {label && <Title level={5}>{label}<span className=\"text-2xl\">{required && \"*\"}</span></Title>}\r\n            <BABox >\r\n                <Select\r\n                    showSearch={showSearch}\r\n                    loading={loading}\r\n                    onFocus={(ev: any) => {\r\n                        if (onFocus) onFocus(ev);\r\n                    }}\r\n                    mode={multiple ? \"multiple\" : undefined}\r\n                    disabled={disabled}\r\n                    value={value}\r\n                    style={{ width: width ? width : '100%' }}\r\n                    onChange={handleChange}\r\n                    options={options}\r\n                />\r\n            </BABox>\r\n        </BABox>\r\n    </>\r\n}","import { Typography } from \"antd\";\r\nimport { Switch } from 'antd';\r\nimport BABox from \"./BABox\";\r\n\r\ntype propsType = {\r\n    label: string,\r\n    value: boolean,\r\n    onChange: any,\r\n    disabled?: boolean,\r\n    required?: boolean,\r\n    className?: string,\r\n    labelClass?: string,\r\n    size?: 'small' | 'default'\r\n}\r\n\r\nexport default function BASwitch(props: propsType) {\r\n    const { label, value, onChange, disabled, required, className, labelClass, size } = props\r\n    const { Title } = Typography;\r\n    return <>\r\n        <BABox>\r\n            {label && <Title level={5} className={`${labelClass}`}>{label}{required && \"*\"}</Title>}\r\n            <BABox >\r\n                <Switch size={size} defaultChecked={value} onChange={onChange} disabled={disabled} value={value} />\r\n            </BABox>\r\n        </BABox>\r\n    </>\r\n}","\"use client\";\r\n\r\n\r\nimport { Input, Typography } from \"antd\";\r\ntype propsType = {\r\n    label: string,\r\n    placeholder?: string,\r\n    disabled?: boolean,\r\n    required?: boolean,\r\n    className?: string,\r\n    onChange?: any,\r\n    value?: string,\r\n    type?: any,\r\n    onBlur?: any\r\n}\r\nexport default function BATextarea(props: propsType) {\r\n    const { label, placeholder, disabled, required, onChange, value, onBlur } = props;\r\n\r\n    const { TextArea } = Input;\r\n\r\n    return <>\r\n        {label && <Typography.Title level={5}>{label}{required && \"*\"}</Typography.Title>}\r\n        <TextArea\r\n            onBlur={onBlur}\r\n            rows={4}\r\n            value={value}\r\n            placeholder={placeholder}\r\n            disabled={disabled}\r\n            required={required}\r\n            onChange={onChange}\r\n        />\r\n    </>\r\n}\r\n","import { Radio, Typography } from \"antd\";\r\n\r\ntype propsType = {\r\n    onChange?: any,\r\n    value?: any,\r\n    options: {\r\n        label: any,\r\n        value: any,\r\n    }[],\r\n    required?: boolean,\r\n    label?: string,\r\n    disabled?: boolean,\r\n}\r\n\r\nexport default function BARadio(props: propsType) {\r\n    const { onChange, value, options, required, label, disabled } = props;\r\n\r\n    const { Title } = Typography;\r\n\r\n    return <>\r\n        {label && <Title level={5}>{label}<span className=\"text-2xl\">{required && \"*\"}</span></Title>}\r\n        <Radio.Group\r\n            disabled={disabled}\r\n            onChange={onChange}\r\n            value={value}\r\n            options={options}\r\n        />\r\n    </>\r\n}","\r\n\r\nimport BAButton from \"./BAButton\";\r\nimport BAinput from \"./BAInput\";\r\nimport BASelect from \"./BASelect\";\r\nimport BASwitch from \"./BASwitch\";\r\nimport BADate from \"./BADate\";\r\nimport BABox from \"./BABox\";\r\nimport BAPera from \"./BAPera\";\r\nimport BATextarea from \"./BATextarea\";\r\nimport BACheckbox from \"./BACheckbox\";\r\nimport BARadio from \"./BARadio\";\r\n\r\n\r\ntype propsType = {\r\n    model: any,\r\n    setModel: any,\r\n    element: formElement,\r\n    disabledForm?: boolean,\r\n    rowChangeEv?: any,\r\n    rowIndex?: number,\r\n}\r\n\r\nexport default function BAComponentSwitcher(props: propsType) {\r\n    const { model, setModel, element, disabledForm, rowChangeEv, rowIndex } = props;\r\n    const fillModel = (key: any, val: any) => {\r\n        model[key] = val;\r\n        setModel({ ...model });\r\n    };\r\n\r\n    switch (element.elementType) {\r\n        case \"input\":\r\n            return <BAinput\r\n                inputType={element.inputType}\r\n                otpMark={element.otpMark}\r\n                maxlength={element.maxlength}\r\n                loading={element.loading}\r\n                length={element.lenght}\r\n                mask={element.mask}\r\n                type={element.type}\r\n                value={model[element.key]}\r\n                textAlign={element.textAlign}\r\n                onBlur={() => {\r\n                    if (element.blurEv) element.blurEv(model[element.key], rowIndex, element)\r\n                }}\r\n                onChange={(ev: any) => {\r\n                    setModel({\r\n                        ...model,\r\n                        [element.key]: element.mask ? ev : (element.type == 'number' ? Number(ev.target.value) : ev.target.value)\r\n                    })\r\n                    if (rowChangeEv) {\r\n                        rowChangeEv(ev, (element.type == 'number' ? Number(ev.target.value) : ev.target.value), element, rowIndex)\r\n                    }\r\n                    if (element.ChangeEv) {\r\n                        element.ChangeEv(rowIndex, element.key, (element.type == 'number' ? Number(ev.target.value) : ev.target.value), element, rowIndex);\r\n                    }\r\n                }}\r\n                placeholder={element.placeholder}\r\n                disabled={disabledForm || element.disabled}\r\n                required={element.required}\r\n                label={element.label}\r\n                onFocus={() => element.focusEv ? element.focusEv(model[element.key]) : {}}\r\n            />\r\n        case \"textarea\":\r\n            return <BATextarea\r\n                value={model[element.key]}\r\n                onBlur={() => {\r\n                    if (element.blurEv) element.blurEv(model[element.key], rowIndex, element)\r\n                }}\r\n                onChange={(ev: any) => {\r\n                    setModel({\r\n                        ...model,\r\n                        [element.key]: ev.target.value\r\n                    })\r\n                    if (rowChangeEv) {\r\n                        rowChangeEv(ev, ev.target.value, element, rowIndex)\r\n                    }\r\n                    if (element.ChangeEv) {\r\n                        element.ChangeEv(rowIndex, element.key, ev.target.value, element, rowIndex);\r\n                    }\r\n                }}\r\n                placeholder={element.placeholder}\r\n                disabled={disabledForm || element.disabled}\r\n                required={element.required}\r\n                label={element.label}\r\n            />\r\n        case \"button\":\r\n            return <BAButton\r\n                onClick={element.onClick}\r\n                disabled={disabledForm || element.disabled}\r\n                label={element.label}\r\n                loading={element.loading}\r\n            />\r\n        case \"select\":\r\n            return <BASelect\r\n                api={element.api}\r\n                apiParams={typeof element.apiParams === 'object' ? element.apiParams : typeof element.apiParams === \"function\" ? element.apiParams(rowIndex) : null}\r\n                loading={element.loading}\r\n                onFocus={() => element.focusEv ? element.focusEv(model[element.key], rowIndex) : {}}\r\n                multiple={element.multiple}\r\n                disabled={disabledForm || element.disabled}\r\n                label={element.label}\r\n                valueField={element.valueField}\r\n                displayField={element.displayField}\r\n                showSearch={element.showSearch}\r\n                onChange={(e: any, obj: any) => {\r\n                    setModel({ ...model, [element.key]: e });\r\n                    if (rowChangeEv) {\r\n                        rowChangeEv(e, (element.type == 'number' ? Number(e) : e), element, rowIndex)\r\n                    }\r\n                    if (element.ChangeEv) {\r\n                        element.ChangeEv(rowIndex, element.key, e, element, rowIndex, obj);\r\n                    }\r\n                }}\r\n                options={element.options ?? []}\r\n                required={element.required}\r\n                value={model[element.key]}\r\n            />\r\n        // case \"lookup\":\r\n        //     return <BASearchLookup\r\n        //         label={element.label}\r\n        //         controller={element.controller}\r\n        //         data={element.data}\r\n        //         params={element.params}\r\n        //         config={element.config}\r\n        //         displayField={element.displayField || \"\"}\r\n        //         value={model && model[element.key]}\r\n        //         multiple={element.multiple}\r\n        //         required={element.required}\r\n        //         allowMultiple={element.multiSelect}\r\n        //         disabled={disabledForm || element.disabled}\r\n        //         type={element.type}\r\n        //         onSelectMultiple={(data: any[]) => handleMultiSelect(element, data, element.multiSelect, element.arrKey)}\r\n        //         onCancel={() => {\r\n        //             if (element.onCancel) {\r\n        //                 element.onCancel(rowIndex);\r\n        //             }\r\n        //         }}\r\n        //         onRowClick={async (i: number, data: any, list: any[]) => {\r\n        //             const lookupData = { ...data };\r\n        //             setModel({ ...model, [element.key]: lookupData[element.valueField || \"\"] });\r\n        //             if (element.ChangeEv) {\r\n        //                 element.ChangeEv(rowIndex, lookupData[element.key], lookupData, element, list);\r\n        //             }\r\n        //             if (rowChangeEv) {\r\n        //                 rowChangeEv(null, lookupData, element, rowIndex);\r\n        //             }\r\n        //         }}\r\n        //         useLookup={element.useLookup}\r\n        //         onBlur={() => handleLookupBlur(element.fieldAlias || element.key, model[element.key], element.controller, element)}\r\n        //         onChange={(e: any, val: any, obj: any) => {\r\n        //             if (val) {\r\n        //                 fillModel(element.key, val);\r\n        //                 if (element.ChangeEv) {\r\n        //                     element.ChangeEv(e, val, obj, element, rowIndex);\r\n        //                 }\r\n        //             }\r\n        //             else if (!element.multiple) {\r\n        //                 const lookupData: any = {};\r\n        //                 if (element.reqFields?.length) {\r\n        //                     for (var i = 0; i < element.reqFields.length; i++) {\r\n        //                         lookupData[element.reqFields[i]] = \"\";\r\n        //                     }\r\n        //                 }\r\n        //                 (element.arrKey && (!val || !obj)) ? setModel({ ...model, [element.arrKey]: [], ...lookupData }) : setModel({ ...model, [element.key]: e ? e.target.value : \"\", ...lookupData });\r\n        //                 if (rowChangeEv) {\r\n        //                     rowChangeEv(e, (element.type == 'number' ? Number(val) : val), element, rowIndex);\r\n        //                 }\r\n        //             } else {\r\n        //                 if (element.arrKey && (!val || !obj)) setModel({ ...model, [element.arrKey]: [], [element.key]: \"\" });\r\n        //             }\r\n        //         }}\r\n        //         apiFunctions={apiFunctions}\r\n        //     />\r\n        case \"datepicker\":\r\n            return (\r\n                <BADate\r\n                    required={element.required}\r\n                    disabled={disabledForm || element.disabled}\r\n                    label={element.label}\r\n                    value={model[element.key]}\r\n                    onChange={(date: any, dateString: any) => {\r\n                        if (element.ChangeEv) {\r\n                            element.ChangeEv(element.key, date, dateString);\r\n                        } else setModel({ ...model, [element.key]: (dateString) });\r\n                        if (rowChangeEv) {\r\n                            rowChangeEv(date, dateString, element, rowIndex)\r\n                        }\r\n                    }}\r\n                />\r\n            )\r\n        case \"boolean\":\r\n            return (\r\n                <BASwitch\r\n                    required={element.required}\r\n                    disabled={element.disabled}\r\n                    label={element.label}\r\n                    value={model && model[element.key] ? model[element.key] : null}\r\n                    onChange={(e: any) => {\r\n                        setModel({ ...model, [element.key]: e });\r\n                        if (element.ChangeEv) {\r\n                            element.ChangeEv(null, e);\r\n                        }\r\n                        if (rowChangeEv) {\r\n                            rowChangeEv(e, e, element, rowIndex)\r\n                        }\r\n                    }\r\n                    }\r\n                />\r\n            );\r\n        case \"checkbox\":\r\n            return (\r\n                <BACheckbox\r\n                    required={element.required}\r\n                    disabled={element.disabled}\r\n                    label={element.label}\r\n                    checked={model && model[element.key] ? model[element.key] : null}\r\n                    onChange={(e: any) => {\r\n                        setModel({ ...model, [element.key]: e.target.checked });\r\n                        if (element.ChangeEv) {\r\n                            element.ChangeEv(null, e);\r\n                        }\r\n                        if (rowChangeEv) {\r\n                            rowChangeEv(e, e, element, rowIndex)\r\n                        }\r\n                    }\r\n                    }\r\n                />\r\n            );\r\n        case \"radio\":\r\n            return (\r\n                <BARadio\r\n                    required={element.required}\r\n                    disabled={element.disabled}\r\n                    label={element.label}\r\n                    value={model && model[element.key] ? model[element.key] : null}\r\n                    onChange={(e: any) => {\r\n                        setModel({ ...model, [element.key]: e.target.value });\r\n                        if (element.ChangeEv) {\r\n                            element.ChangeEv(null, e);\r\n                        }\r\n                        if (rowChangeEv) {\r\n                            rowChangeEv(e, e, element, rowIndex);\r\n                        }\r\n                    }}\r\n                    options={element.options || []}\r\n                />\r\n            );\r\n        case \"custombody\":\r\n            return (\r\n                <BABox className={element.className}>\r\n                    {element.body}\r\n                </BABox>\r\n            );\r\n        case \"heading\":\r\n            return (\r\n                <BABox className=\"bg-[#E4F6F7] border-s-3 border-[#30ABAB] px-2\">\r\n                    <BAPera className=\"text-xl\">{element.label}</BAPera>\r\n                </BABox>\r\n            );\r\n        case \"text\":\r\n            return (\r\n                <BABox>\r\n                    <BAPera className=\"font-bold\">{element.label}</BAPera>\r\n                    <BAPera className=\"\">{model[element.key]}</BAPera>\r\n                </BABox>\r\n            );\r\n        default:\r\n            return null;\r\n    }\r\n\r\n}\r\n\r\nexport type formElement = {\r\n    col: 1 | 1.5 | 2 | 2.5 | 3 | 3.5 | 4 | 4.5 | 5 | 5.5 | 6 | 6.5 | 7 | 7.5 | 8 | 8.5 | 9 | 9.5 | 10 | 10.5 | 11 | 11.5 | 12,\r\n    elementType: \"input\" | \"datepicker\" | \"select\" | \"radio\" | \"checkbox\" | \"boolean\" | \"textarea\" | \"button\" | \"custombody\" | \"heading\" | \"text\",\r\n    key: string,\r\n    label: string,\r\n    placeholder?: string,\r\n    textAlign?: \"left\" | \"right\" | \"center\" | undefined,\r\n    inputType?: \"numericinput\" | \"maskinput\" | \"passwordinput\" | \"otpinput\" | \"emailinput\",\r\n    mask?: string,\r\n    lenght?: number,\r\n    otpMark?: string,\r\n    fillObjName?: string,\r\n    api?: string,\r\n    fillObj?: any,\r\n    valueField?: string | undefined,\r\n    options?: {\r\n        value: any,\r\n        label: string,\r\n        disabled?: boolean,\r\n    }[],\r\n    ChangeEv?: any,\r\n    onCancel?: any,\r\n    blurEv?: any,\r\n    focusEv?: any,\r\n    required?: boolean,\r\n    removeDecimals?: boolean,\r\n    isHide?: boolean,\r\n    multiple?: boolean,\r\n    maxlength?: number,\r\n    disabled?: any,\r\n    loading?: boolean,\r\n    showSearch?: boolean,\r\n    onClick?: any,\r\n    body?: any,\r\n    controller?: any,\r\n    type?: any,\r\n    apiParams?: any,\r\n    config?: any,\r\n    displayField?: any,\r\n    singleValue?: any,\r\n    className?: string\r\n    multiSelect?: boolean,\r\n    arrKey?: string,\r\n    validatePeriod?: boolean,\r\n    data?: any,\r\n    showTime?: boolean,\r\n    validateCodeKey?: string,\r\n    validateController?: string,\r\n    fieldAlias?: string;\r\n    reqFields?: string[];\r\n    useLookup?: boolean;\r\n    aliasModel?: { actualKey: String; modelKey: String }[];\r\n    params?: any\r\n}","import { message } from \"antd\";\r\nimport { formElement } from \"../BAComponentSwitcher\";\r\nimport dayjs from \"dayjs\";\r\n\r\n\r\n\r\nexport const formattedNumber = (numString: any) => {\r\n  return numString ? Number(numString).toLocaleString(undefined, {\r\n    minimumFractionDigits: 2,\r\n    maximumFractionDigits: 2\r\n  }) : '0.00';\r\n}\r\n\r\nexport const formattedDate = (dateString: any, format: string = \"YYYY-MM-DD\") => {\r\n  return dateString ? dayjs(dateString).format(format) : \"\";\r\n};\r\n\r\nexport const goBack = () => {\r\n  window.history.back()\r\n}\r\n\r\nexport const checkRequiredElement = (elements: formElement[], model: any) => {\r\n  let missing: any = []\r\n  elements.forEach(x => {\r\n    if (x.required) {\r\n      if (x.elementType == 'boolean') {\r\n        if ((model[x.key] === undefined || model[x.key] === null)) {\r\n          missing.push(`Required ${x.label}`)\r\n        }\r\n      } if (x.type == 'number') {\r\n        if (model[x.key] === undefined || model[x.key] === null || model[x.key] === '') {\r\n          missing.push(`Required ${x.label}`)\r\n        } else if (isNaN(model[x.key])) {\r\n          missing.push(`Invalid ${x.label}`)\r\n        }\r\n\r\n      } else {\r\n        if (!model[x.key]) {\r\n          missing.push(`Required ${x.label}`)\r\n        }\r\n      }\r\n    }\r\n  })\r\n  if (missing.length > 0) {\r\n    message.error(missing)\r\n    return false\r\n  } else {\r\n    return true\r\n  }\r\n}\r\n\r\n\r\n\r\nexport const customEncrypt = (input: any, encryptionKey: string) => {\r\n  let result = '';\r\n  let val = JSON.stringify(input)\r\n  for (let i = 0; i < val.length; i++) {\r\n    const charCode = (val.charCodeAt(i) + encryptionKey.charCodeAt(i % encryptionKey.length)) % 256;\r\n    result += String.fromCharCode(charCode);\r\n  }\r\n  return result;\r\n}\r\n\r\nexport const customDecrypt = (input: any, encryptionKey: string) => {\r\n  let result = '';\r\n  for (let i = 0; i < input.length; i++) {\r\n    const charCode = (input.charCodeAt(i) - encryptionKey.charCodeAt(i % encryptionKey.length) + 256) % 256;\r\n    result += String.fromCharCode(charCode);\r\n  }\r\n  return JSON.parse(result);\r\n}\r\n\r\nexport const removeEmptyRows = (list: any[], key: string) => {\r\n  if (!list || !key) return [];\r\n\r\n  if (key.includes(',')) {\r\n    const reqKeys = key.split(',').map(k => k.trim());\r\n    return list.filter(item =>\r\n      // Check if any of the keys has a value in this item\r\n      reqKeys.some(reqKey => Boolean(item[reqKey]))\r\n    );\r\n  } else {\r\n    // Single key case remains the same\r\n    return list.filter(item => Boolean(item[key]));\r\n  }\r\n};\r\n\r\nexport const printContentSafe = (body: any, config?: any) => {\r\n\r\n  const { pageType = 'A4', allowHeader = false, allowFooter = true, orientation = \"portrait\" } = (config || {})\r\n\r\n  const printWindow = window.open('', '_blank');\r\n\r\n  if (!printWindow) {\r\n    message.error('Pop-up blocked. Please allow pop-ups for this site.');\r\n    return;\r\n  }\r\n\r\n  printWindow.document.write(`\r\n    <!DOCTYPE html>\r\n    <html>\r\n      <head>\r\n        <title>Print</title>\r\n        <style>\r\n          body {\r\n            font-family: Arial, sans-serif;\r\n            padding: 20px;\r\n            counter-reset: page;\r\n          }\r\n          \r\n          /* Print-specific styles */\r\n          @page {\r\n            size: ${pageType || 'A4'} ${orientation || 'portrait'};\r\n            margin-top: 1cm;\r\n            margin-right: 0.5cm;\r\n            margin-bottom: 2cm;\r\n            margin-left: 0.5cm;\r\n            \r\n            /* Custom headers and footers using @page */\r\n            ${allowHeader ? `\r\n            @top-center {\r\n              content: \"My Custom Heeader\";\r\n              font-weight: bold;\r\n              font-family: Arial, sans-serif;\r\n            }\r\n            @top-right {\r\n              content: \"Date: \" attr(data-print-date);\r\n            }\r\n            @top-left {\r\n              content: \"Reference: DOC-2025\";\r\n            }` : ''}\r\n            \r\n            ${allowFooter ? `\r\n            @bottom-center {\r\n              content:  \"Page \" counter(page) \" of \" counter(pages);\r\n            }\r\n            @bottom-left {\r\n              content: \"\";\r\n              color: #777777;\r\n            }\r\n            @bottom-right {\r\n              content: \"${new Date().toLocaleDateString()}\";\r\n            }` : ''}\r\n          }\r\n          \r\n          /* CSS counter for page numbers */\r\n          .page-counter {\r\n            counter-increment: page;\r\n          }\r\n          \r\n          @media print {\r\n            body {\r\n              /* Enable background graphics/colors printing */\r\n              -webkit-print-color-adjust: exact !important;\r\n              print-color-adjust: exact !important;\r\n              color-adjust: exact !important;\r\n            }\r\n            \r\n            /* Other common print settings */\r\n            html, body {\r\n              /* A4 dimensions in portrait */\r\n              width: 210mm;\r\n              height: 283mm;\r\n            }\r\n            \r\n            /* For custom label size if needed */\r\n            .custom-size {\r\n              width: 2.625cm;\r\n              height: 1.0cm;\r\n            }\r\n            \r\n            \r\n            /* Optional: Hide specific elements when printing */\r\n            .no-print {\r\n              display: none;\r\n            }\r\n          }\r\n        </style>\r\n      </head>\r\n      <body data-print-date=\"${new Date().toLocaleDateString()}\">\r\n       ${body}       \r\n      </body>\r\n    </html>\r\n  `);\r\n\r\n  printWindow.document.close();\r\n  printWindow.onload = () => {\r\n    setTimeout(() => {\r\n      printWindow.focus();\r\n      printWindow.print(); // No parameters - they're set via CSS\r\n    }, 10);\r\n  };\r\n\r\n  printWindow.onafterprint = () => {\r\n    printWindow.close();\r\n  };\r\n}\r\n\r\nexport const CreateConfig = (\r\n  key: string,\r\n  searchable: boolean,\r\n  show: boolean,\r\n  title: string,\r\n  type: 'boolean' | 'date' | 'number' | 'percentage' | 'text' | 'time' | 'datetime' | 'filterList' | 'phone' | 'enum' | 'link',\r\n  searchField?: string | null,\r\n  width?: any,\r\n  controller?: string,\r\n  displayField?: any,\r\n  filterEnums?: { value: any, label: string, key: string }[],\r\n  hideFilter?: boolean,\r\n) => {\r\n  return {\r\n    key,\r\n    searchField: searchField ? searchField : key,\r\n    searchable: searchable,\r\n    show: show,\r\n    label: title,\r\n    type: type,\r\n    width: width,\r\n    controller: controller,\r\n    displayField: displayField,\r\n    filterEnums: filterEnums,\r\n    hideFilter: hideFilter,\r\n  }\r\n}\r\n","\r\n\r\nimport { Col, Row, Skeleton } from \"antd\";\r\nimport BAComponentSwitcher, { formElement } from \"./BAComponentSwitcher\"\r\nimport BABox from \"./BABox\";\r\nimport BAButton from \"./BAButton\";\r\nimport { checkRequiredElement } from \"./config/helpers\";\r\n\r\ntype propsType = {\r\n    model: any,\r\n    setModel: any,\r\n    formElement: formElement[],\r\n    onSaveClick?: () => void,\r\n    saveLoader?: boolean\r\n    disabledForm?: boolean,\r\n    loading?: boolean,\r\n    containerClass?: string,\r\n    buttonContainerClass?: string,\r\n    customButton?: React.ReactNode,\r\n    hideButton?: boolean\r\n    disabledSaveButton?: boolean\r\n    saveButtonLabel?: string\r\n    saveButtonIcon?: any\r\n    saveButtonAlignment?: \"center\" | \"start\" | \"end\" | undefined\r\n    saveButtonType?: \"primary\" | \"default\" | \"dashed\" | \"link\" | \"text\" | undefined\r\n}\r\n\r\nexport default function BAFormElement(props: propsType) {\r\n    const {\r\n        model,\r\n        setModel,\r\n        formElement,\r\n        disabledForm,\r\n        saveLoader,\r\n        onSaveClick,\r\n        loading,\r\n        customButton,\r\n        hideButton,\r\n        saveButtonLabel,\r\n        saveButtonIcon,\r\n        disabledSaveButton,\r\n        saveButtonAlignment,\r\n        saveButtonType,\r\n    } = props;\r\n\r\n    const saveClick = () => {\r\n        if (checkRequiredElement(formElement, model) && onSaveClick) {\r\n            onSaveClick()\r\n        }\r\n    }\r\n\r\n    return <>\r\n\r\n        <BABox className={\"overflow-hidden\"}>\r\n            <Row>\r\n                {formElement.map((element, index) => {\r\n                    return !element.isHide && <Col key={index} xs={24} sm={24} md={element.col * 2} className={element.className}>\r\n                        {loading ? <BABox className=\"p-1\"><Skeleton.Input block active /></BABox> : <BABox className=\"p-2\">\r\n                            <BAComponentSwitcher\r\n                                element={element}\r\n                                model={model}\r\n                                setModel={setModel}\r\n                                disabledForm={disabledForm}\r\n                            />\r\n                        </BABox>}\r\n                    </Col>\r\n                })}\r\n            </Row>\r\n        </BABox>\r\n        {!hideButton && <BABox className=\"sticky bottom-0 z-10\">\r\n            <BABox className={`p-2 border-t border-gray-400 text-${saveButtonAlignment || \"end\"}`}>\r\n                {customButton ? customButton : <BAButton type={saveButtonType} className=\"bg-secondary\" disabled={disabledSaveButton || loading} loading={saveLoader} onClick={saveClick} icon={saveButtonIcon} label={saveButtonLabel ? saveButtonLabel : \"Save\"} />}\r\n            </BABox>\r\n        </BABox>}\r\n    </>\r\n\r\n}","\r\n\r\nimport { Button } from \"antd\";\r\n\r\ntype propsType = {\r\n    onClick?: any,\r\n    icon: any,\r\n    loading?: boolean,\r\n    className?: string,\r\n    disabled?: any\r\n    danger?: boolean,\r\n    shape?: \"circle\" | \"round\" | \"default\" | undefined,\r\n    type?: \"link\" | \"text\" | \"primary\" | \"default\" | \"dashed\" | undefined\r\n}\r\nexport default function BAIconButton(props: propsType) {\r\n    const { onClick, loading, icon, className, disabled, danger, type, shape } = props;\r\n    return <>\r\n        <Button\r\n            danger={danger}\r\n            type={type ?? \"primary\"}\r\n            disabled={disabled}\r\n            className={className}\r\n            shape={shape || \"circle\"}\r\n            icon={icon}\r\n            loading={loading}\r\n            onClick={onClick}\r\n        ></Button>\r\n    </>\r\n}","\"use client\";\r\n\r\nimport BABox from \"./BABox\";\r\nimport BAComponentSwitcher, { formElement } from \"./BAComponentSwitcher\";\r\nimport React, { useState } from \"react\";\r\nimport BAButton from \"./BAButton\";\r\nimport BAIconButton from \"./BAIconButton\";\r\nimport { PlusOutlined, DeleteOutlined } from \"@ant-design/icons\";\r\nimport BAPera from \"./BAPera\";\r\nimport BALoader from \"./BALoader\";\r\n\r\ntype actionType = {\r\n  icon: React.ReactNode;\r\n  onClick: (row?: any, index?: number) => void;\r\n  disabled?: boolean | ((row: any) => boolean);\r\n};\r\n\r\ntype propsType = {\r\n  datasourse: any[];\r\n  cols: {\r\n    key: string;\r\n    label: string;\r\n    displayField?: (data: any, index: number) => any;\r\n    className?: string;\r\n    HeaderField?: any;\r\n    width?: any;\r\n    element: formElement;\r\n  }[];\r\n  loading?: boolean;\r\n  onChange?: any;\r\n  closeModal?: any;\r\n  setDatasourse?: any;\r\n  onAddRow?: any;\r\n  onDeleteRow?: any;\r\n  action?: actionType[];\r\n  disableAction?: boolean;\r\n  updatedArr?: any[];\r\n  setUpdatedArr?: any;\r\n  pageSize?: string | number;\r\n  page?: string | number;\r\n  disableAdd?: boolean;\r\n  disableForm?: boolean;\r\n  disabled?: (row: any) => void | boolean;\r\n};\r\n\r\nexport default function BAFormGrid(props: propsType) {\r\n  const {\r\n    datasourse,\r\n    cols,\r\n    loading,\r\n    setDatasourse,\r\n    onAddRow,\r\n    onDeleteRow,\r\n    action,\r\n    disableAction,\r\n    updatedArr,\r\n    setUpdatedArr,\r\n    disableForm,\r\n    disableAdd\r\n  } = props;\r\n  const [rowObj, setRowObj] = useState({});\r\n\r\n  const addRow = () => {\r\n    let obj = {};\r\n    if (onAddRow) {\r\n      obj = onAddRow() || {};\r\n    }\r\n    if (setDatasourse) setDatasourse([...datasourse, obj]);\r\n  };\r\n\r\n  const deleteRow = (index: number) => {\r\n    datasourse.splice(index, 1);\r\n    if (onDeleteRow) {\r\n      onDeleteRow();\r\n    }\r\n    if (setDatasourse) setDatasourse([...datasourse]);\r\n  };\r\n\r\n  return (\r\n    <BABox className={\"overflow-x-auto\"}>\r\n      {loading ? <BABox className=\"flex justify-center flex-col items-center\">\r\n        <BALoader />\r\n        <BAPera>Loading...</BAPera>\r\n      </BABox> : datasourse && datasourse.length > 0 ? (\r\n        <>\r\n          <BABox className=\"border border-[lightgrey]\">\r\n            <table\r\n              className=\"min-w-full divide-y rounded-lg overflow-hidden divide-gray-200 border\"\r\n            >\r\n              <thead className=\"bg-gray-50\">\r\n                <tr>\r\n                  {!disableAction && <th className=\"w-[50px]\"></th>}\r\n                  {cols.map((col: any, index: number) => (\r\n                    <th\r\n                      key={index}\r\n                      className={`p-2 text-center text-xs font-medium text-black tracking-wider ${col.className ? col.className : \"\"\r\n                        }`}\r\n                    >\r\n                      {col.label}\r\n                    </th>\r\n                  ))}\r\n                </tr>\r\n              </thead>\r\n              <tbody className=\"bg-white divide-y divide-gray-200 \">\r\n                {datasourse.map((row: any, rowIndex: number) => (\r\n                  <React.Fragment key={rowIndex}>\r\n                    <tr\r\n                    // style={{height:'12px'}}\r\n                    >\r\n                      {!disableAction && (\r\n                        <td className=\"text-center flex justify-center\">\r\n                          <DeleteOutlined style={{ color: `${disableForm ? \"lightgray\" : \"\"}` }} className={`text-xl m-1 hover:text-red-600`} onClick={() => !disableForm && deleteRow(rowIndex)} />\r\n                          {action &&\r\n                            action?.map((item: actionType, key) => (\r\n                              <BAIconButton\r\n                                key={key}\r\n                                className=\"m-1\"\r\n                                icon={item.icon}\r\n                                disabled={\r\n                                  typeof item.disabled === \"function\"\r\n                                    ? item.disabled(row)\r\n                                    : item.disabled\r\n                                }\r\n                                onClick={() => item.onClick(row, rowIndex)}\r\n                              />\r\n                            ))}\r\n                        </td>\r\n                      )}\r\n                      {cols.map((col: any, colIndex: number) => (\r\n                        <td\r\n                          key={colIndex}\r\n                          className={`whitespace-nowrap border text-sm text-gray-900 w-[${col.width ? col.width : 'full'}] ${col.className ? col.className : \"\"\r\n                            }`}\r\n                        >\r\n                          {col.displayField ? (\r\n                            col.displayField(row, rowIndex)\r\n                          ) : col.element ? (\r\n                            <BAComponentSwitcher\r\n                              disabledForm={disableForm}\r\n                              model={datasourse[rowIndex]}\r\n                              setModel={setRowObj}\r\n                              element={{\r\n                                ...col.element,\r\n                                disabled: typeof col.element.disabled === \"function\" ? col.element.disabled(row) : col.element.disabled,\r\n                                options: typeof col.element.options === \"function\" ? col.element.options(row, rowIndex) : col.element.options,\r\n                                fillObj: row[col.element.fillObjName]\r\n                              }}\r\n                              rowChangeEv={(\r\n                                ev: any,\r\n                                val: any,\r\n                                element: any,\r\n                                index: number\r\n                              ) => {\r\n\r\n                                datasourse[rowIndex] = {\r\n                                  ...datasourse[rowIndex],\r\n                                  [element.key]: val ? val[element.key] : \"\"\r\n                                };\r\n\r\n                                setDatasourse([...datasourse]);\r\n                                if (updatedArr) {\r\n                                  const existingIndex = updatedArr.findIndex(\r\n                                    (item) =>\r\n                                      item.Seq_No === datasourse[rowIndex].Seq_No\r\n                                  );\r\n                                  if (existingIndex === -1)\r\n                                    updatedArr.push({ ...datasourse[rowIndex] });\r\n                                  else\r\n                                    updatedArr[existingIndex] =\r\n                                      datasourse[rowIndex];\r\n                                  setUpdatedArr([...updatedArr]);\r\n                                }\r\n                              }}\r\n                              rowIndex={rowIndex}\r\n                            />\r\n                          ) : (\r\n                            row[col.key]\r\n                          )}\r\n                        </td>\r\n                      ))}\r\n                    </tr>\r\n                    {row.expanded && (\r\n                      <tr className=\"border-x border-b\">\r\n                        <td className=\"text-center\">\r\n                          {/* <EnterOutlined className=\"-scale-x-100 text-lg\" /> */}\r\n                        </td>\r\n                        <td colSpan={cols.length}>{row.expanded}</td>\r\n                      </tr>\r\n                    )}\r\n                  </React.Fragment>\r\n                ))}\r\n                {!disableAdd && !disableAction && <tr>\r\n                  <td onClick={disableForm ? undefined : addRow} className=\"text-center cursor-pointer p-2 hover:bg-gray-400\">\r\n                    <PlusOutlined style={{ color: `${disableForm ? \"lightgray\" : \"\"}` }} className=\"text-xl\" />\r\n                  </td>\r\n                </tr>}\r\n              </tbody>\r\n            </table>\r\n          </BABox>\r\n        </>\r\n      ) : (\r\n        <BABox className=\"flex justify-center flex-col items-center bg-[#e9ecef] p-10\">\r\n          <BAPera>No Data Found</BAPera>\r\n          <BABox>\r\n            <BAButton disabled={disableAdd || disableForm} onClick={addRow} label={\"Add Row\"} />\r\n          </BABox>\r\n        </BABox>\r\n      )}\r\n    </BABox>\r\n  );\r\n}\r\n","\"use client\";\r\n\r\nimport BABox from \"./BABox\";\r\nimport { BACheckbox, BALoader, BAPera } from \".\";\r\nimport { DeleteOutlined } from \"@ant-design/icons\";\r\nimport { useState } from \"react\";\r\nimport { theme } from \"antd\";\r\n\r\ntype propsType = {\r\n  datasourse: any[];\r\n  cols: {\r\n    key: string;\r\n    label: string;\r\n    displayField?: (data: any, i: number) => any;\r\n    HeaderField?: any;\r\n  }[];\r\n  loading?: boolean;\r\n  onChange?: any;\r\n  displayField?: any;\r\n  closeModal?: any;\r\n  onRowClick?: any;\r\n  allowMultiple?: boolean;\r\n  setDataSource?: any;\r\n  className?: string;\r\n  allowSearch?: boolean;\r\n  allowDelete?: boolean;\r\n  onDelete?: (index: number) => void;\r\n  colSearchObj?: any,\r\n  handleSearch?: (pgObj?: any, SearchObj?: any) => void;\r\n};\r\n\r\nexport default function BAGrid(props: propsType) {\r\n  const {\r\n    datasourse,\r\n    cols,\r\n    loading,\r\n    displayField,\r\n    onRowClick,\r\n  } = props;\r\n\r\n  const { token }: any = theme.useToken();\r\n\r\n\r\n  return (\r\n    <BABox\r\n      className={\"overflow-x-auto h-[calc(100vh-16rem)]\"}\r\n    >\r\n      {loading ? <BALoader /> : <table\r\n        style={{ tableLayout: \"auto\" }}\r\n        className=\"w-full divide-y  overflow-hidden divide-gray-200\"\r\n      >\r\n        <thead style={{ backgroundColor: token?.token?.colorPrimary || \"#0d1b2a\", color: \"white\" }}>\r\n          <tr>\r\n            {cols.map((col: any, index: number) => (\r\n              <th\r\n                key={index}\r\n                className={`p-2 border-bottom text-center text-xs font-medium tracking-wider`}\r\n              >\r\n                {col.label}\r\n              </th>\r\n            ))}\r\n          </tr>\r\n        </thead>\r\n        <tbody className=\"bg-white divide-y divide-gray-200 \">\r\n          {datasourse && datasourse.length > 0 ? (\r\n            datasourse.map((row: any, rowIndex: number) => (\r\n              <tr\r\n                key={rowIndex}\r\n                className={displayField ? \" cursor-pointer transition \" : row.rowClass && typeof row.rowClass === \"function\" ? row.rowClass(row) : \"\"}\r\n                // style={{height:'12px'}}\r\n                style={{ backgroundColor: row.rowColor && typeof row.rowColor === \"function\" ? row.rowColor(row) : rowIndex % 2 === 1 ? \"\" : \"#edf0f4\" }}\r\n                onClick={() => (onRowClick ? onRowClick(rowIndex, row) : {})}\r\n              >\r\n                {cols.map((col: any, colIndex: number) => (\r\n                  <td\r\n                    key={colIndex}\r\n                    className={`p-2 whitespace-nowrap text-sm border-bottom border-[lightgrey] text-gray-900 ${col.className ? col.className : \"\"\r\n                      }`}\r\n                  >\r\n                    {col.displayField\r\n                      ? col.displayField(row, rowIndex)\r\n                      : row[col.key]}\r\n                    {col.HeaderField ? col.HeaderField(rowIndex) : \"\"}\r\n                  </td>\r\n                ))}\r\n              </tr>\r\n            ))\r\n          ) : (\r\n            <tr>\r\n              <td colSpan={cols.length + 1} className=\"text-center py-4\">\r\n                <BABox className=\"flex justify-center w-full\">\r\n                  <BAPera>No Data Found</BAPera>\r\n                </BABox>\r\n              </td>\r\n            </tr>\r\n          )}\r\n        </tbody>\r\n      </table>}\r\n    </BABox>\r\n  );\r\n}\r\n","\r\n\r\nimport { DownOutlined } from '@ant-design/icons';\r\nimport { Dropdown } from \"antd\";\r\nimport type { MenuProps } from 'antd';\r\n\r\ntype propsType = {\r\n    options: {\r\n        label: string,\r\n        onClick: any,\r\n        icon?: React.ReactNode\r\n    }[],\r\n    children?: React.ReactNode,\r\n}\r\n\r\nexport default function BAMenu(props: propsType) {\r\n    const { options, children } = props;\r\n\r\n    const items: MenuProps['items'] = [\r\n        ...options.map((option, index) => ({\r\n            label: option.label,\r\n            key: index.toString(),\r\n            onClick: option.onClick,\r\n            icon: option.icon\r\n        }))\r\n    ];\r\n\r\n    return <>\r\n        <Dropdown menu={{ items }} trigger={['click']}>\r\n            <a onClick={(e) => e.preventDefault()}>\r\n                {children ? children : <DownOutlined />}\r\n            </a>\r\n        </Dropdown>\r\n    </>\r\n}","\r\n\r\nimport { Modal } from \"antd\"\r\n\r\ntype propsType = {\r\n    title: string,\r\n    open: boolean,\r\n    close: any,\r\n    content: any,\r\n    style?: any,\r\n    footer?: any,\r\n    width?: any,\r\n    handleOK?: any,\r\n    className?: string\r\n}\r\n\r\nexport default function BAModal(props: propsType) {\r\n    const { title, open, close, content, style, footer, width, handleOK, className } = props;\r\n    const handleClose = () => {\r\n        if (close) close()\r\n    }\r\n\r\n    return <>\r\n        <Modal\r\n            width={width}\r\n            style={style}\r\n            title={title}\r\n            open={open}\r\n            onCancel={handleClose}\r\n            footer={footer ? footer : null}\r\n            onOk={handleOK}\r\n            className={className}\r\n        >\r\n            {content}\r\n        </Modal>\r\n    </>\r\n}","\"use client\";\r\n\r\nimport { Pagination } from \"antd\";\r\nimport BABox from \"./BABox\";\r\nimport { useState } from \"react\";\r\nimport BASelect from \"./BASelect\";\r\n\r\ntype propsType = {\r\n  totalRecords: number;\r\n  onPageChange: any;\r\n  onOk?: any;\r\n  multiSelect?: boolean;\r\n  content?: React.ReactNode;\r\n  pageSize?: number;\r\n};\r\nexport default function BAPagination(props: propsType) {\r\n  const { totalRecords, onPageChange, pageSize } = props;\r\n  const [pageConfig, setPageConfig] = useState({\r\n    current: 1,\r\n    pageSize: pageSize,\r\n  });\r\n\r\n  const handlePageChange = (page: number, pageSize: number) => {\r\n    if (onPageChange) onPageChange(page, pageSize);\r\n    setPageConfig({ ...pageConfig, current: page, pageSize: pageSize });\r\n  };\r\n\r\n  const pageSizeChange = (value: any) => {\r\n    setPageConfig({ ...pageConfig, pageSize: value });\r\n    handlePageChange(1, value);\r\n  };\r\n\r\n  return (\r\n    <>\r\n      <BABox className=\"p-3 rounded-lg bg-white shadow mt-1 md:mt-2\">\r\n        <BABox className=\"flex justify-between items-center\">\r\n          <Pagination\r\n            defaultCurrent={1}\r\n            total={totalRecords}\r\n            pageSize={pageConfig.pageSize}\r\n            onChange={handlePageChange}\r\n          />\r\n          <BABox className=\"ms-2\">Total Records: {totalRecords}</BABox>\r\n        </BABox>\r\n      </BABox>\r\n    </>\r\n  );\r\n}\r\n","\r\n\r\nimport { ArrowLeftOutlined } from \"@ant-design/icons\";\r\nimport BABox from \"./BABox\";\r\nimport BAIconButton from \"./BAIconButton\";\r\nimport BAPera from \"./BAPera\";\r\nimport { goBack } from \"./config/helpers\";\r\n\r\ntype propsType = {\r\n    title: string,\r\n    headerOptions?: any[],\r\n    disableBack?: boolean\r\n    extraTitle?: any,\r\n    headClassName?: string,\r\n}\r\nexport default function BAScreenHeader(props: propsType) {\r\n    const { title, headerOptions, disableBack, extraTitle, headClassName } = props;\r\n\r\n    return <>\r\n        <BABox className={`py-2 border-bottom border-b-2 border-[#1B4394] flex justify-between items-center ${headClassName}`}>\r\n            <BABox className=\"flex items-center md:pb-0\">\r\n                {!disableBack && <BAIconButton onClick={goBack} icon={<ArrowLeftOutlined />} />}\r\n                <BAPera className=\"md:text-3xl text-xl ms-2\">{title} {extraTitle}</BAPera>\r\n            </BABox>\r\n            <BABox className=\"flex justify-end\">\r\n                {headerOptions?.map((option: any, index: number) => {\r\n                    return option.isHide ? <></> : <BABox key={index} className=\"md:ml-2 ml-1\">{option.displayField()}</BABox>\r\n                })}\r\n            </BABox>\r\n        </BABox>\r\n    </>\r\n}","\"use client\";\r\n\r\nimport { Input, message, Typography, Grid } from \"antd\";\r\nimport { useEffect, useState } from \"react\";\r\nimport { CloseOutlined, SearchOutlined } from \"@ant-design/icons\";\r\nimport BAModal from \"./BAModal\";\r\nimport BAGrid from \"./BAGrid\";\r\nimport BAPagination from \"./BAPagination\";\r\nimport BAButton from \"./BAButton\";\r\nimport BABox from \"./BABox\";\r\nimport createApiFunction from \"./config/apimethods\";\r\n\r\nconst { useBreakpoint } = Grid;\r\n\r\ntype propsType = {\r\n  label: string;\r\n  placeholder?: string;\r\n  disabled?: boolean;\r\n  required?: boolean;\r\n  className?: string;\r\n  onChange?: any;\r\n  onCancel?: any;\r\n  value?: any;\r\n  type?: any;\r\n  controller?: any;\r\n  apiName?: string;\r\n  config?: any;\r\n  displayField?: any;\r\n  multiple?: any;\r\n  onRowClick?: any;\r\n  onBlur?: any;\r\n  allowMultiple?: boolean;\r\n  onSelectMultiple?: any;\r\n  isRowSelected?: boolean;\r\n  isAllSelected?: boolean;\r\n  data?: any;\r\n  useLookup?: boolean;\r\n  fillObj?: any;\r\n  params?: any\r\n  apiFunctions?: any\r\n};\r\n\r\n\r\n\r\nexport default function BASearchLookup(props: propsType) {\r\n\r\n  const screens = useBreakpoint();\r\n  const isMobile = !screens.md; // md = 768px breakpoint\r\n\r\n  const {\r\n    label,\r\n    placeholder,\r\n    disabled,\r\n    required,\r\n    className,\r\n    onChange,\r\n    value,\r\n    type,\r\n    controller,\r\n    config,\r\n    displayField,\r\n    onRowClick,\r\n    onBlur,\r\n    allowMultiple,\r\n    onSelectMultiple,\r\n    fillObj,\r\n    onCancel,\r\n    apiFunctions,\r\n  } = props;\r\n  const { Get } = apiFunctions\r\n  const { Title } = Typography;\r\n\r\n  const [listData, setListData] = useState<any[]>([]);\r\n  const [loading, setLoading] = useState(false);\r\n  const [openModal, setOpenModal] = useState<any>(false);\r\n  const [paginationConfig, setPaginationConfig] = useState({\r\n    pageSize: 10,\r\n    page: 1,\r\n    totalRecords: 0,\r\n  });\r\n  const [inpValue, setInpValue] = useState<any>(value);\r\n\r\n  const getData = (pgObj?: any, SearchObj?: any) => {\r\n    setLoading(true);\r\n\r\n\r\n\r\n    const updatedSearchObj = Object.fromEntries(\r\n      Object.entries(SearchObj || {}).filter(([_, value]) => value)\r\n    );\r\n    Get(`lookup/${controller}`, null, {\r\n      page: pgObj?.page || paginationConfig.page,\r\n      limit: pgObj?.pageSize || paginationConfig.pageSize,\r\n      selector: config.map((col: any) => col.key).filter(Boolean).join(\",\"),\r\n      search: updatedSearchObj,\r\n      filter: JSON.stringify({ ...SearchObj })\r\n    })\r\n      .then((res: any) => {\r\n        if (res?.items) {\r\n          setListData([...res.items]);\r\n          setPaginationConfig({ ...paginationConfig, totalRecords: res.meta?.totalItems });\r\n          setLoading(false);\r\n        } else {\r\n          message.error(res.message || \"An error occurred.\");\r\n        }\r\n      }).catch((err: any) => {\r\n        setLoading(false);\r\n        message.error(err.error)\r\n      });\r\n  };\r\n  const handleOpen = () => {\r\n    setOpenModal(true);\r\n    getData();\r\n  };\r\n\r\n  const handleCancel = () => {\r\n    onChange(null, null, {});\r\n    setInpValue(\"\");\r\n    onCancel && onCancel();\r\n  }\r\n\r\n  const onInputChange = (e: any) => {\r\n    setInpValue(e.target.value);\r\n  }\r\n\r\n  const handleKeyDown = (event: any) => {\r\n    if (event.key === \"Enter\") {\r\n      handleOpen();\r\n    }\r\n  };\r\n  const onOK = () => setOpenModal(false);\r\n\r\n  const pageChange = async (page: any, pageSize: any) => {\r\n    paginationConfig.pageSize = pageSize;\r\n    paginationConfig.page = page;\r\n    setPaginationConfig({ ...paginationConfig });\r\n    getData({ ...paginationConfig, page, pageSize });\r\n  };\r\n\r\n  const setSelectedRows = () => {\r\n    const selectedRows = listData.filter((el: any) => el.isSelected);\r\n    onSelectMultiple(selectedRows);\r\n    onOK();\r\n  };\r\n\r\n  useEffect(() => {\r\n    if (fillObj && value) {\r\n      setInpValue(fillObj[displayField]);\r\n    }\r\n  }, [])\r\n\r\n  return (\r\n    <>\r\n      <BAModal\r\n        title={label ? label : \"Search Lookup\"}\r\n        open={openModal}\r\n        handleOK={onOK}\r\n        close={setOpenModal}\r\n        width={isMobile ? \"95%\" : \"70%\"}\r\n        content={\r\n          <>\r\n            <BAGrid\r\n              closeModal={onOK}\r\n              displayField={displayField}\r\n              onChange={onChange}\r\n              datasourse={listData}\r\n              cols={config}\r\n              loading={loading}\r\n              onRowClick={(i: number, data: any) => {\r\n                if (!allowMultiple) onOK();\r\n                onRowClick(i, data, listData);\r\n                setInpValue(data[displayField]);\r\n              }}\r\n              allowMultiple={allowMultiple}\r\n              setDataSource={setListData}\r\n              allowSearch\r\n              handleSearch={getData}\r\n            />\r\n            <BAPagination\r\n              pageSize={paginationConfig.pageSize}\r\n              totalRecords={paginationConfig.totalRecords}\r\n              onPageChange={pageChange}\r\n              multiSelect={allowMultiple}\r\n              onOk={() => (allowMultiple ? setSelectedRows() : {})}\r\n            />\r\n          </>\r\n        }\r\n      />\r\n      {type === \"button\" ? (\r\n        <BAButton label={label} disabled={disabled} onClick={handleOpen} />\r\n      ) : (\r\n        <BABox className={`${className}`}>\r\n          {label && <Title level={5}>{label}<span className=\"text-2xl\">{required && \"*\"}</span></Title>}\r\n          <BABox>\r\n            <Input\r\n              value={inpValue}\r\n              placeholder={placeholder}\r\n              disabled={disabled}\r\n              required={required}\r\n              suffix={\r\n                <>\r\n                  {value ? <CloseOutlined disabled={disabled} onClick={() => disabled ? {} : handleCancel()} /> : <SearchOutlined disabled={disabled} onClick={() => disabled ? {} : handleOpen()} />}\r\n                  {/* <BAIconButton\r\n                  className=\"bg-primary\"\r\n\r\n                  icon={<SearchOutlined />}\r\n\r\n                /> */}\r\n                </>\r\n              }\r\n              className={className}\r\n              onChange={onInputChange}\r\n              onKeyDown={handleKeyDown}\r\n              onBlur={(e) => {\r\n                if (value === \"\") {\r\n                  onChange(e, \"\", {});\r\n                }\r\n                if (onBlur) {\r\n                  onBlur(e);\r\n                }\r\n              }}\r\n            />\r\n          </BABox>\r\n        </BABox>\r\n      )}\r\n    </>\r\n  );\r\n}\r\n","import axios from 'axios'\r\n\r\n\r\nconst createApiFunction = (baseURL: string, baseHeaders?: object) => {\r\n    const instance = axios.create({\r\n        baseURL: baseURL,\r\n    });\r\n\r\n    instance.interceptors.request.use(\r\n        (config: any) => {\r\n            config.headers = {\r\n                ...(config.headers || {}), // existing headers\r\n                ...(baseHeaders || {}),        // default headers passed in\r\n            };\r\n\r\n            return config;\r\n        },\r\n        (error) => {\r\n            // Handle request error\r\n            return Promise.reject(error);\r\n        }\r\n    );\r\n\r\n    return {\r\n        Get: (endPoint: string, id?: any, params?: any) => {\r\n            return new Promise((resolve, reject) => {\r\n                instance.get(`${endPoint}/${id ? id : ''}`, {\r\n                    params: { ...params }\r\n                })\r\n                    .then(res => {\r\n                        resolve(res.data)\r\n                    }).catch(err => {\r\n                        reject(err)\r\n                    })\r\n            })\r\n        },\r\n        Post: (endPoint: string, body: any, id?: any, params?: any, publicAPI?: boolean) => {\r\n            return new Promise((resolve, reject) => {\r\n                instance.post(`${endPoint}/${id ? id : ''}`, body, {\r\n                    params: params\r\n                })\r\n                    .then(res => {\r\n                        resolve(res.data)\r\n                    }).catch(err => {\r\n                        reject(err)\r\n                    })\r\n            })\r\n        },\r\n        Put: (endPoint: string, body: any, id: any) => {\r\n            return new Promise((resolve, reject) => {\r\n                instance.put(`${endPoint}/${id ? id : ''}`, body)\r\n                    .then(res => {\r\n                        resolve(res.data)\r\n                    }).catch(err => {\r\n                        reject(err)\r\n                    })\r\n            })\r\n        },\r\n        Patch: (endPoint: string, body: any, id: any, params?: any) => {\r\n            return new Promise((resolve, reject) => {\r\n                instance.patch(`${endPoint}/${id ? id : ''}`, body, { params: params })\r\n                    .then(res => {\r\n                        resolve(res.data)\r\n                    }).catch(err => {\r\n                        reject(err)\r\n                    })\r\n            })\r\n        },\r\n        Delete: (endPoint: string, id: any) => {\r\n            return new Promise((resolve, reject) => {\r\n                instance.delete(`${endPoint}/${id ? id : ''}`)\r\n                    .then(res => {\r\n                        resolve(res.data)\r\n                    }).catch(err => {\r\n                        reject(err)\r\n                    })\r\n            })\r\n        }\r\n    }\r\n}\r\n\r\n\r\n\r\n\r\nexport default createApiFunction","\"use client\";\r\n\r\nimport { App, ConfigProvider } from \"antd\"\r\nexport let displayError: (messageTxt: string, severity: \"error\" | \"success\") => void;\r\nexport let showLoader: (messageTxt: boolean) => void;\r\nexport let appTheme: object;\r\n\r\ntype propsType = {\r\n    colorPrimary?: string,\r\n    children?: any\r\n}\r\n\r\nexport default function MasterContainer({ colorPrimary, children }: propsType) {\r\n\r\n    appTheme = {\r\n        components: {\r\n            Button: {\r\n                colorPrimary: colorPrimary || '#13999e',\r\n                borderRadius: 4,\r\n                fontSize: 16,\r\n                algorithm: true, // Enable algorithm\r\n            },\r\n            Input: {\r\n                colorPrimary: colorPrimary || '#13999e',\r\n                borderRadius: 0,\r\n                algorithm: true, // Enable algorithm\r\n            },\r\n            Switch: {\r\n                colorPrimary: colorPrimary || '#13999e',\r\n                algorithm: true, // Enable algorithm\r\n            },\r\n            Select: {\r\n                colorPrimary: colorPrimary || '#13999e',\r\n                borderRadius: 0,\r\n                algorithm: true, // Enable algorithm\r\n            },\r\n            DatePicker: {\r\n                colorPrimary: colorPrimary || '#13999e',\r\n                borderRadius: 0,\r\n                algorithm: true, // Enable algorithm\r\n            },\r\n            Tabs: {\r\n                colorPrimary: colorPrimary || '#13999e',\r\n                algorithm: true, // Enable algorithm\r\n            },\r\n            Checkbox: {\r\n                colorPrimary: colorPrimary || '#13999e',\r\n                borderRadius: 0,\r\n                algorithm: true, // Enable algorithm\r\n            },\r\n            Pagination: {\r\n                colorPrimary: colorPrimary || '#13999e',\r\n                borderRadius: 4,\r\n                algorithm: true, // Enable algorithm\r\n            },\r\n            Radio: {\r\n                colorPrimary: colorPrimary || '#13999e',\r\n                algorithm: true, // Enable algorithm\r\n            },\r\n            Upload: {\r\n                colorPrimary: colorPrimary || '#13999e',\r\n                algorithm: true, // Enable algorithm\r\n            },\r\n            token: {\r\n                colorPrimary: colorPrimary || '#13999e'\r\n            },\r\n        },\r\n    }\r\n\r\n\r\n    return <>\r\n        <ConfigProvider\r\n            theme={appTheme}\r\n        >\r\n            <App>\r\n                {children}\r\n            </App>\r\n        </ConfigProvider>\r\n    </>\r\n}\r\n"],"names":["_jsx","_Fragment","_jsxs"],"mappings":"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","x_google_ignoreList":[9]}