kui-crm_actions 0.0.150 → 0.0.152

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../node_modules/tslib/tslib.es6.js","../src/inspections/common/InspectionMetersStep/PartialMeterInfoStep/schema.ts","../src/inspections/common/InspectionMetersStep/PartialMeterInfoStep/fields.ts","../src/inspections/requests/reqBody.ts","../src/inspections/requests/index.ts","../src/inspections/fields/index.ts","../src/inspections/variations/InitialInspection/BasicApartmentInfoStep/fields.ts","../src/inspections/variations/InitialInspection/BasicApartmentInfoStep/schema.ts","../src/inspections/variations/InitialInspection/HouseInfoStep/fields.ts","../src/inspections/variations/InitialInspection/HouseInfoStep/schema.ts","../src/inspections/variations/InitialInspection/DetailApartmentInfoStep/fields.ts","../src/inspections/variations/InitialInspection/DetailApartmentInfoStep/schema.ts","../src/inspections/variations/InitialInspection/RoomsApartmentInfoStep/fields.ts","../src/inspections/variations/InitialInspection/RoomsApartmentInfoStep/schema.ts","../src/inspections/variations/InitialInspection/SecurityApartmentInfoStep/fields.ts","../src/inspections/variations/InitialInspection/SecurityApartmentInfoStep/schema.ts","../src/inspections/variations/InitialInspection/AvailableResourcesStep/fields.ts","../src/inspections/variations/InventoryInspection/AdditionalInfoStep/fields.ts","../src/inspections/variations/InventoryInspection/AdditionalInfoStep/schema.ts","../src/inspections/variations/InventoryInspection/HouseServicesInfoStep/fields.ts","../src/inspections/variations/InventoryInspection/HouseServicesInfoStep/schema.ts","../src/inspections/variations/InventoryInspection/MetersInfoStep/fields.ts","../src/inspections/variations/InventoryInspection/MetersInfoStep/schema.ts","../src/inspections/variations/InventoryInspection/TelecommunicationsInfoStep/fields.ts","../src/inspections/variations/InventoryInspection/TelecommunicationsInfoStep/schema.ts","../src/inspections/variations/InventoryInspection/FillingInfoStep/fields.ts","../src/inspections/variations/InventoryInspection/FillingInfoStep/schema.ts","../src/inspections/variations/InventoryInspection/MeterInfoStep/InventoryMeterInfoFields/schema.ts","../src/inspections/variations/InventoryInspection/MeterInfoStep/InventoryMeterInfoFields/fields.ts","../src/inspections/variations/InventoryInspection/MeterInfoStep/AddedMetersBlock/AddedMeterItem/index.tsx","../src/inspections/variations/InventoryInspection/MeterInfoStep/AddedMetersBlock/index.tsx","../src/inspections/variations/InventoryInspection/MeterInfoStep/InventoryMeterInfoFields/index.tsx","../src/inspections/variations/InventoryInspection/MeterInfoStep/renderMetersSteps.tsx","../src/inspections/common/getRoomImagesSteps.ts","../src/inspections/common/InspectionFeedback/InspectionFeedbackBillet/index.tsx","../src/inspections/common/InspectionFeedback/InspectionFeedbackStatus/index.tsx","../src/inspections/common/InspectionFeedback/index.tsx","../src/inspections/common/InspectionFillingCard/FillingCardContent/index.tsx","../src/inspections/common/InspectionFillingCard/index.tsx","../src/inspections/common/InspectionMetersStep/useMetersValues.ts","../src/inspections/store/FillingListStore.ts","../src/inspections/common/InspectionFillingCard/useFillingList.ts","../src/inspections/utils/inspectionHandlers.ts","../src/inspections/hooks/useInspectionData.ts","../src/inspections/hooks/useInspectionIndexDB.ts","../src/components/ObjectsMap/ObjectForMapPoint/index.tsx","../src/components/ObjectsMap/MetroStation/index.tsx","../src/components/ObjectsMap/ContactPhone/index.tsx","../src/components/ObjectsMap/ObjectForMapCard/index.tsx","../src/components/ObjectsMap/ObjectForMapOverlay/index.tsx"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\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 __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;\r\n return g = { next: verb(0), \"throw\": verb(1), \"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 (_) 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 = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\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: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","import * as yup from \"yup\"\nimport { InputParams } from \"kui-crm\"\n\nconst getPartialMeterInfoSchema = (valuesFields: InputParams<any>[]) => {\n const filteredFields = valuesFields\n .filter((field) => field.type === \"number\")\n .map((field) => field.name)\n const valuesSchema = filteredFields.map((field) => ({\n [field]: yup\n .number()\n .min(0)\n .required(\"This field is required\")\n .transform((value) => (Number.isNaN(value) ? undefined : value)),\n }))\n\n return yup.object().shape({\n number: yup.string().trim().required(\"This field is required\"),\n ...Object.assign({}, ...valuesSchema),\n })\n}\n\nexport const WaterMeterFieldsSchema = yup.object().shape({\n number: yup.string().trim().required(\"This field is required\"),\n value: yup\n .number()\n .min(0)\n .required(\"This field is required\")\n .transform((value) => (Number.isNaN(value) ? undefined : value)),\n})\n\nexport default getPartialMeterInfoSchema\n","import { NumberField } from \"kui-crm\"\nimport _ from \"lodash\"\nimport { PartialMeterInfoFields } from \"./types\"\n\nexport const getWaterMeterFields = (\n meters: PartialMeterInfoFields[],\n meter?: PartialMeterInfoFields,\n withCheckValue?: boolean,\n name?: string,\n settings?: any\n) => {\n const prefixName = name ? `${name}.` : \"\"\n const meterOptions = meters.length\n ? meters.map((meterParams) => ({\n value: meterParams.number,\n label: `${_.capitalize(meterParams.type || \"\")} | #${\n meterParams.number\n }`,\n }))\n : [\n {\n value: meter?.number,\n label: `${_.capitalize(meter?.type || \"\")} | #${meter?.number}`,\n },\n ]\n\n return [\n {\n label: \"Meter\",\n name: `${prefixName}number`,\n variant: \"select\",\n options: meterOptions,\n size: 12,\n isRequired: true,\n disabled: meterOptions.length === 1,\n ...settings?.meter,\n },\n {\n label: \"Value\",\n name: `${prefixName}value`,\n variant: \"custom\",\n CustomInput: NumberField,\n maxIntegerPart: 7,\n maxDecimalPart: 3,\n maxValue:\n meter?.maxValue?.value && withCheckValue\n ? Number(meter.maxValue.value)\n : null,\n warningMessage:\n \"There are deviations in meter readings. It should be no more than\",\n placeholder: meter?.values?.value,\n isRequired: true,\n ...settings?.value,\n },\n ]\n}\n","import { DateTime } from \"luxon\"\nimport { FileBodyRequest, FileStore, ImageBodyRequest } from \"kui-crm\"\nimport { clearNotValidFields, getPhoneNumberFromPhoneParams } from \"kui-utils\"\nimport {\n InitialInspectionFormFields,\n InitialInspectionInfoFields,\n} from \"../variations/InitialInspection/types\"\nimport {\n InitialInspectionFieldsBody,\n InitialInspectionPostBody,\n InspectionRoomPhotoRequest,\n InventoryInspectionPostBody,\n RegularInspectionPostBody,\n TransferInspectionPostBody,\n} from \"../types/api/inspectionsAPI\"\nimport {\n MeterValuesFields,\n RegularInspectionFormFields,\n TransferInspectionFormFields,\n} from \"../types/variations/types\"\nimport { PartialMeterInfoFields } from \"../common/InspectionMetersStep/PartialMeterInfoStep/types\"\nimport { InventoryInspectionPostFormFields } from \"../variations/InventoryInspection/types\"\nimport { InspectionMeterFields } from \"../common/InspectionMetersStep/types\"\nimport { InspectionFillingItemFields } from \"../common/InspectionFillingCard\"\n\nconst inspectionsRequestBody = {\n getPostBodyInitialInspection(\n inspection: InitialInspectionFormFields,\n roomsImages: InspectionRoomPhotoRequest[]\n ): InitialInspectionPostBody {\n return {\n based_on: null,\n date: (inspection.date || DateTime.now()).toISODate()!,\n inspection_type: \"initial\",\n dropbox_link: inspection.dropboxLink,\n photo_groups: roomsImages,\n initial: this.getInitialInspectionFields(inspection),\n }\n },\n getInitialInspectionFields(\n inspection: InitialInspectionInfoFields\n ): InitialInspectionFieldsBody {\n return {\n city: inspection.city!.id,\n address: inspection.apartment.address,\n apartment_number: inspection.apartmentNumber || \"\",\n post_index: inspection.zipCode,\n floor: inspection.floor,\n floor_count: inspection.floorCount!,\n room_type: inspection.typeOfObject,\n num_entrance: inspection.entrance,\n has_intercom: inspection.hasIntercom,\n intercom_code: inspection.intercomCode,\n has_gate: inspection.hasGate,\n gate_code: inspection.gateCode,\n area: inspection.area,\n rooms_number: inspection.roomsNumber,\n bedrooms_number: inspection.bedroomsNumber,\n bathrooms_number: inspection.bathroomsNumber,\n restrooms_number: inspection.restroomsNumber,\n combined_bathrooms_number: inspection.combinedBathroomsNumber,\n number_of_windows: inspection.numberOfWindows,\n renovation_year: inspection.renovation?.year,\n renovation_type: inspection.renovation?.type,\n renovation_style: inspection.renovation?.style,\n wall_type: inspection.wallMaterial,\n overlap_type: inspection.overlapType,\n passenger_elevators_number: inspection.passengerElevatorsCount,\n service_elevators_number: inspection.serviceElevatorsCount,\n ceiling_height: inspection.ceilingHeight,\n building_year: inspection.buildingYear,\n serial_number: inspection.houseNumber,\n type_gas: inspection.gasLeads,\n hot_water: inspection.withHotWater!,\n type_houses: inspection.typeOfHouse,\n parking_type: inspection.parkingType,\n parking_number: inspection.parkingNumber,\n rooms: inspection.rooms.map((room, index) => ({\n id: room.id,\n room_type: room.type,\n order_number: index,\n })),\n metro: inspection.metroStations.map((station) => ({\n name: station.name || \"\",\n metro_station_id: station.id!,\n distance_walk_meters: station.walkDistance,\n distance_car_kilometers: station.carDistance,\n time_car_minutes: station.carTime,\n })),\n used_resources: {\n electricity: inspection.availableResources.electricity,\n water: inspection.availableResources.water,\n gas: inspection.availableResources.gas,\n heating: inspection.availableResources.heating,\n },\n }\n },\n getPostBodyRegularInspection(\n inspection: RegularInspectionFormFields,\n roomsImages: InspectionRoomPhotoRequest[]\n ): RegularInspectionPostBody {\n return {\n date: (inspection.date || DateTime.now()).toISODate()!,\n inspection_type: \"regular\",\n based_on: null,\n dropbox_link: inspection.dropboxLink,\n photo_groups: roomsImages,\n regular: {\n ...this.getInspectionFilling(inspection.fillingList),\n ...this.getPartialInspectionMeters(inspection.meters),\n },\n }\n },\n\n getPostBodyTransferInspection(\n inspection: TransferInspectionFormFields,\n roomsImages: InspectionRoomPhotoRequest[],\n contractFile?: FileBodyRequest | null\n ): TransferInspectionPostBody {\n return {\n date: (inspection.date || DateTime.now()).toISODate()!,\n inspection_type: \"transfer\",\n based_on: null,\n dropbox_link: inspection.dropboxLink,\n photo_groups: roomsImages,\n transfer: {\n contract_document: contractFile || undefined,\n transfer_type: inspection.transferType,\n ...this.getInspectionFilling(inspection.fillingList),\n ...this.getPartialInspectionMeters(inspection.meters),\n },\n }\n },\n\n getInspectionFilling(fillingList: InspectionFillingItemFields[]) {\n return {\n filling: fillingList?.map((filling) => ({\n apartment_feature_id: filling.id,\n is_absent: !filling.check,\n })),\n }\n },\n\n getPartialInspectionMeters(meters: PartialMeterInfoFields[]) {\n return {\n meters: meters.map((meter, index) => ({\n id: meter.id,\n resource_type: meter.resource,\n meter_type: meter.type,\n passport_number: meter.number,\n photos: this.getFilesParams(meter.images),\n values: clearNotValidFields(this.getInspectionMeterValues(meter)),\n })),\n }\n },\n\n getPostBodyInventoryInspection(\n inspection: InventoryInspectionPostFormFields,\n roomsImages: InspectionRoomPhotoRequest[],\n fillingFiles: FileBodyRequest[],\n metersFiles: FileBodyRequest[],\n contractFile?: FileBodyRequest | null\n ): InventoryInspectionPostBody {\n return {\n date: (inspection.date || DateTime.now()).toISODate()!,\n inspection_type: \"inventory\",\n based_on: null,\n dropbox_link: inspection.dropboxLink,\n photo_groups: roomsImages,\n inventory: {\n contract_document: contractFile || undefined,\n allowed_children: inspection.withChildren,\n allowed_pets: inspection.withPets,\n allowed_smoking: inspection.withSmoking,\n additional_terms: inspection.additionalTerms,\n country_of_residence: inspection.countryOfResidence?.id || null,\n administrative_company: inspection.company?.id || null,\n tax_type: inspection.taxesType,\n financial_personal_account: inspection.communalServicesAccount,\n max_electricity_counters: inspection.maxMeters?.electricity,\n max_gas_counters: inspection.maxMeters?.gas,\n max_heating_counters: inspection.maxMeters?.heating,\n max_water_counters: inspection.maxMeters?.water,\n has_barrier: inspection.hasBarrier,\n has_concierge: inspection.hasConcierge,\n has_security: inspection.hasSecurity,\n has_video_surveillance: inspection.hasVideoControl,\n barrier_phone: inspection.barrierPhone\n ? getPhoneNumberFromPhoneParams(inspection.barrierPhone)\n : null,\n concierge_phone: inspection.conciergePhone\n ? getPhoneNumberFromPhoneParams(inspection.conciergePhone)\n : null,\n security_phone: inspection.securityPhone\n ? getPhoneNumberFromPhoneParams(inspection.securityPhone)\n : null,\n video_surveillance_phone: inspection.videoControlPhone\n ? getPhoneNumberFromPhoneParams(inspection.videoControlPhone)\n : null,\n home_phone: inspection.homePhone\n ? getPhoneNumberFromPhoneParams(inspection.homePhone)\n : null,\n wifi_name: inspection.wifi?.name,\n wifi_password: inspection.wifi?.password,\n internet_provider_link: inspection.internetProvider?.link,\n internet_provider_login: inspection.internetProvider?.login,\n internet_provider_password: inspection.internetProvider?.password,\n payer_code: inspection.payerCode,\n filling: inspection.fillingList.map((filling, index) => ({\n feature: filling.tag?.id || 0,\n description: filling.description,\n model: filling.name,\n serial_code: filling.serialNumber,\n amount: filling.numberOfSubjects,\n photos: this.getFilesParams(filling.images),\n instruction: fillingFiles[index],\n })),\n ...this.getInventoryInspectionMeters(inspection.meters, metersFiles),\n },\n }\n },\n\n getInventoryInspectionMeters(\n meters: InspectionMeterFields[],\n metersFiles: FileBodyRequest[],\n metersImages?: ImageBodyRequest[][]\n ) {\n return {\n meters:\n meters?.map((meter, index) => ({\n ...this.getMeterCommonFields(meter),\n passport: metersFiles[index],\n values: clearNotValidFields(\n this.getInspectionMeterValues(meter, \"initialValue\")\n ),\n photos: metersImages\n ? metersImages[index]\n : this.getFilesParams(meter.images),\n no_tariff: meter.noTariff,\n auto_sending: meter.withAutoSending,\n })) || [],\n }\n },\n\n getInspectionMeterValues(\n meter: MeterValuesFields,\n fieldName?: keyof MeterValuesFields\n ) {\n if (meter.resource === \"electricity\") {\n const prefix = fieldName || \"\"\n const t1 = meter[`${prefix}T1` as keyof MeterValuesFields]\n const t2 = meter[`${prefix}T2` as keyof MeterValuesFields]\n const t3 = meter[`${prefix}T3` as keyof MeterValuesFields]\n return {\n T1: t1 ? Number(t1) : t1,\n T2: t2 ? Number(t2) : t2,\n T3: t3 ? Number(t3) : t3,\n }\n }\n const valueField = (fieldName || \"value\") as keyof MeterValuesFields\n if (meter.resource === \"water\") {\n if (meter.type === \"cold\") {\n const cold = meter[valueField]\n return { cold: cold ? Number(cold) : cold }\n }\n const hot = meter[valueField]\n return { hot: hot ? Number(hot) : hot }\n }\n const value = meter[valueField]\n\n return {\n [meter.resource]: value ? Number(value) : value,\n }\n },\n\n getMeterCommonFields(meter: InspectionMeterFields) {\n return {\n id: meter.id,\n meter_type: meter.type,\n passport_number: meter.number,\n resource_type: meter.resource,\n activation_date: meter.startDate?.toISODate() || null,\n }\n },\n\n getMeterValues(\n initialValue?: string | number | null,\n lastValue?: string | number | null\n ) {\n return clearNotValidFields({\n initial_value: initialValue,\n last_value: lastValue,\n })\n },\n\n getFilesParams(files: FileStore[]) {\n return files\n .map((file) => file.uploadedData)\n .filter((data) => data) as ImageBodyRequest[]\n },\n}\n\nexport default inspectionsRequestBody\n","import { uploadFiles, requests, InspectionTypes, uploadNewFile } from \"kui-crm\"\nimport { resHandler, Loader, callPromises } from \"kui-utils\"\nimport to from \"await-to-js\"\nimport {\n ApartmentInspectionModel,\n InspectionTypesResponse,\n TransferTypesResponse,\n} from \"../types/api/inspectionsAPI\"\nimport { InspectionRoomImagesParams } from \"../common/types\"\nimport { InitialInspectionFormFields } from \"../variations/InitialInspection/types\"\nimport inspectionsRequestBody from \"./reqBody\"\nimport {\n RegularInspectionFormFields,\n TransferInspectionFormFields,\n} from \"../types/variations/types\"\nimport { InventoryInspectionPostFormFields } from \"../variations/InventoryInspection/types\"\n\nconst inspectionsRequests = {\n async getInspectionTypes(apartmentId: number) {\n const [err, res] = await to<InspectionTypesResponse>(\n requests.get(`/apartments/${apartmentId}/inspection-types`)\n )\n\n if (err) return [err, undefined]\n\n return [null, res?.inspection_types]\n },\n\n async getTransferTypes(apartmentId: number) {\n const [err, res] = await to<TransferTypesResponse>(\n requests.get(`/apartments/${apartmentId}/transfer-inspection-types`)\n )\n\n if (err) return [err, undefined]\n\n return [null, res?.transfer_inspection_types]\n },\n\n async createInspection(apartmentId: number, body: any, loader: Loader) {\n const response = await to<ApartmentInspectionModel>(\n requests.post(`/apartments/${apartmentId}/inspections`, body)\n )\n\n resHandler(response, loader)\n\n return response[1]?.id\n },\n async createInitialInspection(\n data: InitialInspectionFormFields,\n apartmentId: number,\n loader: Loader\n ) {\n if (apartmentId) {\n loader.startLoading(\"inspection creation\")\n\n const roomsImages = this.getRoomParams(data.roomsImages)\n const body = inspectionsRequestBody.getPostBodyInitialInspection(\n data,\n roomsImages\n )\n\n return this.createInspection(apartmentId, body, loader)\n }\n return null\n },\n async createRegularInspection(\n data: RegularInspectionFormFields,\n apartmentId: number,\n loader: Loader\n ) {\n if (apartmentId) {\n loader.startLoading(\"inspection creation\")\n\n const roomsImages = this.getRoomParams(data.roomsImages)\n\n const body = inspectionsRequestBody.getPostBodyRegularInspection(\n data,\n roomsImages\n )\n\n return this.createInspection(apartmentId, body, loader)\n }\n return null\n },\n\n async createTransferInspection(\n data: TransferInspectionFormFields,\n apartmentId: number,\n loader: Loader\n ) {\n if (apartmentId) {\n loader.startLoading(\"inspection creation\")\n\n const roomsImages = this.getRoomParams(data.roomsImages)\n const file = await uploadNewFile(loader, data.contractFile)\n\n const body = inspectionsRequestBody.getPostBodyTransferInspection(\n data,\n roomsImages,\n file\n )\n\n return this.createInspection(apartmentId, body, loader)\n }\n return null\n },\n\n async createInventoryInspection(\n data: InventoryInspectionPostFormFields,\n apartmentId: number,\n loader: Loader\n ) {\n if (apartmentId) {\n loader.startLoading(\"inspection creation\")\n\n const fillingFiles = data.fillingList.map(\n (filling) => filling.instruction\n )\n const metersFiles = data.meters?.map((meter) => meter.passportFile) || []\n const files = await callPromises([\n uploadFiles(loader, fillingFiles),\n uploadFiles(loader, metersFiles),\n uploadNewFile(loader, data.contractFile),\n ])\n const roomsImages = this.getRoomParams(data.roomsImages)\n\n const body = inspectionsRequestBody.getPostBodyInventoryInspection(\n data,\n roomsImages,\n files[0],\n files[1],\n files[2]\n )\n\n return this.createInspection(apartmentId, body, loader)\n }\n return null\n },\n\n getRoomParams(rooms: InspectionRoomImagesParams[]) {\n return rooms.map((room) => ({\n purpose: room.type,\n comment: room.comment,\n photos: inspectionsRequestBody.getFilesParams(room.files),\n }))\n },\n}\n\nexport default inspectionsRequests\n","import {\n ApartmentDetailInfoParams,\n ApartmentFillingVariants,\n ApartmentHouseInfoParams,\n ApartmentMainInfoParams,\n ApartmentMetroParams,\n ApartmentModel,\n ApartmentPartialDescriptionParams,\n ApartmentPaymentInfoParams,\n ApartmentSecurityInfoParams,\n ApartmentTelecommunicationInfoParams,\n DetailObjectInfoInterface,\n FileStore,\n FullInspectionCommonFields,\n ImageStore,\n InspectionMeterCommonInfo,\n InspectionMeterInfoParams,\n InspectionMetersInfoParams,\n InspectionPartialMetersInfoParams,\n InspectionPaymentInfoParams,\n InspectionRoomPhotoModel,\n InventoryInspectionFields,\n InventoryInspectionMeterModel,\n LatLonParams,\n MainObjectInfoInterface,\n matchesAPIFillingTypes,\n MaxMetersInfoParams,\n ResourceTypes,\n SecurityObjectInfoInterface,\n TransferInspectionMeterModel,\n InspectionFillingModel,\n ApartmentWithHouseInfoModelFields,\n} from \"kui-crm\"\nimport { getPhoneParamsFromString } from \"kui-utils\"\nimport { DateTime } from \"luxon\"\nimport { RoomImagesParams } from \"../types\"\nimport { ApartmentDescriptionWithMetro } from \"../types/variations/types\"\nimport { InspectionFillingParams } from \"../types/common\"\n\nexport const averageWalkMetersPerHour = 5000\n\nexport const minutesPerHour = 60\n\nconst apartmentFields = {\n getApartmentDescriptionInfo(\n apartment: ApartmentModel\n ): ApartmentPartialDescriptionParams {\n return {\n ...this.getApartmentMainInfo(apartment),\n ...this.getApartmentSecurityInfo(apartment),\n ...this.getApartmentDetailInfo(apartment),\n ...this.getApartmentTelecommunicationInfo(apartment),\n ...this.getApartmentHouseInfo(apartment),\n ...this.getMaxMetersParams(apartment),\n }\n },\n\n getApartmentMainInfo(\n apartment: MainObjectInfoInterface\n ): ApartmentMainInfoParams {\n return {\n ...apartment,\n apartmentNumber: apartment.apartment_number,\n zipCode: apartment.post_index || \"\",\n floorCount: apartment.floor_count,\n entrance: apartment.num_entrance,\n geolocation: this.getGeolocationParams(apartment.geolocation),\n distanceToCenter: apartment.distance_to_center_kilometers || null,\n typeOfObject: apartment.room_type,\n }\n },\n\n getApartmentSecurityInfo(\n apartment: SecurityObjectInfoInterface\n ): ApartmentSecurityInfoParams {\n return {\n hasIntercom: apartment.has_intercom ?? null,\n hasGate: apartment.has_gate ?? null,\n hasBarrier: apartment.has_barrier ?? null,\n hasSecurity: apartment.has_security ?? null,\n hasConcierge: apartment.has_concierge ?? null,\n hasVideoControl: apartment.has_video_surveillance ?? null,\n intercomCode: apartment.intercom_code || \"\",\n gateCode: apartment.gate_code || \"\",\n barrierPhone: apartment.barrier_phone\n ? getPhoneParamsFromString(apartment.barrier_phone)\n : null,\n conciergePhone: apartment.concierge_phone\n ? getPhoneParamsFromString(apartment.concierge_phone)\n : null,\n securityPhone: apartment.security_phone\n ? getPhoneParamsFromString(apartment.security_phone)\n : null,\n videoControlPhone: apartment.video_surveillance_phone\n ? getPhoneParamsFromString(apartment.video_surveillance_phone)\n : null,\n }\n },\n\n getApartmentDetailInfo(\n apartment: DetailObjectInfoInterface\n ): ApartmentDetailInfoParams {\n return {\n area: apartment.area,\n livingArea: apartment.living_area,\n kitchenArea: apartment.kitchen_area,\n roomsNumber: apartment.rooms_number,\n bedroomsNumber: apartment.bedrooms_number,\n bathroomsNumber: apartment.bathrooms_number,\n restroomsNumber: apartment.restrooms_number,\n combinedBathroomsNumber: apartment.combined_bathrooms_number,\n ceilingHeight: apartment.ceiling_height,\n numberOfWindows: apartment.number_of_windows,\n renovation: {\n year: apartment.renovation_year || null,\n type: apartment.renovation_type || null,\n style: apartment.renovation_style || null,\n },\n rooms:\n apartment.rooms?.map((room) => ({\n id: room.id,\n area: room.area || null,\n type: room.room_type || null,\n })) || [],\n }\n },\n\n getApartmentTelecommunicationInfo(\n apartment: ApartmentModel\n ): ApartmentTelecommunicationInfoParams {\n return {\n homePhone: apartment.home_phone\n ? getPhoneParamsFromString(apartment.home_phone)\n : null,\n wifi: {\n name: apartment.wifi_name,\n password: apartment.wifi_password,\n },\n internetProvider: {\n link: apartment.internet_provider_link,\n login: apartment.internet_provider_login,\n password: apartment.internet_provider_password,\n },\n tvType: apartment.tv_type,\n }\n },\n\n getApartmentHouseInfo(\n apartment: ApartmentWithHouseInfoModelFields\n ): ApartmentHouseInfoParams {\n return {\n typeOfHouse: apartment.type_houses,\n buildingYear: apartment.building_year,\n houseNumber: apartment.serial_number,\n wallMaterial: apartment.wall_type,\n overlapType: apartment.overlap_type,\n parkingType: apartment.parking_type,\n parkingNumber: apartment.parking_number,\n passengerElevatorsCount: apartment.passenger_elevators_number\n ? Number(apartment.passenger_elevators_number)\n : null,\n serviceElevatorsCount: apartment.service_elevators_number\n ? Number(apartment.service_elevators_number)\n : null,\n gasLeads: apartment.type_gas,\n withHotWater: apartment.hot_water,\n }\n },\n\n getMaxMetersParams(apartment: ApartmentModel): MaxMetersInfoParams {\n return {\n maxMeters: {\n water: apartment.max_water_counters,\n electricity: apartment.max_electricity_counters,\n gas: apartment.max_gas_counters,\n heating: apartment.max_heating_counters,\n },\n }\n },\n\n getGeolocationParams(geolocation?: LatLonParams) {\n return geolocation\n ? {\n lat: Number(geolocation.lat),\n lng: Number(geolocation.lon),\n }\n : null\n },\n\n getObjectRoomsImages(images: InspectionRoomPhotoModel[]): RoomImagesParams[] {\n return images.map((imageBlock) => ({\n id: imageBlock.id,\n type: imageBlock.purpose,\n comment: imageBlock.comment,\n images: imageBlock.photos.map((image) =>\n ImageStore.initFromImageModel(image)\n ),\n roomNumber:\n typeof imageBlock.room_order_number === \"number\"\n ? imageBlock.room_order_number + 1\n : 0,\n }))\n },\n\n getInspectionFillingParams(\n filling: InspectionFillingModel,\n withChecking?: boolean\n ): InspectionFillingParams {\n return {\n id: filling.id,\n name: filling.description || \"\",\n tag: {\n id: filling.feature.id,\n name: filling.feature.name,\n },\n images: filling.photos?.map((image) =>\n ImageStore.initFromImageModel(image)\n ),\n serialNumber: filling.serial_code,\n numberOfSubjects: Number(filling.amount),\n instruction: filling.instruction\n ? FileStore.initFromDocumentModel(filling.instruction)\n : null,\n type: matchesAPIFillingTypes[\n filling.feature.feature_type as keyof typeof matchesAPIFillingTypes\n ] as ApartmentFillingVariants,\n ...(withChecking && filling.feature.feature_type === \"appliance\"\n ? {\n check: !filling.is_absent,\n wasMissing: filling.previously_absent,\n }\n : {}),\n }\n },\n\n getApartmentDescriptionWithMetro(\n apartment: ApartmentModel\n ): ApartmentDescriptionWithMetro {\n return {\n ...this.getApartmentDescriptionInfo(apartment),\n metroStations: this.getMetroStationsParams(apartment?.metro_stations),\n }\n },\n\n getMetroStationsParams(metroStations?: ApartmentMetroParams[]) {\n return (\n metroStations?.map((metroStation) => ({\n id: metroStation.metro_station_id,\n name: metroStation.name,\n walkDistance: metroStation.distance_walk_meters,\n carDistance: Number(metroStation.distance_car_kilometers),\n carTime: metroStation.time_car_minutes,\n walkTime: Math.round(\n metroStation.distance_walk_meters! /\n (averageWalkMetersPerHour / minutesPerHour)\n ),\n })) || []\n )\n },\n\n getMeterValues(\n meter: TransferInspectionMeterModel | InventoryInspectionMeterModel,\n resource: ResourceTypes,\n fieldName?: string\n ) {\n if (resource === \"electricity\") {\n const prefix = fieldName || \"\"\n return {\n [`${prefix}T1`]: Number(meter.values.T1),\n ...(meter.meter_type !== \"T1\" && {\n [`${prefix}T2`]: Number(meter.values.T2),\n }),\n ...(meter.meter_type === \"T3\" && {\n [`${prefix}T3`]: Number(meter.values.T3),\n }),\n }\n }\n const valueField = fieldName || \"value\"\n if (resource === \"water\") {\n if (meter.meter_type === \"cold\") {\n return { [`${valueField}`]: Number(meter.values.cold) }\n }\n return { [`${valueField}`]: Number(meter.values.hot) }\n }\n return {\n [`${valueField}`]: Number(meter.values[resource]),\n }\n },\n\n getTransferMetersInfo(\n meters: TransferInspectionMeterModel[]\n ): InspectionPartialMetersInfoParams {\n return {\n meters: meters.map((meter) => ({\n id: meter.id,\n type: meter.meter_type,\n number: meter.passport_number,\n resource: meter.resource_type,\n images:\n meter.photos?.map((photo) => ImageStore.initFromImageModel(photo)) ||\n [],\n values: this.getMeterValues(meter, meter.resource_type),\n ...this.getMeterValues(meter, meter.resource_type),\n })),\n }\n },\n\n getApartmentPaymentInfo(\n apartment: ApartmentModel\n ): ApartmentPaymentInfoParams {\n return {\n payerCode: apartment.payer_code,\n communalServicesAccount: apartment.financial_personal_account,\n managementCompany: apartment.administrative_company\n ? {\n ...apartment.administrative_company,\n operatingAccount: apartment.payer_code,\n }\n : null,\n }\n },\n\n getInspectionPaymentInfo(\n inspection: FullInspectionCommonFields\n ): InspectionPaymentInfoParams {\n return {\n ...this.getApartmentPaymentInfo(inspection),\n countryOfResidence: inspection.country_of_residence,\n taxesType: inspection.tax_type,\n }\n },\n\n getMeterInfo(\n meter: InspectionMeterCommonInfo,\n resource: ResourceTypes\n ): InspectionMeterInfoParams {\n return {\n id: meter.id,\n type: meter.meter_type,\n number: meter.passport_number,\n startDate: meter.activation_date\n ? DateTime.fromISO(meter.activation_date)\n : null,\n company: meter.company,\n operationalAccountNumber: meter.operating_account,\n resource,\n tariff: meter.tariff\n ? {\n id: meter.tariff.id,\n name: meter.tariff.code_name,\n }\n : null,\n passportFile: meter.passport\n ? FileStore.initFromFileModel(meter.passport)\n : null,\n images:\n meter.photos?.map((photo) => ImageStore.initFromImageModel(photo)) ||\n [],\n }\n },\n\n getInventoryMetersInfo(\n inspection: InventoryInspectionFields\n ): InspectionMetersInfoParams {\n return {\n meters: inspection.meters.map((meter) => ({\n ...this.getMeterInfo(meter, meter.resource_type),\n ...this.getMeterValues(meter, meter.resource_type, \"initialValue\"),\n })),\n }\n },\n}\n\nexport default apartmentFields\n","/* global google */\nimport {\n CountryAutocomplete,\n RegionAutocomplete,\n CityAutocomplete,\n InputParams,\n} from \"kui-crm\"\nimport { InputWithAddressAutocomplete } from \"kui-complex\"\nimport { BasicApartmentInfoStepFields } from \"./types\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst getBasicApartmentInfoFields = (\n handlePlaceSelect?: (coords: google.maps.LatLngLiteral) => void,\n settings?: InspectionFieldsSettings\n): InputParams<BasicApartmentInfoStepFields>[] => [\n {\n name: \"country\",\n label: \"Country\",\n variant: \"custom\",\n CustomInput: CountryAutocomplete,\n size: 12,\n ...settings?.country,\n },\n {\n name: \"region\",\n label: \"Region\",\n variant: \"custom\",\n CustomInput: RegionAutocomplete,\n ...settings?.region,\n },\n {\n name: \"city\",\n label: \"City\",\n variant: \"custom\",\n CustomInput: CityAutocomplete,\n isRequired: true,\n ...settings?.city,\n },\n {\n name: \"apartment\",\n variant: \"custom\",\n CustomInput: InputWithAddressAutocomplete,\n handlePlaceSelect,\n size: 12,\n isRequired: true,\n ...settings?.apartment,\n },\n {\n label: \"Apartment\",\n name: \"apartmentNumber\",\n \"data-testid\": \"apartment_number\",\n isRequired: true,\n ...settings?.apartmentNumber,\n },\n {\n label: \"Zip code\",\n name: \"zipCode\",\n ...settings?.zipCode,\n },\n]\n\nexport default getBasicApartmentInfoFields\n","import * as yup from \"yup\"\nimport { defaultRequiredMessage } from \"kui-crm\"\n\nexport const BasicApartmentInfoFieldsSchema = {\n apartment: yup.object({\n address: yup.string().trim().required(\"This field is required\"),\n }),\n apartmentNumber: yup.string().required(\"This field is required\"),\n city: yup.object({\n name: yup.string().required(\"This field is required\"),\n }),\n metroStations: yup.array().of(\n yup.object({\n id: yup\n .number()\n .transform((value) => (Number.isNaN(value) ? undefined : value)),\n name: yup\n .string()\n .required(defaultRequiredMessage)\n .test(\n \"check-id\",\n \"Please select an metro station from the dropdown\",\n function (value) {\n return !!this.parent.id\n }\n ),\n walkDistance: yup.string().required(defaultRequiredMessage),\n carDistance: yup.string().required(defaultRequiredMessage),\n carTime: yup.string().required(defaultRequiredMessage),\n })\n ),\n}\n\nconst BasicApartmentInfoStepSchema = yup.object(BasicApartmentInfoFieldsSchema)\n\nexport default BasicApartmentInfoStepSchema\n","import {\n InputParams,\n HouseTypesValues,\n WallMaterialsValues,\n SlabsTypesValues,\n BooleanValues,\n GasTypesValues,\n} from \"kui-crm\"\nimport { HouseInfoStepFields } from \"./types\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst getHouseInfoStep = (\n settings?: InspectionFieldsSettings\n): InputParams<HouseInfoStepFields>[] => [\n {\n name: \"typeOfHouse\",\n label: \"Type houses\",\n variant: \"select\",\n options: HouseTypesValues,\n isRequired: true,\n ...settings?.typeOfHouse,\n },\n {\n name: \"houseNumber\",\n label: \"House series\",\n ...settings?.houseNumber,\n },\n {\n name: \"wallMaterial\",\n label: \"Wall material\",\n variant: \"select\",\n options: WallMaterialsValues,\n isRequired: true,\n ...settings?.wallMaterial,\n },\n {\n name: \"overlapType\",\n label: \"Overlap type\",\n variant: \"select\",\n options: SlabsTypesValues,\n isRequired: true,\n ...settings?.overlapType,\n },\n {\n name: \"gasLeads\",\n label: \"Gas\",\n variant: \"select\",\n options: GasTypesValues,\n isRequired: true,\n ...settings?.gasLeads,\n },\n {\n name: \"withHotWater\",\n label: \"Hot water\",\n variant: \"select\",\n options: BooleanValues,\n isRequired: true,\n ...settings?.withHotWater,\n },\n {\n name: \"passengerElevatorsCount\",\n label: \"Passenger elevators\",\n type: \"number\",\n isRequired: true,\n ...settings?.passengerElevatorsCount,\n },\n {\n name: \"serviceElevatorsCount\",\n label: \"Service elevators\",\n type: \"number\",\n isRequired: true,\n ...settings?.serviceElevatorsCount,\n },\n {\n name: \"buildingYear\",\n label: \"Builded\",\n isRequired: true,\n ...settings?.buildingYear,\n },\n]\n\nexport default getHouseInfoStep\n","import * as yup from \"yup\"\nimport { positiveNumberSchema, defaultRequiredMessage } from \"kui-crm\"\n\nexport const HouseInfoFieldsSchema = {\n passengerElevatorsCount: positiveNumberSchema,\n serviceElevatorsCount: positiveNumberSchema,\n typeOfHouse: yup.string().required(defaultRequiredMessage),\n buildingYear: yup.string().required(defaultRequiredMessage),\n wallMaterial: yup.string().required(defaultRequiredMessage),\n overlapType: yup.string().required(defaultRequiredMessage),\n gasLeads: yup.string().required(defaultRequiredMessage),\n withHotWater: yup.boolean().required(defaultRequiredMessage),\n}\n\nconst HouseInfoStepSchema = yup.object(HouseInfoFieldsSchema)\n\nexport default HouseInfoStepSchema\n","import {\n RenovationStyleValues,\n RenovationTypeValues,\n RoomTypeValues,\n InputParams,\n} from \"kui-crm\"\nimport { DetailApartmentInfoStepFields } from \"./types\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst inputProps = {\n step: 0.01,\n}\n\nconst getDetailApartmentInfoFields = (\n roomsCount?: number | null,\n bedroomsCount?: number | null,\n settings?: InspectionFieldsSettings\n): InputParams<DetailApartmentInfoStepFields>[] => [\n {\n label: \"Total area\",\n name: \"area\",\n type: \"number\",\n isRequired: true,\n ...inputProps,\n ...settings?.area,\n },\n\n ...(roomsCount\n ? new Array(Number(roomsCount))\n .fill(0)\n .map((_, key) => {\n const label =\n bedroomsCount && key < bedroomsCount\n ? `Bedroom ${key + 1}`\n : `Room ${key + 1}`\n const settingsKey =\n bedroomsCount && key < bedroomsCount ? \"bedrooms\" : \"rooms\"\n\n return [\n {\n name: `rooms.${key}.type`,\n label: `${label} type`,\n variant: \"select\",\n options: RoomTypeValues,\n isRequired: true,\n ...(settings?.[settingsKey]\n ? settings[settingsKey](key)?.type\n : {}),\n },\n ]\n })\n .flat()\n : []),\n {\n name: \"ceilingHeight\",\n label: \"Ceiling height\",\n type: \"number\",\n cornerLabel: \"m.\",\n isRequired: true,\n ...inputProps,\n ...settings?.ceilingHeight,\n },\n {\n name: \"numberOfWindows\",\n label: \"Windows\",\n type: \"number\",\n isRequired: true,\n ...settings?.numberOfWindows,\n },\n {\n name: \"renovation.year\",\n label: \"Year of last renovation\",\n type: \"number\",\n isRequired: true,\n ...settings?.renovation.year,\n },\n {\n name: \"renovation.type\",\n label: \"Type of renovation\",\n variant: \"select\",\n options: RenovationTypeValues,\n isRequired: true,\n ...settings?.renovation?.type,\n },\n {\n name: \"renovation.style\",\n label: \"Renovation style\",\n variant: \"select\",\n options: RenovationStyleValues,\n isRequired: true,\n ...settings?.renovation?.style,\n },\n]\n\nexport default getDetailApartmentInfoFields\n","import * as yup from \"yup\"\nimport { positiveNumberSchema } from \"kui-crm\"\n\nexport const DetailApartmentInfoFieldsSchema = {\n area: yup.number().positive().required(\"This field is required\"),\n rooms: yup.array().of(\n yup.object({\n type: yup.string().required(\"This field is required\"),\n })\n ),\n numberOfWindows: yup.number().min(0).required(\"This field is required\"),\n renovation: yup.object({\n year: yup.number().positive().required(\"This field is required\"),\n type: yup.string().required(\"This field is required\"),\n style: yup.string().required(\"This field is required\"),\n }),\n ceilingHeight: positiveNumberSchema,\n}\n\nconst DetailApartmentInfoStepSchema = yup.object(\n DetailApartmentInfoFieldsSchema\n)\n\nexport default DetailApartmentInfoStepSchema\n","import { InputParams } from \"kui-crm\"\nimport { RoomsApartmentInfoStepFields } from \"./types\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst getRoomsApartmentInfoFields = (\n settings?: InspectionFieldsSettings\n): InputParams<RoomsApartmentInfoStepFields>[] => [\n {\n label: \"Floor\",\n name: \"floor\",\n type: \"number\",\n isRequired: true,\n ...settings?.floor,\n },\n {\n label: \"Floors\",\n name: \"floorCount\",\n type: \"number\",\n isRequired: true,\n ...settings?.floorCount,\n },\n {\n label: \"Rooms\",\n name: \"roomsNumber\",\n type: \"number\",\n isRequired: true,\n ...settings?.roomsNumber,\n },\n {\n label: \"Bedrooms\",\n name: \"bedroomsNumber\",\n type: \"number\",\n isRequired: true,\n ...settings?.bedroomsNumber,\n },\n {\n label: \"Bathrooms\",\n name: \"bathroomsNumber\",\n type: \"number\",\n isRequired: true,\n ...settings?.bathroomsNumber,\n },\n {\n label: \"Restrooms\",\n name: \"restroomsNumber\",\n type: \"number\",\n isRequired: true,\n ...settings?.restroomsNumber,\n },\n {\n label: \"Combined bathroom\",\n name: \"combinedBathroomsNumber\",\n type: \"number\",\n isRequired: true,\n ...settings?.combinedBathroomsNumber,\n },\n]\n\nexport default getRoomsApartmentInfoFields\n","import * as yup from \"yup\"\r\n\r\nexport const RoomsApartmentInfoFieldsSchema = {\r\n floor: yup\r\n .number()\r\n .integer()\r\n .min(0)\r\n .test(\"is less than floorCount\", \"Too much\", function (value: any) {\r\n return value <= this.parent.floorCount\r\n }),\r\n floorCount: yup\r\n .number()\r\n .integer()\r\n .positive()\r\n .required(\"This field is required\"),\r\n roomsNumber: yup.number().integer().min(0).required(\"This field is required\"),\r\n bedroomsNumber: yup\r\n .number()\r\n .integer()\r\n .min(0)\r\n .required(\"This field is required\"),\r\n bathroomsNumber: yup\r\n .number()\r\n .integer()\r\n .min(0)\r\n .required(\"This field is required\"),\r\n restroomsNumber: yup\r\n .number()\r\n .integer()\r\n .min(0)\r\n .required(\"This field is required\"),\r\n combinedBathroomsNumber: yup\r\n .number()\r\n .integer()\r\n .min(0)\r\n .required(\"This field is required\"),\r\n}\r\n\r\nconst RoomsApartmentInfoStepSchema = yup.object(RoomsApartmentInfoFieldsSchema)\r\n\r\nexport default RoomsApartmentInfoStepSchema\r\n","import {\n BooleanValues,\n RoomTypesValues,\n InputParams,\n ParkingTypesValues,\n} from \"kui-crm\"\nimport { DependentInput } from \"kui-complex\"\nimport { SecurityApartmentInfoStepFields } from \"./types\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst getSecurityApartmentInfoFields = (\n settings?: InspectionFieldsSettings\n): InputParams<SecurityApartmentInfoStepFields>[] => [\n {\n label: \"Object type\",\n name: \"typeOfObject\",\n variant: \"select\",\n options: RoomTypesValues,\n isRequired: true,\n ...settings?.typeOfObject,\n },\n {\n label: \"Entrance\",\n name: \"entrance\",\n isRequired: true,\n ...settings?.entrance,\n },\n {\n name: \"hasIntercom\",\n label: \"Intercom\",\n variant: \"select\",\n options: BooleanValues,\n isRequired: true,\n ...settings?.hasIntercom,\n },\n {\n name: \"intercomCode\",\n label: \"Intercom code\",\n variant: \"custom\",\n CustomInput: DependentInput,\n dependentInputName: \"hasIntercom\",\n ...settings?.intercomCode,\n },\n {\n name: \"hasGate\",\n label: \"Gate\",\n variant: \"select\",\n options: BooleanValues,\n isRequired: true,\n ...settings?.hasGate,\n },\n {\n name: \"gateCode\",\n label: \"Gate code\",\n variant: \"custom\",\n CustomInput: DependentInput,\n dependentInputName: \"hasGate\",\n ...settings?.gateCode,\n },\n {\n name: \"parkingType\",\n label: \"Parking\",\n variant: \"select\",\n options: ParkingTypesValues,\n ...settings?.parkingType,\n },\n {\n name: \"parkingNumber\",\n label: \"Parking number\",\n variant: \"custom\",\n CustomInput: DependentInput,\n dependentInputName: \"parkingType\",\n ...settings?.parkingNumber,\n },\n]\n\nexport default getSecurityApartmentInfoFields\n","import * as yup from \"yup\"\nimport { defaultRequiredMessage, fieldWithConditionSchema } from \"kui-crm\"\n\nexport const SecurityApartmentInfoFieldsSchema = {\n typeOfObject: yup.string().required(\"This field is required\"),\n entrance: yup.string().required(\"This field is required\"),\n hasIntercom: yup.string().required(\"This field is required\"),\n intercomCode: fieldWithConditionSchema(\"hasIntercom\"),\n hasGate: yup.string().required(\"This field is required\"),\n gateCode: fieldWithConditionSchema(\"hasGate\"),\n}\n\nconst SecurityApartmentInfoStepSchema = yup.object(\n SecurityApartmentInfoFieldsSchema\n)\n\nexport default SecurityApartmentInfoStepSchema\n","import { InputParams, BigCheckbox } from \"kui-crm\"\nimport { InspectionFieldsSettings } from \"../../../index\"\nimport { AvailableResourcesStepFields } from \"./types\"\n\nconst getAvailableResourcesFields = (\n settings?: InspectionFieldsSettings\n): InputParams<AvailableResourcesStepFields>[] => [\n {\n label: \"Water\",\n name: \"availableResources.water\",\n variant: \"custom\",\n CustomInput: BigCheckbox,\n ...settings?.water,\n },\n {\n label: \"Electricity\",\n name: \"availableResources.electricity\",\n variant: \"custom\",\n CustomInput: BigCheckbox,\n ...settings?.electricity,\n },\n {\n label: \"Gas\",\n name: \"availableResources.gas\",\n variant: \"custom\",\n CustomInput: BigCheckbox,\n ...settings?.gas,\n },\n {\n label: \"Heating\",\n name: \"availableResources.heating\",\n variant: \"custom\",\n CustomInput: BigCheckbox,\n ...settings?.heating,\n },\n]\n\nexport default getAvailableResourcesFields\n","import { InputParams, getApartmentPaymentFields } from \"kui-crm\"\nimport { CheckboxWithController } from \"kui-complex\"\nimport { InspectionFieldsSettings } from \"../../../index\"\nimport { AdditionalInfoStepFields } from \"./types\"\n\nconst checkboxLabelProps = {\n size: \"s\",\n}\n\nconst getAdditionalInfoStepFields = (\n settings?: InspectionFieldsSettings\n): InputParams<AdditionalInfoStepFields>[] => [\n {\n label: \"Pets\",\n name: \"withPets\",\n variant: \"custom\",\n CustomInput: CheckboxWithController,\n labelProps: checkboxLabelProps,\n ...settings?.withPets,\n },\n {\n label: \"Children\",\n name: \"withChildren\",\n variant: \"custom\",\n CustomInput: CheckboxWithController,\n labelProps: checkboxLabelProps,\n ...settings?.withChildren,\n },\n {\n label: \"Smoking\",\n name: \"withSmoking\",\n variant: \"custom\",\n CustomInput: CheckboxWithController,\n labelProps: checkboxLabelProps,\n ...settings?.withSmoking,\n },\n {\n isTextArea: true,\n placeholder: \"other terms\",\n name: \"additionalTerms\",\n ...settings?.additionalTerms,\n },\n ...getApartmentPaymentFields(settings),\n]\n\nexport default getAdditionalInfoStepFields\n","import * as yup from \"yup\"\nimport { defaultRequiredMessage } from \"kui-crm\"\n\nexport const AdditionalInfoFieldsSchema = {\n taxesType: yup.string().required(defaultRequiredMessage),\n countryOfResidence: yup.object({\n name: yup.string().required(defaultRequiredMessage),\n }),\n company: yup.object({\n name: yup.string().required(defaultRequiredMessage),\n }),\n}\n\nconst AdditionalInfoStepSchema = yup.object(AdditionalInfoFieldsSchema)\n\nexport default AdditionalInfoStepSchema\n","import { BooleanValues, InputParams } from \"kui-crm\"\nimport { DependentInput, InputPhoneWithForm } from \"kui-complex\"\nimport { HouseServicesInfoStepFields } from \"./types\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst getHouseServicesInfoStep = (\n settings?: InspectionFieldsSettings\n): InputParams<HouseServicesInfoStepFields>[] => [\n {\n name: \"hasBarrier\",\n label: \"Barrier\",\n variant: \"select\",\n options: BooleanValues,\n isRequired: true,\n ...settings?.hasBarrier,\n },\n {\n name: \"barrierPhone\",\n label: \"Barrier code\",\n variant: \"custom\",\n CustomInput: DependentInput,\n dependentInputName: \"hasBarrier\",\n Input: InputPhoneWithForm,\n ...settings?.barrierPhone,\n },\n {\n name: \"hasConcierge\",\n label: \"Concierge\",\n variant: \"select\",\n options: BooleanValues,\n isRequired: true,\n ...settings?.hasConcierge,\n },\n {\n name: \"conciergePhone\",\n label: \"Concierge\",\n variant: \"custom\",\n CustomInput: DependentInput,\n dependentInputName: \"hasConcierge\",\n Input: InputPhoneWithForm,\n ...settings?.conciergePhone,\n },\n {\n name: \"hasSecurity\",\n label: \"Security\",\n variant: \"select\",\n options: BooleanValues,\n isRequired: true,\n ...settings?.hasSecurity,\n },\n {\n name: \"securityPhone\",\n label: \"Security\",\n variant: \"custom\",\n CustomInput: DependentInput,\n dependentInputName: \"hasSecurity\",\n Input: InputPhoneWithForm,\n ...settings?.securityPhone,\n },\n {\n name: \"hasVideoControl\",\n label: \"Video surveillance\",\n variant: \"select\",\n options: BooleanValues,\n isRequired: true,\n ...settings?.hasVideoControl,\n },\n {\n name: \"videoControlPhone\",\n label: \"Video surveillance\",\n variant: \"custom\",\n CustomInput: DependentInput,\n dependentInputName: \"hasVideoControl\",\n Input: InputPhoneWithForm,\n ...settings?.videoControlPhone,\n },\n]\n\nexport default getHouseServicesInfoStep\n","import * as yup from \"yup\"\nimport { phoneWithConditionSchema, defaultRequiredMessage } from \"kui-crm\"\n\nexport const HouseServicesInfoFieldsSchema = {\n hasBarrier: yup.string().required(defaultRequiredMessage),\n barrierPhone: phoneWithConditionSchema(\"hasBarrier\"),\n hasConcierge: yup.string().required(defaultRequiredMessage),\n conciergePhone: phoneWithConditionSchema(\"hasConcierge\"),\n hasSecurity: yup.string().required(defaultRequiredMessage),\n securityPhone: phoneWithConditionSchema(\"hasSecurity\"),\n hasVideoControl: yup.string().required(defaultRequiredMessage),\n videoControlPhone: phoneWithConditionSchema(\"hasVideoControl\"),\n}\n\nconst HouseServicesInfoStepSchema = yup.object(HouseServicesInfoFieldsSchema)\n\nexport default HouseServicesInfoStepSchema\n","import { getNumbersValues, InputParams } from \"kui-crm\"\nimport { MetersInfoStepFields } from \"./types\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst metersOptions = getNumbersValues(7)\n\nconst getMetersInfoStepFields = (\n settings?: InspectionFieldsSettings\n): InputParams<MetersInfoStepFields>[] => [\n {\n name: \"maxMeters.water\",\n label: \"Water\",\n variant: \"select\",\n options: metersOptions,\n isRequired: true,\n ...settings?.maxMeters?.water,\n },\n {\n name: \"maxMeters.electricity\",\n label: \"Electricity\",\n variant: \"select\",\n options: metersOptions,\n isRequired: true,\n ...settings?.maxMeters?.electricity,\n },\n {\n name: \"maxMeters.gas\",\n label: \"Gas\",\n variant: \"select\",\n options: metersOptions,\n isRequired: true,\n ...settings?.maxMeters?.gas,\n },\n {\n name: \"maxMeters.heating\",\n label: \"Heating\",\n variant: \"select\",\n options: metersOptions,\n isRequired: true,\n ...settings?.maxMeters?.heating,\n },\n]\n\nexport default getMetersInfoStepFields\n","import * as yup from \"yup\"\nimport { positiveNumberSchema } from \"kui-crm\"\n\nexport const MetersInfoFieldsSchema = {\n maxMeters: yup.object({\n water: positiveNumberSchema,\n electricity: positiveNumberSchema,\n gas: positiveNumberSchema,\n heating: positiveNumberSchema,\n }),\n}\n\nconst MetersInfoStepSchema = yup.object(MetersInfoFieldsSchema)\n\nexport default MetersInfoStepSchema\n","import { TVTypesValues, InputParams } from \"kui-crm\"\nimport { TelecommunicationsInfoStepFields } from \"./types\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst getTelecommunicationsInfoStepFields = (\n settings?: InspectionFieldsSettings\n): InputParams<TelecommunicationsInfoStepFields>[] => [\n { name: \"wifi.name\", label: \"Name of network\", ...settings?.wifi?.name },\n { name: \"wifi.password\", label: \"WiFi password\", ...settings?.wifi?.password },\n {\n name: \"internetProvider.link\",\n label: \"Link to provider\",\n size: 12,\n ...settings?.internetProvider?.link,\n },\n {\n name: \"internetProvider.login\",\n label: \"Login\",\n ...settings?.internetProvider?.login,\n },\n {\n name: \"internetProvider.password\",\n label: \"Password\",\n ...settings?.internetProvider?.password,\n },\n {\n name: \"tvType\",\n label: \"Television\",\n variant: \"select\",\n options: TVTypesValues,\n ...settings?.tvType,\n },\n {\n name: \"homePhone\",\n label: \"Home phone\",\n variant: \"phone\",\n ...settings?.homePhone,\n },\n]\n\nexport default getTelecommunicationsInfoStepFields\n","import * as yup from \"yup\"\nimport { phoneNonRequiredSchema } from \"kui-crm\"\n\nexport const TelecommunicationsInfoFieldsSchema = {\n homePhone: phoneNonRequiredSchema(\"homePhone\"),\n}\n\nconst TelecommunicationsInfoStepSchema = yup\n .object()\n .shape(TelecommunicationsInfoFieldsSchema, [[\"homePhone\", \"homePhone\"]])\n\nexport default TelecommunicationsInfoStepSchema\n","import { addToArrayByCondition } from \"kui-utils\"\nimport {\n FillingTagsAutocomplete,\n InputFileWithVisibility,\n InputParams,\n FillingInfoFormFields,\n FillingTypeValues,\n ApartmentFillingVariants,\n} from \"kui-crm\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst getFillingInfoFields = (\n withType: boolean,\n type: ApartmentFillingVariants | undefined,\n setType: (fillingType: ApartmentFillingVariants) => void,\n settings?: InspectionFieldsSettings\n): InputParams<FillingInfoFormFields>[] => [\n ...addToArrayByCondition(withType, {\n label: \"Filling type\",\n name: \"type\",\n variant: \"select\",\n options: FillingTypeValues,\n handleChange: setType,\n isRequired: true,\n ...settings?.type,\n }),\n {\n label: \"Name (tag)\",\n name: \"tag\",\n type,\n variant: \"custom\",\n CustomInput: FillingTagsAutocomplete,\n isRequired: true,\n ...settings?.tag,\n },\n ...addToArrayByCondition(type !== \"finish\", {\n label: \"Model\",\n name: \"name\",\n isRequired: true,\n ...settings?.name,\n }),\n ...addToArrayByCondition(type !== \"finish\", {\n label: \"Serial code\",\n name: \"serialNumber\",\n size: 6,\n ...settings?.serialNumber,\n }),\n ...addToArrayByCondition(type !== \"finish\", {\n label: \"Amount\",\n name: \"numberOfSubjects\",\n type: \"number\",\n size: 6,\n ...settings?.numberOfSubjects,\n }),\n {\n label: \"Description\",\n name: \"description\",\n isTextArea: true,\n ...settings?.description,\n },\n ...addToArrayByCondition(type !== \"finish\", {\n label: \"Instruction\",\n name: \"instruction\",\n variant: \"custom\",\n CustomInput: InputFileWithVisibility,\n ...settings?.instruction,\n }),\n]\n\nexport default getFillingInfoFields\n","import * as yup from \"yup\"\nimport { ApartmentFillingVariants, defaultRequiredMessage } from \"kui-crm\"\n\nconst FillingInfoFieldsSchema = yup.object().shape({\n type: yup.string(),\n tag: yup.object({\n name: yup.string().required(defaultRequiredMessage),\n }),\n name: yup.string().when(\"type\", {\n is: (value: ApartmentFillingVariants) => value === \"electronics\",\n then: (rule) => rule.required(defaultRequiredMessage),\n }),\n})\n\nexport default FillingInfoFieldsSchema\n","import * as yup from \"yup\"\nimport { getMeterValuesFieldsSchema } from \"kui-crm\"\n\nconst meterFeaturesFieldsSchema = {\n number: yup.string().required(\"This field is required\"),\n}\n\nconst getMeterFeaturesFieldsSchema = (valuesFields: string[]) => {\n const valuesSchema = getMeterValuesFieldsSchema(valuesFields)\n\n return yup.object().shape({\n ...meterFeaturesFieldsSchema,\n ...Object.assign({}, ...valuesSchema),\n })\n}\n\nexport default getMeterFeaturesFieldsSchema\n","import { InputFile } from \"kui-complex\"\nimport { DateTime } from \"luxon\"\nimport {\n InputByTypeProps,\n basicFieldsOfNewResourceMeter,\n BasicMeterFeaturesFormFields,\n BasicMeterFieldsSettings,\n} from \"kui-crm\"\n\nconst getInventoryMeterFields = (\n settings: BasicMeterFieldsSettings,\n inputsSettings?: any\n): InputByTypeProps<BasicMeterFeaturesFormFields>[] => [\n ...basicFieldsOfNewResourceMeter(settings, inputsSettings),\n {\n label: \"Activation date\",\n name: \"startDate\",\n variant: \"date\",\n max: DateTime.now(),\n ...inputsSettings?.startDate,\n },\n {\n label: \"Passport\",\n name: \"passportFile\",\n variant: \"custom\",\n CustomInput: InputFile,\n ...inputsSettings?.passportFile,\n },\n]\n\nexport default getInventoryMeterFields\n","import React from \"react\"\nimport { Caption } from \"kui-basic\"\nimport styled from \"@emotion/styled\"\nimport { meterUnitLabel } from \"kui-crm\"\nimport _ from \"lodash\"\nimport { AddedMeterItemProps } from \"./types\"\n\nconst AddedMeterItem = (props: AddedMeterItemProps) => {\n const { meter, getMeterLabel } = props\n const { resource, type, number } = meter\n const { initialValue, initialValueT1, initialValueT2, initialValueT3 } = meter\n\n const meterValues = [\n initialValue,\n initialValueT1,\n initialValueT2,\n initialValueT3,\n ]\n .filter((value) => typeof value !== \"undefined\")\n .map((value) => value)\n .join(\" / \")\n\n const getDefaultMeterLabel = () =>\n _.capitalize(`${type ? `${type} ` : \"\"}${resource} meter`)\n\n const label = getMeterLabel\n ? getMeterLabel(resource!, type)\n : getDefaultMeterLabel()\n\n return (\n <Caption data-testid=\"addedMeterLine\" size=\"s\">\n • {label} #{number} -{\" \"}\n <StyledAccent>\n {meterValues} {meterUnitLabel[meter.resource!]}\n </StyledAccent>\n </Caption>\n )\n}\n\nexport default AddedMeterItem\n\nconst StyledAccent = styled.span`\n font-weight: 600;\n`\n","import React from \"react\"\nimport { BasicMeterFeaturesFormFields } from \"kui-crm\"\nimport styled from \"@emotion/styled\"\nimport { Caption, Grid, theme } from \"kui-basic\"\nimport { WarningIcon } from \"kui-icon\"\nimport { AddedMetersBlockProps } from \"./types\"\nimport AddedMeterItem from \"./AddedMeterItem\"\n\nconst AddedMetersBlock = (props: AddedMetersBlockProps) => {\n const { resource, formStore, label, getMeterLabel } = props\n const addedMeters = formStore.fields?.meters?.filter(\n (meter: BasicMeterFeaturesFormFields) => meter.resource === resource\n )\n\n if (!addedMeters?.length) return null\n\n return (\n <StyledWrapper data-testid=\"addedMetersBlock\">\n <StyledHeader container alignItems=\"center\">\n <StyledIcon />\n <Caption size=\"s\" color=\"fiftyP\">\n {label || \"In the previous steps were added:\"}\n </Caption>\n </StyledHeader>\n\n {addedMeters.map((meter: BasicMeterFeaturesFormFields) => (\n <AddedMeterItem\n key={meter.number}\n getMeterLabel={getMeterLabel}\n meter={meter}\n />\n ))}\n </StyledWrapper>\n )\n}\n\nexport default AddedMetersBlock\n\nconst StyledWrapper = styled.div`\n border-radius: 8px;\n border: 1px solid ${theme.palette.grey.fifteenB};\n padding: 12px 16px;\n background: white;\n`\n\nconst StyledIcon = styled(WarningIcon)`\n margin-right: 8px;\n width: 16px;\n height: 16px;\n path {\n fill: ${theme.palette.brand.main};\n }\n`\n\nconst StyledHeader = styled(Grid)`\n margin-bottom: 8px;\n`\n","import React, { useMemo, useState } from \"react\"\nimport { useForm } from \"react-hook-form\"\nimport { Grid } from \"kui-basic\"\nimport { yupResolver } from \"@hookform/resolvers/yup\"\nimport {\n ElectricityMeterTypes,\n FormWrapper,\n InputByType,\n WaterMeterTypes,\n BasicMeterFeaturesFormFields,\n MeterTypeRadioGroup,\n MeterFeaturesFormFields,\n} from \"kui-crm\"\nimport { InventoryMeterInfoFieldsProps } from \"./types\"\nimport getMeterFeaturesFieldsSchema from \"./schema\"\nimport getInventoryMeterFields from \"./fields\"\nimport AddedMetersBlock from \"../AddedMetersBlock\"\n\nfunction InventoryMeterInfoFields(props: InventoryMeterInfoFieldsProps) {\n const { resource, index, formStore } = props\n const defaultValues = formStore.fields?.meters?.[index]\n\n const withMeterType = resource === \"water\" || resource === \"electricity\"\n const defaultType = resource === \"water\" ? \"cold\" : \"T1\"\n const defaultMeterType = withMeterType ? defaultType : null\n const [meterType, setMeterType] = useState<\n ElectricityMeterTypes | WaterMeterTypes | null\n >(defaultValues?.type || defaultMeterType)\n\n const meterFields = getInventoryMeterFields({\n resource,\n meterType,\n })\n const valueFieldsName = meterFields\n .filter((field) => field.type === \"number\")\n .map((field) => field.name)\n const meterFeaturesFieldsSchema =\n getMeterFeaturesFieldsSchema(valueFieldsName)\n const form = useMemo(\n () =>\n useForm<BasicMeterFeaturesFormFields>({\n resolver: yupResolver(meterFeaturesFieldsSchema),\n defaultValues: { ...defaultValues },\n values: defaultValues as BasicMeterFeaturesFormFields,\n }),\n [meterFeaturesFieldsSchema]\n )\n\n const handleSubmit = (data: MeterFeaturesFormFields) => {\n formStore.replaceFieldInArray(\"meters\", { ...data, resource }, index)\n formStore.nextStep()\n }\n\n return (\n <FormWrapper\n form={form}\n onSubmit={handleSubmit as any}\n label=\"Next\"\n variant=\"next\"\n withPrevStep\n handlePrevClick={formStore.prevStep}\n >\n <Grid container spacing={2}>\n <Grid item xs={12}>\n <AddedMetersBlock formStore={formStore} resource={resource!} />\n </Grid>\n\n {withMeterType && (\n <Grid item xs={12}>\n <MeterTypeRadioGroup\n form={form}\n resource={resource}\n handleChange={setMeterType}\n />\n </Grid>\n )}\n\n {meterFields.map(({ size, ...field }) => (\n <Grid item key={field.name} xs={size || 6}>\n <InputByType form={form} {...field} />\n </Grid>\n ))}\n </Grid>\n </FormWrapper>\n )\n}\n\nexport default InventoryMeterInfoFields\nexport { default as getInventoryMeterFields } from \"./fields\"\n","import { MetersCountParams } from \"kui-crm\"\nimport React, { ReactElement } from \"react\"\nimport { MeterInfoStepProps } from \"./types\"\n\nconst renderMetersSteps = (\n MeterStep: (props: MeterInfoStepProps) => ReactElement,\n MeterPhotoStep: (props: MeterInfoStepProps) => ReactElement,\n maxMeters?: MetersCountParams | null\n) => {\n const meters = [\n ...new Array(Number(maxMeters?.water || 0)).fill(\"water\"),\n ...new Array(Number(maxMeters?.electricity || 0)).fill(\"electricity\"),\n ...new Array(Number(maxMeters?.gas || 0)).fill(\"gas\"),\n ...new Array(Number(maxMeters?.heating || 0)).fill(\"heating\"),\n ]\n return meters.map((resource, index) => [\n <MeterStep key={`meter_info_${index}`} index={index} resource={resource} />,\n <MeterPhotoStep\n key={`meter_photo_${index}`}\n index={index}\n resource={resource}\n />,\n ])\n}\n\nexport default renderMetersSteps\n","import { addToArrayByCondition } from \"kui-utils\"\nimport { InspectionTypes } from \"kui-crm\"\nimport { InspectionImageFieldsSettings, InspectionRoomsFields } from \"./types\"\n\nconst getRoomsImagesSteps = (\n type: InspectionTypes,\n settings: InspectionImageFieldsSettings,\n roomsParams?: InspectionRoomsFields | null\n) => [\n { type: \"kitchen\", ...settings.kitchen },\n ...new Array(Number(roomsParams?.bedroomsNumber || 0))\n .fill(0)\n .map((_, index) => ({\n type: \"bedroom\",\n ...settings.bedroom(roomsParams?.bedroomsNumber ? `${index + 1} ` : \"\"),\n })),\n ...new Array(\n Math.max(\n Number(roomsParams?.roomsNumber || 0) -\n Number(roomsParams?.bedroomsNumber || 0),\n 0\n )\n )\n .fill(0)\n .map((_, index) => ({\n type: \"room\",\n ...settings.room(\n roomsParams?.roomsNumber\n ? `${index + 1 + (roomsParams?.bedroomsNumber || 0)} `\n : \"\"\n ),\n })),\n ...new Array(Number(roomsParams?.bathroomsNumber || 0))\n .fill(0)\n .map((_, index) => ({\n type: \"bathroom\",\n ...settings.bathroom(roomsParams?.bathroomsNumber ? `${index + 1} ` : \"\"),\n })),\n ...new Array(Number(roomsParams?.restroomsNumber || 0))\n .fill(0)\n .map((_, index) => ({\n type: \"toilet\",\n ...settings.toilet(roomsParams?.restroomsNumber ? `${index + 1} ` : \"\"),\n })),\n ...new Array(Number(roomsParams?.combinedBathroomsNumber || 0))\n .fill(0)\n .map((_, index) => ({\n type: \"combined_bathroom\",\n ...settings.combinedBathroom(\n roomsParams?.combinedBathroomsNumber ? `${index + 1} ` : \"\"\n ),\n })),\n { type: \"others\", ...settings.others },\n ...addToArrayByCondition(type === \"initial\", {\n type: \"entrance\",\n ...settings.entrance,\n }),\n ...addToArrayByCondition(type !== \"initial\", {\n type: \"keys\",\n ...settings.keys,\n }),\n ...addToArrayByCondition(!!(type === \"initial\" && roomsParams?.parkingType), {\n type: \"parking\",\n ...settings.parking,\n }),\n { type: \"additional\", ...settings.additional },\n]\n\nexport default getRoomsImagesSteps\n","import React from \"react\"\nimport { Caption, Grid, theme } from \"kui-basic\"\nimport { Tooltip } from \"kui-crm\"\nimport styled from \"@emotion/styled\"\nimport { CancelIcon, CheckIcon, CommentIcon } from \"kui-icon\"\nimport { InspectionFeedbackBilletProps } from \"./types\"\nimport { FeedbackStylesProps } from \"../InspectionFeedbackStatus/types\"\n\nconst InspectionFeedbackBillet = (props: InspectionFeedbackBilletProps) => {\n const { feedback, label } = props\n\n return (\n <StyledWrapper status={feedback.status}>\n <Grid container alignItems=\"center\">\n <Caption size=\"s\" weight={500} color=\"fiftyP\">\n {label}\n </Caption>\n\n {feedback.status !== \"notSigned\" && (\n <StyledIconWrapper>\n {feedback.status === \"signed\" ? (\n <StyledCheckIcon />\n ) : (\n <StyledErrorIcon />\n )}\n {!!feedback.comment && (\n <Tooltip\n placement=\"bottom\"\n content={\n <div>\n <Caption size=\"xs\" color=\"fiftyP\">\n Comment\n </Caption>\n <StyledComment size=\"xs\">{feedback.comment}</StyledComment>\n </div>\n }\n >\n <StyledCommentIcon />\n </Tooltip>\n )}\n </StyledIconWrapper>\n )}\n </Grid>\n </StyledWrapper>\n )\n}\n\nexport default InspectionFeedbackBillet\n\nconst StyledWrapper = styled.div<FeedbackStylesProps>`\n background: ${({ status }) =>\n status === \"notSigned\"\n ? theme.palette.background.light1\n : theme.palette.grey.zero};\n border-radius: 66px;\n border: 1px solid ${theme.palette.grey.fifteenB};\n padding: 6px 16px;\n width: fit-content;\n @media (max-width: ${theme.breakpoints.sm}px) {\n width: 100%;\n > div {\n justify-content: center;\n }\n }\n`\n\nconst StyledIconWrapper = styled.div`\n display: flex;\n align-items: center;\n margin-left: 8px;\n > div {\n margin-left: 8px;\n }\n`\n\nconst StyledCheckIcon = styled(CheckIcon)`\n path {\n fill: ${theme.palette.green.fiftyP};\n }\n`\n\nconst StyledErrorIcon = styled(CancelIcon)`\n width: 12px;\n height: 12px;\n path {\n fill: ${theme.palette.red.fiftyP};\n }\n`\n\nconst StyledComment = styled(Caption)`\n margin-top: 8px;\n`\n\nconst StyledCommentIcon = styled(CommentIcon)`\n width: 13px;\n cursor: pointer;\n path {\n fill: ${theme.palette.grey.zero};\n stroke: ${theme.palette.grey.thirty};\n }\n`\n","import React from \"react\"\nimport styled from \"@emotion/styled\"\nimport { Button, Grid, theme } from \"kui-basic\"\nimport { UpdateIcon } from \"kui-icon\"\nimport { observer } from \"mobx-react\"\nimport { InspectionFeedbackStatusProps } from \"./types\"\nimport InspectionFeedbackBillet from \"../InspectionFeedbackBillet\"\n\nconst InspectionFeedbackStatus = (props: InspectionFeedbackStatusProps) => {\n const { feedback, label, resendLabel, resend } = props\n\n if (!feedback) return null\n\n return (\n <Grid item>\n <Grid container alignItems=\"center\">\n <InspectionFeedbackBillet feedback={feedback} label={label} />\n {feedback.status === \"rejected\" && (\n <StyledButton\n size=\"xs\"\n variant=\"orange\"\n onClick={resend}\n endIcon={<UpdateIcon />}\n >\n {resendLabel}\n </StyledButton>\n )}\n </Grid>\n </Grid>\n )\n}\n\nexport default observer(InspectionFeedbackStatus)\n\nconst StyledButton = styled(Button)`\n margin-left: 16px;\n @media (max-width: ${theme.breakpoints.sm}px) {\n width: 100%;\n margin-left: 0;\n margin-top: 8px;\n }\n`\n","import React from \"react\"\nimport { Grid } from \"kui-basic\"\nimport { observer } from \"mobx-react\"\nimport styled from \"@emotion/styled\"\nimport InspectionFeedbackStatus from \"./InspectionFeedbackStatus\"\nimport { InspectionFeedbackProps } from \"./types\"\n\nconst InspectionFeedback = (props: InspectionFeedbackProps) => {\n const { tenantFeedback, landlordFeedback, resignInspection, resendLabel } =\n props\n const { tenantLabel, landlordLabel } = props\n\n if (!tenantFeedback && !landlordFeedback) return null\n\n return (\n <StyledWrapper container spacing={2} alignItems=\"center\">\n <InspectionFeedbackStatus\n resend={resignInspection}\n resendLabel={resendLabel}\n feedback={tenantFeedback}\n label={tenantLabel}\n />\n <InspectionFeedbackStatus\n resend={resignInspection}\n resendLabel={resendLabel}\n feedback={landlordFeedback}\n label={landlordLabel}\n />\n </StyledWrapper>\n )\n}\n\nexport default observer(InspectionFeedback)\n\nconst StyledWrapper = styled(Grid)`\n padding-top: 8px;\n`\n","import React from \"react\"\nimport { Caption, Grid, theme } from \"kui-basic\"\nimport { Tooltip } from \"kui-crm\"\nimport { WarningIcon } from \"kui-icon\"\nimport styled from \"@emotion/styled\"\nimport { FillingCardContentProps } from \"./types\"\n\nconst FillingCardContent = (props: FillingCardContentProps) => {\n const { filling, warningLabel } = props\n return (\n <Grid container alignItems=\"center\">\n {filling.wasMissing && (\n <Tooltip content={<Caption size=\"xs\">{warningLabel}</Caption>}>\n <StyledWarningIcon width={17} height={17} />\n </Tooltip>\n )}\n <StyledLabelWrapper>\n <Caption size=\"s\">\n {filling.tagName} {filling.name ? ` | ${filling.name}` : \"\"}\n </Caption>\n {!!(filling.numberOfSubjects || filling.serialNumber) && (\n <StyledSubtitle size=\"xs\" color=\"fiftyP\">\n {filling.numberOfSubjects\n ? `${filling.numberOfSubjects} pieces`\n : \"\"}\n {filling.numberOfSubjects && filling.serialNumber ? ` • ` : \"\"}\n {filling.serialNumber}\n </StyledSubtitle>\n )}\n </StyledLabelWrapper>\n </Grid>\n )\n}\n\nexport default FillingCardContent\n\nconst StyledWarningIcon = styled(WarningIcon)`\n margin-left: 4px;\n path {\n fill: ${theme.palette.red.fiftyP};\n }\n`\n\nconst StyledLabelWrapper = styled.div`\n margin-left: 8px;\n`\n\nconst StyledSubtitle = styled(Caption)`\n margin-top: 4px;\n`\n","import React from \"react\"\nimport styled from \"@emotion/styled\"\nimport { Grid } from \"kui-basic\"\nimport { CheckboxWithController } from \"kui-complex\"\nimport { InspectionFillingCardProps } from \"./types\"\nimport FillingCardContent from \"./FillingCardContent\"\n\nconst InspectionFillingCard = (props: InspectionFillingCardProps) => {\n const { className, form, index, disabled, ...other } = props\n\n return (\n <StyledCard className={className}>\n <StyledCheckbox\n // @ts-ignore\n form={form}\n name={`fillingList.${index}.check`}\n label={<FillingCardContent {...other} />}\n disabled={disabled}\n />\n </StyledCard>\n )\n}\n\nexport default InspectionFillingCard\n\nexport type {\n InspectionFillingCardProps,\n InspectionFillingItemFields,\n InspectionFillingListFields,\n} from \"./types\"\n\nconst StyledCard = styled(Grid)`\n padding: 8px 16px;\n border-radius: 12px;\n background: white;\n`\n\nconst StyledCheckbox = styled(CheckboxWithController)`\n .KUI-Label_checkbox {\n margin-left: 0;\n }\n`\n","import { useEffect } from \"react\"\nimport { MultistepForm } from \"kui-utils\"\nimport { ApartmentMetersStoreInterface } from \"./types\"\n\nconst useMetersValues = (\n formStore: MultistepForm<any>,\n metersStore: ApartmentMetersStoreInterface,\n shouldBeLoad?: boolean,\n onLoad?: () => void\n) => {\n const finishLoad = () => {\n if (onLoad) onLoad()\n metersStore.loader.endLoading()\n }\n\n const loadMeters = async () => {\n if (shouldBeLoad) {\n if (!formStore.fields?.meters?.length) {\n await metersStore.fetchMeters()\n }\n finishLoad()\n } else if (shouldBeLoad === false) finishLoad()\n }\n\n useEffect(() => {\n loadMeters()\n }, [shouldBeLoad])\n\n useEffect(() => {\n if (!metersStore.loader.isLoading && !formStore.fields?.meters?.length) {\n formStore.updateFormFields({ meters: metersStore.meters })\n }\n }, [metersStore.meters, metersStore.loader.isLoading])\n}\n\nexport default useMetersValues\n","import { makeAutoObservable } from \"mobx\"\nimport { Loader, resHandler } from \"kui-utils\"\nimport to from \"await-to-js\"\nimport { FillingListItemModel, ApartmentsAgent, FillingTypes } from \"kui-crm\"\nimport { FillingCheckParams } from \"../types\"\n\nclass FillingListStore {\n fillingList: FillingCheckParams[]\n\n loader: Loader\n\n constructor() {\n this.fillingList = []\n this.loader = new Loader()\n makeAutoObservable(this)\n }\n\n fetchFillingList = async (\n apartmentId: number,\n fillingType?: FillingTypes\n ) => {\n this.loader.startLoading()\n\n const response = await to<FillingListItemModel[]>(\n ApartmentsAgent.getFillingList(apartmentId, fillingType)\n )\n\n resHandler(response, this.loader, this.updateFillingList)\n }\n\n updateFillingList = (fillingList: FillingListItemModel[]) => {\n this.fillingList =\n fillingList?.map((filling) => ({\n id: filling.id,\n name: filling.description,\n tagName: filling.feature_name,\n serialNumber: filling.serial_code,\n numberOfSubjects: filling.amount,\n wasMissing: filling.is_absent,\n })) || []\n }\n}\n\nexport default FillingListStore\n","import { useEffect } from \"react\"\nimport { MultistepForm } from \"kui-utils\"\nimport FillingListStore from \"../../store/FillingListStore\"\n\nconst useFillingList = (\n apartmentId: number | null,\n formStore: MultistepForm<any>,\n fillingStore: FillingListStore,\n shouldBeLoad?: boolean,\n onLoad?: () => void\n) => {\n const finishLoad = () => {\n if (onLoad) onLoad()\n fillingStore.loader.endLoading()\n }\n\n const loadFillingList = async () => {\n if (shouldBeLoad && apartmentId) {\n if (!formStore.fields?.fillingList?.length) {\n await fillingStore.fetchFillingList(apartmentId, \"appliance\")\n }\n finishLoad()\n } else if (shouldBeLoad === false) finishLoad()\n }\n\n useEffect(() => {\n loadFillingList()\n }, [apartmentId, shouldBeLoad])\n\n useEffect(() => {\n if (\n !fillingStore.loader.isLoading &&\n !formStore.fields?.fillingList?.length\n ) {\n formStore.updateFormFields({\n fillingList: fillingStore.fillingList.map((filling) => ({\n ...filling,\n check: false,\n })),\n })\n }\n }, [fillingStore.fillingList, fillingStore.loader.isLoading])\n}\n\nexport default useFillingList\n","import { clearIndexStores } from \"kui-utils\"\nimport {\n ApartmentLiteStoreInterface,\n InspectionFieldsIndexDBConstants,\n} from \"../types/common\"\n\nexport const onInspectionModalOpen = (\n apartmentStore: ApartmentLiteStoreInterface,\n constants: InspectionFieldsIndexDBConstants,\n openModal?: () => void\n) => {\n const { inspectionsStore, apartmentId } = apartmentStore\n const { formStateName, formFieldsName } = constants\n\n const { fields } = inspectionsStore.creationForm\n if (fields && fields.apartmentId !== apartmentId) {\n clearIndexStores(inspectionsStore.indexDB, [formStateName, formFieldsName])\n }\n inspectionsStore.setCanUpdateDB(true)\n if (openModal) openModal()\n}\n\nexport const onInspectionModalClose = (\n apartmentStore: ApartmentLiteStoreInterface,\n constants: InspectionFieldsIndexDBConstants,\n closeModal?: () => void\n) => {\n const { inspectionsStore } = apartmentStore\n const { formStateName, formFieldsName } = constants\n\n inspectionsStore.setCanUpdateDB(false)\n inspectionsStore.creationForm.resetForm()\n clearIndexStores(inspectionsStore.indexDB, [formStateName, formFieldsName])\n if (closeModal) closeModal()\n}\n","import { useEffect, useState } from \"react\"\nimport useMetersValues from \"../common/InspectionMetersStep/useMetersValues\"\nimport useFillingList from \"../common/InspectionFillingCard/useFillingList\"\nimport { ApartmentLiteStoreInterface } from \"../types/common\"\n\nconst useInspectionData = (apartmentStore: ApartmentLiteStoreInterface) => {\n const { apartmentId, inspectionsStore, metersStore, fillingStore } =\n apartmentStore\n const [isMetersLoaded, setIsMetersLoader] = useState(false)\n const [isFillingLoaded, setIsFillingLoaded] = useState(false)\n const formStore = inspectionsStore.creationForm\n const inspectionType = formStore.fields?.type\n const canBeLoad = inspectionType\n ? inspectionType === \"regular\" || inspectionType === \"transfer\"\n : undefined\n const fillingLoading = fillingStore.loader.isLoading\n const metersLoading = metersStore.loader.isLoading\n\n const handleMetersLoad = () => setIsMetersLoader(true)\n\n const handleFillingLoad = () => setIsFillingLoaded(true)\n\n useEffect(() => {\n if (\n isMetersLoaded &&\n isFillingLoaded &&\n !fillingLoading &&\n !metersLoading\n ) {\n inspectionsStore.setCanLoadDB(true)\n }\n }, [isMetersLoaded, isFillingLoaded, fillingLoading, metersLoading])\n\n useMetersValues(formStore, metersStore, canBeLoad, handleMetersLoad)\n\n useFillingList(\n apartmentId || null,\n formStore,\n fillingStore,\n canBeLoad,\n handleFillingLoad\n )\n}\n\nexport default useInspectionData\n","import { useEffect } from \"react\"\nimport { DateTime } from \"luxon\"\nimport {\n addIndexDBStore,\n addToIndexDBWithQueue,\n clearIndexStores,\n initIndexDB,\n readFromIndexDB,\n} from \"kui-utils\"\nimport {\n ApartmentLiteStoreInterface,\n InspectionIndexDBConstants,\n} from \"../types/common\"\n\nconst EXPIRATION_TIME = 24 * 60 * 60 * 1000 // 24 часа\n\nconst useInspectionIndexDB = (\n constants: InspectionIndexDBConstants,\n apartmentStore: ApartmentLiteStoreInterface,\n openModal?: () => void\n) => {\n const {\n dbCreationTime,\n formFieldsName,\n formStateName,\n inspectionCreationFormName,\n } = constants\n const { inspectionsStore, apartmentId } = apartmentStore\n const { creationForm, actionLoader, indexDB, setCanUpdateDB, canUpdateDB } =\n inspectionsStore\n\n const dbName = inspectionCreationFormName\n\n const onupgradeneeded = (db: any) => {\n addIndexDBStore(db, formFieldsName)\n addIndexDBStore(db, formStateName)\n }\n\n function checkAndDeleteDB() {\n const creationTime = localStorage.getItem(dbCreationTime)\n const currentTime = Date.now()\n\n if (creationTime && currentTime - Number(creationTime) > EXPIRATION_TIME) {\n clearIndexStores(inspectionsStore.indexDB, [\n formStateName,\n formFieldsName,\n ])\n localStorage.removeItem(dbCreationTime)\n }\n }\n\n const initInspectionIndexDB = async () => {\n initIndexDB(dbName, onupgradeneeded, actionLoader, async (db) => {\n inspectionsStore.setIndexDB(db)\n\n setCanUpdateDB(false)\n\n checkAndDeleteDB()\n\n const formFields = await readFromIndexDB(db, formFieldsName, actionLoader)\n\n if (formFields) {\n if (formFields?.apartmentId === apartmentId) {\n creationForm.updateFormFields({\n ...formFields,\n date: formFields.date ? DateTime.fromISO(formFields.date) : null,\n })\n\n if (openModal) openModal()\n }\n } else {\n setCanUpdateDB(true)\n }\n })\n }\n\n const initFormState = async () => {\n const formState = await readFromIndexDB(\n indexDB,\n formStateName,\n actionLoader\n )\n const formFields = await readFromIndexDB(\n indexDB,\n formFieldsName,\n actionLoader\n )\n\n if (formState && formFields?.apartmentId === apartmentId) {\n creationForm.setStep(Number(formState.step))\n }\n\n setCanUpdateDB(true)\n }\n\n useEffect(() => {\n if (apartmentId) initInspectionIndexDB()\n }, [apartmentId])\n\n useEffect(() => {\n if (inspectionsStore.canLoadDB && indexDB) {\n initFormState()\n }\n }, [inspectionsStore.canLoadDB, indexDB])\n\n useEffect(() => {\n if (canUpdateDB) {\n const formState = {\n step: creationForm.step,\n }\n\n addToIndexDBWithQueue(indexDB, formStateName, formState, actionLoader)\n\n addToIndexDBWithQueue(\n indexDB,\n formFieldsName,\n creationForm.fields,\n actionLoader\n )\n\n if (!localStorage.getItem(dbCreationTime)) {\n localStorage.setItem(dbCreationTime, Date.now().toString())\n }\n }\n }, [creationForm.step])\n}\n\nexport default useInspectionIndexDB\n","import React from \"react\"\nimport { Button } from \"kui-basic\"\nimport { ApartmentPointProps } from \"./types\"\n\nconst ObjectForMapPoint = (props: ApartmentPointProps) => {\n const { label, onClick, isActive } = props\n\n return (\n <Button\n size=\"xs\"\n variant={isActive ? \"primary\" : \"white\"}\n onClick={onClick}\n >\n {label}\n </Button>\n )\n}\n\nexport default ObjectForMapPoint\n","import React from \"react\"\r\nimport { Caption, Grid } from \"kui-basic\"\r\nimport styled from \"@emotion/styled\"\r\nimport { MetroStationProps } from \"./types\"\r\n\r\nconst MetroStation = (props: MetroStationProps) => {\r\n const { metroStation } = props\r\n const { color, name } = metroStation\r\n\r\n return (\r\n <StyledWrapper item container alignItems=\"center\">\r\n <StyledPoint style={{ background: color }} />\r\n <Caption size=\"s\" color=\"sixty\">\r\n {name}\r\n </Caption>\r\n </StyledWrapper>\r\n )\r\n}\r\n\r\nexport default MetroStation\r\n\r\nconst StyledWrapper = styled(Grid)`\r\n width: auto;\r\n`\r\n\r\nconst StyledPoint = styled.div`\r\n width: 6px;\r\n height: 6px;\r\n border-radius: 50%;\r\n margin-right: 6px;\r\n`\r\n","import React from \"react\"\nimport { Caption, Grid, theme } from \"kui-basic\"\nimport styled from \"@emotion/styled\"\nimport { PhoneIcon } from \"kui-icon\"\nimport { getPhoneNumberFromPhoneParams } from \"kui-utils\"\nimport { ContactPhoneProps } from \"./types\"\n\nconst ContactPhone = (props: ContactPhoneProps) => {\n const { phone } = props\n const formattedPhone = getPhoneNumberFromPhoneParams(phone, \" \")\n const phoneLink = formattedPhone.replace(/\\d/g, \"\")\n\n return (\n <StyledWrapper container alignItems=\"center\" wrap=\"nowrap\">\n <StyledPhoneIcon width={14} height={14} />\n <a href={`tel:+${phoneLink}`}>\n <Caption size=\"s\" weight={500} color=\"sixty\">\n {formattedPhone}\n </Caption>\n </a>\n </StyledWrapper>\n )\n}\n\nexport default ContactPhone\n\nconst StyledWrapper = styled(Grid)`\n width: auto;\n`\n\nconst StyledPhoneIcon = styled(PhoneIcon)`\n margin-right: 6px;\n transform: rotate(15deg);\n path {\n stroke: ${theme.palette.grey.sixty};\n }\n`\n","import React from \"react\"\nimport styled from \"@emotion/styled\"\nimport { Button, Grid, theme } from \"kui-basic\"\nimport { CloseIcon } from \"kui-icon\"\nimport { Link, PreviewContent, UserBadge } from \"kui-crm\"\nimport { ApartmentCardProps } from \"./types\"\nimport MetroStation from \"../MetroStation\"\nimport ContactPhone from \"../ContactPhone\"\n\nconst ObjectForMapCard = (props: ApartmentCardProps) => {\n const { inspection, onClose, getClientLink, getInspectionLink } = props\n const { apartment, tenant, landlord, metroStations } = inspection\n const client = tenant || landlord\n const clientLink = getClientLink && client ? getClientLink(client?.id) : \"\"\n const apartmentLink = getInspectionLink(apartment.id, inspection.id)\n\n return (\n <StyledCard>\n <Link href={apartmentLink}>\n <StyledPreviewContent\n imageSrc={apartment.previewImage}\n description={apartment.address}\n />\n </Link>\n <Grid container spacing={2} alignItems=\"center\">\n {metroStations.map((station) => (\n <MetroStation key={station.name} metroStation={station} />\n ))}\n </Grid>\n\n {!!client && (\n <StyledTenantInfo container alignItems=\"center\" justify=\"space-between\">\n {clientLink ? (\n <StyledClientLink href={clientLink}>\n <UserBadge weight={500} user={client} />\n </StyledClientLink>\n ) : (\n <UserBadge weight={500} user={client} />\n )}\n {!!client?.phoneNumber && (\n <ContactPhone phone={client?.phoneNumber} />\n )}\n </StyledTenantInfo>\n )}\n\n <StyledCloseButton\n isCircle\n size=\"xs\"\n variant=\"whiteWithGray\"\n onClick={onClose}\n >\n <CloseIcon width={6} height={6} />\n </StyledCloseButton>\n </StyledCard>\n )\n}\n\nexport default ObjectForMapCard\n\nconst StyledCard = styled.div`\n width: 330px;\n background: ${theme.palette.grey.zero};\n border-radius: 8px;\n padding: 8px;\n position: absolute;\n bottom: 46px;\n left: -115px;\n z-index: 1;\n`\n\nconst StyledPreviewContent = styled(PreviewContent)`\n margin-bottom: 8px;\n p {\n font-size: 16px;\n line-height: 24px;\n font-weight: 600;\n }\n`\n\nconst StyledTenantInfo = styled(Grid)`\n padding-top: 8px;\n border-top: 1px solid ${theme.palette.grey.fifteenB};\n margin-top: 8px;\n`\n\nconst StyledCloseButton = styled(Button)`\n position: absolute;\n top: -10px;\n right: -10px;\n width: 24px;\n height: 24px;\n`\n\nconst StyledClientLink = styled(Link)`\n max-width: calc(100% - 140px);\n`\n","import React from \"react\"\nimport styled from \"@emotion/styled\"\nimport { MapOverlay, useMapCards } from \"kui-crm\"\nimport ObjectForMapPoint from \"../ObjectForMapPoint\"\nimport { ApartmentOverlayProps } from \"./types\"\nimport ObjectForMapCard from \"../ObjectForMapCard\"\n\nconst ObjectForMapOverlay = (props: ApartmentOverlayProps) => {\n const { inspection, map, label, ...other } = props\n const { ref, isOpen, closeCard, toggleCard } = useMapCards(\n inspection.location!,\n map\n )\n\n return (\n <MapOverlay map={map} position={inspection.location!}>\n <StyledWrapper ref={ref}>\n <ObjectForMapPoint\n label={label}\n isActive={isOpen}\n onClick={toggleCard}\n />\n {isOpen && (\n <ObjectForMapCard\n inspection={inspection}\n onClose={closeCard}\n {...other}\n />\n )}\n </StyledWrapper>\n </MapOverlay>\n )\n}\n\nexport default ObjectForMapOverlay\n\nconst StyledWrapper = styled.div`\n position: relative;\n`\n"],"names":["_jsxs","templateObject_1","StyledWrapper","_jsx","templateObject_3","templateObject_2","templateObject_5","InspectionFeedbackStatus","StyledCard"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAiBA;AACO,IAAI,QAAQ,GAAG,WAAW;AACjC,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,QAAQ,CAAC,CAAC,EAAE;AACrD,QAAQ,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;AAC7D,YAAY,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAC7B,YAAY,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACzF,SAAS;AACT,QAAQ,OAAO,CAAC,CAAC;AACjB,MAAK;AACL,IAAI,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AAC3C,EAAC;AACD;AACO,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE;AAC7B,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;AACf,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;AACvF,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACpB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;AACvE,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAChF,YAAY,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1F,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClC,SAAS;AACT,IAAI,OAAO,CAAC,CAAC;AACb,CAAC;AAgBD;AACO,SAAS,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE;AAC7D,IAAI,SAAS,KAAK,CAAC,KAAK,EAAE,EAAE,OAAO,KAAK,YAAY,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,UAAU,OAAO,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;AAChH,IAAI,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,OAAO,EAAE,MAAM,EAAE;AAC/D,QAAQ,SAAS,SAAS,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;AACnG,QAAQ,SAAS,QAAQ,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;AACtG,QAAQ,SAAS,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,EAAE;AACtH,QAAQ,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9E,KAAK,CAAC,CAAC;AACP,CAAC;AACD;AACO,SAAS,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE;AAC3C,IAAI,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACrH,IAAI,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,WAAW,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAC7J,IAAI,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,OAAO,UAAU,CAAC,EAAE,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;AACtE,IAAI,SAAS,IAAI,CAAC,EAAE,EAAE;AACtB,QAAQ,IAAI,CAAC,EAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;AACtE,QAAQ,OAAO,CAAC,EAAE,IAAI;AACtB,YAAY,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AACzK,YAAY,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AACpD,YAAY,QAAQ,EAAE,CAAC,CAAC,CAAC;AACzB,gBAAgB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM;AAC9C,gBAAgB,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACxE,gBAAgB,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;AACjE,gBAAgB,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS;AACjE,gBAAgB;AAChB,oBAAoB,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE;AAChI,oBAAoB,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE;AAC1G,oBAAoB,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;AACzF,oBAAoB,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE;AACvF,oBAAoB,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;AAC1C,oBAAoB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS;AAC3C,aAAa;AACb,YAAY,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;AACvC,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;AAClE,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACzF,KAAK;AACL,CAAC;AA8DD;AACO,SAAS,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;AAC9C,IAAI,IAAI,IAAI,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;AACzF,QAAQ,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE;AAChC,YAAY,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACjE,YAAY,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AAC5B,SAAS;AACT,KAAK;AACL,IAAI,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7D,CAAC;AA+BD;AACO,SAAS,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE;AAClD,IAAI,IAAI,MAAM,CAAC,cAAc,EAAE,EAAE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE;AACnH,IAAI,OAAO,MAAM,CAAC;AAClB;;AChNM,IAAA,yBAAyB,GAAG,UAAC,YAAgC,EAAA;IACjE,IAAM,cAAc,GAAG,YAAY;AAChC,SAAA,MAAM,CAAC,UAAC,KAAK,EAAA,EAAK,OAAA,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAvB,EAAuB,CAAC;SAC1C,GAAG,CAAC,UAAC,KAAK,EAAK,EAAA,OAAA,KAAK,CAAC,IAAI,CAAA,EAAA,CAAC,CAAA;AAC7B,IAAA,IAAM,YAAY,GAAG,cAAc,CAAC,GAAG,CAAC,UAAC,KAAK,EAAA;;QAAK,QAAA,EAAA,GAAA,EAAA;YACjD,EAAC,CAAA,KAAK,IAAG,GAAG;AACT,iBAAA,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,QAAQ,CAAC,wBAAwB,CAAC;iBAClC,SAAS,CAAC,UAAC,KAAK,EAAA,EAAK,QAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,SAAS,GAAG,KAAK,EAAxC,EAAyC,CAAC;AAClE,YAAA,EAAA,EAAA;AANiD,KAMjD,CAAC,CAAA;AAEH,IAAA,OAAO,GAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAA,QAAA,CAAA,EACvB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAA,EAC3D,MAAM,CAAC,MAAM,CAAb,KAAA,CAAA,MAAM,EAAQ,aAAA,CAAA,CAAA,EAAE,CAAK,EAAA,YAAY,WACpC,CAAA;AACJ,EAAC;AAEY,IAAA,sBAAsB,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC;AACvD,IAAA,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;AAC9D,IAAA,KAAK,EAAE,GAAG;AACP,SAAA,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,wBAAwB,CAAC;SAClC,SAAS,CAAC,UAAC,KAAK,EAAA,EAAK,QAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,SAAS,GAAG,KAAK,EAAxC,EAAyC,CAAC;AACnE,CAAA;;ACxBM,IAAM,mBAAmB,GAAG,UACjC,MAAgC,EAChC,KAA8B,EAC9B,cAAwB,EACxB,IAAa,EACb,QAAc,EAAA;;AAEd,IAAA,IAAM,UAAU,GAAG,IAAI,GAAG,EAAG,CAAA,MAAA,CAAA,IAAI,EAAG,GAAA,CAAA,GAAG,EAAE,CAAA;AACzC,IAAA,IAAM,YAAY,GAAG,MAAM,CAAC,MAAM;UAC9B,MAAM,CAAC,GAAG,CAAC,UAAC,WAAW,EAAK,EAAA,QAAC;YAC3B,KAAK,EAAE,WAAW,CAAC,MAAM;AACzB,YAAA,KAAK,EAAE,EAAG,CAAA,MAAA,CAAA,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,IAAI,EAAE,CAAC,EAAA,MAAA,CAAA,CAAA,MAAA,CAC5C,WAAW,CAAC,MAAM,CAClB;SACH,EAAC,EAAA,CAAC;AACL,UAAE;AACE,YAAA;AACE,gBAAA,KAAK,EAAE,KAAK,KAAA,IAAA,IAAL,KAAK,KAAL,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,KAAK,CAAE,MAAM;gBACpB,KAAK,EAAE,EAAG,CAAA,MAAA,CAAA,CAAC,CAAC,UAAU,CAAC,CAAA,KAAK,KAAL,IAAA,IAAA,KAAK,KAAL,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,KAAK,CAAE,IAAI,KAAI,EAAE,CAAC,EAAO,MAAA,CAAA,CAAA,MAAA,CAAA,KAAK,KAAL,IAAA,IAAA,KAAK,KAAL,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,KAAK,CAAE,MAAM,CAAE;AAChE,aAAA;SACF,CAAA;IAEL,OAAO;AAEH,QAAA,QAAA,CAAA,EAAA,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,UAAG,UAAU,EAAA,QAAA,CAAQ,EAC3B,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,YAAY,EACrB,IAAI,EAAE,EAAE,EACR,UAAU,EAAE,IAAI,EAChB,QAAQ,EAAE,YAAY,CAAC,MAAM,KAAK,CAAC,IAChC,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,KAAK,CAAA;AAGlB,QAAA,QAAA,CAAA,EAAA,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,UAAG,UAAU,EAAA,OAAA,CAAO,EAC1B,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,CAAC,EACjB,cAAc,EAAE,CAAC,EACjB,QAAQ,EACN,CAAA,CAAA,EAAA,GAAA,KAAK,KAAL,IAAA,IAAA,KAAK,uBAAL,KAAK,CAAE,QAAQ,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAK,KAAI,cAAc;kBACpC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;AAC9B,kBAAE,IAAI,EACV,cAAc,EACZ,mEAAmE,EACrE,WAAW,EAAE,CAAA,EAAA,GAAA,KAAK,KAAA,IAAA,IAAL,KAAK,KAAL,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,KAAK,CAAE,MAAM,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAK,EACjC,UAAU,EAAE,IAAI,EACb,EAAA,QAAQ,KAAR,IAAA,IAAA,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,KAAK,CAAA;KAErB,CAAA;AACH;;AC9BA,IAAM,sBAAsB,GAAG;AAC7B,IAAA,4BAA4B,EAA5B,UACE,UAAuC,EACvC,WAAyC,EAAA;QAEzC,OAAO;AACL,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,IAAI,QAAQ,CAAC,GAAG,EAAE,EAAE,SAAS,EAAG;AACtD,YAAA,eAAe,EAAE,SAAS;YAC1B,YAAY,EAAE,UAAU,CAAC,WAAW;AACpC,YAAA,YAAY,EAAE,WAAW;AACzB,YAAA,OAAO,EAAE,IAAI,CAAC,0BAA0B,CAAC,UAAU,CAAC;SACrD,CAAA;KACF;IACD,0BAA0B,EAA1B,UACE,UAAuC,EAAA;;QAEvC,OAAO;AACL,YAAA,IAAI,EAAE,UAAU,CAAC,IAAK,CAAC,EAAE;AACzB,YAAA,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,OAAO;AACrC,YAAA,gBAAgB,EAAE,UAAU,CAAC,eAAe,IAAI,EAAE;YAClD,UAAU,EAAE,UAAU,CAAC,OAAO;YAC9B,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,WAAW,EAAE,UAAU,CAAC,UAAW;YACnC,SAAS,EAAE,UAAU,CAAC,YAAY;YAClC,YAAY,EAAE,UAAU,CAAC,QAAQ;YACjC,YAAY,EAAE,UAAU,CAAC,WAAW;YACpC,aAAa,EAAE,UAAU,CAAC,YAAY;YACtC,QAAQ,EAAE,UAAU,CAAC,OAAO;YAC5B,SAAS,EAAE,UAAU,CAAC,QAAQ;YAC9B,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,YAAY,EAAE,UAAU,CAAC,WAAW;YACpC,eAAe,EAAE,UAAU,CAAC,cAAc;YAC1C,gBAAgB,EAAE,UAAU,CAAC,eAAe;YAC5C,gBAAgB,EAAE,UAAU,CAAC,eAAe;YAC5C,yBAAyB,EAAE,UAAU,CAAC,uBAAuB;YAC7D,iBAAiB,EAAE,UAAU,CAAC,eAAe;AAC7C,YAAA,eAAe,EAAE,CAAA,EAAA,GAAA,UAAU,CAAC,UAAU,0CAAE,IAAI;AAC5C,YAAA,eAAe,EAAE,CAAA,EAAA,GAAA,UAAU,CAAC,UAAU,0CAAE,IAAI;AAC5C,YAAA,gBAAgB,EAAE,CAAA,EAAA,GAAA,UAAU,CAAC,UAAU,0CAAE,KAAK;YAC9C,SAAS,EAAE,UAAU,CAAC,YAAY;YAClC,YAAY,EAAE,UAAU,CAAC,WAAW;YACpC,0BAA0B,EAAE,UAAU,CAAC,uBAAuB;YAC9D,wBAAwB,EAAE,UAAU,CAAC,qBAAqB;YAC1D,cAAc,EAAE,UAAU,CAAC,aAAa;YACxC,aAAa,EAAE,UAAU,CAAC,YAAY;YACtC,aAAa,EAAE,UAAU,CAAC,WAAW;YACrC,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,SAAS,EAAE,UAAU,CAAC,YAAa;YACnC,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,YAAY,EAAE,UAAU,CAAC,WAAW;YACpC,cAAc,EAAE,UAAU,CAAC,aAAa;AACxC,YAAA,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,KAAK,EAAA,EAAK,QAAC;gBAC5C,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,SAAS,EAAE,IAAI,CAAC,IAAI;AACpB,gBAAA,YAAY,EAAE,KAAK;aACpB,EAAC,EAAA,CAAC;YACH,KAAK,EAAE,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC,UAAC,OAAO,EAAK,EAAA,QAAC;AAChD,gBAAA,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE;gBACxB,gBAAgB,EAAE,OAAO,CAAC,EAAG;gBAC7B,oBAAoB,EAAE,OAAO,CAAC,YAAY;gBAC1C,uBAAuB,EAAE,OAAO,CAAC,WAAW;gBAC5C,gBAAgB,EAAE,OAAO,CAAC,OAAO;aAClC,EAAC,EAAA,CAAC;AACH,YAAA,cAAc,EAAE;AACd,gBAAA,WAAW,EAAE,UAAU,CAAC,kBAAkB,CAAC,WAAW;AACtD,gBAAA,KAAK,EAAE,UAAU,CAAC,kBAAkB,CAAC,KAAK;AAC1C,gBAAA,GAAG,EAAE,UAAU,CAAC,kBAAkB,CAAC,GAAG;AACtC,gBAAA,OAAO,EAAE,UAAU,CAAC,kBAAkB,CAAC,OAAO;AAC/C,aAAA;SACF,CAAA;KACF;AACD,IAAA,4BAA4B,EAA5B,UACE,UAAuC,EACvC,WAAyC,EAAA;QAEzC,OAAO;AACL,YAAA,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,IAAI,QAAQ,CAAC,GAAG,EAAE,EAAE,SAAS,EAAG;AACtD,YAAA,eAAe,EAAE,SAAS;AAC1B,YAAA,QAAQ,EAAE,IAAI;YACd,YAAY,EAAE,UAAU,CAAC,WAAW;AACpC,YAAA,YAAY,EAAE,WAAW;AACzB,YAAA,OAAO,wBACF,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,WAAW,CAAC,CACjD,EAAA,IAAI,CAAC,0BAA0B,CAAC,UAAU,CAAC,MAAM,CAAC,CACtD;SACF,CAAA;KACF;AAED,IAAA,6BAA6B,EAA7B,UACE,UAAwC,EACxC,WAAyC,EACzC,YAAqC,EAAA;QAErC,OAAO;AACL,YAAA,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,IAAI,QAAQ,CAAC,GAAG,EAAE,EAAE,SAAS,EAAG;AACtD,YAAA,eAAe,EAAE,UAAU;AAC3B,YAAA,QAAQ,EAAE,IAAI;YACd,YAAY,EAAE,UAAU,CAAC,WAAW;AACpC,YAAA,YAAY,EAAE,WAAW;AACzB,YAAA,QAAQ,EACN,QAAA,CAAA,QAAA,CAAA,EAAA,iBAAiB,EAAE,YAAY,IAAI,SAAS,EAC5C,aAAa,EAAE,UAAU,CAAC,YAAY,IACnC,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,WAAW,CAAC,CACjD,EAAA,IAAI,CAAC,0BAA0B,CAAC,UAAU,CAAC,MAAM,CAAC,CACtD;SACF,CAAA;KACF;IAED,oBAAoB,EAApB,UAAqB,WAA0C,EAAA;QAC7D,OAAO;AACL,YAAA,OAAO,EAAE,WAAW,KAAX,IAAA,IAAA,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,WAAW,CAAE,GAAG,CAAC,UAAC,OAAO,EAAA,EAAK,QAAC;gBACtC,oBAAoB,EAAE,OAAO,CAAC,EAAE;AAChC,gBAAA,SAAS,EAAE,CAAC,OAAO,CAAC,KAAK;aAC1B,EAAC,EAAA,CAAC;SACJ,CAAA;KACF;IAED,0BAA0B,EAA1B,UAA2B,MAAgC,EAAA;QAA3D,IAWC,KAAA,GAAA,IAAA,CAAA;QAVC,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,UAAC,KAAK,EAAE,KAAK,EAAK,EAAA,QAAC;gBACpC,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,aAAa,EAAE,KAAK,CAAC,QAAQ;gBAC7B,UAAU,EAAE,KAAK,CAAC,IAAI;gBACtB,eAAe,EAAE,KAAK,CAAC,MAAM;gBAC7B,MAAM,EAAE,KAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC;gBACzC,MAAM,EAAE,mBAAmB,CAAC,KAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;aAClE,EAAC,EAAA,CAAC;SACJ,CAAA;KACF;IAED,8BAA8B,EAA9B,UACE,UAA6C,EAC7C,WAAyC,EACzC,YAA+B,EAC/B,WAA8B,EAC9B,YAAqC,EAAA;QALvC,IAgEC,KAAA,GAAA,IAAA,CAAA;;QAzDC,OAAO;AACL,YAAA,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,IAAI,QAAQ,CAAC,GAAG,EAAE,EAAE,SAAS,EAAG;AACtD,YAAA,eAAe,EAAE,WAAW;AAC5B,YAAA,QAAQ,EAAE,IAAI;YACd,YAAY,EAAE,UAAU,CAAC,WAAW;AACpC,YAAA,YAAY,EAAE,WAAW;AACzB,YAAA,SAAS,EACP,QAAA,CAAA,EAAA,iBAAiB,EAAE,YAAY,IAAI,SAAS,EAC5C,gBAAgB,EAAE,UAAU,CAAC,YAAY,EACzC,YAAY,EAAE,UAAU,CAAC,QAAQ,EACjC,eAAe,EAAE,UAAU,CAAC,WAAW,EACvC,gBAAgB,EAAE,UAAU,CAAC,eAAe,EAC5C,oBAAoB,EAAE,CAAA,CAAA,EAAA,GAAA,UAAU,CAAC,kBAAkB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,EAAE,KAAI,IAAI,EAC/D,sBAAsB,EAAE,CAAA,CAAA,EAAA,GAAA,UAAU,CAAC,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,EAAE,KAAI,IAAI,EACtD,QAAQ,EAAE,UAAU,CAAC,SAAS,EAC9B,0BAA0B,EAAE,UAAU,CAAC,uBAAuB,EAC9D,wBAAwB,EAAE,CAAA,EAAA,GAAA,UAAU,CAAC,SAAS,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,WAAW,EAC3D,gBAAgB,EAAE,CAAA,EAAA,GAAA,UAAU,CAAC,SAAS,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,GAAG,EAC3C,oBAAoB,EAAE,CAAA,EAAA,GAAA,UAAU,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,OAAO,EACnD,kBAAkB,EAAE,MAAA,UAAU,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,KAAK,EAC/C,WAAW,EAAE,UAAU,CAAC,UAAU,EAClC,aAAa,EAAE,UAAU,CAAC,YAAY,EACtC,YAAY,EAAE,UAAU,CAAC,WAAW,EACpC,sBAAsB,EAAE,UAAU,CAAC,eAAe,EAClD,aAAa,EAAE,UAAU,CAAC,YAAY;AACpC,sBAAE,6BAA6B,CAAC,UAAU,CAAC,YAAY,CAAC;AACxD,sBAAE,IAAI,EACR,eAAe,EAAE,UAAU,CAAC,cAAc;AACxC,sBAAE,6BAA6B,CAAC,UAAU,CAAC,cAAc,CAAC;AAC1D,sBAAE,IAAI,EACR,cAAc,EAAE,UAAU,CAAC,aAAa;AACtC,sBAAE,6BAA6B,CAAC,UAAU,CAAC,aAAa,CAAC;AACzD,sBAAE,IAAI,EACR,wBAAwB,EAAE,UAAU,CAAC,iBAAiB;AACpD,sBAAE,6BAA6B,CAAC,UAAU,CAAC,iBAAiB,CAAC;AAC7D,sBAAE,IAAI,EACR,UAAU,EAAE,UAAU,CAAC,SAAS;AAC9B,sBAAE,6BAA6B,CAAC,UAAU,CAAC,SAAS,CAAC;AACrD,sBAAE,IAAI,EACR,SAAS,EAAE,CAAA,EAAA,GAAA,UAAU,CAAC,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,IAAI,EAChC,aAAa,EAAE,CAAA,EAAA,GAAA,UAAU,CAAC,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,QAAQ,EACxC,sBAAsB,EAAE,CAAA,EAAA,GAAA,UAAU,CAAC,gBAAgB,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAI,EACzD,uBAAuB,EAAE,CAAA,EAAA,GAAA,UAAU,CAAC,gBAAgB,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAK,EAC3D,0BAA0B,EAAE,CAAA,EAAA,GAAA,UAAU,CAAC,gBAAgB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,QAAQ,EACjE,UAAU,EAAE,UAAU,CAAC,SAAS,EAChC,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,UAAC,OAAO,EAAE,KAAK,EAAA;;AAAK,oBAAA,QAAC;wBACvD,OAAO,EAAE,CAAA,CAAA,EAAA,GAAA,OAAO,CAAC,GAAG,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,EAAE,KAAI,CAAC;wBAC7B,WAAW,EAAE,OAAO,CAAC,WAAW;wBAChC,KAAK,EAAE,OAAO,CAAC,IAAI;wBACnB,WAAW,EAAE,OAAO,CAAC,YAAY;wBACjC,MAAM,EAAE,OAAO,CAAC,gBAAgB;wBAChC,MAAM,EAAE,KAAI,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC;AAC3C,wBAAA,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC;AACjC,qBAAA,EAAC;iBAAA,CAAC,EAAA,EACA,IAAI,CAAC,4BAA4B,CAAC,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CACrE;SACF,CAAA;KACF;AAED,IAAA,4BAA4B,EAA5B,UACE,MAA+B,EAC/B,WAA8B,EAC9B,YAAmC,EAAA;QAHrC,IAoBC,KAAA,GAAA,IAAA,CAAA;QAfC,OAAO;YACL,MAAM,EACJ,CAAA,MAAM,KAAA,IAAA,IAAN,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,GAAG,CAAC,UAAC,KAAK,EAAE,KAAK,EAAK,EAAA,8BACzB,KAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,KACnC,QAAQ,EAAE,WAAW,CAAC,KAAK,CAAC,EAC5B,MAAM,EAAE,mBAAmB,CACzB,KAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,cAAc,CAAC,CACrD,EACD,MAAM,EAAE,YAAY;AAClB,sBAAE,YAAY,CAAC,KAAK,CAAC;sBACnB,KAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,EACrC,SAAS,EAAE,KAAK,CAAC,QAAQ,EACzB,YAAY,EAAE,KAAK,CAAC,eAAe,EAAA,CAAA,EAVP,EAW5B,CAAC,KAAI,EAAE;SACZ,CAAA;KACF;AAED,IAAA,wBAAwB,EAAxB,UACE,KAAwB,EACxB,SAAmC,EAAA;;AAEnC,QAAA,IAAI,KAAK,CAAC,QAAQ,KAAK,aAAa,EAAE;AACpC,YAAA,IAAM,MAAM,GAAG,SAAS,IAAI,EAAE,CAAA;YAC9B,IAAM,EAAE,GAAG,KAAK,CAAC,UAAG,MAAM,EAAA,IAAA,CAA+B,CAAC,CAAA;YAC1D,IAAM,EAAE,GAAG,KAAK,CAAC,UAAG,MAAM,EAAA,IAAA,CAA+B,CAAC,CAAA;YAC1D,IAAM,EAAE,GAAG,KAAK,CAAC,UAAG,MAAM,EAAA,IAAA,CAA+B,CAAC,CAAA;YAC1D,OAAO;AACL,gBAAA,EAAE,EAAE,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE;AACxB,gBAAA,EAAE,EAAE,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE;AACxB,gBAAA,EAAE,EAAE,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE;aACzB,CAAA;AACF,SAAA;AACD,QAAA,IAAM,UAAU,IAAI,SAAS,IAAI,OAAO,CAA4B,CAAA;AACpE,QAAA,IAAI,KAAK,CAAC,QAAQ,KAAK,OAAO,EAAE;AAC9B,YAAA,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE;AACzB,gBAAA,IAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,CAAA;AAC9B,gBAAA,OAAO,EAAE,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAA;AAC5C,aAAA;AACD,YAAA,IAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,CAAA;AAC7B,YAAA,OAAO,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,CAAA;AACxC,SAAA;AACD,QAAA,IAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,CAAA;AAE/B,QAAA,OAAA,EAAA,GAAA,EAAA;AACE,YAAA,EAAA,CAAC,KAAK,CAAC,QAAQ,CAAA,GAAG,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK;AAChD,YAAA,EAAA,CAAA;KACF;IAED,oBAAoB,EAApB,UAAqB,KAA4B,EAAA;;QAC/C,OAAO;YACL,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,UAAU,EAAE,KAAK,CAAC,IAAI;YACtB,eAAe,EAAE,KAAK,CAAC,MAAM;YAC7B,aAAa,EAAE,KAAK,CAAC,QAAQ;YAC7B,eAAe,EAAE,CAAA,CAAA,EAAA,GAAA,KAAK,CAAC,SAAS,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,SAAS,EAAE,KAAI,IAAI;SACtD,CAAA;KACF;AAED,IAAA,cAAc,EAAd,UACE,YAAqC,EACrC,SAAkC,EAAA;AAElC,QAAA,OAAO,mBAAmB,CAAC;AACzB,YAAA,aAAa,EAAE,YAAY;AAC3B,YAAA,UAAU,EAAE,SAAS;AACtB,SAAA,CAAC,CAAA;KACH;IAED,cAAc,EAAd,UAAe,KAAkB,EAAA;AAC/B,QAAA,OAAO,KAAK;aACT,GAAG,CAAC,UAAC,IAAI,EAAK,EAAA,OAAA,IAAI,CAAC,YAAY,CAAjB,EAAiB,CAAC;aAChC,MAAM,CAAC,UAAC,IAAI,EAAA,EAAK,OAAA,IAAI,CAAA,EAAA,CAAuB,CAAA;KAChD;;;AC1RH,IAAM,mBAAmB,GAAG;IACpB,kBAAkB,EAAxB,UAAyB,WAAmB,EAAA;;;;;4BACvB,OAAM,CAAA,CAAA,YAAA,EAAE,CACzB,QAAQ,CAAC,GAAG,CAAC,cAAA,CAAA,MAAA,CAAe,WAAW,EAAA,mBAAA,CAAmB,CAAC,CAC5D,CAAA,CAAA;;AAFK,wBAAA,EAAA,GAAa,SAElB,EAFM,GAAG,GAAA,EAAA,CAAA,CAAA,CAAA,EAAE,GAAG,GAAA,EAAA,CAAA,CAAA,CAAA,CAAA;AAIf,wBAAA,IAAI,GAAG;AAAE,4BAAA,OAAA,CAAA,CAAA,aAAO,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA,CAAA;wBAEhC,OAAO,CAAA,CAAA,aAAA,CAAC,IAAI,EAAE,GAAG,KAAA,IAAA,IAAH,GAAG,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAH,GAAG,CAAE,gBAAgB,CAAC,CAAA,CAAA;;;;AACrC,KAAA;IAEK,gBAAgB,EAAtB,UAAuB,WAAmB,EAAA;;;;;4BACrB,OAAM,CAAA,CAAA,YAAA,EAAE,CACzB,QAAQ,CAAC,GAAG,CAAC,cAAA,CAAA,MAAA,CAAe,WAAW,EAAA,4BAAA,CAA4B,CAAC,CACrE,CAAA,CAAA;;AAFK,wBAAA,EAAA,GAAa,SAElB,EAFM,GAAG,GAAA,EAAA,CAAA,CAAA,CAAA,EAAE,GAAG,GAAA,EAAA,CAAA,CAAA,CAAA,CAAA;AAIf,wBAAA,IAAI,GAAG;AAAE,4BAAA,OAAA,CAAA,CAAA,aAAO,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA,CAAA;wBAEhC,OAAO,CAAA,CAAA,aAAA,CAAC,IAAI,EAAE,GAAG,KAAA,IAAA,IAAH,GAAG,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAH,GAAG,CAAE,yBAAyB,CAAC,CAAA,CAAA;;;;AAC9C,KAAA;AAEK,IAAA,gBAAgB,EAAtB,UAAuB,WAAmB,EAAE,IAAS,EAAE,MAAc,EAAA;;;;;;AAClD,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,YAAM,EAAE,CACvB,QAAQ,CAAC,IAAI,CAAC,cAAe,CAAA,MAAA,CAAA,WAAW,EAAc,cAAA,CAAA,EAAE,IAAI,CAAC,CAC9D,CAAA,CAAA;;AAFK,wBAAA,QAAQ,GAAG,EAEhB,CAAA,IAAA,EAAA,CAAA;AAED,wBAAA,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;AAE5B,wBAAA,OAAA,CAAA,CAAA,aAAO,MAAA,QAAQ,CAAC,CAAC,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,EAAE,CAAA,CAAA;;;;AACvB,KAAA;AACK,IAAA,uBAAuB,EAA7B,UACE,IAAiC,EACjC,WAAmB,EACnB,MAAc,EAAA;;;;AAEd,gBAAA,IAAI,WAAW,EAAE;AACf,oBAAA,MAAM,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAA;oBAEpC,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;oBAClD,IAAI,GAAG,sBAAsB,CAAC,4BAA4B,CAC9D,IAAI,EACJ,WAAW,CACZ,CAAA;oBAED,OAAO,CAAA,CAAA,aAAA,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA,CAAA;AACxD,iBAAA;AACD,gBAAA,OAAA,CAAA,CAAA,aAAO,IAAI,CAAA,CAAA;;;AACZ,KAAA;AACK,IAAA,uBAAuB,EAA7B,UACE,IAAiC,EACjC,WAAmB,EACnB,MAAc,EAAA;;;;AAEd,gBAAA,IAAI,WAAW,EAAE;AACf,oBAAA,MAAM,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAA;oBAEpC,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;oBAElD,IAAI,GAAG,sBAAsB,CAAC,4BAA4B,CAC9D,IAAI,EACJ,WAAW,CACZ,CAAA;oBAED,OAAO,CAAA,CAAA,aAAA,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA,CAAA;AACxD,iBAAA;AACD,gBAAA,OAAA,CAAA,CAAA,aAAO,IAAI,CAAA,CAAA;;;AACZ,KAAA;AAEK,IAAA,wBAAwB,EAA9B,UACE,IAAkC,EAClC,WAAmB,EACnB,MAAc,EAAA;;;;;;AAEV,wBAAA,IAAA,CAAA,WAAW,EAAX,OAAW,CAAA,CAAA,YAAA,CAAA,CAAA,CAAA;AACb,wBAAA,MAAM,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAA;wBAEpC,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;wBAC3C,OAAM,CAAA,CAAA,YAAA,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA,CAAA;;AAArD,wBAAA,IAAI,GAAG,EAA8C,CAAA,IAAA,EAAA,CAAA;wBAErD,IAAI,GAAG,sBAAsB,CAAC,6BAA6B,CAC/D,IAAI,EACJ,WAAW,EACX,IAAI,CACL,CAAA;wBAED,OAAO,CAAA,CAAA,aAAA,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA,CAAA;AAEzD,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAO,IAAI,CAAA,CAAA;;;;AACZ,KAAA;AAEK,IAAA,yBAAyB,EAA/B,UACE,IAAuC,EACvC,WAAmB,EACnB,MAAc,EAAA;;;;;;;AAEV,wBAAA,IAAA,CAAA,WAAW,EAAX,OAAW,CAAA,CAAA,YAAA,CAAA,CAAA,CAAA;AACb,wBAAA,MAAM,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAA;AAEpC,wBAAA,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CACvC,UAAC,OAAO,EAAA,EAAK,OAAA,OAAO,CAAC,WAAW,CAAnB,EAAmB,CACjC,CAAA;wBACK,WAAW,GAAG,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,GAAG,CAAC,UAAC,KAAK,EAAK,EAAA,OAAA,KAAK,CAAC,YAAY,GAAA,CAAC,KAAI,EAAE,CAAA;AAC3D,wBAAA,OAAA,CAAA,CAAA,YAAM,YAAY,CAAC;AAC/B,gCAAA,WAAW,CAAC,MAAM,EAAE,YAAY,CAAC;AACjC,gCAAA,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC;AAChC,gCAAA,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC;AACzC,6BAAA,CAAC,CAAA,CAAA;;AAJI,wBAAA,KAAK,GAAG,EAIZ,CAAA,IAAA,EAAA,CAAA;wBACI,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;wBAElD,IAAI,GAAG,sBAAsB,CAAC,8BAA8B,CAChE,IAAI,EACJ,WAAW,EACX,KAAK,CAAC,CAAC,CAAC,EACR,KAAK,CAAC,CAAC,CAAC,EACR,KAAK,CAAC,CAAC,CAAC,CACT,CAAA;wBAED,OAAO,CAAA,CAAA,aAAA,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA,CAAA;AAEzD,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAO,IAAI,CAAA,CAAA;;;;AACZ,KAAA;IAED,aAAa,EAAb,UAAc,KAAmC,EAAA;QAC/C,OAAO,KAAK,CAAC,GAAG,CAAC,UAAC,IAAI,EAAA,EAAK,QAAC;YAC1B,OAAO,EAAE,IAAI,CAAC,IAAI;YAClB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,sBAAsB,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC;SAC1D,EAAC,EAAA,CAAC,CAAA;KACJ;;;AC1GI,IAAM,wBAAwB,GAAG,IAAI,CAAA;AAErC,IAAM,cAAc,GAAG,EAAE,CAAA;AAEhC,IAAM,eAAe,GAAG;IACtB,2BAA2B,EAA3B,UACE,SAAyB,EAAA;AAEzB,QAAA,OAAA,QAAA,CAAA,QAAA,CAAA,QAAA,CAAA,QAAA,CAAA,QAAA,CAAA,QAAA,CAAA,EAAA,EACK,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,GACpC,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAA,EACxC,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CACtC,EAAA,IAAI,CAAC,iCAAiC,CAAC,SAAS,CAAC,CAAA,EACjD,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,GACrC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CACtC,CAAA;KACF;IAED,oBAAoB,EAApB,UACE,SAAkC,EAAA;QAElC,OACK,QAAA,CAAA,QAAA,CAAA,EAAA,EAAA,SAAS,CACZ,EAAA,EAAA,eAAe,EAAE,SAAS,CAAC,gBAAgB,EAC3C,OAAO,EAAE,SAAS,CAAC,UAAU,IAAI,EAAE,EACnC,UAAU,EAAE,SAAS,CAAC,WAAW,EACjC,QAAQ,EAAE,SAAS,CAAC,YAAY,EAChC,WAAW,EAAE,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,WAAW,CAAC,EAC7D,gBAAgB,EAAE,SAAS,CAAC,6BAA6B,IAAI,IAAI,EACjE,YAAY,EAAE,SAAS,CAAC,SAAS,EAClC,CAAA,CAAA;KACF;IAED,wBAAwB,EAAxB,UACE,SAAsC,EAAA;;QAEtC,OAAO;AACL,YAAA,WAAW,EAAE,CAAA,EAAA,GAAA,SAAS,CAAC,YAAY,mCAAI,IAAI;AAC3C,YAAA,OAAO,EAAE,CAAA,EAAA,GAAA,SAAS,CAAC,QAAQ,mCAAI,IAAI;AACnC,YAAA,UAAU,EAAE,CAAA,EAAA,GAAA,SAAS,CAAC,WAAW,mCAAI,IAAI;AACzC,YAAA,WAAW,EAAE,CAAA,EAAA,GAAA,SAAS,CAAC,YAAY,mCAAI,IAAI;AAC3C,YAAA,YAAY,EAAE,CAAA,EAAA,GAAA,SAAS,CAAC,aAAa,mCAAI,IAAI;AAC7C,YAAA,eAAe,EAAE,CAAA,EAAA,GAAA,SAAS,CAAC,sBAAsB,mCAAI,IAAI;AACzD,YAAA,YAAY,EAAE,SAAS,CAAC,aAAa,IAAI,EAAE;AAC3C,YAAA,QAAQ,EAAE,SAAS,CAAC,SAAS,IAAI,EAAE;YACnC,YAAY,EAAE,SAAS,CAAC,aAAa;AACnC,kBAAE,wBAAwB,CAAC,SAAS,CAAC,aAAa,CAAC;AACnD,kBAAE,IAAI;YACR,cAAc,EAAE,SAAS,CAAC,eAAe;AACvC,kBAAE,wBAAwB,CAAC,SAAS,CAAC,eAAe,CAAC;AACrD,kBAAE,IAAI;YACR,aAAa,EAAE,SAAS,CAAC,cAAc;AACrC,kBAAE,wBAAwB,CAAC,SAAS,CAAC,cAAc,CAAC;AACpD,kBAAE,IAAI;YACR,iBAAiB,EAAE,SAAS,CAAC,wBAAwB;AACnD,kBAAE,wBAAwB,CAAC,SAAS,CAAC,wBAAwB,CAAC;AAC9D,kBAAE,IAAI;SACT,CAAA;KACF;IAED,sBAAsB,EAAtB,UACE,SAAoC,EAAA;;QAEpC,OAAO;YACL,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,UAAU,EAAE,SAAS,CAAC,WAAW;YACjC,WAAW,EAAE,SAAS,CAAC,YAAY;YACnC,WAAW,EAAE,SAAS,CAAC,YAAY;YACnC,cAAc,EAAE,SAAS,CAAC,eAAe;YACzC,eAAe,EAAE,SAAS,CAAC,gBAAgB;YAC3C,eAAe,EAAE,SAAS,CAAC,gBAAgB;YAC3C,uBAAuB,EAAE,SAAS,CAAC,yBAAyB;YAC5D,aAAa,EAAE,SAAS,CAAC,cAAc;YACvC,eAAe,EAAE,SAAS,CAAC,iBAAiB;AAC5C,YAAA,UAAU,EAAE;AACV,gBAAA,IAAI,EAAE,SAAS,CAAC,eAAe,IAAI,IAAI;AACvC,gBAAA,IAAI,EAAE,SAAS,CAAC,eAAe,IAAI,IAAI;AACvC,gBAAA,KAAK,EAAE,SAAS,CAAC,gBAAgB,IAAI,IAAI;AAC1C,aAAA;AACD,YAAA,KAAK,EACH,CAAA,CAAA,EAAA,GAAA,SAAS,CAAC,KAAK,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,GAAG,CAAC,UAAC,IAAI,EAAA,EAAK,QAAC;gBAC9B,EAAE,EAAE,IAAI,CAAC,EAAE;AACX,gBAAA,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;AACvB,gBAAA,IAAI,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI;AAC7B,aAAA,EAJ8B,EAI7B,CAAC,KAAI,EAAE;SACZ,CAAA;KACF;IAED,iCAAiC,EAAjC,UACE,SAAyB,EAAA;QAEzB,OAAO;YACL,SAAS,EAAE,SAAS,CAAC,UAAU;AAC7B,kBAAE,wBAAwB,CAAC,SAAS,CAAC,UAAU,CAAC;AAChD,kBAAE,IAAI;AACR,YAAA,IAAI,EAAE;gBACJ,IAAI,EAAE,SAAS,CAAC,SAAS;gBACzB,QAAQ,EAAE,SAAS,CAAC,aAAa;AAClC,aAAA;AACD,YAAA,gBAAgB,EAAE;gBAChB,IAAI,EAAE,SAAS,CAAC,sBAAsB;gBACtC,KAAK,EAAE,SAAS,CAAC,uBAAuB;gBACxC,QAAQ,EAAE,SAAS,CAAC,0BAA0B;AAC/C,aAAA;YACD,MAAM,EAAE,SAAS,CAAC,OAAO;SAC1B,CAAA;KACF;IAED,qBAAqB,EAArB,UACE,SAA4C,EAAA;QAE5C,OAAO;YACL,WAAW,EAAE,SAAS,CAAC,WAAW;YAClC,YAAY,EAAE,SAAS,CAAC,aAAa;YACrC,WAAW,EAAE,SAAS,CAAC,aAAa;YACpC,YAAY,EAAE,SAAS,CAAC,SAAS;YACjC,WAAW,EAAE,SAAS,CAAC,YAAY;YACnC,WAAW,EAAE,SAAS,CAAC,YAAY;YACnC,aAAa,EAAE,SAAS,CAAC,cAAc;YACvC,uBAAuB,EAAE,SAAS,CAAC,0BAA0B;AAC3D,kBAAE,MAAM,CAAC,SAAS,CAAC,0BAA0B,CAAC;AAC9C,kBAAE,IAAI;YACR,qBAAqB,EAAE,SAAS,CAAC,wBAAwB;AACvD,kBAAE,MAAM,CAAC,SAAS,CAAC,wBAAwB,CAAC;AAC5C,kBAAE,IAAI;YACR,QAAQ,EAAE,SAAS,CAAC,QAAQ;YAC5B,YAAY,EAAE,SAAS,CAAC,SAAS;SAClC,CAAA;KACF;IAED,kBAAkB,EAAlB,UAAmB,SAAyB,EAAA;QAC1C,OAAO;AACL,YAAA,SAAS,EAAE;gBACT,KAAK,EAAE,SAAS,CAAC,kBAAkB;gBACnC,WAAW,EAAE,SAAS,CAAC,wBAAwB;gBAC/C,GAAG,EAAE,SAAS,CAAC,gBAAgB;gBAC/B,OAAO,EAAE,SAAS,CAAC,oBAAoB;AACxC,aAAA;SACF,CAAA;KACF;IAED,oBAAoB,EAApB,UAAqB,WAA0B,EAAA;AAC7C,QAAA,OAAO,WAAW;AAChB,cAAE;AACE,gBAAA,GAAG,EAAE,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC;AAC5B,gBAAA,GAAG,EAAE,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC;AAC7B,aAAA;cACD,IAAI,CAAA;KACT;IAED,oBAAoB,EAApB,UAAqB,MAAkC,EAAA;QACrD,OAAO,MAAM,CAAC,GAAG,CAAC,UAAC,UAAU,EAAA,EAAK,QAAC;YACjC,EAAE,EAAE,UAAU,CAAC,EAAE;YACjB,IAAI,EAAE,UAAU,CAAC,OAAO;YACxB,OAAO,EAAE,UAAU,CAAC,OAAO;YAC3B,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,UAAC,KAAK,EAAA;AAClC,gBAAA,OAAA,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAA;AAApC,aAAoC,CACrC;AACD,YAAA,UAAU,EACR,OAAO,UAAU,CAAC,iBAAiB,KAAK,QAAQ;AAC9C,kBAAE,UAAU,CAAC,iBAAiB,GAAG,CAAC;AAClC,kBAAE,CAAC;SACR,EAAC,EAAA,CAAC,CAAA;KACJ;AAED,IAAA,0BAA0B,EAA1B,UACE,OAA+B,EAC/B,YAAsB,EAAA;;AAEtB,QAAA,OAAA,QAAA,CAAA,EACE,EAAE,EAAE,OAAO,CAAC,EAAE,EACd,IAAI,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE,EAC/B,GAAG,EAAE;AACH,gBAAA,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE;AACtB,gBAAA,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;aAC3B,EACD,MAAM,EAAE,CAAA,EAAA,GAAA,OAAO,CAAC,MAAM,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,GAAG,CAAC,UAAC,KAAK,EAAA;AAChC,gBAAA,OAAA,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAA;aAAA,CACrC,EACD,YAAY,EAAE,OAAO,CAAC,WAAW,EACjC,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EACxC,WAAW,EAAE,OAAO,CAAC,WAAW;kBAC5B,SAAS,CAAC,qBAAqB,CAAC,OAAO,CAAC,WAAW,CAAC;kBACpD,IAAI,EACR,IAAI,EAAE,sBAAsB,CAC1B,OAAO,CAAC,OAAO,CAAC,YAAmD,CACxC,EAAA,GACzB,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC,YAAY,KAAK,WAAW;AAC9D,cAAE;AACE,gBAAA,KAAK,EAAE,CAAC,OAAO,CAAC,SAAS;gBACzB,UAAU,EAAE,OAAO,CAAC,iBAAiB;AACtC,aAAA;cACD,EAAE,EACP,CAAA;KACF;IAED,gCAAgC,EAAhC,UACE,SAAyB,EAAA;QAEzB,OACK,QAAA,CAAA,QAAA,CAAA,EAAA,EAAA,IAAI,CAAC,2BAA2B,CAAC,SAAS,CAAC,CAAA,EAAA,EAC9C,aAAa,EAAE,IAAI,CAAC,sBAAsB,CAAC,SAAS,KAAT,IAAA,IAAA,SAAS,uBAAT,SAAS,CAAE,cAAc,CAAC,EACtE,CAAA,CAAA;KACF;IAED,sBAAsB,EAAtB,UAAuB,aAAsC,EAAA;AAC3D,QAAA,QACE,CAAA,aAAa,KAAA,IAAA,IAAb,aAAa,KAAb,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,aAAa,CAAE,GAAG,CAAC,UAAC,YAAY,EAAA,EAAK,QAAC;YACpC,EAAE,EAAE,YAAY,CAAC,gBAAgB;YACjC,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,YAAY,EAAE,YAAY,CAAC,oBAAoB;AAC/C,YAAA,WAAW,EAAE,MAAM,CAAC,YAAY,CAAC,uBAAuB,CAAC;YACzD,OAAO,EAAE,YAAY,CAAC,gBAAgB;AACtC,YAAA,QAAQ,EAAE,IAAI,CAAC,KAAK,CAClB,YAAY,CAAC,oBAAqB;AAChC,iBAAC,wBAAwB,GAAG,cAAc,CAAC,CAC9C;AACF,SAAA,IAAC,CAAC,KAAI,EAAE,EACV;KACF;AAED,IAAA,cAAc,EAAd,UACE,KAAmE,EACnE,QAAuB,EACvB,SAAkB,EAAA;;QAElB,IAAI,QAAQ,KAAK,aAAa,EAAE;AAC9B,YAAA,IAAM,MAAM,GAAG,SAAS,IAAI,EAAE,CAAA;AAC9B,YAAA,OAAA,QAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,EAAA,EAAA,CACG,UAAG,MAAM,EAAA,IAAA,CAAI,IAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EACrC,EAAA,IAAC,KAAK,CAAC,UAAU,KAAK,IAAI,KAAA,EAAA,GAAA,EAAA;gBAC3B,EAAC,CAAA,EAAA,CAAA,MAAA,CAAG,MAAM,EAAA,IAAA,CAAI,CAAG,GAAA,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;AACzC,gBAAA,EAAA,CAAA,KACG,KAAK,CAAC,UAAU,KAAK,IAAI,KAAA,EAAA,GAAA,EAAA;gBAC3B,EAAC,CAAA,EAAA,CAAA,MAAA,CAAG,MAAM,EAAA,IAAA,CAAI,CAAG,GAAA,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;AACzC,gBAAA,EAAA,CAAA,EACF,CAAA;AACF,SAAA;AACD,QAAA,IAAM,UAAU,GAAG,SAAS,IAAI,OAAO,CAAA;QACvC,IAAI,QAAQ,KAAK,OAAO,EAAE;AACxB,YAAA,IAAI,KAAK,CAAC,UAAU,KAAK,MAAM,EAAE;AAC/B,gBAAA,OAAA,EAAA,GAAA,EAAA,EAAS,EAAC,CAAA,EAAA,CAAA,MAAA,CAAG,UAAU,CAAE,CAAG,GAAA,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAA,CAAA;AACxD,aAAA;AACD,YAAA,OAAA,EAAA,GAAA,EAAA,EAAS,EAAC,CAAA,EAAA,CAAA,MAAA,CAAG,UAAU,CAAE,CAAG,GAAA,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAA,CAAA;AACvD,SAAA;AACD,QAAA,OAAA,EAAA,GAAA,EAAA;AACE,YAAA,EAAA,CAAC,EAAG,CAAA,MAAA,CAAA,UAAU,CAAE,CAAA,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAClD,YAAA,EAAA,CAAA;KACF;IAED,qBAAqB,EAArB,UACE,MAAsC,EAAA;QADxC,IAgBC,KAAA,GAAA,IAAA,CAAA;QAbC,OAAO;AACL,YAAA,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,UAAC,KAAK,EAAA;;gBAAK,QAAA,QAAA,CAAA,EAC5B,EAAE,EAAE,KAAK,CAAC,EAAE,EACZ,IAAI,EAAE,KAAK,CAAC,UAAU,EACtB,MAAM,EAAE,KAAK,CAAC,eAAe,EAC7B,QAAQ,EAAE,KAAK,CAAC,aAAa,EAC7B,MAAM,EACJ,CAAA,CAAA,EAAA,GAAA,KAAK,CAAC,MAAM,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,GAAG,CAAC,UAAC,KAAK,EAAK,EAAA,OAAA,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAApC,EAAoC,CAAC;wBAClE,EAAE,EACJ,MAAM,EAAE,KAAI,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,EACpD,EAAA,KAAI,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,CAAA,EAClD;aAAA,CAAC;SACJ,CAAA;KACF;IAED,uBAAuB,EAAvB,UACE,SAAyB,EAAA;QAEzB,OAAO;YACL,SAAS,EAAE,SAAS,CAAC,UAAU;YAC/B,uBAAuB,EAAE,SAAS,CAAC,0BAA0B;YAC7D,iBAAiB,EAAE,SAAS,CAAC,sBAAsB;AACjD,kBACO,QAAA,CAAA,QAAA,CAAA,EAAA,EAAA,SAAS,CAAC,sBAAsB,CACnC,EAAA,EAAA,gBAAgB,EAAE,SAAS,CAAC,UAAU,EAE1C,CAAA,GAAE,IAAI;SACT,CAAA;KACF;IAED,wBAAwB,EAAxB,UACE,UAAsC,EAAA;AAEtC,QAAA,OAAA,QAAA,CAAA,QAAA,CAAA,EAAA,EACK,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,KAC3C,kBAAkB,EAAE,UAAU,CAAC,oBAAoB,EACnD,SAAS,EAAE,UAAU,CAAC,QAAQ,EAC/B,CAAA,CAAA;KACF;AAED,IAAA,YAAY,EAAZ,UACE,KAAgC,EAChC,QAAuB,EAAA;;QAEvB,OAAO;YACL,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,IAAI,EAAE,KAAK,CAAC,UAAU;YACtB,MAAM,EAAE,KAAK,CAAC,eAAe;YAC7B,SAAS,EAAE,KAAK,CAAC,eAAe;kBAC5B,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC;AACzC,kBAAE,IAAI;YACR,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,wBAAwB,EAAE,KAAK,CAAC,iBAAiB;AACjD,YAAA,QAAQ,EAAA,QAAA;YACR,MAAM,EAAE,KAAK,CAAC,MAAM;AAClB,kBAAE;AACE,oBAAA,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE;AACnB,oBAAA,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS;AAC7B,iBAAA;AACH,kBAAE,IAAI;YACR,YAAY,EAAE,KAAK,CAAC,QAAQ;kBACxB,SAAS,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC;AAC7C,kBAAE,IAAI;YACR,MAAM,EACJ,CAAA,CAAA,EAAA,GAAA,KAAK,CAAC,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,GAAG,CAAC,UAAC,KAAK,EAAK,EAAA,OAAA,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAApC,EAAoC,CAAC;gBAClE,EAAE;SACL,CAAA;KACF;IAED,sBAAsB,EAAtB,UACE,UAAqC,EAAA;QADvC,IASC,KAAA,GAAA,IAAA,CAAA;QANC,OAAO;AACL,YAAA,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,UAAC,KAAK,EAAA,EAAK,QACpC,QAAA,CAAA,QAAA,CAAA,EAAA,EAAA,KAAI,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,CAC7C,EAAA,KAAI,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,EAAE,cAAc,CAAC,CAClE,EAAA,EAAA,CAAC;SACJ,CAAA;KACF;;;ACvWH,IAAM,2BAA2B,GAAG,UAClC,iBAA+D,EAC/D,QAAmC,IACa,OAAA;eAE9C,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,mBAAmB,EAChC,IAAI,EAAE,EAAE,EAAA,EACL,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,OAAO,CAAA;eAGpB,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,QAAQ,EACf,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,kBAAkB,EAC5B,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,MAAM,CAAA;eAGnB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,gBAAgB,EAC7B,UAAU,EAAE,IAAI,EAAA,EACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,IAAI,CAAA;AAGjB,IAAA,QAAA,CAAA,EAAA,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,4BAA4B,EACzC,iBAAiB,EAAA,iBAAA,EACjB,IAAI,EAAE,EAAE,EACR,UAAU,EAAE,IAAI,EAAA,EACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,SAAS,CAAA;eAGtB,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE,iBAAiB,EACvB,aAAa,EAAE,kBAAkB,EACjC,UAAU,EAAE,IAAI,EACb,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,eAAe,CAAA;AAG5B,IAAA,QAAA,CAAA,EAAA,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,SAAS,EACZ,EAAA,QAAQ,KAAR,IAAA,IAAA,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,OAAO,CAAA;AAEvB,CAAA,CAAA;;ACxDY,IAAA,8BAA8B,GAAG;AAC5C,IAAA,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC;AACpB,QAAA,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;KAChE,CAAC;IACF,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;AAChE,IAAA,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC;QACf,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;KACtD,CAAC;IACF,aAAa,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,CAC3B,GAAG,CAAC,MAAM,CAAC;AACT,QAAA,EAAE,EAAE,GAAG;AACJ,aAAA,MAAM,EAAE;aACR,SAAS,CAAC,UAAC,KAAK,EAAA,EAAK,QAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,SAAS,GAAG,KAAK,EAAxC,EAAyC,CAAC;AAClE,QAAA,IAAI,EAAE,GAAG;AACN,aAAA,MAAM,EAAE;aACR,QAAQ,CAAC,sBAAsB,CAAC;AAChC,aAAA,IAAI,CACH,UAAU,EACV,kDAAkD,EAClD,UAAU,KAAK,EAAA;AACb,YAAA,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAA;AACzB,SAAC,CACF;QACH,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QAC3D,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QAC1D,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;AACvD,KAAA,CAAC,CACH;EACF;AAEK,IAAA,4BAA4B,GAAG,GAAG,CAAC,MAAM,CAAC,8BAA8B;;ACtB9E,IAAM,gBAAgB,GAAG,UACvB,QAAmC,IACI,OAAA;eAErC,IAAI,EAAE,aAAa,EACnB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,gBAAgB,EACzB,UAAU,EAAE,IAAI,EAAA,EACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,WAAW,CAAA;AAGxB,IAAA,QAAA,CAAA,EAAA,IAAI,EAAE,aAAa,EACnB,KAAK,EAAE,cAAc,EAClB,EAAA,QAAQ,KAAR,IAAA,IAAA,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,WAAW,CAAA;eAGxB,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,mBAAmB,EAC5B,UAAU,EAAE,IAAI,EAAA,EACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,YAAY,CAAA;eAGzB,IAAI,EAAE,aAAa,EACnB,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,gBAAgB,EACzB,UAAU,EAAE,IAAI,EAAA,EACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,WAAW,CAAA;eAGxB,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,cAAc,EACvB,UAAU,EAAE,IAAI,EAAA,EACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,QAAQ,CAAA;eAGrB,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,IAAI,EAAA,EACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,YAAY,CAAA;eAGzB,IAAI,EAAE,yBAAyB,EAC/B,KAAK,EAAE,qBAAqB,EAC5B,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,IAAI,EACb,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,uBAAuB,CAAA;eAGpC,IAAI,EAAE,uBAAuB,EAC7B,KAAK,EAAE,mBAAmB,EAC1B,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,IAAI,EACb,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,qBAAqB,CAAA;AAGlC,IAAA,QAAA,CAAA,EAAA,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,IAAI,IACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,YAAY,CAAA;AAE5B,CAAA,CAAA;;AC5EY,IAAA,qBAAqB,GAAG;AACnC,IAAA,uBAAuB,EAAE,oBAAoB;AAC7C,IAAA,qBAAqB,EAAE,oBAAoB;IAC3C,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC1D,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC3D,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC3D,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC1D,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IACvD,YAAY,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;EAC7D;AAEK,IAAA,mBAAmB,GAAG,GAAG,CAAC,MAAM,CAAC,qBAAqB;;ACL5D,IAAM,UAAU,GAAG;AACjB,IAAA,IAAI,EAAE,IAAI;CACX,CAAA;AAED,IAAM,4BAA4B,GAAG,UACnC,UAA0B,EAC1B,aAA6B,EAC7B,QAAmC,EAAA;;AACc,IAAA,OAAA,aAAA,CAAA,aAAA,CAAA;4BAE/C,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,IAAI,EACb,EAAA,UAAU,CACV,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,IAAI,CAAA;AAGhB,KAAA,GAAC,UAAU;UACV,IAAI,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;aAC1B,IAAI,CAAC,CAAC,CAAC;AACP,aAAA,GAAG,CAAC,UAAC,CAAC,EAAE,GAAG,EAAA;;AACV,YAAA,IAAM,KAAK,GACT,aAAa,IAAI,GAAG,GAAG,aAAa;AAClC,kBAAE,UAAA,CAAA,MAAA,CAAW,GAAG,GAAG,CAAC,CAAE;AACtB,kBAAE,OAAQ,CAAA,MAAA,CAAA,GAAG,GAAG,CAAC,CAAE,CAAA;AACvB,YAAA,IAAM,WAAW,GACf,aAAa,IAAI,GAAG,GAAG,aAAa,GAAG,UAAU,GAAG,OAAO,CAAA;YAE7D,OAAO;AAEH,gBAAA,QAAA,CAAA,EAAA,IAAI,EAAE,QAAA,CAAA,MAAA,CAAS,GAAG,EAAA,OAAA,CAAO,EACzB,KAAK,EAAE,EAAG,CAAA,MAAA,CAAA,KAAK,EAAO,OAAA,CAAA,EACtB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,cAAc,EACvB,UAAU,EAAE,IAAI,KACZ,CAAA,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAG,WAAW,CAAC;sBACvB,CAAA,EAAA,GAAA,QAAQ,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,IAAI;sBAChC,EAAE,EAAC;aAEV,CAAA;AACH,SAAC,CAAC;AACD,aAAA,IAAI,EAAE;UACT,EAAE,GAAC,IAAA,CAAA,EAAA;4BAEL,IAAI,EAAE,eAAe,EACrB,KAAK,EAAE,gBAAgB,EACvB,IAAI,EAAE,QAAQ,EACd,WAAW,EAAE,IAAI,EACjB,UAAU,EAAE,IAAI,EAAA,EACb,UAAU,CAAA,EACV,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,aAAa,CAAA;mBAG1B,IAAI,EAAE,iBAAiB,EACvB,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,IAAI,EACb,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,eAAe,CAAA;mBAG5B,IAAI,EAAE,iBAAiB,EACvB,KAAK,EAAE,yBAAyB,EAChC,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,IAAI,EACb,EAAA,QAAQ,KAAR,IAAA,IAAA,QAAQ,uBAAR,QAAQ,CAAE,UAAU,CAAC,IAAI,CAAA;AAG5B,QAAA,QAAA,CAAA,EAAA,IAAI,EAAE,iBAAiB,EACvB,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,oBAAoB,EAC7B,UAAU,EAAE,IAAI,EACb,EAAA,CAAA,EAAA,GAAA,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,UAAU,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,IAAI,CAAA;AAG7B,QAAA,QAAA,CAAA,EAAA,IAAI,EAAE,kBAAkB,EACxB,KAAK,EAAE,kBAAkB,EACzB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,qBAAqB,EAC9B,UAAU,EAAE,IAAI,EACb,EAAA,CAAA,EAAA,GAAA,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,UAAU,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,KAAK,CAAA;AAEjC,KAAA,EAAA,KAAA,CAAA,CAAA;;;ACzFY,IAAA,+BAA+B,GAAG;AAC7C,IAAA,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IAChE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,CACnB,GAAG,CAAC,MAAM,CAAC;QACT,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;AACtD,KAAA,CAAC,CACH;AACD,IAAA,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC;AACvE,IAAA,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC;AACrB,QAAA,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;QAChE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;QACrD,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;KACvD,CAAC;AACF,IAAA,aAAa,EAAE,oBAAoB;EACpC;AAEK,IAAA,6BAA6B,GAAG,GAAG,CAAC,MAAM,CAC9C,+BAA+B;;AChBjC,IAAM,2BAA2B,GAAG,UAClC,QAAmC,IACa,OAAA;eAE9C,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,IAAI,EACb,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,KAAK,CAAA;eAGlB,KAAK,EAAE,QAAQ,EACf,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,IAAI,EACb,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,UAAU,CAAA;eAGvB,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,aAAa,EACnB,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,IAAI,EACb,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,WAAW,CAAA;eAGxB,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,gBAAgB,EACtB,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,IAAI,EACb,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,cAAc,CAAA;eAG3B,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE,iBAAiB,EACvB,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,IAAI,EACb,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,eAAe,CAAA;eAG5B,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE,iBAAiB,EACvB,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,IAAI,EACb,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,eAAe,CAAA;eAG5B,KAAK,EAAE,mBAAmB,EAC1B,IAAI,EAAE,yBAAyB,EAC/B,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,IAAI,EACb,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,uBAAuB,CAAA;AAEvC,CAAA,CAAA;;ACtDY,IAAA,8BAA8B,GAAG;AAC5C,IAAA,KAAK,EAAE,GAAG;AACP,SAAA,MAAM,EAAE;AACR,SAAA,OAAO,EAAE;SACT,GAAG,CAAC,CAAC,CAAC;AACN,SAAA,IAAI,CAAC,yBAAyB,EAAE,UAAU,EAAE,UAAU,KAAU,EAAA;AAC/D,QAAA,OAAO,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAA;AACxC,KAAC,CAAC;AACJ,IAAA,UAAU,EAAE,GAAG;AACZ,SAAA,MAAM,EAAE;AACR,SAAA,OAAO,EAAE;AACT,SAAA,QAAQ,EAAE;SACV,QAAQ,CAAC,wBAAwB,CAAC;AACrC,IAAA,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC;AAC7E,IAAA,cAAc,EAAE,GAAG;AAChB,SAAA,MAAM,EAAE;AACR,SAAA,OAAO,EAAE;SACT,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,wBAAwB,CAAC;AACrC,IAAA,eAAe,EAAE,GAAG;AACjB,SAAA,MAAM,EAAE;AACR,SAAA,OAAO,EAAE;SACT,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,wBAAwB,CAAC;AACrC,IAAA,eAAe,EAAE,GAAG;AACjB,SAAA,MAAM,EAAE;AACR,SAAA,OAAO,EAAE;SACT,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,wBAAwB,CAAC;AACrC,IAAA,uBAAuB,EAAE,GAAG;AACzB,SAAA,MAAM,EAAE;AACR,SAAA,OAAO,EAAE;SACT,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,wBAAwB,CAAC;EACtC;AAEK,IAAA,4BAA4B,GAAG,GAAG,CAAC,MAAM,CAAC,8BAA8B;;AC5B9E,IAAM,8BAA8B,GAAG,UACrC,QAAmC,IACgB,OAAA;eAEjD,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,eAAe,EACxB,UAAU,EAAE,IAAI,EAAA,EACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,YAAY,CAAA;AAGzB,IAAA,QAAA,CAAA,EAAA,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,UAAU,EAChB,UAAU,EAAE,IAAI,IACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,QAAQ,CAAA;eAGrB,IAAI,EAAE,aAAa,EACnB,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,IAAI,EAAA,EACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,WAAW,CAAA;eAGxB,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,cAAc,EAC3B,kBAAkB,EAAE,aAAa,EAAA,EAC9B,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,YAAY,CAAA;eAGzB,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,IAAI,EAAA,EACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,OAAO,CAAA;eAGpB,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,cAAc,EAC3B,kBAAkB,EAAE,SAAS,EAAA,EAC1B,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,QAAQ,CAAA;eAGrB,IAAI,EAAE,aAAa,EACnB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,kBAAkB,EACxB,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,WAAW,CAAA;eAGxB,IAAI,EAAE,eAAe,EACrB,KAAK,EAAE,gBAAgB,EACvB,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,cAAc,EAC3B,kBAAkB,EAAE,aAAa,EAAA,EAC9B,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,aAAa,CAAA;AAE7B,CAAA,CAAA;;ACvEY,IAAA,iCAAiC,GAAG;IAC/C,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IAC7D,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IACzD,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;AAC5D,IAAA,YAAY,EAAE,wBAAwB,CAAC,aAAa,CAAC;IACrD,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;AACxD,IAAA,QAAQ,EAAE,wBAAwB,CAAC,SAAS,CAAC;EAC9C;AAEK,IAAA,+BAA+B,GAAG,GAAG,CAAC,MAAM,CAChD,iCAAiC;;ACTnC,IAAM,2BAA2B,GAAG,UAClC,QAAmC,IACa,OAAA;eAE9C,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,0BAA0B,EAChC,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,WAAW,EACrB,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,KAAK,CAAA;eAGlB,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,gCAAgC,EACtC,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,WAAW,EACrB,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,WAAW,CAAA;eAGxB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,wBAAwB,EAC9B,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,WAAW,EACrB,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,GAAG,CAAA;eAGhB,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,4BAA4B,EAClC,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,WAAW,EACrB,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,OAAO,CAAA;AAEvB,CAAA,CAAA;;AC9BD,IAAM,kBAAkB,GAAG;AACzB,IAAA,IAAI,EAAE,GAAG;CACV,CAAA;AAED,IAAM,2BAA2B,GAAG,UAClC,QAAmC,EACS,EAAA,OAAA,aAAA,CAAA;eAE1C,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,sBAAsB,EACnC,UAAU,EAAE,kBAAkB,EAAA,EAC3B,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,QAAQ,CAAA;eAGrB,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,sBAAsB,EACnC,UAAU,EAAE,kBAAkB,EAAA,EAC3B,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,YAAY,CAAA;eAGzB,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,sBAAsB,EACnC,UAAU,EAAE,kBAAkB,EAAA,EAC3B,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,WAAW,CAAA;AAGxB,IAAA,QAAA,CAAA,EAAA,UAAU,EAAE,IAAI,EAChB,WAAW,EAAE,aAAa,EAC1B,IAAI,EAAE,iBAAiB,IACpB,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,eAAe,CAAA;AAE3B,CAAA,EAAA,yBAAyB,CAAC,QAAQ,CAAC,EAAA,IAAA,CAAA,CAAA;;ACvC3B,IAAA,0BAA0B,GAAG;IACxC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;AACxD,IAAA,kBAAkB,EAAE,GAAG,CAAC,MAAM,CAAC;QAC7B,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;KACpD,CAAC;AACF,IAAA,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC;QAClB,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;KACpD,CAAC;EACH;AAEK,IAAA,wBAAwB,GAAG,GAAG,CAAC,MAAM,CAAC,0BAA0B;;ACRtE,IAAM,wBAAwB,GAAG,UAC/B,QAAmC,IACY,OAAA;eAE7C,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,IAAI,EAAA,EACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,UAAU,CAAA;AAGvB,IAAA,QAAA,CAAA,EAAA,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,cAAc,EAC3B,kBAAkB,EAAE,YAAY,EAChC,KAAK,EAAE,kBAAkB,EACtB,EAAA,QAAQ,KAAR,IAAA,IAAA,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,YAAY,CAAA;eAGzB,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,IAAI,EAAA,EACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,YAAY,CAAA;AAGzB,IAAA,QAAA,CAAA,EAAA,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,cAAc,EAC3B,kBAAkB,EAAE,cAAc,EAClC,KAAK,EAAE,kBAAkB,EACtB,EAAA,QAAQ,KAAR,IAAA,IAAA,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,cAAc,CAAA;eAG3B,IAAI,EAAE,aAAa,EACnB,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,IAAI,EAAA,EACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,WAAW,CAAA;AAGxB,IAAA,QAAA,CAAA,EAAA,IAAI,EAAE,eAAe,EACrB,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,cAAc,EAC3B,kBAAkB,EAAE,aAAa,EACjC,KAAK,EAAE,kBAAkB,EACtB,EAAA,QAAQ,KAAR,IAAA,IAAA,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,aAAa,CAAA;eAG1B,IAAI,EAAE,iBAAiB,EACvB,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,IAAI,EAAA,EACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,eAAe,CAAA;AAG5B,IAAA,QAAA,CAAA,EAAA,IAAI,EAAE,mBAAmB,EACzB,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,cAAc,EAC3B,kBAAkB,EAAE,iBAAiB,EACrC,KAAK,EAAE,kBAAkB,EACtB,EAAA,QAAQ,KAAR,IAAA,IAAA,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,iBAAiB,CAAA;AAEjC,CAAA,CAAA;;ACzEY,IAAA,6BAA6B,GAAG;IAC3C,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;AACzD,IAAA,YAAY,EAAE,wBAAwB,CAAC,YAAY,CAAC;IACpD,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;AAC3D,IAAA,cAAc,EAAE,wBAAwB,CAAC,cAAc,CAAC;IACxD,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;AAC1D,IAAA,aAAa,EAAE,wBAAwB,CAAC,aAAa,CAAC;IACtD,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;AAC9D,IAAA,iBAAiB,EAAE,wBAAwB,CAAC,iBAAiB,CAAC;EAC/D;AAEK,IAAA,2BAA2B,GAAG,GAAG,CAAC,MAAM,CAAC,6BAA6B;;ACV5E,IAAM,aAAa,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAA;AAEnC,IAAA,uBAAuB,GAAG,UAC9B,QAAmC,EAAA;;IACK,OAAA;AAEtC,QAAA,QAAA,CAAA,EAAA,IAAI,EAAE,iBAAiB,EACvB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,IAAI,EACb,EAAA,CAAA,EAAA,GAAA,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,KAAK,CAAA;AAG7B,QAAA,QAAA,CAAA,EAAA,IAAI,EAAE,uBAAuB,EAC7B,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,IAAI,EACb,EAAA,CAAA,EAAA,GAAA,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,WAAW,CAAA;AAGnC,QAAA,QAAA,CAAA,EAAA,IAAI,EAAE,eAAe,EACrB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,IAAI,EACb,EAAA,CAAA,EAAA,GAAA,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,GAAG,CAAA;AAG3B,QAAA,QAAA,CAAA,EAAA,IAAI,EAAE,mBAAmB,EACzB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,IAAI,EACb,EAAA,CAAA,EAAA,GAAA,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,OAAO,CAAA;KAElC,CAAA;;;ACtCY,IAAA,sBAAsB,GAAG;AACpC,IAAA,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC;AACpB,QAAA,KAAK,EAAE,oBAAoB;AAC3B,QAAA,WAAW,EAAE,oBAAoB;AACjC,QAAA,GAAG,EAAE,oBAAoB;AACzB,QAAA,OAAO,EAAE,oBAAoB;KAC9B,CAAC;EACH;AAEK,IAAA,oBAAoB,GAAG,GAAG,CAAC,MAAM,CAAC,sBAAsB;;ACRxD,IAAA,mCAAmC,GAAG,UAC1C,QAAmC,EAAA;;IACiB,OAAA;AAClD,QAAA,QAAA,CAAA,EAAA,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,iBAAiB,EAAK,EAAA,CAAA,EAAA,GAAA,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,IAAI,0CAAE,IAAI,CAAA;AACpE,QAAA,QAAA,CAAA,EAAA,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,eAAe,EAAK,EAAA,CAAA,EAAA,GAAA,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,IAAI,0CAAE,QAAQ,CAAA;mBAE1E,IAAI,EAAE,uBAAuB,EAC7B,KAAK,EAAE,kBAAkB,EACzB,IAAI,EAAE,EAAE,IACL,CAAA,EAAA,GAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,gBAAgB,0CAAE,IAAI,CAAA;AAGnC,QAAA,QAAA,CAAA,EAAA,IAAI,EAAE,wBAAwB,EAC9B,KAAK,EAAE,OAAO,EACX,EAAA,CAAA,EAAA,GAAA,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,gBAAgB,0CAAE,KAAK,CAAA;AAGpC,QAAA,QAAA,CAAA,EAAA,IAAI,EAAE,2BAA2B,EACjC,KAAK,EAAE,UAAU,EACd,EAAA,CAAA,EAAA,GAAA,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,gBAAgB,0CAAE,QAAQ,CAAA;mBAGvC,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,aAAa,EACnB,EAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,MAAM,CAAA;AAGnB,QAAA,QAAA,CAAA,EAAA,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,OAAO,IACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,SAAS,CAAA;KAEzB,CAAA;;;ACnCY,IAAA,kCAAkC,GAAG;AAChD,IAAA,SAAS,EAAE,sBAAsB,CAAC,WAAW,CAAC;EAC/C;AAEK,IAAA,gCAAgC,GAAG,GAAG;AACzC,KAAA,MAAM,EAAE;KACR,KAAK,CAAC,kCAAkC,EAAE,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;;ACEnE,IAAA,oBAAoB,GAAG,UAC3B,QAAiB,EACjB,IAA0C,EAC1C,OAAwD,EACxD,QAAmC,IACM,OACtC,aAAA,CAAA,aAAA,CAAA,aAAA,CAAA,aAAA,CAAA,aAAA,CAAA,aAAA,CAAA,aAAA,CAAA,EAAA,EAAA,qBAAqB,CAAC,QAAQ,EAAA,QAAA,CAAA,EAC/B,KAAK,EAAE,cAAc,EACrB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,iBAAiB,EAC1B,YAAY,EAAE,OAAO,EACrB,UAAU,EAAE,IAAI,IACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,IAAI,CACjB,CAAA,EAAA,IAAA,CAAA,EAAA;AAEA,IAAA,QAAA,CAAA,EAAA,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,KAAK,EACX,IAAI,EAAA,IAAA,EACJ,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,uBAAuB,EACpC,UAAU,EAAE,IAAI,EAAA,EACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,GAAG,CAAA;AAEf,CAAA,EAAA,KAAA,CAAA,EAAA,qBAAqB,CAAC,IAAI,KAAK,QAAQ,EAAA,QAAA,CAAA,EACxC,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,IAAI,IACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,IAAI,EACjB,EACC,IAAA,CAAA,EAAA,qBAAqB,CAAC,IAAI,KAAK,QAAQ,EAAA,QAAA,CAAA,EACxC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,cAAc,EACpB,IAAI,EAAE,CAAC,IACJ,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,YAAY,CACzB,CAAA,EAAA,IAAA,CAAA,EACC,qBAAqB,CAAC,IAAI,KAAK,QAAQ,EAAA,QAAA,CAAA,EACxC,KAAK,EAAE,QAAQ,EACf,IAAI,EAAE,kBAAkB,EACxB,IAAI,EAAE,QAAQ,EACd,IAAI,EAAE,CAAC,EAAA,EACJ,QAAQ,KAAR,IAAA,IAAA,QAAQ,uBAAR,QAAQ,CAAE,gBAAgB,CAC7B,CAAA,EAAA,IAAA,CAAA,EAAA;AAEA,IAAA,QAAA,CAAA,EAAA,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,aAAa,EACnB,UAAU,EAAE,IAAI,IACb,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,WAAW,CAAA;AAEvB,CAAA,EAAA,KAAA,CAAA,EAAA,qBAAqB,CAAC,IAAI,KAAK,QAAQ,EACxC,QAAA,CAAA,EAAA,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,uBAAuB,EAAA,EACjC,QAAQ,KAAR,IAAA,IAAA,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,WAAW,CACxB,CAAA,EAAA,IAAA,CAAA,CAAA;;AC/DE,IAAA,uBAAuB,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC;AACjD,IAAA,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE;AAClB,IAAA,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC;QACd,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;KACpD,CAAC;IACF,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE;QAC9B,EAAE,EAAE,UAAC,KAA+B,EAAA,EAAK,OAAA,KAAK,KAAK,aAAa,CAAA,EAAA;AAChE,QAAA,IAAI,EAAE,UAAC,IAAI,EAAA,EAAK,OAAA,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAA,EAAA;KACtD,CAAC;AACH,CAAA;;ACTD,IAAM,yBAAyB,GAAG;IAChC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;CACxD,CAAA;AAED,IAAM,4BAA4B,GAAG,UAAC,YAAsB,EAAA;AAC1D,IAAA,IAAM,YAAY,GAAG,0BAA0B,CAAC,YAAY,CAAC,CAAA;AAE7D,IAAA,OAAO,GAAG,CAAC,MAAM,EAAE,CAAC,KAAK,uBACpB,yBAAyB,CAAA,EACzB,MAAM,CAAC,MAAM,OAAb,MAAM,EAAA,aAAA,CAAA,CAAQ,EAAE,CAAK,EAAA,YAAY,WACpC,CAAA;AACJ,CAAC;;ACLD,IAAM,uBAAuB,GAAG,UAC9B,QAAkC,EAClC,cAAoB,EACiC,EAAA,OAAA,aAAA,CAAA,aAAA,CAAA,EAAA,EAClD,6BAA6B,CAAC,QAAQ,EAAE,cAAc,CAAC,EAAA,IAAA,CAAA,EAAA;eAExD,KAAK,EAAE,iBAAiB,EACxB,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,EAChB,EAAA,cAAc,aAAd,cAAc,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAd,cAAc,CAAE,SAAS,CAAA;eAG5B,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,SAAS,EACnB,EAAA,cAAc,aAAd,cAAc,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAd,cAAc,CAAE,YAAY,CAAA;AAdoB,CAAA,EAAA,KAAA,CAAA,CAAA;;ACLvD,IAAM,cAAc,GAAG,UAAC,KAA0B,EAAA;IACxC,IAAA,KAAK,GAAoB,KAAK,CAAA,KAAzB,EAAE,aAAa,GAAK,KAAK,CAAA,aAAV,CAAU;AAC9B,IAAA,IAAA,QAAQ,GAAmB,KAAK,CAAA,QAAxB,EAAE,IAAI,GAAa,KAAK,CAAA,IAAlB,EAAE,MAAM,GAAK,KAAK,OAAV,CAAU;AAChC,IAAA,IAAA,YAAY,GAAqD,KAAK,aAA1D,EAAE,cAAc,GAAqC,KAAK,CAAA,cAA1C,EAAE,cAAc,GAAqB,KAAK,CAA1B,cAAA,EAAE,cAAc,GAAK,KAAK,eAAV,CAAU;AAE9E,IAAA,IAAM,WAAW,GAAG;QAClB,YAAY;QACZ,cAAc;QACd,cAAc;QACd,cAAc;AACf,KAAA;SACE,MAAM,CAAC,UAAC,KAAK,EAAK,EAAA,OAAA,OAAO,KAAK,KAAK,WAAW,CAA5B,EAA4B,CAAC;SAC/C,GAAG,CAAC,UAAC,KAAK,EAAA,EAAK,OAAA,KAAK,CAAA,EAAA,CAAC;SACrB,IAAI,CAAC,KAAK,CAAC,CAAA;AAEd,IAAA,IAAM,oBAAoB,GAAG,YAAA;AAC3B,QAAA,OAAA,CAAC,CAAC,UAAU,CAAC,EAAG,CAAA,MAAA,CAAA,IAAI,GAAG,UAAG,IAAI,EAAA,GAAA,CAAG,GAAG,EAAE,CAAG,CAAA,MAAA,CAAA,QAAQ,WAAQ,CAAC,CAAA;AAA1D,KAA0D,CAAA;IAE5D,IAAM,KAAK,GAAG,aAAa;AACzB,UAAE,aAAa,CAAC,QAAS,EAAE,IAAI,CAAC;UAC9B,oBAAoB,EAAE,CAAA;AAE1B,IAAA,QACEA,IAAA,CAAC,OAAO,EAAA,QAAA,CAAA,EAAA,aAAA,EAAa,gBAAgB,EAAC,IAAI,EAAC,GAAG,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,SAAA,EACzC,KAAK,EAAA,IAAA,EAAI,MAAM,EAAI,IAAA,EAAA,GAAG,EACzBA,IAAA,CAAC,YAAY,EAAA,EAAA,QAAA,EAAA,CACV,WAAW,EAAA,GAAA,EAAG,cAAc,CAAC,KAAK,CAAC,QAAS,CAAC,CACjC,EAAA,CAAA,CAAA,EAAA,CAAA,CACP,EACX;AACH,CAAC,CAAA;AAID,IAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAAC,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,yBAAA,CAAA,EAAA,CAAA,yBAE/B,IAAA,CAAA;;;ACnCK,IAAA,gBAAgB,GAAG,UAAC,KAA4B,EAAA;;AAC5C,IAAA,IAAA,QAAQ,GAAsC,KAAK,SAA3C,EAAE,SAAS,GAA2B,KAAK,CAAA,SAAhC,EAAE,KAAK,GAAoB,KAAK,CAAzB,KAAA,EAAE,aAAa,GAAK,KAAK,cAAV,CAAU;IAC3D,IAAM,WAAW,GAAG,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,SAAS,CAAC,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,MAAM,CAClD,UAAC,KAAmC,EAAA,EAAK,OAAA,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAA,EAAA,CACrE,CAAA;IAED,IAAI,EAAC,WAAW,KAAA,IAAA,IAAX,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,WAAW,CAAE,MAAM,CAAA;AAAE,QAAA,OAAO,IAAI,CAAA;AAErC,IAAA,QACED,IAAA,CAACE,eAAa,EAAA,QAAA,CAAA,EAAA,aAAA,EAAa,kBAAkB,EAAA,EAAA,EAAA,QAAA,EAAA,CAC3CF,IAAC,CAAA,YAAY,EAAC,QAAA,CAAA,EAAA,SAAS,EAAC,IAAA,EAAA,UAAU,EAAC,QAAQ,EAAA,EAAA,EAAA,QAAA,EAAA,CACzCG,GAAC,CAAA,UAAU,EAAG,EAAA,CAAA,EACdA,GAAC,CAAA,OAAO,aAAC,IAAI,EAAC,GAAG,EAAC,KAAK,EAAC,QAAQ,EAAA,EAAA,EAAA,QAAA,EAC7B,KAAK,IAAI,mCAAmC,EACrC,CAAA,CAAA,CAAA,EAAA,CAAA,CACG,EAEd,WAAW,CAAC,GAAG,CAAC,UAAC,KAAmC,EAAA,EAAK,QACxDA,GAAC,CAAA,cAAc,IAEb,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,KAAK,EAAA,EAFP,KAAK,CAAC,MAAM,CAGjB,EALsD,EAMzD,CAAC,CAAA,EAAA,CAAA,CACY,EACjB;AACH,EAAC;AAID,IAAMD,eAAa,GAAG,MAAM,CAAC,GAAG,CAAAD,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,+CAAA,EAAA,kDAAA,CAAA,EAAA,CAAA,+CAEV,EAA2B,kDAGhD,CAHqB,CAAA,CAAA,EAAA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAGhD,CAAA;AAED,IAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,kKAAA,+EAK1B,EAAwB,UAEnC,CAFW,CAAA,CAAA,EAAA,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAEnC,CAAA;AAED,IAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAAG,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,2BAAA,CAAA,EAAA,CAAA,2BAEhC,CAAA,CAAA,CAAA,CAAA,CAAA;;;ACtCD,SAAS,wBAAwB,CAAC,KAAoC,EAAA;;AAC5D,IAAA,IAAA,QAAQ,GAAuB,KAAK,CAAA,QAA5B,EAAE,KAAK,GAAgB,KAAK,CAAA,KAArB,EAAE,SAAS,GAAK,KAAK,UAAV,CAAU;AAC5C,IAAA,IAAM,aAAa,GAAG,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,SAAS,CAAC,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAG,KAAK,CAAC,CAAA;IAEvD,IAAM,aAAa,GAAG,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,aAAa,CAAA;AACxE,IAAA,IAAM,WAAW,GAAG,QAAQ,KAAK,OAAO,GAAG,MAAM,GAAG,IAAI,CAAA;IACxD,IAAM,gBAAgB,GAAG,aAAa,GAAG,WAAW,GAAG,IAAI,CAAA;IACrD,IAAA,EAAA,GAA4B,QAAQ,CAExC,CAAA,aAAa,KAAb,IAAA,IAAA,aAAa,uBAAb,aAAa,CAAE,IAAI,KAAI,gBAAgB,CAAC,EAFnC,SAAS,QAAA,EAAE,YAAY,QAEY,CAAA;IAE1C,IAAM,WAAW,GAAG,uBAAuB,CAAC;AAC1C,QAAA,QAAQ,EAAA,QAAA;AACR,QAAA,SAAS,EAAA,SAAA;AACV,KAAA,CAAC,CAAA;IACF,IAAM,eAAe,GAAG,WAAW;AAChC,SAAA,MAAM,CAAC,UAAC,KAAK,EAAA,EAAK,OAAA,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAvB,EAAuB,CAAC;SAC1C,GAAG,CAAC,UAAC,KAAK,EAAK,EAAA,OAAA,KAAK,CAAC,IAAI,CAAA,EAAA,CAAC,CAAA;AAC7B,IAAA,IAAM,yBAAyB,GAC7B,4BAA4B,CAAC,eAAe,CAAC,CAAA;IAC/C,IAAM,IAAI,GAAG,OAAO,CAClB,YAAA;AACE,QAAA,OAAA,OAAO,CAA+B;AACpC,YAAA,QAAQ,EAAE,WAAW,CAAC,yBAAyB,CAAC;YAChD,aAAa,EAAA,QAAA,CAAA,EAAA,EAAO,aAAa,CAAE;AACnC,YAAA,MAAM,EAAE,aAA6C;SACtD,CAAC,CAAA;AAJF,KAIE,EACJ,CAAC,yBAAyB,CAAC,CAC5B,CAAA;IAED,IAAM,YAAY,GAAG,UAAC,IAA6B,EAAA;AACjD,QAAA,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAO,QAAA,CAAA,QAAA,CAAA,EAAA,EAAA,IAAI,CAAE,EAAA,EAAA,QAAQ,EAAA,QAAA,EAAA,CAAA,EAAI,KAAK,CAAC,CAAA;QACrE,SAAS,CAAC,QAAQ,EAAE,CAAA;AACtB,KAAC,CAAA;IAED,QACED,IAAC,WAAW,EAAA,QAAA,CAAA,EACV,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,YAAmB,EAC7B,KAAK,EAAC,MAAM,EACZ,OAAO,EAAC,MAAM,EACd,YAAY,EAAA,IAAA,EACZ,eAAe,EAAE,SAAS,CAAC,QAAQ,EAAA,EAAA,EAAA,QAAA,EAEnCH,KAAC,IAAI,EAAA,QAAA,CAAA,EAAC,SAAS,EAAC,IAAA,EAAA,OAAO,EAAE,CAAC,EAAA,EAAA,EAAA,QAAA,EAAA,CACxBG,IAAC,IAAI,EAAA,QAAA,CAAA,EAAC,IAAI,EAAC,IAAA,EAAA,EAAE,EAAE,EAAE,EACf,EAAA,EAAA,QAAA,EAAAA,GAAA,CAAC,gBAAgB,EAAC,EAAA,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAS,GAAI,EAC1D,CAAA,CAAA,EAEN,aAAa,KACZA,IAAC,IAAI,EAAA,QAAA,CAAA,EAAC,IAAI,EAAC,IAAA,EAAA,EAAE,EAAE,EAAE,EAAA,EAAA,EAAA,QAAA,EACfA,IAAC,mBAAmB,EAAA,EAClB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,YAAY,EAAA,CAC1B,IACG,CACR,EAEA,WAAW,CAAC,GAAG,CAAC,UAAC,EAAkB,EAAA;AAAhB,oBAAA,IAAA,IAAI,GAAA,EAAA,CAAA,IAAA,EAAK,KAAK,GAAA,MAAA,CAAA,EAAA,EAAhB,QAAkB,CAAF,CAAA;oBAAO,QACvCA,GAAC,CAAA,IAAI,EAAC,QAAA,CAAA,EAAA,IAAI,EAAkB,IAAA,EAAA,EAAE,EAAE,IAAI,IAAI,CAAC,EACvC,EAAA,EAAA,QAAA,EAAAA,GAAA,CAAC,WAAW,EAAA,QAAA,CAAA,EAAC,IAAI,EAAE,IAAI,EAAA,EAAM,KAAK,CAAA,CAAI,EADxB,CAAA,EAAA,KAAK,CAAC,IAAI,CAEnB,EACR;iBAAA,CAAC,CAAA,EAAA,CAAA,CACG,EACK,CAAA,CAAA,EACf;AACH;;ACjFA,IAAM,iBAAiB,GAAG,UACxB,SAAsD,EACtD,cAA2D,EAC3D,SAAoC,EAAA;IAEpC,IAAM,MAAM,+DACP,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA,SAAS,KAAA,IAAA,IAAT,SAAS,KAAT,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,SAAS,CAAE,KAAK,KAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAA,IAAA,CAAA,EACtD,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA,SAAS,KAAT,IAAA,IAAA,SAAS,uBAAT,SAAS,CAAE,WAAW,KAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,SAClE,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA,SAAS,KAAA,IAAA,IAAT,SAAS,KAAT,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,SAAS,CAAE,GAAG,KAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAA,IAAA,CAAA,EAClD,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA,SAAS,KAAT,IAAA,IAAA,SAAS,uBAAT,SAAS,CAAE,OAAO,KAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAA,IAAA,CAC9D,CAAA;IACD,OAAO,MAAM,CAAC,GAAG,CAAC,UAAC,QAAQ,EAAE,KAAK,EAAA,EAAK,OAAA;AACrC,QAAAA,GAAA,CAAC,SAAS,EAAA,EAA6B,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAA,EAAvD,aAAc,CAAA,MAAA,CAAA,KAAK,CAAE,CAAsC;AAC3E,QAAAA,GAAA,CAAC,cAAc,EAAA,EAEb,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAAA,EAFb,cAAe,CAAA,MAAA,CAAA,KAAK,CAAE,CAG3B;KACH,CAPsC,EAOtC,CAAC,CAAA;AACJ;;ACnBM,IAAA,mBAAmB,GAAG,UAC1B,IAAqB,EACrB,QAAuC,EACvC,WAA0C,EACvC,EAAA,OAAA,aAAA,CAAA,aAAA,CAAA,aAAA,CAAA,aAAA,CAAA,aAAA,CAAA,aAAA,CAAA,aAAA,CAAA,aAAA,CAAA,aAAA,CAAA,aAAA,CAAA;AACD,IAAA,QAAA,CAAA,EAAA,IAAI,EAAE,SAAS,EAAK,EAAA,QAAQ,CAAC,OAAO,CAAA;AACnC,CAAA,EAAA,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA,WAAW,KAAA,IAAA,IAAX,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAX,WAAW,CAAE,cAAc,KAAI,CAAC,CAAC,CAAC;KACnD,IAAI,CAAC,CAAC,CAAC;AACP,KAAA,GAAG,CAAC,UAAC,CAAC,EAAE,KAAK,EAAA,EAAK,QAAA,QAAA,CAAA,EACjB,IAAI,EAAE,SAAS,EAAA,EACZ,QAAQ,CAAC,OAAO,CAAC,CAAA,WAAW,KAAX,IAAA,IAAA,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,WAAW,CAAE,cAAc,IAAG,EAAA,CAAA,MAAA,CAAG,KAAK,GAAG,CAAC,EAAA,GAAA,CAAG,GAAG,EAAE,CAAC,CAAA,EAFtD,EAGjB,CAAC,EAAA,IAAA,CAAA,EACF,IAAI,KAAK,CACV,IAAI,CAAC,GAAG,CACN,MAAM,CAAC,CAAA,WAAW,KAAA,IAAA,IAAX,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAX,WAAW,CAAE,WAAW,KAAI,CAAC,CAAC;AACnC,IAAA,MAAM,CAAC,CAAA,WAAW,KAAA,IAAA,IAAX,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,WAAW,CAAE,cAAc,KAAI,CAAC,CAAC,EAC1C,CAAC,CACF,CACF;KACE,IAAI,CAAC,CAAC,CAAC;KACP,GAAG,CAAC,UAAC,CAAC,EAAE,KAAK,EAAK,EAAA,QACjB,QAAA,CAAA,EAAA,IAAI,EAAE,MAAM,IACT,QAAQ,CAAC,IAAI,CACd,CAAA,WAAW,aAAX,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAX,WAAW,CAAE,WAAW;AACtB,MAAE,EAAG,CAAA,MAAA,CAAA,KAAK,GAAG,CAAC,IAAI,CAAA,WAAW,KAAX,IAAA,IAAA,WAAW,uBAAX,WAAW,CAAE,cAAc,KAAI,CAAC,CAAC,EAAG,GAAA,CAAA;MACpD,EAAE,CACP,CACD,EAAA,EAAA,CAAC,EAAA,IAAA,CAAA,EACF,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA,WAAW,KAAX,IAAA,IAAA,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,WAAW,CAAE,eAAe,KAAI,CAAC,CAAC,CAAC;KACpD,IAAI,CAAC,CAAC,CAAC;KACP,GAAG,CAAC,UAAC,CAAC,EAAE,KAAK,EAAK,EAAA,QACjB,QAAA,CAAA,EAAA,IAAI,EAAE,UAAU,EACb,EAAA,QAAQ,CAAC,QAAQ,CAAC,CAAA,WAAW,KAAA,IAAA,IAAX,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAX,WAAW,CAAE,eAAe,IAAG,EAAG,CAAA,MAAA,CAAA,KAAK,GAAG,CAAC,EAAA,GAAA,CAAG,GAAG,EAAE,CAAC,CAAA,EAFxD,EAGjB,CAAC,EAAA,IAAA,CAAA,EACF,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA,WAAW,KAAA,IAAA,IAAX,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAX,WAAW,CAAE,eAAe,KAAI,CAAC,CAAC,CAAC;KACpD,IAAI,CAAC,CAAC,CAAC;KACP,GAAG,CAAC,UAAC,CAAC,EAAE,KAAK,EAAK,EAAA,QACjB,QAAA,CAAA,EAAA,IAAI,EAAE,QAAQ,EACX,EAAA,QAAQ,CAAC,MAAM,CAAC,CAAA,WAAW,KAAA,IAAA,IAAX,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAX,WAAW,CAAE,eAAe,IAAG,EAAG,CAAA,MAAA,CAAA,KAAK,GAAG,CAAC,EAAA,GAAA,CAAG,GAAG,EAAE,CAAC,CAAA,EAFtD,EAGjB,CAAC,EAAA,IAAA,CAAA,EACF,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA,WAAW,KAAA,IAAA,IAAX,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAX,WAAW,CAAE,uBAAuB,KAAI,CAAC,CAAC,CAAC;KAC5D,IAAI,CAAC,CAAC,CAAC;AACP,KAAA,GAAG,CAAC,UAAC,CAAC,EAAE,KAAK,EAAA,EAAK,QACjB,QAAA,CAAA,EAAA,IAAI,EAAE,mBAAmB,IACtB,QAAQ,CAAC,gBAAgB,CAC1B,CAAA,WAAW,KAAX,IAAA,IAAA,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,WAAW,CAAE,uBAAuB,IAAG,EAAA,CAAA,MAAA,CAAG,KAAK,GAAG,CAAC,EAAG,GAAA,CAAA,GAAG,EAAE,CAC5D,CACD,EAAA,EAAA,CAAC,EAAA,IAAA,CAAA,EAAA;AACH,IAAA,QAAA,CAAA,EAAA,IAAI,EAAE,QAAQ,EAAK,EAAA,QAAQ,CAAC,MAAM,CAAA;WACjC,qBAAqB,CAAC,IAAI,KAAK,SAAS,EAAA,QAAA,CAAA,EACzC,IAAI,EAAE,UAAU,EACb,EAAA,QAAQ,CAAC,QAAQ,EACpB,EACC,IAAA,CAAA,EAAA,qBAAqB,CAAC,IAAI,KAAK,SAAS,EACzC,QAAA,CAAA,EAAA,IAAI,EAAE,MAAM,EACT,EAAA,QAAQ,CAAC,IAAI,EAChB,EACC,IAAA,CAAA,EAAA,qBAAqB,CAAC,CAAC,EAAE,IAAI,KAAK,SAAS,KAAI,WAAW,KAAA,IAAA,IAAX,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAX,WAAW,CAAE,WAAW,CAAA,CAAC,EACzE,QAAA,CAAA,EAAA,IAAI,EAAE,SAAS,EACZ,EAAA,QAAQ,CAAC,OAAO,CACnB,CAAA,EAAA,IAAA,CAAA,EAAA;AACA,IAAA,QAAA,CAAA,EAAA,IAAI,EAAE,YAAY,EAAK,EAAA,QAAQ,CAAC,UAAU,CAAA;AAzDzC,CAAA,EAAA,KAAA,CAAA,CAAA;;ACAL,IAAM,wBAAwB,GAAG,UAAC,KAAoC,EAAA;IAC5D,IAAA,QAAQ,GAAY,KAAK,CAAA,QAAjB,EAAE,KAAK,GAAK,KAAK,CAAA,KAAV,CAAU;IAEjC,QACEA,GAAC,CAAAD,eAAa,EAAC,QAAA,CAAA,EAAA,MAAM,EAAE,QAAQ,CAAC,MAAM,EACpC,EAAA,EAAA,QAAA,EAAAF,IAAA,CAAC,IAAI,EAAA,QAAA,CAAA,EAAC,SAAS,EAAA,IAAA,EAAC,UAAU,EAAC,QAAQ,EAAA,EAAA,EAAA,QAAA,EAAA,CACjCG,GAAC,CAAA,OAAO,EAAC,QAAA,CAAA,EAAA,IAAI,EAAC,GAAG,EAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAC,QAAQ,EAAA,EAAA,EAAA,QAAA,EAC1C,KAAK,EAAA,CAAA,CACE,EAET,QAAQ,CAAC,MAAM,KAAK,WAAW,KAC9BH,IAAC,CAAA,iBAAiB,EACf,EAAA,QAAA,EAAA,CAAA,QAAQ,CAAC,MAAM,KAAK,QAAQ,IAC3BG,GAAC,CAAA,eAAe,EAAG,EAAA,CAAA,KAEnBA,GAAA,CAAC,eAAe,EAAA,EAAA,CAAG,CACpB,EACA,CAAC,CAAC,QAAQ,CAAC,OAAO,KACjBA,GAAA,CAAC,OAAO,EAAA,QAAA,CAAA,EACN,SAAS,EAAC,QAAQ,EAClB,OAAO,EACLH,IACE,CAAA,KAAA,EAAA,EAAA,QAAA,EAAA,CAAAG,GAAA,CAAC,OAAO,EAAA,QAAA,CAAA,EAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,QAAQ,EAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,CAAA,CAEvB,EACVA,GAAA,CAAC,aAAa,EAAA,QAAA,CAAA,EAAC,IAAI,EAAC,IAAI,EAAA,EAAA,EAAA,QAAA,EAAE,QAAQ,CAAC,OAAO,EAAA,CAAA,CAAiB,CACvD,EAAA,CAAA,EAAA,EAAA,EAAA,QAAA,EAGRA,GAAC,CAAA,iBAAiB,EAAG,EAAA,CAAA,EAAA,CAAA,CACb,CACX,CAAA,EAAA,CACiB,CACrB,CAAA,EAAA,CAAA,CACI,EACO,CAAA,CAAA,EACjB;AACH,CAAC,CAAA;AAID,IAAMD,eAAa,GAAG,MAAM,CAAC,GAAG,CAAqBD,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,kBAAA,EAAA,iDAAA,EAAA,uEAAA,EAAA,oFAAA,CAAA,EAAA,CAAA,kBACrC,EAGe,iDAET,EAA2B,uEAG1B,EAAoB,oFAM1C,CAAA,CAAA,CAAA,EAde,UAAC,EAAU,EAAA;AAAR,IAAA,IAAA,MAAM,GAAA,EAAA,CAAA,MAAA,CAAA;IACrB,OAAA,MAAM,KAAK,WAAW;AACpB,UAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM;AACjC,UAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAA;AAF3B,CAE2B,EAET,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAG1B,KAAK,CAAC,WAAW,CAAC,EAAE,CAM1C,CAAA;AAED,IAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAAI,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,0GAAA,CAAA,EAAA,CAAA,0GAOnC,IAAA,CAAA;AAED,IAAM,eAAe,GAAG,MAAM,CAAC,SAAS,CAAC,2GAAA,wBAE7B,EAA0B,UAErC,CAFW,CAAA,CAAA,EAAA,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAErC,CAAA;AAED,IAAM,eAAe,GAAG,MAAM,CAAC,UAAU,CAAC,4IAAA,yDAI9B,EAAwB,UAEnC,CAFW,CAAA,CAAA,EAAA,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAEnC,CAAA;AAED,IAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,CAAAC,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,wBAAA,CAAA,EAAA,CAAA,wBAEpC,CAAA,CAAA,CAAA,CAAA,CAAA;AAED,IAAM,iBAAiB,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA,gBAAA,KAAA,gBAAA,GAAA,oBAAA,CAAA,CAAA,4DAAA,EAAA,iBAAA,EAAA,UAAA,CAAA,EAAA,CAAA,4DAIjC,EAAuB,iBACrB,EAAyB,UAEtC,CAHW,CAAA,CAAA,EAAA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EACrB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAEtC,CAAA;;;AC5FD,IAAM,wBAAwB,GAAG,UAAC,KAAoC,EAAA;AAC5D,IAAA,IAAA,QAAQ,GAAiC,KAAK,SAAtC,EAAE,KAAK,GAA0B,KAAK,CAAA,KAA/B,EAAE,WAAW,GAAa,KAAK,CAAlB,WAAA,EAAE,MAAM,GAAK,KAAK,OAAV,CAAU;AAEtD,IAAA,IAAI,CAAC,QAAQ;AAAE,QAAA,OAAO,IAAI,CAAA;AAE1B,IAAA,QACEH,GAAA,CAAC,IAAI,EAAA,QAAA,CAAA,EAAC,IAAI,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EACRH,IAAC,CAAA,IAAI,EAAC,QAAA,CAAA,EAAA,SAAS,EAAC,IAAA,EAAA,UAAU,EAAC,QAAQ,EACjC,EAAA,EAAA,QAAA,EAAA,CAAAG,GAAA,CAAC,wBAAwB,EAAA,EAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAA,CAAI,EAC7D,QAAQ,CAAC,MAAM,KAAK,UAAU,KAC7BA,GAAC,CAAA,YAAY,EACX,QAAA,CAAA,EAAA,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,QAAQ,EAChB,OAAO,EAAE,MAAM,EACf,OAAO,EAAEA,GAAA,CAAC,UAAU,EAAA,EAAA,CAAG,EAEtB,EAAA,EAAA,QAAA,EAAA,WAAW,EACC,CAAA,CAAA,CAChB,CACI,EAAA,CAAA,CAAA,EAAA,CAAA,CACF,EACR;AACH,CAAC,CAAA;AAED,iCAAe,QAAQ,CAAC,wBAAwB,CAAC,CAAA;AAEjD,IAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAAF,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,+CAAA,EAAA,2EAAA,CAAA,EAAA,CAAA,+CAEZ,EAAoB,2EAK1C,KALsB,KAAK,CAAC,WAAW,CAAC,EAAE,CAK1C,CAAA;;;AClCD,IAAM,kBAAkB,GAAG,UAAC,KAA8B,EAAA;AAChD,IAAA,IAAA,cAAc,GACpB,KAAK,eADe,EAAE,gBAAgB,GACtC,KAAK,CAAA,gBADiC,EAAE,gBAAgB,GACxD,KAAK,CADmD,gBAAA,EAAE,WAAW,GACrE,KAAK,YADgE,CAChE;IACC,IAAA,WAAW,GAAoB,KAAK,CAAA,WAAzB,EAAE,aAAa,GAAK,KAAK,CAAA,aAAV,CAAU;AAE5C,IAAA,IAAI,CAAC,cAAc,IAAI,CAAC,gBAAgB;AAAE,QAAA,OAAO,IAAI,CAAA;IAErD,QACED,IAAC,CAAAE,eAAa,EAAC,QAAA,CAAA,EAAA,SAAS,QAAC,OAAO,EAAE,CAAC,EAAE,UAAU,EAAC,QAAQ,EACtD,EAAA,EAAA,QAAA,EAAA,CAAAC,GAAA,CAACI,0BAAwB,EAAA,EACvB,MAAM,EAAE,gBAAgB,EACxB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,cAAc,EACxB,KAAK,EAAE,WAAW,EAClB,CAAA,EACFJ,GAAC,CAAAI,0BAAwB,EACvB,EAAA,MAAM,EAAE,gBAAgB,EACxB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,EAAE,aAAa,EAAA,CACpB,CACY,EAAA,CAAA,CAAA,EACjB;AACH,CAAC,CAAA;AAED,YAAe,QAAQ,CAAC,kBAAkB,CAAC,CAAA;AAE3C,IAAML,eAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAAD,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,yBAAA,CAAA,EAAA,CAAA,yBAEjC,CAAA,CAAA,CAAA,CAAA,CAAA;;;AC7BD,IAAM,kBAAkB,GAAG,UAAC,KAA8B,EAAA;IAChD,IAAA,OAAO,GAAmB,KAAK,CAAA,OAAxB,EAAE,YAAY,GAAK,KAAK,CAAA,YAAV,CAAU;IACvC,QACED,KAAC,IAAI,EAAA,QAAA,CAAA,EAAC,SAAS,EAAC,IAAA,EAAA,UAAU,EAAC,QAAQ,EAChC,EAAA,EAAA,QAAA,EAAA,CAAA,OAAO,CAAC,UAAU,KACjBG,GAAC,CAAA,OAAO,aAAC,OAAO,EAAEA,GAAC,CAAA,OAAO,EAAC,QAAA,CAAA,EAAA,IAAI,EAAC,IAAI,EAAA,EAAA,EAAA,QAAA,EAAE,YAAY,EAAW,CAAA,CAAA,EAAA,EAAA,EAAA,QAAA,EAC3DA,IAAC,iBAAiB,EAAA,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,GAAI,EACpC,CAAA,CAAA,CACX,EACDH,IAAC,CAAA,kBAAkB,EACjB,EAAA,QAAA,EAAA,CAAAA,IAAA,CAAC,OAAO,EAAA,QAAA,CAAA,EAAC,IAAI,EAAC,GAAG,iBACd,OAAO,CAAC,OAAO,EAAG,GAAA,EAAA,OAAO,CAAC,IAAI,GAAG,KAAM,CAAA,MAAA,CAAA,OAAO,CAAC,IAAI,CAAE,GAAG,EAAE,CAAA,EAAA,CAAA,CACnD,EACT,CAAC,EAAE,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,YAAY,CAAC,KACnDA,IAAA,CAAC,cAAc,EAAC,QAAA,CAAA,EAAA,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,QAAQ,EAAA,EAAA,EAAA,QAAA,EAAA,CACrC,OAAO,CAAC,gBAAgB;AACvB,kCAAE,EAAA,CAAA,MAAA,CAAG,OAAO,CAAC,gBAAgB,EAAS,SAAA,CAAA;kCACpC,EAAE,EACL,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,YAAY,GAAG,UAAK,GAAG,EAAE,EAC7D,OAAO,CAAC,YAAY,CAAA,EAAA,CAAA,CACN,CAClB,CAAA,EAAA,CACkB,CAChB,EAAA,CAAA,CAAA,EACR;AACH,CAAC,CAAA;AAID,IAAM,iBAAiB,GAAG,MAAM,CAAC,WAAW,CAAC,gIAAA,6CAGjC,EAAwB,UAEnC,CAFW,CAAA,CAAA,EAAA,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAEnC,CAAA;AAED,IAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAAK,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,yBAAA,CAAA,EAAA,CAAA,yBAEpC,IAAA,CAAA;AAED,IAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,CAAAD,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,wBAAA,CAAA,EAAA,CAAA,wBAErC,CAAA,CAAA,CAAA,CAAA,CAAA;;;AC1CK,IAAA,qBAAqB,GAAG,UAAC,KAAiC,EAAA;IACtD,IAAA,SAAS,GAAsC,KAAK,CAA3C,SAAA,EAAE,IAAI,GAAgC,KAAK,CAAA,IAArC,EAAE,KAAK,GAAyB,KAAK,MAA9B,EAAE,QAAQ,GAAe,KAAK,CAApB,QAAA,EAAK,KAAK,GAAA,MAAA,CAAK,KAAK,EAAtD,CAA8C,WAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,CAAA,CAAF,CAAU;IAE5D,QACED,IAACK,YAAU,EAAA,QAAA,CAAA,EAAC,SAAS,EAAE,SAAS,EAC9B,EAAA,EAAA,QAAA,EAAAL,GAAA,CAAC,cAAc;;;;YAEb,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,cAAe,CAAA,MAAA,CAAA,KAAK,EAAQ,QAAA,CAAA,EAClC,KAAK,EAAEA,IAAC,kBAAkB,EAAA,QAAA,CAAA,EAAA,EAAK,KAAK,CAAA,CAAI,EACxC,QAAQ,EAAE,QAAQ,EAAA,CAClB,EACS,CAAA,CAAA,EACd;AACH,EAAC;AAUD,IAAMK,YAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAAP,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,wEAAA,CAAA,EAAA,CAAA,wEAI9B,CAAA,CAAA,CAAA,CAAA,CAAA;AAED,IAAM,cAAc,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAAI,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,uDAAA,CAAA,EAAA,CAAA,uDAIpD,CAAA,CAAA,CAAA,CAAA,CAAA;;;ACrCK,IAAA,eAAe,GAAG,UACtB,SAA6B,EAC7B,WAA0C,EAC1C,YAAsB,EACtB,MAAmB,EAAA;AAEnB,IAAA,IAAM,UAAU,GAAG,YAAA;AACjB,QAAA,IAAI,MAAM;AAAE,YAAA,MAAM,EAAE,CAAA;AACpB,QAAA,WAAW,CAAC,MAAM,CAAC,UAAU,EAAE,CAAA;AACjC,KAAC,CAAA;AAED,IAAA,IAAM,UAAU,GAAG,YAAA,EAAA,OAAA,SAAA,CAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,YAAA;;;;;AACb,oBAAA,IAAA,CAAA,YAAY,EAAZ,OAAY,CAAA,CAAA,YAAA,CAAA,CAAA,CAAA;AACV,oBAAA,IAAA,CAAA,EAAC,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,SAAS,CAAC,MAAM,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAM,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAM,CAAA,EAAjC,OAAiC,CAAA,CAAA,YAAA,CAAA,CAAA,CAAA;AACnC,oBAAA,OAAA,CAAA,CAAA,YAAM,WAAW,CAAC,WAAW,EAAE,CAAA,CAAA;;AAA/B,oBAAA,EAAA,CAAA,IAAA,EAA+B,CAAA;;;AAEjC,oBAAA,UAAU,EAAE,CAAA;;;oBACP,IAAI,YAAY,KAAK,KAAK;AAAE,wBAAA,UAAU,EAAE,CAAA;;;;;SAChD,CAAA;AAED,IAAA,SAAS,CAAC,YAAA;AACR,QAAA,UAAU,EAAE,CAAA;AACd,KAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;AAElB,IAAA,SAAS,CAAC,YAAA;;AACR,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,IAAI,EAAC,MAAA,CAAA,EAAA,GAAA,SAAS,CAAC,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,MAAM,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAM,CAAA,EAAE;YACtE,SAAS,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAA;AAC3D,SAAA;AACH,KAAC,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAA;AACxD;;AC3BA,IAAA,gBAAA,kBAAA,YAAA;AAKE,IAAA,SAAA,gBAAA,GAAA;QAAA,IAIC,KAAA,GAAA,IAAA,CAAA;AAED,QAAA,IAAA,CAAA,gBAAgB,GAAG,UACjB,WAAmB,EACnB,WAA0B,EAAA,EAAA,OAAA,SAAA,CAAA,KAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,YAAA;;;;;AAE1B,wBAAA,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAA;wBAET,OAAM,CAAA,CAAA,YAAA,EAAE,CACvB,eAAe,CAAC,cAAc,CAAC,WAAW,EAAE,WAAW,CAAC,CACzD,CAAA,CAAA;;AAFK,wBAAA,QAAQ,GAAG,EAEhB,CAAA,IAAA,EAAA,CAAA;wBAED,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAA;;;;aAC1D,CAAA;QAED,IAAiB,CAAA,iBAAA,GAAG,UAAC,WAAmC,EAAA;AACtD,YAAA,KAAI,CAAC,WAAW;AACd,gBAAA,CAAA,WAAW,KAAA,IAAA,IAAX,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAX,WAAW,CAAE,GAAG,CAAC,UAAC,OAAO,EAAK,EAAA,QAAC;oBAC7B,EAAE,EAAE,OAAO,CAAC,EAAE;oBACd,IAAI,EAAE,OAAO,CAAC,WAAW;oBACzB,OAAO,EAAE,OAAO,CAAC,YAAY;oBAC7B,YAAY,EAAE,OAAO,CAAC,WAAW;oBACjC,gBAAgB,EAAE,OAAO,CAAC,MAAM;oBAChC,UAAU,EAAE,OAAO,CAAC,SAAS;AAC9B,iBAAA,EAP6B,EAO5B,CAAC,KAAI,EAAE,CAAA;AACb,SAAC,CAAA;AA5BC,QAAA,IAAI,CAAC,WAAW,GAAG,EAAE,CAAA;AACrB,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,EAAE,CAAA;QAC1B,kBAAkB,CAAC,IAAI,CAAC,CAAA;KACzB;IA0BH,OAAC,gBAAA,CAAA;AAAD,CAAC,EAAA;;ACrCK,IAAA,cAAc,GAAG,UACrB,WAA0B,EAC1B,SAA6B,EAC7B,YAA8B,EAC9B,YAAsB,EACtB,MAAmB,EAAA;AAEnB,IAAA,IAAM,UAAU,GAAG,YAAA;AACjB,QAAA,IAAI,MAAM;AAAE,YAAA,MAAM,EAAE,CAAA;AACpB,QAAA,YAAY,CAAC,MAAM,CAAC,UAAU,EAAE,CAAA;AAClC,KAAC,CAAA;AAED,IAAA,IAAM,eAAe,GAAG,YAAA,EAAA,OAAA,SAAA,CAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,YAAA;;;;;AAClB,oBAAA,IAAA,EAAA,YAAY,IAAI,WAAW,CAAA,EAA3B,OAA2B,CAAA,CAAA,YAAA,CAAA,CAAA,CAAA;AACzB,oBAAA,IAAA,CAAA,EAAC,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,SAAS,CAAC,MAAM,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,WAAW,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAM,CAAA,EAAtC,OAAsC,CAAA,CAAA,YAAA,CAAA,CAAA,CAAA;oBACxC,OAAM,CAAA,CAAA,YAAA,YAAY,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA,CAAA;;AAA7D,oBAAA,EAAA,CAAA,IAAA,EAA6D,CAAA;;;AAE/D,oBAAA,UAAU,EAAE,CAAA;;;oBACP,IAAI,YAAY,KAAK,KAAK;AAAE,wBAAA,UAAU,EAAE,CAAA;;;;;SAChD,CAAA;AAED,IAAA,SAAS,CAAC,YAAA;AACR,QAAA,eAAe,EAAE,CAAA;AACnB,KAAC,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAA;AAE/B,IAAA,SAAS,CAAC,YAAA;;AACR,QAAA,IACE,CAAC,YAAY,CAAC,MAAM,CAAC,SAAS;YAC9B,EAAC,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,SAAS,CAAC,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,WAAW,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,MAAM,CAAA,EACtC;YACA,SAAS,CAAC,gBAAgB,CAAC;gBACzB,WAAW,EAAE,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,UAAC,OAAO,EAAA,EAAK,QAClD,QAAA,CAAA,QAAA,CAAA,EAAA,EAAA,OAAO,KACV,KAAK,EAAE,KAAK,EACZ,CAAA,EAAA,EAAA,CAAC;AACJ,aAAA,CAAC,CAAA;AACH,SAAA;AACH,KAAC,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAA;AAC/D;;ICpCa,qBAAqB,GAAG,UACnC,cAA2C,EAC3C,SAA2C,EAC3C,SAAsB,EAAA;IAEd,IAAA,gBAAgB,GAAkB,cAAc,CAAA,gBAAhC,EAAE,WAAW,GAAK,cAAc,CAAA,WAAnB,CAAmB;IAChD,IAAA,aAAa,GAAqB,SAAS,CAAA,aAA9B,EAAE,cAAc,GAAK,SAAS,CAAA,cAAd,CAAc;AAE3C,IAAA,IAAA,MAAM,GAAK,gBAAgB,CAAC,YAAY,OAAlC,CAAkC;AAChD,IAAA,IAAI,MAAM,IAAI,MAAM,CAAC,WAAW,KAAK,WAAW,EAAE;QAChD,gBAAgB,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAAA;AAC5E,KAAA;AACD,IAAA,gBAAgB,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;AACrC,IAAA,IAAI,SAAS;AAAE,QAAA,SAAS,EAAE,CAAA;AAC5B,EAAC;IAEY,sBAAsB,GAAG,UACpC,cAA2C,EAC3C,SAA2C,EAC3C,UAAuB,EAAA;AAEf,IAAA,IAAA,gBAAgB,GAAK,cAAc,CAAA,gBAAnB,CAAmB;IACnC,IAAA,aAAa,GAAqB,SAAS,CAAA,aAA9B,EAAE,cAAc,GAAK,SAAS,CAAA,cAAd,CAAc;AAEnD,IAAA,gBAAgB,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;AACtC,IAAA,gBAAgB,CAAC,YAAY,CAAC,SAAS,EAAE,CAAA;IACzC,gBAAgB,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAAA;AAC3E,IAAA,IAAI,UAAU;AAAE,QAAA,UAAU,EAAE,CAAA;AAC9B;;AC7BM,IAAA,iBAAiB,GAAG,UAAC,cAA2C,EAAA;;AAC5D,IAAA,IAAA,WAAW,GACjB,cAAc,YADG,EAAE,gBAAgB,GACnC,cAAc,CAAA,gBADqB,EAAE,WAAW,GAChD,cAAc,CADkC,WAAA,EAAE,YAAY,GAC9D,cAAc,aADgD,CAChD;IACV,IAAA,EAAA,GAAsC,QAAQ,CAAC,KAAK,CAAC,EAApD,cAAc,GAAA,EAAA,CAAA,CAAA,CAAA,EAAE,iBAAiB,GAAA,EAAA,CAAA,CAAA,CAAmB,CAAA;IACrD,IAAA,EAAA,GAAwC,QAAQ,CAAC,KAAK,CAAC,EAAtD,eAAe,GAAA,EAAA,CAAA,CAAA,CAAA,EAAE,kBAAkB,GAAA,EAAA,CAAA,CAAA,CAAmB,CAAA;AAC7D,IAAA,IAAM,SAAS,GAAG,gBAAgB,CAAC,YAAY,CAAA;IAC/C,IAAM,cAAc,GAAG,CAAA,EAAA,GAAA,SAAS,CAAC,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,IAAI,CAAA;IAC7C,IAAM,SAAS,GAAG,cAAc;AAC9B,UAAE,cAAc,KAAK,SAAS,IAAI,cAAc,KAAK,UAAU;UAC7D,SAAS,CAAA;AACb,IAAA,IAAM,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC,SAAS,CAAA;AACpD,IAAA,IAAM,aAAa,GAAG,WAAW,CAAC,MAAM,CAAC,SAAS,CAAA;IAElD,IAAM,gBAAgB,GAAG,YAAA,EAAM,OAAA,iBAAiB,CAAC,IAAI,CAAC,CAAvB,EAAuB,CAAA;IAEtD,IAAM,iBAAiB,GAAG,YAAA,EAAM,OAAA,kBAAkB,CAAC,IAAI,CAAC,CAAxB,EAAwB,CAAA;AAExD,IAAA,SAAS,CAAC,YAAA;AACR,QAAA,IACE,cAAc;YACd,eAAe;AACf,YAAA,CAAC,cAAc;AACf,YAAA,CAAC,aAAa,EACd;AACA,YAAA,gBAAgB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;AACpC,SAAA;KACF,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC,CAAA;IAEpE,eAAe,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAA;AAEpE,IAAA,cAAc,CACZ,WAAW,IAAI,IAAI,EACnB,SAAS,EACT,YAAY,EACZ,SAAS,EACT,iBAAiB,CAClB,CAAA;AACH;;AC5BA,IAAM,eAAe,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAE3C,IAAM,oBAAoB,GAAG,UAC3B,SAAqC,EACrC,cAA2C,EAC3C,SAAsB,EAAA;AAGpB,IAAA,IAAA,cAAc,GAIZ,SAAS,eAJG,EACd,cAAc,GAGZ,SAAS,CAAA,cAHG,EACd,aAAa,GAEX,SAAS,CAFE,aAAA,EACb,0BAA0B,GACxB,SAAS,2BADe,CACf;IACL,IAAA,gBAAgB,GAAkB,cAAc,CAAA,gBAAhC,EAAE,WAAW,GAAK,cAAc,CAAA,WAAnB,CAAmB;IAChD,IAAA,YAAY,GAClB,gBAAgB,CADE,YAAA,EAAE,YAAY,GAChC,gBAAgB,CADgB,YAAA,EAAE,OAAO,GACzC,gBAAgB,CADyB,OAAA,EAAE,cAAc,GACzD,gBAAgB,CAAA,cADyC,EAAE,WAAW,GACtE,gBAAgB,CAAA,WADsD,CACtD;IAElB,IAAM,MAAM,GAAG,0BAA0B,CAAA;IAEzC,IAAM,eAAe,GAAG,UAAC,EAAO,EAAA;AAC9B,QAAA,eAAe,CAAC,EAAE,EAAE,cAAc,CAAC,CAAA;AACnC,QAAA,eAAe,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;AACpC,KAAC,CAAA;AAED,IAAA,SAAS,gBAAgB,GAAA;QACvB,IAAM,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;AACzD,QAAA,IAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAE9B,IAAI,YAAY,IAAI,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,GAAG,eAAe,EAAE;AACxE,YAAA,gBAAgB,CAAC,gBAAgB,CAAC,OAAO,EAAE;gBACzC,aAAa;gBACb,cAAc;AACf,aAAA,CAAC,CAAA;AACF,YAAA,YAAY,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;AACxC,SAAA;KACF;AAED,IAAA,IAAM,qBAAqB,GAAG,YAAA,EAAA,OAAA,SAAA,CAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,YAAA;;YAC5B,WAAW,CAAC,MAAM,EAAE,eAAe,EAAE,YAAY,EAAE,UAAO,EAAE,EAAA,EAAA,OAAA,SAAA,CAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,YAAA;;;;;AAC1D,4BAAA,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;4BAE/B,cAAc,CAAC,KAAK,CAAC,CAAA;AAErB,4BAAA,gBAAgB,EAAE,CAAA;4BAEC,OAAM,CAAA,CAAA,YAAA,eAAe,CAAC,EAAE,EAAE,cAAc,EAAE,YAAY,CAAC,CAAA,CAAA;;AAApE,4BAAA,UAAU,GAAG,EAAuD,CAAA,IAAA,EAAA,CAAA;AAE1E,4BAAA,IAAI,UAAU,EAAE;gCACd,IAAI,CAAA,UAAU,KAAA,IAAA,IAAV,UAAU,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAV,UAAU,CAAE,WAAW,MAAK,WAAW,EAAE;oCAC3C,YAAY,CAAC,gBAAgB,CAAA,QAAA,CAAA,QAAA,CAAA,EAAA,EACxB,UAAU,CAAA,EAAA,EACb,IAAI,EAAE,UAAU,CAAC,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,EAAA,CAAA,CAChE,CAAA;AAEF,oCAAA,IAAI,SAAS;AAAE,wCAAA,SAAS,EAAE,CAAA;AAC3B,iCAAA;AACF,6BAAA;AAAM,iCAAA;gCACL,cAAc,CAAC,IAAI,CAAC,CAAA;AACrB,6BAAA;;;;AACF,aAAA,CAAA,CAAA,EAAA,CAAC,CAAA;;;SACH,CAAA;AAED,IAAA,IAAM,aAAa,GAAG,YAAA,EAAA,OAAA,SAAA,CAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,YAAA;;;;wBACF,OAAM,CAAA,CAAA,YAAA,eAAe,CACrC,OAAO,EACP,aAAa,EACb,YAAY,CACb,CAAA,CAAA;;AAJK,oBAAA,SAAS,GAAG,EAIjB,CAAA,IAAA,EAAA,CAAA;oBACkB,OAAM,CAAA,CAAA,YAAA,eAAe,CACtC,OAAO,EACP,cAAc,EACd,YAAY,CACb,CAAA,CAAA;;AAJK,oBAAA,UAAU,GAAG,EAIlB,CAAA,IAAA,EAAA,CAAA;AAED,oBAAA,IAAI,SAAS,IAAI,CAAA,UAAU,KAAV,IAAA,IAAA,UAAU,KAAV,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,UAAU,CAAE,WAAW,MAAK,WAAW,EAAE;wBACxD,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;AAC7C,qBAAA;oBAED,cAAc,CAAC,IAAI,CAAC,CAAA;;;;SACrB,CAAA;AAED,IAAA,SAAS,CAAC,YAAA;AACR,QAAA,IAAI,WAAW;AAAE,YAAA,qBAAqB,EAAE,CAAA;AAC1C,KAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAA;AAEjB,IAAA,SAAS,CAAC,YAAA;AACR,QAAA,IAAI,gBAAgB,CAAC,SAAS,IAAI,OAAO,EAAE;AACzC,YAAA,aAAa,EAAE,CAAA;AAChB,SAAA;KACF,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAA;AAEzC,IAAA,SAAS,CAAC,YAAA;AACR,QAAA,IAAI,WAAW,EAAE;AACf,YAAA,IAAM,SAAS,GAAG;gBAChB,IAAI,EAAE,YAAY,CAAC,IAAI;aACxB,CAAA;YAED,qBAAqB,CAAC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,CAAC,CAAA;YAEtE,qBAAqB,CACnB,OAAO,EACP,cAAc,EACd,YAAY,CAAC,MAAM,EACnB,YAAY,CACb,CAAA;AAED,YAAA,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE;AACzC,gBAAA,YAAY,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAA;AAC5D,aAAA;AACF,SAAA;AACH,KAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAA;AACzB;;ACzHM,IAAA,iBAAiB,GAAG,UAAC,KAA0B,EAAA;AAC3C,IAAA,IAAA,KAAK,GAAwB,KAAK,CAAA,KAA7B,EAAE,OAAO,GAAe,KAAK,CAAA,OAApB,EAAE,QAAQ,GAAK,KAAK,SAAV,CAAU;IAE1C,QACEF,GAAC,CAAA,MAAM,EACL,QAAA,CAAA,EAAA,IAAI,EAAC,IAAI,EACT,OAAO,EAAE,QAAQ,GAAG,SAAS,GAAG,OAAO,EACvC,OAAO,EAAE,OAAO,EAEf,EAAA,EAAA,QAAA,EAAA,KAAK,EACC,CAAA,CAAA,EACV;AACH;;ACXA,IAAM,YAAY,GAAG,UAAC,KAAwB,EAAA;AACpC,IAAA,IAAA,YAAY,GAAK,KAAK,CAAA,YAAV,CAAU;IACtB,IAAA,KAAK,GAAW,YAAY,CAAA,KAAvB,EAAE,IAAI,GAAK,YAAY,CAAA,IAAjB,CAAiB;AAEpC,IAAA,QACEH,IAAC,CAAAE,eAAa,EAAC,QAAA,CAAA,EAAA,IAAI,QAAC,SAAS,EAAA,IAAA,EAAC,UAAU,EAAC,QAAQ,EAC/C,EAAA,EAAA,QAAA,EAAA,CAAAC,GAAA,CAAC,WAAW,EAAC,EAAA,KAAK,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,EAAI,CAAA,EAC7CA,IAAC,OAAO,EAAA,QAAA,CAAA,EAAC,IAAI,EAAC,GAAG,EAAC,KAAK,EAAC,OAAO,EAAA,EAAA,EAAA,QAAA,EAC5B,IAAI,EACG,CAAA,CAAA,CAAA,EAAA,CAAA,CACI,EACjB;AACH,CAAC,CAAA;AAID,IAAMD,eAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAAD,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,oBAAA,CAAA,EAAA,CAAA,oBAEjC,CAAA,CAAA,CAAA,CAAA,CAAA;AAED,IAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAAI,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,gFAAA,CAAA,EAAA,CAAA,gFAK7B,IAAA,CAAA;;;ACvBD,IAAM,YAAY,GAAG,UAAC,KAAwB,EAAA;AACpC,IAAA,IAAA,KAAK,GAAK,KAAK,CAAA,KAAV,CAAU;IACvB,IAAM,cAAc,GAAG,6BAA6B,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;IAChE,IAAM,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IAEnD,QACEL,IAAC,CAAAE,eAAa,EAAC,QAAA,CAAA,EAAA,SAAS,QAAC,UAAU,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,EACxD,EAAA,EAAA,QAAA,EAAA,CAAAC,GAAA,CAAC,eAAe,EAAA,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAI,CAAA,EAC1CA,oBAAG,IAAI,EAAE,OAAQ,CAAA,MAAA,CAAA,SAAS,CAAE,EAAA,EAAA,EAAA,QAAA,EAC1BA,IAAC,OAAO,EAAA,QAAA,CAAA,EAAC,IAAI,EAAC,GAAG,EAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAC,OAAO,EACzC,EAAA,EAAA,QAAA,EAAA,cAAc,EACP,CAAA,CAAA,EAAA,CAAA,CACR,CACU,EAAA,CAAA,CAAA,EACjB;AACH,CAAC,CAAA;AAID,IAAMD,eAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAAD,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,oBAAA,CAAA,EAAA,CAAA,oBAEjC,CAAA,CAAA,CAAA,CAAA,CAAA;AAED,IAAM,eAAe,GAAG,MAAM,CAAC,SAAS,CAAC,gKAAA,6EAI3B,EAAwB,UAErC,CAFa,CAAA,CAAA,EAAA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAErC,CAAA;;;AC3BK,IAAA,gBAAgB,GAAG,UAAC,KAAyB,EAAA;AACzC,IAAA,IAAA,UAAU,GAAgD,KAAK,WAArD,EAAE,OAAO,GAAuC,KAAK,CAAA,OAA5C,EAAE,aAAa,GAAwB,KAAK,CAA7B,aAAA,EAAE,iBAAiB,GAAK,KAAK,kBAAV,CAAU;AAC/D,IAAA,IAAA,SAAS,GAAsC,UAAU,UAAhD,EAAE,MAAM,GAA8B,UAAU,CAAA,MAAxC,EAAE,QAAQ,GAAoB,UAAU,CAA9B,QAAA,EAAE,aAAa,GAAK,UAAU,cAAf,CAAe;AACjE,IAAA,IAAM,MAAM,GAAG,MAAM,IAAI,QAAQ,CAAA;IACjC,IAAM,UAAU,GAAG,aAAa,IAAI,MAAM,GAAG,aAAa,CAAC,MAAM,aAAN,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAN,MAAM,CAAE,EAAE,CAAC,GAAG,EAAE,CAAA;AAC3E,IAAA,IAAM,aAAa,GAAG,iBAAiB,CAAC,SAAS,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,CAAC,CAAA;IAEpE,QACED,KAAC,UAAU,EAAA,EAAA,QAAA,EAAA,CACTG,IAAC,IAAI,EAAA,QAAA,CAAA,EAAC,IAAI,EAAE,aAAa,gBACvBA,GAAC,CAAA,oBAAoB,IACnB,QAAQ,EAAE,SAAS,CAAC,YAAY,EAChC,WAAW,EAAE,SAAS,CAAC,OAAO,GAC9B,EACG,CAAA,CAAA,EACPA,IAAC,IAAI,EAAA,QAAA,CAAA,EAAC,SAAS,EAAC,IAAA,EAAA,OAAO,EAAE,CAAC,EAAE,UAAU,EAAC,QAAQ,gBAC5C,aAAa,CAAC,GAAG,CAAC,UAAC,OAAO,EAAK,EAAA,QAC9BA,GAAC,CAAA,YAAY,IAAoB,YAAY,EAAE,OAAO,EAAnC,EAAA,OAAO,CAAC,IAAI,CAA2B,EAD5B,EAE/B,CAAC,EACG,CAAA,CAAA,EAEN,CAAC,CAAC,MAAM,KACPH,IAAA,CAAC,gBAAgB,EAAC,QAAA,CAAA,EAAA,SAAS,QAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAC,eAAe,EAAA,EAAA,EAAA,QAAA,EAAA,CACpE,UAAU,IACTG,GAAA,CAAC,gBAAgB,EAAC,QAAA,CAAA,EAAA,IAAI,EAAE,UAAU,EAAA,EAAA,EAAA,QAAA,EAChCA,IAAC,SAAS,EAAA,EAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAI,CAAA,EAAA,CAAA,CACvB,KAEnBA,GAAA,CAAC,SAAS,EAAC,EAAA,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,GAAI,CACzC,EACA,CAAC,EAAC,MAAM,KAAN,IAAA,IAAA,MAAM,uBAAN,MAAM,CAAE,WAAW,CAAA,KACpBA,GAAC,CAAA,YAAY,IAAC,KAAK,EAAE,MAAM,KAAN,IAAA,IAAA,MAAM,uBAAN,MAAM,CAAE,WAAW,EAAI,CAAA,CAC7C,KACgB,CACpB,EAEDA,IAAC,iBAAiB,EAAA,QAAA,CAAA,EAChB,QAAQ,EACR,IAAA,EAAA,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,eAAe,EACvB,OAAO,EAAE,OAAO,EAEhB,EAAA,EAAA,QAAA,EAAAA,GAAA,CAAC,SAAS,EAAC,EAAA,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,GAAI,EAChB,CAAA,CAAA,CAAA,EAAA,CACT,EACd;AACH,EAAC;AAID,IAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAAF,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,mCAAA,EAAA,qHAAA,CAAA,EAAA,CAAA,mCAEb,EAAuB,qHAOtC,CAPe,CAAA,CAAA,EAAA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAOtC,CAAA;AAED,IAAM,oBAAoB,GAAG,MAAM,CAAC,cAAc,CAAC,CAAA,gBAAA,KAAA,gBAAA,GAAA,oBAAA,CAAA,CAAA,4GAAA,CAAA,EAAA,CAAA,4GAOlD,CAAA,CAAA,CAAA,CAAA,CAAA;AAED,IAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,+IAAA,iDAEX,EAA2B,yBAEpD,CAFyB,CAAA,CAAA,EAAA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAEpD,CAAA;AAED,IAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA,gBAAA,KAAA,gBAAA,GAAA,oBAAA,CAAA,CAAA,4FAAA,CAAA,EAAA,CAAA,4FAMvC,CAAA,CAAA,CAAA,CAAA,CAAA;AAED,IAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA,gBAAA,KAAA,gBAAA,GAAA,oBAAA,CAAA,CAAA,sCAAA,CAAA,EAAA,CAAA,sCAEpC,CAAA,CAAA,CAAA,CAAA,CAAA;;;ACxFK,IAAA,mBAAmB,GAAG,UAAC,KAA4B,EAAA;IAC/C,IAAA,UAAU,GAA2B,KAAK,CAAA,UAAhC,EAAE,GAAG,GAAsB,KAAK,CAA3B,GAAA,EAAE,KAAK,GAAe,KAAK,MAApB,EAAK,KAAK,UAAK,KAAK,EAA5C,CAAoC,YAAA,EAAA,KAAA,EAAA,OAAA,CAAA,CAAF,CAAU;IAC5C,IAAA,EAAA,GAAyC,WAAW,CACxD,UAAU,CAAC,QAAS,EACpB,GAAG,CACJ,EAHO,GAAG,GAAA,EAAA,CAAA,GAAA,EAAE,MAAM,GAAA,EAAA,CAAA,MAAA,EAAE,SAAS,GAAA,EAAA,CAAA,SAAA,EAAE,UAAU,GAAA,EAAA,CAAA,UAGzC,CAAA;IAED,QACEE,GAAC,CAAA,UAAU,EAAC,QAAA,CAAA,EAAA,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAS,gBAClDH,IAAC,CAAA,aAAa,EAAC,QAAA,CAAA,EAAA,GAAG,EAAE,GAAG,EACrB,EAAA,EAAA,QAAA,EAAA,CAAAG,GAAA,CAAC,iBAAiB,EAAA,EAChB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,UAAU,EACnB,CAAA,EACD,MAAM,KACLA,GAAA,CAAC,gBAAgB,EAAA,QAAA,CAAA,EACf,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,SAAS,EAAA,EACd,KAAK,CAAA,CACT,CACH,CAAA,EAAA,CAAA,CACa,EACL,CAAA,CAAA,EACd;AACH,EAAC;AAID,IAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAA,gBAAA,KAAA,gBAAA,GAAA,oBAAA,CAAA,CAAA,2BAAA,CAAA,EAAA,CAAA,2BAE/B,IAAA,CAAA;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../node_modules/tslib/tslib.es6.js","../src/inspections/common/InspectionMetersStep/PartialMeterInfoStep/schema.ts","../src/inspections/common/InspectionMetersStep/PartialMeterInfoStep/fields.ts","../src/inspections/requests/reqBody.ts","../src/inspections/requests/index.ts","../src/inspections/fields/index.ts","../src/inspections/variations/InitialInspection/BasicApartmentInfoStep/fields.ts","../src/inspections/variations/InitialInspection/BasicApartmentInfoStep/schema.ts","../src/inspections/variations/InitialInspection/HouseInfoStep/fields.ts","../src/inspections/variations/InitialInspection/HouseInfoStep/schema.ts","../src/inspections/variations/InitialInspection/DetailApartmentInfoStep/fields.ts","../src/inspections/variations/InitialInspection/DetailApartmentInfoStep/schema.ts","../src/inspections/variations/InitialInspection/RoomsApartmentInfoStep/fields.ts","../src/inspections/variations/InitialInspection/RoomsApartmentInfoStep/schema.ts","../src/inspections/variations/InitialInspection/SecurityApartmentInfoStep/fields.ts","../src/inspections/variations/InitialInspection/SecurityApartmentInfoStep/schema.ts","../src/inspections/variations/InitialInspection/AvailableResourcesStep/fields.ts","../src/inspections/variations/InventoryInspection/AdditionalInfoStep/fields.ts","../src/inspections/variations/InventoryInspection/AdditionalInfoStep/schema.ts","../src/inspections/variations/InventoryInspection/HouseServicesInfoStep/fields.ts","../src/inspections/variations/InventoryInspection/HouseServicesInfoStep/schema.ts","../src/inspections/variations/InventoryInspection/MetersInfoStep/fields.ts","../src/inspections/variations/InventoryInspection/MetersInfoStep/schema.ts","../src/inspections/variations/InventoryInspection/TelecommunicationsInfoStep/fields.ts","../src/inspections/variations/InventoryInspection/TelecommunicationsInfoStep/schema.ts","../src/inspections/variations/InventoryInspection/FillingInfoStep/fields.ts","../src/inspections/variations/InventoryInspection/FillingInfoStep/schema.ts","../src/inspections/variations/InventoryInspection/MeterInfoStep/InventoryMeterInfoFields/schema.ts","../src/inspections/variations/InventoryInspection/MeterInfoStep/InventoryMeterInfoFields/fields.ts","../src/inspections/variations/InventoryInspection/MeterInfoStep/AddedMetersBlock/AddedMeterItem/index.tsx","../src/inspections/variations/InventoryInspection/MeterInfoStep/AddedMetersBlock/index.tsx","../src/inspections/variations/InventoryInspection/MeterInfoStep/InventoryMeterInfoFields/index.tsx","../src/inspections/variations/InventoryInspection/MeterInfoStep/renderMetersSteps.tsx","../src/inspections/common/getRoomImagesSteps.ts","../src/inspections/common/InspectionFeedback/InspectionFeedbackBillet/index.tsx","../src/inspections/common/InspectionFeedback/InspectionFeedbackStatus/index.tsx","../src/inspections/common/InspectionFeedback/index.tsx","../src/inspections/common/InspectionFillingCard/FillingCardContent/index.tsx","../src/inspections/common/InspectionFillingCard/index.tsx","../src/inspections/common/InspectionMetersStep/useMetersValues.ts","../src/inspections/store/FillingListStore.ts","../src/inspections/common/InspectionFillingCard/useFillingList.ts","../src/inspections/utils/inspectionHandlers.ts","../src/inspections/hooks/useInspectionData.ts","../src/inspections/hooks/useInspectionIndexDB.ts","../src/components/ObjectsMap/ObjectForMapPoint/index.tsx","../src/components/ObjectsMap/MetroStation/index.tsx","../src/components/ObjectsMap/ContactPhone/index.tsx","../src/components/ObjectsMap/ObjectForMapCard/index.tsx","../src/components/ObjectsMap/ObjectForMapOverlay/index.tsx"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\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 __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;\r\n return g = { next: verb(0), \"throw\": verb(1), \"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 (_) 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 = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\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: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","import * as yup from \"yup\"\nimport { InputParams } from \"kui-crm\"\n\nconst getPartialMeterInfoSchema = (valuesFields: InputParams<any>[]) => {\n const filteredFields = valuesFields\n .filter((field) => field.type === \"number\")\n .map((field) => field.name)\n const valuesSchema = filteredFields.map((field) => ({\n [field]: yup\n .number()\n .min(0)\n .required(\"This field is required\")\n .transform((value) => (Number.isNaN(value) ? undefined : value)),\n }))\n\n return yup.object().shape({\n number: yup.string().trim().required(\"This field is required\"),\n ...Object.assign({}, ...valuesSchema),\n })\n}\n\nexport const WaterMeterFieldsSchema = yup.object().shape({\n number: yup.string().trim().required(\"This field is required\"),\n value: yup\n .number()\n .min(0)\n .required(\"This field is required\")\n .transform((value) => (Number.isNaN(value) ? undefined : value)),\n})\n\nexport default getPartialMeterInfoSchema\n","import { NumberField } from \"kui-crm\"\nimport _ from \"lodash\"\nimport { PartialMeterInfoFields } from \"./types\"\n\nexport const getWaterMeterFields = (\n meters: PartialMeterInfoFields[],\n meter?: PartialMeterInfoFields,\n withCheckValue?: boolean,\n name?: string,\n settings?: any\n) => {\n const prefixName = name ? `${name}.` : \"\"\n const meterOptions = meters.length\n ? meters.map((meterParams) => ({\n value: meterParams.number,\n label: `${_.capitalize(meterParams.type || \"\")} | #${\n meterParams.number\n }`,\n }))\n : [\n {\n value: meter?.number,\n label: `${_.capitalize(meter?.type || \"\")} | #${meter?.number}`,\n },\n ]\n\n return [\n {\n label: \"Meter\",\n name: `${prefixName}number`,\n variant: \"select\",\n options: meterOptions,\n size: 12,\n isRequired: true,\n disabled: meterOptions.length === 1,\n ...settings?.meter,\n },\n {\n label: \"Value\",\n name: `${prefixName}value`,\n variant: \"custom\",\n CustomInput: NumberField,\n maxIntegerPart: 7,\n maxDecimalPart: 3,\n maxValue:\n meter?.maxValue?.value && withCheckValue\n ? Number(meter.maxValue.value)\n : null,\n warningMessage:\n \"There are deviations in meter readings. It should be no more than\",\n placeholder: meter?.values?.value,\n isRequired: true,\n ...settings?.value,\n },\n ]\n}\n","import { DateTime } from \"luxon\"\nimport { FileBodyRequest, FileStore, ImageBodyRequest } from \"kui-crm\"\nimport { clearNotValidFields, getPhoneNumberFromPhoneParams } from \"kui-utils\"\nimport {\n InitialInspectionFormFields,\n InitialInspectionInfoFields,\n} from \"../variations/InitialInspection/types\"\nimport {\n InitialInspectionFieldsBody,\n InitialInspectionPostBody,\n InspectionRoomPhotoRequest,\n InventoryInspectionPostBody,\n RegularInspectionPostBody,\n TransferInspectionPostBody,\n} from \"../types/api/inspectionsAPI\"\nimport {\n MeterValuesFields,\n RegularInspectionFormFields,\n TransferInspectionFormFields,\n} from \"../types/variations/types\"\nimport { PartialMeterInfoFields } from \"../common/InspectionMetersStep/PartialMeterInfoStep/types\"\nimport { InventoryInspectionPostFormFields } from \"../variations/InventoryInspection/types\"\nimport { InspectionMeterFields } from \"../common/InspectionMetersStep/types\"\nimport { InspectionFillingItemFields } from \"../common/InspectionFillingCard\"\n\nconst inspectionsRequestBody = {\n getPostBodyInitialInspection(\n inspection: InitialInspectionFormFields,\n roomsImages: InspectionRoomPhotoRequest[]\n ): InitialInspectionPostBody {\n return {\n based_on: null,\n date: (inspection.date || DateTime.now()).toISODate()!,\n inspection_type: \"initial\",\n dropbox_link: inspection.dropboxLink,\n photo_groups: roomsImages,\n initial: this.getInitialInspectionFields(inspection),\n }\n },\n getInitialInspectionFields(\n inspection: InitialInspectionInfoFields\n ): InitialInspectionFieldsBody {\n return {\n city: inspection.city!.id,\n address: inspection.apartment.address,\n apartment_number: inspection.apartmentNumber || \"\",\n post_index: inspection.zipCode,\n floor: inspection.floor,\n floor_count: inspection.floorCount!,\n room_type: inspection.typeOfObject,\n num_entrance: inspection.entrance,\n has_intercom: inspection.hasIntercom,\n intercom_code: inspection.intercomCode,\n has_gate: inspection.hasGate,\n gate_code: inspection.gateCode,\n area: inspection.area,\n rooms_number: inspection.roomsNumber,\n bedrooms_number: inspection.bedroomsNumber,\n bathrooms_number: inspection.bathroomsNumber,\n restrooms_number: inspection.restroomsNumber,\n combined_bathrooms_number: inspection.combinedBathroomsNumber,\n number_of_windows: inspection.numberOfWindows,\n renovation_year: inspection.renovation?.year,\n renovation_type: inspection.renovation?.type,\n renovation_style: inspection.renovation?.style,\n wall_type: inspection.wallMaterial,\n overlap_type: inspection.overlapType,\n passenger_elevators_number: inspection.passengerElevatorsCount,\n service_elevators_number: inspection.serviceElevatorsCount,\n ceiling_height: inspection.ceilingHeight,\n building_year: inspection.buildingYear,\n serial_number: inspection.houseNumber,\n type_gas: inspection.gasLeads,\n hot_water: inspection.withHotWater!,\n type_houses: inspection.typeOfHouse,\n parking_type: inspection.parkingType,\n parking_number: inspection.parkingNumber,\n rooms: inspection.rooms.map((room, index) => ({\n id: room.id,\n room_type: room.type,\n order_number: index,\n })),\n metro: inspection.metroStations.map((station) => ({\n name: station.name || \"\",\n metro_station_id: station.id!,\n distance_walk_meters: station.walkDistance,\n distance_car_kilometers: station.carDistance,\n time_car_minutes: station.carTime,\n })),\n used_resources: {\n electricity: inspection.availableResources.electricity,\n water: inspection.availableResources.water,\n gas: inspection.availableResources.gas,\n heating: inspection.availableResources.heating,\n },\n }\n },\n getPostBodyRegularInspection(\n inspection: RegularInspectionFormFields,\n roomsImages: InspectionRoomPhotoRequest[]\n ): RegularInspectionPostBody {\n return {\n date: (inspection.date || DateTime.now()).toISODate()!,\n inspection_type: \"regular\",\n based_on: null,\n dropbox_link: inspection.dropboxLink,\n photo_groups: roomsImages,\n regular: {\n ...this.getInspectionFilling(inspection.fillingList),\n ...this.getPartialInspectionMeters(inspection.meters),\n },\n }\n },\n\n getPostBodyTransferInspection(\n inspection: TransferInspectionFormFields,\n roomsImages: InspectionRoomPhotoRequest[],\n contractFile?: FileBodyRequest | null\n ): TransferInspectionPostBody {\n return {\n date: (inspection.date || DateTime.now()).toISODate()!,\n inspection_type: \"transfer\",\n based_on: null,\n dropbox_link: inspection.dropboxLink,\n photo_groups: roomsImages,\n transfer: {\n contract_document: contractFile || undefined,\n transfer_type: inspection.transferType,\n ...this.getInspectionFilling(inspection.fillingList),\n ...this.getPartialInspectionMeters(inspection.meters),\n },\n }\n },\n\n getInspectionFilling(fillingList: InspectionFillingItemFields[]) {\n return {\n filling: fillingList?.map((filling) => ({\n apartment_feature_id: filling.id,\n is_absent: !filling.check,\n })),\n }\n },\n\n getPartialInspectionMeters(meters: PartialMeterInfoFields[]) {\n return {\n meters:\n meters?.map((meter, index) => ({\n id: meter.id,\n resource_type: meter.resource,\n meter_type: meter.type,\n passport_number: meter.number,\n photos: this.getFilesParams(meter.images),\n values: clearNotValidFields(this.getInspectionMeterValues(meter)),\n })) || [],\n }\n },\n\n getPostBodyInventoryInspection(\n inspection: InventoryInspectionPostFormFields,\n roomsImages: InspectionRoomPhotoRequest[],\n fillingFiles: FileBodyRequest[],\n metersFiles: FileBodyRequest[],\n contractFile?: FileBodyRequest | null\n ): InventoryInspectionPostBody {\n return {\n date: (inspection.date || DateTime.now()).toISODate()!,\n inspection_type: \"inventory\",\n based_on: null,\n dropbox_link: inspection.dropboxLink,\n photo_groups: roomsImages,\n inventory: {\n contract_document: contractFile || undefined,\n allowed_children: inspection.withChildren,\n allowed_pets: inspection.withPets,\n allowed_smoking: inspection.withSmoking,\n additional_terms: inspection.additionalTerms,\n country_of_residence: inspection.countryOfResidence?.id || null,\n administrative_company: inspection.company?.id || null,\n tax_type: inspection.taxesType,\n financial_personal_account: inspection.communalServicesAccount,\n max_electricity_counters: inspection.maxMeters?.electricity,\n max_gas_counters: inspection.maxMeters?.gas,\n max_heating_counters: inspection.maxMeters?.heating,\n max_water_counters: inspection.maxMeters?.water,\n has_barrier: inspection.hasBarrier,\n has_concierge: inspection.hasConcierge,\n has_security: inspection.hasSecurity,\n has_video_surveillance: inspection.hasVideoControl,\n barrier_phone: inspection.barrierPhone\n ? getPhoneNumberFromPhoneParams(inspection.barrierPhone)\n : null,\n concierge_phone: inspection.conciergePhone\n ? getPhoneNumberFromPhoneParams(inspection.conciergePhone)\n : null,\n security_phone: inspection.securityPhone\n ? getPhoneNumberFromPhoneParams(inspection.securityPhone)\n : null,\n video_surveillance_phone: inspection.videoControlPhone\n ? getPhoneNumberFromPhoneParams(inspection.videoControlPhone)\n : null,\n home_phone: inspection.homePhone\n ? getPhoneNumberFromPhoneParams(inspection.homePhone)\n : null,\n wifi_name: inspection.wifi?.name,\n wifi_password: inspection.wifi?.password,\n internet_provider_link: inspection.internetProvider?.link,\n internet_provider_login: inspection.internetProvider?.login,\n internet_provider_password: inspection.internetProvider?.password,\n payer_code: inspection.payerCode,\n filling: inspection.fillingList.map((filling, index) => ({\n feature: filling.tag?.id || 0,\n description: filling.description,\n model: filling.name,\n serial_code: filling.serialNumber,\n amount: filling.numberOfSubjects,\n photos: this.getFilesParams(filling.images),\n instruction: fillingFiles[index],\n })),\n ...this.getInventoryInspectionMeters(inspection.meters, metersFiles),\n },\n }\n },\n\n getInventoryInspectionMeters(\n meters: InspectionMeterFields[],\n metersFiles: FileBodyRequest[],\n metersImages?: ImageBodyRequest[][]\n ) {\n return {\n meters:\n meters?.map((meter, index) => ({\n ...this.getMeterCommonFields(meter),\n passport: metersFiles[index],\n values: clearNotValidFields(\n this.getInspectionMeterValues(meter, \"initialValue\")\n ),\n photos: metersImages\n ? metersImages[index]\n : this.getFilesParams(meter.images),\n no_tariff: meter.noTariff,\n auto_sending: meter.withAutoSending,\n })) || [],\n }\n },\n\n getInspectionMeterValues(\n meter: MeterValuesFields,\n fieldName?: keyof MeterValuesFields\n ) {\n if (meter.resource === \"electricity\") {\n const prefix = fieldName || \"\"\n const t1 = meter[`${prefix}T1` as keyof MeterValuesFields]\n const t2 = meter[`${prefix}T2` as keyof MeterValuesFields]\n const t3 = meter[`${prefix}T3` as keyof MeterValuesFields]\n return {\n T1: t1 ? Number(t1) : t1,\n T2: t2 ? Number(t2) : t2,\n T3: t3 ? Number(t3) : t3,\n }\n }\n const valueField = (fieldName || \"value\") as keyof MeterValuesFields\n if (meter.resource === \"water\") {\n if (meter.type === \"cold\") {\n const cold = meter[valueField]\n return { cold: cold ? Number(cold) : cold }\n }\n const hot = meter[valueField]\n return { hot: hot ? Number(hot) : hot }\n }\n const value = meter[valueField]\n\n return {\n [meter.resource]: value ? Number(value) : value,\n }\n },\n\n getMeterCommonFields(meter: InspectionMeterFields) {\n return {\n id: meter.id,\n meter_type: meter.type,\n passport_number: meter.number,\n resource_type: meter.resource,\n activation_date: meter.startDate?.toISODate() || null,\n }\n },\n\n getMeterValues(\n initialValue?: string | number | null,\n lastValue?: string | number | null\n ) {\n return clearNotValidFields({\n initial_value: initialValue,\n last_value: lastValue,\n })\n },\n\n getFilesParams(files: FileStore[]) {\n return (\n (files\n ?.map((file) => file.uploadedData)\n .filter((data) => data) as ImageBodyRequest[]) || []\n )\n },\n}\n\nexport default inspectionsRequestBody\n","import {\n uploadFiles,\n requests,\n InspectionTypes,\n uploadNewFile,\n TransferInspectionTypes,\n KUISettings,\n} from \"kui-crm\"\nimport { resHandler, Loader, callPromises } from \"kui-utils\"\nimport to from \"await-to-js\"\nimport {\n ApartmentInspectionModel,\n InspectionTypesResponse,\n TransferTypesResponse,\n} from \"../types/api/inspectionsAPI\"\nimport { InspectionRoomImagesParams } from \"../common/types\"\nimport { InitialInspectionFormFields } from \"../variations/InitialInspection/types\"\nimport inspectionsRequestBody from \"./reqBody\"\nimport {\n RegularInspectionFormFields,\n TransferInspectionFormFields,\n} from \"../types/variations/types\"\nimport { InventoryInspectionPostFormFields } from \"../variations/InventoryInspection/types\"\n\nconst inspectionsRequests = {\n async createInspectionHandler(\n apartmentId: number,\n loader: Loader,\n callback: () => Promise<any>\n ) {\n if (apartmentId) {\n loader.startLoading(\"inspection creation\")\n\n let body\n try {\n body = await callback()\n } catch (e) {\n const { Sentry } = KUISettings.getSettings()\n Sentry.captureException(e)\n loader.setError(\"inspection creation body\", e)\n }\n\n if (body) return this.createInspection(apartmentId, body, loader)\n return null\n }\n return null\n },\n async getInspectionTypes(\n apartmentId: number\n ): Promise<[Error | null, InspectionTypes[] | undefined]> {\n const [err, res] = await to<InspectionTypesResponse>(\n requests.get(`/apartments/${apartmentId}/inspection-types`)\n )\n\n if (err) return [err, undefined]\n\n return [null, res?.inspection_types]\n },\n\n async getTransferTypes(\n apartmentId: number\n ): Promise<[Error | null, TransferInspectionTypes[] | undefined]> {\n const [err, res] = await to<TransferTypesResponse>(\n requests.get(`/apartments/${apartmentId}/transfer-inspection-types`)\n )\n\n if (err) return [err, undefined]\n\n return [null, res?.transfer_inspection_types]\n },\n\n async createInspection(apartmentId: number, body: any, loader: Loader) {\n const response = await to<ApartmentInspectionModel>(\n requests.post(`/apartments/${apartmentId}/inspections`, body)\n )\n\n resHandler(response, loader)\n\n return response[1]?.id\n },\n async createInitialInspection(\n data: InitialInspectionFormFields,\n apartmentId: number,\n loader: Loader\n ) {\n return this.createInspectionHandler(apartmentId, loader, async () => {\n const roomsImages = this.getRoomParams(data.roomsImages)\n return inspectionsRequestBody.getPostBodyInitialInspection(\n data,\n roomsImages\n )\n })\n },\n async createRegularInspection(\n data: RegularInspectionFormFields,\n apartmentId: number,\n loader: Loader\n ) {\n return this.createInspectionHandler(apartmentId, loader, async () => {\n const roomsImages = this.getRoomParams(data.roomsImages)\n\n return inspectionsRequestBody.getPostBodyRegularInspection(\n data,\n roomsImages\n )\n })\n },\n\n async createTransferInspection(\n data: TransferInspectionFormFields,\n apartmentId: number,\n loader: Loader\n ) {\n return this.createInspectionHandler(apartmentId, loader, async () => {\n const roomsImages = this.getRoomParams(data.roomsImages)\n const file = await uploadNewFile(loader, data.contractFile)\n\n return inspectionsRequestBody.getPostBodyTransferInspection(\n data,\n roomsImages,\n file\n )\n })\n },\n\n async createInventoryInspection(\n data: InventoryInspectionPostFormFields,\n apartmentId: number,\n loader: Loader\n ) {\n return this.createInspectionHandler(apartmentId, loader, async () => {\n const fillingFiles = data.fillingList.map(\n (filling) => filling.instruction\n )\n const metersFiles = data.meters?.map((meter) => meter.passportFile) || []\n const files = await callPromises([\n uploadFiles(loader, fillingFiles),\n uploadFiles(loader, metersFiles),\n uploadNewFile(loader, data.contractFile),\n ])\n const roomsImages = this.getRoomParams(data.roomsImages)\n\n return inspectionsRequestBody.getPostBodyInventoryInspection(\n data,\n roomsImages,\n files[0],\n files[1],\n files[2]\n )\n })\n },\n\n getRoomParams(rooms: InspectionRoomImagesParams[]) {\n let roomIndex = -1\n return (\n rooms?.map((room) => {\n const withOrderNumber = room.type === \"room\" || room.type === \"bedroom\"\n if (withOrderNumber) roomIndex += 1\n\n return {\n purpose: room?.type,\n comment: room?.comment,\n photos: inspectionsRequestBody.getFilesParams(room.files),\n room_order_number: withOrderNumber ? roomIndex : undefined,\n }\n }) || []\n )\n },\n}\n\nexport default inspectionsRequests\n","import {\n ApartmentDetailInfoParams,\n ApartmentFillingVariants,\n ApartmentHouseInfoParams,\n ApartmentMainInfoParams,\n ApartmentMetroParams,\n ApartmentModel,\n ApartmentPartialDescriptionParams,\n ApartmentPaymentInfoParams,\n ApartmentSecurityInfoParams,\n ApartmentTelecommunicationInfoParams,\n DetailObjectInfoInterface,\n FileStore,\n FullInspectionCommonFields,\n ImageStore,\n InspectionMeterCommonInfo,\n InspectionMeterInfoParams,\n InspectionMetersInfoParams,\n InspectionPartialMetersInfoParams,\n InspectionPaymentInfoParams,\n InspectionRoomPhotoModel,\n InventoryInspectionFields,\n InventoryInspectionMeterModel,\n LatLonParams,\n MainObjectInfoInterface,\n matchesAPIFillingTypes,\n MaxMetersInfoParams,\n ResourceTypes,\n SecurityObjectInfoInterface,\n TransferInspectionMeterModel,\n InspectionFillingModel,\n ApartmentWithHouseInfoModelFields,\n} from \"kui-crm\"\nimport { getPhoneParamsFromString } from \"kui-utils\"\nimport { DateTime } from \"luxon\"\nimport { RoomImagesParams } from \"../types\"\nimport { ApartmentDescriptionWithMetro } from \"../types/variations/types\"\nimport { InspectionFillingParams } from \"../types/common\"\n\nexport const averageWalkMetersPerHour = 5000\n\nexport const minutesPerHour = 60\n\nconst apartmentFields = {\n getApartmentDescriptionInfo(\n apartment: ApartmentModel\n ): ApartmentPartialDescriptionParams {\n return {\n ...this.getApartmentMainInfo(apartment),\n ...this.getApartmentSecurityInfo(apartment),\n ...this.getApartmentDetailInfo(apartment),\n ...this.getApartmentTelecommunicationInfo(apartment),\n ...this.getApartmentHouseInfo(apartment),\n ...this.getMaxMetersParams(apartment),\n }\n },\n\n getApartmentMainInfo(\n apartment: MainObjectInfoInterface\n ): ApartmentMainInfoParams {\n return {\n ...apartment,\n apartmentNumber: apartment.apartment_number,\n zipCode: apartment.post_index || \"\",\n floorCount: apartment.floor_count,\n entrance: apartment.num_entrance,\n geolocation: this.getGeolocationParams(apartment.geolocation),\n distanceToCenter: apartment.distance_to_center_kilometers || null,\n typeOfObject: apartment.room_type,\n }\n },\n\n getApartmentSecurityInfo(\n apartment: SecurityObjectInfoInterface\n ): ApartmentSecurityInfoParams {\n return {\n hasIntercom: apartment.has_intercom ?? null,\n hasGate: apartment.has_gate ?? null,\n hasBarrier: apartment.has_barrier ?? null,\n hasSecurity: apartment.has_security ?? null,\n hasConcierge: apartment.has_concierge ?? null,\n hasVideoControl: apartment.has_video_surveillance ?? null,\n intercomCode: apartment.intercom_code || \"\",\n gateCode: apartment.gate_code || \"\",\n barrierPhone: apartment.barrier_phone\n ? getPhoneParamsFromString(apartment.barrier_phone)\n : null,\n conciergePhone: apartment.concierge_phone\n ? getPhoneParamsFromString(apartment.concierge_phone)\n : null,\n securityPhone: apartment.security_phone\n ? getPhoneParamsFromString(apartment.security_phone)\n : null,\n videoControlPhone: apartment.video_surveillance_phone\n ? getPhoneParamsFromString(apartment.video_surveillance_phone)\n : null,\n }\n },\n\n getApartmentDetailInfo(\n apartment: DetailObjectInfoInterface\n ): ApartmentDetailInfoParams {\n return {\n area: apartment.area,\n livingArea: apartment.living_area,\n kitchenArea: apartment.kitchen_area,\n roomsNumber: apartment.rooms_number,\n bedroomsNumber: apartment.bedrooms_number,\n bathroomsNumber: apartment.bathrooms_number,\n restroomsNumber: apartment.restrooms_number,\n combinedBathroomsNumber: apartment.combined_bathrooms_number,\n ceilingHeight: apartment.ceiling_height,\n numberOfWindows: apartment.number_of_windows,\n renovation: {\n year: apartment.renovation_year || null,\n type: apartment.renovation_type || null,\n style: apartment.renovation_style || null,\n },\n rooms:\n apartment.rooms?.map((room) => ({\n id: room.id,\n area: room.area || null,\n type: room.room_type || null,\n })) || [],\n }\n },\n\n getApartmentTelecommunicationInfo(\n apartment: ApartmentModel\n ): ApartmentTelecommunicationInfoParams {\n return {\n homePhone: apartment.home_phone\n ? getPhoneParamsFromString(apartment.home_phone)\n : null,\n wifi: {\n name: apartment.wifi_name,\n password: apartment.wifi_password,\n },\n internetProvider: {\n link: apartment.internet_provider_link,\n login: apartment.internet_provider_login,\n password: apartment.internet_provider_password,\n },\n tvType: apartment.tv_type,\n }\n },\n\n getApartmentHouseInfo(\n apartment: ApartmentWithHouseInfoModelFields\n ): ApartmentHouseInfoParams {\n return {\n typeOfHouse: apartment.type_houses,\n buildingYear: apartment.building_year,\n houseNumber: apartment.serial_number,\n wallMaterial: apartment.wall_type,\n overlapType: apartment.overlap_type,\n parkingType: apartment.parking_type,\n parkingNumber: apartment.parking_number,\n passengerElevatorsCount: apartment.passenger_elevators_number\n ? Number(apartment.passenger_elevators_number)\n : null,\n serviceElevatorsCount: apartment.service_elevators_number\n ? Number(apartment.service_elevators_number)\n : null,\n gasLeads: apartment.type_gas,\n withHotWater: apartment.hot_water,\n }\n },\n\n getMaxMetersParams(apartment: ApartmentModel): MaxMetersInfoParams {\n return {\n maxMeters: {\n water: apartment.max_water_counters,\n electricity: apartment.max_electricity_counters,\n gas: apartment.max_gas_counters,\n heating: apartment.max_heating_counters,\n },\n }\n },\n\n getGeolocationParams(geolocation?: LatLonParams) {\n return geolocation\n ? {\n lat: Number(geolocation.lat),\n lng: Number(geolocation.lon),\n }\n : null\n },\n\n getObjectRoomsImages(images: InspectionRoomPhotoModel[]): RoomImagesParams[] {\n return images.map((imageBlock) => ({\n id: imageBlock.id,\n type: imageBlock.purpose,\n comment: imageBlock.comment,\n images: imageBlock.photos.map((image) =>\n ImageStore.initFromImageModel(image)\n ),\n roomNumber:\n typeof imageBlock.room_order_number === \"number\"\n ? imageBlock.room_order_number + 1\n : 0,\n }))\n },\n\n getInspectionFillingParams(\n filling: InspectionFillingModel,\n withChecking?: boolean\n ): InspectionFillingParams {\n return {\n id: filling.id,\n name: filling.description || \"\",\n tag: {\n id: filling.feature.id,\n name: filling.feature.name,\n },\n images: filling.photos?.map((image) =>\n ImageStore.initFromImageModel(image)\n ),\n serialNumber: filling.serial_code,\n numberOfSubjects: Number(filling.amount),\n instruction: filling.instruction\n ? FileStore.initFromDocumentModel(filling.instruction)\n : null,\n type: matchesAPIFillingTypes[\n filling.feature.feature_type as keyof typeof matchesAPIFillingTypes\n ] as ApartmentFillingVariants,\n ...(withChecking && filling.feature.feature_type === \"appliance\"\n ? {\n check: !filling.is_absent,\n wasMissing: filling.previously_absent,\n }\n : {}),\n }\n },\n\n getApartmentDescriptionWithMetro(\n apartment: ApartmentModel\n ): ApartmentDescriptionWithMetro {\n return {\n ...this.getApartmentDescriptionInfo(apartment),\n metroStations: this.getMetroStationsParams(apartment?.metro_stations),\n }\n },\n\n getMetroStationsParams(metroStations?: ApartmentMetroParams[]) {\n return (\n metroStations?.map((metroStation) => ({\n id: metroStation.metro_station_id,\n name: metroStation.name,\n walkDistance: metroStation.distance_walk_meters,\n carDistance: Number(metroStation.distance_car_kilometers),\n carTime: metroStation.time_car_minutes,\n walkTime: Math.round(\n metroStation.distance_walk_meters! /\n (averageWalkMetersPerHour / minutesPerHour)\n ),\n })) || []\n )\n },\n\n getMeterValues(\n meter: TransferInspectionMeterModel | InventoryInspectionMeterModel,\n resource: ResourceTypes,\n fieldName?: string\n ) {\n if (resource === \"electricity\") {\n const prefix = fieldName || \"\"\n return {\n [`${prefix}T1`]: Number(meter.values.T1),\n ...(meter.meter_type !== \"T1\" && {\n [`${prefix}T2`]: Number(meter.values.T2),\n }),\n ...(meter.meter_type === \"T3\" && {\n [`${prefix}T3`]: Number(meter.values.T3),\n }),\n }\n }\n const valueField = fieldName || \"value\"\n if (resource === \"water\") {\n if (meter.meter_type === \"cold\") {\n return { [`${valueField}`]: Number(meter.values.cold) }\n }\n return { [`${valueField}`]: Number(meter.values.hot) }\n }\n return {\n [`${valueField}`]: Number(meter.values[resource]),\n }\n },\n\n getTransferMetersInfo(\n meters: TransferInspectionMeterModel[]\n ): InspectionPartialMetersInfoParams {\n return {\n meters: meters.map((meter) => ({\n id: meter.id,\n type: meter.meter_type,\n number: meter.passport_number,\n resource: meter.resource_type,\n images:\n meter.photos?.map((photo) => ImageStore.initFromImageModel(photo)) ||\n [],\n values: this.getMeterValues(meter, meter.resource_type),\n ...this.getMeterValues(meter, meter.resource_type),\n })),\n }\n },\n\n getApartmentPaymentInfo(\n apartment: ApartmentModel\n ): ApartmentPaymentInfoParams {\n return {\n payerCode: apartment.payer_code,\n communalServicesAccount: apartment.financial_personal_account,\n managementCompany: apartment.administrative_company\n ? {\n ...apartment.administrative_company,\n operatingAccount: apartment.payer_code,\n }\n : null,\n }\n },\n\n getInspectionPaymentInfo(\n inspection: FullInspectionCommonFields\n ): InspectionPaymentInfoParams {\n return {\n ...this.getApartmentPaymentInfo(inspection),\n countryOfResidence: inspection.country_of_residence,\n taxesType: inspection.tax_type,\n }\n },\n\n getMeterInfo(\n meter: InspectionMeterCommonInfo,\n resource: ResourceTypes\n ): InspectionMeterInfoParams {\n return {\n id: meter.id,\n type: meter.meter_type,\n number: meter.passport_number,\n startDate: meter.activation_date\n ? DateTime.fromISO(meter.activation_date)\n : null,\n company: meter.company,\n operationalAccountNumber: meter.operating_account,\n resource,\n tariff: meter.tariff\n ? {\n id: meter.tariff.id,\n name: meter.tariff.code_name,\n }\n : null,\n passportFile: meter.passport\n ? FileStore.initFromFileModel(meter.passport)\n : null,\n images:\n meter.photos?.map((photo) => ImageStore.initFromImageModel(photo)) ||\n [],\n }\n },\n\n getInventoryMetersInfo(\n inspection: InventoryInspectionFields\n ): InspectionMetersInfoParams {\n return {\n meters: inspection.meters.map((meter) => ({\n ...this.getMeterInfo(meter, meter.resource_type),\n ...this.getMeterValues(meter, meter.resource_type, \"initialValue\"),\n })),\n }\n },\n}\n\nexport default apartmentFields\n","/* global google */\nimport {\n CountryAutocomplete,\n RegionAutocomplete,\n CityAutocomplete,\n InputParams,\n} from \"kui-crm\"\nimport { InputWithAddressAutocomplete } from \"kui-complex\"\nimport { BasicApartmentInfoStepFields } from \"./types\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst getBasicApartmentInfoFields = (\n handlePlaceSelect?: (coords: google.maps.LatLngLiteral) => void,\n settings?: InspectionFieldsSettings\n): InputParams<BasicApartmentInfoStepFields>[] => [\n {\n name: \"country\",\n label: \"Country\",\n variant: \"custom\",\n CustomInput: CountryAutocomplete,\n size: 12,\n ...settings?.country,\n },\n {\n name: \"region\",\n label: \"Region\",\n variant: \"custom\",\n CustomInput: RegionAutocomplete,\n ...settings?.region,\n },\n {\n name: \"city\",\n label: \"City\",\n variant: \"custom\",\n CustomInput: CityAutocomplete,\n isRequired: true,\n ...settings?.city,\n },\n {\n name: \"apartment\",\n variant: \"custom\",\n CustomInput: InputWithAddressAutocomplete,\n handlePlaceSelect,\n size: 12,\n isRequired: true,\n ...settings?.apartment,\n },\n {\n label: \"Apartment\",\n name: \"apartmentNumber\",\n \"data-testid\": \"apartment_number\",\n isRequired: true,\n ...settings?.apartmentNumber,\n },\n {\n label: \"Zip code\",\n name: \"zipCode\",\n ...settings?.zipCode,\n },\n]\n\nexport default getBasicApartmentInfoFields\n","import * as yup from \"yup\"\nimport { defaultRequiredMessage } from \"kui-crm\"\n\nexport const BasicApartmentInfoFieldsSchema = {\n apartment: yup.object({\n address: yup.string().trim().required(\"This field is required\"),\n }),\n apartmentNumber: yup.string().required(\"This field is required\"),\n city: yup.object({\n name: yup.string().required(\"This field is required\"),\n }),\n metroStations: yup.array().of(\n yup.object({\n id: yup\n .number()\n .transform((value) => (Number.isNaN(value) ? undefined : value)),\n name: yup\n .string()\n .required(defaultRequiredMessage)\n .test(\n \"check-id\",\n \"Please select an metro station from the dropdown\",\n function (value) {\n return !!this.parent.id\n }\n ),\n walkDistance: yup.string().required(defaultRequiredMessage),\n carDistance: yup.string().required(defaultRequiredMessage),\n carTime: yup.string().required(defaultRequiredMessage),\n })\n ),\n}\n\nconst BasicApartmentInfoStepSchema = yup.object(BasicApartmentInfoFieldsSchema)\n\nexport default BasicApartmentInfoStepSchema\n","import {\n InputParams,\n HouseTypesValues,\n WallMaterialsValues,\n SlabsTypesValues,\n BooleanValues,\n GasTypesValues,\n} from \"kui-crm\"\nimport { HouseInfoStepFields } from \"./types\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst getHouseInfoStep = (\n settings?: InspectionFieldsSettings\n): InputParams<HouseInfoStepFields>[] => [\n {\n name: \"typeOfHouse\",\n label: \"Type houses\",\n variant: \"select\",\n options: HouseTypesValues,\n isRequired: true,\n ...settings?.typeOfHouse,\n },\n {\n name: \"houseNumber\",\n label: \"House series\",\n ...settings?.houseNumber,\n },\n {\n name: \"wallMaterial\",\n label: \"Wall material\",\n variant: \"select\",\n options: WallMaterialsValues,\n isRequired: true,\n ...settings?.wallMaterial,\n },\n {\n name: \"overlapType\",\n label: \"Overlap type\",\n variant: \"select\",\n options: SlabsTypesValues,\n isRequired: true,\n ...settings?.overlapType,\n },\n {\n name: \"gasLeads\",\n label: \"Gas\",\n variant: \"select\",\n options: GasTypesValues,\n isRequired: true,\n ...settings?.gasLeads,\n },\n {\n name: \"withHotWater\",\n label: \"Hot water\",\n variant: \"select\",\n options: BooleanValues,\n isRequired: true,\n ...settings?.withHotWater,\n },\n {\n name: \"passengerElevatorsCount\",\n label: \"Passenger elevators\",\n type: \"number\",\n isRequired: true,\n ...settings?.passengerElevatorsCount,\n },\n {\n name: \"serviceElevatorsCount\",\n label: \"Service elevators\",\n type: \"number\",\n isRequired: true,\n ...settings?.serviceElevatorsCount,\n },\n {\n name: \"buildingYear\",\n label: \"Builded\",\n isRequired: true,\n ...settings?.buildingYear,\n },\n]\n\nexport default getHouseInfoStep\n","import * as yup from \"yup\"\nimport { positiveNumberSchema, defaultRequiredMessage } from \"kui-crm\"\n\nexport const HouseInfoFieldsSchema = {\n passengerElevatorsCount: positiveNumberSchema,\n serviceElevatorsCount: positiveNumberSchema,\n typeOfHouse: yup.string().required(defaultRequiredMessage),\n buildingYear: yup.string().required(defaultRequiredMessage),\n wallMaterial: yup.string().required(defaultRequiredMessage),\n overlapType: yup.string().required(defaultRequiredMessage),\n gasLeads: yup.string().required(defaultRequiredMessage),\n withHotWater: yup.boolean().required(defaultRequiredMessage),\n}\n\nconst HouseInfoStepSchema = yup.object(HouseInfoFieldsSchema)\n\nexport default HouseInfoStepSchema\n","import {\n RenovationStyleValues,\n RenovationTypeValues,\n RoomTypeValues,\n InputParams,\n} from \"kui-crm\"\nimport { DetailApartmentInfoStepFields } from \"./types\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst inputProps = {\n step: 0.01,\n}\n\nconst getDetailApartmentInfoFields = (\n roomsCount?: number | null,\n bedroomsCount?: number | null,\n settings?: InspectionFieldsSettings\n): InputParams<DetailApartmentInfoStepFields>[] => [\n {\n label: \"Total area\",\n name: \"area\",\n type: \"number\",\n isRequired: true,\n ...inputProps,\n ...settings?.area,\n },\n\n ...(roomsCount\n ? new Array(Number(roomsCount))\n .fill(0)\n .map((_, key) => {\n const label =\n bedroomsCount && key < bedroomsCount\n ? `Bedroom ${key + 1}`\n : `Room ${key + 1}`\n const settingsKey =\n bedroomsCount && key < bedroomsCount ? \"bedrooms\" : \"rooms\"\n\n return [\n {\n name: `rooms.${key}.type`,\n label: `${label} type`,\n variant: \"select\",\n options: RoomTypeValues,\n isRequired: true,\n ...(settings?.[settingsKey]\n ? settings[settingsKey](key)?.type\n : {}),\n },\n ]\n })\n .flat()\n : []),\n {\n name: \"ceilingHeight\",\n label: \"Ceiling height\",\n type: \"number\",\n cornerLabel: \"m.\",\n isRequired: true,\n ...inputProps,\n ...settings?.ceilingHeight,\n },\n {\n name: \"numberOfWindows\",\n label: \"Windows\",\n type: \"number\",\n isRequired: true,\n ...settings?.numberOfWindows,\n },\n {\n name: \"renovation.year\",\n label: \"Year of last renovation\",\n type: \"number\",\n isRequired: true,\n ...settings?.renovation.year,\n },\n {\n name: \"renovation.type\",\n label: \"Type of renovation\",\n variant: \"select\",\n options: RenovationTypeValues,\n isRequired: true,\n ...settings?.renovation?.type,\n },\n {\n name: \"renovation.style\",\n label: \"Renovation style\",\n variant: \"select\",\n options: RenovationStyleValues,\n isRequired: true,\n ...settings?.renovation?.style,\n },\n]\n\nexport default getDetailApartmentInfoFields\n","import * as yup from \"yup\"\nimport { positiveNumberSchema } from \"kui-crm\"\n\nexport const DetailApartmentInfoFieldsSchema = {\n area: yup.number().positive().required(\"This field is required\"),\n rooms: yup.array().of(\n yup.object({\n type: yup.string().required(\"This field is required\"),\n })\n ),\n numberOfWindows: yup.number().min(0).required(\"This field is required\"),\n renovation: yup.object({\n year: yup.number().positive().required(\"This field is required\"),\n type: yup.string().required(\"This field is required\"),\n style: yup.string().required(\"This field is required\"),\n }),\n ceilingHeight: positiveNumberSchema,\n}\n\nconst DetailApartmentInfoStepSchema = yup.object(\n DetailApartmentInfoFieldsSchema\n)\n\nexport default DetailApartmentInfoStepSchema\n","import { InputParams } from \"kui-crm\"\nimport { RoomsApartmentInfoStepFields } from \"./types\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst getRoomsApartmentInfoFields = (\n settings?: InspectionFieldsSettings\n): InputParams<RoomsApartmentInfoStepFields>[] => [\n {\n label: \"Floor\",\n name: \"floor\",\n type: \"number\",\n isRequired: true,\n ...settings?.floor,\n },\n {\n label: \"Floors\",\n name: \"floorCount\",\n type: \"number\",\n isRequired: true,\n ...settings?.floorCount,\n },\n {\n label: \"Rooms\",\n name: \"roomsNumber\",\n type: \"number\",\n isRequired: true,\n ...settings?.roomsNumber,\n },\n {\n label: \"Bedrooms\",\n name: \"bedroomsNumber\",\n type: \"number\",\n isRequired: true,\n ...settings?.bedroomsNumber,\n },\n {\n label: \"Bathrooms\",\n name: \"bathroomsNumber\",\n type: \"number\",\n isRequired: true,\n ...settings?.bathroomsNumber,\n },\n {\n label: \"Restrooms\",\n name: \"restroomsNumber\",\n type: \"number\",\n isRequired: true,\n ...settings?.restroomsNumber,\n },\n {\n label: \"Combined bathroom\",\n name: \"combinedBathroomsNumber\",\n type: \"number\",\n isRequired: true,\n ...settings?.combinedBathroomsNumber,\n },\n]\n\nexport default getRoomsApartmentInfoFields\n","import * as yup from \"yup\"\r\n\r\nexport const RoomsApartmentInfoFieldsSchema = {\r\n floor: yup\r\n .number()\r\n .integer()\r\n .min(0)\r\n .test(\"is less than floorCount\", \"Too much\", function (value: any) {\r\n return value <= this.parent.floorCount\r\n }),\r\n floorCount: yup\r\n .number()\r\n .integer()\r\n .positive()\r\n .required(\"This field is required\"),\r\n roomsNumber: yup.number().integer().min(0).required(\"This field is required\"),\r\n bedroomsNumber: yup\r\n .number()\r\n .integer()\r\n .min(0)\r\n .required(\"This field is required\"),\r\n bathroomsNumber: yup\r\n .number()\r\n .integer()\r\n .min(0)\r\n .required(\"This field is required\"),\r\n restroomsNumber: yup\r\n .number()\r\n .integer()\r\n .min(0)\r\n .required(\"This field is required\"),\r\n combinedBathroomsNumber: yup\r\n .number()\r\n .integer()\r\n .min(0)\r\n .required(\"This field is required\"),\r\n}\r\n\r\nconst RoomsApartmentInfoStepSchema = yup.object(RoomsApartmentInfoFieldsSchema)\r\n\r\nexport default RoomsApartmentInfoStepSchema\r\n","import {\n BooleanValues,\n RoomTypesValues,\n InputParams,\n ParkingTypesValues,\n} from \"kui-crm\"\nimport { DependentInput } from \"kui-complex\"\nimport { SecurityApartmentInfoStepFields } from \"./types\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst getSecurityApartmentInfoFields = (\n settings?: InspectionFieldsSettings\n): InputParams<SecurityApartmentInfoStepFields>[] => [\n {\n label: \"Object type\",\n name: \"typeOfObject\",\n variant: \"select\",\n options: RoomTypesValues,\n isRequired: true,\n ...settings?.typeOfObject,\n },\n {\n label: \"Entrance\",\n name: \"entrance\",\n isRequired: true,\n ...settings?.entrance,\n },\n {\n name: \"hasIntercom\",\n label: \"Intercom\",\n variant: \"select\",\n options: BooleanValues,\n isRequired: true,\n ...settings?.hasIntercom,\n },\n {\n name: \"intercomCode\",\n label: \"Intercom code\",\n variant: \"custom\",\n CustomInput: DependentInput,\n dependentInputName: \"hasIntercom\",\n ...settings?.intercomCode,\n },\n {\n name: \"hasGate\",\n label: \"Gate\",\n variant: \"select\",\n options: BooleanValues,\n isRequired: true,\n ...settings?.hasGate,\n },\n {\n name: \"gateCode\",\n label: \"Gate code\",\n variant: \"custom\",\n CustomInput: DependentInput,\n dependentInputName: \"hasGate\",\n ...settings?.gateCode,\n },\n {\n name: \"parkingType\",\n label: \"Parking\",\n variant: \"select\",\n options: ParkingTypesValues,\n ...settings?.parkingType,\n },\n {\n name: \"parkingNumber\",\n label: \"Parking number\",\n variant: \"custom\",\n CustomInput: DependentInput,\n dependentInputName: \"parkingType\",\n ...settings?.parkingNumber,\n },\n]\n\nexport default getSecurityApartmentInfoFields\n","import * as yup from \"yup\"\nimport { defaultRequiredMessage, fieldWithConditionSchema } from \"kui-crm\"\n\nexport const SecurityApartmentInfoFieldsSchema = {\n typeOfObject: yup.string().required(\"This field is required\"),\n entrance: yup.string().required(\"This field is required\"),\n hasIntercom: yup.string().required(\"This field is required\"),\n intercomCode: fieldWithConditionSchema(\"hasIntercom\"),\n hasGate: yup.string().required(\"This field is required\"),\n gateCode: fieldWithConditionSchema(\"hasGate\"),\n}\n\nconst SecurityApartmentInfoStepSchema = yup.object(\n SecurityApartmentInfoFieldsSchema\n)\n\nexport default SecurityApartmentInfoStepSchema\n","import { InputParams, BigCheckbox } from \"kui-crm\"\nimport { InspectionFieldsSettings } from \"../../../index\"\nimport { AvailableResourcesStepFields } from \"./types\"\n\nconst getAvailableResourcesFields = (\n settings?: InspectionFieldsSettings\n): InputParams<AvailableResourcesStepFields>[] => [\n {\n label: \"Water\",\n name: \"availableResources.water\",\n variant: \"custom\",\n CustomInput: BigCheckbox,\n ...settings?.water,\n },\n {\n label: \"Electricity\",\n name: \"availableResources.electricity\",\n variant: \"custom\",\n CustomInput: BigCheckbox,\n ...settings?.electricity,\n },\n {\n label: \"Gas\",\n name: \"availableResources.gas\",\n variant: \"custom\",\n CustomInput: BigCheckbox,\n ...settings?.gas,\n },\n {\n label: \"Heating\",\n name: \"availableResources.heating\",\n variant: \"custom\",\n CustomInput: BigCheckbox,\n ...settings?.heating,\n },\n]\n\nexport default getAvailableResourcesFields\n","import { InputParams, getApartmentPaymentFields } from \"kui-crm\"\nimport { CheckboxWithController } from \"kui-complex\"\nimport { InspectionFieldsSettings } from \"../../../index\"\nimport { AdditionalInfoStepFields } from \"./types\"\n\nconst checkboxLabelProps = {\n size: \"s\",\n}\n\nconst getAdditionalInfoStepFields = (\n settings?: InspectionFieldsSettings\n): InputParams<AdditionalInfoStepFields>[] => [\n {\n label: \"Pets\",\n name: \"withPets\",\n variant: \"custom\",\n CustomInput: CheckboxWithController,\n labelProps: checkboxLabelProps,\n ...settings?.withPets,\n },\n {\n label: \"Children\",\n name: \"withChildren\",\n variant: \"custom\",\n CustomInput: CheckboxWithController,\n labelProps: checkboxLabelProps,\n ...settings?.withChildren,\n },\n {\n label: \"Smoking\",\n name: \"withSmoking\",\n variant: \"custom\",\n CustomInput: CheckboxWithController,\n labelProps: checkboxLabelProps,\n ...settings?.withSmoking,\n },\n {\n isTextArea: true,\n placeholder: \"other terms\",\n name: \"additionalTerms\",\n ...settings?.additionalTerms,\n },\n ...getApartmentPaymentFields(settings),\n]\n\nexport default getAdditionalInfoStepFields\n","import * as yup from \"yup\"\nimport { defaultRequiredMessage } from \"kui-crm\"\n\nexport const AdditionalInfoFieldsSchema = {\n taxesType: yup.string().required(defaultRequiredMessage),\n countryOfResidence: yup.object({\n name: yup.string().required(defaultRequiredMessage),\n }),\n company: yup.object({\n name: yup.string().required(defaultRequiredMessage),\n }),\n}\n\nconst AdditionalInfoStepSchema = yup.object(AdditionalInfoFieldsSchema)\n\nexport default AdditionalInfoStepSchema\n","import { BooleanValues, InputParams } from \"kui-crm\"\nimport { DependentInput, InputPhoneWithForm } from \"kui-complex\"\nimport { HouseServicesInfoStepFields } from \"./types\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst getHouseServicesInfoStep = (\n settings?: InspectionFieldsSettings\n): InputParams<HouseServicesInfoStepFields>[] => [\n {\n name: \"hasBarrier\",\n label: \"Barrier\",\n variant: \"select\",\n options: BooleanValues,\n isRequired: true,\n ...settings?.hasBarrier,\n },\n {\n name: \"barrierPhone\",\n label: \"Barrier code\",\n variant: \"custom\",\n CustomInput: DependentInput,\n dependentInputName: \"hasBarrier\",\n Input: InputPhoneWithForm,\n ...settings?.barrierPhone,\n },\n {\n name: \"hasConcierge\",\n label: \"Concierge\",\n variant: \"select\",\n options: BooleanValues,\n isRequired: true,\n ...settings?.hasConcierge,\n },\n {\n name: \"conciergePhone\",\n label: \"Concierge\",\n variant: \"custom\",\n CustomInput: DependentInput,\n dependentInputName: \"hasConcierge\",\n Input: InputPhoneWithForm,\n ...settings?.conciergePhone,\n },\n {\n name: \"hasSecurity\",\n label: \"Security\",\n variant: \"select\",\n options: BooleanValues,\n isRequired: true,\n ...settings?.hasSecurity,\n },\n {\n name: \"securityPhone\",\n label: \"Security\",\n variant: \"custom\",\n CustomInput: DependentInput,\n dependentInputName: \"hasSecurity\",\n Input: InputPhoneWithForm,\n ...settings?.securityPhone,\n },\n {\n name: \"hasVideoControl\",\n label: \"Video surveillance\",\n variant: \"select\",\n options: BooleanValues,\n isRequired: true,\n ...settings?.hasVideoControl,\n },\n {\n name: \"videoControlPhone\",\n label: \"Video surveillance\",\n variant: \"custom\",\n CustomInput: DependentInput,\n dependentInputName: \"hasVideoControl\",\n Input: InputPhoneWithForm,\n ...settings?.videoControlPhone,\n },\n]\n\nexport default getHouseServicesInfoStep\n","import * as yup from \"yup\"\nimport { phoneWithConditionSchema, defaultRequiredMessage } from \"kui-crm\"\n\nexport const HouseServicesInfoFieldsSchema = {\n hasBarrier: yup.string().required(defaultRequiredMessage),\n barrierPhone: phoneWithConditionSchema(\"hasBarrier\"),\n hasConcierge: yup.string().required(defaultRequiredMessage),\n conciergePhone: phoneWithConditionSchema(\"hasConcierge\"),\n hasSecurity: yup.string().required(defaultRequiredMessage),\n securityPhone: phoneWithConditionSchema(\"hasSecurity\"),\n hasVideoControl: yup.string().required(defaultRequiredMessage),\n videoControlPhone: phoneWithConditionSchema(\"hasVideoControl\"),\n}\n\nconst HouseServicesInfoStepSchema = yup.object(HouseServicesInfoFieldsSchema)\n\nexport default HouseServicesInfoStepSchema\n","import { getNumbersValues, InputParams } from \"kui-crm\"\nimport { MetersInfoStepFields } from \"./types\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst metersOptions = getNumbersValues(7)\n\nconst getMetersInfoStepFields = (\n settings?: InspectionFieldsSettings\n): InputParams<MetersInfoStepFields>[] => [\n {\n name: \"maxMeters.water\",\n label: \"Water\",\n variant: \"select\",\n options: metersOptions,\n isRequired: true,\n ...settings?.maxMeters?.water,\n },\n {\n name: \"maxMeters.electricity\",\n label: \"Electricity\",\n variant: \"select\",\n options: metersOptions,\n isRequired: true,\n ...settings?.maxMeters?.electricity,\n },\n {\n name: \"maxMeters.gas\",\n label: \"Gas\",\n variant: \"select\",\n options: metersOptions,\n isRequired: true,\n ...settings?.maxMeters?.gas,\n },\n {\n name: \"maxMeters.heating\",\n label: \"Heating\",\n variant: \"select\",\n options: metersOptions,\n isRequired: true,\n ...settings?.maxMeters?.heating,\n },\n]\n\nexport default getMetersInfoStepFields\n","import * as yup from \"yup\"\nimport { positiveNumberSchema } from \"kui-crm\"\n\nexport const MetersInfoFieldsSchema = {\n maxMeters: yup.object({\n water: positiveNumberSchema,\n electricity: positiveNumberSchema,\n gas: positiveNumberSchema,\n heating: positiveNumberSchema,\n }),\n}\n\nconst MetersInfoStepSchema = yup.object(MetersInfoFieldsSchema)\n\nexport default MetersInfoStepSchema\n","import { TVTypesValues, InputParams } from \"kui-crm\"\nimport { TelecommunicationsInfoStepFields } from \"./types\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst getTelecommunicationsInfoStepFields = (\n settings?: InspectionFieldsSettings\n): InputParams<TelecommunicationsInfoStepFields>[] => [\n { name: \"wifi.name\", label: \"Name of network\", ...settings?.wifi?.name },\n { name: \"wifi.password\", label: \"WiFi password\", ...settings?.wifi?.password },\n {\n name: \"internetProvider.link\",\n label: \"Link to provider\",\n size: 12,\n ...settings?.internetProvider?.link,\n },\n {\n name: \"internetProvider.login\",\n label: \"Login\",\n ...settings?.internetProvider?.login,\n },\n {\n name: \"internetProvider.password\",\n label: \"Password\",\n ...settings?.internetProvider?.password,\n },\n {\n name: \"tvType\",\n label: \"Television\",\n variant: \"select\",\n options: TVTypesValues,\n ...settings?.tvType,\n },\n {\n name: \"homePhone\",\n label: \"Home phone\",\n variant: \"phone\",\n ...settings?.homePhone,\n },\n]\n\nexport default getTelecommunicationsInfoStepFields\n","import * as yup from \"yup\"\nimport { phoneNonRequiredSchema } from \"kui-crm\"\n\nexport const TelecommunicationsInfoFieldsSchema = {\n homePhone: phoneNonRequiredSchema(\"homePhone\"),\n}\n\nconst TelecommunicationsInfoStepSchema = yup\n .object()\n .shape(TelecommunicationsInfoFieldsSchema, [[\"homePhone\", \"homePhone\"]])\n\nexport default TelecommunicationsInfoStepSchema\n","import { addToArrayByCondition } from \"kui-utils\"\nimport {\n FillingTagsAutocomplete,\n InputFileWithVisibility,\n InputParams,\n FillingInfoFormFields,\n FillingTypeValues,\n ApartmentFillingVariants,\n} from \"kui-crm\"\nimport { InspectionFieldsSettings } from \"../../../index\"\n\nconst getFillingInfoFields = (\n withType: boolean,\n type: ApartmentFillingVariants | undefined,\n setType: (fillingType: ApartmentFillingVariants) => void,\n settings?: InspectionFieldsSettings\n): InputParams<FillingInfoFormFields>[] => [\n ...addToArrayByCondition(withType, {\n label: \"Filling type\",\n name: \"type\",\n variant: \"select\",\n options: FillingTypeValues,\n handleChange: setType,\n isRequired: true,\n ...settings?.type,\n }),\n {\n label: \"Name (tag)\",\n name: \"tag\",\n type,\n variant: \"custom\",\n CustomInput: FillingTagsAutocomplete,\n isRequired: true,\n ...settings?.tag,\n },\n ...addToArrayByCondition(type !== \"finish\", {\n label: \"Model\",\n name: \"name\",\n isRequired: true,\n ...settings?.name,\n }),\n ...addToArrayByCondition(type !== \"finish\", {\n label: \"Serial code\",\n name: \"serialNumber\",\n size: 6,\n ...settings?.serialNumber,\n }),\n ...addToArrayByCondition(type !== \"finish\", {\n label: \"Amount\",\n name: \"numberOfSubjects\",\n type: \"number\",\n size: 6,\n ...settings?.numberOfSubjects,\n }),\n {\n label: \"Description\",\n name: \"description\",\n isTextArea: true,\n ...settings?.description,\n },\n ...addToArrayByCondition(type !== \"finish\", {\n label: \"Instruction\",\n name: \"instruction\",\n variant: \"custom\",\n CustomInput: InputFileWithVisibility,\n ...settings?.instruction,\n }),\n]\n\nexport default getFillingInfoFields\n","import * as yup from \"yup\"\nimport { ApartmentFillingVariants, defaultRequiredMessage } from \"kui-crm\"\n\nconst FillingInfoFieldsSchema = yup.object().shape({\n type: yup.string(),\n tag: yup.object({\n name: yup.string().required(defaultRequiredMessage),\n }),\n name: yup.string().when(\"type\", {\n is: (value: ApartmentFillingVariants) => value === \"electronics\",\n then: (rule) => rule.required(defaultRequiredMessage),\n }),\n})\n\nexport default FillingInfoFieldsSchema\n","import * as yup from \"yup\"\nimport { getMeterValuesFieldsSchema } from \"kui-crm\"\n\nconst meterFeaturesFieldsSchema = {\n number: yup.string().required(\"This field is required\"),\n}\n\nconst getMeterFeaturesFieldsSchema = (valuesFields: string[]) => {\n const valuesSchema = getMeterValuesFieldsSchema(valuesFields)\n\n return yup.object().shape({\n ...meterFeaturesFieldsSchema,\n ...Object.assign({}, ...valuesSchema),\n })\n}\n\nexport default getMeterFeaturesFieldsSchema\n","import { InputFile } from \"kui-complex\"\nimport { DateTime } from \"luxon\"\nimport {\n InputByTypeProps,\n basicFieldsOfNewResourceMeter,\n BasicMeterFeaturesFormFields,\n BasicMeterFieldsSettings,\n} from \"kui-crm\"\n\nconst getInventoryMeterFields = (\n settings: BasicMeterFieldsSettings,\n inputsSettings?: any\n): InputByTypeProps<BasicMeterFeaturesFormFields>[] => [\n ...basicFieldsOfNewResourceMeter(settings, inputsSettings),\n {\n label: \"Activation date\",\n name: \"startDate\",\n variant: \"date\",\n max: DateTime.now(),\n ...inputsSettings?.startDate,\n },\n {\n label: \"Passport\",\n name: \"passportFile\",\n variant: \"custom\",\n CustomInput: InputFile,\n ...inputsSettings?.passportFile,\n },\n]\n\nexport default getInventoryMeterFields\n","import React from \"react\"\nimport { Caption } from \"kui-basic\"\nimport styled from \"@emotion/styled\"\nimport { meterUnitLabel } from \"kui-crm\"\nimport _ from \"lodash\"\nimport { AddedMeterItemProps } from \"./types\"\n\nconst AddedMeterItem = (props: AddedMeterItemProps) => {\n const { meter, getMeterLabel } = props\n const { resource, type, number } = meter\n const { initialValue, initialValueT1, initialValueT2, initialValueT3 } = meter\n\n const meterValues = [\n initialValue,\n initialValueT1,\n initialValueT2,\n initialValueT3,\n ]\n .filter((value) => typeof value !== \"undefined\")\n .map((value) => value)\n .join(\" / \")\n\n const getDefaultMeterLabel = () =>\n _.capitalize(`${type ? `${type} ` : \"\"}${resource} meter`)\n\n const label = getMeterLabel\n ? getMeterLabel(resource!, type)\n : getDefaultMeterLabel()\n\n return (\n <Caption data-testid=\"addedMeterLine\" size=\"s\">\n • {label} #{number} -{\" \"}\n <StyledAccent>\n {meterValues} {meterUnitLabel[meter.resource!]}\n </StyledAccent>\n </Caption>\n )\n}\n\nexport default AddedMeterItem\n\nconst StyledAccent = styled.span`\n font-weight: 600;\n`\n","import React from \"react\"\nimport { BasicMeterFeaturesFormFields } from \"kui-crm\"\nimport styled from \"@emotion/styled\"\nimport { Caption, Grid, theme } from \"kui-basic\"\nimport { WarningIcon } from \"kui-icon\"\nimport { AddedMetersBlockProps } from \"./types\"\nimport AddedMeterItem from \"./AddedMeterItem\"\n\nconst AddedMetersBlock = (props: AddedMetersBlockProps) => {\n const { resource, formStore, label, getMeterLabel } = props\n const addedMeters = formStore.fields?.meters?.filter(\n (meter: BasicMeterFeaturesFormFields) => meter.resource === resource\n )\n\n if (!addedMeters?.length) return null\n\n return (\n <StyledWrapper data-testid=\"addedMetersBlock\">\n <StyledHeader container alignItems=\"center\">\n <StyledIcon />\n <Caption size=\"s\" color=\"fiftyP\">\n {label || \"In the previous steps were added:\"}\n </Caption>\n </StyledHeader>\n\n {addedMeters.map((meter: BasicMeterFeaturesFormFields) => (\n <AddedMeterItem\n key={meter.number}\n getMeterLabel={getMeterLabel}\n meter={meter}\n />\n ))}\n </StyledWrapper>\n )\n}\n\nexport default AddedMetersBlock\n\nconst StyledWrapper = styled.div`\n border-radius: 8px;\n border: 1px solid ${theme.palette.grey.fifteenB};\n padding: 12px 16px;\n background: white;\n`\n\nconst StyledIcon = styled(WarningIcon)`\n margin-right: 8px;\n width: 16px;\n height: 16px;\n path {\n fill: ${theme.palette.brand.main};\n }\n`\n\nconst StyledHeader = styled(Grid)`\n margin-bottom: 8px;\n`\n","import React, { useMemo, useState } from \"react\"\nimport { useForm } from \"react-hook-form\"\nimport { Grid } from \"kui-basic\"\nimport { yupResolver } from \"@hookform/resolvers/yup\"\nimport {\n ElectricityMeterTypes,\n FormWrapper,\n InputByType,\n WaterMeterTypes,\n BasicMeterFeaturesFormFields,\n MeterTypeRadioGroup,\n MeterFeaturesFormFields,\n} from \"kui-crm\"\nimport { InventoryMeterInfoFieldsProps } from \"./types\"\nimport getMeterFeaturesFieldsSchema from \"./schema\"\nimport getInventoryMeterFields from \"./fields\"\nimport AddedMetersBlock from \"../AddedMetersBlock\"\n\nfunction InventoryMeterInfoFields(props: InventoryMeterInfoFieldsProps) {\n const { resource, index, formStore } = props\n const defaultValues = formStore.fields?.meters?.[index]\n\n const withMeterType = resource === \"water\" || resource === \"electricity\"\n const defaultType = resource === \"water\" ? \"cold\" : \"T1\"\n const defaultMeterType = withMeterType ? defaultType : null\n const [meterType, setMeterType] = useState<\n ElectricityMeterTypes | WaterMeterTypes | null\n >(defaultValues?.type || defaultMeterType)\n\n const meterFields = getInventoryMeterFields({\n resource,\n meterType,\n })\n const valueFieldsName = meterFields\n .filter((field) => field.type === \"number\")\n .map((field) => field.name)\n const meterFeaturesFieldsSchema =\n getMeterFeaturesFieldsSchema(valueFieldsName)\n const form = useMemo(\n () =>\n useForm<BasicMeterFeaturesFormFields>({\n resolver: yupResolver(meterFeaturesFieldsSchema),\n defaultValues: { ...defaultValues },\n values: defaultValues as BasicMeterFeaturesFormFields,\n }),\n [meterFeaturesFieldsSchema]\n )\n\n const handleSubmit = (data: MeterFeaturesFormFields) => {\n formStore.replaceFieldInArray(\"meters\", { ...data, resource }, index)\n formStore.nextStep()\n }\n\n return (\n <FormWrapper\n form={form}\n onSubmit={handleSubmit as any}\n label=\"Next\"\n variant=\"next\"\n withPrevStep\n handlePrevClick={formStore.prevStep}\n >\n <Grid container spacing={2}>\n <Grid item xs={12}>\n <AddedMetersBlock formStore={formStore} resource={resource!} />\n </Grid>\n\n {withMeterType && (\n <Grid item xs={12}>\n <MeterTypeRadioGroup\n form={form}\n resource={resource}\n handleChange={setMeterType}\n />\n </Grid>\n )}\n\n {meterFields.map(({ size, ...field }) => (\n <Grid item key={field.name} xs={size || 6}>\n <InputByType form={form} {...field} />\n </Grid>\n ))}\n </Grid>\n </FormWrapper>\n )\n}\n\nexport default InventoryMeterInfoFields\nexport { default as getInventoryMeterFields } from \"./fields\"\n","import { MetersCountParams } from \"kui-crm\"\nimport React, { ReactElement } from \"react\"\nimport { MeterInfoStepProps } from \"./types\"\n\nconst renderMetersSteps = (\n MeterStep: (props: MeterInfoStepProps) => ReactElement,\n MeterPhotoStep: (props: MeterInfoStepProps) => ReactElement,\n maxMeters?: MetersCountParams | null\n) => {\n const meters = [\n ...new Array(Number(maxMeters?.water || 0)).fill(\"water\"),\n ...new Array(Number(maxMeters?.electricity || 0)).fill(\"electricity\"),\n ...new Array(Number(maxMeters?.gas || 0)).fill(\"gas\"),\n ...new Array(Number(maxMeters?.heating || 0)).fill(\"heating\"),\n ]\n return meters.map((resource, index) => [\n <MeterStep key={`meter_info_${index}`} index={index} resource={resource} />,\n <MeterPhotoStep\n key={`meter_photo_${index}`}\n index={index}\n resource={resource}\n />,\n ])\n}\n\nexport default renderMetersSteps\n","import { addToArrayByCondition } from \"kui-utils\"\nimport { InspectionTypes } from \"kui-crm\"\nimport { InspectionImageFieldsSettings, InspectionRoomsFields } from \"./types\"\n\nconst getRoomsImagesSteps = (\n type: InspectionTypes,\n settings: InspectionImageFieldsSettings,\n roomsParams?: InspectionRoomsFields | null\n) => [\n { type: \"kitchen\", ...settings.kitchen },\n ...new Array(Number(roomsParams?.bedroomsNumber || 0))\n .fill(0)\n .map((_, index) => ({\n type: \"bedroom\",\n ...settings.bedroom(roomsParams?.bedroomsNumber ? `${index + 1} ` : \"\"),\n })),\n ...new Array(\n Math.max(\n Number(roomsParams?.roomsNumber || 0) -\n Number(roomsParams?.bedroomsNumber || 0),\n 0\n )\n )\n .fill(0)\n .map((_, index) => ({\n type: \"room\",\n ...settings.room(\n roomsParams?.roomsNumber\n ? `${index + 1 + (roomsParams?.bedroomsNumber || 0)} `\n : \"\"\n ),\n })),\n ...new Array(Number(roomsParams?.bathroomsNumber || 0))\n .fill(0)\n .map((_, index) => ({\n type: \"bathroom\",\n ...settings.bathroom(roomsParams?.bathroomsNumber ? `${index + 1} ` : \"\"),\n })),\n ...new Array(Number(roomsParams?.restroomsNumber || 0))\n .fill(0)\n .map((_, index) => ({\n type: \"toilet\",\n ...settings.toilet(roomsParams?.restroomsNumber ? `${index + 1} ` : \"\"),\n })),\n ...new Array(Number(roomsParams?.combinedBathroomsNumber || 0))\n .fill(0)\n .map((_, index) => ({\n type: \"combined_bathroom\",\n ...settings.combinedBathroom(\n roomsParams?.combinedBathroomsNumber ? `${index + 1} ` : \"\"\n ),\n })),\n { type: \"others\", ...settings.others },\n ...addToArrayByCondition(type === \"initial\", {\n type: \"entrance\",\n ...settings.entrance,\n }),\n ...addToArrayByCondition(type !== \"initial\", {\n type: \"keys\",\n ...settings.keys,\n }),\n ...addToArrayByCondition(!!(type === \"initial\" && roomsParams?.parkingType), {\n type: \"parking\",\n ...settings.parking,\n }),\n { type: \"additional\", ...settings.additional },\n]\n\nexport default getRoomsImagesSteps\n","import React from \"react\"\nimport { Caption, Grid, theme } from \"kui-basic\"\nimport { Tooltip } from \"kui-crm\"\nimport styled from \"@emotion/styled\"\nimport { CancelIcon, CheckIcon, CommentIcon } from \"kui-icon\"\nimport { InspectionFeedbackBilletProps } from \"./types\"\nimport { FeedbackStylesProps } from \"../InspectionFeedbackStatus/types\"\n\nconst InspectionFeedbackBillet = (props: InspectionFeedbackBilletProps) => {\n const { feedback, label } = props\n\n return (\n <StyledWrapper status={feedback.status}>\n <Grid container alignItems=\"center\">\n <Caption size=\"s\" weight={500} color=\"fiftyP\">\n {label}\n </Caption>\n\n {feedback.status !== \"notSigned\" && (\n <StyledIconWrapper>\n {feedback.status === \"signed\" ? (\n <StyledCheckIcon />\n ) : (\n <StyledErrorIcon />\n )}\n {!!feedback.comment && (\n <Tooltip\n placement=\"bottom\"\n content={\n <div>\n <Caption size=\"xs\" color=\"fiftyP\">\n Comment\n </Caption>\n <StyledComment size=\"xs\">{feedback.comment}</StyledComment>\n </div>\n }\n >\n <StyledCommentIcon />\n </Tooltip>\n )}\n </StyledIconWrapper>\n )}\n </Grid>\n </StyledWrapper>\n )\n}\n\nexport default InspectionFeedbackBillet\n\nconst StyledWrapper = styled.div<FeedbackStylesProps>`\n background: ${({ status }) =>\n status === \"notSigned\"\n ? theme.palette.background.light1\n : theme.palette.grey.zero};\n border-radius: 66px;\n border: 1px solid ${theme.palette.grey.fifteenB};\n padding: 6px 16px;\n width: fit-content;\n @media (max-width: ${theme.breakpoints.sm}px) {\n width: 100%;\n > div {\n justify-content: center;\n }\n }\n`\n\nconst StyledIconWrapper = styled.div`\n display: flex;\n align-items: center;\n margin-left: 8px;\n > div {\n margin-left: 8px;\n }\n`\n\nconst StyledCheckIcon = styled(CheckIcon)`\n path {\n fill: ${theme.palette.green.fiftyP};\n }\n`\n\nconst StyledErrorIcon = styled(CancelIcon)`\n width: 12px;\n height: 12px;\n path {\n fill: ${theme.palette.red.fiftyP};\n }\n`\n\nconst StyledComment = styled(Caption)`\n margin-top: 8px;\n`\n\nconst StyledCommentIcon = styled(CommentIcon)`\n width: 13px;\n cursor: pointer;\n path {\n fill: ${theme.palette.grey.zero};\n stroke: ${theme.palette.grey.thirty};\n }\n`\n","import React from \"react\"\nimport styled from \"@emotion/styled\"\nimport { Button, Grid, theme } from \"kui-basic\"\nimport { UpdateIcon } from \"kui-icon\"\nimport { observer } from \"mobx-react\"\nimport { InspectionFeedbackStatusProps } from \"./types\"\nimport InspectionFeedbackBillet from \"../InspectionFeedbackBillet\"\n\nconst InspectionFeedbackStatus = (props: InspectionFeedbackStatusProps) => {\n const { feedback, label, resendLabel, resend } = props\n\n if (!feedback) return null\n\n return (\n <Grid item>\n <Grid container alignItems=\"center\">\n <InspectionFeedbackBillet feedback={feedback} label={label} />\n {feedback.status === \"rejected\" && (\n <StyledButton\n size=\"xs\"\n variant=\"orange\"\n onClick={resend}\n endIcon={<UpdateIcon />}\n >\n {resendLabel}\n </StyledButton>\n )}\n </Grid>\n </Grid>\n )\n}\n\nexport default observer(InspectionFeedbackStatus)\n\nconst StyledButton = styled(Button)`\n margin-left: 16px;\n @media (max-width: ${theme.breakpoints.sm}px) {\n width: 100%;\n margin-left: 0;\n margin-top: 8px;\n }\n`\n","import React from \"react\"\nimport { Grid } from \"kui-basic\"\nimport { observer } from \"mobx-react\"\nimport styled from \"@emotion/styled\"\nimport InspectionFeedbackStatus from \"./InspectionFeedbackStatus\"\nimport { InspectionFeedbackProps } from \"./types\"\n\nconst InspectionFeedback = (props: InspectionFeedbackProps) => {\n const { tenantFeedback, landlordFeedback, resignInspection, resendLabel } =\n props\n const { tenantLabel, landlordLabel } = props\n\n if (!tenantFeedback && !landlordFeedback) return null\n\n return (\n <StyledWrapper container spacing={2} alignItems=\"center\">\n <InspectionFeedbackStatus\n resend={resignInspection}\n resendLabel={resendLabel}\n feedback={tenantFeedback}\n label={tenantLabel}\n />\n <InspectionFeedbackStatus\n resend={resignInspection}\n resendLabel={resendLabel}\n feedback={landlordFeedback}\n label={landlordLabel}\n />\n </StyledWrapper>\n )\n}\n\nexport default observer(InspectionFeedback)\n\nconst StyledWrapper = styled(Grid)`\n padding-top: 8px;\n`\n","import React from \"react\"\nimport { Caption, Grid, theme } from \"kui-basic\"\nimport { Tooltip } from \"kui-crm\"\nimport { WarningIcon } from \"kui-icon\"\nimport styled from \"@emotion/styled\"\nimport { FillingCardContentProps } from \"./types\"\n\nconst FillingCardContent = (props: FillingCardContentProps) => {\n const { filling, warningLabel } = props\n return (\n <Grid container alignItems=\"center\">\n {filling.wasMissing && (\n <Tooltip content={<Caption size=\"xs\">{warningLabel}</Caption>}>\n <StyledWarningIcon width={17} height={17} />\n </Tooltip>\n )}\n <StyledLabelWrapper>\n <Caption size=\"s\">\n {filling.tagName} {filling.name ? ` | ${filling.name}` : \"\"}\n </Caption>\n {!!(filling.numberOfSubjects || filling.serialNumber) && (\n <StyledSubtitle size=\"xs\" color=\"fiftyP\">\n {filling.numberOfSubjects\n ? `${filling.numberOfSubjects} pieces`\n : \"\"}\n {filling.numberOfSubjects && filling.serialNumber ? ` • ` : \"\"}\n {filling.serialNumber}\n </StyledSubtitle>\n )}\n </StyledLabelWrapper>\n </Grid>\n )\n}\n\nexport default FillingCardContent\n\nconst StyledWarningIcon = styled(WarningIcon)`\n margin-left: 4px;\n path {\n fill: ${theme.palette.red.fiftyP};\n }\n`\n\nconst StyledLabelWrapper = styled.div`\n margin-left: 8px;\n`\n\nconst StyledSubtitle = styled(Caption)`\n margin-top: 4px;\n`\n","import React from \"react\"\nimport styled from \"@emotion/styled\"\nimport { Grid } from \"kui-basic\"\nimport { CheckboxWithController } from \"kui-complex\"\nimport { InspectionFillingCardProps } from \"./types\"\nimport FillingCardContent from \"./FillingCardContent\"\n\nconst InspectionFillingCard = (props: InspectionFillingCardProps) => {\n const { className, form, index, disabled, ...other } = props\n\n return (\n <StyledCard className={className}>\n <StyledCheckbox\n // @ts-ignore\n form={form}\n name={`fillingList.${index}.check`}\n label={<FillingCardContent {...other} />}\n disabled={disabled}\n />\n </StyledCard>\n )\n}\n\nexport default InspectionFillingCard\n\nexport type {\n InspectionFillingCardProps,\n InspectionFillingItemFields,\n InspectionFillingListFields,\n} from \"./types\"\n\nconst StyledCard = styled(Grid)`\n padding: 8px 16px;\n border-radius: 12px;\n background: white;\n`\n\nconst StyledCheckbox = styled(CheckboxWithController)`\n .KUI-Label_checkbox {\n margin-left: 0;\n }\n`\n","import { useEffect } from \"react\"\nimport { MultistepForm } from \"kui-utils\"\nimport { ApartmentMetersStoreInterface } from \"./types\"\n\nconst useMetersValues = (\n formStore: MultistepForm<any>,\n metersStore: ApartmentMetersStoreInterface,\n shouldBeLoad?: boolean,\n onLoad?: () => void\n) => {\n const finishLoad = () => {\n if (onLoad) onLoad()\n metersStore.loader.endLoading()\n }\n\n const loadMeters = async () => {\n if (shouldBeLoad) {\n if (!formStore.fields?.meters?.length) {\n await metersStore.fetchMeters()\n }\n finishLoad()\n } else if (shouldBeLoad === false) finishLoad()\n }\n\n useEffect(() => {\n loadMeters()\n }, [shouldBeLoad])\n\n useEffect(() => {\n if (!metersStore.loader.isLoading && !formStore.fields?.meters?.length) {\n formStore.updateFormFields({ meters: metersStore.meters })\n }\n }, [metersStore.meters, metersStore.loader.isLoading])\n}\n\nexport default useMetersValues\n","import { makeAutoObservable } from \"mobx\"\nimport { Loader, resHandler } from \"kui-utils\"\nimport to from \"await-to-js\"\nimport { FillingListItemModel, ApartmentsAgent, FillingTypes } from \"kui-crm\"\nimport { FillingCheckParams } from \"../types\"\n\nclass FillingListStore {\n fillingList: FillingCheckParams[]\n\n loader: Loader\n\n constructor() {\n this.fillingList = []\n this.loader = new Loader()\n makeAutoObservable(this)\n }\n\n fetchFillingList = async (\n apartmentId: number,\n fillingType?: FillingTypes\n ) => {\n this.loader.startLoading()\n\n const response = await to<FillingListItemModel[]>(\n ApartmentsAgent.getFillingList(apartmentId, fillingType)\n )\n\n resHandler(response, this.loader, this.updateFillingList)\n }\n\n updateFillingList = (fillingList: FillingListItemModel[]) => {\n this.fillingList =\n fillingList?.map((filling) => ({\n id: filling.id,\n name: filling.description,\n tagName: filling.feature_name,\n serialNumber: filling.serial_code,\n numberOfSubjects: filling.amount,\n wasMissing: filling.is_absent,\n })) || []\n }\n}\n\nexport default FillingListStore\n","import { useEffect } from \"react\"\nimport { MultistepForm } from \"kui-utils\"\nimport FillingListStore from \"../../store/FillingListStore\"\n\nconst useFillingList = (\n apartmentId: number | null,\n formStore: MultistepForm<any>,\n fillingStore: FillingListStore,\n shouldBeLoad?: boolean,\n onLoad?: () => void\n) => {\n const finishLoad = () => {\n if (onLoad) onLoad()\n fillingStore.loader.endLoading()\n }\n\n const loadFillingList = async () => {\n if (shouldBeLoad && apartmentId) {\n if (!formStore.fields?.fillingList?.length) {\n await fillingStore.fetchFillingList(apartmentId, \"appliance\")\n }\n finishLoad()\n } else if (shouldBeLoad === false) finishLoad()\n }\n\n useEffect(() => {\n loadFillingList()\n }, [apartmentId, shouldBeLoad])\n\n useEffect(() => {\n if (\n !fillingStore.loader.isLoading &&\n !formStore.fields?.fillingList?.length\n ) {\n formStore.updateFormFields({\n fillingList: fillingStore.fillingList.map((filling) => ({\n ...filling,\n check: false,\n })),\n })\n }\n }, [fillingStore.fillingList, fillingStore.loader.isLoading])\n}\n\nexport default useFillingList\n","import { clearIndexStores } from \"kui-utils\"\nimport {\n ApartmentLiteStoreInterface,\n InspectionFieldsIndexDBConstants,\n} from \"../types/common\"\n\nexport const onInspectionModalOpen = (\n apartmentStore: ApartmentLiteStoreInterface,\n constants: InspectionFieldsIndexDBConstants,\n openModal?: () => void\n) => {\n const { inspectionsStore, apartmentId } = apartmentStore\n const { formStateName, formFieldsName } = constants\n\n const { fields } = inspectionsStore.creationForm\n if (fields && fields.apartmentId !== apartmentId) {\n clearIndexStores(inspectionsStore.indexDB, [formStateName, formFieldsName])\n }\n inspectionsStore.setCanUpdateDB(true)\n if (openModal) openModal()\n}\n\nexport const onInspectionModalClose = (\n apartmentStore: ApartmentLiteStoreInterface,\n constants: InspectionFieldsIndexDBConstants,\n closeModal?: () => void\n) => {\n const { inspectionsStore } = apartmentStore\n const { formStateName, formFieldsName } = constants\n\n inspectionsStore.setCanUpdateDB(false)\n inspectionsStore.creationForm.resetForm()\n clearIndexStores(inspectionsStore.indexDB, [formStateName, formFieldsName])\n if (closeModal) closeModal()\n}\n","import { useEffect, useState } from \"react\"\nimport useMetersValues from \"../common/InspectionMetersStep/useMetersValues\"\nimport useFillingList from \"../common/InspectionFillingCard/useFillingList\"\nimport { ApartmentLiteStoreInterface } from \"../types/common\"\n\nconst useInspectionData = (apartmentStore: ApartmentLiteStoreInterface) => {\n const { apartmentId, inspectionsStore, metersStore, fillingStore } =\n apartmentStore\n const [isMetersLoaded, setIsMetersLoader] = useState(false)\n const [isFillingLoaded, setIsFillingLoaded] = useState(false)\n const formStore = inspectionsStore.creationForm\n const inspectionType = formStore.fields?.type\n const canBeLoad = inspectionType\n ? inspectionType === \"regular\" || inspectionType === \"transfer\"\n : undefined\n const fillingLoading = fillingStore.loader.isLoading\n const metersLoading = metersStore.loader.isLoading\n\n const handleMetersLoad = () => setIsMetersLoader(true)\n\n const handleFillingLoad = () => setIsFillingLoaded(true)\n\n useEffect(() => {\n if (\n isMetersLoaded &&\n isFillingLoaded &&\n !fillingLoading &&\n !metersLoading\n ) {\n inspectionsStore.setCanLoadDB(true)\n }\n }, [isMetersLoaded, isFillingLoaded, fillingLoading, metersLoading])\n\n useMetersValues(formStore, metersStore, canBeLoad, handleMetersLoad)\n\n useFillingList(\n apartmentId || null,\n formStore,\n fillingStore,\n canBeLoad,\n handleFillingLoad\n )\n}\n\nexport default useInspectionData\n","import { useEffect } from \"react\"\nimport { DateTime } from \"luxon\"\nimport {\n addIndexDBStore,\n addToIndexDBWithQueue,\n clearIndexStores,\n initIndexDB,\n readFromIndexDB,\n} from \"kui-utils\"\nimport {\n ApartmentLiteStoreInterface,\n InspectionIndexDBConstants,\n} from \"../types/common\"\n\nconst EXPIRATION_TIME = 24 * 60 * 60 * 1000 // 24 часа\n\nconst useInspectionIndexDB = (\n constants: InspectionIndexDBConstants,\n apartmentStore: ApartmentLiteStoreInterface,\n openModal?: () => void\n) => {\n const {\n dbCreationTime,\n formFieldsName,\n formStateName,\n inspectionCreationFormName,\n } = constants\n const { inspectionsStore, apartmentId } = apartmentStore\n const { creationForm, actionLoader, indexDB, setCanUpdateDB, canUpdateDB } =\n inspectionsStore\n\n const dbName = inspectionCreationFormName\n\n const onupgradeneeded = (db: any) => {\n addIndexDBStore(db, formFieldsName)\n addIndexDBStore(db, formStateName)\n }\n\n function checkAndDeleteDB() {\n const creationTime = localStorage.getItem(dbCreationTime)\n const currentTime = Date.now()\n\n if (creationTime && currentTime - Number(creationTime) > EXPIRATION_TIME) {\n clearIndexStores(inspectionsStore.indexDB, [\n formStateName,\n formFieldsName,\n ])\n localStorage.removeItem(dbCreationTime)\n }\n }\n\n const initInspectionIndexDB = async () => {\n initIndexDB(dbName, onupgradeneeded, actionLoader, async (db) => {\n inspectionsStore.setIndexDB(db)\n\n setCanUpdateDB(false)\n\n checkAndDeleteDB()\n\n const formFields = await readFromIndexDB(db, formFieldsName, actionLoader)\n\n if (formFields) {\n if (formFields?.apartmentId === apartmentId) {\n creationForm.updateFormFields({\n ...formFields,\n date: formFields.date ? DateTime.fromISO(formFields.date) : null,\n })\n\n if (openModal) openModal()\n }\n } else {\n setCanUpdateDB(true)\n }\n })\n }\n\n const initFormState = async () => {\n const formState = await readFromIndexDB(\n indexDB,\n formStateName,\n actionLoader\n )\n const formFields = await readFromIndexDB(\n indexDB,\n formFieldsName,\n actionLoader\n )\n\n if (formState && formFields?.apartmentId === apartmentId) {\n creationForm.setStep(Number(formState.step))\n }\n\n setCanUpdateDB(true)\n }\n\n useEffect(() => {\n if (apartmentId) initInspectionIndexDB()\n }, [apartmentId])\n\n useEffect(() => {\n if (inspectionsStore.canLoadDB && indexDB) {\n initFormState()\n }\n }, [inspectionsStore.canLoadDB, indexDB])\n\n useEffect(() => {\n if (canUpdateDB) {\n const formState = {\n step: creationForm.step,\n }\n\n addToIndexDBWithQueue(indexDB, formStateName, formState, actionLoader)\n\n addToIndexDBWithQueue(\n indexDB,\n formFieldsName,\n creationForm.fields,\n actionLoader\n )\n\n if (!localStorage.getItem(dbCreationTime)) {\n localStorage.setItem(dbCreationTime, Date.now().toString())\n }\n }\n }, [creationForm.step])\n}\n\nexport default useInspectionIndexDB\n","import React from \"react\"\nimport { Button } from \"kui-basic\"\nimport { ApartmentPointProps } from \"./types\"\n\nconst ObjectForMapPoint = (props: ApartmentPointProps) => {\n const { label, onClick, isActive } = props\n\n return (\n <Button\n size=\"xs\"\n variant={isActive ? \"primary\" : \"white\"}\n onClick={onClick}\n >\n {label}\n </Button>\n )\n}\n\nexport default ObjectForMapPoint\n","import React from \"react\"\r\nimport { Caption, Grid } from \"kui-basic\"\r\nimport styled from \"@emotion/styled\"\r\nimport { MetroStationProps } from \"./types\"\r\n\r\nconst MetroStation = (props: MetroStationProps) => {\r\n const { metroStation } = props\r\n const { color, name } = metroStation\r\n\r\n return (\r\n <StyledWrapper item container alignItems=\"center\">\r\n <StyledPoint style={{ background: color }} />\r\n <Caption size=\"s\" color=\"sixty\">\r\n {name}\r\n </Caption>\r\n </StyledWrapper>\r\n )\r\n}\r\n\r\nexport default MetroStation\r\n\r\nconst StyledWrapper = styled(Grid)`\r\n width: auto;\r\n`\r\n\r\nconst StyledPoint = styled.div`\r\n width: 6px;\r\n height: 6px;\r\n border-radius: 50%;\r\n margin-right: 6px;\r\n`\r\n","import React from \"react\"\nimport { Caption, Grid, theme } from \"kui-basic\"\nimport styled from \"@emotion/styled\"\nimport { PhoneIcon } from \"kui-icon\"\nimport { getPhoneNumberFromPhoneParams } from \"kui-utils\"\nimport { ContactPhoneProps } from \"./types\"\n\nconst ContactPhone = (props: ContactPhoneProps) => {\n const { phone } = props\n const formattedPhone = getPhoneNumberFromPhoneParams(phone, \" \")\n const phoneLink = formattedPhone.replace(/\\d/g, \"\")\n\n return (\n <StyledWrapper container alignItems=\"center\" wrap=\"nowrap\">\n <StyledPhoneIcon width={14} height={14} />\n <a href={`tel:+${phoneLink}`}>\n <Caption size=\"s\" weight={500} color=\"sixty\">\n {formattedPhone}\n </Caption>\n </a>\n </StyledWrapper>\n )\n}\n\nexport default ContactPhone\n\nconst StyledWrapper = styled(Grid)`\n width: auto;\n`\n\nconst StyledPhoneIcon = styled(PhoneIcon)`\n margin-right: 6px;\n transform: rotate(15deg);\n path {\n stroke: ${theme.palette.grey.sixty};\n }\n`\n","import React from \"react\"\nimport styled from \"@emotion/styled\"\nimport { Button, Grid, theme } from \"kui-basic\"\nimport { CloseIcon } from \"kui-icon\"\nimport { Link, PreviewContent, UserBadge } from \"kui-crm\"\nimport { ApartmentCardProps } from \"./types\"\nimport MetroStation from \"../MetroStation\"\nimport ContactPhone from \"../ContactPhone\"\n\nconst ObjectForMapCard = (props: ApartmentCardProps) => {\n const { inspection, onClose, getClientLink, getInspectionLink } = props\n const { apartment, tenant, landlord, metroStations } = inspection\n const client = tenant || landlord\n const clientLink = getClientLink && client ? getClientLink(client?.id) : \"\"\n const apartmentLink = getInspectionLink(apartment.id, inspection.id)\n\n return (\n <StyledCard>\n <Link href={apartmentLink}>\n <StyledPreviewContent\n imageSrc={apartment.previewImage}\n description={apartment.address}\n />\n </Link>\n <Grid container spacing={2} alignItems=\"center\">\n {metroStations.map((station) => (\n <MetroStation key={station.name} metroStation={station} />\n ))}\n </Grid>\n\n {!!client && (\n <StyledTenantInfo container alignItems=\"center\" justify=\"space-between\">\n {clientLink ? (\n <StyledClientLink href={clientLink}>\n <UserBadge weight={500} user={client} />\n </StyledClientLink>\n ) : (\n <UserBadge weight={500} user={client} />\n )}\n {!!client?.phoneNumber && (\n <ContactPhone phone={client?.phoneNumber} />\n )}\n </StyledTenantInfo>\n )}\n\n <StyledCloseButton\n isCircle\n size=\"xs\"\n variant=\"whiteWithGray\"\n onClick={onClose}\n >\n <CloseIcon width={6} height={6} />\n </StyledCloseButton>\n </StyledCard>\n )\n}\n\nexport default ObjectForMapCard\n\nconst StyledCard = styled.div`\n width: 330px;\n background: ${theme.palette.grey.zero};\n border-radius: 8px;\n padding: 8px;\n position: absolute;\n bottom: 46px;\n left: -115px;\n z-index: 1;\n`\n\nconst StyledPreviewContent = styled(PreviewContent)`\n margin-bottom: 8px;\n p {\n font-size: 16px;\n line-height: 24px;\n font-weight: 600;\n }\n`\n\nconst StyledTenantInfo = styled(Grid)`\n padding-top: 8px;\n border-top: 1px solid ${theme.palette.grey.fifteenB};\n margin-top: 8px;\n`\n\nconst StyledCloseButton = styled(Button)`\n position: absolute;\n top: -10px;\n right: -10px;\n width: 24px;\n height: 24px;\n`\n\nconst StyledClientLink = styled(Link)`\n max-width: calc(100% - 140px);\n`\n","import React from \"react\"\nimport styled from \"@emotion/styled\"\nimport { MapOverlay, useMapCards } from \"kui-crm\"\nimport ObjectForMapPoint from \"../ObjectForMapPoint\"\nimport { ApartmentOverlayProps } from \"./types\"\nimport ObjectForMapCard from \"../ObjectForMapCard\"\n\nconst ObjectForMapOverlay = (props: ApartmentOverlayProps) => {\n const { inspection, map, label, ...other } = props\n const { ref, isOpen, closeCard, toggleCard } = useMapCards(\n inspection.location!,\n map\n )\n\n return (\n <MapOverlay map={map} position={inspection.location!}>\n <StyledWrapper ref={ref}>\n <ObjectForMapPoint\n label={label}\n isActive={isOpen}\n onClick={toggleCard}\n />\n {isOpen && (\n <ObjectForMapCard\n inspection={inspection}\n onClose={closeCard}\n {...other}\n />\n )}\n </StyledWrapper>\n </MapOverlay>\n )\n}\n\nexport default ObjectForMapOverlay\n\nconst StyledWrapper = styled.div`\n position: relative;\n`\n"],"names":["_jsxs","templateObject_1","StyledWrapper","_jsx","templateObject_3","templateObject_2","templateObject_5","InspectionFeedbackStatus","StyledCard"],"mappings":"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"}