{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/plugins/eimzo.js","webpack:///./src/domain/OrderExecutorCreateInvoiceStrategy.js","webpack:///./src/enum/OrderExecutorCreateInvoiceStrategyType.js","webpack:///./src/store/modules/app/actions.js","webpack:///./src/helpers/number.js","webpack:///./src/helpers/math.js","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/services/company.service.js","webpack:///./src/services/sign/sign.service.js","webpack:///./src/plugins/vuetify.js","webpack:///./src/store/modules/auth/index.js","webpack:///./src/store/modules/sign/index.js","webpack:///./src/store/modules/setting/index.js","webpack:///./src/store/modules/layout/index.js","webpack:///./src/store/modules/app/index.js","webpack:///./src/store/modules/index.js","webpack:///./src/store/index.js","webpack:///./src/routes/router.js","webpack:///./src/layouts/Layout.vue?bb7a","webpack:///src/layouts/Layout.vue","webpack:///./src/layouts/Layout.vue?c103","webpack:///./src/layouts/Layout.vue","webpack:///./src/plugins/formatter.js","webpack:///./src/filters/index.js","webpack:///./src/main.js","webpack:///./src/domain/OrderShipmentDateMethodStrategy.js","webpack:///./src/enum/OrderShipmentDateMethodStrategyType.js","webpack:///./src/domain/OrderShipmentDeliveryDateStrategy.js","webpack:///./src/enum/OrderShipmentDeliveryDateStrategyType.js","webpack:///./src/enum/InvoiceStatus.js","webpack:///./src/store/modules/sign/actions.js","webpack:///./src/helpers/item.calculator.js","webpack:///./src/services/invoice.service.js","webpack:///./src/enum/SignActionResultCode.js","webpack:///./src/store/modules/setting/mutationNames.js","webpack:///./src/domain/OrderProductNameDefineMethodStrategy.js","webpack:///./src/enum/OrderProductNameDefineMethodStrategyType.js","webpack:///./src/domain/OrderContractDefineMethodStrategy.js","webpack:///./src/enum/OrderContractDefineMethodStrategyType.js","webpack:///./src/js/XLSX.js","webpack:///./src/store/modules/auth/actions.js","webpack:///./src/services/branch.service.js","webpack:///./src/eventbus/events.js","webpack:///./src/store/modules/layout/actions.js","webpack:///./src/domain/OrderItemQuantityLimitStrategy.js","webpack:///./src/enum/OrderItemQuantityLimitStrategyType.js","webpack:///./src/settings/index.js","webpack:///./src/domain/OrderExecutorEditStrategy.js","webpack:///./src/enum/OrderExecutorEditStrategyType.js","webpack:///./src/services/send.contract.approve.service.js","webpack:///./src/eventbus/global.event.bus.js","webpack:///./src/domain/Shipment.js","webpack:///./src/domain/InvoiceMemberDetails.js","webpack:///./src/domain/Invoice.js","webpack:///./src/domain/order/Order.js","webpack:///./src/domain/order/OrderItem.js","webpack:///./src/domain/order/OrderInfo.js","webpack:///./src/domain/invoice/InvoiceItemCatalog.js","webpack:///./src/domain/ShipmentInfo.js","webpack:///./src/domain/ShipmentItem.js","webpack:///./src/domain/InvoiceItem.js","webpack:///./src/domain/InvoiceInfo.js","webpack:///./src/domain/return-order/ReturnOrder.js","webpack:///./src/domain/return-order/ReturnOrderInfo.js","webpack:///./src/domain/return-order/ReturnOrderItem.js","webpack:///./src/domain/return-shipment/ReturnShipmentItem.js","webpack:///./src/domain/return-shipment/ReturnShipment.js","webpack:///./src/domain/return-shipment/ReturnShipmentInfo.js","webpack:///./src/helpers/mappers.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","CertificateCertkey","eimzoCertificateObject","subjectSeparatedValues","subjectName","split","innNumber","this","_getValueFromSeparatedValuesArray","_type","_disk","disk","_path","path","_name","_serialNumber","serialNumber","_validFromDate","Date","validFrom","_validEndDate","validTo","_innNumber","_companyName","_issuedPerson","_alias","values","defaultValue","keyInUpperCase","toUpperCase","substr","CertificatePfx","aliasValues","alias","todaysLastMoment","setHours","setMinutes","setSeconds","setMilliseconds","join","ActiveCertificate","certificate","keyId","activateTime","_certificate","_activateTime","_keyId","SignResult","pkcs7","signatureHex","_pkcs7","_signatureHex","AttachTimestampResult","signerSeriaNumber","_signerSeriaNumber","Eimzo","url","hostname","apiKey","settings","_url","_hostname","_apiKey","fromCharCode","String","cb_utob","cc","charCodeAt","re_utob","utob","u","replace","_encode","btoa","base64","encode","urisafe","m0","_helpers","_isWebSocketEnabled","WebSocket","_isInitialized","_certificates","_activeCertificates","self","_init","_loadCertificates","plugin","arguments","_makeRequest","loadKeyResponse","activatedCertificate","success","hashCode","activeCertificate","hashCodeBase64","createPkcs7Response","signResult","pkcs7_64","signature_hex","signer_serial_number","attackPkcs7Response","timestamp","attachTimeStampResponse","attachTimestampResult","fakturaHashCode","roamingHashCode","getTimestampFn","eimzo","createPkcs7","roamingCreatePkcs7SignResult","attachTimestamp","signature","axios","post","attachPkcs7","attachTimestampFromServer","roamingSignature","pkcs7b64","status","response","_loadDisks","diskIndex","disks","loadDiskPfxCertificatesPromise","loadPfxCertificatesResponse","pfxCerficiateIndex","certificates","pfxCertificate","loadDiskCertkeyCertificatesPromise","loadCertkeyCertificatesResponse","certKeyCertificate","socket","onopen","send","JSON","stringify","onmessage","close","parse","EIMZO_URL","EIMZO_HOST","EIMZO_API_KEY","id","_id","AfterConfirmByCustomer","OrderExecutorCreateInvoiceStrategy","OnShipmentWaybillCreation","APP_LOAD_NEW_SEND_CONTRACT_APPROVES","APP_SEND_CONTRACT_APPROVE_ALERT_CLOSE","APP_LOAD_USE_BRANCHES","decimalAdjust","mathFunction","exp","isNaN","NaN","toString","round","isMinus","Math","abs","floor","ceil","multiply","a","b","aStr","aDotIndex","indexOf","aExp","afterDotDigitsCount","bStr","bDotIndex","bExp","parseInt","map","webpackContext","req","webpackContextResolve","keys","CompanyService","query","limit","soliq","APIHOST","params","search","inn","oAuthAccess","SessionStorage","getItem","headers","access_token","searchText","res","catch","SignService","invoiceId","fakturaPkcs7","roamingPkcs7","certificateSerial","put","FakturaPkcs7","RoamingPkcs7","CertificateSerial","fakturaUniqueId","actNumber","ActNumber","attorneyId","documentUniqueId","comment","Comment","Vue","use","Vuetify","icons","iconfont","state","login","billing","balance","creditBalance","creditLimit","isCreditActive","isTrialActive","trialPeriodDaysLeft","trialStart","isLoading","getters","companyInn","company","isKorzinkaLogin","KORZINKA_INN","mutations","storeLogin","clearLogin","setBillingLoading","setBilling","actions","AUTH_LOAD_COMPANY_BILLING_INFO","commit","getBillingInfo","Balance","CreditBalance","CreditLimit","IsCreditActive","IsTrialActive","TrialPeriodDaysLeft","TrialStart","Moment","finally","AUTH_LOGGED_IN","EventBus","$emit","EVENT_AUTH_LOGGED_IN","loadedCertificate","isCertificateLoaded","setLoadedCertificate","unsetLoadedCertificate","SIGN_INVOICE_BY_EXECUTOR","dispatch","LAYOUT_LOADING_START","InvoiceServices","getSignProperties","getSignPropertiesResponse","HashDetail","timestampFn","getTimeStamp","getTimeStampResponse","FakturaHashCode","RoamingOwnerHashCode","EImzo","sign","signInvoiceByExecutor","busEvent","Events","SignActionResult","LAYOUT_LOADING_STOP","SIGN_INVOICE_BY_CUSTOMER","RoamingContractorHashCode","signByAttach","signInvoiceByCustomer","SIGN_RETURN_INVOICE_BY_EXECUTOR","getReturnInvoiceSignProperties","signReturnInvoiceByExecutor","isCheckedShowButtonSetZero","localStorage","checkedShowButtonZero","dateDisplayFormats","dateDisplayFormat","getValueCheckedShowButtonSetZero","mutationsNames","loadingCounter","layoutIsLoading","incrementLoadingCounter","decrementLoadingCounter","sendContractApproves","newSendContractApproveAlertClosed","branches","showNewSendContractApproveAlert","filter","in_use","useBranches","setSendContractApproves","payload","setNewSendContractApproveAlertClosed","setBranches","SendContractApproveService","getAllByExecutor","approves","uid","executor","executor_inn","executor_name","customer","customer_inn","customer_name","createdAt","created_at","updatedAt","updated_at","BranchService","getAll","branch","Id","Code","Name","ownerInn","OwnerInn","ownerName","OwnerName","auth","setting","layout","app","Vuex","Store","Router","routes","component","redirect","children","meta","expandOrders","expandShipments","expandInvoices","expandReturnOrders","expandReturnShipments","expandReturnInvoices","expandRoaming","expandContracts","expandSendContractApproves","_vm","_h","$createElement","_c","_self","staticRenderFns","formatNumberMinorPart","len","formatNumberMajorPart","reverse","decimalToString","major","commaIndex","minor","decimalNoTrim","ceilDecimalToString","date","toLocaleDateString","toLocaleTimeString","formatter","NumberHelper","format","$store","config","productionTip","vuetify","store","router","render","h","Layout","created","locale","$mount","DefineByExecutor","OrderShipmentDateMethodStrategy","FromOrderDateToOrderExpires","FromOrderExpireDate","OrderShipmentDeliveryDateStrategy","ExecutorDetermineDate","InvoiceCreated","InvoiceSend","InvoiceDeleted","InvoiceCanceled","CustomerApproved","CustomerDeclined","GetStatusText","GetStatusVariant","getTotal","quantity","price","total","getNdsValue","ndsRate","ndsMultiplier","MathHelper","ndsValue","getTotalWithNds","totalWithNds","getSumTotalWithNds","totalsWithNds","sum","_","reduce","memo","item","getSumTotalNdsValue","ndsValues","getSumTotal","totals","getDecimalWithTwoDigit","hasDecimal","toFixed","InvoiceService","sortBy","sortDesc","skip","startExpireOn","endExpireOn","isExecutorApproved","isCustomerApproved","isDeclined","statuses","desc","q","start","MOMENT_API_DATE_FORMAT","end","responseType","blob","Blob","URL","createObjectURL","PrintJs","getInfo","invoiceInfo","mappers","mapInvoiceInfo","column1","column2","column3","column4","column5","column6","column7","column8","column9","column10","column11","excelData","invoiceMetaRow","shipment","deliveryAddress","number","contractNumber","contractDate","executorDetails","customerDetails","itemsHeaderRow","each","items","index","itemRow","product","measurement","jsonDataToExcel","onEachInvoiceInfoComplete","getAllbox","column0","Records","invoiceRecord","invoice","mapInvoice","invoices","invoiceViewModel","loadInvoicePromices","invoiceInfoPromiseResults","column12","column13","column14","column15","column16","column17","column18","invoiceInfoPromiseResult","Items","invoiceItem","log","Shipment","DeliveryAddress","Number","moment","ContractNumber","ContractDate","ExecutorDetail","CustomerDetail","IsExecutorApproved","IsCustomerApproved","IsDeclined","Product","Quantity","Measurement","Price","Total","NdsRate","NdsValue","TotalWithNds","contractor","invoiceNumber","invoiceDate","signedDate","serial","link","getTime","body","click","remove","revokeObjectURL","Success","BalanceIsLow","SignatureValidationFailed","CreditLimitIsLow","RoamingSignatureValidationFailed","RoamingServiceProcessingError","SET_CHECKED_SHOW_BUTTON_ZERO","SET_DATE_DISPLAY_FORMAT","OrderProductNameDefineMethodStrategy","DefinedInOrder","OrderContractDefineMethodStrategy","DefineInOrder","filename","dataWS","XLSX","utils","json_to_sheet","wb","book_new","book_append_sheet","writeFile","EVENT_AUTH_LOGOUT","CompanyAttorneyAdded","CompanyAttorneyEdited","CompanyAttorneyDeleted","SignSuccess","SignGetHashCodeFailed","SignGotInvalidHashCode","SignEimzoFailed","SignBalanceLowFailed","SignCreditLimitIsLowFailed","SignSignatureValidationFailed","SignRoamingSignatureValidationFailed","SignRoamingServiceProcessingFailed","SignUnknownErrorFailed","TriggerOpenContacts","NoLimit","OrderItemQuantityLimitStrategy","SumLimit","MOMENT_API_DATE_TIME_FORMAT","MOMENT_API_DATETIME_FORMAT","AccountFakturaHostUrl","AccountFakturaClientId","SYSTEM_TERMS_FAILED_REDIRECT_URL","APP_FAKTURA_URL","APP_FAKTURA_LOGOUT_URL","INSTRUCTIONS_URL","INSTRUCTIONS_UZ_URL","APP_BILLING_PACKAGES_PATH","APP_BILLING_PAYMENT_TEMPLATE_PATH","NotificationServiceSettings","Host","TelegramBotUrl","ContractServiceSettings","Disabled","OrderExecutorEditStrategy","All","ItemQuantityToLowerValueOnly","executorInn","executorName","customerInn","customerName","header","eventBus","install","$bus","_order","_status","_number","_date","_waybillNumber","_waybillDate","_contractNumber","_contractDate","_createdOn","_isAccepted","_acceptedOn","_isDeclined","_lastDeclinedOn","_total","_totalInWords","_customerInn","_customerName","_consigneeInn","_consigneeName","_deliveryAddress","_loadingAddress","_driverName","_carSerial","_carModel","_isTrailer","_isSemiTrailer","_trailerSerial","_trailerModel","_deliveryDateTime","_invoices","find","x","_inn","_address","_phone","_bankAccountNumber","_bankName","_bankMfo","_oked","_okonx","_ndsRegistrationCode","_isCustomerApproved","_customerApprovedOn","_isExecutorApproved","_executorApprovedOn","_executorDetails","_customerDetails","_executorDirector","_executorAccountant","_executorReleaser","_customerProxyNumber","_customerProxyDate","_customerProxyName","_shipment","_correctDate","_correctDocumentUid","_correctNumber","_executorEditStrategy","_shipmentDeliveryDateStrategy","_executorCreateInvoiceStrategy","_shipmentDateMethodStrategy","_productNameDefineMethodStrategy","_contractDefineMethodStrategy","_itemQuantityLimitStrategy","_executorInn","_executorName","_expiresOn","_branch","_isExecutorDeclined","_executorDeclinedOn","_isReturn","_returnNumber","_returnDate","_returnInvoiceId","_returnInvoiceNumber","_returnInvoiceDate","_isReturnInvoiceExecutorApproved","_isReturnInvoiceCustomerApproved","_isStopped","_stoppedOn","_customerSystemId","_customerShipmentId","OrderItem","_product","_productCode","_measurement","_ndsRate","_ndsValue","_price","_quantity","_totalWithNds","_customerCode","_quantityLeft","_catalogCode","itemCalculator","recalculateComputes","_customerShipmentItemId","_items","Order","_groupCode","_groupNameRu","_groupNameUz","_classCode","_classNameRu","_classNameUz","_orderItem","_measurementCode","_barcode","_catalogName","_shipmentItem","_lgota","Invoice","ReturnOrder","ReturnShipment","mapOrderExecutorCreateInvoiceStrategy","OrderExecutorCreateInvoiceStrategies","codeKey","mapOrderExecutorEditStrategy","OrderExecutorEditStrategies","mapOrderShipmentDeliveryDateStrategy","OrderShipmentDeliveryDateStrategies","mapOrderShipmentDateMethodStrategy","OrderShipmentDateMethodStrategies","mapOrderProductNameDefineMethodStrategy","OrderProductNameDefineMethodStrategies","mapOrderContractDefineMethodStrategy","OrderContractDefineMethodStrategies","mapOrderItemQuantityLimitStrategy","OrderItemQuantityLimitStrategies","mapOrderItem","orderItemViewModel","orderItem","productCode","ProductCode","quantityLeft","QuantityLeft","customerCode","CustomerCode","customerSystemId","CustomerSystemItemId","customerShipmentItemId","CustomerShipmentItemId","catalogCode","CatalogCode","mapOrder","orderViewModel","order","executorEditStrategy","ExecutorEditStrategy","shipmentDeliveryDateStrategy","ShipmentDeliveryDateStrategy","executorCreateInvoiceStrategy","ExecutorCreateInvoiceStrategy","shipmentDateMethodStrategy","productNameDefineMethodStrategy","contractDefineMethodStrategy","itemQuantityLimitStrategy","CustomerInn","CustomerName","ExecutorInn","ExecutorName","expiresOn","ExpiresOn","BranchId","createdOn","CreatedOn","customerApprovedOn","CustomerApprovedOn","executorApprovedOn","ExecutorApprovedOn","isExecutorDeclined","IsExecutorDeclined","executorDeclinedOn","ExecutorDeclinedOn","isReturn","IsReturn","returnNumber","ReturnNumber","returnDate","ReturnDate","returnInvoiceId","ReturnInvoiceId","returnInvoiceNumber","ReturnInvoiceNumber","returnInvoiceDate","ReturnInvoiceDate","isReturnInvoiceExecutorApproved","IsReturnInvoiceExecutorApproved","isReturnInvoiceCustomerApproved","IsReturnInvoiceCustomerApproved","isStopped","IsStopped","stoppedOn","StoppedOn","Status","CustomerSystemId","customerShipmentId","CustomerShipmentId","mapOrderInfo","orderInfo","OrderInfo","mapShipmentItem","shipmentItem","ShipmentItem","mapShipment","shipmentViewModel","waybillNumber","WaypathBillNumber","waybillDate","WaypathBillDate","isAccepted","IsAccepted","acceptedOn","AcceptedOn","lastDeclinedOn","LastDeclinedOn","totalInWords","TotalInWords","consigneeInn","ConsigneeInn","consigneeName","ConsigneeName","loadingAddress","LoadingAddress","driverName","DriverName","carSerial","CarSerialNumber","carModel","CarModel","isTrailer","IsTrailer","isSemiTrailer","IsSemiTrailer","trailerSerial","TrailerSerialNumber","trailerModel","TrailerModel","deliveryDateTime","DeliveryDateTime","Invoices","mapShipmentInfo","ShipmentInfo","mapInvoiceItem","InvoiceItem","measurementCode","MeasurementCode","catalogName","CatalogName","barcode","Barcode","lgota","LgotaId","mapInvoiceMember","executorDirector","ExecutorDirector","executorAccountant","ExecutorAcccountant","executorReleaser","ExecutorReleaser","customerProxyNumber","CustomerProxyNumber","customerProxyDate","CustomerProxyDate","customerProxyName","CustomerProxyName","InvoiceInfo","invoiceMemberDetailsViewModel","invoiceMember","InvoiceMemberDetails","Inn","address","Address","phone","Phone","bankAccountNumber","BankAccountNumber","bankName","BankName","bankMfo","BankMfo","oked","Oked","okonx","Okonx","ndsRegistrationCode","NdsRegistrationCode","mapReturnOrderItem","ReturnOrderItem","mapReturnOrder","mapReturnOrderInfo","ReturnOrderInfo","mapReturnShipmentItem","ReturnShipmentItem","mapReturnShipment","ReturnInvoices","mapReturnInvoice","mapReturnShipmentInfo","ReturnShipmentInfo","mapReturnInvoiceItem","correctDate","CorrectDate","correctDocumentUid","CorrectDocumentUid","correctNumber","CorrectNumber","mapReturnInvoiceInfo","mapInvoiceItemCatalog","vm","InvoiceItemCatalog","groupCode","GroupCode","groupNameRu","GroupNameRu","groupNameUz","GroupNameUz","classCode","ClassCode","classNameRu","ClassNameRu","classNameUz","ClassNameUz"],"mappings":"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CX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,gBAAiB,OACjB,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,UAAW,OACX,aAAc,OACd,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW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CNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,SACN5C,KAAM,mBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,WACN5C,KAAM,qBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,aACN5C,KAAM,uBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,UACN5C,KAAM,oBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,MACN5C,KAAM,YACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,WACN5C,KAAM,aACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,MACN5C,KAAM,aACNkX,UAAW,kBAAM,2JAI7B,CACItU,KAAM,WACN5C,KAAM,WACNkX,UAAW,kBAAM,iDACjBG,KAAM,CACFE,iBAAiB,GAErBJ,SAAU,CAACnX,KAAM,gBACjBoX,SAAU,CACN,CACIxU,KAAM,MACN5C,KAAM,eACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,WACN5C,KAAM,uBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,UACN5C,KAAM,sBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,aACN5C,KAAM,yBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,UACN5C,KAAM,sBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,iBACN5C,KAAM,4BACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,oBACN5C,KAAM,oBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,WACN5C,KAAM,gBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,MACN5C,KAAM,gBACNkX,UAAW,kBAAM,2JAI7B,CACItU,KAAM,UACN5C,KAAM,UACNkX,UAAW,kBAAM,iDACjBC,SAAU,CAACnX,KAAM,eACjBqX,KAAM,CACFG,gBAAgB,GAEpBJ,SAAU,CACN,CACIxU,KAAM,wBACN5C,KAAM,4BACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,MACN5C,KAAM,cACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,WACN5C,KAAM,sBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,aACN5C,KAAM,wBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,SACN5C,KAAM,qBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,MACN5C,KAAM,eACNkX,UAAW,kBAAM,2JAK7B,CACItU,KAAM,eACN5C,KAAM,eACNkX,UAAW,kBAAM,iDACjBG,KAAM,CACFI,oBAAoB,GAExBN,SAAU,CAACnX,KAAM,oBACjBoX,SAAU,CACN,CACIxU,KAAM,MACN5C,KAAM,oBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,MACN5C,KAAM,mBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,WACN5C,KAAM,oBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,MACN5C,KAAM,oBACNkX,UAAW,kBAAM,2JAI7B,CACItU,KAAM,kBACN5C,KAAM,kBACNkX,UAAW,kBAAM,iDACjBG,KAAM,CACFK,uBAAuB,GAE3BP,SAAU,CAACnX,KAAM,uBACjBoX,SAAU,CACN,CACIxU,KAAM,MACN5C,KAAM,sBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,oBACN5C,KAAM,2BACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,WACN5C,KAAM,uBACNkX,UAAW,kBAAM,kDAErB,CACItU,KAAM,MACN5C,KAAM,uBACNkX,UAAW,kBAAM,2JAI7B,CACItU,KAAM,iBACN5C,KAAM,iBACNkX,UAAW,kBAAM,iDACjBG,KAAM,CACFM,sBAAsB,GAE1BP,SAAU,CACN,CACIxU,KAAM,MACN5C,KAAM,sBACNkX,UAAW,kBAAM,yJAYrB,CACItU,KAAM,UACN5C,KAAM,qBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,MACN5C,KAAM,sBACNkX,UAAW,kBAAM,2JAK7B,CACItU,KAAM,4BACN5C,KAAM,wBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,kCACN5C,KAAM,eACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,eACN5C,KAAM,gBACNkX,UAAW,kBAAM,mIAErB,CACItU,KAAM,uBACN5C,KAAM,4BACNkX,UAAW,kBAAM,yJAGrB,CACItU,KAAM,WACN5C,KAAM,WACNkX,UAAW,kBAAM,mIAErB,CACItU,KAAM,YACN5C,KAAM,YACNkX,UAAW,kBAAM,iDACjBC,SAAU,CAACnX,KAAM,eACjBoX,SAAU,CACN,CACIxU,KAAM,OACN5C,KAAM,cACNkX,UAAW,kBAAM,6GAErB,CACItU,KAAM,eACN5C,KAAM,yBACNkX,UAAW,kBAAM,0JAErB,CACItU,KAAM,WACN5C,KAAM,qBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,YACN5C,KAAM,sBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,yBACN5C,KAAM,mCACNkX,UAAW,kBAAM,2JAI7B,CACIlX,KAAM,UACN4C,KAAM,UACNsU,UAAW,kBAAM,iDACjBC,SAAU,CAACnX,KAAM,iBACjBqX,KAAM,CACFO,eAAe,GAEnBR,SAAU,CACN,CACIxU,KAAM,QACN5C,KAAM,gBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,kBACN5C,KAAM,0BACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,eACN5C,KAAM,uBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,eACN5C,KAAM,uBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,YACN5C,KAAM,oBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,oBACN5C,KAAM,4BACNkX,UAAW,kBAAM,2JAI7B,CACItU,KAAM,aACN5C,KAAM,aACNkX,UAAW,kBAAM,iDACjBC,SAAU,CAACnX,KAAM,wBACjBoX,SAAU,CACN,CACIxU,KAAM,YACNsU,UAAW,kBAAM,wJACjBlX,KAAM,0BAKlB,CACI4C,KAAM,WACN5C,KAAM,WACNkX,UAAW,kBAAM,iDACjBC,SAAU,CAACnX,KAAM,iBACjBqX,KAAM,CACFQ,iBAAiB,GAErBT,SAAU,CACN,CACIxU,KAAM,MACN5C,KAAM,gBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,MACN5C,KAAM,eACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,4BACN5C,KAAM,wBACNkX,UAAW,kBAAM,kDAErB,CACItU,KAAM,WACN5C,KAAM,gBACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,WACN5C,KAAM,gBACNkX,UAAW,kBAAM,2JAI7B,CACItU,KAAM,wBACN5C,KAAM,wBACNkX,UAAW,kBAAM,iDACjBC,SAAU,CAACnX,KAAM,0CACjBqX,KAAM,CACFS,4BAA4B,GAEhCV,SAAU,CACN,CACIxU,KAAM,kBACN5C,KAAM,yCACNkX,UAAW,kBAAM,yJAErB,CACItU,KAAM,kBACN5C,KAAM,yCACNkX,UAAW,kBAAM,kKCzdjD,G,oBAAS,WAAa,IAAIa,EAAIzV,KAAS0V,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,iBAC/FE,EAAkB,GCItB,GACEpY,KAAM,UCNmY,I,YCOvYkX,EAAY,eACd,EACA,EACAkB,GACA,EACA,KACA,KACA,MAIa,EAAAlB,E,QClBXmB,G,8BAAwB,SAACtX,EAAOuX,GAChC,MAAOvX,EAAM1F,OAASid,EAClBvX,EAAQ,GAAH,OAAMA,EAAN,KAET,OAAOA,EAAM8C,OAAO,EAAGyU,KAGvBC,EAAwB,SAAAxX,GACxB,IAAI7E,EAAS,GACb6E,EAAQA,EAAMqB,MAAM,IAAIoW,UAAUlU,KAAK,IACvC,IAAK,IAAInJ,EAAI,EAAGA,EAAI4F,EAAM1F,OAAQF,IAC1BA,EAAI,GAAKA,EAAI,IAAM,IACnBe,EAAS,GAAH,OAAMA,EAAN,MACVA,EAAS,GAAH,OAAMA,GAAN,OAAe6E,EAAM5F,IAM/B,OAHIe,EAAOb,QAAwC,MAA9Ba,EAAOA,EAAOb,OAAS,KACxCa,EAASA,EAAO2H,OAAO,EAAG3H,EAAOb,OAAS,IAEvCa,EAAOkG,MAAM,IAAIoW,UAAUlU,KAAK,KAGvCmU,EAAkB,SAAA1X,GAClB,GAAc,OAAVA,QAA4Bd,IAAVc,EAClB,MAAO,GAEX,IAAI2X,EAAQ3X,EAAM4K,WACdgN,EAAaD,EAAMpS,QAAQ,IAAK,KAAKiG,QAAQ,KAG7CqM,EAAQ,GASZ,OARID,GAAc,IACdC,EAAQF,EAAM7U,OAAO8U,EAAa,GAClCD,EAAQA,EAAM7U,OAAO,EAAG8U,IAG5BD,EAAQH,EAAsBG,GAC9BE,EAAQP,EAAsBO,EAAO,GAErC,UAAUF,EAAV,YAAmBE,IAGnBC,EAAgB,SAAA9X,GAChB,GAAc,OAAVA,QAA4Bd,IAAVc,EAClB,MAAO,GAEX,IAAI2X,EAAQ3X,EAAM4K,WACdgN,EAAaD,EAAMpS,QAAQ,IAAK,KAAKiG,QAAQ,KAG7CqM,EAAQ,GAQZ,OAPID,GAAc,IACdC,EAAQF,EAAM7U,OAAO8U,EAAa,GAClCD,EAAQA,EAAM7U,OAAO,EAAG8U,IAG5BD,EAAQH,EAAsBG,GAET,IAAjBE,EAAMvd,OACCqd,GAEXE,EAAQP,EAAsBO,EAAOA,EAAMvd,QAC3C,UAAUqd,EAAV,YAAmBE,KAGnBE,EAAsB,SAAA/X,GACtB,GAAc,OAAVA,QAA4Bd,IAAVc,EAClB,MAAO,GAEX,IAAI2X,EAAQ3X,EAAM4K,WACdgN,EAAaD,EAAMpS,QAAQ,IAAK,KAAKiG,QAAQ,KAOjD,OALIoM,GAAc,IACdD,EAAQA,EAAM7U,OAAO,EAAG8U,IAE5BD,EAAQH,EAAsBG,GAEvBA,GAGK,GACZD,gBAAiBA,EACjBK,oBAAqBA,EACrBD,cAAeA,G,YC9EnB1J,OAAIwF,OAAO,YAAY,SAACoE,GACpB,gBAAUA,EAAKC,qBAAf,YAAuCD,EAAKE,yBAGhD9J,OAAIwF,OAAO,QAAQ,SAACoE,GAChB,OAAOA,EAAKC,wBAGhB7J,OAAIwF,OAAO,QAAQ,SAACoE,GAChB,OAAOA,EAAKE,wBAGhB9J,OAAIwF,OAAO,WAAW,SAAC5T,GACnB,OAAOmY,EAAUT,gBAAgB1X,MAGrCoO,OAAIwF,OAAO,4BAA4B,SAAC5T,GACpC,OAAOmY,EAAUT,gBAAgBU,OAAavN,MAAM7K,GAAQ,OAGhEoO,OAAIwF,OAAO,iBAAiB,SAAC5T,GACzB,OAAOmY,EAAUL,cAAc9X,MAGnCoO,OAAIwF,OAAO,eAAe,SAAC5T,GACvB,OAAOmY,EAAUJ,oBAAoB/X,MAGzCoO,OAAIwF,OAAO,cAAc,SAAA5T,GACrB,OAAOA,EAAMqY,OAAOC,EAAOlJ,QAAQ6D,sBCxBvC7E,OAAImK,OAAOC,eAAgB,EAG3B,IAAIpK,OAAI,CACJqK,UACAC,QACAC,SACAC,OAAQ,SAAAC,GAAC,OAAIA,EAAEC,IACfC,QALI,WAMAtI,IAAOuI,OAAO,SAEnBC,OAAO,S,gGCDN,WAAYlP,EAAI9K,GAAM,6FAClBsC,KAAKyI,IAAMD,EACXxI,KAAKO,MAAQ7C,E,kDAjBb,OAAOsC,KAAKyI,K,aAGThK,GACHuB,KAAKyI,IAAMhK,I,2BAIX,OAAOuB,KAAKO,O,aAGP9B,GACLuB,KAAKO,MAAQ9B,M,KCjBrB,6GAEO,IAAMkZ,EAAmB,IAAIC,EAAgC,EAAG,4BAC1DC,EAA8B,IAAID,EAAgC,EAAG,iD,gGCiB9E,WAAYpP,EAAI9K,GAAM,6FAClBsC,KAAKyI,IAAMD,EACXxI,KAAKO,MAAQ7C,E,kDAjBb,OAAOsC,KAAKyI,K,aAGThK,GACHuB,KAAKyI,IAAMhK,I,2BAIX,OAAOuB,KAAKO,O,aAGP9B,GACLuB,KAAKO,MAAQ9B,M,KCjBrB,0GAEO,IAAMqZ,EAAsB,IAAIC,EAAkC,EAAG,4BAC/DC,EAAwB,IAAID,EAAkC,EAAG,yB,kCCH9E,gRAAO,IAAME,EAAiB,EACjBC,EAAc,EACdC,EAAiB,EACjBC,EAAkB,EAClBC,EAAmB,EACnBC,EAAmB,EAEnBC,EAAgB,SAAAvR,GACzB,OAAQA,GACJ,KAAKiR,EACD,MAAO,sBACX,KAAKC,EACD,MAAO,0BACX,KAAKC,EACD,MAAO,uBACX,KAAKC,EACD,MAAO,uBACX,KAAKC,EACD,MAAO,wBACX,KAAKC,EACD,MAAO,uBACX,QACI,MAAO,wBAINE,EAAmB,SAAAxR,GAC5B,OAAQA,GACJ,KAAKiR,EACD,MAAO,iCACX,KAAKC,EACD,MAAO,mBACX,KAAKE,EACD,MAAO,sBACX,KAAKD,EACD,MAAO,kBACX,KAAKE,EACD,MAAO,oBACX,KAAKC,EACD,MAAO,2BACX,QACI,MAAO,oC,kCCzCnB,sGAAO,IAAM1I,EAA2B,2BAC3BmB,EAA2B,2BAC3BI,EAAkC,mC,oCCF/C,iDAKe,QACXsH,SADW,SACFC,EAAUC,GACf,IAAIC,EAAQpP,OAAKI,SAAS8O,EAAUC,GAEpC,OAAO9B,OAAavN,MAAMsP,GAAQ,IAGtCC,YAPW,SAOCH,EAAUC,EAAOG,GACzB,IAAIF,EAAQ5Y,KAAKyY,SAASC,EAAUC,GAEhCI,EAAgBC,OAAWpP,SAASkP,EAAS,KAC7CG,EAAWD,OAAWpP,SAASgP,EAAOG,GAG1C,OADAE,EAAWpC,OAAavN,MAAM2P,GAAW,GAClCA,GAGXC,gBAjBW,SAiBKR,EAAUC,EAAOG,GAC7B,IAAIF,EAAQ5Y,KAAKyY,SAASC,EAAUC,GAChCM,EAAWjZ,KAAK6Y,YAAYH,EAAUC,EAAOG,GAC7CK,EAAeP,EAAQK,EAG3B,OADAE,EAAetC,OAAavN,MAAM6P,GAAe,GAC1CA,GAGXC,mBA1BW,SA0BQC,GACf,IAAIC,EAAMC,IAAEC,OAAOH,GAAe,SAACI,EAAMC,GACrC,OAAOD,EAAOC,KAElB,OAAO7C,OAAavN,MAAMgQ,GAAM,IAGpCK,oBAjCW,SAiCSC,GAChB,IAAIN,EAAMC,IAAEC,OAAOI,GAAW,SAACH,EAAMC,GACjC,OAAOD,EAAOC,KAElB,OAAO7C,OAAavN,MAAMgQ,GAAM,IAGpCO,YAxCW,SAwCCC,GACR,IAAIR,EAAMC,IAAEC,OAAOM,GAAQ,SAACL,EAAMC,GAC9B,OAAOD,EAAOC,KAElB,OAAO7C,OAAavN,MAAMgQ,GAAM,IAGpCS,uBA/CW,SA+CYtb,GAEnB,OAAGuB,KAAKga,WAAWvb,GACRA,EAAMwb,QAAQ,GAElBxb,GAEXub,WAtDW,SAsDAvb,GACP,GAAsB,kBAAXA,EACP,SAAUA,EAAQ,M,qPCpDxByb,E,uGACO3hB,GACL,IAAM8S,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eAEtD,OAAO7E,IAAMC,KAAN,UAAcsE,OAAd,wBAA6C1S,EAAM,CACtDiT,QAAS,CACL,+BAA2BH,EAAYI,mB,4CAM/C,IAAMJ,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eAEtD,OAAO7E,IAAMrI,IAAN,UAAa4M,OAAb,gCAAoD,CACvDO,QAAS,CAAE,+BAA2BH,EAAYI,mB,mCAIqG,IAAnJ0O,EAAmJ,EAAnJA,OAAQC,EAA2I,EAA3IA,SAAUC,EAAiI,EAAjIA,KAAMtP,EAA2H,EAA3HA,MAAOI,EAAoH,EAApHA,OAAQmP,EAA4G,EAA5GA,cAAeC,EAA6F,EAA7FA,YAAa3G,EAAgF,EAAhFA,OAAQ4G,EAAwE,EAAxEA,mBAAoBC,EAAoD,EAApDA,mBAAoBC,EAAgC,EAAhCA,WAAY1T,EAAoB,EAApBA,OAAQ2T,EAAY,EAAZA,SACzItP,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eAEtD,OAAO7E,IAAMrI,IAAN,UAAa4M,OAAb,sBAA0C,CAC7CC,OAAQ,CACJiP,OAAQA,EACRS,KAAMR,EACNC,KAAMA,EACNtP,MAAOA,EACP8P,EAAG1P,EACH2P,MAAOR,EAAgBA,EAAcxD,OAAOiE,QAA0B,KACtEC,IAAKT,EAAcA,EAAYzD,OAAOiE,QAA0B,KAChEnH,OAAQA,GAAkB,KAC1B4G,mBAAoD,mBAAxBA,EAAoCA,EAAqB,KACrFC,mBAAoD,mBAAxBA,EAAoCA,EAAqB,KACrFC,WAAoC,mBAAhBA,EAA4BA,EAAa,KAC7D1T,OAA2B,kBAAZA,EAAuBA,EAAS,KAC/C2T,SAASA,GAEbnP,QAAS,CACL,+BAA2BH,EAAYI,mB,8BAK3CjD,GACJ,IAAM6C,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eAEtD,OAAO7E,IAAMrI,IAAN,UAAa4M,OAAb,4BAAwCzC,GAAM,CACjDgD,QAAS,CAAE,+BAA2BH,EAAYI,mB,wCAIxCjD,GACd,IAAM6C,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eAEtD,OAAO7E,IAAMrI,IAAN,UAAa4M,OAAb,sCAAkDzC,GAAM,CAC3DgD,QAAS,CAAE,+BAA2BH,EAAYI,mB,+BAIjDjD,GACL,IAAM6C,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eAChD1O,EAAU6J,IAAMrI,IAAN,UAAa4M,OAAb,mBAAuC,CACnDgQ,aAAc,OACdzP,QAAS,CACL,+BAA2BH,EAAYI,eAE3CP,OAAQ,CAAE1C,GAAIA,KAUlB,OAPA3L,EAAQF,MAAK,SAAAsK,GACT,IAAMiU,EAAO,IAAIC,KAAK,CAAClU,EAAS1O,OAC1B0K,EAAM1D,OAAO6b,IAAIC,gBAAgBH,GAEvCI,IAAQrY,MAGLpG,I,0CAGS2L,GAAI,WACpB,OAAO,IAAI1N,SAAQ,SAACC,EAASC,GACzB,EAAKugB,QAAQ/S,GACR7L,MAAK,SAAAsK,GACF,IAAMuU,EAAcC,OAAQC,eAAezU,EAAS1O,MAE9CojB,EAAU,UACVC,EAAU,QACVC,EAAU,OACVC,EAAU,QACVC,EAAU,iBACVC,EAAU,gBACVC,EAAU,YACVC,EAAU,WACVC,EAAU,uBACVC,EAAW,sBACXC,EAAW,qBAEbC,EAAY,GAEZC,EAAiB,GACrBA,EAAeZ,GAAWH,EAAYgB,SAASC,gBAC/CF,EAAeX,GAAWJ,EAAYkB,OACtCH,EAAeV,GAAWL,EAAY/E,KAAKK,OAAO,cAClDyF,EAAeT,GAAWN,EAAY5C,MACtC2D,EAAeR,GAAWP,EAAYmB,eACtCJ,EAAeP,GAAWR,EAAYoB,aAAa9F,OAAO,cAC1DyF,EAAeN,GAAWT,EAAYqB,gBAAgBnf,KACtD6e,EAAeL,GAAWV,EAAYsB,gBAAgBpf,KACtD6e,EAAeJ,GAAWX,EAAYhB,mBAAqB,KAAO,MAClE+B,EAAeH,GAAYZ,EAAYf,mBAAqB,KAAO,MACnE8B,EAAeF,GAAYb,EAAYgB,SAAS9B,WAAa,KAAO,MACpE4B,EAAUjjB,KAAKkjB,GAGfD,EAAUjjB,KAAK,IAEf,IAAI0jB,EAAiB,GACrBA,EAAepB,GAAW,IAC1BoB,EAAenB,GAAW,QAC1BmB,EAAelB,GAAW,SAC1BkB,EAAejB,GAAW,aAC1BiB,EAAehB,GAAW,kBAC1BgB,EAAef,GAAW,YAC1Be,EAAed,GAAW,aAC1Bc,EAAeb,GAAW,YAC1Ba,EAAeZ,GAAW,cAC1BY,EAAeX,GAAY,GAC3BW,EAAeV,GAAY,GAC3BC,EAAUjjB,KAAK0jB,GAGfxD,IAAEyD,KAAKxB,EAAYyB,OAAO,SAACvD,EAAMwD,GAC7B,IAAIC,EAAU,GAEdA,EAAQxB,GAAR,WAAuBuB,EAAQ,GAC/BC,EAAQvB,GAAWlC,EAAK0D,QACxBD,EAAQtB,GAAWnC,EAAK2D,YACxBF,EAAQrB,GAAWpC,EAAKhB,SACxByE,EAAQpB,GAAWrC,EAAKf,MACxBwE,EAAQnB,GAAWtC,EAAKd,MACxBuE,EAAQlB,GAAWvC,EAAKZ,QACxBqE,EAAQjB,GAAWxC,EAAKT,SACxBkE,EAAQhB,GAAWzC,EAAKP,aACxBgE,EAAQf,GAAY,GACpBe,EAAQd,GAAY,GAEpBC,EAAUjjB,KAAK8jB,MAGnBG,eAAgBhB,EAAD,uBAA4Bd,EAAYkB,OAAxC,eAAqDlB,EAAY/E,KAAKK,OAAO,cAA7E,cAAgG0E,EAAYgB,SAASC,gBAArH,eAA2IjB,EAAY5C,MAAvJ,cAEf7d,MACDC,Q,uCAIEkQ,EAAQqS,GAA2B,WAChD,OAAO,IAAIziB,SAAQ,SAACC,EAASC,GAEzB,EAAKwiB,UAAUtS,GACVvO,MAAK,SAAAsK,GACyC,oBAA/BsW,GACRA,IAEJ,IAAME,EAAU,IACV9B,EAAU,UACVC,EAAU,QACVC,EAAU,OACVC,EAAU,QACVC,EAAU,iBACVC,EAAU,gBACVC,EAAU,YACVC,EAAU,WACVC,EAAU,uBACVC,EAAW,sBACXC,EAAW,qBAEbC,EAAY,GAChB/C,IAAEyD,KAAK/V,EAAS1O,KAAKmlB,SAAS,SAACC,EAAeT,GACC,oBAA/BK,GACRA,IAEJ,IAAMK,EAAUnC,OAAQoC,WAAWF,GAE/BpB,EAAiB,GACrBA,EAAekB,GAAf,UAA6BP,EAAQ,GACrCX,EAAeZ,GAAWiC,EAAQpB,SAASC,gBAC3CF,EAAeX,GAAWgC,EAAQlB,OAClCH,EAAeV,GAAW+B,EAAQnH,KAAKK,OAAO,cAC9CyF,EAAeT,GAAW8B,EAAQhF,MAClC2D,EAAeR,GAAW6B,EAAQjB,eAClCJ,EAAeP,GAAW4B,EAAQhB,aAAa9F,OAAO,cACtDyF,EAAeN,GAAW2B,EAAQf,gBAAgBnf,KAClD6e,EAAeL,GAAW0B,EAAQd,gBAAgBpf,KAClD6e,EAAeJ,GAAWyB,EAAQpD,mBAAqB,KAAO,MAC9D+B,EAAeH,GAAYwB,EAAQnD,mBAAqB,KAAO,MAC/D8B,EAAeF,GAAYuB,EAAQpB,SAAS9B,WAAa,KAAO,MAChE4B,EAAUjjB,KAAKkjB,MAGnBe,eAAgBhB,EAAD,2BAEfvhB,MACDC,Q,gDAGWkQ,EAAQqS,GAA2B,WACzDvd,KAAKwd,UAAUtS,GACVvO,MAAK,SAAAsK,GACF,IAAM6W,EAAWvE,IAAE/O,IAAIvD,EAAS1O,KAAKmlB,SAAS,SAAAK,GAC1C,OAAOtC,OAAQoC,WAAWE,MAExBC,EAAsB,GAC5BzE,IAAEyD,KAAKc,GAAU,SAAAF,GACbI,EAAoB3kB,KAAK,EAAKkiB,QAAQqC,EAAQpV,IAAI2G,SAAQ,WACX,oBAA/BoO,GACRA,WAGZziB,QAAQ+C,IAAImgB,GAAqBrhB,MAAK,SAAAshB,GAClC,IAAMR,EAAU,IACV9B,EAAU,UACVC,EAAU,QACVC,EAAU,OAEVC,EAAU,iBACVC,EAAU,gBACVC,EAAU,YACVC,EAAU,WACVC,EAAU,uBACVC,EAAU,sBACVC,EAAW,qBACXC,EAAW,QACX6B,EAAW,aACXC,EAAW,SACXC,EAAW,0BACXC,EAAW,oBACXC,EAAW,aACXC,EAAW,YACXC,EAAW,cACblC,EAAY,GACZY,EAAQ,EACZ3D,IAAEyD,KAAKiB,GAA2B,SAAAQ,GAC9BlF,IAAEyD,KAAKyB,EAAyBlmB,KAAKmmB,OAAO,SAAAC,GACxC,IAAIpC,EAAiB,GACrBhd,OAAOF,QAAQuf,IAAID,GACnBpC,EAAekB,GAAf,UAA6BP,EAAQ,GACrCX,EAAeZ,GAAW8C,EAAyBlmB,KAAKsmB,SAASC,gBACjEvC,EAAeX,GAAW6C,EAAyBlmB,KAAKwmB,OACxDxC,EAAeV,GAAWmD,IAAOP,EAAyBlmB,KAAKoI,MAAMmW,OAAO,cAC5EyF,EAAeT,GAAW2C,EAAyBlmB,KAAK0mB,eACxD1C,EAAeR,GAAWiD,IAAOP,EAAyBlmB,KAAK2mB,cAAcpI,OAAO,cACpFyF,EAAeP,GAAWyC,EAAyBlmB,KAAK4mB,eAAepL,KACvEwI,EAAeN,GAAWwC,EAAyBlmB,KAAK6mB,eAAerL,KACvEwI,EAAeL,GAAWuC,EAAyBlmB,KAAK8mB,mBAAqB,KAAO,MACpF9C,EAAeJ,GAAWsC,EAAyBlmB,KAAK+mB,mBAAqB,KAAO,MACpF/C,EAAeH,GAAYqC,EAAyBlmB,KAAKsmB,SAASU,WAAa,KAAO,MACtFhD,EAAeF,GAAYsC,EAAYa,QACvCjD,EAAe2B,GAAYS,EAAYc,SACvClD,EAAe4B,GAAYQ,EAAYe,YACvCnD,EAAe6B,GAAYO,EAAYgB,MACvCpD,EAAe8B,GAAYM,EAAYiB,MACvCrD,EAAe+B,GAAYK,EAAYkB,QACvCtD,EAAegC,GAAYI,EAAYmB,SACvCvD,EAAeiC,GAAYG,EAAYoB,aACvCzD,EAAUjjB,KAAKkjB,MAEnBW,OAEJI,eAAgBhB,EAAD,8BAChB1Q,OAAM,SAAAxO,GACLmC,OAAOF,QAAQuf,IAAIxhB,W,6BAI5B0O,EAAUvT,GACb,IAAM8S,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eACtD,OAAO7E,IAAMwF,IAAN,UAAajB,OAAb,sBAA0C1S,EAAK,CAClD2S,OAAQ,CACJ1C,GAAIsD,GAERN,QAAS,CACL,+BAA2BH,EAAYI,mB,0DAKuC,IAAvDV,EAAuD,EAAvDA,MAAOsP,EAAgD,EAAhDA,KAAM2F,EAA0C,EAA1CA,WAAYC,EAA8B,EAA9BA,cAAeC,EAAe,EAAfA,YACjE7U,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eAEtD,OAAO7E,IAAMrI,IAAN,UAAa4M,OAAb,gCAAoD,CACvDC,OAAQ,CACJmP,KAAMA,EACNtP,MAAOA,EACPiV,WAAoC,qBAAhBA,EAA8B,KAAOA,EACzDC,cAA0C,qBAAnBA,EAAiC,KAAOA,EAC/DC,YAAaA,EAAcA,EAAYpJ,OAAOiE,QAA0B,MAE5EvP,QAAS,CACL,+BAA2BH,EAAYI,mB,0DAK2D,IAA3EV,EAA2E,EAA3EA,MAAOsP,EAAoE,EAApEA,KAAM2F,EAA8D,EAA9DA,WAAYC,EAAkD,EAAlDA,cAAeC,EAAmC,EAAnCA,YAAaC,EAAsB,EAAtBA,WAAYvM,EAAU,EAAVA,OAC1FvI,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eAEtD,OAAO7E,IAAMrI,IAAN,UAAa4M,OAAb,uCAA2D,CAC9DC,OAAQ,CACJmP,KAAMA,EACNtP,MAAOA,EACPiV,WAAoC,qBAAhBA,EAA8B,KAAOA,EACzDC,cAA0C,qBAAnBA,EAAiC,KAAOA,EAC/DC,YAAaA,EAAcA,EAAYpJ,OAAOiE,QAA0B,KACxEoF,WAAYA,EAAaA,EAAWrJ,OAAOiE,QAA0B,KACrEnH,OAAQA,GAEZpI,QAAS,CACL,+BAA2BH,EAAYI,mB,8DAKuE,IAAnFV,EAAmF,EAAnFA,MAAOsP,EAA4E,EAA5EA,KAAM2F,EAAsE,EAAtEA,WAAYC,EAA0D,EAA1DA,cAAeC,EAA2C,EAA3CA,YAAaC,EAA8B,EAA9BA,WAAYvM,EAAkB,EAAlBA,OAAQwM,EAAU,EAAVA,OACtG/U,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eAElD1O,EAAU6J,IAAMrI,IAAN,UAAa4M,OAAb,+BAAmD,CAC7DC,OAAQ,CACJmP,KAAMA,EACNtP,MAAOA,EACPiV,WAAoC,qBAAhBA,EAA8B,KAAOA,EACzDC,cAA0C,qBAAnBA,EAAiC,KAAOA,EAC/DC,YAAaA,EAAcA,EAAYpJ,OAAOiE,QAA0B,KACxEoF,WAAYA,EAAaA,EAAWrJ,OAAOiE,QAA0B,KACrEnH,OAAQA,EACRwM,OAAQA,GAAkB,MAE9BnF,aAAc,OACdzP,QAAS,CACL,+BAA2BH,EAAYI,iBAgB/C,OAZA5O,EAAQF,MAAK,SAAAsK,GACT,IAAMiU,EAAO,IAAIC,KAAK,CAAClU,EAAS1O,OAC1B0K,EAAM1D,OAAO6b,IAAIC,gBAAgBH,GACjCmF,EAAOjlB,SAASQ,cAAc,KACpCykB,EAAKplB,KAAOgI,EACZod,EAAKljB,aAAa,WAAlB,qBAA4C,IAAIwD,MAAQ2f,UAAxD,SACAllB,SAASmlB,KAAK7jB,YAAY2jB,GAC1BA,EAAKG,QACLH,EAAKI,SACLlhB,OAAO6b,IAAIsF,gBAAgBzd,MAGxBpG,I,yDAGkG,IAA3EkO,EAA2E,EAA3EA,MAAOsP,EAAoE,EAApEA,KAAM2F,EAA8D,EAA9DA,WAAYC,EAAkD,EAAlDA,cAAeC,EAAmC,EAAnCA,YAAaC,EAAsB,EAAtBA,WAAYvM,EAAU,EAAVA,OACzFvI,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eAEtD,OAAO7E,IAAMrI,IAAN,UAAa4M,OAAb,sCAA0D,CAC7DC,OAAQ,CACJmP,KAAMA,EACNtP,MAAOA,EACPiV,WAAoC,qBAAhBA,EAA8B,KAAOA,EACzDC,cAA0C,qBAAnBA,EAAiC,KAAOA,EAC/DC,YAAaA,EAAcA,EAAYpJ,OAAOiE,QAA0B,KACxEoF,WAAYA,EAAaA,EAAWrJ,OAAOiE,QAA0B,KACrEnH,OAAQA,GAEZpI,QAAS,CACL,+BAA2BH,EAAYI,mB,6DAKsE,IAAnFV,EAAmF,EAAnFA,MAAOsP,EAA4E,EAA5EA,KAAM2F,EAAsE,EAAtEA,WAAYC,EAA0D,EAA1DA,cAAeC,EAA2C,EAA3CA,YAAaC,EAA8B,EAA9BA,WAAYvM,EAAkB,EAAlBA,OAAQwM,EAAU,EAAVA,OACrG/U,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eAElD1O,EAAU6J,IAAMrI,IAAN,UAAa4M,OAAb,8BAAkD,CAC5DC,OAAQ,CACJmP,KAAMA,EACNtP,MAAOA,EACPiV,WAAoC,qBAAhBA,EAA8B,KAAOA,EACzDC,cAA0C,qBAAnBA,EAAiC,KAAOA,EAC/DC,YAAaA,EAAcA,EAAYpJ,OAAOiE,QAA0B,KACxEoF,WAAYA,EAAaA,EAAWrJ,OAAOiE,QAA0B,KACrEnH,OAAQA,EACRwM,OAAQA,GAAkB,MAE9BnF,aAAc,OACdzP,QAAS,CACL,+BAA2BH,EAAYI,iBAgB/C,OAZA5O,EAAQF,MAAK,SAAAsK,GACT,IAAMiU,EAAO,IAAIC,KAAK,CAAClU,EAAS1O,OAC1B0K,EAAM1D,OAAO6b,IAAIC,gBAAgBH,GACjCmF,EAAOjlB,SAASQ,cAAc,KACpCykB,EAAKplB,KAAOgI,EACZod,EAAKljB,aAAa,WAAlB,qBAA4C,IAAIwD,MAAQ2f,UAAxD,SACAllB,SAASmlB,KAAK7jB,YAAY2jB,GAC1BA,EAAKG,QACLH,EAAKI,SACLlhB,OAAO6b,IAAIsF,gBAAgBzd,MAGxBpG,I,yDAGsF,IAA/DkO,EAA+D,EAA/DA,MAAOsP,EAAwD,EAAxDA,KAAM2F,EAAkD,EAAlDA,WAAYC,EAAsC,EAAtCA,cAAeC,EAAuB,EAAvBA,YAAatM,EAAU,EAAVA,OAC7EvI,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eAEtD,OAAO7E,IAAMrI,IAAN,UAAa4M,OAAb,sCAA0D,CAC7DC,OAAQ,CACJmP,KAAMA,EACNtP,MAAOA,EACPiV,WAAoC,qBAAhBA,EAA8B,KAAOA,EACzDC,cAA0C,qBAAnBA,EAAiC,KAAOA,EAC/DC,YAAaA,EAAcA,EAAYpJ,OAAOiE,QAA0B,KACxEnH,OAAQA,GAEZpI,QAAS,CACL,+BAA2BH,EAAYI,mB,6DAKkD,IAA/DV,EAA+D,EAA/DA,MAAOsP,EAAwD,EAAxDA,KAAM2F,EAAkD,EAAlDA,WAAYC,EAAsC,EAAtCA,cAAeC,EAAuB,EAAvBA,YAAatM,EAAU,EAAVA,OACjFvI,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eAEtD,OAAO7E,IAAMrI,IAAN,UAAa4M,OAAb,0CAA8D,CACjEC,OAAQ,CACJmP,KAAMA,EACNtP,MAAOA,EACPiV,WAAoC,qBAAhBA,EAA8B,KAAOA,EACzDC,cAA0C,qBAAnBA,EAAiC,KAAOA,EAC/DC,YAAaA,EAAcA,EAAYpJ,OAAOiE,QAA0B,KACxEnH,OAAQA,GAEZpI,QAAS,CACL,+BAA2BH,EAAYI,mB,wDAK6C,IAA/DV,EAA+D,EAA/DA,MAAOsP,EAAwD,EAAxDA,KAAM2F,EAAkD,EAAlDA,WAAYC,EAAsC,EAAtCA,cAAeC,EAAuB,EAAvBA,YAAatM,EAAU,EAAVA,OAC5EvI,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eAEtD,OAAO7E,IAAMrI,IAAN,UAAa4M,OAAb,qCAAyD,CAC5DC,OAAQ,CACJmP,KAAMA,EACNtP,MAAOA,EACPiV,WAAoC,qBAAhBA,EAA8B,KAAOA,EACzDC,cAA0C,qBAAnBA,EAAiC,KAAOA,EAC/DC,YAAaA,EAAcA,EAAYpJ,OAAOiE,QAA0B,KACxEnH,OAAQA,GAEZpI,QAAS,CACL,+BAA2BH,EAAYI,mB,yCAKhB,IAAjBV,EAAiB,EAAjBA,MAAOI,EAAU,EAAVA,OACrB,OAAOzE,IAAMrI,IAAN,UAAa4M,OAAb,2BAA+C,CAClDC,OAAQ,CACJH,MAAOA,GAASA,EAAQ,KACxB8P,EAAwB,qBAAZ1P,GAAsC,OAAXA,EAAmB,GAAKA,S,KAMhE,WAAI+O,G,oCCtenB,4MAAO,IAAMyG,EAAU,EACVC,EAAe,EAEfC,EAA4B,EAI5BC,EAAmB,EAEnBC,EAAmC,EACnCC,EAAgC,I,oCCV7C,oEAAO,IAAMC,EAA+B,+BAC/BC,EAA0B,2B,gGCmBnC,WAAY1Y,EAAI9K,GAAM,6FAClBsC,KAAKyI,IAAMD,EACXxI,KAAKO,MAAQ7C,E,kDAjBb,OAAOsC,KAAKyI,K,aAGThK,GACHuB,KAAKyI,IAAMhK,I,2BAIX,OAAOuB,KAAKO,O,aAGP9B,GACL,OAAOuB,KAAKO,MAAQ9B,M,KCjB5B,gGAEO,IAAMkZ,EAAmB,IAAIwJ,EAAqC,EAAE,4BAC9DC,EAAiB,IAAID,EAAqC,EAAG,wB,gGCiBtE,WAAY3Y,EAAI9K,GAAM,6FAClBsC,KAAKyI,IAAMD,EACXxI,KAAKO,MAAQ7C,E,kDAjBb,OAAOsC,KAAKyI,K,aAGThK,GACHuB,KAAKyI,IAAMhK,I,2BAIX,OAAOuB,KAAKO,O,aAGP9B,GACLuB,KAAKO,MAAQ9B,M,KCjBrB,+FAEO,IAAMkZ,EAAmB,IAAI0J,EAAkC,EAAG,4BAC5DC,EAAgB,IAAID,EAAkC,EAAG,wB,oCCHtE,2DAEO,SAAS/D,EAAgB/kB,EAAMgpB,GAClC,IAAIC,EAASC,IAAKC,MAAMC,cAAcppB,GAClCqpB,EAAKH,IAAKC,MAAMG,WACpBJ,IAAKC,MAAMI,kBAAkBF,EAAIJ,EAAQ,QAEzCD,EAAWA,GAAsB,YACjCE,IAAKM,UAAUH,EAAIL,K,kCCRvB,oEAAO,IAAM/S,EAAiC,iCACjCY,EAAiB,kB,oHCGxBsE,E,uGAEE,IAAMrI,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eACtD,OAAO7E,IAAMrI,IAAN,UAAa4M,OAAb,eAAmC,CACtCO,QAAS,CAAE,+BAA2BH,EAAYI,mB,yCAIvCL,GACf,IAAMC,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eACtD,OAAO7E,IAAMrI,IAAN,UAAa4M,OAAb,eAAmC,CACtCO,QAAS,CAAE,+BAA2BH,EAAYI,eAClDP,OAAQ,CAAC1C,GAAI4C,S,KAKV,WAAIsI,G,kCCrBnB,giBAAO,IAAMnE,EAAuB,uBACvByS,EAAoB,oBAGpBC,EAAuB,uBACvBC,EAAwB,wBACxBC,EAAyB,yBAEzBC,EAAc,cACdC,EAAwB,wBACxBC,EAAyB,yBACzBC,EAAkB,kBAClBC,EAAuB,uBACvBC,EAA6B,6BAC7BC,EAAgC,gCAChCC,EAAuC,uCACvCC,EAAqC,qCACrCC,EAAyB,yBAEzBC,EAAsB,uB,kCCnBnC,oEAAO,IAAMhT,EAAuB,uBACvBgB,EAAsB,uB,8FCmB/B,WAAYtI,EAAI9K,GAAM,6FAClBsC,KAAKyI,IAAMD,EACXxI,KAAKO,MAAQ7C,E,kDAjBb,OAAOsC,KAAKyI,K,aAGThK,GACHuB,KAAKyI,IAAMhK,I,2BAIX,OAAOuB,KAAKO,O,aAGP9B,GACL,OAAOuB,KAAKO,MAAQ9B,M,KCjB5B,iFAEO,IAAMskB,EAAU,IAAIC,EAA+B,EAAG,uBAChDC,EAAW,IAAID,EAA+B,EAAG,gC,kCCH9D,soBAAO,IAAMjI,EAAyB,aACzBmI,EAA8B,sBAC9BC,EAA6B,mBAmD7BlY,EAAW,GACXmY,EAAwB,6BACxBC,EAAyB,mBACzBC,EAAmC,yCACnCjb,EAAY,yCACZC,EAAa,iBACbC,EAAgB,mIAChB0F,EAAe,YACfsV,EAAkB,yBAClBC,EAAyB,2CACzBC,EAAmB,kCACnBC,EAAsB,kCACtBC,EAA4B,8CAC5BC,EAAoC,8DACpCC,EAA8B,CACvCC,KAAM,qCACNC,eAAgB,+BAEPC,EAA0B,CACnCF,KAAM,mC,8FCpDN,WAAYtb,EAAI9K,GAAM,6FAClBsC,KAAKyI,IAAMD,EACXxI,KAAKO,MAAQ7C,E,kDAjBb,OAAOsC,KAAKyI,K,aAGThK,GACHuB,KAAKyI,IAAMhK,I,2BAIX,OAAOuB,KAAKO,O,aAGP9B,GACLuB,KAAKO,MAAQ9B,M,KCjBrB,0IAEO,IAAMwlB,EAAW,IAAIC,EAA0B,EAAG,sBAC5CC,EAAM,IAAID,EAA0B,EAAG,yBACvCE,EAA+B,IAAIF,EAA0B,EAAG,0C,oHCAvEtR,E,iHAEE,IAAMvH,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eACtD,OAAO7E,IAAMrI,IAAN,UAAa2lB,OAAwBF,KAArC,2CAAoF,CACvFtY,QAAS,CAAC,+BAA2BH,EAAYI,mB,uCAIxCjD,GACb,IAAM6C,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eACtD,OAAO7E,IAAMrI,IAAN,UAAa2lB,OAAwBF,KAArC,mDAAoFtb,GAAM,CAC7FgD,QAAS,CAAC,+BAA2BH,EAAYI,mB,yCAKrD,IAAMJ,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eACtD,OAAO7E,IAAMrI,IAAN,UAAa2lB,OAAwBF,KAArC,2CAAoF,CACvFtY,QAAS,CAAC,+BAA2BH,EAAYI,mB,6BAIgB,IAApE4Y,EAAoE,EAApEA,YAAaC,EAAuD,EAAvDA,aAAcC,EAAyC,EAAzCA,YAAaC,EAA4B,EAA5BA,aAAczR,EAAc,EAAdA,IAAK0R,EAAS,EAATA,OACtDpZ,EAAcrD,KAAKI,MAAMkD,IAAeC,QAAQ,eACtD,OAAO7E,IAAMC,KAAN,UAAcqd,OAAwBF,KAAtC,2CAAqF,CACxF7Q,aAAcoR,EACdnR,cAAeoR,EACflR,aAAcmR,EACdlR,cAAemR,EACfzR,IAAKA,GAAY,KACjB0R,OAAQA,GACT,CACCjZ,QAAS,CAAC,+BAA2BH,EAAYI,qB,KAK9C,WAAImH,G,kCCzCnB,gBACM8R,EAAW,IAAI7X,OAErBA,OAAIC,IAAI,CACJ6X,QADI,SACK9X,GACLA,EAAI5T,UAAU2rB,KAAOF,KAIdA,U,ggDCiCP,OAAO1kB,KAAKyI,K,aAGThK,GACHuB,KAAKyI,IAAMhK,I,4BAIX,OAAOuB,KAAK6kB,Q,aAGNpmB,GACNuB,KAAK6kB,OAASpmB,I,6BAId,OAAOuB,KAAK8kB,S,aAGLrmB,GACPuB,KAAK8kB,QAAUrmB,I,6BAIf,OAAOuB,KAAK+kB,S,aAGLtmB,GACPuB,KAAK+kB,QAAUtmB,I,2BAIf,OAAOuB,KAAKglB,O,aAGPvmB,GACLuB,KAAKglB,MAAQvmB,I,oCAIb,OAAOuB,KAAKilB,gB,aAGExmB,GACduB,KAAKilB,eAAiBxmB,I,kCAItB,OAAOuB,KAAKklB,c,aAGAzmB,GACZuB,KAAKklB,aAAezmB,I,qCAIpB,OAAOuB,KAAKmlB,iB,aAGG1mB,GACfuB,KAAKmlB,gBAAkB1mB,I,mCAIvB,OAAOuB,KAAKolB,e,aAGC3mB,GACbuB,KAAKolB,cAAgB3mB,I,gCAIrB,OAAOuB,KAAKqlB,Y,aAGF5mB,GACVuB,KAAKqlB,WAAa5mB,I,iCAIlB,OAAOuB,KAAKslB,a,aAGD7mB,GACXuB,KAAKslB,YAAc7mB,I,iCAInB,OAAOuB,KAAKulB,a,aAGD9mB,GACXuB,KAAKulB,YAAc9mB,I,iCAInB,OAAOuB,KAAKwlB,a,aAGD/mB,GACXuB,KAAKwlB,YAAc/mB,I,qCAInB,OAAOuB,KAAKylB,iB,aAGGhnB,GACfuB,KAAKylB,gBAAkBhnB,I,4BAIvB,OAAOuB,KAAK0lB,Q,aAGNjnB,GACNuB,KAAK0lB,OAASjnB,I,mCAId,OAAOuB,KAAK2lB,e,aAGClnB,GACbuB,KAAK2lB,cAAgBlnB,I,kCAIrB,OAAOuB,KAAK4lB,c,aAGAnnB,GACZuB,KAAK4lB,aAAennB,I,mCAIpB,OAAOuB,KAAK6lB,e,aAGCpnB,GACbuB,KAAK6lB,cAAgBpnB,I,mCAIrB,OAAOuB,KAAK8lB,e,aAGCrnB,GACbuB,KAAK8lB,cAAgBrnB,I,oCAIrB,OAAOuB,KAAK+lB,gB,aAGEtnB,GACduB,KAAK+lB,eAAiBtnB,I,sCAItB,OAAOuB,KAAKgmB,kB,aAGIvnB,GAChBuB,KAAKgmB,iBAAmBvnB,I,qCAIxB,OAAOuB,KAAKimB,iB,aAGGxnB,GACfuB,KAAKimB,gBAAkBxnB,I,iCAIvB,OAAOuB,KAAKkmB,a,aAGDznB,GACXuB,KAAKkmB,YAAcznB,I,gCAInB,OAAOuB,KAAKmmB,Y,aAGF1nB,GACVuB,KAAKmmB,WAAa1nB,I,+BAIlB,OAAOuB,KAAKomB,W,aAGH3nB,GACTuB,KAAKomB,UAAY3nB,I,gCAIjB,OAAOuB,KAAKqmB,Y,aAGF5nB,GACVuB,KAAKqmB,WAAa5nB,I,oCAIlB,OAAOuB,KAAKsmB,gB,aAGE7nB,GACduB,KAAKsmB,eAAiB7nB,I,oCAItB,OAAOuB,KAAKumB,gB,aAGE9nB,GACduB,KAAKumB,eAAiB9nB,I,mCAItB,OAAOuB,KAAKwmB,e,aAGC/nB,GACbuB,KAAKwmB,cAAgB/nB,I,uCAIrB,OAAOuB,KAAKymB,mB,aAGKhoB,GACjBuB,KAAKymB,kBAAoBhoB,I,+BAIzB,OAAOuB,KAAK0mB,W,aAGHjoB,GACTuB,KAAK0mB,UAAYjoB,I,8BAIjB,OAAOuB,KAAK0mB,UAAUC,MAAK,SAAAC,GAAC,OAAIA,EAAE5f,SAAYmR,WAAmB,S,wfCpRjE,OAAOnY,KAAK6mB,M,aAGRpoB,GACJuB,KAAK6mB,KAAOpoB,I,2BAIZ,OAAOuB,KAAKO,O,aAGP9B,GACLuB,KAAKO,MAAQ9B,I,8BAIb,OAAOuB,KAAK8mB,U,aAGJroB,GACRuB,KAAK8mB,SAAWroB,I,4BAIhB,OAAOuB,KAAK+mB,Q,aAGNtoB,GACNuB,KAAK+mB,OAAStoB,I,wCAId,OAAOuB,KAAKgnB,oB,aAGMvoB,GAClBuB,KAAKgnB,mBAAqBvoB,I,+BAI1B,OAAOuB,KAAKinB,W,aAGHxoB,GACTuB,KAAKinB,UAAYxoB,I,8BAIjB,OAAOuB,KAAKknB,U,aAGJzoB,GACRuB,KAAKknB,SAAWzoB,I,2BAIhB,OAAOuB,KAAKmnB,O,aAGP1oB,GACLuB,KAAKmnB,MAAQ1oB,I,4BAIb,OAAOuB,KAAKonB,Q,aAGN3oB,GACNuB,KAAKonB,OAAS3oB,I,0CAId,OAAOuB,KAAKqnB,sB,aAGQ5oB,GACpBuB,KAAKqnB,qBAAuB5oB,M,6sCC7D5B,OAAOuB,KAAKyI,K,aAGThK,GACHuB,KAAKyI,IAAMhK,I,6BAIX,OAAOuB,KAAK+kB,S,aAGLtmB,GACPuB,KAAK+kB,QAAUtmB,I,6BAIf,OAAOuB,KAAK8kB,S,aAGLrmB,GACPuB,KAAK8kB,QAAUrmB,I,2BAIf,OAAOuB,KAAKglB,O,aAGPvmB,GACLuB,KAAKglB,MAAQvmB,I,qCAIb,OAAOuB,KAAKmlB,iB,aAGG1mB,GACfuB,KAAKmlB,gBAAkB1mB,I,mCAIvB,OAAOuB,KAAKolB,e,aAGC3mB,GACbuB,KAAKolB,cAAgB3mB,I,gCAIrB,OAAOuB,KAAKqlB,Y,aAGF5mB,GACVuB,KAAKqlB,WAAa5mB,I,yCAIlB,OAAOuB,KAAKsnB,qB,aAGO7oB,GACnBuB,KAAKsnB,oBAAsB7oB,I,yCAI3B,OAAOuB,KAAKunB,qB,aAGO9oB,GACnBuB,KAAKunB,oBAAsB9oB,I,yCAI3B,OAAOuB,KAAKwnB,qB,aAGO/oB,GACnBuB,KAAKwnB,oBAAsB/oB,I,yCAI3B,OAAOuB,KAAKynB,qB,aAGOhpB,GACnBuB,KAAKynB,oBAAsBhpB,I,sCAI3B,OAAOuB,KAAK0nB,kB,aAGIjpB,GAChBuB,KAAK0nB,iBAAmBjpB,I,sCAIxB,OAAOuB,KAAK2nB,kB,aAGIlpB,GAChBuB,KAAK2nB,iBAAmBlpB,I,4BAIxB,OAAOuB,KAAK0lB,Q,aAGNjnB,GACNuB,KAAK0lB,OAASjnB,I,mCAId,OAAOuB,KAAK2lB,e,aAGClnB,GACbuB,KAAK2lB,cAAgBlnB,I,uCAIrB,OAAOuB,KAAK4nB,mB,aAGKnpB,GACjBuB,KAAK4nB,kBAAoBnpB,I,yCAIzB,OAAOuB,KAAK6nB,qB,aAGOppB,GACnBuB,KAAK6nB,oBAAsBppB,I,uCAI3B,OAAOuB,KAAK8nB,mB,aAGKrpB,GACjBuB,KAAK8nB,kBAAoBrpB,I,0CAIzB,OAAOuB,KAAK+nB,sB,aAGQtpB,GACpBuB,KAAK+nB,qBAAuBtpB,I,wCAI5B,OAAOuB,KAAKgoB,oB,aAGMvpB,GAClBuB,KAAKgoB,mBAAqBvpB,I,wCAI1B,OAAOuB,KAAKioB,oB,aAGMxpB,GAClBuB,KAAKioB,mBAAqBxpB,I,+BAI1B,OAAOuB,KAAKkoB,W,aAGHzpB,GACTuB,KAAKkoB,UAAYzpB,I,kCAIjB,OAAOuB,KAAKmoB,c,aAGA1pB,GACZuB,KAAKmoB,aAAe1pB,I,yCAIpB,OAAOuB,KAAKooB,qB,aAGO3pB,GACnBuB,KAAKooB,oBAAsB3pB,I,oCAI3B,OAAOuB,KAAKqoB,gB,aAGE5pB,GACduB,KAAKqoB,eAAiB5pB,M,m7DCrLtB,OAAOuB,KAAKyI,K,aAGThK,GACHuB,KAAKyI,IAAMhK,I,2CAIX,OAAOuB,KAAKsoB,uB,aAGS7pB,GACrBuB,KAAKsoB,sBAAwB7pB,I,mDAI7B,OAAOuB,KAAKuoB,+B,aAGiB9pB,GAC7BuB,KAAKuoB,8BAAgC9pB,I,oDAIrC,OAAOuB,KAAKwoB,gC,aAGkB/pB,GAC9BuB,KAAKwoB,+BAAiC/pB,I,iDAItC,OAAOuB,KAAKyoB,6B,aAGehqB,GAC3BuB,KAAKyoB,4BAA8BhqB,I,sDAInC,OAAOuB,KAAK0oB,kC,aAGoBjqB,GAChCuB,KAAK0oB,iCAAmCjqB,I,mDAIxC,OAAOuB,KAAK2oB,+B,aAGiBlqB,GAC7BuB,KAAK2oB,8BAAgClqB,I,gDAIrC,OAAOuB,KAAK4oB,4B,aAGcnqB,GAC1BuB,KAAK4oB,2BAA6BnqB,I,kCAIlC,OAAOuB,KAAK4lB,c,aAGAnnB,GACZuB,KAAK4lB,aAAennB,I,mCAIpB,OAAOuB,KAAK6lB,e,aAGCpnB,GACbuB,KAAK6lB,cAAgBpnB,I,kCAIrB,OAAOuB,KAAK6oB,c,aAGApqB,GACZuB,KAAK6oB,aAAepqB,I,mCAIpB,OAAOuB,KAAK8oB,e,aAGCrqB,GACbuB,KAAK8oB,cAAgBrqB,I,6BAIrB,OAAOuB,KAAK+kB,S,aAGLtmB,GACPuB,KAAK+kB,QAAUtmB,I,2BAIf,OAAOuB,KAAKglB,O,aAGPvmB,GACLuB,KAAKglB,MAAQvmB,I,qCAIb,OAAOuB,KAAKmlB,iB,aAGG1mB,GACfuB,KAAKmlB,gBAAkB1mB,I,mCAIvB,OAAOuB,KAAKolB,e,aAGC3mB,GACbuB,KAAKolB,cAAgB3mB,I,gCAIrB,OAAOuB,KAAK+oB,Y,aAGFtqB,GACVuB,KAAK+oB,WAAatqB,I,sCAIlB,OAAOuB,KAAKgmB,kB,aAGIvnB,GAChBuB,KAAKgmB,iBAAmBvnB,I,6BAIxB,OAAOuB,KAAKgpB,S,aAGLvqB,GACPuB,KAAKgpB,QAAUvqB,I,gCAIf,OAAOuB,KAAKqlB,Y,aAGF5mB,GACVuB,KAAKqlB,WAAa5mB,I,yCAIlB,OAAOuB,KAAKsnB,qB,aAGO7oB,GACnBuB,KAAKsnB,oBAAsB7oB,I,yCAI3B,OAAOuB,KAAKunB,qB,aAGO9oB,GACnBuB,KAAKunB,oBAAsB9oB,I,yCAI3B,OAAOuB,KAAKwnB,qB,aAGO/oB,GACnBuB,KAAKwnB,oBAAsB/oB,I,yCAI3B,OAAOuB,KAAKynB,qB,aAGOhpB,GACnBuB,KAAKynB,oBAAsBhpB,I,yCAI3B,OAAOuB,KAAKipB,qB,aAGOxqB,GACnBuB,KAAKipB,oBAAsBxqB,I,yCAI3B,OAAOuB,KAAKkpB,qB,aAGOzqB,GACnBuB,KAAKkpB,oBAAsBzqB,I,+BAI3B,OAAOuB,KAAKmpB,W,aAGH1qB,GACTuB,KAAKmpB,UAAY1qB,I,mCAIjB,OAAOuB,KAAKopB,e,aAGC3qB,GACbuB,KAAKopB,cAAgB3qB,I,iCAIrB,OAAOuB,KAAKqpB,a,aAGD5qB,GACXuB,KAAKqpB,YAAc5qB,I,sCAInB,OAAOuB,KAAKspB,kB,aAGI7qB,GAChBuB,KAAKspB,iBAAmB7qB,I,0CAIxB,OAAOuB,KAAKupB,sB,aAGQ9qB,GACpBuB,KAAKupB,qBAAuB9qB,I,wCAI5B,OAAOuB,KAAKwpB,oB,aAGM/qB,GAClBuB,KAAKwpB,mBAAqB/qB,I,sDAI1B,OAAOuB,KAAKypB,kC,aAGoBhrB,GAChCuB,KAAKypB,iCAAmChrB,I,sDAIxC,OAAOuB,KAAK0pB,kC,aAGoBjrB,GAChCuB,KAAK0pB,iCAAmCjrB,I,gCAIxC,OAAOuB,KAAK2pB,Y,aAGFlrB,GACVuB,KAAK2pB,WAAalrB,I,gCAIlB,OAAOuB,KAAK4pB,Y,aAGFnrB,GACVuB,KAAK4pB,WAAanrB,I,6BAIlB,OAAOuB,KAAK8kB,S,aAGLrmB,GACPuB,KAAK8kB,QAAUrmB,I,uCAIf,OAAOuB,KAAK6pB,mB,aAGKprB,GACjBuB,KAAK6pB,kBAAoBprB,I,yCAIzB,OAAOuB,KAAK8pB,qB,aAGOrrB,GACnBuB,KAAK8pB,oBAAsBrrB,I,oCAO3B,OAAOuB,KAAKya,oBAAsBza,KAAKwa,uB,6BCrWzCuP,E,WAiBF,aAAc,4oBACV/pB,KAAKyI,IAAM,KACXzI,KAAKgqB,SAAW,GAChBhqB,KAAKiqB,aAAe,KACpBjqB,KAAKkqB,aAAe,KACpBlqB,KAAKmqB,SAAW,KAChBnqB,KAAKoqB,UAAY,EACjBpqB,KAAKqqB,OAAS,EACdrqB,KAAKsqB,UAAY,EACjBtqB,KAAK0lB,OAAS,EACd1lB,KAAKuqB,cAAgB,EACrBvqB,KAAKwqB,cAAgB,KACrBxqB,KAAK6pB,kBAAoB,KACzB7pB,KAAKyqB,cAAgB,EACrBzqB,KAAK0qB,aAAe,K,qEAsHpB,IAAM3R,EAAgBC,OAAWpP,SAAS5J,KAAKmqB,SAAU,KAEzDnqB,KAAK0lB,OAASiF,OAAe5Q,uBAAuBf,OAAWpP,SAAS5J,KAAKqqB,OAAQrqB,KAAKsqB,YAC1FtqB,KAAKoqB,UAAYO,OAAe5Q,uBAAuBf,OAAWpP,SAAS5J,KAAK0lB,OAAQ3M,IACxF/Y,KAAKuqB,cAAgBI,OAAe5Q,wBAAwB/Z,KAAK0lB,SAAU1lB,KAAKiZ,Y,yBAtHhF,OAAOjZ,KAAKyI,K,aAGThK,GACHuB,KAAKyI,IAAMhK,I,kCAIX,OAAOuB,KAAKkqB,c,aAGAzrB,GACZuB,KAAKkqB,aAAezrB,I,8BAIpB,OAAOuB,KAAKmqB,U,aAGJ1rB,GACRuB,KAAKmqB,SAAW1rB,EAEhBuB,KAAK4qB,wB,+BAIL,OAAO5qB,KAAKoqB,Y,4BAIZ,OAAOpqB,KAAKqqB,Q,aAGN5rB,GACNuB,KAAKqqB,OAAS5rB,EAEduB,KAAK4qB,wB,8BAIL,OAAO5qB,KAAKgqB,U,aAGJvrB,GACRuB,KAAKgqB,SAAWvrB,I,kCAIhB,OAAOuB,KAAKiqB,c,aAGAxrB,GACZuB,KAAKiqB,aAAexrB,I,+BAIpB,OAAOuB,KAAKsqB,W,aAGH7rB,GACTuB,KAAKsqB,UAAY7rB,EAEjBuB,KAAK4qB,wB,mCAIL,OAAO5qB,KAAKyqB,e,aAGChsB,GACbuB,KAAKyqB,cAAgBhsB,I,4BAIrB,OAAOuB,KAAK0lB,S,mCAIZ,OAAO1lB,KAAKuqB,gB,mCAIZ,OAAOvqB,KAAKwqB,e,aAGC/rB,GACbuB,KAAKwqB,cAAgB/rB,I,uCAIrB,OAAOuB,KAAK6pB,mB,aAGKprB,GACjBuB,KAAK6pB,kBAAoBprB,I,6CAIzB,OAAOuB,KAAK6qB,yB,aAGWpsB,GACvBuB,KAAK6qB,wBAA0BpsB,I,kCAI/B,OAAOuB,KAAK0qB,c,aAGAjsB,GACZuB,KAAK0qB,aAAejsB,M,KAYbsrB,I,2eCzJP,OAAO/pB,KAAK8qB,Q,aAGNrsB,GACNuB,KAAK8qB,OAASrsB,M,GAROssB,G,mYCSrB,OAAO/qB,KAAKyI,K,aAGThK,GACHuB,KAAKyI,IAAMhK,I,gCAIX,OAAOuB,KAAKgrB,Y,aAGFvsB,GACVuB,KAAKgrB,WAAavsB,I,kCAIlB,OAAOuB,KAAKirB,c,aAGAxsB,GACZuB,KAAKirB,aAAexsB,I,kCAIpB,OAAOuB,KAAKkrB,c,aAGAzsB,GACZuB,KAAKkrB,aAAezsB,I,gCAIpB,OAAOuB,KAAKmrB,Y,aAGF1sB,GACVuB,KAAKmrB,WAAa1sB,I,kCAIlB,OAAOuB,KAAKorB,c,aAGA3sB,GACZuB,KAAKorB,aAAe3sB,I,kCAIpB,OAAOuB,KAAKqrB,c,aAGA5sB,GACZuB,KAAKqrB,aAAe5sB,M,uVCzDpB,OAAOuB,KAAK8qB,Q,aAGNrsB,GACNuB,KAAK8qB,OAASrsB,M,GAROogB,G,aCYzB,aAAc,wfACV7e,KAAKyI,IAAM,KACXzI,KAAKgqB,SAAW,GAChBhqB,KAAKkqB,aAAe,KACpBlqB,KAAKmqB,SAAW,KAChBnqB,KAAKoqB,UAAY,EACjBpqB,KAAKqqB,OAAS,EACdrqB,KAAKsqB,UAAY,EACjBtqB,KAAK0lB,OAAS,EACd1lB,KAAKuqB,cAAgB,EACrBvqB,KAAKwqB,cAAgB,KACrBxqB,KAAK0qB,aAAe,KACpB1qB,KAAKsrB,WAAa,K,kDAIlB,OAAOtrB,KAAKyI,K,aAGThK,GACHuB,KAAKyI,IAAMhK,I,kCAIX,OAAOuB,KAAKkqB,c,aAGAzrB,GACZuB,KAAKkqB,aAAezrB,I,8BAIpB,OAAOuB,KAAKmqB,U,aAGJ1rB,GACRuB,KAAKmqB,SAAW1rB,I,+BAIhB,OAAOuB,KAAKoqB,W,aAGH3rB,GACTuB,KAAKoqB,UAAY3rB,I,4BAIjB,OAAOuB,KAAKqqB,Q,aAGN5rB,GACNuB,KAAKqqB,OAAS5rB,I,8BAId,OAAOuB,KAAKgqB,U,aAGJvrB,GACRuB,KAAKgqB,SAAWvrB,I,+BAIhB,OAAOuB,KAAKsqB,W,aAGH7rB,GACTuB,KAAKsqB,UAAY7rB,I,4BAIjB,OAAOuB,KAAK0lB,Q,aAGNjnB,GACNuB,KAAK0lB,OAASjnB,I,mCAId,OAAOuB,KAAKuqB,e,aAGC9rB,GACbuB,KAAKuqB,cAAgB9rB,I,mCAIrB,OAAOuB,KAAKwqB,e,aAGC/rB,GACbuB,KAAKwqB,cAAgB/rB,I,kCAIrB,OAAOuB,KAAK0qB,c,aAGAjsB,GACZuB,KAAK0qB,aAAejsB,I,gCAIpB,OAAOuB,KAAKsrB,Y,aAGF7sB,GACVuB,KAAKsrB,WAAa7sB,M,kBCzGtB,aAAc,qnBACVuB,KAAKyI,IAAM,KACXzI,KAAKgqB,SAAW,GAChBhqB,KAAKkqB,aAAe,KACpBlqB,KAAKurB,iBAAmB,KACxBvrB,KAAKmqB,SAAW,KAChBnqB,KAAKoqB,UAAY,EACjBpqB,KAAKqqB,OAAS,EACdrqB,KAAKsqB,UAAY,EACjBtqB,KAAK0lB,OAAS,EACd1lB,KAAKuqB,cAAgB,EACrBvqB,KAAKwrB,SAAW,KAChBxrB,KAAK0qB,aAAe,KACpB1qB,KAAKyrB,aAAe,KACpBzrB,KAAK0rB,cAAgB,KACrB1rB,KAAK2rB,OAAS,K,kDAId,OAAO3rB,KAAKyI,K,aAGThK,GACHuB,KAAKyI,IAAMhK,I,kCAIX,OAAOuB,KAAKkqB,c,aAGAzrB,GACZuB,KAAKkqB,aAAezrB,I,sCAIpB,OAAOuB,KAAKurB,kB,aAGI9sB,GAChBuB,KAAKurB,iBAAmB9sB,I,8BAIxB,OAAOuB,KAAKmqB,U,aAGJ1rB,GACRuB,KAAKmqB,SAAW1rB,I,+BAIhB,OAAOuB,KAAKoqB,W,aAGH3rB,GACTuB,KAAKoqB,UAAY3rB,I,4BAIjB,OAAOuB,KAAKqqB,Q,aAGN5rB,GACNuB,KAAKqqB,OAAS5rB,I,8BAId,OAAOuB,KAAKgqB,U,aAGJvrB,GACRuB,KAAKgqB,SAAWvrB,I,+BAIhB,OAAOuB,KAAKsqB,W,aAGH7rB,GACTuB,KAAKsqB,UAAY7rB,I,4BAIjB,OAAOuB,KAAK0lB,Q,aAGNjnB,GACNuB,KAAK0lB,OAASjnB,I,mCAId,OAAOuB,KAAKuqB,e,aAGC9rB,GACbuB,KAAKuqB,cAAgB9rB,I,8BAIrB,OAAOuB,KAAKwrB,U,aAGJ/sB,GACRuB,KAAKwrB,SAAW/sB,I,kCAIhB,OAAOuB,KAAK0qB,c,aAGAjsB,GACZuB,KAAK0qB,aAAejsB,I,kCAIpB,OAAOuB,KAAKyrB,c,aAGAhtB,GACZuB,KAAKyrB,aAAehtB,I,4BAIpB,OAAOuB,KAAK2rB,Q,aAGNltB,GACNuB,KAAK2rB,OAASltB,I,mCAId,OAAOuB,KAAK0rB,e,aAGCjtB,GACbuB,KAAK0rB,cAAgBjtB,M,uVClJrB,OAAOuB,KAAK8qB,Q,aAGNrsB,GACNuB,KAAK8qB,OAASrsB,M,GAROmtB,G,86DC0CrB,OAAO5rB,KAAKyI,K,aAGThK,GACHuB,KAAKyI,IAAMhK,I,2CAIX,OAAOuB,KAAKsoB,uB,aAGS7pB,GACrBuB,KAAKsoB,sBAAwB7pB,I,mDAI7B,OAAOuB,KAAKuoB,+B,aAGiB9pB,GAC7BuB,KAAKuoB,8BAAgC9pB,I,oDAIrC,OAAOuB,KAAKwoB,gC,aAGkB/pB,GAC9BuB,KAAKwoB,+BAAiC/pB,I,iDAItC,OAAOuB,KAAKyoB,6B,aAGehqB,GAC3BuB,KAAKyoB,4BAA8BhqB,I,sDAInC,OAAOuB,KAAK0oB,kC,aAGoBjqB,GAChCuB,KAAK0oB,iCAAmCjqB,I,mDAIxC,OAAOuB,KAAK2oB,+B,aAGiBlqB,GAC7BuB,KAAK2oB,8BAAgClqB,I,gDAIrC,OAAOuB,KAAK4oB,4B,aAGcnqB,GAC1BuB,KAAK4oB,2BAA6BnqB,I,kCAIlC,OAAOuB,KAAK4lB,c,aAGAnnB,GACZuB,KAAK4lB,aAAennB,I,mCAIpB,OAAOuB,KAAK6lB,e,aAGCpnB,GACbuB,KAAK6lB,cAAgBpnB,I,kCAIrB,OAAOuB,KAAK6oB,c,aAGApqB,GACZuB,KAAK6oB,aAAepqB,I,mCAIpB,OAAOuB,KAAK8oB,e,aAGCrqB,GACbuB,KAAK8oB,cAAgBrqB,I,6BAIrB,OAAOuB,KAAK+kB,S,aAGLtmB,GACPuB,KAAK+kB,QAAUtmB,I,2BAIf,OAAOuB,KAAKglB,O,aAGPvmB,GACLuB,KAAKglB,MAAQvmB,I,qCAIb,OAAOuB,KAAKmlB,iB,aAGG1mB,GACfuB,KAAKmlB,gBAAkB1mB,I,mCAIvB,OAAOuB,KAAKolB,e,aAGC3mB,GACbuB,KAAKolB,cAAgB3mB,I,gCAIrB,OAAOuB,KAAK+oB,Y,aAGFtqB,GACVuB,KAAK+oB,WAAatqB,I,sCAIlB,OAAOuB,KAAKgmB,kB,aAGIvnB,GAChBuB,KAAKgmB,iBAAmBvnB,I,6BAIxB,OAAOuB,KAAKgpB,S,aAGLvqB,GACPuB,KAAKgpB,QAAUvqB,I,gCAIf,OAAOuB,KAAKqlB,Y,aAGF5mB,GACVuB,KAAKqlB,WAAa5mB,I,yCAIlB,OAAOuB,KAAKsnB,qB,aAGO7oB,GACnBuB,KAAKsnB,oBAAsB7oB,I,yCAI3B,OAAOuB,KAAKunB,qB,aAGO9oB,GACnBuB,KAAKunB,oBAAsB9oB,I,yCAI3B,OAAOuB,KAAKwnB,qB,aAGO/oB,GACnBuB,KAAKwnB,oBAAsB/oB,I,yCAI3B,OAAOuB,KAAKynB,qB,aAGOhpB,GACnBuB,KAAKynB,oBAAsBhpB,I,yCAI3B,OAAOuB,KAAKipB,qB,aAGOxqB,GACnBuB,KAAKipB,oBAAsBxqB,I,yCAI3B,OAAOuB,KAAKkpB,qB,aAGOzqB,GACnBuB,KAAKkpB,oBAAsBzqB,I,+BAI3B,OAAOuB,KAAKmpB,W,aAGH1qB,GACTuB,KAAKmpB,UAAY1qB,I,mCAIjB,OAAOuB,KAAKopB,e,aAGC3qB,GACbuB,KAAKopB,cAAgB3qB,I,iCAIrB,OAAOuB,KAAKqpB,a,aAGD5qB,GACXuB,KAAKqpB,YAAc5qB,I,sCAInB,OAAOuB,KAAKspB,kB,aAGI7qB,GAChBuB,KAAKspB,iBAAmB7qB,I,0CAIxB,OAAOuB,KAAKupB,sB,aAGQ9qB,GACpBuB,KAAKupB,qBAAuB9qB,I,wCAI5B,OAAOuB,KAAKwpB,oB,aAGM/qB,GAClBuB,KAAKwpB,mBAAqB/qB,I,sDAI1B,OAAOuB,KAAKypB,kC,aAGoBhrB,GAChCuB,KAAKypB,iCAAmChrB,I,sDAIxC,OAAOuB,KAAK0pB,kC,aAGoBjrB,GAChCuB,KAAK0pB,iCAAmCjrB,I,gCAIxC,OAAOuB,KAAK2pB,Y,aAGFlrB,GACVuB,KAAK2pB,WAAalrB,I,gCAIlB,OAAOuB,KAAK4pB,Y,aAGFnrB,GACVuB,KAAK4pB,WAAanrB,I,6BAIlB,OAAOuB,KAAK8kB,S,aAGLrmB,GACPuB,KAAK8kB,QAAUrmB,I,uCAIf,OAAOuB,KAAK6pB,mB,aAGKprB,GACjBuB,KAAK6pB,kBAAoBprB,I,yCAIzB,OAAOuB,KAAK8pB,qB,aAGOrrB,GACnBuB,KAAK8pB,oBAAsBrrB,I,oCAM3B,OAAOuB,KAAKya,oBAAsBza,KAAKwa,uB,uVChWvC,OAAOxa,KAAK8qB,Q,aAGNrsB,GACNuB,KAAK8qB,OAASrsB,M,GAROotB,G,aCiBzB,aAAc,4oBACV7rB,KAAKyI,IAAM,KACXzI,KAAKgqB,SAAW,GAChBhqB,KAAKiqB,aAAe,KACpBjqB,KAAKkqB,aAAe,KACpBlqB,KAAKmqB,SAAW,KAChBnqB,KAAKoqB,UAAY,EACjBpqB,KAAKqqB,OAAS,EACdrqB,KAAKsqB,UAAY,EACjBtqB,KAAK0lB,OAAS,EACd1lB,KAAKuqB,cAAgB,EACrBvqB,KAAKwqB,cAAgB,KACrBxqB,KAAK6pB,kBAAoB,KACzB7pB,KAAKyqB,cAAgB,EACrBzqB,KAAK0qB,aAAe,K,qEAsHpB,IAAM3R,EAAgBC,OAAWpP,SAAS5J,KAAKmqB,SAAU,KAEzDnqB,KAAK0lB,OAAS1M,OAAWpP,SAAS5J,KAAKqqB,OAAQrqB,KAAKsqB,WACpDtqB,KAAKoqB,UAAYpR,OAAWpP,SAAS5J,KAAK0lB,OAAQ3M,GAClD/Y,KAAKuqB,cAAgBvqB,KAAK0lB,OAAS1lB,KAAKiZ,W,yBAtHxC,OAAOjZ,KAAKyI,K,aAGThK,GACHuB,KAAKyI,IAAMhK,I,kCAIX,OAAOuB,KAAKkqB,c,aAGAzrB,GACZuB,KAAKkqB,aAAezrB,I,8BAIpB,OAAOuB,KAAKmqB,U,aAGJ1rB,GACRuB,KAAKmqB,SAAW1rB,EAEhBuB,KAAK4qB,wB,+BAIL,OAAO5qB,KAAKoqB,Y,4BAIZ,OAAOpqB,KAAKqqB,Q,aAGN5rB,GACNuB,KAAKqqB,OAAS5rB,EAEduB,KAAK4qB,wB,8BAIL,OAAO5qB,KAAKgqB,U,aAGJvrB,GACRuB,KAAKgqB,SAAWvrB,I,kCAIhB,OAAOuB,KAAKiqB,c,aAGAxrB,GACZuB,KAAKiqB,aAAexrB,I,+BAIpB,OAAOuB,KAAKsqB,W,aAGH7rB,GACTuB,KAAKsqB,UAAY7rB,EAEjBuB,KAAK4qB,wB,mCAIL,OAAO5qB,KAAKyqB,e,aAGChsB,GACbuB,KAAKyqB,cAAgBhsB,I,4BAIrB,OAAOuB,KAAK0lB,S,mCAIZ,OAAO1lB,KAAKuqB,gB,mCAIZ,OAAOvqB,KAAKwqB,e,aAGC/rB,GACbuB,KAAKwqB,cAAgB/rB,I,uCAIrB,OAAOuB,KAAK6pB,mB,aAGKprB,GACjBuB,KAAK6pB,kBAAoBprB,I,6CAIzB,OAAOuB,KAAK6qB,yB,aAGWpsB,GACvBuB,KAAK6qB,wBAA0BpsB,I,kCAI/B,OAAOuB,KAAK0qB,c,aAGAjsB,GACZuB,KAAK0qB,aAAejsB,M,kBCrIxB,aAAc,wfACVuB,KAAKyI,IAAM,KACXzI,KAAKgqB,SAAW,GAChBhqB,KAAKkqB,aAAe,KACpBlqB,KAAKmqB,SAAW,KAChBnqB,KAAKoqB,UAAY,EACjBpqB,KAAKqqB,OAAS,EACdrqB,KAAKsqB,UAAY,EACjBtqB,KAAK0lB,OAAS,EACd1lB,KAAKuqB,cAAgB,EACrBvqB,KAAKwqB,cAAgB,KACrBxqB,KAAK0qB,aAAe,KACpB1qB,KAAKsrB,WAAa,K,kDAIlB,OAAOtrB,KAAKyI,K,aAGThK,GACHuB,KAAKyI,IAAMhK,I,kCAIX,OAAOuB,KAAKkqB,c,aAGAzrB,GACZuB,KAAKkqB,aAAezrB,I,8BAIpB,OAAOuB,KAAKmqB,U,aAGJ1rB,GACRuB,KAAKmqB,SAAW1rB,I,+BAIhB,OAAOuB,KAAKoqB,W,aAGH3rB,GACTuB,KAAKoqB,UAAY3rB,I,4BAIjB,OAAOuB,KAAKqqB,Q,aAGN5rB,GACNuB,KAAKqqB,OAAS5rB,I,8BAId,OAAOuB,KAAKgqB,U,aAGJvrB,GACRuB,KAAKgqB,SAAWvrB,I,+BAIhB,OAAOuB,KAAKsqB,W,aAGH7rB,GACTuB,KAAKsqB,UAAY7rB,I,4BAIjB,OAAOuB,KAAK0lB,Q,aAGNjnB,GACNuB,KAAK0lB,OAASjnB,I,mCAId,OAAOuB,KAAKuqB,e,aAGC9rB,GACbuB,KAAKuqB,cAAgB9rB,I,mCAIrB,OAAOuB,KAAKwqB,e,aAGC/rB,GACbuB,KAAKwqB,cAAgB/rB,I,kCAIrB,OAAOuB,KAAK0qB,c,aAGAjsB,GACZuB,KAAK0qB,aAAejsB,I,gCAIpB,OAAOuB,KAAKsrB,Y,aAGF7sB,GACVuB,KAAKsrB,WAAa7sB,M,s4CChFlB,OAAOuB,KAAKyI,K,aAGThK,GACHuB,KAAKyI,IAAMhK,I,4BAIX,OAAOuB,KAAK6kB,Q,aAGNpmB,GACNuB,KAAK6kB,OAASpmB,I,6BAId,OAAOuB,KAAK8kB,S,aAGLrmB,GACPuB,KAAK8kB,QAAUrmB,I,6BAIf,OAAOuB,KAAK+kB,S,aAGLtmB,GACPuB,KAAK+kB,QAAUtmB,I,2BAIf,OAAOuB,KAAKglB,O,aAGPvmB,GACLuB,KAAKglB,MAAQvmB,I,oCAIb,OAAOuB,KAAKilB,gB,aAGExmB,GACduB,KAAKilB,eAAiBxmB,I,kCAItB,OAAOuB,KAAKklB,c,aAGAzmB,GACZuB,KAAKklB,aAAezmB,I,qCAIpB,OAAOuB,KAAKmlB,iB,aAGG1mB,GACfuB,KAAKmlB,gBAAkB1mB,I,mCAIvB,OAAOuB,KAAKolB,e,aAGC3mB,GACbuB,KAAKolB,cAAgB3mB,I,gCAIrB,OAAOuB,KAAKqlB,Y,aAGF5mB,GACVuB,KAAKqlB,WAAa5mB,I,iCAIlB,OAAOuB,KAAKslB,a,aAGD7mB,GACXuB,KAAKslB,YAAc7mB,I,iCAInB,OAAOuB,KAAKulB,a,aAGD9mB,GACXuB,KAAKulB,YAAc9mB,I,iCAInB,OAAOuB,KAAKwlB,a,aAGD/mB,GACXuB,KAAKwlB,YAAc/mB,I,qCAInB,OAAOuB,KAAKylB,iB,aAGGhnB,GACfuB,KAAKylB,gBAAkBhnB,I,4BAIvB,OAAOuB,KAAK0lB,Q,aAGNjnB,GACNuB,KAAK0lB,OAASjnB,I,mCAId,OAAOuB,KAAK2lB,e,aAGClnB,GACbuB,KAAK2lB,cAAgBlnB,I,kCAIrB,OAAOuB,KAAK4lB,c,aAGAnnB,GACZuB,KAAK4lB,aAAennB,I,mCAIpB,OAAOuB,KAAK6lB,e,aAGCpnB,GACbuB,KAAK6lB,cAAgBpnB,I,mCAIrB,OAAOuB,KAAK8lB,e,aAGCrnB,GACbuB,KAAK8lB,cAAgBrnB,I,oCAIrB,OAAOuB,KAAK+lB,gB,aAGEtnB,GACduB,KAAK+lB,eAAiBtnB,I,sCAItB,OAAOuB,KAAKgmB,kB,aAGIvnB,GAChBuB,KAAKgmB,iBAAmBvnB,I,qCAIxB,OAAOuB,KAAKimB,iB,aAGGxnB,GACfuB,KAAKimB,gBAAkBxnB,I,iCAIvB,OAAOuB,KAAKkmB,a,aAGDznB,GACXuB,KAAKkmB,YAAcznB,I,gCAInB,OAAOuB,KAAKmmB,Y,aAGF1nB,GACVuB,KAAKmmB,WAAa1nB,I,+BAIlB,OAAOuB,KAAKomB,W,aAGH3nB,GACTuB,KAAKomB,UAAY3nB,I,gCAIjB,OAAOuB,KAAKqmB,Y,aAGF5nB,GACVuB,KAAKqmB,WAAa5nB,I,oCAIlB,OAAOuB,KAAKsmB,gB,aAGE7nB,GACduB,KAAKsmB,eAAiB7nB,I,oCAItB,OAAOuB,KAAKumB,gB,aAGE9nB,GACduB,KAAKumB,eAAiB9nB,I,mCAItB,OAAOuB,KAAKwmB,e,aAGC/nB,GACbuB,KAAKwmB,cAAgB/nB,I,uCAIrB,OAAOuB,KAAKymB,mB,aAGKhoB,GACjBuB,KAAKymB,kBAAoBhoB,I,+BAIzB,OAAOuB,KAAK0mB,W,aAGHjoB,GACTuB,KAAK0mB,UAAYjoB,I,8BAIjB,OAAOuB,KAAK0mB,UAAUC,MAAK,SAAAC,GAAC,OAAIA,EAAE5f,SAAYmR,WAAmB,S,uVC5RjE,OAAOnY,KAAK8qB,Q,aAGNrsB,GACNuB,KAAK8qB,OAASrsB,M,GAROqtB,GCyBzBC,EAAwC,SAACzvB,GACzC,IAAIsO,EAAO2O,IAAE3O,KAAKohB,GACdC,EAAU1S,IAAEoN,KAAK/b,GAAM,SAAA7L,GACvB,OAAOitB,EAAqCjtB,GAAKyJ,KAAOlM,KAG5D,OAAO0vB,EAAqCC,IAG5CC,EAA+B,SAAC5vB,GAChC,IAAIsO,EAAO2O,IAAE3O,KAAKuhB,GACdF,EAAU1S,IAAEoN,KAAK/b,GAAM,SAAA7L,GACvB,OAAOotB,EAA4BptB,GAAKyJ,KAAOlM,KAGnD,OAAO6vB,EAA4BF,IAGnCG,EAAuC,SAAC9vB,GACxC,IAAIsO,EAAO2O,IAAE3O,KAAKyhB,GACdJ,EAAU1S,IAAEoN,KAAK/b,GAAM,SAAA7L,GACvB,OAAOstB,EAAoCttB,GAAKyJ,KAAOlM,KAG3D,OAAO+vB,EAAoCJ,IAG3CK,EAAqC,SAAChwB,GACtC,IAAIsO,EAAO2O,IAAE3O,KAAK2hB,GACdN,EAAU1S,IAAEoN,KAAK/b,GAAM,SAAA7L,GACvB,OAAOwtB,EAAkCxtB,GAAKyJ,KAAOlM,KAGzD,OAAOiwB,EAAkCN,IAGzCO,EAA0C,SAAClwB,GAC3C,IAAIsO,EAAO2O,IAAE3O,KAAK6hB,GACdR,EAAU1S,IAAEoN,KAAK/b,GAAM,SAAA7L,GACvB,OAAO0tB,EAAuC1tB,GAAKyJ,KAAOlM,KAG9D,OAAOmwB,EAAuCR,IAG9CS,EAAuC,SAACpwB,GACxC,IAAIsO,EAAO2O,IAAE3O,KAAK+hB,GACdV,EAAU1S,IAAEoN,KAAK/b,GAAM,SAAA7L,GACvB,OAAO4tB,EAAoC5tB,GAAKyJ,KAAOlM,KAG3D,OAAOqwB,EAAoCV,IAG3CW,EAAoC,SAACtwB,GACrC,IAAIsO,EAAO2O,IAAE3O,KAAKiiB,GACdZ,EAAU1S,IAAEoN,KAAK/b,GAAM,SAAA7L,GACvB,OAAO8tB,EAAiC9tB,GAAKyJ,KAAOlM,KAGxD,OAAOuwB,EAAiCZ,IAKxCa,EAAe,SAAAC,GACf,GAAIA,EAAoB,CACpB,IAAIC,EAAY,IAAIjD,EAiBpB,OAfAiD,EAAUxkB,GAAKukB,EAAmBlZ,GAClCmZ,EAAU5P,QAAU2P,EAAmBvN,QACvCwN,EAAUC,YAAcF,EAAmBG,YAC3CF,EAAU3P,YAAc0P,EAAmBrN,YAC3CsN,EAAUrU,MAAQoU,EAAmBpN,MACrCqN,EAAUtU,SAAWqU,EAAmBtN,SACxCuN,EAAUG,aAAeJ,EAAmBK,aAC5CJ,EAAUlU,QAAUiU,EAAmBlN,QACvCmN,EAAUK,aAAeN,EAAmBO,aAC5CN,EAAUO,iBAAmBR,EAAmBS,qBAChDR,EAAUS,uBAAyBV,EAAmBW,uBACtDV,EAAUW,YAAcZ,EAAmBa,YAE3CZ,EAAUpC,sBAEHoC,EAGX,OAAO,MAGPa,EAAW,SAAAC,GACX,GAAIA,EAAgB,CAChB,IAAIC,EAAQ,IAAIhD,EA0ChB,OAxCAgD,EAAMvlB,GAAKslB,EAAeja,GAC1Bka,EAAMC,qBAAuB9B,EAA6B4B,EAAeG,sBACzEF,EAAMG,6BAA+B9B,EAAqC0B,EAAeK,8BACzFJ,EAAMK,8BAAgCrC,EAAsC+B,EAAeO,+BAC3FN,EAAMO,2BAA6BhC,EAAmCwB,EAAelW,iCACrFmW,EAAMQ,gCAAkC/B,EAAwCsB,EAAe3M,sCAC/F4M,EAAMS,6BAA+B9B,EAAqCoB,EAAezM,mCACzF0M,EAAMU,0BAA4B7B,EAAkCkB,EAAe9K,gCACnF+K,EAAMxJ,YAAcuJ,EAAeY,YACnCX,EAAMvJ,aAAesJ,EAAea,aACpCZ,EAAM1J,YAAcyJ,EAAec,YACnCb,EAAMzJ,aAAewJ,EAAee,aACpCd,EAAMrR,OAASoR,EAAe/O,OAC9BgP,EAAMtX,KAAOvH,IAAO4e,EAAentB,MACnCotB,EAAMpR,eAAiBmR,EAAe7O,eACtC8O,EAAMnR,aAAe1N,IAAO4e,EAAe5O,cAC3C6O,EAAMe,UAAY5f,IAAO4e,EAAeiB,WACxChB,EAAMtR,gBAAkBqR,EAAehP,gBACvCiP,EAAMna,OAASka,EAAekB,SAC9BjB,EAAMkB,UAAY/f,IAAO4e,EAAeoB,WACxCnB,EAAMtT,mBAAqBqT,EAAexO,mBAC1CyO,EAAMoB,mBAAqBrB,EAAesB,mBAAqBlgB,IAAO4e,EAAesB,oBAAsB,KAC3GrB,EAAMvT,mBAAqBsT,EAAezO,mBAC1C0O,EAAMsB,mBAAqBvB,EAAewB,mBAAqBpgB,IAAO4e,EAAewB,oBAAsB,KAC3GvB,EAAMwB,mBAAqBzB,EAAe0B,mBAC1CzB,EAAM0B,mBAAqB3B,EAAe4B,mBAAqBxgB,IAAO4e,EAAe4B,oBAAsB,KAC3G3B,EAAM4B,SAAW7B,EAAe8B,SAChC7B,EAAM8B,aAAe/B,EAAegC,aACpC/B,EAAMgC,WAAajC,EAAekC,WAAa9gB,IAAO4e,EAAekC,YAAc,KACnFjC,EAAMkC,gBAAkBnC,EAAeoC,gBACvCnC,EAAMoC,oBAAsBrC,EAAesC,oBAC3CrC,EAAMsC,kBAAoBvC,EAAewC,kBAAoBphB,IAAO4e,EAAewC,mBAAqB,KACxGvC,EAAMwC,gCAAkCzC,EAAe0C,gCACvDzC,EAAM0C,gCAAkC3C,EAAe4C,gCACvD3C,EAAM4C,UAAY7C,EAAe8C,UACjC7C,EAAM8C,UAAY/C,EAAegD,UAAY5hB,IAAO4e,EAAegD,WAAa,KAChF/C,EAAM/mB,OAAS8mB,EAAeiD,OAC9BhD,EAAMR,iBAAmBO,EAAekD,iBACxCjD,EAAMkD,mBAAqBnD,EAAeoD,mBAEnCnD,EAGX,OAAO,MAGPoD,EAAe,SAAArD,GACf,GAAIA,EAAgB,CAChB,IAAIsD,EAAY,IAAIC,EA6CpB,OA3CAD,EAAU5oB,GAAKslB,EAAeja,GAC9Bud,EAAU7D,iBAAmBO,EAAekD,iBAC5CI,EAAUH,mBAAqBnD,EAAeoD,mBAC9CE,EAAUpqB,OAAS8mB,EAAeiD,OAClCK,EAAUpD,qBAAuB9B,EAA6B4B,EAAeG,sBAC7EmD,EAAUlD,6BAA+B9B,EAAqC0B,EAAeK,8BAC7FiD,EAAUhD,8BAAgCrC,EAAsC+B,EAAeO,+BAC/F+C,EAAU9C,2BAA6BhC,EAAmCwB,EAAelW,iCACzFwZ,EAAU7C,gCAAkC/B,EAAwCsB,EAAe3M,sCACnGiQ,EAAU5C,6BAA+B9B,EAAqCoB,EAAezM,mCAC7F+P,EAAU3C,0BAA4B7B,EAAkCkB,EAAe9K,gCACvFoO,EAAU7M,YAAcuJ,EAAeY,YACvC0C,EAAU5M,aAAesJ,EAAea,aACxCyC,EAAU/M,YAAcyJ,EAAec,YACvCwC,EAAU9M,aAAewJ,EAAee,aACxCuC,EAAU1U,OAASoR,EAAe/O,OAClCqS,EAAU3a,KAAOvH,IAAO4e,EAAentB,MACvCywB,EAAUzU,eAAiBmR,EAAe7O,eAC1CmS,EAAUxU,aAAe1N,IAAO4e,EAAe5O,cAC/CkS,EAAUtC,UAAY5f,IAAO4e,EAAeiB,WAC5CqC,EAAU3U,gBAAkBqR,EAAehP,gBAC3CsS,EAAUxd,OAASka,EAAekB,SAClCoC,EAAUnC,UAAY/f,IAAO4e,EAAeoB,WAC5CkC,EAAU3W,mBAAqBqT,EAAexO,mBAC9C8R,EAAUjC,mBAAqBrB,EAAesB,mBAAqBlgB,IAAO4e,EAAesB,oBAAsB,KAC/GgC,EAAU5W,mBAAqBsT,EAAezO,mBAC9C+R,EAAU/B,mBAAqBvB,EAAewB,mBAAqBpgB,IAAO4e,EAAewB,oBAAsB,KAC/G8B,EAAU7B,mBAAqBzB,EAAe0B,mBAC9C4B,EAAU3B,mBAAqB3B,EAAe4B,mBAAqBxgB,IAAO4e,EAAe4B,oBAAsB,KAC/G0B,EAAUzB,SAAW7B,EAAe8B,SACpCwB,EAAUvB,aAAe/B,EAAegC,aACxCsB,EAAUrB,WAAajC,EAAekC,WAAa9gB,IAAO4e,EAAekC,YAAc,KACvFoB,EAAUnB,gBAAkBnC,EAAeoC,gBAC3CkB,EAAUjB,oBAAsBrC,EAAesC,oBAC/CgB,EAAUf,kBAAoBvC,EAAewC,kBAAoBphB,IAAO4e,EAAewC,mBAAqB,KAC5Gc,EAAUb,gCAAkCzC,EAAe0C,gCAC3DY,EAAUX,gCAAkC3C,EAAe4C,gCAC3DU,EAAUT,UAAY7C,EAAe8C,UACrCQ,EAAUP,UAAY/C,EAAegD,UAAY5hB,IAAO4e,EAAegD,WAAa,KACpFM,EAAUnU,MAAQ1D,IAAE/O,IAAIsjB,EAAepP,OAAO,SAAAqO,GAC1C,OAAOD,EAAaC,MAGjBqE,EAGX,OAAO,MAKPE,EAAkB,SAAA5X,GAClB,IAAI6X,EAAe,IAAIC,EAcvB,OAbAD,EAAa/oB,GAAKkR,EAAK7F,GACvB0d,EAAanU,QAAU1D,EAAK8F,QAC5B+R,EAAalE,aAAe3T,EAAK4T,aACjCiE,EAAa5D,YAAcjU,EAAKkU,YAChC2D,EAAalU,YAAc3D,EAAKgG,YAChC6R,EAAa7Y,SAAWgB,EAAK+F,SAC7B8R,EAAa5Y,MAAQe,EAAKiG,MAC1B4R,EAAa3Y,MAAQc,EAAKkG,MAC1B2R,EAAazY,QAAUY,EAAKmG,QAC5B0R,EAAatY,SAAWS,EAAKoG,SAC7ByR,EAAapY,aAAeO,EAAKqG,aACjCwR,EAAavE,UAAYtT,EAAKqQ,UAAY+C,EAAapT,EAAKqQ,WAAa,KAElEwH,GAGPE,EAAc,SAAAC,GACd,GAAIA,EAAmB,CACnB,IAAIlV,EAAW,IAAIqC,EAqCnB,OAnCArC,EAAShU,GAAKkpB,EAAkB7d,GAChC2I,EAASuR,MAAQ2D,EAAkB3G,MAAQ8C,EAAS6D,EAAkB3G,OAAS,KAC/EvO,EAASxV,OAAS0qB,EAAkBX,OACpCvU,EAASE,OAASgV,EAAkB3S,OACpCvC,EAAS/F,KAAOib,EAAkB/wB,KAAOuO,IAAOwiB,EAAkB/wB,KAAKY,OAAO,EAAG,IAAK,cAAgB,KACtGib,EAASmV,cAAgBD,EAAkBE,kBAC3CpV,EAASqV,YAAcH,EAAkBI,gBAAkB5iB,IAAOwiB,EAAkBI,gBAAgBvwB,OAAO,EAAG,IAAK,cAAgB,KACnIib,EAASG,eAAiB+U,EAAkBzS,eAC5CzC,EAASI,aAAe8U,EAAkBxS,aAAehQ,IAAOwiB,EAAkBxS,aAAa3d,OAAO,EAAG,IAAK,cAAgB,KAC9Hib,EAASyS,UAAYyC,EAAkBxC,UAAYhgB,IAAOwiB,EAAkBxC,WAAa,KACzF1S,EAASuV,WAAaL,EAAkBM,WACxCxV,EAASyV,WAAaP,EAAkBQ,WAAahjB,IAAOwiB,EAAkBQ,YAAc,KAC5F1V,EAAS9B,WAAagX,EAAkBnS,WACxC/C,EAAS2V,eAAiBT,EAAkBU,eAAiBljB,IAAOwiB,EAAkBU,gBAAkB,KACxG5V,EAAS5D,MAAQ8Y,EAAkB9R,MACnCpD,EAAS6V,aAAeX,EAAkBY,aAC1C9V,EAAS+H,YAAcmN,EAAkBhD,YACzClS,EAASgI,aAAekN,EAAkB/C,aAC1CnS,EAAS+V,aAAeb,EAAkBc,aAC1ChW,EAASiW,cAAgBf,EAAkBgB,cAC3ClW,EAASC,gBAAkBiV,EAAkB5S,gBAC7CtC,EAASmW,eAAiBjB,EAAkBkB,eAC5CpW,EAASqW,WAAanB,EAAkBoB,WACxCtW,EAASuW,UAAYrB,EAAkBsB,gBACvCxW,EAASyW,SAAWvB,EAAkBwB,SACtC1W,EAAS2W,UAAYzB,EAAkB0B,UACvC5W,EAAS6W,cAAgB3B,EAAkB4B,cAC3C9W,EAAS+W,cAAgB7B,EAAkB8B,oBAC3ChX,EAASiX,aAAe/B,EAAkBgC,aAC1ClX,EAASmX,iBAAmBjC,EAAkBkC,iBAAmB1kB,IAAOwiB,EAAkBkC,kBAAoB,KAE9GpX,EAASsB,SAAW4T,EAAkBmC,SAASrpB,KAAI,SAAA3R,GAC/C,OAAOglB,GAAWhlB,MAGf2jB,EAGX,OAAO,MAGPsX,GAAkB,SAAApC,GAClB,GAAIA,EAAmB,CACnB,IAAIlV,EAAW,IAAIuX,EAwCnB,OAtCAvX,EAAShU,GAAKkpB,EAAkB7d,GAChC2I,EAASuR,MAAQ2D,EAAkB3G,MAAQ8C,EAAS6D,EAAkB3G,OAAS,KAC/EvO,EAASxV,OAAS0qB,EAAkBX,OACpCvU,EAASE,OAASgV,EAAkB3S,OACpCvC,EAAS/F,KAAOib,EAAkB/wB,KAAOuO,IAAOwiB,EAAkB/wB,KAAKY,OAAO,EAAG,IAAK,cAAgB,KACtGib,EAASmV,cAAgBD,EAAkBE,kBAC3CpV,EAASqV,YAAcH,EAAkBI,gBAAkB5iB,IAAOwiB,EAAkBI,gBAAgBvwB,OAAO,EAAG,IAAK,cAAgB,KACnIib,EAASG,eAAiB+U,EAAkBzS,eAC5CzC,EAASI,aAAe8U,EAAkBxS,aAAehQ,IAAOwiB,EAAkBxS,aAAa3d,OAAO,EAAG,IAAK,cAAgB,KAC9Hib,EAASyS,UAAYyC,EAAkBxC,UAAYhgB,IAAOwiB,EAAkBxC,WAAa,KACzF1S,EAASuV,WAAaL,EAAkBM,WACxCxV,EAASyV,WAAaP,EAAkBQ,WAAahjB,IAAOwiB,EAAkBQ,YAAc,KAC5F1V,EAAS9B,WAAagX,EAAkBnS,WACxC/C,EAAS2V,eAAiBT,EAAkBU,eAAiBljB,IAAOwiB,EAAkBU,gBAAkB,KACxG5V,EAAS5D,MAAQ8Y,EAAkB9R,MACnCpD,EAAS6V,aAAeX,EAAkBY,aAC1C9V,EAAS+H,YAAcmN,EAAkBhD,YACzClS,EAASgI,aAAekN,EAAkB/C,aAC1CnS,EAAS+V,aAAeb,EAAkBc,aAC1ChW,EAASiW,cAAgBf,EAAkBgB,cAC3ClW,EAASC,gBAAkBiV,EAAkB5S,gBAC7CtC,EAASmW,eAAiBjB,EAAkBkB,eAC5CpW,EAASqW,WAAanB,EAAkBoB,WACxCtW,EAASuW,UAAYrB,EAAkBsB,gBACvCxW,EAASyW,SAAWvB,EAAkBwB,SACtC1W,EAAS2W,UAAYzB,EAAkB0B,UACvC5W,EAAS6W,cAAgB3B,EAAkB4B,cAC3C9W,EAAS+W,cAAgB7B,EAAkB8B,oBAC3ChX,EAASiX,aAAe/B,EAAkBgC,aAC1ClX,EAASmX,iBAAmBjC,EAAkBkC,iBAAmB1kB,IAAOwiB,EAAkBkC,kBAAoB,KAC9GpX,EAASS,MAAQyU,EAAkBhT,MAAMlU,KAAI,SAAAkP,GACzC,OAAO4X,EAAgB5X,MAG3B8C,EAASsB,SAAW4T,EAAkBmC,SAASrpB,KAAI,SAAA3R,GAC/C,OAAOglB,GAAWhlB,MAGf2jB,EAGX,OAAO,MAKPwX,GAAiB,SAAAta,GACjB,IAAIiF,EAAc,IAAIsV,EAkBtB,OAhBAtV,EAAYnW,GAAKkR,EAAK7F,GACtB8K,EAAYtB,YAAc3D,EAAKgG,YAC/Bf,EAAYuV,gBAAkBxa,EAAKya,gBACnCxV,EAAY7F,QAAUY,EAAKmG,QAC3BlB,EAAY1F,SAAWS,EAAKoG,SAC5BnB,EAAYhG,MAAQe,EAAKiG,MACzBhB,EAAYvB,QAAU1D,EAAK8F,QAC3Bb,EAAYjG,SAAWgB,EAAK+F,SAC5Bd,EAAY/F,MAAQc,EAAKkG,MACzBjB,EAAYgP,YAAcjU,EAAKkU,YAC/BjP,EAAYyV,YAAc1a,EAAK2a,YAC/B1V,EAAYxF,aAAeO,EAAKqG,aAChCpB,EAAY2V,QAAU5a,EAAK6a,QAC3B5V,EAAY6V,MAAQ9a,EAAK+a,QACzB9V,EAAY4S,aAAe7X,EAAK8X,aAAeF,EAAgB5X,EAAK8X,cAAgB,KAE7E7S,GAGPd,GAAa,SAAAE,GACb,GAAIA,EAAkB,CAClB,IAAIH,EAAU,IAAIgO,EAyBlB,OAvBAhO,EAAQpV,GAAKuV,EAAiBlK,GAC9B+J,EAAQlB,OAASqB,EAAiBgB,OAClCnB,EAAQ5W,OAAS+W,EAAiBgT,OAClCnT,EAAQnH,KAAOsH,EAAiBpd,KAAOuO,IAAO6O,EAAiBpd,KAAKY,OAAO,EAAG,IAAK,cAAgB,KACnGqc,EAAQjB,eAAiBoB,EAAiBkB,eAC1CrB,EAAQhB,aAAemB,EAAiBmB,aAAehQ,IAAO6O,EAAiBmB,aAAa3d,OAAO,EAAG,IAAK,cAAgB,KAC3Hqc,EAAQqR,UAAYlR,EAAiBmR,UAAYhgB,IAAO6O,EAAiBmR,WAAa,KACtFtR,EAAQnD,mBAAqBsD,EAAiBuB,mBAC9C1B,EAAQuR,mBAAqBpR,EAAiBqR,mBAAqBlgB,IAAO6O,EAAiBqR,oBAAsB,KACjHxR,EAAQpD,mBAAqBuD,EAAiBsB,mBAC9CzB,EAAQyR,mBAAqBtR,EAAiBuR,mBAAqBpgB,IAAO6O,EAAiBuR,oBAAsB,KACjH1R,EAAQf,gBAAkB6X,GAAiB3W,EAAiBoB,gBAC5DvB,EAAQd,gBAAkB4X,GAAiB3W,EAAiBqB,gBAC5DxB,EAAQhF,MAAQmF,EAAiB6B,MACjChC,EAAQyU,aAAetU,EAAiBuU,aACxC1U,EAAQ+W,iBAAmB5W,EAAiB6W,iBAC5ChX,EAAQiX,mBAAqB9W,EAAiB+W,oBAC9ClX,EAAQmX,iBAAmBhX,EAAiBiX,iBAC5CpX,EAAQqX,oBAAsBlX,EAAiBmX,oBAC/CtX,EAAQuX,kBAAoBpX,EAAiBqX,kBAAoBlmB,IAAO6O,EAAiBqX,kBAAkB7zB,OAAO,EAAG,IAAK,cAAgB,KAC1Iqc,EAAQyX,kBAAoBtX,EAAiBuX,kBAC7C1X,EAAQpB,SAAWuB,EAAiBc,SAAW4S,EAAY1T,EAAiBc,UAAY,KAEjFjB,EAGX,OAAO,MAGPlC,GAAiB,SAAAqC,GACjB,GAAIA,EAAkB,CAClB,IAAIH,EAAU,IAAI2X,EA4BlB,OA1BA3X,EAAQpV,GAAKuV,EAAiBlK,GAC9B+J,EAAQlB,OAASqB,EAAiBgB,OAClCnB,EAAQ5W,OAAS+W,EAAiBgT,OAClCnT,EAAQnH,KAAOsH,EAAiBpd,KAAOuO,IAAO6O,EAAiBpd,KAAKY,OAAO,EAAG,IAAK,cAAgB,KACnGqc,EAAQjB,eAAiBoB,EAAiBkB,eAC1CrB,EAAQhB,aAAemB,EAAiBmB,aAAehQ,IAAO6O,EAAiBmB,aAAa3d,OAAO,EAAG,IAAK,cAAgB,KAC3Hqc,EAAQqR,UAAYlR,EAAiBmR,UAAYhgB,IAAO6O,EAAiBmR,WAAa,KACtFtR,EAAQnD,mBAAqBsD,EAAiBuB,mBAC9C1B,EAAQuR,mBAAqBpR,EAAiBqR,mBAAqBlgB,IAAO6O,EAAiBqR,oBAAsB,KACjHxR,EAAQpD,mBAAqBuD,EAAiBsB,mBAC9CzB,EAAQyR,mBAAqBtR,EAAiBuR,mBAAqBpgB,IAAO6O,EAAiBuR,oBAAsB,KACjH1R,EAAQf,gBAAkB6X,GAAiB3W,EAAiBoB,gBAC5DvB,EAAQd,gBAAkB4X,GAAiB3W,EAAiBqB,gBAC5DxB,EAAQhF,MAAQmF,EAAiB6B,MACjChC,EAAQyU,aAAetU,EAAiBuU,aACxC1U,EAAQ+W,iBAAmB5W,EAAiB6W,iBAC5ChX,EAAQiX,mBAAqB9W,EAAiB+W,oBAC9ClX,EAAQmX,iBAAmBhX,EAAiBiX,iBAC5CpX,EAAQqX,oBAAsBlX,EAAiBmX,oBAC/CtX,EAAQuX,kBAAoBpX,EAAiBqX,kBAAoBlmB,IAAO6O,EAAiBqX,kBAAkB7zB,OAAO,EAAG,IAAK,cAAgB,KAC1Iqc,EAAQyX,kBAAoBtX,EAAiBuX,kBAC7C1X,EAAQpB,SAAWuB,EAAiBc,SAAW4S,EAAY1T,EAAiBc,UAAY,KACxFjB,EAAQX,MAAQc,EAAiBW,MAAMlU,KAAI,SAAAkP,GACvC,OAAOsa,GAAeta,MAGnBkE,EAGX,OAAO,MAGP8W,GAAmB,SAAAc,GACnB,GAAIA,EAA+B,CAC/B,IAAIC,EAAgB,IAAIC,EAaxB,OAXAD,EAAcrqB,IAAMoqB,EAA8BG,IAClDF,EAAc/3B,KAAO83B,EAA8BzhB,KACnD0hB,EAAcG,QAAUJ,EAA8BK,QACtDJ,EAAcK,MAAQN,EAA8BO,MACpDN,EAAcO,kBAAoBR,EAA8BS,kBAChER,EAAcS,SAAWV,EAA8BW,SACvDV,EAAcW,QAAUZ,EAA8Ba,QACtDZ,EAAca,KAAOd,EAA8Be,KACnDd,EAAce,MAAQhB,EAA8BiB,MACpDhB,EAAciB,oBAAsBlB,EAA8BmB,oBAE3DlB,EAGX,OAAO,MAKPmB,GAAqB,SAAA7J,GACrB,GAAIA,EAAoB,CACpB,IAAIC,EAAY,IAAI6J,EAiBpB,OAfA7J,EAAUxkB,GAAKukB,EAAmBlZ,GAClCmZ,EAAU5P,QAAU2P,EAAmBvN,QACvCwN,EAAUC,YAAcF,EAAmBG,YAC3CF,EAAU3P,YAAc0P,EAAmBrN,YAC3CsN,EAAUrU,MAAQoU,EAAmBpN,MACrCqN,EAAUtU,SAAWqU,EAAmBtN,SACxCuN,EAAUG,aAAeJ,EAAmBK,aAC5CJ,EAAUlU,QAAUiU,EAAmBlN,QACvCmN,EAAUK,aAAeN,EAAmBO,aAC5CN,EAAUO,iBAAmBR,EAAmBS,qBAChDR,EAAUS,uBAAyBV,EAAmBW,uBACtDV,EAAUW,YAAcZ,EAAmBa,YAE3CZ,EAAUpC,sBAEHoC,EAGX,OAAO,MAGP8J,GAAiB,SAAAhJ,GACjB,GAAIA,EAAgB,CAChB,IAAIC,EAAQ,IAAIlC,EA0ChB,OAxCAkC,EAAMvlB,GAAKslB,EAAeja,GAC1Bka,EAAMC,qBAAuB9B,EAA6B4B,EAAeG,sBACzEF,EAAMG,6BAA+B9B,EAAqC0B,EAAeK,8BACzFJ,EAAMK,8BAAgCrC,EAAsC+B,EAAeO,+BAC3FN,EAAMO,2BAA6BhC,EAAmCwB,EAAelW,iCACrFmW,EAAMQ,gCAAkC/B,EAAwCsB,EAAe3M,sCAC/F4M,EAAMS,6BAA+B9B,EAAqCoB,EAAezM,mCACzF0M,EAAMU,0BAA4B7B,EAAkCkB,EAAe9K,gCACnF+K,EAAMxJ,YAAcuJ,EAAeY,YACnCX,EAAMvJ,aAAesJ,EAAea,aACpCZ,EAAM1J,YAAcyJ,EAAec,YACnCb,EAAMzJ,aAAewJ,EAAee,aACpCd,EAAMrR,OAASoR,EAAe/O,OAC9BgP,EAAMtX,KAAOvH,IAAO4e,EAAentB,MACnCotB,EAAMpR,eAAiBmR,EAAe7O,eACtC8O,EAAMnR,aAAe1N,IAAO4e,EAAe5O,cAC3C6O,EAAMe,UAAY5f,IAAO4e,EAAeiB,WACxChB,EAAMtR,gBAAkBqR,EAAehP,gBACvCiP,EAAMna,OAASka,EAAekB,SAC9BjB,EAAMkB,UAAY/f,IAAO4e,EAAeoB,WACxCnB,EAAMtT,mBAAqBqT,EAAexO,mBAC1CyO,EAAMoB,mBAAqBrB,EAAesB,mBAAqBlgB,IAAO4e,EAAesB,oBAAsB,KAC3GrB,EAAMvT,mBAAqBsT,EAAezO,mBAC1C0O,EAAMsB,mBAAqBvB,EAAewB,mBAAqBpgB,IAAO4e,EAAewB,oBAAsB,KAC3GvB,EAAMwB,mBAAqBzB,EAAe0B,mBAC1CzB,EAAM0B,mBAAqB3B,EAAe4B,mBAAqBxgB,IAAO4e,EAAe4B,oBAAsB,KAC3G3B,EAAM4B,SAAW7B,EAAe8B,SAChC7B,EAAM8B,aAAe/B,EAAegC,aACpC/B,EAAMgC,WAAajC,EAAekC,WAAa9gB,IAAO4e,EAAekC,YAAc,KACnFjC,EAAMkC,gBAAkBnC,EAAeoC,gBACvCnC,EAAMoC,oBAAsBrC,EAAesC,oBAC3CrC,EAAMsC,kBAAoBvC,EAAewC,kBAAoBphB,IAAO4e,EAAewC,mBAAqB,KACxGvC,EAAMwC,gCAAkCzC,EAAe0C,gCACvDzC,EAAM0C,gCAAkC3C,EAAe4C,gCACvD3C,EAAM4C,UAAY7C,EAAe8C,UACjC7C,EAAM8C,UAAY/C,EAAegD,UAAY5hB,IAAO4e,EAAegD,WAAa,KAChF/C,EAAM/mB,OAAS8mB,EAAeiD,OAC9BhD,EAAMR,iBAAmBO,EAAekD,iBACxCjD,EAAMkD,mBAAqBnD,EAAeoD,mBAEnCnD,EAGX,OAAO,MAGPgJ,GAAqB,SAAAjJ,GACrB,GAAIA,EAAgB,CAChB,IAAIsD,EAAY,IAAI4F,EA6CpB,OA3CA5F,EAAU5oB,GAAKslB,EAAeja,GAC9Bud,EAAU7D,iBAAmBO,EAAekD,iBAC5CI,EAAUH,mBAAqBnD,EAAeoD,mBAC9CE,EAAUpqB,OAAS8mB,EAAeiD,OAClCK,EAAUpD,qBAAuB9B,EAA6B4B,EAAeG,sBAC7EmD,EAAUlD,6BAA+B9B,EAAqC0B,EAAeK,8BAC7FiD,EAAUhD,8BAAgCrC,EAAsC+B,EAAeO,+BAC/F+C,EAAU9C,2BAA6BhC,EAAmCwB,EAAelW,iCACzFwZ,EAAU7C,gCAAkC/B,EAAwCsB,EAAe3M,sCACnGiQ,EAAU5C,6BAA+B9B,EAAqCoB,EAAezM,mCAC7F+P,EAAU3C,0BAA4B7B,EAAkCkB,EAAe9K,gCACvFoO,EAAU7M,YAAcuJ,EAAeY,YACvC0C,EAAU5M,aAAesJ,EAAea,aACxCyC,EAAU/M,YAAcyJ,EAAec,YACvCwC,EAAU9M,aAAewJ,EAAee,aACxCuC,EAAU1U,OAASoR,EAAe/O,OAClCqS,EAAU3a,KAAOvH,IAAO4e,EAAentB,MACvCywB,EAAUzU,eAAiBmR,EAAe7O,eAC1CmS,EAAUxU,aAAe1N,IAAO4e,EAAe5O,cAC/CkS,EAAUtC,UAAY5f,IAAO4e,EAAeiB,WAC5CqC,EAAU3U,gBAAkBqR,EAAehP,gBAC3CsS,EAAUxd,OAASka,EAAekB,SAClCoC,EAAUnC,UAAY/f,IAAO4e,EAAeoB,WAC5CkC,EAAU3W,mBAAqBqT,EAAexO,mBAC9C8R,EAAUjC,mBAAqBrB,EAAesB,mBAAqBlgB,IAAO4e,EAAesB,oBAAsB,KAC/GgC,EAAU5W,mBAAqBsT,EAAezO,mBAC9C+R,EAAU/B,mBAAqBvB,EAAewB,mBAAqBpgB,IAAO4e,EAAewB,oBAAsB,KAC/G8B,EAAU7B,mBAAqBzB,EAAe0B,mBAC9C4B,EAAU3B,mBAAqB3B,EAAe4B,mBAAqBxgB,IAAO4e,EAAe4B,oBAAsB,KAC/G0B,EAAUzB,SAAW7B,EAAe8B,SACpCwB,EAAUvB,aAAe/B,EAAegC,aACxCsB,EAAUrB,WAAajC,EAAekC,WAAa9gB,IAAO4e,EAAekC,YAAc,KACvFoB,EAAUnB,gBAAkBnC,EAAeoC,gBAC3CkB,EAAUjB,oBAAsBrC,EAAesC,oBAC/CgB,EAAUf,kBAAoBvC,EAAewC,kBAAoBphB,IAAO4e,EAAewC,mBAAqB,KAC5Gc,EAAUb,gCAAkCzC,EAAe0C,gCAC3DY,EAAUX,gCAAkC3C,EAAe4C,gCAC3DU,EAAUT,UAAY7C,EAAe8C,UACrCQ,EAAUP,UAAY/C,EAAegD,UAAY5hB,IAAO4e,EAAegD,WAAa,KACpFM,EAAUnU,MAAQ1D,IAAE/O,IAAIsjB,EAAepP,OAAO,SAAAqO,GAC1C,OAAOD,EAAaC,MAGjBqE,EAGX,OAAO,MAKP6F,GAAwB,SAAAvd,GACxB,IAAI6X,EAAe,IAAI2F,EAcvB,OAbA3F,EAAa/oB,GAAKkR,EAAK7F,GACvB0d,EAAanU,QAAU1D,EAAK8F,QAC5B+R,EAAalE,aAAe3T,EAAK4T,aACjCiE,EAAa5D,YAAcjU,EAAKkU,YAChC2D,EAAalU,YAAc3D,EAAKgG,YAChC6R,EAAa7Y,SAAWgB,EAAK+F,SAC7B8R,EAAa5Y,MAAQe,EAAKiG,MAC1B4R,EAAa3Y,MAAQc,EAAKkG,MAC1B2R,EAAazY,QAAUY,EAAKmG,QAC5B0R,EAAatY,SAAWS,EAAKoG,SAC7ByR,EAAapY,aAAeO,EAAKqG,aACjCwR,EAAavE,UAAYtT,EAAKmd,gBAAkBD,GAAmBld,EAAKmd,iBAAmB,KAEpFtF,GAGP4F,GAAoB,SAAAzF,GACpB,GAAIA,EAAmB,CACnB,IAAIlV,EAAW,IAAIsP,EAqCnB,OAnCAtP,EAAShU,GAAKkpB,EAAkB7d,GAChC2I,EAASuR,MAAQ+I,GAAepF,EAAkB7F,aAClDrP,EAASxV,OAAS0qB,EAAkBX,OACpCvU,EAASE,OAASgV,EAAkB3S,OACpCvC,EAAS/F,KAAOib,EAAkB/wB,KAAOuO,IAAOwiB,EAAkB/wB,KAAKY,OAAO,EAAG,IAAK,cAAgB,KACtGib,EAASmV,cAAgBD,EAAkBE,kBAC3CpV,EAASqV,YAAcH,EAAkBI,gBAAkB5iB,IAAOwiB,EAAkBI,gBAAgBvwB,OAAO,EAAG,IAAK,cAAgB,KACnIib,EAASG,eAAiB+U,EAAkBzS,eAC5CzC,EAASI,aAAe8U,EAAkBxS,aAAehQ,IAAOwiB,EAAkBxS,aAAa3d,OAAO,EAAG,IAAK,cAAgB,KAC9Hib,EAASyS,UAAYyC,EAAkBxC,UAAYhgB,IAAOwiB,EAAkBxC,WAAa,KACzF1S,EAASuV,WAAaL,EAAkBM,WACxCxV,EAASyV,WAAaP,EAAkBQ,WAAahjB,IAAOwiB,EAAkBQ,YAAc,KAC5F1V,EAAS9B,WAAagX,EAAkBnS,WACxC/C,EAAS2V,eAAiBT,EAAkBU,eAAiBljB,IAAOwiB,EAAkBU,gBAAkB,KACxG5V,EAAS5D,MAAQ8Y,EAAkB9R,MACnCpD,EAAS6V,aAAeX,EAAkBY,aAC1C9V,EAAS+H,YAAcmN,EAAkBhD,YACzClS,EAASgI,aAAekN,EAAkB/C,aAC1CnS,EAAS+V,aAAeb,EAAkBc,aAC1ChW,EAASiW,cAAgBf,EAAkBgB,cAC3ClW,EAASC,gBAAkBiV,EAAkB5S,gBAC7CtC,EAASmW,eAAiBjB,EAAkBkB,eAC5CpW,EAASqW,WAAanB,EAAkBoB,WACxCtW,EAASuW,UAAYrB,EAAkBsB,gBACvCxW,EAASyW,SAAWvB,EAAkBwB,SACtC1W,EAAS2W,UAAYzB,EAAkB0B,UACvC5W,EAAS6W,cAAgB3B,EAAkB4B,cAC3C9W,EAAS+W,cAAgB7B,EAAkB8B,oBAC3ChX,EAASiX,aAAe/B,EAAkBgC,aAC1ClX,EAASmX,iBAAmBjC,EAAkBkC,iBAAmB1kB,IAAOwiB,EAAkBkC,kBAAoB,KAE9GpX,EAASsB,SAAW4T,EAAkB0F,eAAe5sB,KAAI,SAAA3R,GACrD,OAAOw+B,GAAiBx+B,MAGrB2jB,EAGX,OAAO,MAGP8a,GAAwB,SAAA5F,GACxB,GAAIA,EAAmB,CACnB,IAAIlV,EAAW,IAAI+a,EAwCnB,OAtCA/a,EAAShU,GAAKkpB,EAAkB7d,GAChC2I,EAASuR,MAAQ+I,GAAepF,EAAkB7F,aAClDrP,EAASxV,OAAS0qB,EAAkBX,OACpCvU,EAASE,OAASgV,EAAkB3S,OACpCvC,EAAS/F,KAAOib,EAAkB/wB,KAAOuO,IAAOwiB,EAAkB/wB,KAAKY,OAAO,EAAG,IAAK,cAAgB,KACtGib,EAASmV,cAAgBD,EAAkBE,kBAC3CpV,EAASqV,YAAcH,EAAkBI,gBAAkB5iB,IAAOwiB,EAAkBI,gBAAgBvwB,OAAO,EAAG,IAAK,cAAgB,KACnIib,EAASG,eAAiB+U,EAAkBzS,eAC5CzC,EAASI,aAAe8U,EAAkBxS,aAAehQ,IAAOwiB,EAAkBxS,aAAa3d,OAAO,EAAG,IAAK,cAAgB,KAC9Hib,EAASyS,UAAYyC,EAAkBxC,UAAYhgB,IAAOwiB,EAAkBxC,WAAa,KACzF1S,EAASuV,WAAaL,EAAkBM,WACxCxV,EAASyV,WAAaP,EAAkBQ,WAAahjB,IAAOwiB,EAAkBQ,YAAc,KAC5F1V,EAAS9B,WAAagX,EAAkBnS,WACxC/C,EAAS2V,eAAiBT,EAAkBU,eAAiBljB,IAAOwiB,EAAkBU,gBAAkB,KACxG5V,EAAS5D,MAAQ8Y,EAAkB9R,MACnCpD,EAAS6V,aAAeX,EAAkBY,aAC1C9V,EAAS+H,YAAcmN,EAAkBhD,YACzClS,EAASgI,aAAekN,EAAkB/C,aAC1CnS,EAAS+V,aAAeb,EAAkBc,aAC1ChW,EAASiW,cAAgBf,EAAkBgB,cAC3ClW,EAASC,gBAAkBiV,EAAkB5S,gBAC7CtC,EAASmW,eAAiBjB,EAAkBkB,eAC5CpW,EAASqW,WAAanB,EAAkBoB,WACxCtW,EAASuW,UAAYrB,EAAkBsB,gBACvCxW,EAASyW,SAAWvB,EAAkBwB,SACtC1W,EAAS2W,UAAYzB,EAAkB0B,UACvC5W,EAAS6W,cAAgB3B,EAAkB4B,cAC3C9W,EAAS+W,cAAgB7B,EAAkB8B,oBAC3ChX,EAASiX,aAAe/B,EAAkBgC,aAC1ClX,EAASmX,iBAAmBjC,EAAkBkC,iBAAmB1kB,IAAOwiB,EAAkBkC,kBAAoB,KAC9GpX,EAASS,MAAQyU,EAAkBhT,MAAMlU,KAAI,SAAAkP,GACzC,OAAOud,GAAsBvd,MAGjC8C,EAASsB,SAAW4T,EAAkB0F,eAAe5sB,KAAI,SAAA3R,GACrD,OAAOw+B,GAAiBx+B,MAGrB2jB,EAGX,OAAO,MAIPgb,GAAuB,SAAA9d,GACvB,IAAIiF,EAAc,IAAIsV,EAkBtB,OAhBAtV,EAAYnW,GAAKkR,EAAK7F,GACtB8K,EAAYtB,YAAc3D,EAAKgG,YAC/Bf,EAAYuV,gBAAkBxa,EAAKya,gBACnCxV,EAAY7F,QAAUY,EAAKmG,QAC3BlB,EAAY1F,SAAWS,EAAKoG,SAC5BnB,EAAYhG,MAAQe,EAAKiG,MACzBhB,EAAYvB,QAAU1D,EAAK8F,QAC3Bb,EAAYjG,SAAWgB,EAAK+F,SAC5Bd,EAAY/F,MAAQc,EAAKkG,MACzBjB,EAAYgP,YAAcjU,EAAKkU,YAC/BjP,EAAYyV,YAAc1a,EAAK2a,YAC/B1V,EAAYxF,aAAeO,EAAKqG,aAChCpB,EAAY2V,QAAU5a,EAAK6a,QAC3B5V,EAAY6V,MAAQ9a,EAAK+a,QACzB9V,EAAY4S,aAAe7X,EAAKwd,mBAAqBD,GAAsBvd,EAAKwd,oBAAsB,KAE/FvY,GAGP0Y,GAAmB,SAAAtZ,GACnB,GAAIA,EAAkB,CAClB,IAAIH,EAAU,IAAIgO,EA4BlB,OA1BAhO,EAAQpV,GAAKuV,EAAiBlK,GAC9B+J,EAAQlB,OAASqB,EAAiBgB,OAClCnB,EAAQ5W,OAAS+W,EAAiBgT,OAClCnT,EAAQ6Z,YAAc1Z,EAAiB2Z,YAAcxoB,IAAO6O,EAAiB2Z,YAAYn2B,OAAO,EAAG,IAAK,cAAgB,KACxHqc,EAAQ+Z,mBAAqB5Z,EAAiB6Z,mBAC9Cha,EAAQia,cAAgB9Z,EAAiB+Z,cACzCla,EAAQnH,KAAOsH,EAAiBpd,KAAOuO,IAAO6O,EAAiBpd,KAAKY,OAAO,EAAG,IAAK,cAAgB,KACnGqc,EAAQjB,eAAiBoB,EAAiBkB,eAC1CrB,EAAQhB,aAAemB,EAAiBmB,aAAehQ,IAAO6O,EAAiBmB,aAAa3d,OAAO,EAAG,IAAK,cAAgB,KAC3Hqc,EAAQqR,UAAYlR,EAAiBmR,UAAYhgB,IAAO6O,EAAiBmR,WAAa,KACtFtR,EAAQnD,mBAAqBsD,EAAiBuB,mBAC9C1B,EAAQuR,mBAAqBpR,EAAiBqR,mBAAqBlgB,IAAO6O,EAAiBqR,oBAAsB,KACjHxR,EAAQpD,mBAAqBuD,EAAiBsB,mBAC9CzB,EAAQyR,mBAAqBtR,EAAiBuR,mBAAqBpgB,IAAO6O,EAAiBuR,oBAAsB,KACjH1R,EAAQf,gBAAkB6X,GAAiB3W,EAAiBoB,gBAC5DvB,EAAQd,gBAAkB4X,GAAiB3W,EAAiBqB,gBAC5DxB,EAAQhF,MAAQmF,EAAiB6B,MACjChC,EAAQyU,aAAetU,EAAiBuU,aACxC1U,EAAQ+W,iBAAmB5W,EAAiB6W,iBAC5ChX,EAAQiX,mBAAqB9W,EAAiB+W,oBAC9ClX,EAAQmX,iBAAmBhX,EAAiBiX,iBAC5CpX,EAAQqX,oBAAsBlX,EAAiBmX,oBAC/CtX,EAAQuX,kBAAoBpX,EAAiBqX,kBAAoBlmB,IAAO6O,EAAiBqX,kBAAkB7zB,OAAO,EAAG,IAAK,cAAgB,KAC1Iqc,EAAQyX,kBAAoBtX,EAAiBuX,kBAC7C1X,EAAQpB,SAAWuB,EAAiB+N,eAAiBqL,GAAkBpZ,EAAiB+N,gBAAkB,KAEnGlO,EAGX,OAAO,MAGPma,GAAuB,SAAAha,GACvB,GAAIA,EAAkB,CAClB,IAAIH,EAAU,IAAI2X,EA+BlB,OA7BA3X,EAAQpV,GAAKuV,EAAiBlK,GAC9B+J,EAAQlB,OAASqB,EAAiBgB,OAClCnB,EAAQ5W,OAAS+W,EAAiBgT,OAClCnT,EAAQnH,KAAOsH,EAAiBpd,KAAOuO,IAAO6O,EAAiBpd,KAAKY,OAAO,EAAG,IAAK,cAAgB,KACnGqc,EAAQ6Z,YAAc1Z,EAAiB2Z,YAAcxoB,IAAO6O,EAAiB2Z,YAAYn2B,OAAO,EAAG,IAAK,cAAgB,KACxHqc,EAAQ+Z,mBAAqB5Z,EAAiB6Z,mBAC9Cha,EAAQia,cAAgB9Z,EAAiB+Z,cACzCla,EAAQjB,eAAiBoB,EAAiBkB,eAC1CrB,EAAQhB,aAAemB,EAAiBmB,aAAehQ,IAAO6O,EAAiBmB,aAAa3d,OAAO,EAAG,IAAK,cAAgB,KAC3Hqc,EAAQqR,UAAYlR,EAAiBmR,UAAYhgB,IAAO6O,EAAiBmR,WAAa,KACtFtR,EAAQnD,mBAAqBsD,EAAiBuB,mBAC9C1B,EAAQuR,mBAAqBpR,EAAiBqR,mBAAqBlgB,IAAO6O,EAAiBqR,oBAAsB,KACjHxR,EAAQpD,mBAAqBuD,EAAiBsB,mBAC9CzB,EAAQyR,mBAAqBtR,EAAiBuR,mBAAqBpgB,IAAO6O,EAAiBuR,oBAAsB,KACjH1R,EAAQf,gBAAkB6X,GAAiB3W,EAAiBoB,gBAC5DvB,EAAQd,gBAAkB4X,GAAiB3W,EAAiBqB,gBAC5DxB,EAAQhF,MAAQmF,EAAiB6B,MACjChC,EAAQyU,aAAetU,EAAiBuU,aACxC1U,EAAQ+W,iBAAmB5W,EAAiB6W,iBAC5ChX,EAAQiX,mBAAqB9W,EAAiB+W,oBAC9ClX,EAAQmX,iBAAmBhX,EAAiBiX,iBAC5CpX,EAAQqX,oBAAsBlX,EAAiBmX,oBAC/CtX,EAAQuX,kBAAoBpX,EAAiBqX,kBAAoBlmB,IAAO6O,EAAiBqX,kBAAkB7zB,OAAO,EAAG,IAAK,cAAgB,KAC1Iqc,EAAQyX,kBAAoBtX,EAAiBuX,kBAC7C1X,EAAQpB,SAAWuB,EAAiB+N,eAAiBqL,GAAkBpZ,EAAiB+N,gBAAkB,KAC1GlO,EAAQX,MAAQc,EAAiBW,MAAMlU,KAAI,SAAAkP,GACvC,OAAO8d,GAAqB9d,MAGzBkE,EAGX,OAAO,MAIPoa,GAAwB,SAAAC,GACxB,IAAIve,EAAO,IAAIwe,EAUf,OARAxe,EAAKlR,GAAKyvB,EAAGpkB,GACb6F,EAAKye,UAAYF,EAAGG,UACpB1e,EAAK2e,YAAcJ,EAAGK,YACtB5e,EAAK6e,YAAcN,EAAGO,YACtB9e,EAAK+e,UAAYR,EAAGS,UACpBhf,EAAKif,YAAcV,EAAGW,YACtBlf,EAAKmf,YAAcZ,EAAGa,YAEfpf,GAGI,QACXoT,aAAcA,EACde,SAAUA,EACVsD,aAAcA,EAEdG,gBAAiBA,EACjBG,YAAaA,EACbqC,gBAAiBA,GAEjBjW,WAAYA,GACZ6W,iBAAkBA,GAClBhZ,eAAgBA,GAEhBkb,mBAAoBA,GACpBE,eAAgBA,GAChBC,mBAAoBA,GAEpBE,sBAAuBA,GACvBE,kBAAmBA,GACnBG,sBAAuBA,GAEvBE,qBAAsBA,GACtBH,iBAAkBA,GAClBU,qBAAsBA,GAEtBC,sBAAuBA","file":"js/app.dd28eee7.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-2d0b8eb0\":\"647324d7\",\"chunk-2d0c430e\":\"9ddff144\",\"chunk-2d0c46e5\":\"917b73ff\",\"chunk-2d0e24b6\":\"60e0eb6c\",\"chunk-2d0e4eca\":\"7de2d3f8\",\"chunk-2d20f6ee\":\"b7940aa6\",\"chunk-2d20fe2a\":\"ad372559\",\"chunk-2d213546\":\"1085b177\",\"chunk-2d2172f7\":\"1dd32d48\",\"chunk-2d21a9d5\":\"26687057\",\"chunk-2d21b29a\":\"24d254bb\",\"chunk-2d21d082\":\"756b9afa\",\"chunk-2d225403\":\"1bbd8669\",\"chunk-54f35a02\":\"786c1655\",\"chunk-7caa746c\":\"4a299489\",\"chunk-36c4e2ee\":\"c1173d5d\",\"chunk-4fa233d2\":\"6a5c72e1\",\"chunk-85b74ff8\":\"4ed886f9\",\"chunk-91787f5c\":\"1a7add86\",\"chunk-9659a9fe\":\"c7555669\",\"chunk-2d142e23\":\"d51e87a9\",\"chunk-7a7835fa\":\"768284f9\",\"chunk-246e7f7a\":\"ba9da7ee\",\"chunk-4e0b45f0\":\"8258fcae\",\"chunk-00b6835c\":\"72d7ba57\",\"chunk-023a0919\":\"ca6d5033\",\"chunk-0906f170\":\"33db26d5\",\"chunk-09444981\":\"7695e5c7\",\"chunk-18788200\":\"8e4a9f39\",\"chunk-18d2e618\":\"3ede91eb\",\"chunk-1b46e44e\":\"b658eb7e\",\"chunk-21579ecc\":\"c64eaff0\",\"chunk-22be0a6a\":\"573b6e09\",\"chunk-24dc2c8c\":\"617ee9d2\",\"chunk-277469ba\":\"d8089305\",\"chunk-285e1563\":\"05dacbb9\",\"chunk-2e2c6648\":\"ae99fb67\",\"chunk-2e9558b5\":\"289bb451\",\"chunk-2f4ce1c6\":\"9df97a54\",\"chunk-30236a18\":\"d393401a\",\"chunk-34abfd05\":\"fc9a31b8\",\"chunk-3e9982ce\":\"6ad160c5\",\"chunk-4034b5bf\":\"3e4c9c8f\",\"chunk-46d104c0\":\"25620baa\",\"chunk-48f43fb8\":\"2134bcf4\",\"chunk-54360861\":\"1d5173a9\",\"chunk-550c19a8\":\"0e3fcda1\",\"chunk-573b56dd\":\"ebc3b887\",\"chunk-5ac430e9\":\"e8a00407\",\"chunk-5dcce85e\":\"4d10092f\",\"chunk-5e21572e\":\"68553c1e\",\"chunk-5f465e59\":\"501701f1\",\"chunk-61dc0d48\":\"d805aebd\",\"chunk-62b2c63d\":\"61e55187\",\"chunk-6fc9fea1\":\"6636fee9\",\"chunk-7140a36f\":\"33a2b91c\",\"chunk-71f44784\":\"8ab30c39\",\"chunk-7458234c\":\"9920c861\",\"chunk-74f85b27\":\"2ef69ef9\",\"chunk-75ebff3d\":\"c309a15d\",\"chunk-79ba28a6\":\"2dd06843\",\"chunk-79c3aaae\":\"978051ea\",\"chunk-7f9ee341\":\"06e4d5bf\",\"chunk-805d3694\":\"6b05b376\",\"chunk-886f4352\":\"c20eeeff\",\"chunk-8a27a894\":\"9b0b0203\",\"chunk-8ecbeb2c\":\"90872cc6\",\"chunk-9f74db04\":\"b5ae6e3f\",\"chunk-c70dd3d2\":\"dfc3030a\",\"chunk-c8584eb6\":\"4d0c6c05\",\"chunk-c8afe7f4\":\"5945b13b\",\"chunk-d5758bee\":\"6d264584\",\"chunk-e128ac7e\":\"e8cb0492\",\"chunk-e6812f4e\":\"948bd784\",\"chunk-ec1a22fc\":\"57469c9d\",\"chunk-f048eb20\":\"b98c5216\",\"chunk-f1f3b262\":\"4614b7ca\",\"chunk-f50cdf0a\":\"ca635168\",\"chunk-6d265405\":\"43de87eb\",\"chunk-767a8079\":\"8b6e1315\",\"chunk-aa7c6fcc\":\"f058afe7\",\"chunk-cd97fc94\":\"25ea1742\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"chunk-7caa746c\":1,\"chunk-36c4e2ee\":1,\"chunk-4fa233d2\":1,\"chunk-85b74ff8\":1,\"chunk-91787f5c\":1,\"chunk-9659a9fe\":1,\"chunk-2d142e23\":1,\"chunk-7a7835fa\":1,\"chunk-246e7f7a\":1,\"chunk-4e0b45f0\":1,\"chunk-00b6835c\":1,\"chunk-023a0919\":1,\"chunk-0906f170\":1,\"chunk-09444981\":1,\"chunk-18788200\":1,\"chunk-18d2e618\":1,\"chunk-1b46e44e\":1,\"chunk-21579ecc\":1,\"chunk-22be0a6a\":1,\"chunk-24dc2c8c\":1,\"chunk-277469ba\":1,\"chunk-285e1563\":1,\"chunk-2e2c6648\":1,\"chunk-2e9558b5\":1,\"chunk-2f4ce1c6\":1,\"chunk-30236a18\":1,\"chunk-34abfd05\":1,\"chunk-3e9982ce\":1,\"chunk-4034b5bf\":1,\"chunk-46d104c0\":1,\"chunk-48f43fb8\":1,\"chunk-54360861\":1,\"chunk-550c19a8\":1,\"chunk-573b56dd\":1,\"chunk-5ac430e9\":1,\"chunk-5dcce85e\":1,\"chunk-5e21572e\":1,\"chunk-5f465e59\":1,\"chunk-61dc0d48\":1,\"chunk-62b2c63d\":1,\"chunk-6fc9fea1\":1,\"chunk-7140a36f\":1,\"chunk-71f44784\":1,\"chunk-7458234c\":1,\"chunk-74f85b27\":1,\"chunk-75ebff3d\":1,\"chunk-79ba28a6\":1,\"chunk-79c3aaae\":1,\"chunk-7f9ee341\":1,\"chunk-805d3694\":1,\"chunk-886f4352\":1,\"chunk-8a27a894\":1,\"chunk-8ecbeb2c\":1,\"chunk-9f74db04\":1,\"chunk-c70dd3d2\":1,\"chunk-c8584eb6\":1,\"chunk-c8afe7f4\":1,\"chunk-d5758bee\":1,\"chunk-e128ac7e\":1,\"chunk-e6812f4e\":1,\"chunk-ec1a22fc\":1,\"chunk-f048eb20\":1,\"chunk-f1f3b262\":1,\"chunk-f50cdf0a\":1,\"chunk-6d265405\":1,\"chunk-767a8079\":1,\"chunk-aa7c6fcc\":1,\"chunk-cd97fc94\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-2d0b8eb0\":\"31d6cfe0\",\"chunk-2d0c430e\":\"31d6cfe0\",\"chunk-2d0c46e5\":\"31d6cfe0\",\"chunk-2d0e24b6\":\"31d6cfe0\",\"chunk-2d0e4eca\":\"31d6cfe0\",\"chunk-2d20f6ee\":\"31d6cfe0\",\"chunk-2d20fe2a\":\"31d6cfe0\",\"chunk-2d213546\":\"31d6cfe0\",\"chunk-2d2172f7\":\"31d6cfe0\",\"chunk-2d21a9d5\":\"31d6cfe0\",\"chunk-2d21b29a\":\"31d6cfe0\",\"chunk-2d21d082\":\"31d6cfe0\",\"chunk-2d225403\":\"31d6cfe0\",\"chunk-54f35a02\":\"31d6cfe0\",\"chunk-7caa746c\":\"ef9e7063\",\"chunk-36c4e2ee\":\"a9504f1b\",\"chunk-4fa233d2\":\"f3b7bc8d\",\"chunk-85b74ff8\":\"ca6b9c10\",\"chunk-91787f5c\":\"28e1c7ec\",\"chunk-9659a9fe\":\"28e1c7ec\",\"chunk-2d142e23\":\"77972b42\",\"chunk-7a7835fa\":\"b4b51d41\",\"chunk-246e7f7a\":\"010f9d78\",\"chunk-4e0b45f0\":\"1b2b9f71\",\"chunk-00b6835c\":\"b5605be4\",\"chunk-023a0919\":\"75e0c1b9\",\"chunk-0906f170\":\"f93b9872\",\"chunk-09444981\":\"d8484d04\",\"chunk-18788200\":\"2a9ead16\",\"chunk-18d2e618\":\"e61a43a1\",\"chunk-1b46e44e\":\"5d65956c\",\"chunk-21579ecc\":\"7cffe2a1\",\"chunk-22be0a6a\":\"2c828c8b\",\"chunk-24dc2c8c\":\"f93b9872\",\"chunk-277469ba\":\"d36cf693\",\"chunk-285e1563\":\"eb39e072\",\"chunk-2e2c6648\":\"d36cf693\",\"chunk-2e9558b5\":\"6a77fed0\",\"chunk-2f4ce1c6\":\"6a77fed0\",\"chunk-30236a18\":\"ff1ae4b1\",\"chunk-34abfd05\":\"a26aebb2\",\"chunk-3e9982ce\":\"d36cf693\",\"chunk-4034b5bf\":\"2208bc77\",\"chunk-46d104c0\":\"d8484d04\",\"chunk-48f43fb8\":\"d8484d04\",\"chunk-54360861\":\"2a9ead16\",\"chunk-550c19a8\":\"22be0cd2\",\"chunk-573b56dd\":\"134764f6\",\"chunk-5ac430e9\":\"134764f6\",\"chunk-5dcce85e\":\"9ee3c611\",\"chunk-5e21572e\":\"02fa8345\",\"chunk-5f465e59\":\"6a77fed0\",\"chunk-61dc0d48\":\"f81c1015\",\"chunk-62b2c63d\":\"f93b9872\",\"chunk-6fc9fea1\":\"134764f6\",\"chunk-7140a36f\":\"960380a2\",\"chunk-71f44784\":\"e6b0d5cd\",\"chunk-7458234c\":\"30368426\",\"chunk-74f85b27\":\"7cffe2a1\",\"chunk-75ebff3d\":\"739c3d54\",\"chunk-79ba28a6\":\"6a77fed0\",\"chunk-79c3aaae\":\"02fa8345\",\"chunk-7f9ee341\":\"c3ec466e\",\"chunk-805d3694\":\"81a199ee\",\"chunk-886f4352\":\"f25a1bc3\",\"chunk-8a27a894\":\"64f559a2\",\"chunk-8ecbeb2c\":\"f0f39da0\",\"chunk-9f74db04\":\"f784b573\",\"chunk-c70dd3d2\":\"8d15a4c2\",\"chunk-c8584eb6\":\"f93b9872\",\"chunk-c8afe7f4\":\"ff1ae4b1\",\"chunk-d5758bee\":\"134764f6\",\"chunk-e128ac7e\":\"134764f6\",\"chunk-e6812f4e\":\"6a77fed0\",\"chunk-ec1a22fc\":\"6a77fed0\",\"chunk-f048eb20\":\"d8484d04\",\"chunk-f1f3b262\":\"82388064\",\"chunk-f50cdf0a\":\"64f559a2\",\"chunk-6d265405\":\"0c0ee471\",\"chunk-767a8079\":\"0c0ee471\",\"chunk-aa7c6fcc\":\"5d29618c\",\"chunk-cd97fc94\":\"81579093\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([1,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import axios from 'axios'\r\nimport {EIMZO_API_KEY, EIMZO_HOST, EIMZO_URL} from '@/settings/index'\r\n\r\nclass CertificateCertkey {\r\n get type() {\r\n return this._type;\r\n }\r\n\r\n get disk() {\r\n return this._disk;\r\n }\r\n\r\n get path() {\r\n return this._path;\r\n }\r\n\r\n get name() {\r\n return this._name;\r\n }\r\n\r\n get serialNumber() {\r\n return this._serialNumber;\r\n }\r\n\r\n get validFromDate() {\r\n return this._validFromDate;\r\n }\r\n\r\n get validEndDate() {\r\n return this._validEndDate;\r\n }\r\n\r\n get innNumber() {\r\n return this._innNumber;\r\n }\r\n\r\n get companyName() {\r\n return this._companyName;\r\n }\r\n\r\n get issuedPerson() {\r\n return this._issuedPerson;\r\n }\r\n\r\n get alias() {\r\n return this._alias;\r\n }\r\n\r\n constructor(eimzoCertificateObject) {\r\n const subjectSeparatedValues = eimzoCertificateObject.subjectName.split(',');\r\n let innNumber = this._getValueFromSeparatedValuesArray(subjectSeparatedValues, 'INITIALS', null);\r\n if (innNumber === null) {\r\n innNumber = this._getValueFromSeparatedValuesArray(subjectSeparatedValues, 'INN', null);\r\n if (innNumber === null)\r\n innNumber = this._getValueFromSeparatedValuesArray(subjectSeparatedValues, 'UID', '');\r\n }\r\n\r\n this._type = 'cer';\r\n this._disk = eimzoCertificateObject.disk;\r\n this._path = eimzoCertificateObject.path;\r\n this._name = eimzoCertificateObject.name;\r\n this._serialNumber = eimzoCertificateObject.serialNumber;\r\n this._validFromDate = new Date(eimzoCertificateObject.validFrom);\r\n this._validEndDate = new Date(eimzoCertificateObject.validTo);\r\n this._innNumber = innNumber;\r\n this._companyName = this._getValueFromSeparatedValuesArray(subjectSeparatedValues, 'O', '');\r\n this._issuedPerson = this._getValueFromSeparatedValuesArray(subjectSeparatedValues, 'CN', '');\r\n this._alias = null;\r\n }\r\n\r\n _getValueFromSeparatedValuesArray(values, key, defaultValue) {\r\n const keyInUpperCase = `${key.toUpperCase()}=`;\r\n\r\n for (let i = 0; i < values.length; i++) {\r\n const value = values[i];\r\n if (value.length >= keyInUpperCase.length)\r\n if (value.substr(0, keyInUpperCase.length).toUpperCase() === keyInUpperCase)\r\n return value.substr(keyInUpperCase.length);\r\n }\r\n\r\n if (typeof (defaultValue) === 'undefined')\r\n defaultValue = null;\r\n\r\n return defaultValue;\r\n }\r\n}\r\n\r\nclass CertificatePfx {\r\n get type() {\r\n return this._type;\r\n }\r\n\r\n get disk() {\r\n return this._disk;\r\n }\r\n\r\n get path() {\r\n return this._path;\r\n }\r\n\r\n get name() {\r\n return this._name;\r\n }\r\n\r\n get serialNumber() {\r\n return this._serialNumber;\r\n }\r\n\r\n get validFromDate() {\r\n return this._validFromDate;\r\n }\r\n\r\n get validEndDate() {\r\n return this._validEndDate;\r\n }\r\n\r\n get innNumber() {\r\n return this._innNumber;\r\n }\r\n\r\n get companyName() {\r\n return this._companyName;\r\n }\r\n\r\n get issuedPerson() {\r\n return this._issuedPerson;\r\n }\r\n\r\n get alias() {\r\n return this._alias;\r\n }\r\n\r\n constructor(eimzoCertificateObject) {\r\n const aliasValues = eimzoCertificateObject.alias.split(',');\r\n let innNumber = this._getValueFromSeparatedValuesArray(aliasValues, '1.2.860.3.16.1.1', null);\r\n if (innNumber === null) {\r\n innNumber = this._getValueFromSeparatedValuesArray(aliasValues, 'INN', null);\r\n if (innNumber === null)\r\n innNumber = this._getValueFromSeparatedValuesArray(aliasValues, 'UID', '');\r\n }\r\n\r\n const todaysLastMoment = new Date();\r\n todaysLastMoment.setHours(23);\r\n todaysLastMoment.setMinutes(59);\r\n todaysLastMoment.setSeconds(59);\r\n todaysLastMoment.setMilliseconds(999);\r\n\r\n let validFrom = this._getValueFromSeparatedValuesArray(aliasValues, 'validfrom', null);\r\n if (validFrom === null || validFrom === undefined)\r\n validFrom = todaysLastMoment;\r\n else\r\n validFrom = new Date(validFrom.split('.').join('-'));\r\n\r\n let validTo = this._getValueFromSeparatedValuesArray(aliasValues, 'validto', null);\r\n if (validTo === null || validTo === undefined)\r\n validTo = todaysLastMoment;\r\n else\r\n validTo = new Date(validTo.split('.').join('-'));\r\n\r\n this._type = 'pfx';\r\n this._disk = eimzoCertificateObject.disk;\r\n this._path = eimzoCertificateObject.path;\r\n this._name = eimzoCertificateObject.name;\r\n this._serialNumber = this._getValueFromSeparatedValuesArray(aliasValues, 'serialnumber', '');\r\n this._validFromDate = new Date(validFrom);\r\n this._validEndDate = new Date(validTo);\r\n this._innNumber = innNumber;\r\n this._companyName = this._getValueFromSeparatedValuesArray(aliasValues, 'o', '');\r\n this._issuedPerson = this._getValueFromSeparatedValuesArray(aliasValues, 'cn', '');\r\n this._alias = eimzoCertificateObject.alias;\r\n }\r\n\r\n _getValueFromSeparatedValuesArray(values, key, defaultValue) {\r\n const keyInUpperCase = `${key.toUpperCase()}=`;\r\n\r\n for (let i = 0; i < values.length; i++) {\r\n const value = values[i];\r\n if (value.length >= keyInUpperCase.length)\r\n if (value.substr(0, keyInUpperCase.length).toUpperCase() === keyInUpperCase)\r\n return value.substr(keyInUpperCase.length);\r\n }\r\n\r\n if (typeof (defaultValue) === 'undefined')\r\n defaultValue = null;\r\n\r\n return defaultValue;\r\n }\r\n}\r\n\r\nclass ActiveCertificate {\r\n constructor(certificate, keyId, activateTime) {\r\n this._certificate = certificate;\r\n this._activateTime = activateTime;\r\n this._keyId = keyId;\r\n }\r\n\r\n get certificate() {\r\n return this._certificate;\r\n }\r\n\r\n get activateTime() {\r\n return this._activateTime;\r\n }\r\n\r\n get keyId() {\r\n return this._keyId;\r\n }\r\n}\r\n\r\nclass SignResult {\r\n constructor(pkcs7, signatureHex, serialNumber) {\r\n this._pkcs7 = pkcs7;\r\n this._signatureHex = signatureHex;\r\n this._serialNumber = serialNumber;\r\n }\r\n\r\n get pkcs7() {\r\n return this._pkcs7;\r\n }\r\n\r\n get signatureHex() {\r\n return this._signatureHex;\r\n }\r\n\r\n get serialNumber() {\r\n return this._serialNumber;\r\n }\r\n}\r\n\r\nclass AttachTimestampResult {\r\n constructor(pkcs7, signerSeriaNumber) {\r\n this._pkcs7 = pkcs7;\r\n this._signerSeriaNumber = signerSeriaNumber;\r\n }\r\n\r\n get pkcs7() {\r\n return this._pkcs7;\r\n }\r\n\r\n get signerSeriaNumber() {\r\n return this._signerSeriaNumber;\r\n }\r\n}\r\n\r\nclass Eimzo {\r\n constructor(url, hostname, apiKey) {\r\n this.settings = {\r\n _url: url,\r\n _hostname: hostname,\r\n _apiKey: apiKey\r\n };\r\n\r\n let fromCharCode = String.fromCharCode;\r\n let cb_utob = function (c) {\r\n if (c.length < 2) {\r\n let cc = c.charCodeAt(0);\r\n return cc < 0x80 ? c\r\n : cc < 0x800 ? (fromCharCode(0xc0 | (cc >>> 6))\r\n + fromCharCode(0x80 | (cc & 0x3f)))\r\n : (fromCharCode(0xe0 | ((cc >>> 12) & 0x0f))\r\n + fromCharCode(0x80 | ((cc >>> 6) & 0x3f))\r\n + fromCharCode(0x80 | (cc & 0x3f)));\r\n } else {\r\n let cc = 0x10000\r\n + (c.charCodeAt(0) - 0xD800) * 0x400\r\n + (c.charCodeAt(1) - 0xDC00);\r\n return (fromCharCode(0xf0 | ((cc >>> 18) & 0x07))\r\n + fromCharCode(0x80 | ((cc >>> 12) & 0x3f))\r\n + fromCharCode(0x80 | ((cc >>> 6) & 0x3f))\r\n + fromCharCode(0x80 | (cc & 0x3f)));\r\n }\r\n };\r\n let re_utob = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFFF]|[^\\x00-\\x7F]/g;\r\n let utob = function (u) {\r\n return u.replace(re_utob, cb_utob);\r\n };\r\n let _encode = function (u) {\r\n return btoa(utob(u))\r\n };\r\n let base64 = {\r\n encode: function (u, urisafe) {\r\n return !urisafe\r\n ? _encode(u)\r\n : _encode(u).replace(/[+\\/]/g, function (m0) {\r\n return m0 === '+' ? '-' : '_';\r\n }).replace(/=/g, '');\r\n }\r\n }\r\n\r\n this._helpers = {\r\n base64: base64\r\n /*base64: {\r\n _keyStr: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=',\r\n encode: function (e) {\r\n let t = '';\r\n let n, r, i, s, o, u, a;\r\n let f = 0;\r\n e = this._utf8_encode(e);\r\n while (f < e.length) {\r\n n = e.charCodeAt(f++);\r\n r = e.charCodeAt(f++);\r\n i = e.charCodeAt(f++);\r\n s = n >> 2;\r\n o = (n & 3) << 4 | r >> 4;\r\n u = (r & 15) << 2 | i >> 6;\r\n a = i & 63;\r\n if (isNaN(r)) {\r\n u = a = 64;\r\n } else if (isNaN(i)) {\r\n a = 64;\r\n }\r\n t = t +\r\n this._keyStr.charAt(s) +\r\n this._keyStr.charAt(o) +\r\n this._keyStr.charAt(u) +\r\n this._keyStr.charAt(a);\r\n }\r\n return t;\r\n },\r\n _utf8_encode: function (e) {\r\n e = e.replace(/rn/g, 'n');\r\n let t = '';\r\n for (let n = 0; n < e.length; n++) {\r\n const r = e.charCodeAt(n);\r\n if (r < 128) {\r\n t += String.fromCharCode(r);\r\n } else if (r > 127 && r < 2048) {\r\n t += String.fromCharCode(r >> 6 | 192);\r\n t += String.fromCharCode(r & 63 | 128);\r\n } else {\r\n t += String.fromCharCode(r >> 12 | 224);\r\n t += String.fromCharCode(r >> 6 & 63 | 128);\r\n t += String.fromCharCode(r & 63 | 128);\r\n }\r\n }\r\n return t;\r\n }\r\n }*/\r\n };\r\n\r\n this._isWebSocketEnabled = !!window.WebSocket;\r\n this._isInitialized = false;\r\n\r\n this._certificates = [];\r\n this._activeCertificates = [];\r\n\r\n const self = this;\r\n self._init()\r\n .then(() => {\r\n if (self._isInitialized)\r\n self._loadCertificates();\r\n }, () => {\r\n });\r\n }\r\n\r\n get certificates() {\r\n return this._certificates;\r\n }\r\n\r\n get activeCertificates() {\r\n return this._activeCertificates;\r\n }\r\n\r\n activateCertificate(certificate) {\r\n let self = this;\r\n\r\n return new Promise((resolve, reject) => {\r\n const data = {\r\n plugin: certificate.type === 'pfx' ? 'pfx' : 'certkey',\r\n name: 'load_key',\r\n arguments: [\r\n certificate.disk,\r\n certificate.path,\r\n certificate.name,\r\n (certificate.type === 'pfx' ? certificate.alias : certificate.serialNumber)\r\n ]\r\n };\r\n self._makeRequest(data)\r\n .then((loadKeyResponse) => {\r\n let activatedCertificate = null;\r\n if (loadKeyResponse.success) {\r\n activatedCertificate = new ActiveCertificate(certificate, loadKeyResponse.keyId, new Date());\r\n this._activeCertificates.push(activatedCertificate);\r\n resolve(activatedCertificate);\r\n } else {\r\n reject();\r\n }\r\n }, reject);\r\n });\r\n }\r\n\r\n createPkcs7(hashCode, activeCertificate) {\r\n const self = this;\r\n const hashCodeBase64 = self._helpers.base64.encode(hashCode);\r\n\r\n return new Promise((resolve, reject) => {\r\n const data = {\r\n plugin: \"pkcs7\",\r\n name: \"create_pkcs7\",\r\n arguments: [\r\n hashCodeBase64,\r\n activeCertificate.keyId,\r\n \"no\"\r\n ]\r\n };\r\n\r\n self._makeRequest(data)\r\n .then((createPkcs7Response) => {\r\n if (createPkcs7Response.success) {\r\n const signResult = new SignResult(createPkcs7Response.pkcs7_64\r\n , createPkcs7Response.signature_hex\r\n , createPkcs7Response.signer_serial_number\r\n );\r\n resolve(signResult);\r\n } else {\r\n reject();\r\n }\r\n }, reject);\r\n });\r\n }\r\n\r\n attachPkcs7(pkcs7, activeCertificate) {\r\n const self = this;\r\n\r\n return new Promise((resolve, reject) => {\r\n const data = {\r\n plugin: \"pkcs7\",\r\n name: \"append_pkcs7_attached\",\r\n arguments: [\r\n pkcs7,\r\n activeCertificate.keyId\r\n ]\r\n };\r\n\r\n self._makeRequest(data)\r\n .then((attackPkcs7Response) => {\r\n if (attackPkcs7Response.success) {\r\n const signResult = new SignResult(attackPkcs7Response.pkcs7_64\r\n , attackPkcs7Response.signature_hex\r\n , attackPkcs7Response.signer_serial_number\r\n );\r\n resolve(signResult);\r\n } else {\r\n reject();\r\n }\r\n }, reject);\r\n });\r\n }\r\n\r\n attachTimestamp(pkcs7, activeCertificate, timestamp) {\r\n const self = this;\r\n\r\n return new Promise((resolve, reject) => {\r\n const data = {\r\n plugin: \"pkcs7\",\r\n name: \"attach_timestamp_token_pkcs7\",\r\n arguments: [\r\n pkcs7,\r\n activeCertificate.certificate.serialNumber,\r\n timestamp\r\n ]\r\n };\r\n\r\n self._makeRequest(data)\r\n .then((attachTimeStampResponse) => {\r\n if (attachTimeStampResponse.success) {\r\n const attachTimestampResult = new AttachTimestampResult(attachTimeStampResponse.pkcs7_64, activeCertificate.certificate.serialNumber);\r\n resolve(attachTimestampResult);\r\n } else {\r\n reject();\r\n }\r\n }, reject);\r\n });\r\n }\r\n\r\n sign(fakturaHashCode, roamingHashCode, activatedCertificate, getTimestampFn) {\r\n const eimzo = this;\r\n return new Promise((resolve, reject) => {\r\n eimzo.createPkcs7(fakturaHashCode, activatedCertificate)\r\n .then(signResult => {\r\n eimzo.createPkcs7(roamingHashCode, activatedCertificate)\r\n .then(roamingCreatePkcs7SignResult => {\r\n getTimestampFn(roamingCreatePkcs7SignResult.signatureHex)\r\n .then(timestamp => {\r\n eimzo.attachTimestamp(roamingCreatePkcs7SignResult.pkcs7, activatedCertificate, timestamp)\r\n .then(attachTimestampResult => {\r\n resolve([signResult, attachTimestampResult]);\r\n }, reject);\r\n }, reject);\r\n }, reject);\r\n }, reject);\r\n });\r\n }\r\n\r\n attachTimestampFromServer(signature) {\r\n return axios.post('https://app.hippo.uz/eimzo/pkcs7/attach-timestamp', {signature: signature});\r\n }\r\n\r\n signByAttach(fakturaHashCode, roamingHashCode, activatedCertificate, getTimestampFn) {\r\n const eimzo = this;\r\n return new Promise((resolve, reject) => {\r\n eimzo.createPkcs7(fakturaHashCode, activatedCertificate)\r\n .then(signResult => {\r\n eimzo.attachPkcs7(roamingHashCode, activatedCertificate)\r\n .then(roamingCreatePkcs7SignResult => {\r\n eimzo.attachTimestampFromServer(roamingCreatePkcs7SignResult.pkcs7)\r\n .then(({data: {pkcs7b64: roamingSignature, status: status}}) => {\r\n if (status === 1) {\r\n resolve([signResult, {\r\n pkcs7: roamingSignature,\r\n signerSeriaNumber: roamingCreatePkcs7SignResult.serialNumber\r\n }]);\r\n } else {\r\n reject();\r\n }\r\n }, reject)\r\n }, reject);\r\n }, reject);\r\n })\r\n }\r\n\r\n _init() {\r\n var self = this;\r\n return new Promise((resolve, reject) => {\r\n var data = {\r\n name: 'apikey',\r\n arguments: [self.settings._hostname, self.settings._apiKey]\r\n };\r\n self._makeRequest(data).then((response) => {\r\n self._isInitialized = response.success;\r\n resolve();\r\n }, () => {\r\n reject();\r\n });\r\n });\r\n }\r\n\r\n _loadDisks() {\r\n var self = this;\r\n return new Promise((resolve, reject) => {\r\n self._makeRequest({plugin: \"pfx\", name: \"list_disks\"})\r\n .then((response) => {\r\n resolve(response);\r\n }, reject);\r\n });\r\n }\r\n\r\n _loadCertificates() {\r\n var self = this;\r\n return new Promise((resolve, reject) => {\r\n self._certificates = [];\r\n var promises = [];\r\n\r\n self._loadDisks()\r\n .then((response) => {\r\n if (response.success) {\r\n for (var diskIndex = 0; diskIndex < response.disks.length; diskIndex++) {\r\n // pfx\r\n var loadDiskPfxCertificatesPromise = self._makeRequest({\r\n plugin: \"pfx\",\r\n name: \"list_certificates\",\r\n arguments: [response.disks[diskIndex]]\r\n });\r\n\r\n promises.push(loadDiskPfxCertificatesPromise);\r\n\r\n loadDiskPfxCertificatesPromise.then((loadPfxCertificatesResponse) => {\r\n for (var pfxCerficiateIndex = 0;\r\n pfxCerficiateIndex < loadPfxCertificatesResponse.certificates.length;\r\n pfxCerficiateIndex++) {\r\n var pfxCertificate = new CertificatePfx(loadPfxCertificatesResponse.certificates[pfxCerficiateIndex]);\r\n\r\n self._certificates.push(pfxCertificate);\r\n }\r\n });\r\n\r\n\r\n // certkey\r\n var loadDiskCertkeyCertificatesPromise = self._makeRequest({\r\n plugin: \"certkey\",\r\n name: \"list_certificates\",\r\n arguments: [response.disks[diskIndex]]\r\n });\r\n\r\n promises.push(loadDiskCertkeyCertificatesPromise);\r\n\r\n loadDiskCertkeyCertificatesPromise.then((loadCertkeyCertificatesResponse) => {\r\n for (var pfxCerficiateIndex = 0;\r\n pfxCerficiateIndex < loadCertkeyCertificatesResponse.certificates.length;\r\n pfxCerficiateIndex++) {\r\n var certKeyCertificate = new CertificateCertkey(loadCertkeyCertificatesResponse.certificates[pfxCerficiateIndex]);\r\n\r\n self._certificates.push(certKeyCertificate);\r\n }\r\n });\r\n }\r\n }\r\n\r\n Promise.all(promises).then(resolve, reject);\r\n }, reject);\r\n });\r\n }\r\n\r\n _makeRequest(data) {\r\n const self = this;\r\n return new Promise((resolve, reject) => {\r\n let socket;\r\n try {\r\n socket = new WebSocket(self.settings._url);\r\n socket.onopen = () => {\r\n socket.send(JSON.stringify(data));\r\n };\r\n socket.onmessage = (event) => {\r\n socket.close();\r\n let response = JSON.parse(event.data);\r\n resolve(response);\r\n };\r\n socket.onerror = () => {\r\n socket.close();\r\n reject();\r\n };\r\n } catch (e) {\r\n reject();\r\n }\r\n });\r\n }\r\n}\r\n\r\nexport default new Eimzo(EIMZO_URL, EIMZO_HOST, EIMZO_API_KEY);","export default class {\r\n _id;\r\n _name;\r\n\r\n get id() {\r\n return this._id;\r\n }\r\n\r\n set id(value) {\r\n this._id = value;\r\n }\r\n\r\n get name() {\r\n return this._name;\r\n }\r\n\r\n set name(value) {\r\n this._name = value;\r\n }\r\n\r\n constructor(id, name) {\r\n this._id = id;\r\n this._name = name;\r\n }\r\n}","import OrderExecutorCreateInvoiceStrategy from '@/domain/OrderExecutorCreateInvoiceStrategy'\r\n\r\nexport const AfterConfirmByCustomer = new OrderExecutorCreateInvoiceStrategy(0, 'После подтверждения приёма поставки')\r\nexport const OnShipmentWaybillCreation = new OrderExecutorCreateInvoiceStrategy(1, 'Одновременно с надкладной')","export const APP_LOAD_NEW_SEND_CONTRACT_APPROVES = 'APP_LOAD_NEW_SEND_CONTRACT_APPROVES'\r\nexport const APP_SEND_CONTRACT_APPROVE_ALERT_CLOSE = 'APP_SEND_CONTRACT_APPROVE_ALERT_CLOSE'\r\nexport const APP_LOAD_USE_BRANCHES = 'APP_LOAD_USE_BRANCHES'","export default {\r\n /**\r\n * Корректировка округления десятичных дробей.\r\n *\r\n * @param {String} type Тип корректировки.\r\n * @param {Number} value Число.\r\n * @param {Integer} exp Показатель степени (десятичный логарифм основания корректировки).\r\n * @returns {Number} Скорректированное значение.\r\n */\r\n decimalAdjust(mathFunction , value, exp) {\r\n // Если степень не определена, либо равна нулю...\r\n if (typeof exp === 'undefined' || +exp === 0) {\r\n return mathFunction(value);\r\n }\r\n value = +value;\r\n exp = +exp;\r\n // Если значение не является числом, либо степень не является целым числом...\r\n if (isNaN(value) || !(typeof exp === 'number' && exp % 1 === 0)) {\r\n return NaN;\r\n }\r\n // Сдвиг разрядов\r\n value = value.toString().split('e');\r\n value = mathFunction(+(value[0] + 'e' + (value[1] ? (+value[1] - exp) : -exp)));\r\n // Обратный сдвиг\r\n value = value.toString().split('e');\r\n return +(value[0] + 'e' + (value[1] ? (+value[1] + exp) : exp));\r\n },\r\n\r\n round(value, exp) {\r\n let isMinus = value < 0;\r\n value = Math.abs(value)\r\n\r\n value = this.decimalAdjust(Math.round, value, exp);\r\n if (isMinus)\r\n value = value * -1\r\n\r\n return value\r\n },\r\n\r\n floor(value, exp) {\r\n return this.decimalAdjust(Math.floor, value, exp);\r\n },\r\n\r\n ceil(value, exp) {\r\n return this.decimalAdjust(Math.ceil, value, exp);\r\n }\r\n}","export default {\r\n multiply(a, b) {\r\n a = a ? +a : 0;\r\n b = b ? +b : 0;\r\n\r\n let aStr = a.toString().replace(\",\", \".\");\r\n let aDotIndex = aStr.indexOf(\".\");\r\n let aExp = 1;\r\n if (aDotIndex > -1) {\r\n let afterDotDigitsCount = aStr.substr(aDotIndex + 1).length;\r\n for (let i = 0; i -1) {\r\n let afterDotDigitsCount = bStr.substr(bDotIndex + 1).length;\r\n for (let i = 0; i < afterDotDigitsCount; i++)\r\n bExp *= 10;\r\n }\r\n\r\n a = parseInt(aStr.replace(\".\", ''));\r\n b = parseInt(bStr.replace('.', ''));\r\n\r\n // let result = ((a * aExp) * (b * bExp)) / (aExp * bExp);\r\n let result = (a * b) / (aExp * bExp);\r\n\r\n if (typeof (result) === \"number\")\r\n return +result;\r\n return 0;\r\n },\r\n}\r\n","var map = {\n\t\"./af\": \"2bfb\",\n\t\"./af.js\": \"2bfb\",\n\t\"./ar\": \"8e73\",\n\t\"./ar-dz\": \"a356\",\n\t\"./ar-dz.js\": \"a356\",\n\t\"./ar-kw\": \"423e\",\n\t\"./ar-kw.js\": \"423e\",\n\t\"./ar-ly\": \"1cfd\",\n\t\"./ar-ly.js\": \"1cfd\",\n\t\"./ar-ma\": \"0a84\",\n\t\"./ar-ma.js\": \"0a84\",\n\t\"./ar-sa\": \"8230\",\n\t\"./ar-sa.js\": \"8230\",\n\t\"./ar-tn\": \"6d83\",\n\t\"./ar-tn.js\": \"6d83\",\n\t\"./ar.js\": \"8e73\",\n\t\"./az\": \"485c\",\n\t\"./az.js\": \"485c\",\n\t\"./be\": \"1fc1\",\n\t\"./be.js\": \"1fc1\",\n\t\"./bg\": \"84aa\",\n\t\"./bg.js\": \"84aa\",\n\t\"./bm\": \"a7fa\",\n\t\"./bm.js\": \"a7fa\",\n\t\"./bn\": \"9043\",\n\t\"./bn.js\": \"9043\",\n\t\"./bo\": \"d26a\",\n\t\"./bo.js\": \"d26a\",\n\t\"./br\": \"6887\",\n\t\"./br.js\": \"6887\",\n\t\"./bs\": \"2554\",\n\t\"./bs.js\": \"2554\",\n\t\"./ca\": \"d716\",\n\t\"./ca.js\": \"d716\",\n\t\"./cs\": \"3c0d\",\n\t\"./cs.js\": \"3c0d\",\n\t\"./cv\": \"03ec\",\n\t\"./cv.js\": \"03ec\",\n\t\"./cy\": \"9797\",\n\t\"./cy.js\": \"9797\",\n\t\"./da\": \"0f14\",\n\t\"./da.js\": \"0f14\",\n\t\"./de\": \"b469\",\n\t\"./de-at\": \"b3eb\",\n\t\"./de-at.js\": \"b3eb\",\n\t\"./de-ch\": \"bb71\",\n\t\"./de-ch.js\": \"bb71\",\n\t\"./de.js\": \"b469\",\n\t\"./dv\": \"598a\",\n\t\"./dv.js\": \"598a\",\n\t\"./el\": \"8d47\",\n\t\"./el.js\": \"8d47\",\n\t\"./en-SG\": \"cdab\",\n\t\"./en-SG.js\": \"cdab\",\n\t\"./en-au\": \"0e6b\",\n\t\"./en-au.js\": \"0e6b\",\n\t\"./en-ca\": \"3886\",\n\t\"./en-ca.js\": \"3886\",\n\t\"./en-gb\": \"39a6\",\n\t\"./en-gb.js\": \"39a6\",\n\t\"./en-ie\": \"e1d3\",\n\t\"./en-ie.js\": \"e1d3\",\n\t\"./en-il\": \"7333\",\n\t\"./en-il.js\": \"7333\",\n\t\"./en-nz\": \"6f50\",\n\t\"./en-nz.js\": \"6f50\",\n\t\"./eo\": \"65db\",\n\t\"./eo.js\": \"65db\",\n\t\"./es\": \"898b\",\n\t\"./es-do\": \"0a3c\",\n\t\"./es-do.js\": \"0a3c\",\n\t\"./es-us\": \"55c9\",\n\t\"./es-us.js\": \"55c9\",\n\t\"./es.js\": \"898b\",\n\t\"./et\": \"ec18\",\n\t\"./et.js\": \"ec18\",\n\t\"./eu\": \"0ff2\",\n\t\"./eu.js\": \"0ff2\",\n\t\"./fa\": \"8df4\",\n\t\"./fa.js\": \"8df4\",\n\t\"./fi\": \"81e9\",\n\t\"./fi.js\": \"81e9\",\n\t\"./fo\": \"0721\",\n\t\"./fo.js\": \"0721\",\n\t\"./fr\": \"9f26\",\n\t\"./fr-ca\": \"d9f8\",\n\t\"./fr-ca.js\": \"d9f8\",\n\t\"./fr-ch\": \"0e49\",\n\t\"./fr-ch.js\": \"0e49\",\n\t\"./fr.js\": \"9f26\",\n\t\"./fy\": \"7118\",\n\t\"./fy.js\": \"7118\",\n\t\"./ga\": \"5120\",\n\t\"./ga.js\": \"5120\",\n\t\"./gd\": \"f6b4\",\n\t\"./gd.js\": \"f6b4\",\n\t\"./gl\": \"8840\",\n\t\"./gl.js\": \"8840\",\n\t\"./gom-latn\": \"0caa\",\n\t\"./gom-latn.js\": \"0caa\",\n\t\"./gu\": \"e0c5\",\n\t\"./gu.js\": \"e0c5\",\n\t\"./he\": \"c7aa\",\n\t\"./he.js\": \"c7aa\",\n\t\"./hi\": \"dc4d\",\n\t\"./hi.js\": \"dc4d\",\n\t\"./hr\": \"4ba9\",\n\t\"./hr.js\": \"4ba9\",\n\t\"./hu\": \"5b14\",\n\t\"./hu.js\": \"5b14\",\n\t\"./hy-am\": \"d6b6\",\n\t\"./hy-am.js\": \"d6b6\",\n\t\"./id\": \"5038\",\n\t\"./id.js\": \"5038\",\n\t\"./is\": \"0558\",\n\t\"./is.js\": \"0558\",\n\t\"./it\": \"6e98\",\n\t\"./it-ch\": \"6f12\",\n\t\"./it-ch.js\": \"6f12\",\n\t\"./it.js\": \"6e98\",\n\t\"./ja\": \"079e\",\n\t\"./ja.js\": \"079e\",\n\t\"./jv\": \"b540\",\n\t\"./jv.js\": \"b540\",\n\t\"./ka\": \"201b\",\n\t\"./ka.js\": \"201b\",\n\t\"./kk\": \"6d79\",\n\t\"./kk.js\": \"6d79\",\n\t\"./km\": \"e81d\",\n\t\"./km.js\": \"e81d\",\n\t\"./kn\": \"3e92\",\n\t\"./kn.js\": \"3e92\",\n\t\"./ko\": \"22f8\",\n\t\"./ko.js\": \"22f8\",\n\t\"./ku\": \"2421\",\n\t\"./ku.js\": \"2421\",\n\t\"./ky\": \"9609\",\n\t\"./ky.js\": \"9609\",\n\t\"./lb\": \"440c\",\n\t\"./lb.js\": \"440c\",\n\t\"./lo\": \"b29d\",\n\t\"./lo.js\": \"b29d\",\n\t\"./lt\": \"26f9\",\n\t\"./lt.js\": \"26f9\",\n\t\"./lv\": \"b97c\",\n\t\"./lv.js\": \"b97c\",\n\t\"./me\": \"293c\",\n\t\"./me.js\": \"293c\",\n\t\"./mi\": \"688b\",\n\t\"./mi.js\": \"688b\",\n\t\"./mk\": \"6909\",\n\t\"./mk.js\": \"6909\",\n\t\"./ml\": \"02fb\",\n\t\"./ml.js\": \"02fb\",\n\t\"./mn\": \"958b\",\n\t\"./mn.js\": \"958b\",\n\t\"./mr\": \"39bd\",\n\t\"./mr.js\": \"39bd\",\n\t\"./ms\": \"ebe4\",\n\t\"./ms-my\": \"6403\",\n\t\"./ms-my.js\": \"6403\",\n\t\"./ms.js\": \"ebe4\",\n\t\"./mt\": \"1b45\",\n\t\"./mt.js\": \"1b45\",\n\t\"./my\": \"8689\",\n\t\"./my.js\": \"8689\",\n\t\"./nb\": \"6ce3\",\n\t\"./nb.js\": \"6ce3\",\n\t\"./ne\": \"3a39\",\n\t\"./ne.js\": \"3a39\",\n\t\"./nl\": \"facd\",\n\t\"./nl-be\": \"db29\",\n\t\"./nl-be.js\": \"db29\",\n\t\"./nl.js\": \"facd\",\n\t\"./nn\": \"b84c\",\n\t\"./nn.js\": \"b84c\",\n\t\"./pa-in\": \"f3ff\",\n\t\"./pa-in.js\": \"f3ff\",\n\t\"./pl\": \"8d57\",\n\t\"./pl.js\": \"8d57\",\n\t\"./pt\": \"f260\",\n\t\"./pt-br\": \"d2d4\",\n\t\"./pt-br.js\": \"d2d4\",\n\t\"./pt.js\": \"f260\",\n\t\"./ro\": \"972c\",\n\t\"./ro.js\": \"972c\",\n\t\"./ru\": \"957c\",\n\t\"./ru.js\": \"957c\",\n\t\"./sd\": \"6784\",\n\t\"./sd.js\": \"6784\",\n\t\"./se\": \"ffff\",\n\t\"./se.js\": \"ffff\",\n\t\"./si\": \"eda5\",\n\t\"./si.js\": \"eda5\",\n\t\"./sk\": \"7be6\",\n\t\"./sk.js\": \"7be6\",\n\t\"./sl\": \"8155\",\n\t\"./sl.js\": \"8155\",\n\t\"./sq\": \"c8f3\",\n\t\"./sq.js\": \"c8f3\",\n\t\"./sr\": \"cf1e\",\n\t\"./sr-cyrl\": \"13e9\",\n\t\"./sr-cyrl.js\": \"13e9\",\n\t\"./sr.js\": \"cf1e\",\n\t\"./ss\": \"52bd\",\n\t\"./ss.js\": \"52bd\",\n\t\"./sv\": \"5fbd\",\n\t\"./sv.js\": \"5fbd\",\n\t\"./sw\": \"74dc\",\n\t\"./sw.js\": \"74dc\",\n\t\"./ta\": \"3de5\",\n\t\"./ta.js\": \"3de5\",\n\t\"./te\": \"5cbb\",\n\t\"./te.js\": \"5cbb\",\n\t\"./tet\": \"576c\",\n\t\"./tet.js\": \"576c\",\n\t\"./tg\": \"3b1b\",\n\t\"./tg.js\": \"3b1b\",\n\t\"./th\": \"10e8\",\n\t\"./th.js\": \"10e8\",\n\t\"./tl-ph\": \"0f38\",\n\t\"./tl-ph.js\": \"0f38\",\n\t\"./tlh\": \"cf75\",\n\t\"./tlh.js\": \"cf75\",\n\t\"./tr\": \"0e81\",\n\t\"./tr.js\": \"0e81\",\n\t\"./tzl\": \"cf51\",\n\t\"./tzl.js\": \"cf51\",\n\t\"./tzm\": \"c109\",\n\t\"./tzm-latn\": \"b53d\",\n\t\"./tzm-latn.js\": \"b53d\",\n\t\"./tzm.js\": \"c109\",\n\t\"./ug-cn\": \"6117\",\n\t\"./ug-cn.js\": \"6117\",\n\t\"./uk\": \"ada2\",\n\t\"./uk.js\": \"ada2\",\n\t\"./ur\": \"5294\",\n\t\"./ur.js\": \"5294\",\n\t\"./uz\": \"2e8c\",\n\t\"./uz-latn\": \"010e\",\n\t\"./uz-latn.js\": \"010e\",\n\t\"./uz.js\": \"2e8c\",\n\t\"./vi\": \"2921\",\n\t\"./vi.js\": \"2921\",\n\t\"./x-pseudo\": \"fd7e\",\n\t\"./x-pseudo.js\": \"fd7e\",\n\t\"./yo\": \"7f33\",\n\t\"./yo.js\": \"7f33\",\n\t\"./zh-cn\": \"5c3a\",\n\t\"./zh-cn.js\": \"5c3a\",\n\t\"./zh-hk\": \"49ab\",\n\t\"./zh-hk.js\": \"49ab\",\n\t\"./zh-tw\": \"90ea\",\n\t\"./zh-tw.js\": \"90ea\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"4678\";","import axios from 'axios'\r\nimport {APIHOST} from \"@/settings\";\r\nimport SessionStorage from \"sessionstorage\";\r\n\r\nclass CompanyService {\r\n search({query, limit, soliq}) {\r\n return axios.get(`${APIHOST}/api/Company`, {\r\n params: {\r\n search: (typeof (query) === \"undefined\" || query === null) ? \"\" : query,\r\n limit: typeof (limit) === 'number' ? (+limit) : null,\r\n soliq: typeof (soliq) === 'boolean' ? soliq : null\r\n }\r\n })\r\n }\r\n\r\n getSoliqDetails(inn) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/SoliqCompany/${inn}`, {\r\n headers: {'Authorization': `Bearer ${oAuthAccess.access_token}`}\r\n });\r\n }\r\n\r\n getVatCode(inn) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'))\r\n\r\n return axios.get(`${APIHOST}/api/CompanyVatCode`, {\r\n headers: {'Authorization': `Bearer ${oAuthAccess.access_token}`},\r\n params: {id: inn}\r\n })\r\n }\r\n\r\n getProductCatalogs(inn) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'))\r\n\r\n return axios.get(`${APIHOST}/api/CompanyProductCatalog`, {\r\n headers: {'Authorization': `Bearer ${oAuthAccess.access_token}`},\r\n params: {id: inn}\r\n })\r\n }\r\n getCompanyCatalogCodesInfo() {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'))\r\n \r\n return axios.get(`${APIHOST}/api/CompanyCatalogCodesInfo`, {\r\n headers: {'Authorization': `Bearer ${oAuthAccess.access_token}`},\r\n })\r\n }\r\n\r\n getBillingInfo() {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/CompanyBilling`, {\r\n headers: {'Authorization': `Bearer ${oAuthAccess.access_token}`}\r\n });\r\n }\r\n\r\n getLgota() {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/Lgota`, {\r\n headers: {'Authorization': `Bearer ${oAuthAccess.access_token}`}\r\n });\r\n }\r\n getCatalogCodeLgota(code){\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/CatalogCodeLgota`, {\r\n headers: {'Authorization': `Bearer ${oAuthAccess.access_token}`},\r\n params:{\r\n searchText:code\r\n }\r\n }).then(res=>{\r\n return res.data\r\n }).catch(err=>{\r\n throw err\r\n });\r\n }\r\n}\r\n\r\nexport default new CompanyService();\r\n","import axios from 'axios'\r\nimport SessionStorage from \"sessionstorage\";\r\nimport {APIHOST} from \"@/settings\";\r\n\r\nclass SignService {\r\n getTimeStamp(signatureHex) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/SignTimestamp`, {\r\n params: {\r\n id: signatureHex\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n signInvoiceByExecutor(invoiceId, {\r\n fakturaPkcs7,\r\n roamingPkcs7,\r\n certificateSerial\r\n }) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.put(`${APIHOST}/api/SignInvoiceExecutor`, {\r\n FakturaPkcs7: fakturaPkcs7,\r\n RoamingPkcs7: roamingPkcs7,\r\n CertificateSerial: certificateSerial\r\n }, {\r\n params: {\r\n id: invoiceId\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n signInvoiceByCustomer(invoiceId, {\r\n fakturaPkcs7,\r\n roamingPkcs7,\r\n certificateSerial\r\n }) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.put(`${APIHOST}/api/SignInvoiceCustomer`, {\r\n FakturaPkcs7: fakturaPkcs7,\r\n RoamingPkcs7: roamingPkcs7,\r\n CertificateSerial: certificateSerial\r\n }, {\r\n params: {\r\n id: invoiceId\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n getCancelHashCode(invoiceId) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/CancelInvoice`, {\r\n params: {\r\n id: invoiceId\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n cancelInvoice(invoiceId, {\r\n fakturaPkcs7,\r\n roamingPkcs7,\r\n certificateSerial\r\n }) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.put(`${APIHOST}/api/CancelInvoice`, {\r\n FakturaPkcs7: fakturaPkcs7,\r\n RoamingPkcs7: roamingPkcs7,\r\n CertificateSerial: certificateSerial\r\n }, {\r\n params: {\r\n id: invoiceId\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n getFakturaHashCode(fakturaUniqueId) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/Sign`, {\r\n params: {\r\n id: fakturaUniqueId\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n signKorzinkaRoamingDocument({fakturaUniqueId, fakturaPkcs7, roamingPkcs7, certificateSerial, actNumber}) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.put(`${APIHOST}/api/KorzinkaRoamingSign`, {\r\n FakturaPkcs7: fakturaPkcs7,\r\n RoamingPkcs7: roamingPkcs7,\r\n CertificateSerial: certificateSerial,\r\n ActNumber: actNumber\r\n }, {\r\n params: {\r\n id: fakturaUniqueId\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n getAttorneySignProperties(id) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/SignAttorneyProperties/${id}`, {\r\n headers: {'Authorization': `Bearer ${oAuthAccess.access_token}`}\r\n });\r\n }\r\n\r\n signAttorney(attorneyId, {\r\n fakturaPkcs7,\r\n certificateSerial\r\n }) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.put(`${APIHOST}/api/SignAttorney`, {\r\n FakturaPkcs7: fakturaPkcs7,\r\n CertificateSerial: certificateSerial\r\n }, {\r\n params: {\r\n id: attorneyId\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n getReturnInvoiceSignProperties(id) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/SignReturnInvoiceProperties/${id}`, {\r\n headers: {'Authorization': `Bearer ${oAuthAccess.access_token}`}\r\n });\r\n }\r\n\r\n signReturnInvoiceByExecutor(invoiceId, {\r\n fakturaPkcs7,\r\n roamingPkcs7,\r\n certificateSerial\r\n }) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.put(`${APIHOST}/api/SignReturnInvoiceExecutor`, {\r\n FakturaPkcs7: fakturaPkcs7,\r\n RoamingPkcs7: roamingPkcs7,\r\n CertificateSerial: certificateSerial\r\n }, {\r\n params: {\r\n id: invoiceId\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n signReturnInvoiceByCustomer(invoiceId, {\r\n fakturaPkcs7,\r\n roamingPkcs7,\r\n certificateSerial\r\n }) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.put(`${APIHOST}/api/SignReturnInvoiceCustomer`, {\r\n FakturaPkcs7: fakturaPkcs7,\r\n RoamingPkcs7: roamingPkcs7,\r\n CertificateSerial: certificateSerial\r\n }, {\r\n params: {\r\n id: invoiceId\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n getRejectHashCode(documentUniqueId, comment) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/RoamingDecline`, {\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n },\r\n params: {\r\n id: documentUniqueId,\r\n comment: comment\r\n }\r\n });\r\n }\r\n\r\n rejectDocument(documentUniqueId, {\r\n fakturaPkcs7,\r\n roamingPkcs7,\r\n certificateSerial,\r\n comment\r\n }) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.put(`${APIHOST}/api/RoamingDecline`, {\r\n FakturaPkcs7: fakturaPkcs7,\r\n RoamingPkcs7: roamingPkcs7,\r\n CertificateSerial: certificateSerial,\r\n Comment: comment\r\n }, {\r\n params: {\r\n id: documentUniqueId\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n}\r\n\r\nexport default new SignService()","import '@fortawesome/fontawesome-free/css/all.css' // Ensure you are using css-loader\r\nimport Vue from 'vue';\r\nimport Vuetify from 'vuetify/lib';\r\nimport 'vuetify/dist/vuetify.min.css'\r\n\r\nVue.use(Vuetify);\r\n\r\nexport default new Vuetify({\r\n icons: {\r\n iconfont: 'fa',\r\n },\r\n});\r\n","import {AUTH_LOAD_COMPANY_BILLING_INFO, AUTH_LOGGED_IN} from \"@/store/modules/auth/actions\";\r\nimport CompanyService from \"@/services/company.service\";\r\nimport Moment from 'moment'\r\nimport EventBus from '@/eventbus/global.event.bus'\r\nimport {EVENT_AUTH_LOGGED_IN} from \"@/eventbus/events\";\r\nimport {KORZINKA_INN} from \"@/settings\";\r\n\r\nexport default {\r\n state: {\r\n login: null,\r\n billing: {\r\n balance: 0,\r\n creditBalance: 0,\r\n creditLimit: 0,\r\n isCreditActive: false,\r\n isTrialActive: false,\r\n trialPeriodDaysLeft: 0,\r\n trialStart: null,\r\n isLoading: false\r\n }\r\n },\r\n getters: {\r\n login: (state) => {\r\n return state.login;\r\n },\r\n companyInn(state) {\r\n return state.login ? state.login.company.inn : null;\r\n },\r\n billing(state) {\r\n return state.billing\r\n },\r\n isKorzinkaLogin(state) {\r\n return state.login && state.login.company.inn === KORZINKA_INN;\r\n }\r\n },\r\n mutations: {\r\n storeLogin(state, login) {\r\n state.login = login;\r\n },\r\n clearLogin(state) {\r\n state.login = null;\r\n },\r\n setBillingLoading(state, isLoading) {\r\n state.billing.isLoading = isLoading\r\n },\r\n setBilling(state, {balance, creditBalance, creditLimit, isCreditActive, isTrialActive, trialPeriodDaysLeft, trialStart}) {\r\n state.billing.balance = balance\r\n state.billing.creditBalance = creditBalance\r\n state.billing.creditLimit = creditLimit\r\n state.billing.isCreditActive = isCreditActive\r\n state.billing.isTrialActive = isTrialActive\r\n state.billing.trialPeriodDaysLeft = trialPeriodDaysLeft\r\n state.billing.trialStart = trialStart\r\n }\r\n },\r\n actions: {\r\n [AUTH_LOAD_COMPANY_BILLING_INFO]: ({commit}) => {\r\n commit(\"setBillingLoading\", true)\r\n CompanyService.getBillingInfo()\r\n .then(response => {\r\n commit(\"setBilling\", {\r\n balance: response.data.Balance,\r\n creditBalance: response.data.CreditBalance,\r\n creditLimit: response.data.CreditLimit,\r\n isCreditActive: response.data.IsCreditActive,\r\n isTrialActive: response.data.IsTrialActive,\r\n trialPeriodDaysLeft: response.data.TrialPeriodDaysLeft,\r\n trialStart: response.data.TrialStart ? Moment(response.data.TrialStart) : null\r\n })\r\n })\r\n .catch(() => {\r\n\r\n })\r\n .finally(() => {\r\n commit(\"setBillingLoading\", false)\r\n\r\n })\r\n },\r\n [AUTH_LOGGED_IN]: ({commit}, login) => {\r\n commit('storeLogin', login)\r\n EventBus.$emit(EVENT_AUTH_LOGGED_IN)\r\n }\r\n },\r\n\r\n}","import {\r\n SIGN_INVOICE_BY_CUSTOMER,\r\n SIGN_INVOICE_BY_EXECUTOR,\r\n SIGN_RETURN_INVOICE_BY_EXECUTOR\r\n} from \"@/store/modules/sign/actions\";\r\nimport InvoiceServices from '@/services/invoice.service'\r\nimport SignService from \"@/services/sign/sign.service\";\r\nimport EImzo from \"@/plugins/eimzo\";\r\nimport * as SignActionResult from \"@/enum/SignActionResultCode\";\r\nimport EventBus from '@/eventbus/global.event.bus'\r\nimport * as Events from '@/eventbus/events'\r\nimport {LAYOUT_LOADING_START, LAYOUT_LOADING_STOP} from \"@/store/modules/layout/actions\";\r\nimport {AUTH_LOAD_COMPANY_BILLING_INFO} from \"@/store/modules/auth/actions\";\r\n\r\nexport default {\r\n state: {\r\n loadedCertificate: null\r\n },\r\n getters: {\r\n isCertificateLoaded(state) {\r\n return state.loadedCertificate !== null;\r\n },\r\n certificate(state) {\r\n return state.loadedCertificate;\r\n },\r\n certificateSerial(state) {\r\n if (state.loadedCertificate)\r\n return state.loadedCertificate.certificate.serialNumber\r\n\r\n return null\r\n }\r\n },\r\n mutations: {\r\n setLoadedCertificate(state, certificate) {\r\n state.loadedCertificate = certificate;\r\n },\r\n unsetLoadedCertificate(state) {\r\n state.loadedCertificate = null;\r\n }\r\n },\r\n actions: {\r\n [SIGN_INVOICE_BY_EXECUTOR]: ({dispatch, getters}, id) => {\r\n dispatch(LAYOUT_LOADING_START)\r\n\r\n InvoiceServices.getSignProperties(id)\r\n .then(getSignPropertiesResponse => {\r\n if (getSignPropertiesResponse.data.HashDetail) {\r\n const timestampFn = (signatureHex) => {\r\n return new Promise((resolve, reject) => {\r\n SignService.getTimeStamp(signatureHex)\r\n .then(getTimeStampResponse => {\r\n resolve(getTimeStampResponse.data);\r\n }, reject);\r\n })\r\n };\r\n\r\n const fakturaHashCode = getSignPropertiesResponse.data.HashDetail.FakturaHashCode;\r\n const roamingHashCode = getSignPropertiesResponse.data.HashDetail.RoamingOwnerHashCode;\r\n\r\n if (fakturaHashCode && roamingHashCode) {\r\n EImzo.sign(fakturaHashCode, roamingHashCode, getters.certificate, timestampFn)\r\n .then(result => {\r\n const signResult = result[0];\r\n const attachTimestampResult = result[1];\r\n\r\n SignService.signInvoiceByExecutor(id, {\r\n fakturaPkcs7: signResult.pkcs7,\r\n roamingPkcs7: attachTimestampResult.pkcs7,\r\n certificateSerial: attachTimestampResult.signerSeriaNumber\r\n })\r\n .then(response => {\r\n let busEvent = Events.SignUnknownErrorFailed\r\n switch (response.data) {\r\n case SignActionResult.Success:\r\n busEvent = Events.SignSuccess\r\n break;\r\n\r\n case SignActionResult.BalanceIsLow:\r\n busEvent = Events.SignBalanceLowFailed\r\n break;\r\n\r\n case SignActionResult.CreditLimitIsLow:\r\n busEvent = Events.SignCreditLimitIsLowFailed\r\n break;\r\n\r\n case SignActionResult.SignatureValidationFailed:\r\n busEvent = Events.SignSignatureValidationFailed\r\n break;\r\n\r\n case SignActionResult.RoamingSignatureValidationFailed:\r\n busEvent = Events.SignRoamingSignatureValidationFailed\r\n break;\r\n\r\n case SignActionResult.RoamingServiceProcessingError:\r\n busEvent = Events.SignRoamingServiceProcessingFailed\r\n break;\r\n }\r\n EventBus.$emit(busEvent, id)\r\n dispatch(AUTH_LOAD_COMPANY_BILLING_INFO)\r\n })\r\n .finally(() => {\r\n dispatch(LAYOUT_LOADING_STOP)\r\n })\r\n }, () => {\r\n dispatch(LAYOUT_LOADING_STOP)\r\n EventBus.$emit(Events.SignEimzoFailed, id)\r\n })\r\n } else {\r\n dispatch(LAYOUT_LOADING_STOP)\r\n EventBus.$emit(Events.SignGotInvalidHashCode, id)\r\n }\r\n } else {\r\n dispatch(LAYOUT_LOADING_STOP)\r\n EventBus.$emit(Events.SignGotInvalidHashCode, id)\r\n }\r\n }, () => {\r\n dispatch(LAYOUT_LOADING_STOP)\r\n EventBus.$emit(Events.SignGetHashCodeFailed, id)\r\n })\r\n },\r\n [SIGN_INVOICE_BY_CUSTOMER]: ({dispatch, getters}, id) => {\r\n dispatch(LAYOUT_LOADING_START)\r\n\r\n InvoiceServices.getSignProperties(id)\r\n .then(getSignPropertiesResponse => {\r\n if (getSignPropertiesResponse.data.HashDetail) {\r\n const timestampFn = (signatureHex) => {\r\n return new Promise((resolve, reject) => {\r\n SignService.getTimeStamp(signatureHex)\r\n .then(getTimeStampResponse => {\r\n resolve(getTimeStampResponse.data);\r\n }, reject);\r\n })\r\n };\r\n\r\n const fakturaHashCode = getSignPropertiesResponse.data.HashDetail.FakturaHashCode;\r\n const roamingHashCode = getSignPropertiesResponse.data.HashDetail.RoamingContractorHashCode;\r\n\r\n if (fakturaHashCode && roamingHashCode) {\r\n EImzo.signByAttach(fakturaHashCode, roamingHashCode, getters.certificate, timestampFn)\r\n .then(result => {\r\n const signResult = result[0];\r\n const attachTimestampResult = result[1];\r\n\r\n SignService.signInvoiceByCustomer(id, {\r\n fakturaPkcs7: signResult.pkcs7,\r\n roamingPkcs7: attachTimestampResult.pkcs7,\r\n certificateSerial: attachTimestampResult.signerSeriaNumber\r\n })\r\n .then(response => {\r\n let busEvent = Events.SignUnknownErrorFailed\r\n switch (response.data) {\r\n case SignActionResult.Success:\r\n busEvent = Events.SignSuccess\r\n break;\r\n\r\n case SignActionResult.BalanceIsLow:\r\n busEvent = Events.SignBalanceLowFailed\r\n break;\r\n\r\n case SignActionResult.CreditLimitIsLow:\r\n busEvent = Events.SignCreditLimitIsLowFailed\r\n break;\r\n\r\n case SignActionResult.SignatureValidationFailed:\r\n busEvent = Events.SignSignatureValidationFailed\r\n break;\r\n\r\n case SignActionResult.RoamingSignatureValidationFailed:\r\n busEvent = Events.SignRoamingSignatureValidationFailed\r\n break;\r\n\r\n case SignActionResult.RoamingServiceProcessingError:\r\n busEvent = Events.SignRoamingServiceProcessingFailed\r\n break;\r\n }\r\n EventBus.$emit(busEvent, id)\r\n dispatch(AUTH_LOAD_COMPANY_BILLING_INFO)\r\n })\r\n .finally(() => {\r\n dispatch(LAYOUT_LOADING_STOP)\r\n })\r\n }, () => {\r\n dispatch(LAYOUT_LOADING_STOP)\r\n EventBus.$emit(Events.SignEimzoFailed, id)\r\n })\r\n } else {\r\n dispatch(LAYOUT_LOADING_STOP)\r\n EventBus.$emit(Events.SignGotInvalidHashCode, id)\r\n }\r\n } else {\r\n dispatch(LAYOUT_LOADING_STOP)\r\n EventBus.$emit(Events.SignGotInvalidHashCode, id)\r\n }\r\n\r\n }, () => {\r\n dispatch(LAYOUT_LOADING_STOP)\r\n EventBus.$emit(Events.SignGetHashCodeFailed, id)\r\n })\r\n },\r\n\r\n [SIGN_RETURN_INVOICE_BY_EXECUTOR]: ({dispatch, getters}, id) => {\r\n dispatch(LAYOUT_LOADING_START)\r\n SignService.getReturnInvoiceSignProperties(id)\r\n .then(getSignPropertiesResponse => {\r\n if (getSignPropertiesResponse.data.HashDetail) {\r\n const timestampFn = (signatureHex) => {\r\n return new Promise((resolve, reject) => {\r\n SignService.getTimeStamp(signatureHex)\r\n .then(getTimeStampResponse => {\r\n resolve(getTimeStampResponse.data);\r\n }, reject);\r\n })\r\n };\r\n\r\n const fakturaHashCode = getSignPropertiesResponse.data.HashDetail.FakturaHashCode;\r\n const roamingHashCode = getSignPropertiesResponse.data.HashDetail.RoamingOwnerHashCode;\r\n\r\n if (fakturaHashCode && roamingHashCode) {\r\n EImzo.sign(fakturaHashCode, roamingHashCode, getters.certificate, timestampFn)\r\n .then(result => {\r\n const signResult = result[0];\r\n const attachTimestampResult = result[1];\r\n\r\n SignService.signReturnInvoiceByExecutor(id, {\r\n fakturaPkcs7: signResult.pkcs7,\r\n roamingPkcs7: attachTimestampResult.pkcs7,\r\n certificateSerial: attachTimestampResult.signerSeriaNumber\r\n })\r\n .then(response => {\r\n let busEvent = Events.SignUnknownErrorFailed\r\n switch (response.data) {\r\n case SignActionResult.Success:\r\n busEvent = Events.SignSuccess\r\n break;\r\n\r\n case SignActionResult.BalanceIsLow:\r\n busEvent = Events.SignBalanceLowFailed\r\n break;\r\n\r\n case SignActionResult.CreditLimitIsLow:\r\n busEvent = Events.SignCreditLimitIsLowFailed\r\n break;\r\n\r\n case SignActionResult.SignatureValidationFailed:\r\n busEvent = Events.SignSignatureValidationFailed\r\n break;\r\n\r\n case SignActionResult.RoamingSignatureValidationFailed:\r\n busEvent = Events.SignRoamingSignatureValidationFailed\r\n break;\r\n\r\n case SignActionResult.RoamingServiceProcessingError:\r\n busEvent = Events.SignRoamingServiceProcessingFailed\r\n break;\r\n }\r\n EventBus.$emit(busEvent, id)\r\n dispatch(AUTH_LOAD_COMPANY_BILLING_INFO)\r\n })\r\n .finally(() => {\r\n dispatch(LAYOUT_LOADING_STOP)\r\n })\r\n }, () => {\r\n dispatch(LAYOUT_LOADING_STOP)\r\n EventBus.$emit(Events.SignEimzoFailed, id)\r\n })\r\n } else {\r\n dispatch(LAYOUT_LOADING_STOP)\r\n EventBus.$emit(Events.SignGotInvalidHashCode, id)\r\n }\r\n } else {\r\n dispatch(LAYOUT_LOADING_STOP)\r\n EventBus.$emit(Events.SignGotInvalidHashCode, id)\r\n }\r\n }, () => {\r\n dispatch(LAYOUT_LOADING_STOP)\r\n EventBus.$emit(Events.SignGetHashCodeFailed, id)\r\n })\r\n }\r\n }\r\n}","import * as mutationsNames from './mutationNames';\r\n\r\nexport default {\r\n state: {\r\n isCheckedShowButtonSetZero: localStorage.checkedShowButtonZero ? localStorage.checkedShowButtonZero : false,\r\n dateDisplayFormats: ['YYYY-MM-DD', 'DD.MM.YYYY'],\r\n dateDisplayFormat: 'YYYY-MM-DD'\r\n },\r\n getters: {\r\n getValueCheckedShowButtonSetZero: (state) => {\r\n if (state.isCheckedShowButtonSetZero === \"true\")\r\n return true;\r\n else if (state.isCheckedShowButtonSetZero === \"false\")\r\n return false;\r\n return state.isCheckedShowButtonSetZero;\r\n },\r\n dateDisplayFormat: (state) => {\r\n return state.dateDisplayFormat\r\n },\r\n dateDisplayFormats: (state) => {\r\n return state.dateDisplayFormats\r\n }\r\n },\r\n mutations: {\r\n [mutationsNames.SET_CHECKED_SHOW_BUTTON_ZERO](state, value) {\r\n state.isCheckedShowButtonSetZero = value;\r\n },\r\n [mutationsNames.SET_DATE_DISPLAY_FORMAT] (state, value) {\r\n state.dateDisplayFormat = value\r\n }\r\n }\r\n}","import {LAYOUT_LOADING_START, LAYOUT_LOADING_STOP} from \"./actions\";\r\n\r\nexport default {\r\n state: {\r\n loadingCounter: 0,\r\n },\r\n getters: {\r\n layoutIsLoading: (state) => {\r\n return state.loadingCounter > 0\r\n },\r\n },\r\n mutations: {\r\n incrementLoadingCounter(state) {\r\n state.loadingCounter = state.loadingCounter + 1\r\n },\r\n decrementLoadingCounter(state) {\r\n state.loadingCounter = state.loadingCounter - 1\r\n if (state.loadingCounter < 0)\r\n state.loadingCounter = 0\r\n }\r\n },\r\n actions: {\r\n [LAYOUT_LOADING_START]: ({commit}) => {\r\n commit('incrementLoadingCounter')\r\n },\r\n [LAYOUT_LOADING_STOP]: ({commit}) => {\r\n commit('decrementLoadingCounter')\r\n }\r\n }\r\n}","import {APP_LOAD_NEW_SEND_CONTRACT_APPROVES, APP_LOAD_USE_BRANCHES, APP_SEND_CONTRACT_APPROVE_ALERT_CLOSE} from \"@/store/modules/app/actions\";\r\n\r\nimport SendContractApproveService from \"@/services/send.contract.approve.service\";\r\nimport BranchService from \"@/services/branch.service\"\r\nimport Moment from \"moment\";\r\nexport default {\r\n state: {\r\n sendContractApproves: [],\r\n newSendContractApproveAlertClosed: false,\r\n branches: []\r\n },\r\n getters: {\r\n showNewSendContractApproveAlert(state) {\r\n return state.sendContractApproves.filter(a => {\r\n return !a.in_use\r\n }).length > 0 && !state.newSendContractApproveAlertClosed\r\n },\r\n useBranches(state) {\r\n return state.branches\r\n }\r\n },\r\n mutations: {\r\n setSendContractApproves(state, payload) {\r\n state.sendContractApproves = payload\r\n },\r\n setNewSendContractApproveAlertClosed(state, payload) {\r\n state.newSendContractApproveAlertClosed = payload\r\n },\r\n setBranches(state, payload) {\r\n state.branches = payload\r\n }\r\n },\r\n actions: {\r\n [APP_LOAD_NEW_SEND_CONTRACT_APPROVES]: ({commit}) => {\r\n SendContractApproveService.getAllByExecutor()\r\n .then(response => {\r\n const approves = response.data.map(a => {\r\n return {\r\n id: a.id,\r\n uid: a.uid,\r\n in_use: a.in_use,\r\n executor: {\r\n inn: a.executor_inn,\r\n name: a.executor_name\r\n },\r\n customer: {\r\n inn: a.customer_inn,\r\n name: a.customer_name\r\n },\r\n createdAt: Moment(a.created_at, 'YYYY-MM-DD HH:mm:ss'),\r\n updatedAt: Moment(a.updated_at, 'YYYY-MM-DD HH:mm:ss')\r\n }\r\n })\r\n commit('setSendContractApproves', approves)\r\n })\r\n },\r\n [APP_SEND_CONTRACT_APPROVE_ALERT_CLOSE]: ({commit}) => {\r\n commit('setNewSendContractApproveAlertClosed', true)\r\n },\r\n [APP_LOAD_USE_BRANCHES]: ({commit}) => {\r\n BranchService.getAll()\r\n .then(response => {\r\n const branches = response.data.map(branch => {\r\n return {\r\n id: branch.Id,\r\n code: branch.Code,\r\n name: branch.Name,\r\n ownerInn: branch.OwnerInn,\r\n ownerName: branch.OwnerName\r\n }\r\n })\r\n commit('setBranches', branches)\r\n })\r\n }\r\n }\r\n}","import auth from './auth';\r\nimport sign from './sign';\r\nimport setting from './setting';\r\nimport layout from './layout';\r\nimport app from './app'\r\n\r\nexport default {\r\n auth,\r\n sign,\r\n setting,\r\n layout,\r\n app\r\n}","import Vue from 'vue'\r\nimport Vuex from 'vuex'\r\nimport modules from './modules'\r\n\r\nVue.use(Vuex);\r\n\r\nexport default new Vuex.Store({\r\n modules\r\n});","import Vue from 'vue';\r\nimport Router from 'vue-router';\r\n\r\nVue.use(Router);\r\n\r\nexport default new Router({\r\n mode: 'hash',\r\n routes: [\r\n {\r\n path: '/',\r\n component: () => import(\"@/views/Site\"),\r\n // redirect: \"app/main\"\r\n },\r\n {\r\n path: '/app',\r\n component: () => import(\"@/layouts/AuthorizedLayout\"),\r\n redirect: 'app/main',\r\n children: [\r\n {\r\n path: 'korzinka',\r\n component: () => import('@/layouts/korzinka.layout'),\r\n children: [\r\n {\r\n path: '',\r\n redirect: {name: 'korzinka-dashboard'},\r\n },\r\n {\r\n path: 'dashboard',\r\n name: 'korzinka-dashboard',\r\n component: () => import('@/views/korzinka/korzinka.dashboard')\r\n },\r\n {\r\n path: 'acts/in',\r\n name: 'korzinka-acts-in',\r\n component: () => import('@/views/korzinka/korzinka.in.act')\r\n },\r\n {\r\n path: 'acts/out',\r\n name: 'korzinka-acts-out',\r\n component: () => import('@/views/korzinka/korzinka.out.act')\r\n }\r\n ]\r\n },\r\n {\r\n path: 'main',\r\n component: () => import(\"@/layouts/Main\"),\r\n children: [\r\n {\r\n path: '',\r\n name: 'home',\r\n component: () => import(\"@/views/main/Home\"),\r\n redirect: {name: 'dashboard'}\r\n },\r\n {\r\n path: 'dashboard',\r\n name: 'dashboard',\r\n component: () => import(\"@/views/main/Dashboard\")\r\n },\r\n\r\n {\r\n path: 'order',\r\n name: 'order',\r\n component: () => import(\"@/views/main/Order\"),\r\n redirect: {name: 'orders-all'},\r\n meta: {\r\n expandOrders: true\r\n },\r\n children: [\r\n {\r\n path: 'all',\r\n name: 'orders-all',\r\n component: () => import(\"@/views/main/order/box/OrderAllBoxView\")\r\n },\r\n {\r\n path: 'reject',\r\n name: 'orders-rejectBox',\r\n component: () => import(\"@/views/main/order/box/OrderDeclinedBoxView\")\r\n },\r\n {\r\n path: 'complete',\r\n name: 'orders-completeBox',\r\n component: () => import(\"@/views/main/order/box/OrderCompleteBoxView\")\r\n },\r\n {\r\n path: 'processing',\r\n name: 'orders-processingBox',\r\n component: () => import(\"@/views/main/order/box/OrderProcessingBoxView\")\r\n },\r\n {\r\n path: 'stopped',\r\n name: 'orders-stoppedBox',\r\n component: () => import(\"@/views/main/order/box/OrderStoppedBoxView\")\r\n },\r\n {\r\n path: 'add',\r\n name: 'order-add',\r\n component: () => import(\"@/views/main/order/AddOrder\"),\r\n },\r\n {\r\n path: ':id/edit',\r\n name: 'order-edit',\r\n component: () => import(\"@/views/main/order/EditOrder\"),\r\n },\r\n {\r\n path: ':id',\r\n name: 'order-page',\r\n component: () => import(\"@/views/main/order/OrderView\"),\r\n }\r\n ]\r\n },\r\n {\r\n path: 'shipment',\r\n name: 'shipment',\r\n component: () => import(\"@/views/main/ShipmentWaybill\"),\r\n meta: {\r\n expandShipments: true\r\n },\r\n redirect: {name: 'shipment-all'},\r\n children: [\r\n {\r\n path: 'all',\r\n name: 'shipment-all',\r\n component: () => import(\"@/views/main/shipment/box/ShipmentAllBoxView\")\r\n },\r\n {\r\n path: 'complete',\r\n name: 'shipment-completeBox',\r\n component: () => import(\"@/views/main/shipment/box/ShipmentCompleteBoxView\")\r\n },\r\n {\r\n path: 'decline',\r\n name: 'shipment-declineBox',\r\n component: () => import(\"@/views/main/shipment/box/ShipmentDeclineBoxView\")\r\n },\r\n {\r\n path: 'processing',\r\n name: 'shipment-processingBox',\r\n component: () => import(\"@/views/main/shipment/box/ShipmentProcessingBoxView\")\r\n },\r\n {\r\n path: 'deleted',\r\n name: 'shipment-deletedBox',\r\n component: () => import(\"@/views/main/shipment/box/ShipmentDeletedBoxView\")\r\n },\r\n {\r\n path: 'delivery-today',\r\n name: 'shipment-deliveryTodayBox',\r\n component: () => import(\"@/views/main/shipment/box/ShipmentTodayDeliveryBoxView\")\r\n },\r\n {\r\n path: 'new/self/:orderId',\r\n name: 'add-self-shipment',\r\n component: () => import('@/views/main/shipment/AddShipmentView')\r\n },\r\n {\r\n path: ':id/edit',\r\n name: 'shipment-edit',\r\n component: () => import(\"@/views/main/shipment/EditShipmentView\")\r\n },\r\n {\r\n path: ':id',\r\n name: 'shipment-page',\r\n component: () => import(\"@/views/main/shipment/ShipmentView\")\r\n },\r\n ]\r\n },\r\n {\r\n path: 'invoice',\r\n name: 'invoice',\r\n component: () => import(\"@/views/main/Invoice\"),\r\n redirect: {name: 'invoice-all'},\r\n meta: {\r\n expandInvoices: true\r\n },\r\n children: [\r\n {\r\n path: 'by-shipment-2/:id/new',\r\n name: 'new-invoice-by-shipment-2',\r\n component: () => import(\"@/views/main/invoice/AddInvoiceView\")\r\n },\r\n {\r\n path: 'all',\r\n name: 'invoice-all',\r\n component: () => import(\"@/views/main/invoice/box/InvoiceAllBoxView\")\r\n },\r\n {\r\n path: 'complete',\r\n name: 'invoice-completeBox',\r\n component: () => import(\"@/views/main/invoice/box/InvoiceCompleteBoxView\")\r\n },\r\n {\r\n path: 'processing',\r\n name: 'invoice-processingBox',\r\n component: () => import(\"@/views/main/invoice/box/InvoiceProcessingBoxView\")\r\n },\r\n {\r\n path: 'reject',\r\n name: 'invoice-reject-box',\r\n component: () => import(\"@/views/main/invoice/box/InvoiceRejectBoxView\")\r\n },\r\n {\r\n path: ':id',\r\n name: 'invoice-page',\r\n component: () => import(\"@/views/main/invoice/InvoiceView\"),\r\n }\r\n ]\r\n },\r\n\r\n {\r\n path: 'return-order',\r\n name: 'return-order',\r\n component: () => import(\"@/views/main/ReturnOrder\"),\r\n meta: {\r\n expandReturnOrders: true\r\n },\r\n redirect: {name: 'return-order-all'},\r\n children: [\r\n {\r\n path: 'all',\r\n name: 'return-orders-all',\r\n component: () => import('@/views/main/return-order/box/ReturnOrderAllBoxView')\r\n },\r\n {\r\n path: 'add',\r\n name: 'return-order-add',\r\n component: () => import(\"@/views/main/return-order/AddReturnOrder\"),\r\n },\r\n {\r\n path: ':id/edit',\r\n name: 'return-order-edit',\r\n component: () => import(\"@/views/main/return-order/EditReturnOrder\"),\r\n },\r\n {\r\n path: ':id',\r\n name: 'return-order-page',\r\n component: () => import(\"@/views/main/return-order/ReturnOrderView\"),\r\n }\r\n ]\r\n },\r\n {\r\n path: 'return-shipment',\r\n name: 'return-shipment',\r\n component: () => import(\"@/views/main/ReturnShipment\"),\r\n meta: {\r\n expandReturnShipments: true\r\n },\r\n redirect: {name: 'return-shipment-all'},\r\n children: [\r\n {\r\n path: 'all',\r\n name: 'return-shipment-all',\r\n component: () => import(\"@/views/main/return-shipment/box/ReturnShipmentAllBoxView\")\r\n },\r\n {\r\n path: 'new/self/:orderId',\r\n name: 'add-self-return-shipment',\r\n component: () => import('@/views/main/return-shipment/AddReturnShipmentView')\r\n },\r\n {\r\n path: ':id/edit',\r\n name: 'return-shipment-edit',\r\n component: () => import(\"@/views/main/return-shipment/EditReturnShipmentView\")\r\n },\r\n {\r\n path: ':id',\r\n name: 'return-shipment-page',\r\n component: () => import(\"@/views/main/return-shipment/ReturnShipmentView\")\r\n },\r\n ]\r\n },\r\n {\r\n path: 'return-invoice',\r\n name: 'return-invoice',\r\n component: () => import(\"@/views/main/ReturnInvoice\"),\r\n meta: {\r\n expandReturnInvoices: true\r\n },\r\n children: [\r\n {\r\n path: 'all',\r\n name: 'return-invoices-all',\r\n component: () => import(\"@/views/main/return-invoice/box/ReturnInvoiceAllBoxView\")\r\n },\r\n /*{\r\n path: 'processing',\r\n name: 'return-invoices-processing',\r\n component: () => import(\"@/views/main/return-invoice/box/ReturnInvoiceProcessingBoxView\")\r\n },\r\n {\r\n path: 'complete',\r\n name: 'return-invoices-complete',\r\n component: () => import(\"@/views/main/return-invoice/box/ReturnInvoiceCompleteBoxView\")\r\n },*/\r\n {\r\n path: 'add/:id',\r\n name: 'add-return-invoice',\r\n component: () => import('@/views/main/return-invoice/AddReturnInvoiceView')\r\n },\r\n {\r\n path: ':id',\r\n name: 'return-invoice-page',\r\n component: () => import(\"@/views/main/return-invoice/ReturnInvoicePage\")\r\n }\r\n ]\r\n },\r\n\r\n {\r\n path: 'attorney/company/:id/view',\r\n name: 'company-attorney-view',\r\n component: () => import(\"@/views/main/attorney/CompanyAttorneyPage\")\r\n },\r\n {\r\n path: 'attorney/:shipmentWaybillId/new',\r\n name: 'new-attorney',\r\n component: () => import(\"@/views/main/attorney/NewAttorney\")\r\n },\r\n {\r\n path: 'attorney/:id',\r\n name: 'attorney-page',\r\n component: () => import(\"@/views/main/attorney/AttorneyPage\")\r\n },\r\n {\r\n path: 'attorney-contraction',\r\n name: 'contraction-attorney-view',\r\n component: () => import(\"@/views/main/attorney/ContractionAttorneyView\")\r\n },\r\n\r\n {\r\n path: 'settings',\r\n name: 'settings',\r\n component: () => import(\"@/views/main/Settings\")\r\n },\r\n {\r\n path: 'directory',\r\n name: 'directory',\r\n component: () => import(\"@/views/main/Directory\"),\r\n redirect: {name: 'directories'},\r\n children: [\r\n {\r\n path: 'home',\r\n name: 'directories',\r\n component: () => import(\"@/views/main/directory/Directories\")\r\n },\r\n {\r\n path: 'contractions',\r\n name: 'directory-contractions',\r\n component: () => import(\"@/views/main/directory/ContractionsPage\")\r\n },\r\n {\r\n path: 'products',\r\n name: 'directory-products',\r\n component: () => import(\"@/views/main/directory/ProductsPage\")\r\n },\r\n {\r\n path: 'attorneys',\r\n name: 'directory-attorneys',\r\n component: () => import(\"@/views/main/directory/AttorneysPage\")\r\n },\r\n {\r\n path: 'products-specification',\r\n name: 'directory-products-specification',\r\n component: () => import(\"@/views/main/directory/ProductsSpecificationPage\")\r\n }\r\n ]\r\n },\r\n {\r\n name: 'roaming',\r\n path: 'roaming',\r\n component: () => import(\"@/views/main/roaming/Roaming\"),\r\n redirect: {name: 'roaming-inbox'},\r\n meta: {\r\n expandRoaming: true\r\n },\r\n children: [\r\n {\r\n path: 'inbox',\r\n name: 'roaming-inbox',\r\n component: () => import(\"@/views/main/roaming/RoamingInbox\")\r\n },\r\n {\r\n path: 'income-complete',\r\n name: 'roaming-income-complete',\r\n component: () => import(\"@/views/main/roaming/RoamingIncomeSignedBox\")\r\n },\r\n {\r\n path: 'out-complete',\r\n name: 'roaming-out-complete',\r\n component: () => import(\"@/views/main/roaming/RoamingOutgoSignedBox\")\r\n },\r\n {\r\n path: 'income-match',\r\n name: 'roaming-income-match',\r\n component: () => import(\"@/views/main/roaming/RoamingIncomeMatchBox\")\r\n },\r\n {\r\n path: 'out-match',\r\n name: 'roaming-out-match',\r\n component: () => import(\"@/views/main/roaming/RoamingOutgoMatchBox\")\r\n },\r\n {\r\n path: 'income-half-match',\r\n name: 'roaming-income-half-match',\r\n component: () => import(\"@/views/main/roaming/RoamingIncomeHalfMatchBox\")\r\n },\r\n ]\r\n },\r\n {\r\n path: 'statistics',\r\n name: 'statistics',\r\n component: () => import(\"@/views/main/statistics/StatisticsLayout\"),\r\n redirect: {name: 'statistics-dashboard'},\r\n children: [\r\n {\r\n path: 'dashboard',\r\n component: () => import(\"@/views/main/statistics/StatisticsDashboardPage\"),\r\n name: 'statistics-dashboard'\r\n }\r\n ]\r\n\r\n },\r\n {\r\n path: 'contract',\r\n name: 'contract',\r\n component: () => import('@/views/main/Contract'),\r\n redirect: {name: 'contracts-all'},\r\n meta: {\r\n expandContracts: true\r\n },\r\n children: [\r\n {\r\n path: 'all',\r\n name: 'contracts-all',\r\n component: () => import('@/views/main/contract/box/ContractAllBoxView')\r\n },\r\n {\r\n path: 'add',\r\n name: 'add-contract',\r\n component: () => import(\"@/views/main/contract/AddContractView\"),\r\n },\r\n {\r\n path: 'add-from-sent-approve/:id',\r\n name: 'add-from-sent-approve',\r\n component: () => import(\"@/views/main/contract/AddContractFromSentApproveView\")\r\n },\r\n {\r\n path: 'view/:id',\r\n name: 'view-contract',\r\n component: () => import(\"@/views/main/contract/ContractView\")\r\n },\r\n {\r\n path: 'edit/:id',\r\n name: 'edit-contract',\r\n component: () => import(\"@/views/main/contract/EditContractView\")\r\n }\r\n ]\r\n },\r\n {\r\n path: 'send-contract-approve',\r\n name: 'send-contract-approve',\r\n component: () => import('@/views/main/Contract'),\r\n redirect: {name: 'send-contract-approves-all-by-customer'},\r\n meta: {\r\n expandSendContractApproves: true\r\n },\r\n children: [\r\n {\r\n path: 'all-by-customer',\r\n name: 'send-contract-approves-all-by-customer',\r\n component: () => import('@/views/main/send-contract-approve/box/SendContractApproveAllBoxByCustomerView')\r\n },\r\n {\r\n path: 'all-by-executor',\r\n name: 'send-contract-approves-all-by-executor',\r\n component: () => import('@/views/main/send-contract-approve/box/SendContractApproveAllBoxByExecutorView')\r\n }\r\n ]\r\n },\r\n ]\r\n }\r\n ]\r\n }\r\n ]\r\n})\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('router-view')}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/vuetify-loader/lib/loader.js??ref--18-0!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Layout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/vuetify-loader/lib/loader.js??ref--18-0!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Layout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Layout.vue?vue&type=template&id=50308cd2&\"\nimport script from \"./Layout.vue?vue&type=script&lang=js&\"\nexport * from \"./Layout.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","let formatNumberMinorPart = (value, len) => {\r\n while (value.length < len)\r\n value = `${value}0`\r\n\r\n return value.substr(0, len)\r\n}\r\n\r\nlet formatNumberMajorPart = value => {\r\n let result = ''\r\n value = value.split('').reverse().join('')\r\n for (let i = 0; i < value.length; i++) {\r\n if (i > 0 && i % 3 === 0)\r\n result = `${result} `\r\n result = `${result}${value[i]}`\r\n }\r\n\r\n if (result.length && result[result.length - 1] === ' ')\r\n result = result.substr(0, result.length - 1)\r\n\r\n return result.split('').reverse().join('')\r\n}\r\n\r\nlet decimalToString = value => {\r\n if (value === null || value === undefined)\r\n return \"\";\r\n\r\n let major = value.toString();\r\n let commaIndex = major.replace(\",\", \".\").indexOf(\".\");\r\n\r\n // minor part\r\n let minor = \"\";\r\n if (commaIndex > -1) {\r\n minor = major.substr(commaIndex + 1);\r\n major = major.substr(0, commaIndex);\r\n }\r\n\r\n major = formatNumberMajorPart(major)\r\n minor = formatNumberMinorPart(minor, 2)\r\n\r\n return `${major}.${minor}`\r\n}\r\n\r\nlet decimalNoTrim = value => {\r\n if (value === null || value === undefined)\r\n return \"\";\r\n\r\n let major = value.toString();\r\n let commaIndex = major.replace(\",\", \".\").indexOf(\".\");\r\n\r\n // minor part\r\n let minor = \"\";\r\n if (commaIndex > -1) {\r\n minor = major.substr(commaIndex + 1);\r\n major = major.substr(0, commaIndex);\r\n }\r\n\r\n major = formatNumberMajorPart(major)\r\n\r\n if (minor.length === 0)\r\n return major\r\n\r\n minor = formatNumberMinorPart(minor, minor.length)\r\n return `${major}.${minor}`\r\n}\r\n\r\nlet ceilDecimalToString = value => {\r\n if (value === null || value === undefined)\r\n return \"\";\r\n\r\n let major = value.toString();\r\n let commaIndex = major.replace(\",\", \".\").indexOf(\".\");\r\n\r\n if (commaIndex > -1)\r\n major = major.substr(0, commaIndex);\r\n\r\n major = formatNumberMajorPart(major)\r\n\r\n return major\r\n}\r\n\r\nexport default {\r\n decimalToString: decimalToString,\r\n ceilDecimalToString: ceilDecimalToString,\r\n decimalNoTrim: decimalNoTrim\r\n}","import Vue from 'vue'\r\nimport formatter from '@/plugins/formatter'\r\nimport $store from '@/store'\r\nimport NumberHelper from '@/helpers/number'\r\n\r\nVue.filter('datetime', (date) => {\r\n return `${date.toLocaleDateString()} ${date.toLocaleTimeString()}`;\r\n});\r\n\r\nVue.filter('date', (date) => {\r\n return date.toLocaleDateString();\r\n});\r\n\r\nVue.filter('time', (date) => {\r\n return date.toLocaleTimeString();\r\n});\r\n\r\nVue.filter(\"decimal\", (value) => {\r\n return formatter.decimalToString(value);\r\n});\r\n\r\nVue.filter(\"decimalMinorCeilTwoDigit\", (value) => {\r\n return formatter.decimalToString(NumberHelper.round(value, -2))\r\n});\r\n\r\nVue.filter(\"decimalNoTrim\", (value) => {\r\n return formatter.decimalNoTrim(value);\r\n});\r\n\r\nVue.filter(\"ceilDecimal\", (value) => {\r\n return formatter.ceilDecimalToString(value);\r\n});\r\n\r\nVue.filter('momentDate', value => {\r\n return value.format($store.getters.dateDisplayFormat)\r\n})","import Vue from 'vue'\r\nimport vuetify from './plugins/vuetify';\r\nimport store from './store'\r\nimport router from './routes/router'\r\nimport \"./scss/_fontsMaterialIcons.scss\";\r\nimport \"./scss/_fontsRoboto.scss\";\r\nimport Layout from \"./layouts/Layout\";\r\nimport \"./filters\";\r\nimport Moment from 'moment'\r\n\r\nVue.config.productionTip = false;\r\n\r\n\r\nnew Vue({\r\n vuetify,\r\n store,\r\n router,\r\n render: h => h(Layout),\r\n created() {\r\n Moment.locale('ru')\r\n },\r\n}).$mount('#app');\r\n","export default class {\r\n _id\r\n _name\r\n\r\n get id() {\r\n return this._id\r\n }\r\n\r\n set id(value) {\r\n this._id = value\r\n }\r\n\r\n get name() {\r\n return this._name\r\n }\r\n\r\n set name(value) {\r\n this._name = value\r\n }\r\n\r\n constructor(id, name) {\r\n this._id = id\r\n this._name = name\r\n\r\n }\r\n}","import OrderShipmentDateMethodStrategy from \"@/domain/OrderShipmentDateMethodStrategy\";\r\n\r\nexport const DefineByExecutor = new OrderShipmentDateMethodStrategy(0, \"Определяется поставщиком\")\r\nexport const FromOrderDateToOrderExpires = new OrderShipmentDateMethodStrategy(1, \"С даты заказа по дате истечения срока заказа\")","export default class {\r\n _id;\r\n _name;\r\n\r\n get id() {\r\n return this._id;\r\n }\r\n\r\n set id(value) {\r\n this._id = value;\r\n }\r\n\r\n get name() {\r\n return this._name;\r\n }\r\n\r\n set name(value) {\r\n this._name = value;\r\n }\r\n\r\n constructor(id, name) {\r\n this._id = id;\r\n this._name = name;\r\n }\r\n}","import OrderShipmentDeliveryDateStrategy from '@/domain/OrderShipmentDeliveryDateStrategy'\r\n\r\nexport const FromOrderExpireDate = new OrderShipmentDeliveryDateStrategy(0, 'Из даты истечения заказа')\r\nexport const ExecutorDetermineDate = new OrderShipmentDeliveryDateStrategy(1, 'Определяет поставщик')\r\n","export const InvoiceCreated = 0\r\nexport const InvoiceSend = 1\r\nexport const InvoiceDeleted = 2\r\nexport const InvoiceCanceled = 3\r\nexport const CustomerApproved = 4\r\nexport const CustomerDeclined = 5\r\n\r\nexport const GetStatusText = status =>{\r\n switch (status){\r\n case InvoiceCreated:\r\n return \"Счёт-фактура создан\"\r\n case InvoiceSend:\r\n return \"Счёт-фактура отправлено\"\r\n case InvoiceDeleted:\r\n return \"Счёт-фактура удалено\"\r\n case InvoiceCanceled:\r\n return \"Счёт-фактура отменен\"\r\n case CustomerApproved:\r\n return \"Утверждено заказчиком\"\r\n case CustomerDeclined:\r\n return \"Отклонено заказчиком\"\r\n default:\r\n return \"Счёт-фактура создан\"\r\n }\r\n}\r\n\r\nexport const GetStatusVariant = status => {\r\n switch (status) {\r\n case InvoiceCreated:\r\n return 'blue-grey darken-4 white--text'\r\n case InvoiceSend:\r\n return 'blue white--text'\r\n case InvoiceCanceled:\r\n return 'warning white--text'\r\n case InvoiceDeleted:\r\n return 'red white--text'\r\n case CustomerApproved:\r\n return 'green white--text'\r\n case CustomerDeclined:\r\n return 'red darken-4 white--text'\r\n default:\r\n return 'blue-grey darken-4 white--text'\r\n }\r\n}","export const SIGN_INVOICE_BY_EXECUTOR = 'SIGN_INVOICE_BY_EXECUTOR'\r\nexport const SIGN_INVOICE_BY_CUSTOMER = 'SIGN_INVOICE_BY_CUSTOMER'\r\nexport const SIGN_RETURN_INVOICE_BY_EXECUTOR = 'SIGN_RETURN_INVOICE_BY_EXECUTOR'\r\nexport const SIGN_RETURN_INVOICE_BY_CUSTOMER = 'SIGN_RETURN_INVOICE_BY_CUSTOMER'","import Math from './math'\r\nimport MathHelper from \"@/helpers/math\";\r\nimport _ from 'underscore'\r\nimport NumberHelper from '@/helpers/number'\r\n\r\nexport default {\r\n getTotal(quantity, price) {\r\n let total = Math.multiply(quantity, price)\r\n\r\n return NumberHelper.round(total, -2)\r\n },\r\n\r\n getNdsValue(quantity, price, ndsRate) {\r\n let total = this.getTotal(quantity, price)\r\n\r\n let ndsMultiplier = MathHelper.multiply(ndsRate, 0.01);\r\n let ndsValue = MathHelper.multiply(total, ndsMultiplier);\r\n\r\n ndsValue = NumberHelper.round(ndsValue, -2)\r\n return ndsValue\r\n },\r\n\r\n getTotalWithNds(quantity, price, ndsRate) {\r\n let total = this.getTotal(quantity, price)\r\n let ndsValue = this.getNdsValue(quantity, price, ndsRate)\r\n let totalWithNds = total + ndsValue\r\n\r\n totalWithNds = NumberHelper.round(totalWithNds, -2)\r\n return totalWithNds\r\n },\r\n\r\n getSumTotalWithNds(totalsWithNds) {\r\n let sum = _.reduce(totalsWithNds, (memo, item) => {\r\n return memo + item\r\n })\r\n return NumberHelper.round(sum, -2)\r\n },\r\n\r\n getSumTotalNdsValue(ndsValues) {\r\n let sum = _.reduce(ndsValues, (memo, item) => {\r\n return memo + item\r\n })\r\n return NumberHelper.round(sum, -2)\r\n },\r\n\r\n getSumTotal(totals) {\r\n let sum = _.reduce(totals, (memo, item) => {\r\n return memo + item\r\n })\r\n return NumberHelper.round(sum, -2)\r\n },\r\n\r\n getDecimalWithTwoDigit(value){\r\n\r\n if(this.hasDecimal(value))\r\n return value.toFixed(2)\r\n\r\n return value\r\n },\r\n hasDecimal(value) {\r\n if(typeof (value) === 'number')\r\n return !!(value % 1)\r\n }\r\n}","import axios from 'axios'\r\nimport SessionStorage from 'sessionstorage';\r\nimport _ from 'underscore'\r\nimport { APIHOST, MOMENT_API_DATE_FORMAT } from \"@/settings\";\r\nimport PrintJs from \"print-js\";\r\nimport moment from \"moment\";\r\nimport mappers from \"@/helpers/mappers\";\r\nimport { jsonDataToExcel } from \"@/js/XLSX\";\r\n\r\nclass InvoiceService {\r\n register(data) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.post(`${APIHOST}/api/RegisterInvoice`, data, {\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n })\r\n }\r\n\r\n getExecutorLastInfo() {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/ExecutorLastInvoiceInfo`, {\r\n headers: { 'Authorization': `Bearer ${oAuthAccess.access_token}` }\r\n });\r\n }\r\n\r\n getAllbox({ sortBy, sortDesc, skip, limit, search, startExpireOn, endExpireOn, branch, isExecutorApproved, isCustomerApproved, isDeclined, status, statuses }) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/InvoiceAllbox`, {\r\n params: {\r\n sortBy: sortBy,\r\n desc: sortDesc,\r\n skip: skip,\r\n limit: limit,\r\n q: search,\r\n start: startExpireOn ? startExpireOn.format(MOMENT_API_DATE_FORMAT) : null,\r\n end: endExpireOn ? endExpireOn.format(MOMENT_API_DATE_FORMAT) : null,\r\n branch: branch ? branch : null,\r\n isExecutorApproved: typeof (isExecutorApproved) === 'boolean' ? isExecutorApproved : null,\r\n isCustomerApproved: typeof (isCustomerApproved) === 'boolean' ? isCustomerApproved : null,\r\n isDeclined: typeof (isDeclined) === 'boolean' ? isDeclined : null,\r\n status:typeof (status) === \"number\" ? status : null,\r\n statuses:statuses\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n getInfo(id) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/InvoiceInfo/${id}`, {\r\n headers: { 'Authorization': `Bearer ${oAuthAccess.access_token}` }\r\n });\r\n }\r\n\r\n getSignProperties(id) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/SignInvoiceProperties/${id}`, {\r\n headers: { 'Authorization': `Bearer ${oAuthAccess.access_token}` }\r\n });\r\n }\r\n\r\n printPdf(id) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n const promise = axios.get(`${APIHOST}/api/InvoicePdf`, {\r\n responseType: 'blob',\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n },\r\n params: { id: id }\r\n });\r\n\r\n promise.then(response => {\r\n const blob = new Blob([response.data]);\r\n const url = window.URL.createObjectURL(blob);\r\n\r\n PrintJs(url);\r\n });\r\n\r\n return promise;\r\n }\r\n\r\n downloadExcelSingle(id) {\r\n return new Promise((resolve, reject) => {\r\n this.getInfo(id)\r\n .then(response => {\r\n const invoiceInfo = mappers.mapInvoiceInfo(response.data)\r\n\r\n const column1 = 'Магазин'\r\n const column2 = 'Номер'\r\n const column3 = 'Дата'\r\n const column4 = 'Сумма'\r\n const column5 = 'Номер договора'\r\n const column6 = 'Дата договора'\r\n const column7 = 'Поставщик'\r\n const column8 = 'Заказчик'\r\n const column9 = 'Подписан поставщиком'\r\n const column10 = 'Подписан заказчиком'\r\n const column11 = 'Отклонён закачиком'\r\n\r\n let excelData = []\r\n\r\n let invoiceMetaRow = {}\r\n invoiceMetaRow[column1] = invoiceInfo.shipment.deliveryAddress\r\n invoiceMetaRow[column2] = invoiceInfo.number\r\n invoiceMetaRow[column3] = invoiceInfo.date.format('DD.MM.YYYY');\r\n invoiceMetaRow[column4] = invoiceInfo.total;\r\n invoiceMetaRow[column5] = invoiceInfo.contractNumber;\r\n invoiceMetaRow[column6] = invoiceInfo.contractDate.format('DD.MM.YYYY');\r\n invoiceMetaRow[column7] = invoiceInfo.executorDetails.name\r\n invoiceMetaRow[column8] = invoiceInfo.customerDetails.name\r\n invoiceMetaRow[column9] = invoiceInfo.isExecutorApproved ? 'Да' : 'Нет'\r\n invoiceMetaRow[column10] = invoiceInfo.isCustomerApproved ? 'Да' : 'Нет'\r\n invoiceMetaRow[column11] = invoiceInfo.shipment.isDeclined ? 'Да' : 'Нет'\r\n excelData.push(invoiceMetaRow)\r\n\r\n // empty row\r\n excelData.push({})\r\n\r\n let itemsHeaderRow = {}\r\n itemsHeaderRow[column1] = '№'\r\n itemsHeaderRow[column2] = 'Товар'\r\n itemsHeaderRow[column3] = 'Ед.изм'\r\n itemsHeaderRow[column4] = 'Количество'\r\n itemsHeaderRow[column5] = 'Цена за единицу'\r\n itemsHeaderRow[column6] = 'Стоимость'\r\n itemsHeaderRow[column7] = 'НДС ставка'\r\n itemsHeaderRow[column8] = 'НДС сумма'\r\n itemsHeaderRow[column9] = 'Сумма с НДС'\r\n itemsHeaderRow[column10] = ''\r\n itemsHeaderRow[column11] = ''\r\n excelData.push(itemsHeaderRow)\r\n\r\n\r\n _.each(invoiceInfo.items, (item, index) => {\r\n let itemRow = {}\r\n\r\n itemRow[column1] = ` ${index + 1}`\r\n itemRow[column2] = item.product\r\n itemRow[column3] = item.measurement\r\n itemRow[column4] = item.quantity\r\n itemRow[column5] = item.price\r\n itemRow[column6] = item.total\r\n itemRow[column7] = item.ndsRate\r\n itemRow[column8] = item.ndsValue\r\n itemRow[column9] = item.totalWithNds\r\n itemRow[column10] = ''\r\n itemRow[column11] = ''\r\n\r\n excelData.push(itemRow)\r\n })\r\n\r\n jsonDataToExcel(excelData, `Счёт-фактура ${invoiceInfo.number} от ${invoiceInfo.date.format('DD-MM-YYYY')} в ${invoiceInfo.shipment.deliveryAddress} на ${invoiceInfo.total} сум.xlsx`)\r\n\r\n resolve()\r\n }, reject)\r\n })\r\n }\r\n\r\n downloadExcelAll(params, onEachInvoiceInfoComplete) {\r\n return new Promise((resolve, reject) => {\r\n\r\n this.getAllbox(params)\r\n .then(response => {\r\n if (typeof (onEachInvoiceInfoComplete) === 'function')\r\n onEachInvoiceInfoComplete();\r\n\r\n const column0 = '№'\r\n const column1 = 'Магазин'\r\n const column2 = 'Номер'\r\n const column3 = 'Дата'\r\n const column4 = 'Сумма'\r\n const column5 = 'Номер договора'\r\n const column6 = 'Дата договора'\r\n const column7 = 'Поставщик'\r\n const column8 = 'Заказчик'\r\n const column9 = 'Подписан поставщиком'\r\n const column10 = 'Подписан заказчиком'\r\n const column11 = 'Отклонён закачиком'\r\n\r\n let excelData = []\r\n _.each(response.data.Records, (invoiceRecord, index) => {\r\n if (typeof (onEachInvoiceInfoComplete) === 'function')\r\n onEachInvoiceInfoComplete();\r\n\r\n const invoice = mappers.mapInvoice(invoiceRecord)\r\n\r\n let invoiceMetaRow = {}\r\n invoiceMetaRow[column0] = `${index + 1}`\r\n invoiceMetaRow[column1] = invoice.shipment.deliveryAddress\r\n invoiceMetaRow[column2] = invoice.number;\r\n invoiceMetaRow[column3] = invoice.date.format('DD.MM.YYYY');\r\n invoiceMetaRow[column4] = invoice.total;\r\n invoiceMetaRow[column5] = invoice.contractNumber\r\n invoiceMetaRow[column6] = invoice.contractDate.format('DD.MM.YYYY');\r\n invoiceMetaRow[column7] = invoice.executorDetails.name\r\n invoiceMetaRow[column8] = invoice.customerDetails.name\r\n invoiceMetaRow[column9] = invoice.isExecutorApproved ? 'Да' : 'Нет'\r\n invoiceMetaRow[column10] = invoice.isCustomerApproved ? 'Да' : 'Нет'\r\n invoiceMetaRow[column11] = invoice.shipment.isDeclined ? 'Да' : 'Нет'\r\n excelData.push(invoiceMetaRow)\r\n })\r\n\r\n jsonDataToExcel(excelData, `Реестр счёт-фактур.xlsx`)\r\n\r\n resolve()\r\n }, reject)\r\n })\r\n }\r\n downloadExcelAllWithItems(params, onEachInvoiceInfoComplete) {\r\n this.getAllbox(params)\r\n .then(response => {\r\n const invoices = _.map(response.data.Records, invoiceViewModel => {\r\n return mappers.mapInvoice(invoiceViewModel)\r\n })\r\n const loadInvoicePromices = []\r\n _.each(invoices, invoice => {\r\n loadInvoicePromices.push(this.getInfo(invoice.id).finally(() => {\r\n if (typeof (onEachInvoiceInfoComplete) === 'function')\r\n onEachInvoiceInfoComplete();\r\n }))\r\n })\r\n Promise.all(loadInvoicePromices).then(invoiceInfoPromiseResults => {\r\n const column0 = '№'\r\n const column1 = 'Магазин'\r\n const column2 = 'Номер'\r\n const column3 = 'Дата'\r\n //\r\n const column4 = 'Номер договора'\r\n const column5 = 'Дата договора'\r\n const column6 = 'Поставщик'\r\n const column7 = 'Заказчик'\r\n const column8 = 'Подписан поставщиком'\r\n const column9 = 'Подписан заказчиком'\r\n const column10 = 'Отклонён закачиком'\r\n const column11 = \"Товар\"\r\n const column12 = \"Количество\"\r\n const column13 = \"Ед.изм\"\r\n const column14 = \"Цена за единицу без НДС\"\r\n const column15 = \"Стоимость без НДС\"\r\n const column16 = \"НДС ставка\"\r\n const column17 = \"НДС сумма\"\r\n const column18 = 'Общая сумма'\r\n let excelData = []\r\n let index = 0\r\n _.each(invoiceInfoPromiseResults, invoiceInfoPromiseResult => {\r\n _.each(invoiceInfoPromiseResult.data.Items, invoiceItem => {\r\n let invoiceMetaRow = {}\r\n window.console.log(invoiceItem)\r\n invoiceMetaRow[column0] = `${index + 1}`\r\n invoiceMetaRow[column1] = invoiceInfoPromiseResult.data.Shipment.DeliveryAddress\r\n invoiceMetaRow[column2] = invoiceInfoPromiseResult.data.Number;\r\n invoiceMetaRow[column3] = moment(invoiceInfoPromiseResult.data.Date).format('DD.MM.YYYY');\r\n invoiceMetaRow[column4] = invoiceInfoPromiseResult.data.ContractNumber;\r\n invoiceMetaRow[column5] = moment(invoiceInfoPromiseResult.data.ContractDate).format('DD.MM.YYYY');\r\n invoiceMetaRow[column6] = invoiceInfoPromiseResult.data.ExecutorDetail.Name\r\n invoiceMetaRow[column7] = invoiceInfoPromiseResult.data.CustomerDetail.Name\r\n invoiceMetaRow[column8] = invoiceInfoPromiseResult.data.IsExecutorApproved ? 'Да' : 'Нет'\r\n invoiceMetaRow[column9] = invoiceInfoPromiseResult.data.IsCustomerApproved ? 'Да' : 'Нет'\r\n invoiceMetaRow[column10] = invoiceInfoPromiseResult.data.Shipment.IsDeclined ? 'Да' : 'Нет'\r\n invoiceMetaRow[column11] = invoiceItem.Product\r\n invoiceMetaRow[column12] = invoiceItem.Quantity\r\n invoiceMetaRow[column13] = invoiceItem.Measurement\r\n invoiceMetaRow[column14] = invoiceItem.Price\r\n invoiceMetaRow[column15] = invoiceItem.Total\r\n invoiceMetaRow[column16] = invoiceItem.NdsRate\r\n invoiceMetaRow[column17] = invoiceItem.NdsValue\r\n invoiceMetaRow[column18] = invoiceItem.TotalWithNds\r\n excelData.push(invoiceMetaRow)\r\n })\r\n index++\r\n })\r\n jsonDataToExcel(excelData, `Реестр счёт-фактур.xlsx`)\r\n }).catch(error => {\r\n window.console.log(error)\r\n })\r\n })\r\n }\r\n delete(invoiceId,data) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n return axios.put(`${APIHOST}/api/DeleteInvoice`, data,{\r\n params: {\r\n id: invoiceId\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n roamingInboxInvoiceDocumentsMeta({ limit, skip, contractor, invoiceNumber, invoiceDate }) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/RoamingInboxInvoiceMeta`, {\r\n params: {\r\n skip: skip,\r\n limit: limit,\r\n contractor: typeof (contractor) === 'undefined' ? null : contractor,\r\n invoiceNumber: typeof (invoiceNumber) === 'undefined' ? null : invoiceNumber,\r\n invoiceDate: invoiceDate ? invoiceDate.format(MOMENT_API_DATE_FORMAT) : null\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n roamingIncomeSignedDocumentsMeta({ limit, skip, contractor, invoiceNumber, invoiceDate, signedDate, branch }) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/KorzinkaRoamingIncomeSignedBox`, {\r\n params: {\r\n skip: skip,\r\n limit: limit,\r\n contractor: typeof (contractor) === 'undefined' ? null : contractor,\r\n invoiceNumber: typeof (invoiceNumber) === 'undefined' ? null : invoiceNumber,\r\n invoiceDate: invoiceDate ? invoiceDate.format(MOMENT_API_DATE_FORMAT) : null,\r\n signedDate: signedDate ? signedDate.format(MOMENT_API_DATE_FORMAT) : null,\r\n branch: branch\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n downloadRoamingIncomeSignedGreenList({ limit, skip, contractor, invoiceNumber, invoiceDate, signedDate, branch, serial }) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n let promise = axios.get(`${APIHOST}/api/RoamingIncomeGreenList`, {\r\n params: {\r\n skip: skip,\r\n limit: limit,\r\n contractor: typeof (contractor) === 'undefined' ? null : contractor,\r\n invoiceNumber: typeof (invoiceNumber) === 'undefined' ? null : invoiceNumber,\r\n invoiceDate: invoiceDate ? invoiceDate.format(MOMENT_API_DATE_FORMAT) : null,\r\n signedDate: signedDate ? signedDate.format(MOMENT_API_DATE_FORMAT) : null,\r\n branch: branch,\r\n serial: serial ? serial : null\r\n },\r\n responseType: 'blob',\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n\r\n promise.then(response => {\r\n const blob = new Blob([response.data]);\r\n const url = window.URL.createObjectURL(blob);\r\n const link = document.createElement('a');\r\n link.href = url;\r\n link.setAttribute('download', `greenlist_${(new Date()).getTime()}.csv`);\r\n document.body.appendChild(link);\r\n link.click();\r\n link.remove();\r\n window.URL.revokeObjectURL(url);\r\n });\r\n\r\n return promise;\r\n }\r\n\r\n roamingOutgoSignedDocumentsMeta({ limit, skip, contractor, invoiceNumber, invoiceDate, signedDate, branch }) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/KorzinkaRoamingOutgoSignedBox`, {\r\n params: {\r\n skip: skip,\r\n limit: limit,\r\n contractor: typeof (contractor) === 'undefined' ? null : contractor,\r\n invoiceNumber: typeof (invoiceNumber) === 'undefined' ? null : invoiceNumber,\r\n invoiceDate: invoiceDate ? invoiceDate.format(MOMENT_API_DATE_FORMAT) : null,\r\n signedDate: signedDate ? signedDate.format(MOMENT_API_DATE_FORMAT) : null,\r\n branch: branch\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n downloadRoamingOutgoSignedGreenList({ limit, skip, contractor, invoiceNumber, invoiceDate, signedDate, branch, serial }) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n let promise = axios.get(`${APIHOST}/api/RoamingOutgoGreenList`, {\r\n params: {\r\n skip: skip,\r\n limit: limit,\r\n contractor: typeof (contractor) === 'undefined' ? null : contractor,\r\n invoiceNumber: typeof (invoiceNumber) === 'undefined' ? null : invoiceNumber,\r\n invoiceDate: invoiceDate ? invoiceDate.format(MOMENT_API_DATE_FORMAT) : null,\r\n signedDate: signedDate ? signedDate.format(MOMENT_API_DATE_FORMAT) : null,\r\n branch: branch,\r\n serial: serial ? serial : null\r\n },\r\n responseType: 'blob',\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n\r\n promise.then(response => {\r\n const blob = new Blob([response.data]);\r\n const url = window.URL.createObjectURL(blob);\r\n const link = document.createElement('a');\r\n link.href = url;\r\n link.setAttribute('download', `greenlist_${(new Date()).getTime()}.csv`);\r\n document.body.appendChild(link);\r\n link.click();\r\n link.remove();\r\n window.URL.revokeObjectURL(url);\r\n });\r\n\r\n return promise;\r\n }\r\n\r\n roamingIncomeMatchDocumentsMeta({ limit, skip, contractor, invoiceNumber, invoiceDate, branch }) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/KorzinkaRoamingIncomeMatchBox`, {\r\n params: {\r\n skip: skip,\r\n limit: limit,\r\n contractor: typeof (contractor) === 'undefined' ? null : contractor,\r\n invoiceNumber: typeof (invoiceNumber) === 'undefined' ? null : invoiceNumber,\r\n invoiceDate: invoiceDate ? invoiceDate.format(MOMENT_API_DATE_FORMAT) : null,\r\n branch: branch\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n roamingIncomeHalfMatchDocumentsMeta({ limit, skip, contractor, invoiceNumber, invoiceDate, branch }) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/KorzinkaRoamingIncomeHalfMatchBox`, {\r\n params: {\r\n skip: skip,\r\n limit: limit,\r\n contractor: typeof (contractor) === 'undefined' ? null : contractor,\r\n invoiceNumber: typeof (invoiceNumber) === 'undefined' ? null : invoiceNumber,\r\n invoiceDate: invoiceDate ? invoiceDate.format(MOMENT_API_DATE_FORMAT) : null,\r\n branch: branch\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n roamingOutgoMatchDocumentsMeta({ limit, skip, contractor, invoiceNumber, invoiceDate, branch }) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n\r\n return axios.get(`${APIHOST}/api/KorzinkaRoamingOutgoMatchBox`, {\r\n params: {\r\n skip: skip,\r\n limit: limit,\r\n contractor: typeof (contractor) === 'undefined' ? null : contractor,\r\n invoiceNumber: typeof (invoiceNumber) === 'undefined' ? null : invoiceNumber,\r\n invoiceDate: invoiceDate ? invoiceDate.format(MOMENT_API_DATE_FORMAT) : null,\r\n branch: branch\r\n },\r\n headers: {\r\n 'Authorization': `Bearer ${oAuthAccess.access_token}`\r\n }\r\n });\r\n }\r\n\r\n getItemCatalogs({ limit, search }) {\r\n return axios.get(`${APIHOST}/api/InvoiceItemCatalog`, {\r\n params: {\r\n limit: limit ? +limit : null,\r\n q: (typeof (search) === \"undefined\" || search === null) ? \"\" : search\r\n }\r\n })\r\n }\r\n}\r\n\r\nexport default new InvoiceService();\r\n","export const Success = 0\r\nexport const BalanceIsLow = 1\r\nexport const NoAccess = 2\r\nexport const SignatureValidationFailed = 3\r\nexport const InternalError = 4\r\nexport const OfferNotSigned = 5\r\nexport const NotAllowedNow = 6\r\nexport const CreditLimitIsLow = 7\r\nexport const RoamingSignatureEmpty = 8\r\nexport const RoamingSignatureValidationFailed = 9\r\nexport const RoamingServiceProcessingError = 10\r\nexport const UnknownError = -1","export const SET_CHECKED_SHOW_BUTTON_ZERO = \"SET_CHECKED_SHOW_BUTTON_ZERO\";\r\nexport const SET_DATE_DISPLAY_FORMAT = 'SET_DATE_DISPLAY_FORMAT'","export default class {\r\n _id;\r\n _name;\r\n\r\n get id() {\r\n return this._id\r\n }\r\n\r\n set id(value) {\r\n this._id = value;\r\n }\r\n\r\n get name() {\r\n return this._name;\r\n }\r\n\r\n set name(value) {\r\n return this._name = value;\r\n }\r\n\r\n constructor(id, name) {\r\n this._id = id\r\n this._name = name\r\n }\r\n}","import OrderProductNameDefineMethodStrategy from \"@/domain/OrderProductNameDefineMethodStrategy\";\r\n\r\nexport const DefineByExecutor = new OrderProductNameDefineMethodStrategy(0,\"Определяется поставщиком\")\r\nexport const DefinedInOrder = new OrderProductNameDefineMethodStrategy(1, \"Установлен в заказе\")","export default class {\r\n _id\r\n _name\r\n\r\n get id() {\r\n return this._id\r\n }\r\n\r\n set id(value) {\r\n this._id = value\r\n }\r\n\r\n get name() {\r\n return this._name\r\n }\r\n\r\n set name(value) {\r\n this._name = value\r\n }\r\n\r\n constructor(id, name) {\r\n this._id = id\r\n this._name = name\r\n }\r\n}","import OrderContractDefineMethodStrategy from \"@/domain/OrderContractDefineMethodStrategy\";\r\n\r\nexport const DefineByExecutor = new OrderContractDefineMethodStrategy(0, \"Определяется поставщиком\");\r\nexport const DefineInOrder = new OrderContractDefineMethodStrategy(1, \"Установлен в заказе\");","import XLSX from \"xlsx\";\r\n\r\nexport function jsonDataToExcel(data, filename) {\r\n let dataWS = XLSX.utils.json_to_sheet(data);\r\n let wb = XLSX.utils.book_new();\r\n XLSX.utils.book_append_sheet(wb, dataWS, 'data');\r\n\r\n filename = filename ? filename : 'data.xlsx'\r\n XLSX.writeFile(wb, filename);\r\n}\r\n\r\nexport function multipleJsonDataToExcel(dataOne, dataTwo) {\r\n let worksheet_tmp1 = XLSX.utils.json_to_sheet(dataOne);\r\n let worksheet_tmp2 = XLSX.utils.json_to_sheet(dataTwo);\r\n\r\n let a = XLSX.utils.sheet_to_json(worksheet_tmp1, {header: 1});\r\n let b = XLSX.utils.sheet_to_json(worksheet_tmp2, {header: 1});\r\n\r\n a = a.concat(['']).concat(b);\r\n let worksheet = XLSX.utils.json_to_sheet(a, {skipHeader: true});\r\n\r\n const new_workbook = XLSX.utils.book_new();\r\n\r\n XLSX.utils.book_append_sheet(new_workbook, worksheet, \"worksheet\");\r\n XLSX.writeFile(new_workbook, 'order.xlsx')\r\n}\r\n","export const AUTH_LOAD_COMPANY_BILLING_INFO = 'AUTH_LOAD_COMPANY_BILLING_INFO'\r\nexport const AUTH_LOGGED_IN = 'AUTH_LOGGED_IN'","import axios from 'axios'\r\nimport { APIHOST } from \"@/settings\";\r\nimport SessionStorage from \"sessionstorage\";\r\n\r\nclass BranchService {\r\n getAll() {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n return axios.get(`${APIHOST}/api/branch`, {\r\n headers: { 'Authorization': `Bearer ${oAuthAccess.access_token}` }\r\n })\r\n }\r\n\r\n getCompanyBranches(inn) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n return axios.get(`${APIHOST}/api/branch`, {\r\n headers: { 'Authorization': `Bearer ${oAuthAccess.access_token}` },\r\n params: {id: inn}\r\n })\r\n }\r\n}\r\n\r\nexport default new BranchService();","export const EVENT_AUTH_LOGGED_IN = 'EVENT_AUTH_LOGGED_IN'\r\nexport const EVENT_AUTH_LOGOUT = 'EVENT_AUTH_LOGOUT'\r\n\r\n\r\nexport const CompanyAttorneyAdded = 'CompanyAttorneyAdded';\r\nexport const CompanyAttorneyEdited = 'CompanyAttorneyEdited';\r\nexport const CompanyAttorneyDeleted = 'CompanyAttorneyDeleted';\r\n\r\nexport const SignSuccess = 'SignSuccess'\r\nexport const SignGetHashCodeFailed = 'SignGetHashCodeFailed'\r\nexport const SignGotInvalidHashCode = 'SignGotInvalidHashCode'\r\nexport const SignEimzoFailed = 'SignEimzoFailed'\r\nexport const SignBalanceLowFailed = 'SignBalanceLowFailed'\r\nexport const SignCreditLimitIsLowFailed = 'SignCreditLimitIsLowFailed'\r\nexport const SignSignatureValidationFailed = 'SignSignatureValidationFailed'\r\nexport const SignRoamingSignatureValidationFailed = 'SignRoamingSignatureValidationFailed'\r\nexport const SignRoamingServiceProcessingFailed = 'SignRoamingServiceProcessingFailed'\r\nexport const SignUnknownErrorFailed = 'SignUnknownErrorFailed'\r\n\r\nexport const TriggerOpenContacts = 'TriggerOpenContacts'","export const LAYOUT_LOADING_START = 'LAYOUT_LOADING_START'\r\nexport const LAYOUT_LOADING_STOP = 'LAYOUT_LOADING_STOP'","export default class {\r\n _id\r\n _name\r\n\r\n get id() {\r\n return this._id\r\n }\r\n\r\n set id(value) {\r\n this._id = value\r\n }\r\n\r\n get name() {\r\n return this._name\r\n }\r\n\r\n set name(value) {\r\n return this._name = value\r\n }\r\n\r\n constructor(id, name) {\r\n this._id = id\r\n this._name = name\r\n }\r\n}","import OrderItemQuantityLimitStrategy from \"@/domain/OrderItemQuantityLimitStrategy\";\r\n\r\nexport const NoLimit = new OrderItemQuantityLimitStrategy(0, \"Установлен в заказе\")\r\nexport const SumLimit = new OrderItemQuantityLimitStrategy(1, \"Суммарно не превышать заказ\")\r\n","export const MOMENT_API_DATE_FORMAT = 'YYYY-MM-DD';\r\nexport const MOMENT_API_DATE_TIME_FORMAT = 'YYYY-MM-DD HH:mm:ss'\r\nexport const MOMENT_API_DATETIME_FORMAT = 'YYYY-MM-DD HH:mm';\r\n\r\n\r\n// LOCAL SETTINGS\r\n/*export const APIHOST = 'http://localedi.faktura.uz';\r\nexport const AccountFakturaHostUrl = 'http://testaccount.faktura.uz';\r\nexport const AccountFakturaClientId = 'FakturaEDISystem';\r\nexport const SYSTEM_TERMS_FAILED_REDIRECT_URL = 'http://test.faktura.uz/ru/redirect/edi';\r\nexport const EIMZO_URL = 'ws://127.0.0.1:64646/service/cryptapi';\r\nexport const EIMZO_HOST = 'localhost';\r\nexport const EIMZO_API_KEY = '96D0C1491615C82B9A54D9989779DF825B690748224C2B04F500F370D51827CE2644D8D4A82C18184D73AB8530BB8ED537269603F61DB0D03D2104ABF789970B';\r\nexport const KORZINKA_INN = '302563857';\r\nexport const APP_FAKTURA_URL = 'http://test.faktura.uz';\r\nexport const APP_FAKTURA_LOGOUT_URL = 'http://testaccount.faktura.uz/logout';\r\nexport const INSTRUCTIONS_URL = '/Instructions_ru_2020_02_07.pdf';\r\nexport const INSTRUCTIONS_UZ_URL = '/Instructions_uz_2020_02_07.pdf';\r\nexport const APP_BILLING_PACKAGES_PATH = 'http://test.faktura.uz/ru/servicepackage/index';\r\nexport const APP_BILLING_PAYMENT_TEMPLATE_PATH = 'http://files.faktura.uz/Obrazec_plateshnogo_porucheniya.xls'\r\nexport const NotificationServiceSettings = {\r\n Host: \"http://localhost:8001\",\r\n TelegramBotUrl: \"https://t.me/FakturaEdiTestBot\"\r\n}\r\nexport const ContractServiceSettings = {\r\n Host: \"http://localhost:8102\",\r\n}*/\r\n\r\n// TEST SERVER SETTINGS\r\n/*export const APIHOST = 'https://stagingedi.faktura.uz';\r\nexport const AccountFakturaHostUrl = 'https://stagingaccount.faktura.uz';\r\nexport const AccountFakturaClientId = 'FakturaEDISystem';\r\nexport const SYSTEM_TERMS_FAILED_REDIRECT_URL = 'https://stagingapp.faktura.uz/ru/redirect/edi';\r\nexport const EIMZO_URL = 'wss://127.0.0.1:64443/service/cryptapi';\r\nexport const EIMZO_HOST = 'localhost';\r\nexport const EIMZO_API_KEY = '96D0C1491615C82B9A54D9989779DF825B690748224C2B04F500F370D51827CE2644D8D4A82C18184D73AB8530BB8ED537269603F61DB0D03D2104ABF789970B';\r\nexport const KORZINKA_INN = '489043363';\r\nexport const APP_FAKTURA_URL = 'https://stagingapp.faktura.uz';\r\nexport const APP_FAKTURA_LOGOUT_URL = 'https://stagingapp.faktura.uz/account/logout';\r\nexport const INSTRUCTIONS_URL = '/Instructions_ru_2020_02_07.pdf';\r\nexport const INSTRUCTIONS_UZ_URL = '/Instructions_uz_2020_02_07.pdf';\r\nexport const APP_BILLING_PACKAGES_PATH = 'http://stagingapp.faktura.uz/ru/servicepackage/index';\r\nexport const APP_BILLING_PAYMENT_TEMPLATE_PATH = 'http://files.faktura.uz/Obrazec_plateshnogo_porucheniya.xls'\r\nexport const NotificationServiceSettings = {\r\n Host: \"https://notificationedi.faktura.uz\",\r\n TelegramBotUrl: \"https://t.me/FakturaEDI_Bot\"\r\n}\r\nexport const ContractServiceSettings = {\r\n Host: \"https://stagingedicontract.faktura.uz\",\r\n}*/\r\n\r\n\r\n// LIVE SERVER SETTINGS\r\nexport const APIHOST = '';\r\nexport const AccountFakturaHostUrl = 'https://account.faktura.uz';\r\nexport const AccountFakturaClientId = 'FakturaEDISystem';\r\nexport const SYSTEM_TERMS_FAILED_REDIRECT_URL = 'https://app.faktura.uz/ru/redirect/edi';\r\nexport const EIMZO_URL = 'wss://127.0.0.1:64443/service/cryptapi';\r\nexport const EIMZO_HOST = 'edi.faktura.uz';\r\nexport const EIMZO_API_KEY = 'F584DDDBF4B3974962916BC3D91891F797A7E6F653A99A83832D6E186DCCDAAB5277DFA2276D76A0C48E4D2D895F089A7F07A3C9901F6C266DD2A1107DB34E6B';\r\nexport const KORZINKA_INN = '202099756';\r\nexport const APP_FAKTURA_URL = 'https://app.faktura.uz';\r\nexport const APP_FAKTURA_LOGOUT_URL = 'https://app.faktura.uz/ru/account/logout';\r\nexport const INSTRUCTIONS_URL = '/Instructions_ru_2020_02_07.pdf';\r\nexport const INSTRUCTIONS_UZ_URL = '/Instructions_uz_2020_02_07.pdf';\r\nexport const APP_BILLING_PACKAGES_PATH = 'https://app.faktura.uz/servicepackage/index';\r\nexport const APP_BILLING_PAYMENT_TEMPLATE_PATH = 'http://files.faktura.uz/Obrazec_plateshnogo_porucheniya.xls'\r\nexport const NotificationServiceSettings = {\r\n Host: \"https://notificationedi.faktura.uz\",\r\n TelegramBotUrl: \"https://t.me/FakturaEDI_Bot\"\r\n}\r\nexport const ContractServiceSettings = {\r\n Host: \"https://contractedi.faktura.uz\",\r\n}\r\n","export default class {\r\n _id;\r\n _name;\r\n\r\n get id() {\r\n return this._id;\r\n }\r\n\r\n set id(value) {\r\n this._id = value;\r\n }\r\n\r\n get name() {\r\n return this._name;\r\n }\r\n\r\n set name(value) {\r\n this._name = value;\r\n }\r\n\r\n constructor(id, name) {\r\n this._id = id;\r\n this._name = name;\r\n }\r\n}","import OrderExecutorEditStrategy from \"@/domain/OrderExecutorEditStrategy\";\r\n\r\nexport const Disabled = new OrderExecutorEditStrategy(0, 'Без редактирования')\r\nexport const All = new OrderExecutorEditStrategy(1, 'Полное редактирование')\r\nexport const ItemQuantityToLowerValueOnly = new OrderExecutorEditStrategy(2, 'Только количество и в меньшую сторону')","import SessionStorage from \"sessionstorage\";\r\nimport axios from \"axios\";\r\nimport {ContractServiceSettings} from \"@/settings\";\r\n\r\nclass SendContractApproveService {\r\n getAllByCustomer() {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n return axios.get(`${ContractServiceSettings.Host}/api/edi/send-contract-approve-customer`, {\r\n headers: {'Authorization': `Bearer ${oAuthAccess.access_token}`}\r\n })\r\n }\r\n\r\n getOneByExecutor(id) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n return axios.get(`${ContractServiceSettings.Host}/api/edi/send-contract-approve-executor/${id}`, {\r\n headers: {'Authorization': `Bearer ${oAuthAccess.access_token}`}\r\n })\r\n }\r\n\r\n getAllByExecutor() {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n return axios.get(`${ContractServiceSettings.Host}/api/edi/send-contract-approve-executor`, {\r\n headers: {'Authorization': `Bearer ${oAuthAccess.access_token}`}\r\n })\r\n }\r\n\r\n add({executorInn, executorName, customerInn, customerName, uid, header}) {\r\n const oAuthAccess = JSON.parse(SessionStorage.getItem('auth_token'));\r\n return axios.post(`${ContractServiceSettings.Host}/api/edi/send-contract-approve-customer`, {\r\n executor_inn: executorInn,\r\n executor_name: executorName,\r\n customer_inn: customerInn,\r\n customer_name: customerName,\r\n uid: uid ? uid : null,\r\n header: header\r\n }, {\r\n headers: {'Authorization': `Bearer ${oAuthAccess.access_token}`}\r\n })\r\n }\r\n}\r\n\r\nexport default new SendContractApproveService()","import Vue from 'vue'\r\nconst eventBus = new Vue();\r\n\r\nVue.use({\r\n install (Vue) {\r\n Vue.prototype.$bus = eventBus\r\n }\r\n});\r\n\r\nexport default eventBus","import {InvoiceDeleted} from \"@/enum/InvoiceStatus\";\r\n\r\nexport default class {\r\n _id;\r\n _order;\r\n\r\n _status;\r\n _invoices;\r\n\r\n _number;\r\n _date;\r\n _waybillNumber;\r\n _waybillDate;\r\n _contractNumber;\r\n _contractDate;\r\n _createdOn;\r\n _isAccepted;\r\n _acceptedOn;\r\n _isDeclined;\r\n _lastDeclinedOn;\r\n _total;\r\n _totalInWords;\r\n\r\n _customerInn;\r\n _customerName;\r\n _consigneeInn;\r\n _consigneeName;\r\n _deliveryAddress;\r\n _loadingAddress;\r\n\r\n _driverName;\r\n _carSerial;\r\n _carModel;\r\n\r\n _isTrailer;\r\n _isSemiTrailer;\r\n _trailerSerial;\r\n _trailerModel;\r\n _deliveryDateTime;\r\n\r\n\r\n get id() {\r\n return this._id\r\n }\r\n\r\n set id(value) {\r\n this._id = value\r\n }\r\n\r\n get order() {\r\n return this._order\r\n }\r\n\r\n set order(value) {\r\n this._order = value\r\n }\r\n\r\n get status() {\r\n return this._status\r\n }\r\n\r\n set status(value) {\r\n this._status = value\r\n }\r\n\r\n get number() {\r\n return this._number\r\n }\r\n\r\n set number(value) {\r\n this._number = value\r\n }\r\n\r\n get date() {\r\n return this._date\r\n }\r\n\r\n set date(value) {\r\n this._date = value\r\n }\r\n\r\n get waybillNumber() {\r\n return this._waybillNumber\r\n }\r\n\r\n set waybillNumber(value) {\r\n this._waybillNumber = value\r\n }\r\n\r\n get waybillDate() {\r\n return this._waybillDate\r\n }\r\n\r\n set waybillDate(value) {\r\n this._waybillDate = value\r\n }\r\n\r\n get contractNumber() {\r\n return this._contractNumber\r\n }\r\n\r\n set contractNumber(value) {\r\n this._contractNumber = value\r\n }\r\n\r\n get contractDate() {\r\n return this._contractDate\r\n }\r\n\r\n set contractDate(value) {\r\n this._contractDate = value\r\n }\r\n\r\n get createdOn() {\r\n return this._createdOn\r\n }\r\n\r\n set createdOn(value) {\r\n this._createdOn = value\r\n }\r\n\r\n get isAccepted() {\r\n return this._isAccepted\r\n }\r\n\r\n set isAccepted(value) {\r\n this._isAccepted = value\r\n }\r\n\r\n get acceptedOn() {\r\n return this._acceptedOn\r\n }\r\n\r\n set acceptedOn(value) {\r\n this._acceptedOn = value\r\n }\r\n\r\n get isDeclined() {\r\n return this._isDeclined\r\n }\r\n\r\n set isDeclined(value) {\r\n this._isDeclined = value\r\n }\r\n\r\n get lastDeclinedOn() {\r\n return this._lastDeclinedOn\r\n }\r\n\r\n set lastDeclinedOn(value) {\r\n this._lastDeclinedOn = value\r\n }\r\n\r\n get total() {\r\n return this._total\r\n }\r\n\r\n set total(value) {\r\n this._total = value\r\n }\r\n\r\n get totalInWords() {\r\n return this._totalInWords\r\n }\r\n\r\n set totalInWords(value) {\r\n this._totalInWords = value\r\n }\r\n\r\n get customerInn() {\r\n return this._customerInn\r\n }\r\n\r\n set customerInn(value) {\r\n this._customerInn = value\r\n }\r\n\r\n get customerName() {\r\n return this._customerName\r\n }\r\n\r\n set customerName(value) {\r\n this._customerName = value\r\n }\r\n\r\n get consigneeInn() {\r\n return this._consigneeInn\r\n }\r\n\r\n set consigneeInn(value) {\r\n this._consigneeInn = value\r\n }\r\n\r\n get consigneeName() {\r\n return this._consigneeName\r\n }\r\n\r\n set consigneeName(value) {\r\n this._consigneeName = value\r\n }\r\n\r\n get deliveryAddress() {\r\n return this._deliveryAddress\r\n }\r\n\r\n set deliveryAddress(value) {\r\n this._deliveryAddress = value\r\n }\r\n\r\n get loadingAddress() {\r\n return this._loadingAddress\r\n }\r\n\r\n set loadingAddress(value) {\r\n this._loadingAddress = value\r\n }\r\n\r\n get driverName() {\r\n return this._driverName\r\n }\r\n\r\n set driverName(value) {\r\n this._driverName = value\r\n }\r\n\r\n get carSerial() {\r\n return this._carSerial\r\n }\r\n\r\n set carSerial(value) {\r\n this._carSerial = value\r\n }\r\n\r\n get carModel() {\r\n return this._carModel\r\n }\r\n\r\n set carModel(value) {\r\n this._carModel = value\r\n }\r\n\r\n get isTrailer() {\r\n return this._isTrailer\r\n }\r\n\r\n set isTrailer(value) {\r\n this._isTrailer = value\r\n }\r\n\r\n get isSemiTrailer() {\r\n return this._isSemiTrailer\r\n }\r\n\r\n set isSemiTrailer(value) {\r\n this._isSemiTrailer = value\r\n }\r\n\r\n get trailerSerial() {\r\n return this._trailerSerial\r\n }\r\n\r\n set trailerSerial(value) {\r\n this._trailerSerial = value\r\n }\r\n\r\n get trailerModel() {\r\n return this._trailerModel\r\n }\r\n\r\n set trailerModel(value) {\r\n this._trailerModel = value\r\n }\r\n\r\n get deliveryDateTime() {\r\n return this._deliveryDateTime\r\n }\r\n\r\n set deliveryDateTime(value) {\r\n this._deliveryDateTime = value\r\n }\r\n\r\n get invoices() {\r\n return this._invoices\r\n }\r\n\r\n set invoices(value) {\r\n this._invoices = value\r\n }\r\n\r\n get invoice() {\r\n return this._invoices.find(x => x.status !== InvoiceDeleted) || null\r\n }\r\n}","export default class {\r\n _inn;\r\n _name;\r\n _address;\r\n _phone;\r\n _bankAccountNumber;\r\n _bankName;\r\n _bankMfo;\r\n _oked;\r\n _okonx;\r\n _ndsRegistrationCode;\r\n\r\n\r\n get inn() {\r\n return this._inn\r\n }\r\n\r\n set inn(value) {\r\n this._inn = value\r\n }\r\n\r\n get name() {\r\n return this._name\r\n }\r\n\r\n set name(value) {\r\n this._name = value\r\n }\r\n\r\n get address() {\r\n return this._address\r\n }\r\n\r\n set address(value) {\r\n this._address = value\r\n }\r\n\r\n get phone() {\r\n return this._phone\r\n }\r\n\r\n set phone(value) {\r\n this._phone = value\r\n }\r\n\r\n get bankAccountNumber() {\r\n return this._bankAccountNumber\r\n }\r\n\r\n set bankAccountNumber(value) {\r\n this._bankAccountNumber = value\r\n }\r\n\r\n get bankName() {\r\n return this._bankName\r\n }\r\n\r\n set bankName(value) {\r\n this._bankName = value\r\n }\r\n\r\n get bankMfo() {\r\n return this._bankMfo\r\n }\r\n\r\n set bankMfo(value) {\r\n this._bankMfo = value\r\n }\r\n\r\n get oked() {\r\n return this._oked\r\n }\r\n\r\n set oked(value) {\r\n this._oked = value\r\n }\r\n\r\n get okonx() {\r\n return this._okonx\r\n }\r\n\r\n set okonx(value) {\r\n this._okonx = value\r\n }\r\n\r\n get ndsRegistrationCode() {\r\n return this._ndsRegistrationCode\r\n }\r\n\r\n set ndsRegistrationCode(value) {\r\n this._ndsRegistrationCode = value\r\n }\r\n\r\n}","export default class {\r\n _id;\r\n _number;\r\n _date;\r\n _status;\r\n _correctDate;\r\n _correctDocumentUid;\r\n _correctNumber;\r\n _contractNumber;\r\n _contractDate;\r\n _createdOn;\r\n _isCustomerApproved;\r\n _customerApprovedOn;\r\n _isExecutorApproved;\r\n _executorApprovedOn;\r\n _executorDetails;\r\n _customerDetails;\r\n _total;\r\n _totalInWords;\r\n _executorDirector;\r\n _executorAccountant;\r\n _executorReleaser;\r\n _customerProxyNumber;\r\n _customerProxyDate;\r\n _customerProxyName;\r\n _shipment;\r\n\r\n\r\n get id() {\r\n return this._id\r\n }\r\n\r\n set id(value) {\r\n this._id = value\r\n }\r\n\r\n get number() {\r\n return this._number\r\n }\r\n\r\n set number(value) {\r\n this._number = value\r\n }\r\n\r\n get status() {\r\n return this._status\r\n }\r\n\r\n set status(value) {\r\n this._status = value\r\n }\r\n\r\n get date() {\r\n return this._date\r\n }\r\n\r\n set date(value) {\r\n this._date = value\r\n }\r\n\r\n get contractNumber() {\r\n return this._contractNumber\r\n }\r\n\r\n set contractNumber(value) {\r\n this._contractNumber = value\r\n }\r\n\r\n get contractDate() {\r\n return this._contractDate\r\n }\r\n\r\n set contractDate(value) {\r\n this._contractDate = value\r\n }\r\n\r\n get createdOn() {\r\n return this._createdOn\r\n }\r\n\r\n set createdOn(value) {\r\n this._createdOn = value\r\n }\r\n\r\n get isCustomerApproved() {\r\n return this._isCustomerApproved\r\n }\r\n\r\n set isCustomerApproved(value) {\r\n this._isCustomerApproved = value\r\n }\r\n\r\n get customerApprovedOn() {\r\n return this._customerApprovedOn\r\n }\r\n\r\n set customerApprovedOn(value) {\r\n this._customerApprovedOn = value\r\n }\r\n\r\n get isExecutorApproved() {\r\n return this._isExecutorApproved\r\n }\r\n\r\n set isExecutorApproved(value) {\r\n this._isExecutorApproved = value\r\n }\r\n\r\n get executorApprovedOn() {\r\n return this._executorApprovedOn\r\n }\r\n\r\n set executorApprovedOn(value) {\r\n this._executorApprovedOn = value\r\n }\r\n\r\n get executorDetails() {\r\n return this._executorDetails\r\n }\r\n\r\n set executorDetails(value) {\r\n this._executorDetails = value\r\n }\r\n\r\n get customerDetails() {\r\n return this._customerDetails\r\n }\r\n\r\n set customerDetails(value) {\r\n this._customerDetails = value\r\n }\r\n\r\n get total() {\r\n return this._total\r\n }\r\n\r\n set total(value) {\r\n this._total = value\r\n }\r\n\r\n get totalInWords() {\r\n return this._totalInWords\r\n }\r\n\r\n set totalInWords(value) {\r\n this._totalInWords = value\r\n }\r\n\r\n get executorDirector() {\r\n return this._executorDirector\r\n }\r\n\r\n set executorDirector(value) {\r\n this._executorDirector = value\r\n }\r\n\r\n get executorAccountant() {\r\n return this._executorAccountant\r\n }\r\n\r\n set executorAccountant(value) {\r\n this._executorAccountant = value\r\n }\r\n\r\n get executorReleaser() {\r\n return this._executorReleaser\r\n }\r\n\r\n set executorReleaser(value) {\r\n this._executorReleaser = value\r\n }\r\n\r\n get customerProxyNumber() {\r\n return this._customerProxyNumber\r\n }\r\n\r\n set customerProxyNumber(value) {\r\n this._customerProxyNumber = value\r\n }\r\n\r\n get customerProxyDate() {\r\n return this._customerProxyDate\r\n }\r\n\r\n set customerProxyDate(value) {\r\n this._customerProxyDate = value\r\n }\r\n\r\n get customerProxyName() {\r\n return this._customerProxyName\r\n }\r\n\r\n set customerProxyName(value) {\r\n this._customerProxyName = value\r\n }\r\n\r\n get shipment() {\r\n return this._shipment\r\n }\r\n\r\n set shipment(value) {\r\n this._shipment = value\r\n }\r\n\r\n get correctDate() {\r\n return this._correctDate\r\n }\r\n\r\n set correctDate(value) {\r\n this._correctDate = value\r\n }\r\n\r\n get correctDocumentUid() {\r\n return this._correctDocumentUid\r\n }\r\n\r\n set correctDocumentUid(value) {\r\n this._correctDocumentUid = value\r\n }\r\n\r\n get correctNumber() {\r\n return this._correctNumber\r\n }\r\n\r\n set correctNumber(value) {\r\n this._correctNumber = value\r\n }\r\n}","export default class {\r\n _id;\r\n _executorEditStrategy;\r\n _shipmentDeliveryDateStrategy;\r\n _executorCreateInvoiceStrategy;\r\n _shipmentDateMethodStrategy;\r\n _productNameDefineMethodStrategy;\r\n _contractDefineMethodStrategy;\r\n _itemQuantityLimitStrategy;\r\n _customerInn;\r\n _customerName;\r\n _executorInn;\r\n _executorName;\r\n _number;\r\n _date;\r\n _contractNumber;\r\n _contractDate;\r\n _expiresOn;\r\n _deliveryAddress;\r\n _branch;\r\n _createdOn;\r\n _isCustomerApproved;\r\n _customerApprovedOn;\r\n _isExecutorApproved;\r\n _executorApprovedOn;\r\n _isExecutorDeclined;\r\n _executorDeclinedOn;\r\n _isReturn;\r\n _returnNumber;\r\n _returnDate;\r\n _returnInvoiceId;\r\n _returnInvoiceNumber;\r\n _returnInvoiceDate;\r\n _isReturnInvoiceExecutorApproved;\r\n _isReturnInvoiceCustomerApproved;\r\n _isStopped;\r\n _stoppedOn;\r\n _status;\r\n _customerSystemId;\r\n _customerShipmentId;\r\n\r\n\r\n\r\n get id() {\r\n return this._id\r\n }\r\n\r\n set id(value) {\r\n this._id = value\r\n }\r\n\r\n get executorEditStrategy() {\r\n return this._executorEditStrategy\r\n }\r\n\r\n set executorEditStrategy(value) {\r\n this._executorEditStrategy = value\r\n }\r\n\r\n get shipmentDeliveryDateStrategy() {\r\n return this._shipmentDeliveryDateStrategy\r\n }\r\n\r\n set shipmentDeliveryDateStrategy(value) {\r\n this._shipmentDeliveryDateStrategy = value\r\n }\r\n\r\n get executorCreateInvoiceStrategy() {\r\n return this._executorCreateInvoiceStrategy\r\n }\r\n\r\n set executorCreateInvoiceStrategy(value) {\r\n this._executorCreateInvoiceStrategy = value\r\n }\r\n\r\n get shipmentDateMethodStrategy() {\r\n return this._shipmentDateMethodStrategy\r\n }\r\n\r\n set shipmentDateMethodStrategy(value) {\r\n this._shipmentDateMethodStrategy = value\r\n }\r\n\r\n get productNameDefineMethodStrategy() {\r\n return this._productNameDefineMethodStrategy\r\n }\r\n\r\n set productNameDefineMethodStrategy(value) {\r\n this._productNameDefineMethodStrategy = value\r\n }\r\n\r\n get contractDefineMethodStrategy() {\r\n return this._contractDefineMethodStrategy\r\n }\r\n\r\n set contractDefineMethodStrategy(value) {\r\n this._contractDefineMethodStrategy = value\r\n }\r\n\r\n get itemQuantityLimitStrategy() {\r\n return this._itemQuantityLimitStrategy\r\n }\r\n\r\n set itemQuantityLimitStrategy(value) {\r\n this._itemQuantityLimitStrategy = value\r\n }\r\n\r\n get customerInn() {\r\n return this._customerInn\r\n }\r\n\r\n set customerInn(value) {\r\n this._customerInn = value\r\n }\r\n\r\n get customerName() {\r\n return this._customerName\r\n }\r\n\r\n set customerName(value) {\r\n this._customerName = value\r\n }\r\n\r\n get executorInn() {\r\n return this._executorInn\r\n }\r\n\r\n set executorInn(value) {\r\n this._executorInn = value\r\n }\r\n\r\n get executorName() {\r\n return this._executorName\r\n }\r\n\r\n set executorName(value) {\r\n this._executorName = value\r\n }\r\n\r\n get number() {\r\n return this._number\r\n }\r\n\r\n set number(value) {\r\n this._number = value\r\n }\r\n\r\n get date() {\r\n return this._date\r\n }\r\n\r\n set date(value) {\r\n this._date = value\r\n }\r\n\r\n get contractNumber() {\r\n return this._contractNumber\r\n }\r\n\r\n set contractNumber(value) {\r\n this._contractNumber = value\r\n }\r\n\r\n get contractDate() {\r\n return this._contractDate\r\n }\r\n\r\n set contractDate(value) {\r\n this._contractDate = value\r\n }\r\n\r\n get expiresOn() {\r\n return this._expiresOn\r\n }\r\n\r\n set expiresOn(value) {\r\n this._expiresOn = value\r\n }\r\n\r\n get deliveryAddress() {\r\n return this._deliveryAddress\r\n }\r\n\r\n set deliveryAddress(value) {\r\n this._deliveryAddress = value\r\n }\r\n\r\n get branch() {\r\n return this._branch\r\n }\r\n\r\n set branch(value) {\r\n this._branch = value\r\n }\r\n\r\n get createdOn() {\r\n return this._createdOn\r\n }\r\n\r\n set createdOn(value) {\r\n this._createdOn = value\r\n }\r\n\r\n get isCustomerApproved() {\r\n return this._isCustomerApproved\r\n }\r\n\r\n set isCustomerApproved(value) {\r\n this._isCustomerApproved = value\r\n }\r\n\r\n get customerApprovedOn() {\r\n return this._customerApprovedOn\r\n }\r\n\r\n set customerApprovedOn(value) {\r\n this._customerApprovedOn = value\r\n }\r\n\r\n get isExecutorApproved() {\r\n return this._isExecutorApproved\r\n }\r\n\r\n set isExecutorApproved(value) {\r\n this._isExecutorApproved = value\r\n }\r\n\r\n get executorApprovedOn() {\r\n return this._executorApprovedOn\r\n }\r\n\r\n set executorApprovedOn(value) {\r\n this._executorApprovedOn = value\r\n }\r\n\r\n get isExecutorDeclined() {\r\n return this._isExecutorDeclined\r\n }\r\n\r\n set isExecutorDeclined(value) {\r\n this._isExecutorDeclined = value\r\n }\r\n\r\n get executorDeclinedOn() {\r\n return this._executorDeclinedOn\r\n }\r\n\r\n set executorDeclinedOn(value) {\r\n this._executorDeclinedOn = value\r\n }\r\n\r\n get isReturn() {\r\n return this._isReturn\r\n }\r\n\r\n set isReturn(value) {\r\n this._isReturn = value\r\n }\r\n\r\n get returnNumber() {\r\n return this._returnNumber\r\n }\r\n\r\n set returnNumber(value) {\r\n this._returnNumber = value\r\n }\r\n\r\n get returnDate() {\r\n return this._returnDate\r\n }\r\n\r\n set returnDate(value) {\r\n this._returnDate = value\r\n }\r\n\r\n get returnInvoiceId() {\r\n return this._returnInvoiceId\r\n }\r\n\r\n set returnInvoiceId(value) {\r\n this._returnInvoiceId = value\r\n }\r\n\r\n get returnInvoiceNumber() {\r\n return this._returnInvoiceNumber\r\n }\r\n\r\n set returnInvoiceNumber(value) {\r\n this._returnInvoiceNumber = value\r\n }\r\n\r\n get returnInvoiceDate() {\r\n return this._returnInvoiceDate\r\n }\r\n\r\n set returnInvoiceDate(value) {\r\n this._returnInvoiceDate = value\r\n }\r\n\r\n get isReturnInvoiceExecutorApproved() {\r\n return this._isReturnInvoiceExecutorApproved\r\n }\r\n\r\n set isReturnInvoiceExecutorApproved(value) {\r\n this._isReturnInvoiceExecutorApproved = value\r\n }\r\n\r\n get isReturnInvoiceCustomerApproved() {\r\n return this._isReturnInvoiceCustomerApproved\r\n }\r\n\r\n set isReturnInvoiceCustomerApproved(value) {\r\n this._isReturnInvoiceCustomerApproved = value\r\n }\r\n\r\n get isStopped() {\r\n return this._isStopped\r\n }\r\n\r\n set isStopped(value) {\r\n this._isStopped = value\r\n }\r\n\r\n get stoppedOn() {\r\n return this._stoppedOn\r\n }\r\n\r\n set stoppedOn(value) {\r\n this._stoppedOn = value\r\n }\r\n\r\n get status() {\r\n return this._status\r\n }\r\n\r\n set status(value) {\r\n this._status = value\r\n }\r\n\r\n get customerSystemId() {\r\n return this._customerSystemId\r\n }\r\n\r\n set customerSystemId(value) {\r\n this._customerSystemId = value\r\n }\r\n\r\n get customerShipmentId() {\r\n return this._customerShipmentId\r\n }\r\n\r\n set customerShipmentId(value) {\r\n this._customerShipmentId = value\r\n }\r\n\r\n\r\n\r\n // computed\r\n get isAllApproved() {\r\n return this.isCustomerApproved && this.isExecutorApproved\r\n }\r\n}","import MathHelper from \"@/helpers/math\";\r\nimport itemCalculator from \"@/helpers/item.calculator\"\r\nclass OrderItem {\r\n _id;\r\n _measurement;\r\n _ndsRate;\r\n _ndsValue;\r\n _price;\r\n _product;\r\n _productCode;\r\n _quantity;\r\n _quantityLeft;\r\n _total;\r\n _catalogCode;\r\n _totalWithNds;\r\n _customerCode;\r\n _customerSystemId;\r\n _customerShipmentItemId;\r\n\r\n constructor() {\r\n this._id = null\r\n this._product = ''\r\n this._productCode = null\r\n this._measurement = null\r\n this._ndsRate = null\r\n this._ndsValue = 0\r\n this._price = 0\r\n this._quantity = 0\r\n this._total = 0\r\n this._totalWithNds = 0\r\n this._customerCode = null;\r\n this._customerSystemId = null\r\n this._quantityLeft = 0\r\n this._catalogCode = null\r\n }\r\n\r\n get id() {\r\n return this._id\r\n }\r\n\r\n set id(value) {\r\n this._id = value\r\n }\r\n\r\n get measurement() {\r\n return this._measurement\r\n }\r\n\r\n set measurement(value) {\r\n this._measurement = value\r\n }\r\n\r\n get ndsRate() {\r\n return this._ndsRate\r\n }\r\n\r\n set ndsRate(value) {\r\n this._ndsRate = value\r\n\r\n this.recalculateComputes()\r\n }\r\n\r\n get ndsValue() {\r\n return this._ndsValue\r\n }\r\n\r\n get price() {\r\n return this._price\r\n }\r\n\r\n set price(value) {\r\n this._price = value\r\n\r\n this.recalculateComputes()\r\n }\r\n\r\n get product() {\r\n return this._product\r\n }\r\n\r\n set product(value) {\r\n this._product = value\r\n }\r\n\r\n get productCode() {\r\n return this._productCode\r\n }\r\n\r\n set productCode(value) {\r\n this._productCode = value\r\n }\r\n\r\n get quantity() {\r\n return this._quantity\r\n }\r\n\r\n set quantity(value) {\r\n this._quantity = value\r\n\r\n this.recalculateComputes()\r\n }\r\n\r\n get quantityLeft() {\r\n return this._quantityLeft\r\n }\r\n\r\n set quantityLeft(value) {\r\n this._quantityLeft = value\r\n }\r\n\r\n get total() {\r\n return this._total\r\n }\r\n\r\n get totalWithNds() {\r\n return this._totalWithNds\r\n }\r\n\r\n get customerCode() {\r\n return this._customerCode\r\n }\r\n\r\n set customerCode(value) {\r\n this._customerCode = value\r\n }\r\n\r\n get customerSystemId() {\r\n return this._customerSystemId\r\n }\r\n\r\n set customerSystemId(value) {\r\n this._customerSystemId = value\r\n }\r\n\r\n get customerShipmentItemId() {\r\n return this._customerShipmentItemId\r\n }\r\n\r\n set customerShipmentItemId(value) {\r\n this._customerShipmentItemId = value\r\n }\r\n\r\n get catalogCode() {\r\n return this._catalogCode\r\n }\r\n\r\n set catalogCode(value) {\r\n this._catalogCode = value\r\n }\r\n\r\n recalculateComputes() {\r\n const ndsMultiplier = MathHelper.multiply(this._ndsRate, 0.01);\r\n\r\n this._total = itemCalculator.getDecimalWithTwoDigit(MathHelper.multiply(this._price, this._quantity));\r\n this._ndsValue = itemCalculator.getDecimalWithTwoDigit(MathHelper.multiply(this._total, ndsMultiplier));\r\n this._totalWithNds = itemCalculator.getDecimalWithTwoDigit(+this._total + +this.ndsValue);\r\n }\r\n}\r\n\r\nexport default OrderItem","import Order from \"@/domain/order/Order\";\r\n\r\nexport default class extends Order {\r\n _items;\r\n\r\n get items() {\r\n return this._items\r\n }\r\n\r\n set items(value) {\r\n this._items = value\r\n }\r\n}","export default class {\r\n _id;\r\n _groupCode;\r\n _groupNameRu;\r\n _groupNameUz;\r\n _classCode;\r\n _classNameRu;\r\n _classNameUz;\r\n\r\n\r\n get id() {\r\n return this._id\r\n }\r\n\r\n set id(value) {\r\n this._id = value\r\n }\r\n\r\n get groupCode() {\r\n return this._groupCode\r\n }\r\n\r\n set groupCode(value) {\r\n this._groupCode = value\r\n }\r\n\r\n get groupNameRu() {\r\n return this._groupNameRu\r\n }\r\n\r\n set groupNameRu(value) {\r\n this._groupNameRu = value\r\n }\r\n\r\n get groupNameUz() {\r\n return this._groupNameUz\r\n }\r\n\r\n set groupNameUz(value) {\r\n this._groupNameUz = value\r\n }\r\n\r\n get classCode() {\r\n return this._classCode\r\n }\r\n\r\n set classCode(value) {\r\n this._classCode = value\r\n }\r\n\r\n get classNameRu() {\r\n return this._classNameRu\r\n }\r\n\r\n set classNameRu(value) {\r\n this._classNameRu = value\r\n }\r\n\r\n get classNameUz() {\r\n return this._classNameUz\r\n }\r\n\r\n set classNameUz(value) {\r\n this._classNameUz = value\r\n }\r\n\r\n}","import Shipment from \"@/domain/Shipment\";\r\n\r\nexport default class extends Shipment {\r\n _items;\r\n\r\n get items() {\r\n return this._items\r\n }\r\n\r\n set items(value) {\r\n this._items = value\r\n }\r\n}","export default class {\r\n _id;\r\n _measurement;\r\n _ndsRate;\r\n _ndsValue;\r\n _price;\r\n _product;\r\n _quantity;\r\n _total;\r\n _catalogCode;\r\n _totalWithNds;\r\n _customerCode;\r\n _orderItem;\r\n\r\n constructor() {\r\n this._id = null\r\n this._product = ''\r\n this._measurement = null\r\n this._ndsRate = null\r\n this._ndsValue = 0\r\n this._price = 0\r\n this._quantity = 0\r\n this._total = 0\r\n this._totalWithNds = 0\r\n this._customerCode = null;\r\n this._catalogCode = null\r\n this._orderItem = null\r\n }\r\n\r\n get id() {\r\n return this._id\r\n }\r\n\r\n set id(value) {\r\n this._id = value\r\n }\r\n\r\n get measurement() {\r\n return this._measurement\r\n }\r\n\r\n set measurement(value) {\r\n this._measurement = value\r\n }\r\n\r\n get ndsRate() {\r\n return this._ndsRate\r\n }\r\n\r\n set ndsRate(value) {\r\n this._ndsRate = value\r\n }\r\n\r\n get ndsValue() {\r\n return this._ndsValue\r\n }\r\n\r\n set ndsValue(value) {\r\n this._ndsValue = value\r\n }\r\n\r\n get price() {\r\n return this._price\r\n }\r\n\r\n set price(value) {\r\n this._price = value\r\n }\r\n\r\n get product() {\r\n return this._product\r\n }\r\n\r\n set product(value) {\r\n this._product = value\r\n }\r\n\r\n get quantity() {\r\n return this._quantity\r\n }\r\n\r\n set quantity(value) {\r\n this._quantity = value\r\n }\r\n\r\n get total() {\r\n return this._total\r\n }\r\n\r\n set total(value) {\r\n this._total = value\r\n }\r\n\r\n get totalWithNds() {\r\n return this._totalWithNds\r\n }\r\n\r\n set totalWithNds(value) {\r\n this._totalWithNds = value\r\n }\r\n\r\n get customerCode() {\r\n return this._customerCode\r\n }\r\n\r\n set customerCode(value) {\r\n this._customerCode = value\r\n }\r\n\r\n get catalogCode() {\r\n return this._catalogCode\r\n }\r\n\r\n set catalogCode(value) {\r\n this._catalogCode = value\r\n }\r\n\r\n get orderItem() {\r\n return this._orderItem\r\n }\r\n\r\n set orderItem(value) {\r\n this._orderItem = value\r\n }\r\n}","export default class {\r\n _id;\r\n _measurement;\r\n _measurementCode;\r\n _ndsRate;\r\n _ndsValue;\r\n _price;\r\n _product;\r\n _quantity;\r\n _total;\r\n _catalogCode;\r\n _catalogName;\r\n _totalWithNds;\r\n _barcode;\r\n _lgota;\r\n _shipmentItem;\r\n\r\n constructor() {\r\n this._id = null\r\n this._product = ''\r\n this._measurement = null\r\n this._measurementCode = null\r\n this._ndsRate = null\r\n this._ndsValue = 0\r\n this._price = 0\r\n this._quantity = 0\r\n this._total = 0\r\n this._totalWithNds = 0\r\n this._barcode = null\r\n this._catalogCode = null\r\n this._catalogName = null\r\n this._shipmentItem = null\r\n this._lgota = null\r\n }\r\n\r\n get id() {\r\n return this._id\r\n }\r\n\r\n set id(value) {\r\n this._id = value\r\n }\r\n\r\n get measurement() {\r\n return this._measurement\r\n }\r\n\r\n set measurement(value) {\r\n this._measurement = value\r\n }\r\n\r\n get measurementCode() {\r\n return this._measurementCode\r\n }\r\n\r\n set measurementCode(value) {\r\n this._measurementCode = value\r\n }\r\n\r\n get ndsRate() {\r\n return this._ndsRate\r\n }\r\n\r\n set ndsRate(value) {\r\n this._ndsRate = value\r\n }\r\n\r\n get ndsValue() {\r\n return this._ndsValue\r\n }\r\n\r\n set ndsValue(value) {\r\n this._ndsValue = value\r\n }\r\n\r\n get price() {\r\n return this._price\r\n }\r\n\r\n set price(value) {\r\n this._price = value\r\n }\r\n\r\n get product() {\r\n return this._product\r\n }\r\n\r\n set product(value) {\r\n this._product = value\r\n }\r\n\r\n get quantity() {\r\n return this._quantity\r\n }\r\n\r\n set quantity(value) {\r\n this._quantity = value\r\n }\r\n\r\n get total() {\r\n return this._total\r\n }\r\n\r\n set total(value) {\r\n this._total = value\r\n }\r\n\r\n get totalWithNds() {\r\n return this._totalWithNds\r\n }\r\n\r\n set totalWithNds(value) {\r\n this._totalWithNds = value\r\n }\r\n\r\n get barcode() {\r\n return this._barcode\r\n }\r\n\r\n set barcode(value) {\r\n this._barcode = value\r\n }\r\n\r\n get catalogCode() {\r\n return this._catalogCode\r\n }\r\n\r\n set catalogCode(value) {\r\n this._catalogCode = value\r\n }\r\n\r\n get catalogName() {\r\n return this._catalogName\r\n }\r\n\r\n set catalogName(value) {\r\n this._catalogName = value\r\n }\r\n\r\n get lgota() {\r\n return this._lgota\r\n }\r\n\r\n set lgota(value) {\r\n this._lgota = value\r\n }\r\n\r\n get shipmentItem() {\r\n return this._shipmentItem\r\n }\r\n\r\n set shipmentItem(value) {\r\n this._shipmentItem = value\r\n }\r\n}","import Invoice from \"@/domain/Invoice\";\r\n\r\nexport default class extends Invoice {\r\n _items;\r\n\r\n get items() {\r\n return this._items\r\n }\r\n\r\n set items(value) {\r\n this._items = value\r\n }\r\n}","export default class {\r\n _id;\r\n _executorEditStrategy;\r\n _shipmentDeliveryDateStrategy;\r\n _executorCreateInvoiceStrategy;\r\n _shipmentDateMethodStrategy;\r\n _productNameDefineMethodStrategy;\r\n _contractDefineMethodStrategy;\r\n _itemQuantityLimitStrategy;\r\n _customerInn;\r\n _customerName;\r\n _executorInn;\r\n _executorName;\r\n _number;\r\n _date;\r\n _contractNumber;\r\n _contractDate;\r\n _expiresOn;\r\n _deliveryAddress;\r\n _branch;\r\n _createdOn;\r\n _isCustomerApproved;\r\n _customerApprovedOn;\r\n _isExecutorApproved;\r\n _executorApprovedOn;\r\n _isExecutorDeclined;\r\n _executorDeclinedOn;\r\n _isReturn;\r\n _returnNumber;\r\n _returnDate;\r\n _returnInvoiceId;\r\n _returnInvoiceNumber;\r\n _returnInvoiceDate;\r\n _isReturnInvoiceExecutorApproved;\r\n _isReturnInvoiceCustomerApproved;\r\n _isStopped;\r\n _stoppedOn;\r\n _status;\r\n _customerSystemId;\r\n _customerShipmentId;\r\n\r\n\r\n\r\n get id() {\r\n return this._id\r\n }\r\n\r\n set id(value) {\r\n this._id = value\r\n }\r\n\r\n get executorEditStrategy() {\r\n return this._executorEditStrategy\r\n }\r\n\r\n set executorEditStrategy(value) {\r\n this._executorEditStrategy = value\r\n }\r\n\r\n get shipmentDeliveryDateStrategy() {\r\n return this._shipmentDeliveryDateStrategy\r\n }\r\n\r\n set shipmentDeliveryDateStrategy(value) {\r\n this._shipmentDeliveryDateStrategy = value\r\n }\r\n\r\n get executorCreateInvoiceStrategy() {\r\n return this._executorCreateInvoiceStrategy\r\n }\r\n\r\n set executorCreateInvoiceStrategy(value) {\r\n this._executorCreateInvoiceStrategy = value\r\n }\r\n\r\n get shipmentDateMethodStrategy() {\r\n return this._shipmentDateMethodStrategy\r\n }\r\n\r\n set shipmentDateMethodStrategy(value) {\r\n this._shipmentDateMethodStrategy = value\r\n }\r\n\r\n get productNameDefineMethodStrategy() {\r\n return this._productNameDefineMethodStrategy\r\n }\r\n\r\n set productNameDefineMethodStrategy(value) {\r\n this._productNameDefineMethodStrategy = value\r\n }\r\n\r\n get contractDefineMethodStrategy() {\r\n return this._contractDefineMethodStrategy\r\n }\r\n\r\n set contractDefineMethodStrategy(value) {\r\n this._contractDefineMethodStrategy = value\r\n }\r\n\r\n get itemQuantityLimitStrategy() {\r\n return this._itemQuantityLimitStrategy\r\n }\r\n\r\n set itemQuantityLimitStrategy(value) {\r\n this._itemQuantityLimitStrategy = value\r\n }\r\n\r\n get customerInn() {\r\n return this._customerInn\r\n }\r\n\r\n set customerInn(value) {\r\n this._customerInn = value\r\n }\r\n\r\n get customerName() {\r\n return this._customerName\r\n }\r\n\r\n set customerName(value) {\r\n this._customerName = value\r\n }\r\n\r\n get executorInn() {\r\n return this._executorInn\r\n }\r\n\r\n set executorInn(value) {\r\n this._executorInn = value\r\n }\r\n\r\n get executorName() {\r\n return this._executorName\r\n }\r\n\r\n set executorName(value) {\r\n this._executorName = value\r\n }\r\n\r\n get number() {\r\n return this._number\r\n }\r\n\r\n set number(value) {\r\n this._number = value\r\n }\r\n\r\n get date() {\r\n return this._date\r\n }\r\n\r\n set date(value) {\r\n this._date = value\r\n }\r\n\r\n get contractNumber() {\r\n return this._contractNumber\r\n }\r\n\r\n set contractNumber(value) {\r\n this._contractNumber = value\r\n }\r\n\r\n get contractDate() {\r\n return this._contractDate\r\n }\r\n\r\n set contractDate(value) {\r\n this._contractDate = value\r\n }\r\n\r\n get expiresOn() {\r\n return this._expiresOn\r\n }\r\n\r\n set expiresOn(value) {\r\n this._expiresOn = value\r\n }\r\n\r\n get deliveryAddress() {\r\n return this._deliveryAddress\r\n }\r\n\r\n set deliveryAddress(value) {\r\n this._deliveryAddress = value\r\n }\r\n\r\n get branch() {\r\n return this._branch\r\n }\r\n\r\n set branch(value) {\r\n this._branch = value\r\n }\r\n\r\n get createdOn() {\r\n return this._createdOn\r\n }\r\n\r\n set createdOn(value) {\r\n this._createdOn = value\r\n }\r\n\r\n get isCustomerApproved() {\r\n return this._isCustomerApproved\r\n }\r\n\r\n set isCustomerApproved(value) {\r\n this._isCustomerApproved = value\r\n }\r\n\r\n get customerApprovedOn() {\r\n return this._customerApprovedOn\r\n }\r\n\r\n set customerApprovedOn(value) {\r\n this._customerApprovedOn = value\r\n }\r\n\r\n get isExecutorApproved() {\r\n return this._isExecutorApproved\r\n }\r\n\r\n set isExecutorApproved(value) {\r\n this._isExecutorApproved = value\r\n }\r\n\r\n get executorApprovedOn() {\r\n return this._executorApprovedOn\r\n }\r\n\r\n set executorApprovedOn(value) {\r\n this._executorApprovedOn = value\r\n }\r\n\r\n get isExecutorDeclined() {\r\n return this._isExecutorDeclined\r\n }\r\n\r\n set isExecutorDeclined(value) {\r\n this._isExecutorDeclined = value\r\n }\r\n\r\n get executorDeclinedOn() {\r\n return this._executorDeclinedOn\r\n }\r\n\r\n set executorDeclinedOn(value) {\r\n this._executorDeclinedOn = value\r\n }\r\n\r\n get isReturn() {\r\n return this._isReturn\r\n }\r\n\r\n set isReturn(value) {\r\n this._isReturn = value\r\n }\r\n\r\n get returnNumber() {\r\n return this._returnNumber\r\n }\r\n\r\n set returnNumber(value) {\r\n this._returnNumber = value\r\n }\r\n\r\n get returnDate() {\r\n return this._returnDate\r\n }\r\n\r\n set returnDate(value) {\r\n this._returnDate = value\r\n }\r\n\r\n get returnInvoiceId() {\r\n return this._returnInvoiceId\r\n }\r\n\r\n set returnInvoiceId(value) {\r\n this._returnInvoiceId = value\r\n }\r\n\r\n get returnInvoiceNumber() {\r\n return this._returnInvoiceNumber\r\n }\r\n\r\n set returnInvoiceNumber(value) {\r\n this._returnInvoiceNumber = value\r\n }\r\n\r\n get returnInvoiceDate() {\r\n return this._returnInvoiceDate\r\n }\r\n\r\n set returnInvoiceDate(value) {\r\n this._returnInvoiceDate = value\r\n }\r\n\r\n get isReturnInvoiceExecutorApproved() {\r\n return this._isReturnInvoiceExecutorApproved\r\n }\r\n\r\n set isReturnInvoiceExecutorApproved(value) {\r\n this._isReturnInvoiceExecutorApproved = value\r\n }\r\n\r\n get isReturnInvoiceCustomerApproved() {\r\n return this._isReturnInvoiceCustomerApproved\r\n }\r\n\r\n set isReturnInvoiceCustomerApproved(value) {\r\n this._isReturnInvoiceCustomerApproved = value\r\n }\r\n\r\n get isStopped() {\r\n return this._isStopped\r\n }\r\n\r\n set isStopped(value) {\r\n this._isStopped = value\r\n }\r\n\r\n get stoppedOn() {\r\n return this._stoppedOn\r\n }\r\n\r\n set stoppedOn(value) {\r\n this._stoppedOn = value\r\n }\r\n\r\n get status() {\r\n return this._status\r\n }\r\n\r\n set status(value) {\r\n this._status = value\r\n }\r\n\r\n get customerSystemId() {\r\n return this._customerSystemId\r\n }\r\n\r\n set customerSystemId(value) {\r\n this._customerSystemId = value\r\n }\r\n\r\n get customerShipmentId() {\r\n return this._customerShipmentId\r\n }\r\n\r\n set customerShipmentId(value) {\r\n this._customerShipmentId = value\r\n }\r\n\r\n\r\n // computed\r\n get isAllApproved() {\r\n return this.isCustomerApproved && this.isExecutorApproved\r\n }\r\n}","import ReturnOrder from \"@/domain/return-order/ReturnOrder\";\r\n\r\nexport default class extends ReturnOrder {\r\n _items;\r\n\r\n get items() {\r\n return this._items\r\n }\r\n\r\n set items(value) {\r\n this._items = value\r\n }\r\n}","import MathHelper from \"@/helpers/math\";\r\n\r\nexport default class {\r\n _id;\r\n _measurement;\r\n _ndsRate;\r\n _ndsValue;\r\n _price;\r\n _product;\r\n _productCode;\r\n _quantity;\r\n _quantityLeft;\r\n _total;\r\n _catalogCode;\r\n _totalWithNds;\r\n _customerCode;\r\n _customerSystemId;\r\n _customerShipmentItemId;\r\n\r\n constructor() {\r\n this._id = null\r\n this._product = ''\r\n this._productCode = null\r\n this._measurement = null\r\n this._ndsRate = null\r\n this._ndsValue = 0\r\n this._price = 0\r\n this._quantity = 0\r\n this._total = 0\r\n this._totalWithNds = 0\r\n this._customerCode = null;\r\n this._customerSystemId = null\r\n this._quantityLeft = 0\r\n this._catalogCode = null\r\n }\r\n\r\n get id() {\r\n return this._id\r\n }\r\n\r\n set id(value) {\r\n this._id = value\r\n }\r\n\r\n get measurement() {\r\n return this._measurement\r\n }\r\n\r\n set measurement(value) {\r\n this._measurement = value\r\n }\r\n\r\n get ndsRate() {\r\n return this._ndsRate\r\n }\r\n\r\n set ndsRate(value) {\r\n this._ndsRate = value\r\n\r\n this.recalculateComputes()\r\n }\r\n\r\n get ndsValue() {\r\n return this._ndsValue\r\n }\r\n\r\n get price() {\r\n return this._price\r\n }\r\n\r\n set price(value) {\r\n this._price = value\r\n\r\n this.recalculateComputes()\r\n }\r\n\r\n get product() {\r\n return this._product\r\n }\r\n\r\n set product(value) {\r\n this._product = value\r\n }\r\n\r\n get productCode() {\r\n return this._productCode\r\n }\r\n\r\n set productCode(value) {\r\n this._productCode = value\r\n }\r\n\r\n get quantity() {\r\n return this._quantity\r\n }\r\n\r\n set quantity(value) {\r\n this._quantity = value\r\n\r\n this.recalculateComputes()\r\n }\r\n\r\n get quantityLeft() {\r\n return this._quantityLeft\r\n }\r\n\r\n set quantityLeft(value) {\r\n this._quantityLeft = value\r\n }\r\n\r\n get total() {\r\n return this._total\r\n }\r\n\r\n get totalWithNds() {\r\n return this._totalWithNds\r\n }\r\n\r\n get customerCode() {\r\n return this._customerCode\r\n }\r\n\r\n set customerCode(value) {\r\n this._customerCode = value\r\n }\r\n\r\n get customerSystemId() {\r\n return this._customerSystemId\r\n }\r\n\r\n set customerSystemId(value) {\r\n this._customerSystemId = value\r\n }\r\n\r\n get customerShipmentItemId() {\r\n return this._customerShipmentItemId\r\n }\r\n\r\n set customerShipmentItemId(value) {\r\n this._customerShipmentItemId = value\r\n }\r\n\r\n get catalogCode() {\r\n return this._catalogCode\r\n }\r\n\r\n set catalogCode(value) {\r\n this._catalogCode = value\r\n }\r\n\r\n recalculateComputes() {\r\n const ndsMultiplier = MathHelper.multiply(this._ndsRate, 0.01);\r\n\r\n this._total = MathHelper.multiply(this._price, this._quantity);\r\n this._ndsValue = MathHelper.multiply(this._total, ndsMultiplier);\r\n this._totalWithNds = this._total + this.ndsValue;\r\n }\r\n}","export default class {\r\n _id;\r\n _measurement;\r\n _ndsRate;\r\n _ndsValue;\r\n _price;\r\n _product;\r\n _quantity;\r\n _total;\r\n _catalogCode;\r\n _totalWithNds;\r\n _customerCode;\r\n _orderItem;\r\n\r\n constructor() {\r\n this._id = null\r\n this._product = ''\r\n this._measurement = null\r\n this._ndsRate = null\r\n this._ndsValue = 0\r\n this._price = 0\r\n this._quantity = 0\r\n this._total = 0\r\n this._totalWithNds = 0\r\n this._customerCode = null;\r\n this._catalogCode = null\r\n this._orderItem = null\r\n }\r\n\r\n get id() {\r\n return this._id\r\n }\r\n\r\n set id(value) {\r\n this._id = value\r\n }\r\n\r\n get measurement() {\r\n return this._measurement\r\n }\r\n\r\n set measurement(value) {\r\n this._measurement = value\r\n }\r\n\r\n get ndsRate() {\r\n return this._ndsRate\r\n }\r\n\r\n set ndsRate(value) {\r\n this._ndsRate = value\r\n }\r\n\r\n get ndsValue() {\r\n return this._ndsValue\r\n }\r\n\r\n set ndsValue(value) {\r\n this._ndsValue = value\r\n }\r\n\r\n get price() {\r\n return this._price\r\n }\r\n\r\n set price(value) {\r\n this._price = value\r\n }\r\n\r\n get product() {\r\n return this._product\r\n }\r\n\r\n set product(value) {\r\n this._product = value\r\n }\r\n\r\n get quantity() {\r\n return this._quantity\r\n }\r\n\r\n set quantity(value) {\r\n this._quantity = value\r\n }\r\n\r\n get total() {\r\n return this._total\r\n }\r\n\r\n set total(value) {\r\n this._total = value\r\n }\r\n\r\n get totalWithNds() {\r\n return this._totalWithNds\r\n }\r\n\r\n set totalWithNds(value) {\r\n this._totalWithNds = value\r\n }\r\n\r\n get customerCode() {\r\n return this._customerCode\r\n }\r\n\r\n set customerCode(value) {\r\n this._customerCode = value\r\n }\r\n\r\n get catalogCode() {\r\n return this._catalogCode\r\n }\r\n\r\n set catalogCode(value) {\r\n this._catalogCode = value\r\n }\r\n\r\n get orderItem() {\r\n return this._orderItem\r\n }\r\n\r\n set orderItem(value) {\r\n this._orderItem = value\r\n }\r\n}","import {InvoiceDeleted} from \"@/enum/InvoiceStatus\";\r\n\r\nexport default class {\r\n _id;\r\n _order;\r\n\r\n _status;\r\n _invoices;\r\n\r\n _number;\r\n _date;\r\n _waybillNumber;\r\n _waybillDate;\r\n _contractNumber;\r\n _contractDate;\r\n _createdOn;\r\n _isAccepted;\r\n _acceptedOn;\r\n _isDeclined;\r\n _lastDeclinedOn;\r\n _total;\r\n _totalInWords;\r\n\r\n _customerInn;\r\n _customerName;\r\n _consigneeInn;\r\n _consigneeName;\r\n _deliveryAddress;\r\n _loadingAddress;\r\n\r\n _driverName;\r\n _carSerial;\r\n _carModel;\r\n\r\n _isTrailer;\r\n _isSemiTrailer;\r\n _trailerSerial;\r\n _trailerModel;\r\n _deliveryDateTime;\r\n\r\n\r\n get id() {\r\n return this._id\r\n }\r\n\r\n set id(value) {\r\n this._id = value\r\n }\r\n\r\n get order() {\r\n return this._order\r\n }\r\n\r\n set order(value) {\r\n this._order = value\r\n }\r\n\r\n get status() {\r\n return this._status\r\n }\r\n\r\n set status(value) {\r\n this._status = value\r\n }\r\n\r\n get number() {\r\n return this._number\r\n }\r\n\r\n set number(value) {\r\n this._number = value\r\n }\r\n\r\n get date() {\r\n return this._date\r\n }\r\n\r\n set date(value) {\r\n this._date = value\r\n }\r\n\r\n get waybillNumber() {\r\n return this._waybillNumber\r\n }\r\n\r\n set waybillNumber(value) {\r\n this._waybillNumber = value\r\n }\r\n\r\n get waybillDate() {\r\n return this._waybillDate\r\n }\r\n\r\n set waybillDate(value) {\r\n this._waybillDate = value\r\n }\r\n\r\n get contractNumber() {\r\n return this._contractNumber\r\n }\r\n\r\n set contractNumber(value) {\r\n this._contractNumber = value\r\n }\r\n\r\n get contractDate() {\r\n return this._contractDate\r\n }\r\n\r\n set contractDate(value) {\r\n this._contractDate = value\r\n }\r\n\r\n get createdOn() {\r\n return this._createdOn\r\n }\r\n\r\n set createdOn(value) {\r\n this._createdOn = value\r\n }\r\n\r\n get isAccepted() {\r\n return this._isAccepted\r\n }\r\n\r\n set isAccepted(value) {\r\n this._isAccepted = value\r\n }\r\n\r\n get acceptedOn() {\r\n return this._acceptedOn\r\n }\r\n\r\n set acceptedOn(value) {\r\n this._acceptedOn = value\r\n }\r\n\r\n get isDeclined() {\r\n return this._isDeclined\r\n }\r\n\r\n set isDeclined(value) {\r\n this._isDeclined = value\r\n }\r\n\r\n get lastDeclinedOn() {\r\n return this._lastDeclinedOn\r\n }\r\n\r\n set lastDeclinedOn(value) {\r\n this._lastDeclinedOn = value\r\n }\r\n\r\n get total() {\r\n return this._total\r\n }\r\n\r\n set total(value) {\r\n this._total = value\r\n }\r\n\r\n get totalInWords() {\r\n return this._totalInWords\r\n }\r\n\r\n set totalInWords(value) {\r\n this._totalInWords = value\r\n }\r\n\r\n get customerInn() {\r\n return this._customerInn\r\n }\r\n\r\n set customerInn(value) {\r\n this._customerInn = value\r\n }\r\n\r\n get customerName() {\r\n return this._customerName\r\n }\r\n\r\n set customerName(value) {\r\n this._customerName = value\r\n }\r\n\r\n get consigneeInn() {\r\n return this._consigneeInn\r\n }\r\n\r\n set consigneeInn(value) {\r\n this._consigneeInn = value\r\n }\r\n\r\n get consigneeName() {\r\n return this._consigneeName\r\n }\r\n\r\n set consigneeName(value) {\r\n this._consigneeName = value\r\n }\r\n\r\n get deliveryAddress() {\r\n return this._deliveryAddress\r\n }\r\n\r\n set deliveryAddress(value) {\r\n this._deliveryAddress = value\r\n }\r\n\r\n get loadingAddress() {\r\n return this._loadingAddress\r\n }\r\n\r\n set loadingAddress(value) {\r\n this._loadingAddress = value\r\n }\r\n\r\n get driverName() {\r\n return this._driverName\r\n }\r\n\r\n set driverName(value) {\r\n this._driverName = value\r\n }\r\n\r\n get carSerial() {\r\n return this._carSerial\r\n }\r\n\r\n set carSerial(value) {\r\n this._carSerial = value\r\n }\r\n\r\n get carModel() {\r\n return this._carModel\r\n }\r\n\r\n set carModel(value) {\r\n this._carModel = value\r\n }\r\n\r\n get isTrailer() {\r\n return this._isTrailer\r\n }\r\n\r\n set isTrailer(value) {\r\n this._isTrailer = value\r\n }\r\n\r\n get isSemiTrailer() {\r\n return this._isSemiTrailer\r\n }\r\n\r\n set isSemiTrailer(value) {\r\n this._isSemiTrailer = value\r\n }\r\n\r\n get trailerSerial() {\r\n return this._trailerSerial\r\n }\r\n\r\n set trailerSerial(value) {\r\n this._trailerSerial = value\r\n }\r\n\r\n get trailerModel() {\r\n return this._trailerModel\r\n }\r\n\r\n set trailerModel(value) {\r\n this._trailerModel = value\r\n }\r\n\r\n get deliveryDateTime() {\r\n return this._deliveryDateTime\r\n }\r\n\r\n set deliveryDateTime(value) {\r\n this._deliveryDateTime = value\r\n }\r\n\r\n get invoices() {\r\n return this._invoices\r\n }\r\n\r\n set invoices(value) {\r\n this._invoices = value\r\n }\r\n\r\n get invoice() {\r\n return this._invoices.find(x => x.status !== InvoiceDeleted) || null\r\n }\r\n}","import ReturnShipment from \"@/domain/return-shipment/ReturnShipment.js\";\r\n\r\nexport default class extends ReturnShipment {\r\n _items;\r\n\r\n get items() {\r\n return this._items\r\n }\r\n\r\n set items(value) {\r\n this._items = value\r\n }\r\n}","import Moment from 'moment'\r\nimport Shipment from \"@/domain/Shipment\";\r\nimport InvoiceMemberDetails from \"@/domain/InvoiceMemberDetails\";\r\nimport Invoice from \"@/domain/Invoice\";\r\nimport Order from \"@/domain/order/Order\"\r\nimport OrderItem from '@/domain/order/OrderItem'\r\nimport * as OrderExecutorCreateInvoiceStrategies from '@/enum/OrderExecutorCreateInvoiceStrategyType'\r\nimport * as OrderExecutorEditStrategies from '@/enum/OrderExecutorEditStrategyType'\r\nimport * as OrderShipmentDeliveryDateStrategies from '@/enum/OrderShipmentDeliveryDateStrategyType'\r\nimport * as OrderShipmentDateMethodStrategies from '@/enum/OrderShipmentDateMethodStrategyType'\r\nimport * as OrderProductNameDefineMethodStrategies from '@/enum/OrderProductNameDefineMethodStrategyType'\r\nimport * as OrderContractDefineMethodStrategies from '@/enum/OrderContractDefineMethodStrategyType'\r\nimport * as OrderItemQuantityLimitStrategies from '@/enum/OrderItemQuantityLimitStrategyType'\r\nimport _ from 'underscore'\r\nimport OrderInfo from \"@/domain/order/OrderInfo\";\r\nimport InvoiceItemCatalog from \"@/domain/invoice/InvoiceItemCatalog\";\r\nimport ShipmentInfo from \"@/domain/ShipmentInfo\";\r\nimport ShipmentItem from \"@/domain/ShipmentItem\";\r\nimport InvoiceItem from \"@/domain/InvoiceItem\";\r\nimport InvoiceInfo from \"@/domain/InvoiceInfo\";\r\nimport ReturnOrderInfo from \"@/domain/return-order/ReturnOrderInfo\";\r\nimport ReturnOrder from \"@/domain/return-order/ReturnOrder\";\r\nimport ReturnOrderItem from \"@/domain/return-order/ReturnOrderItem\";\r\nimport ReturnShipmentItem from \"@/domain/return-shipment/ReturnShipmentItem\";\r\nimport ReturnShipment from \"@/domain/return-shipment/ReturnShipment\";\r\nimport ReturnShipmentInfo from \"@/domain/return-shipment/ReturnShipmentInfo\";\r\n\r\nlet mapOrderExecutorCreateInvoiceStrategy = (code) => {\r\n let keys = _.keys(OrderExecutorCreateInvoiceStrategies)\r\n let codeKey = _.find(keys, key => {\r\n return OrderExecutorCreateInvoiceStrategies[key].id === code;\r\n })\r\n\r\n return OrderExecutorCreateInvoiceStrategies[codeKey];\r\n}\r\n\r\nlet mapOrderExecutorEditStrategy = (code) => {\r\n let keys = _.keys(OrderExecutorEditStrategies)\r\n let codeKey = _.find(keys, key => {\r\n return OrderExecutorEditStrategies[key].id === code;\r\n })\r\n\r\n return OrderExecutorEditStrategies[codeKey];\r\n}\r\n\r\nlet mapOrderShipmentDeliveryDateStrategy = (code) => {\r\n let keys = _.keys(OrderShipmentDeliveryDateStrategies)\r\n let codeKey = _.find(keys, key => {\r\n return OrderShipmentDeliveryDateStrategies[key].id === code;\r\n })\r\n\r\n return OrderShipmentDeliveryDateStrategies[codeKey];\r\n}\r\n\r\nlet mapOrderShipmentDateMethodStrategy = (code) => {\r\n let keys = _.keys(OrderShipmentDateMethodStrategies)\r\n let codeKey = _.find(keys, key => {\r\n return OrderShipmentDateMethodStrategies[key].id === code;\r\n })\r\n\r\n return OrderShipmentDateMethodStrategies[codeKey];\r\n}\r\n\r\nlet mapOrderProductNameDefineMethodStrategy = (code) => {\r\n let keys = _.keys(OrderProductNameDefineMethodStrategies)\r\n let codeKey = _.find(keys, key => {\r\n return OrderProductNameDefineMethodStrategies[key].id === code;\r\n })\r\n\r\n return OrderProductNameDefineMethodStrategies[codeKey];\r\n}\r\n\r\nlet mapOrderContractDefineMethodStrategy = (code) => {\r\n let keys = _.keys(OrderContractDefineMethodStrategies)\r\n let codeKey = _.find(keys, key => {\r\n return OrderContractDefineMethodStrategies[key].id === code;\r\n })\r\n\r\n return OrderContractDefineMethodStrategies[codeKey];\r\n}\r\n\r\nlet mapOrderItemQuantityLimitStrategy = (code) => {\r\n let keys = _.keys(OrderItemQuantityLimitStrategies)\r\n let codeKey = _.find(keys, key => {\r\n return OrderItemQuantityLimitStrategies[key].id === code;\r\n })\r\n\r\n return OrderItemQuantityLimitStrategies[codeKey];\r\n}\r\n\r\n\r\n\r\nlet mapOrderItem = orderItemViewModel => {\r\n if (orderItemViewModel) {\r\n let orderItem = new OrderItem()\r\n\r\n orderItem.id = orderItemViewModel.Id\r\n orderItem.product = orderItemViewModel.Product\r\n orderItem.productCode = orderItemViewModel.ProductCode\r\n orderItem.measurement = orderItemViewModel.Measurement\r\n orderItem.price = orderItemViewModel.Price\r\n orderItem.quantity = orderItemViewModel.Quantity\r\n orderItem.quantityLeft = orderItemViewModel.QuantityLeft\r\n orderItem.ndsRate = orderItemViewModel.NdsRate\r\n orderItem.customerCode = orderItemViewModel.CustomerCode\r\n orderItem.customerSystemId = orderItemViewModel.CustomerSystemItemId\r\n orderItem.customerShipmentItemId = orderItemViewModel.CustomerShipmentItemId\r\n orderItem.catalogCode = orderItemViewModel.CatalogCode\r\n\r\n orderItem.recalculateComputes()\r\n\r\n return orderItem\r\n }\r\n\r\n return null\r\n}\r\n\r\nlet mapOrder = orderViewModel => {\r\n if (orderViewModel) {\r\n let order = new Order()\r\n\r\n order.id = orderViewModel.Id\r\n order.executorEditStrategy = mapOrderExecutorEditStrategy(orderViewModel.ExecutorEditStrategy)\r\n order.shipmentDeliveryDateStrategy = mapOrderShipmentDeliveryDateStrategy(orderViewModel.ShipmentDeliveryDateStrategy)\r\n order.executorCreateInvoiceStrategy = mapOrderExecutorCreateInvoiceStrategy(orderViewModel.ExecutorCreateInvoiceStrategy)\r\n order.shipmentDateMethodStrategy = mapOrderShipmentDateMethodStrategy(orderViewModel.OrderShipmentDateMethodStrategy)\r\n order.productNameDefineMethodStrategy = mapOrderProductNameDefineMethodStrategy(orderViewModel.OrderProductNameDefineMethodStrategy)\r\n order.contractDefineMethodStrategy = mapOrderContractDefineMethodStrategy(orderViewModel.OrderContractDefineMethodStrategy)\r\n order.itemQuantityLimitStrategy = mapOrderItemQuantityLimitStrategy(orderViewModel.OrderItemQuantityLimitStrategy)\r\n order.customerInn = orderViewModel.CustomerInn;\r\n order.customerName = orderViewModel.CustomerName;\r\n order.executorInn = orderViewModel.ExecutorInn;\r\n order.executorName = orderViewModel.ExecutorName;\r\n order.number = orderViewModel.Number\r\n order.date = Moment(orderViewModel.Date);\r\n order.contractNumber = orderViewModel.ContractNumber;\r\n order.contractDate = Moment(orderViewModel.ContractDate);\r\n order.expiresOn = Moment(orderViewModel.ExpiresOn);\r\n order.deliveryAddress = orderViewModel.DeliveryAddress;\r\n order.branch = orderViewModel.BranchId;\r\n order.createdOn = Moment(orderViewModel.CreatedOn);\r\n order.isCustomerApproved = orderViewModel.IsCustomerApproved;\r\n order.customerApprovedOn = orderViewModel.CustomerApprovedOn ? Moment(orderViewModel.CustomerApprovedOn) : null;\r\n order.isExecutorApproved = orderViewModel.IsExecutorApproved;\r\n order.executorApprovedOn = orderViewModel.ExecutorApprovedOn ? Moment(orderViewModel.ExecutorApprovedOn) : null;\r\n order.isExecutorDeclined = orderViewModel.IsExecutorDeclined;\r\n order.executorDeclinedOn = orderViewModel.ExecutorDeclinedOn ? Moment(orderViewModel.ExecutorDeclinedOn) : null;\r\n order.isReturn = orderViewModel.IsReturn;\r\n order.returnNumber = orderViewModel.ReturnNumber;\r\n order.returnDate = orderViewModel.ReturnDate ? Moment(orderViewModel.ReturnDate) : null;\r\n order.returnInvoiceId = orderViewModel.ReturnInvoiceId;\r\n order.returnInvoiceNumber = orderViewModel.ReturnInvoiceNumber;\r\n order.returnInvoiceDate = orderViewModel.ReturnInvoiceDate ? Moment(orderViewModel.ReturnInvoiceDate) : null;\r\n order.isReturnInvoiceExecutorApproved = orderViewModel.IsReturnInvoiceExecutorApproved;\r\n order.isReturnInvoiceCustomerApproved = orderViewModel.IsReturnInvoiceCustomerApproved;\r\n order.isStopped = orderViewModel.IsStopped;\r\n order.stoppedOn = orderViewModel.StoppedOn ? Moment(orderViewModel.StoppedOn) : null;\r\n order.status = orderViewModel.Status\r\n order.customerSystemId = orderViewModel.CustomerSystemId\r\n order.customerShipmentId = orderViewModel.CustomerShipmentId\r\n\r\n return order\r\n }\r\n\r\n return null\r\n}\r\n\r\nlet mapOrderInfo = orderViewModel => {\r\n if (orderViewModel) {\r\n let orderInfo = new OrderInfo()\r\n\r\n orderInfo.id = orderViewModel.Id\r\n orderInfo.customerSystemId = orderViewModel.CustomerSystemId\r\n orderInfo.customerShipmentId = orderViewModel.CustomerShipmentId\r\n orderInfo.status = orderViewModel.Status\r\n orderInfo.executorEditStrategy = mapOrderExecutorEditStrategy(orderViewModel.ExecutorEditStrategy)\r\n orderInfo.shipmentDeliveryDateStrategy = mapOrderShipmentDeliveryDateStrategy(orderViewModel.ShipmentDeliveryDateStrategy)\r\n orderInfo.executorCreateInvoiceStrategy = mapOrderExecutorCreateInvoiceStrategy(orderViewModel.ExecutorCreateInvoiceStrategy)\r\n orderInfo.shipmentDateMethodStrategy = mapOrderShipmentDateMethodStrategy(orderViewModel.OrderShipmentDateMethodStrategy)\r\n orderInfo.productNameDefineMethodStrategy = mapOrderProductNameDefineMethodStrategy(orderViewModel.OrderProductNameDefineMethodStrategy)\r\n orderInfo.contractDefineMethodStrategy = mapOrderContractDefineMethodStrategy(orderViewModel.OrderContractDefineMethodStrategy)\r\n orderInfo.itemQuantityLimitStrategy = mapOrderItemQuantityLimitStrategy(orderViewModel.OrderItemQuantityLimitStrategy)\r\n orderInfo.customerInn = orderViewModel.CustomerInn;\r\n orderInfo.customerName = orderViewModel.CustomerName;\r\n orderInfo.executorInn = orderViewModel.ExecutorInn;\r\n orderInfo.executorName = orderViewModel.ExecutorName;\r\n orderInfo.number = orderViewModel.Number\r\n orderInfo.date = Moment(orderViewModel.Date);\r\n orderInfo.contractNumber = orderViewModel.ContractNumber;\r\n orderInfo.contractDate = Moment(orderViewModel.ContractDate);\r\n orderInfo.expiresOn = Moment(orderViewModel.ExpiresOn);\r\n orderInfo.deliveryAddress = orderViewModel.DeliveryAddress;\r\n orderInfo.branch = orderViewModel.BranchId;\r\n orderInfo.createdOn = Moment(orderViewModel.CreatedOn);\r\n orderInfo.isCustomerApproved = orderViewModel.IsCustomerApproved;\r\n orderInfo.customerApprovedOn = orderViewModel.CustomerApprovedOn ? Moment(orderViewModel.CustomerApprovedOn) : null;\r\n orderInfo.isExecutorApproved = orderViewModel.IsExecutorApproved;\r\n orderInfo.executorApprovedOn = orderViewModel.ExecutorApprovedOn ? Moment(orderViewModel.ExecutorApprovedOn) : null;\r\n orderInfo.isExecutorDeclined = orderViewModel.IsExecutorDeclined;\r\n orderInfo.executorDeclinedOn = orderViewModel.ExecutorDeclinedOn ? Moment(orderViewModel.ExecutorDeclinedOn) : null;\r\n orderInfo.isReturn = orderViewModel.IsReturn;\r\n orderInfo.returnNumber = orderViewModel.ReturnNumber;\r\n orderInfo.returnDate = orderViewModel.ReturnDate ? Moment(orderViewModel.ReturnDate) : null;\r\n orderInfo.returnInvoiceId = orderViewModel.ReturnInvoiceId;\r\n orderInfo.returnInvoiceNumber = orderViewModel.ReturnInvoiceNumber;\r\n orderInfo.returnInvoiceDate = orderViewModel.ReturnInvoiceDate ? Moment(orderViewModel.ReturnInvoiceDate) : null;\r\n orderInfo.isReturnInvoiceExecutorApproved = orderViewModel.IsReturnInvoiceExecutorApproved;\r\n orderInfo.isReturnInvoiceCustomerApproved = orderViewModel.IsReturnInvoiceCustomerApproved;\r\n orderInfo.isStopped = orderViewModel.IsStopped;\r\n orderInfo.stoppedOn = orderViewModel.StoppedOn ? Moment(orderViewModel.StoppedOn) : null;\r\n orderInfo.items = _.map(orderViewModel.Items, orderItemViewModel => {\r\n return mapOrderItem(orderItemViewModel)\r\n })\r\n\r\n return orderInfo\r\n }\r\n\r\n return null\r\n}\r\n\r\n\r\n\r\nlet mapShipmentItem = item => {\r\n let shipmentItem = new ShipmentItem()\r\n shipmentItem.id = item.Id\r\n shipmentItem.product = item.Product\r\n shipmentItem.customerCode = item.CustomerCode\r\n shipmentItem.catalogCode = item.CatalogCode\r\n shipmentItem.measurement = item.Measurement\r\n shipmentItem.quantity = item.Quantity\r\n shipmentItem.price = item.Price\r\n shipmentItem.total = item.Total\r\n shipmentItem.ndsRate = item.NdsRate\r\n shipmentItem.ndsValue = item.NdsValue\r\n shipmentItem.totalWithNds = item.TotalWithNds\r\n shipmentItem.orderItem = item.OrderItem ? mapOrderItem(item.OrderItem) : null\r\n\r\n return shipmentItem\r\n}\r\n\r\nlet mapShipment = shipmentViewModel => {\r\n if (shipmentViewModel) {\r\n let shipment = new Shipment()\r\n\r\n shipment.id = shipmentViewModel.Id\r\n shipment.order = shipmentViewModel.Order ? mapOrder(shipmentViewModel.Order) : null\r\n shipment.status = shipmentViewModel.Status\r\n shipment.number = shipmentViewModel.Number\r\n shipment.date = shipmentViewModel.Date ? Moment(shipmentViewModel.Date.substr(0, 10), 'YYYY-MM-DD') : null\r\n shipment.waybillNumber = shipmentViewModel.WaypathBillNumber\r\n shipment.waybillDate = shipmentViewModel.WaypathBillDate ? Moment(shipmentViewModel.WaypathBillDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n shipment.contractNumber = shipmentViewModel.ContractNumber\r\n shipment.contractDate = shipmentViewModel.ContractDate ? Moment(shipmentViewModel.ContractDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n shipment.createdOn = shipmentViewModel.CreatedOn ? Moment(shipmentViewModel.CreatedOn) : null\r\n shipment.isAccepted = shipmentViewModel.IsAccepted\r\n shipment.acceptedOn = shipmentViewModel.AcceptedOn ? Moment(shipmentViewModel.AcceptedOn) : null\r\n shipment.isDeclined = shipmentViewModel.IsDeclined\r\n shipment.lastDeclinedOn = shipmentViewModel.LastDeclinedOn ? Moment(shipmentViewModel.LastDeclinedOn) : null\r\n shipment.total = shipmentViewModel.Total\r\n shipment.totalInWords = shipmentViewModel.TotalInWords\r\n shipment.customerInn = shipmentViewModel.CustomerInn\r\n shipment.customerName = shipmentViewModel.CustomerName\r\n shipment.consigneeInn = shipmentViewModel.ConsigneeInn\r\n shipment.consigneeName = shipmentViewModel.ConsigneeName\r\n shipment.deliveryAddress = shipmentViewModel.DeliveryAddress\r\n shipment.loadingAddress = shipmentViewModel.LoadingAddress\r\n shipment.driverName = shipmentViewModel.DriverName\r\n shipment.carSerial = shipmentViewModel.CarSerialNumber\r\n shipment.carModel = shipmentViewModel.CarModel\r\n shipment.isTrailer = shipmentViewModel.IsTrailer\r\n shipment.isSemiTrailer = shipmentViewModel.IsSemiTrailer\r\n shipment.trailerSerial = shipmentViewModel.TrailerSerialNumber\r\n shipment.trailerModel = shipmentViewModel.TrailerModel\r\n shipment.deliveryDateTime = shipmentViewModel.DeliveryDateTime ? Moment(shipmentViewModel.DeliveryDateTime) : null\r\n\r\n shipment.invoices = shipmentViewModel.Invoices.map(i => {\r\n return mapInvoice(i)\r\n })\r\n\r\n return shipment\r\n }\r\n\r\n return null\r\n}\r\n\r\nlet mapShipmentInfo = shipmentViewModel => {\r\n if (shipmentViewModel) {\r\n let shipment = new ShipmentInfo()\r\n\r\n shipment.id = shipmentViewModel.Id\r\n shipment.order = shipmentViewModel.Order ? mapOrder(shipmentViewModel.Order) : null\r\n shipment.status = shipmentViewModel.Status\r\n shipment.number = shipmentViewModel.Number\r\n shipment.date = shipmentViewModel.Date ? Moment(shipmentViewModel.Date.substr(0, 10), 'YYYY-MM-DD') : null\r\n shipment.waybillNumber = shipmentViewModel.WaypathBillNumber\r\n shipment.waybillDate = shipmentViewModel.WaypathBillDate ? Moment(shipmentViewModel.WaypathBillDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n shipment.contractNumber = shipmentViewModel.ContractNumber\r\n shipment.contractDate = shipmentViewModel.ContractDate ? Moment(shipmentViewModel.ContractDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n shipment.createdOn = shipmentViewModel.CreatedOn ? Moment(shipmentViewModel.CreatedOn) : null\r\n shipment.isAccepted = shipmentViewModel.IsAccepted\r\n shipment.acceptedOn = shipmentViewModel.AcceptedOn ? Moment(shipmentViewModel.AcceptedOn) : null\r\n shipment.isDeclined = shipmentViewModel.IsDeclined\r\n shipment.lastDeclinedOn = shipmentViewModel.LastDeclinedOn ? Moment(shipmentViewModel.LastDeclinedOn) : null\r\n shipment.total = shipmentViewModel.Total\r\n shipment.totalInWords = shipmentViewModel.TotalInWords\r\n shipment.customerInn = shipmentViewModel.CustomerInn\r\n shipment.customerName = shipmentViewModel.CustomerName\r\n shipment.consigneeInn = shipmentViewModel.ConsigneeInn\r\n shipment.consigneeName = shipmentViewModel.ConsigneeName\r\n shipment.deliveryAddress = shipmentViewModel.DeliveryAddress\r\n shipment.loadingAddress = shipmentViewModel.LoadingAddress\r\n shipment.driverName = shipmentViewModel.DriverName\r\n shipment.carSerial = shipmentViewModel.CarSerialNumber\r\n shipment.carModel = shipmentViewModel.CarModel\r\n shipment.isTrailer = shipmentViewModel.IsTrailer\r\n shipment.isSemiTrailer = shipmentViewModel.IsSemiTrailer\r\n shipment.trailerSerial = shipmentViewModel.TrailerSerialNumber\r\n shipment.trailerModel = shipmentViewModel.TrailerModel\r\n shipment.deliveryDateTime = shipmentViewModel.DeliveryDateTime ? Moment(shipmentViewModel.DeliveryDateTime) : null\r\n shipment.items = shipmentViewModel.Items.map(item => {\r\n return mapShipmentItem(item)\r\n })\r\n\r\n shipment.invoices = shipmentViewModel.Invoices.map(i => {\r\n return mapInvoice(i)\r\n })\r\n\r\n return shipment\r\n }\r\n\r\n return null\r\n}\r\n\r\n\r\n\r\nlet mapInvoiceItem = item => {\r\n let invoiceItem = new InvoiceItem()\r\n\r\n invoiceItem.id = item.Id\r\n invoiceItem.measurement = item.Measurement\r\n invoiceItem.measurementCode = item.MeasurementCode\r\n invoiceItem.ndsRate = item.NdsRate\r\n invoiceItem.ndsValue = item.NdsValue\r\n invoiceItem.price = item.Price\r\n invoiceItem.product = item.Product\r\n invoiceItem.quantity = item.Quantity\r\n invoiceItem.total = item.Total\r\n invoiceItem.catalogCode = item.CatalogCode\r\n invoiceItem.catalogName = item.CatalogName\r\n invoiceItem.totalWithNds = item.TotalWithNds\r\n invoiceItem.barcode = item.Barcode\r\n invoiceItem.lgota = item.LgotaId\r\n invoiceItem.shipmentItem = item.ShipmentItem ? mapShipmentItem(item.ShipmentItem) : null\r\n\r\n return invoiceItem\r\n}\r\n\r\nlet mapInvoice = invoiceViewModel => {\r\n if (invoiceViewModel) {\r\n let invoice = new Invoice()\r\n\r\n invoice.id = invoiceViewModel.Id\r\n invoice.number = invoiceViewModel.Number\r\n invoice.status = invoiceViewModel.Status\r\n invoice.date = invoiceViewModel.Date ? Moment(invoiceViewModel.Date.substr(0, 10), 'YYYY-MM-DD') : null\r\n invoice.contractNumber = invoiceViewModel.ContractNumber\r\n invoice.contractDate = invoiceViewModel.ContractDate ? Moment(invoiceViewModel.ContractDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n invoice.createdOn = invoiceViewModel.CreatedOn ? Moment(invoiceViewModel.CreatedOn) : null\r\n invoice.isCustomerApproved = invoiceViewModel.IsCustomerApproved\r\n invoice.customerApprovedOn = invoiceViewModel.CustomerApprovedOn ? Moment(invoiceViewModel.CustomerApprovedOn) : null\r\n invoice.isExecutorApproved = invoiceViewModel.IsExecutorApproved\r\n invoice.executorApprovedOn = invoiceViewModel.ExecutorApprovedOn ? Moment(invoiceViewModel.ExecutorApprovedOn) : null\r\n invoice.executorDetails = mapInvoiceMember(invoiceViewModel.ExecutorDetail)\r\n invoice.customerDetails = mapInvoiceMember(invoiceViewModel.CustomerDetail)\r\n invoice.total = invoiceViewModel.Total\r\n invoice.totalInWords = invoiceViewModel.TotalInWords\r\n invoice.executorDirector = invoiceViewModel.ExecutorDirector\r\n invoice.executorAccountant = invoiceViewModel.ExecutorAcccountant\r\n invoice.executorReleaser = invoiceViewModel.ExecutorReleaser\r\n invoice.customerProxyNumber = invoiceViewModel.CustomerProxyNumber\r\n invoice.customerProxyDate = invoiceViewModel.CustomerProxyDate ? Moment(invoiceViewModel.CustomerProxyDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n invoice.customerProxyName = invoiceViewModel.CustomerProxyName\r\n invoice.shipment = invoiceViewModel.Shipment ? mapShipment(invoiceViewModel.Shipment) : null\r\n\r\n return invoice\r\n }\r\n\r\n return null\r\n}\r\n\r\nlet mapInvoiceInfo = invoiceViewModel => {\r\n if (invoiceViewModel) {\r\n let invoice = new InvoiceInfo()\r\n\r\n invoice.id = invoiceViewModel.Id\r\n invoice.number = invoiceViewModel.Number\r\n invoice.status = invoiceViewModel.Status\r\n invoice.date = invoiceViewModel.Date ? Moment(invoiceViewModel.Date.substr(0, 10), 'YYYY-MM-DD') : null\r\n invoice.contractNumber = invoiceViewModel.ContractNumber\r\n invoice.contractDate = invoiceViewModel.ContractDate ? Moment(invoiceViewModel.ContractDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n invoice.createdOn = invoiceViewModel.CreatedOn ? Moment(invoiceViewModel.CreatedOn) : null\r\n invoice.isCustomerApproved = invoiceViewModel.IsCustomerApproved\r\n invoice.customerApprovedOn = invoiceViewModel.CustomerApprovedOn ? Moment(invoiceViewModel.CustomerApprovedOn) : null\r\n invoice.isExecutorApproved = invoiceViewModel.IsExecutorApproved\r\n invoice.executorApprovedOn = invoiceViewModel.ExecutorApprovedOn ? Moment(invoiceViewModel.ExecutorApprovedOn) : null\r\n invoice.executorDetails = mapInvoiceMember(invoiceViewModel.ExecutorDetail)\r\n invoice.customerDetails = mapInvoiceMember(invoiceViewModel.CustomerDetail)\r\n invoice.total = invoiceViewModel.Total\r\n invoice.totalInWords = invoiceViewModel.TotalInWords\r\n invoice.executorDirector = invoiceViewModel.ExecutorDirector\r\n invoice.executorAccountant = invoiceViewModel.ExecutorAcccountant\r\n invoice.executorReleaser = invoiceViewModel.ExecutorReleaser\r\n invoice.customerProxyNumber = invoiceViewModel.CustomerProxyNumber\r\n invoice.customerProxyDate = invoiceViewModel.CustomerProxyDate ? Moment(invoiceViewModel.CustomerProxyDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n invoice.customerProxyName = invoiceViewModel.CustomerProxyName\r\n invoice.shipment = invoiceViewModel.Shipment ? mapShipment(invoiceViewModel.Shipment) : null\r\n invoice.items = invoiceViewModel.Items.map(item => {\r\n return mapInvoiceItem(item)\r\n })\r\n\r\n return invoice\r\n }\r\n\r\n return null\r\n}\r\n\r\nlet mapInvoiceMember = invoiceMemberDetailsViewModel => {\r\n if (invoiceMemberDetailsViewModel) {\r\n let invoiceMember = new InvoiceMemberDetails()\r\n\r\n invoiceMember.inn = invoiceMemberDetailsViewModel.Inn\r\n invoiceMember.name = invoiceMemberDetailsViewModel.Name\r\n invoiceMember.address = invoiceMemberDetailsViewModel.Address\r\n invoiceMember.phone = invoiceMemberDetailsViewModel.Phone\r\n invoiceMember.bankAccountNumber = invoiceMemberDetailsViewModel.BankAccountNumber\r\n invoiceMember.bankName = invoiceMemberDetailsViewModel.BankName\r\n invoiceMember.bankMfo = invoiceMemberDetailsViewModel.BankMfo\r\n invoiceMember.oked = invoiceMemberDetailsViewModel.Oked\r\n invoiceMember.okonx = invoiceMemberDetailsViewModel.Okonx\r\n invoiceMember.ndsRegistrationCode = invoiceMemberDetailsViewModel.NdsRegistrationCode\r\n\r\n return invoiceMember\r\n }\r\n\r\n return null\r\n}\r\n\r\n\r\n\r\nlet mapReturnOrderItem = orderItemViewModel => {\r\n if (orderItemViewModel) {\r\n let orderItem = new ReturnOrderItem()\r\n\r\n orderItem.id = orderItemViewModel.Id\r\n orderItem.product = orderItemViewModel.Product\r\n orderItem.productCode = orderItemViewModel.ProductCode\r\n orderItem.measurement = orderItemViewModel.Measurement\r\n orderItem.price = orderItemViewModel.Price\r\n orderItem.quantity = orderItemViewModel.Quantity\r\n orderItem.quantityLeft = orderItemViewModel.QuantityLeft\r\n orderItem.ndsRate = orderItemViewModel.NdsRate\r\n orderItem.customerCode = orderItemViewModel.CustomerCode\r\n orderItem.customerSystemId = orderItemViewModel.CustomerSystemItemId\r\n orderItem.customerShipmentItemId = orderItemViewModel.CustomerShipmentItemId\r\n orderItem.catalogCode = orderItemViewModel.CatalogCode\r\n\r\n orderItem.recalculateComputes()\r\n\r\n return orderItem\r\n }\r\n\r\n return null\r\n}\r\n\r\nlet mapReturnOrder = orderViewModel => {\r\n if (orderViewModel) {\r\n let order = new ReturnOrder()\r\n\r\n order.id = orderViewModel.Id\r\n order.executorEditStrategy = mapOrderExecutorEditStrategy(orderViewModel.ExecutorEditStrategy)\r\n order.shipmentDeliveryDateStrategy = mapOrderShipmentDeliveryDateStrategy(orderViewModel.ShipmentDeliveryDateStrategy)\r\n order.executorCreateInvoiceStrategy = mapOrderExecutorCreateInvoiceStrategy(orderViewModel.ExecutorCreateInvoiceStrategy)\r\n order.shipmentDateMethodStrategy = mapOrderShipmentDateMethodStrategy(orderViewModel.OrderShipmentDateMethodStrategy)\r\n order.productNameDefineMethodStrategy = mapOrderProductNameDefineMethodStrategy(orderViewModel.OrderProductNameDefineMethodStrategy)\r\n order.contractDefineMethodStrategy = mapOrderContractDefineMethodStrategy(orderViewModel.OrderContractDefineMethodStrategy)\r\n order.itemQuantityLimitStrategy = mapOrderItemQuantityLimitStrategy(orderViewModel.OrderItemQuantityLimitStrategy)\r\n order.customerInn = orderViewModel.CustomerInn;\r\n order.customerName = orderViewModel.CustomerName;\r\n order.executorInn = orderViewModel.ExecutorInn;\r\n order.executorName = orderViewModel.ExecutorName;\r\n order.number = orderViewModel.Number\r\n order.date = Moment(orderViewModel.Date);\r\n order.contractNumber = orderViewModel.ContractNumber;\r\n order.contractDate = Moment(orderViewModel.ContractDate);\r\n order.expiresOn = Moment(orderViewModel.ExpiresOn);\r\n order.deliveryAddress = orderViewModel.DeliveryAddress;\r\n order.branch = orderViewModel.BranchId;\r\n order.createdOn = Moment(orderViewModel.CreatedOn);\r\n order.isCustomerApproved = orderViewModel.IsCustomerApproved;\r\n order.customerApprovedOn = orderViewModel.CustomerApprovedOn ? Moment(orderViewModel.CustomerApprovedOn) : null;\r\n order.isExecutorApproved = orderViewModel.IsExecutorApproved;\r\n order.executorApprovedOn = orderViewModel.ExecutorApprovedOn ? Moment(orderViewModel.ExecutorApprovedOn) : null;\r\n order.isExecutorDeclined = orderViewModel.IsExecutorDeclined;\r\n order.executorDeclinedOn = orderViewModel.ExecutorDeclinedOn ? Moment(orderViewModel.ExecutorDeclinedOn) : null;\r\n order.isReturn = orderViewModel.IsReturn;\r\n order.returnNumber = orderViewModel.ReturnNumber;\r\n order.returnDate = orderViewModel.ReturnDate ? Moment(orderViewModel.ReturnDate) : null;\r\n order.returnInvoiceId = orderViewModel.ReturnInvoiceId;\r\n order.returnInvoiceNumber = orderViewModel.ReturnInvoiceNumber;\r\n order.returnInvoiceDate = orderViewModel.ReturnInvoiceDate ? Moment(orderViewModel.ReturnInvoiceDate) : null;\r\n order.isReturnInvoiceExecutorApproved = orderViewModel.IsReturnInvoiceExecutorApproved;\r\n order.isReturnInvoiceCustomerApproved = orderViewModel.IsReturnInvoiceCustomerApproved;\r\n order.isStopped = orderViewModel.IsStopped;\r\n order.stoppedOn = orderViewModel.StoppedOn ? Moment(orderViewModel.StoppedOn) : null;\r\n order.status = orderViewModel.Status\r\n order.customerSystemId = orderViewModel.CustomerSystemId\r\n order.customerShipmentId = orderViewModel.CustomerShipmentId\r\n\r\n return order\r\n }\r\n\r\n return null\r\n}\r\n\r\nlet mapReturnOrderInfo = orderViewModel => {\r\n if (orderViewModel) {\r\n let orderInfo = new ReturnOrderInfo()\r\n\r\n orderInfo.id = orderViewModel.Id\r\n orderInfo.customerSystemId = orderViewModel.CustomerSystemId\r\n orderInfo.customerShipmentId = orderViewModel.CustomerShipmentId\r\n orderInfo.status = orderViewModel.Status\r\n orderInfo.executorEditStrategy = mapOrderExecutorEditStrategy(orderViewModel.ExecutorEditStrategy)\r\n orderInfo.shipmentDeliveryDateStrategy = mapOrderShipmentDeliveryDateStrategy(orderViewModel.ShipmentDeliveryDateStrategy)\r\n orderInfo.executorCreateInvoiceStrategy = mapOrderExecutorCreateInvoiceStrategy(orderViewModel.ExecutorCreateInvoiceStrategy)\r\n orderInfo.shipmentDateMethodStrategy = mapOrderShipmentDateMethodStrategy(orderViewModel.OrderShipmentDateMethodStrategy)\r\n orderInfo.productNameDefineMethodStrategy = mapOrderProductNameDefineMethodStrategy(orderViewModel.OrderProductNameDefineMethodStrategy)\r\n orderInfo.contractDefineMethodStrategy = mapOrderContractDefineMethodStrategy(orderViewModel.OrderContractDefineMethodStrategy)\r\n orderInfo.itemQuantityLimitStrategy = mapOrderItemQuantityLimitStrategy(orderViewModel.OrderItemQuantityLimitStrategy)\r\n orderInfo.customerInn = orderViewModel.CustomerInn;\r\n orderInfo.customerName = orderViewModel.CustomerName;\r\n orderInfo.executorInn = orderViewModel.ExecutorInn;\r\n orderInfo.executorName = orderViewModel.ExecutorName;\r\n orderInfo.number = orderViewModel.Number\r\n orderInfo.date = Moment(orderViewModel.Date);\r\n orderInfo.contractNumber = orderViewModel.ContractNumber;\r\n orderInfo.contractDate = Moment(orderViewModel.ContractDate);\r\n orderInfo.expiresOn = Moment(orderViewModel.ExpiresOn);\r\n orderInfo.deliveryAddress = orderViewModel.DeliveryAddress;\r\n orderInfo.branch = orderViewModel.BranchId;\r\n orderInfo.createdOn = Moment(orderViewModel.CreatedOn);\r\n orderInfo.isCustomerApproved = orderViewModel.IsCustomerApproved;\r\n orderInfo.customerApprovedOn = orderViewModel.CustomerApprovedOn ? Moment(orderViewModel.CustomerApprovedOn) : null;\r\n orderInfo.isExecutorApproved = orderViewModel.IsExecutorApproved;\r\n orderInfo.executorApprovedOn = orderViewModel.ExecutorApprovedOn ? Moment(orderViewModel.ExecutorApprovedOn) : null;\r\n orderInfo.isExecutorDeclined = orderViewModel.IsExecutorDeclined;\r\n orderInfo.executorDeclinedOn = orderViewModel.ExecutorDeclinedOn ? Moment(orderViewModel.ExecutorDeclinedOn) : null;\r\n orderInfo.isReturn = orderViewModel.IsReturn;\r\n orderInfo.returnNumber = orderViewModel.ReturnNumber;\r\n orderInfo.returnDate = orderViewModel.ReturnDate ? Moment(orderViewModel.ReturnDate) : null;\r\n orderInfo.returnInvoiceId = orderViewModel.ReturnInvoiceId;\r\n orderInfo.returnInvoiceNumber = orderViewModel.ReturnInvoiceNumber;\r\n orderInfo.returnInvoiceDate = orderViewModel.ReturnInvoiceDate ? Moment(orderViewModel.ReturnInvoiceDate) : null;\r\n orderInfo.isReturnInvoiceExecutorApproved = orderViewModel.IsReturnInvoiceExecutorApproved;\r\n orderInfo.isReturnInvoiceCustomerApproved = orderViewModel.IsReturnInvoiceCustomerApproved;\r\n orderInfo.isStopped = orderViewModel.IsStopped;\r\n orderInfo.stoppedOn = orderViewModel.StoppedOn ? Moment(orderViewModel.StoppedOn) : null;\r\n orderInfo.items = _.map(orderViewModel.Items, orderItemViewModel => {\r\n return mapOrderItem(orderItemViewModel)\r\n })\r\n\r\n return orderInfo\r\n }\r\n\r\n return null\r\n}\r\n\r\n\r\n\r\nlet mapReturnShipmentItem = item => {\r\n let shipmentItem = new ReturnShipmentItem()\r\n shipmentItem.id = item.Id\r\n shipmentItem.product = item.Product\r\n shipmentItem.customerCode = item.CustomerCode\r\n shipmentItem.catalogCode = item.CatalogCode\r\n shipmentItem.measurement = item.Measurement\r\n shipmentItem.quantity = item.Quantity\r\n shipmentItem.price = item.Price\r\n shipmentItem.total = item.Total\r\n shipmentItem.ndsRate = item.NdsRate\r\n shipmentItem.ndsValue = item.NdsValue\r\n shipmentItem.totalWithNds = item.TotalWithNds\r\n shipmentItem.orderItem = item.ReturnOrderItem ? mapReturnOrderItem(item.ReturnOrderItem) : null\r\n\r\n return shipmentItem\r\n}\r\n\r\nlet mapReturnShipment = shipmentViewModel => {\r\n if (shipmentViewModel) {\r\n let shipment = new ReturnShipment()\r\n\r\n shipment.id = shipmentViewModel.Id\r\n shipment.order = mapReturnOrder(shipmentViewModel.ReturnOrder)\r\n shipment.status = shipmentViewModel.Status\r\n shipment.number = shipmentViewModel.Number\r\n shipment.date = shipmentViewModel.Date ? Moment(shipmentViewModel.Date.substr(0, 10), 'YYYY-MM-DD') : null\r\n shipment.waybillNumber = shipmentViewModel.WaypathBillNumber\r\n shipment.waybillDate = shipmentViewModel.WaypathBillDate ? Moment(shipmentViewModel.WaypathBillDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n shipment.contractNumber = shipmentViewModel.ContractNumber\r\n shipment.contractDate = shipmentViewModel.ContractDate ? Moment(shipmentViewModel.ContractDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n shipment.createdOn = shipmentViewModel.CreatedOn ? Moment(shipmentViewModel.CreatedOn) : null\r\n shipment.isAccepted = shipmentViewModel.IsAccepted\r\n shipment.acceptedOn = shipmentViewModel.AcceptedOn ? Moment(shipmentViewModel.AcceptedOn) : null\r\n shipment.isDeclined = shipmentViewModel.IsDeclined\r\n shipment.lastDeclinedOn = shipmentViewModel.LastDeclinedOn ? Moment(shipmentViewModel.LastDeclinedOn) : null\r\n shipment.total = shipmentViewModel.Total\r\n shipment.totalInWords = shipmentViewModel.TotalInWords\r\n shipment.customerInn = shipmentViewModel.CustomerInn\r\n shipment.customerName = shipmentViewModel.CustomerName\r\n shipment.consigneeInn = shipmentViewModel.ConsigneeInn\r\n shipment.consigneeName = shipmentViewModel.ConsigneeName\r\n shipment.deliveryAddress = shipmentViewModel.DeliveryAddress\r\n shipment.loadingAddress = shipmentViewModel.LoadingAddress\r\n shipment.driverName = shipmentViewModel.DriverName\r\n shipment.carSerial = shipmentViewModel.CarSerialNumber\r\n shipment.carModel = shipmentViewModel.CarModel\r\n shipment.isTrailer = shipmentViewModel.IsTrailer\r\n shipment.isSemiTrailer = shipmentViewModel.IsSemiTrailer\r\n shipment.trailerSerial = shipmentViewModel.TrailerSerialNumber\r\n shipment.trailerModel = shipmentViewModel.TrailerModel\r\n shipment.deliveryDateTime = shipmentViewModel.DeliveryDateTime ? Moment(shipmentViewModel.DeliveryDateTime) : null\r\n\r\n shipment.invoices = shipmentViewModel.ReturnInvoices.map(i => {\r\n return mapReturnInvoice(i)\r\n })\r\n\r\n return shipment\r\n }\r\n\r\n return null\r\n}\r\n\r\nlet mapReturnShipmentInfo = shipmentViewModel => {\r\n if (shipmentViewModel) {\r\n let shipment = new ReturnShipmentInfo()\r\n\r\n shipment.id = shipmentViewModel.Id\r\n shipment.order = mapReturnOrder(shipmentViewModel.ReturnOrder)\r\n shipment.status = shipmentViewModel.Status\r\n shipment.number = shipmentViewModel.Number\r\n shipment.date = shipmentViewModel.Date ? Moment(shipmentViewModel.Date.substr(0, 10), 'YYYY-MM-DD') : null\r\n shipment.waybillNumber = shipmentViewModel.WaypathBillNumber\r\n shipment.waybillDate = shipmentViewModel.WaypathBillDate ? Moment(shipmentViewModel.WaypathBillDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n shipment.contractNumber = shipmentViewModel.ContractNumber\r\n shipment.contractDate = shipmentViewModel.ContractDate ? Moment(shipmentViewModel.ContractDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n shipment.createdOn = shipmentViewModel.CreatedOn ? Moment(shipmentViewModel.CreatedOn) : null\r\n shipment.isAccepted = shipmentViewModel.IsAccepted\r\n shipment.acceptedOn = shipmentViewModel.AcceptedOn ? Moment(shipmentViewModel.AcceptedOn) : null\r\n shipment.isDeclined = shipmentViewModel.IsDeclined\r\n shipment.lastDeclinedOn = shipmentViewModel.LastDeclinedOn ? Moment(shipmentViewModel.LastDeclinedOn) : null\r\n shipment.total = shipmentViewModel.Total\r\n shipment.totalInWords = shipmentViewModel.TotalInWords\r\n shipment.customerInn = shipmentViewModel.CustomerInn\r\n shipment.customerName = shipmentViewModel.CustomerName\r\n shipment.consigneeInn = shipmentViewModel.ConsigneeInn\r\n shipment.consigneeName = shipmentViewModel.ConsigneeName\r\n shipment.deliveryAddress = shipmentViewModel.DeliveryAddress\r\n shipment.loadingAddress = shipmentViewModel.LoadingAddress\r\n shipment.driverName = shipmentViewModel.DriverName\r\n shipment.carSerial = shipmentViewModel.CarSerialNumber\r\n shipment.carModel = shipmentViewModel.CarModel\r\n shipment.isTrailer = shipmentViewModel.IsTrailer\r\n shipment.isSemiTrailer = shipmentViewModel.IsSemiTrailer\r\n shipment.trailerSerial = shipmentViewModel.TrailerSerialNumber\r\n shipment.trailerModel = shipmentViewModel.TrailerModel\r\n shipment.deliveryDateTime = shipmentViewModel.DeliveryDateTime ? Moment(shipmentViewModel.DeliveryDateTime) : null\r\n shipment.items = shipmentViewModel.Items.map(item => {\r\n return mapReturnShipmentItem(item)\r\n })\r\n\r\n shipment.invoices = shipmentViewModel.ReturnInvoices.map(i => {\r\n return mapReturnInvoice(i)\r\n })\r\n\r\n return shipment\r\n }\r\n\r\n return null\r\n}\r\n\r\n\r\nlet mapReturnInvoiceItem = item => {\r\n let invoiceItem = new InvoiceItem()\r\n\r\n invoiceItem.id = item.Id\r\n invoiceItem.measurement = item.Measurement\r\n invoiceItem.measurementCode = item.MeasurementCode\r\n invoiceItem.ndsRate = item.NdsRate\r\n invoiceItem.ndsValue = item.NdsValue\r\n invoiceItem.price = item.Price\r\n invoiceItem.product = item.Product\r\n invoiceItem.quantity = item.Quantity\r\n invoiceItem.total = item.Total\r\n invoiceItem.catalogCode = item.CatalogCode\r\n invoiceItem.catalogName = item.CatalogName\r\n invoiceItem.totalWithNds = item.TotalWithNds\r\n invoiceItem.barcode = item.Barcode\r\n invoiceItem.lgota = item.LgotaId\r\n invoiceItem.shipmentItem = item.ReturnShipmentItem ? mapReturnShipmentItem(item.ReturnShipmentItem) : null\r\n\r\n return invoiceItem\r\n}\r\n\r\nlet mapReturnInvoice = invoiceViewModel => {\r\n if (invoiceViewModel) {\r\n let invoice = new Invoice()\r\n\r\n invoice.id = invoiceViewModel.Id\r\n invoice.number = invoiceViewModel.Number\r\n invoice.status = invoiceViewModel.Status\r\n invoice.correctDate = invoiceViewModel.CorrectDate ? Moment(invoiceViewModel.CorrectDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n invoice.correctDocumentUid = invoiceViewModel.CorrectDocumentUid\r\n invoice.correctNumber = invoiceViewModel.CorrectNumber\r\n invoice.date = invoiceViewModel.Date ? Moment(invoiceViewModel.Date.substr(0, 10), 'YYYY-MM-DD') : null\r\n invoice.contractNumber = invoiceViewModel.ContractNumber\r\n invoice.contractDate = invoiceViewModel.ContractDate ? Moment(invoiceViewModel.ContractDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n invoice.createdOn = invoiceViewModel.CreatedOn ? Moment(invoiceViewModel.CreatedOn) : null\r\n invoice.isCustomerApproved = invoiceViewModel.IsCustomerApproved\r\n invoice.customerApprovedOn = invoiceViewModel.CustomerApprovedOn ? Moment(invoiceViewModel.CustomerApprovedOn) : null\r\n invoice.isExecutorApproved = invoiceViewModel.IsExecutorApproved\r\n invoice.executorApprovedOn = invoiceViewModel.ExecutorApprovedOn ? Moment(invoiceViewModel.ExecutorApprovedOn) : null\r\n invoice.executorDetails = mapInvoiceMember(invoiceViewModel.ExecutorDetail)\r\n invoice.customerDetails = mapInvoiceMember(invoiceViewModel.CustomerDetail)\r\n invoice.total = invoiceViewModel.Total\r\n invoice.totalInWords = invoiceViewModel.TotalInWords\r\n invoice.executorDirector = invoiceViewModel.ExecutorDirector\r\n invoice.executorAccountant = invoiceViewModel.ExecutorAcccountant\r\n invoice.executorReleaser = invoiceViewModel.ExecutorReleaser\r\n invoice.customerProxyNumber = invoiceViewModel.CustomerProxyNumber\r\n invoice.customerProxyDate = invoiceViewModel.CustomerProxyDate ? Moment(invoiceViewModel.CustomerProxyDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n invoice.customerProxyName = invoiceViewModel.CustomerProxyName\r\n invoice.shipment = invoiceViewModel.ReturnShipment ? mapReturnShipment(invoiceViewModel.ReturnShipment) : null\r\n\r\n return invoice\r\n }\r\n\r\n return null\r\n}\r\n\r\nlet mapReturnInvoiceInfo = invoiceViewModel => {\r\n if (invoiceViewModel) {\r\n let invoice = new InvoiceInfo()\r\n\r\n invoice.id = invoiceViewModel.Id\r\n invoice.number = invoiceViewModel.Number\r\n invoice.status = invoiceViewModel.Status\r\n invoice.date = invoiceViewModel.Date ? Moment(invoiceViewModel.Date.substr(0, 10), 'YYYY-MM-DD') : null\r\n invoice.correctDate = invoiceViewModel.CorrectDate ? Moment(invoiceViewModel.CorrectDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n invoice.correctDocumentUid = invoiceViewModel.CorrectDocumentUid\r\n invoice.correctNumber = invoiceViewModel.CorrectNumber\r\n invoice.contractNumber = invoiceViewModel.ContractNumber\r\n invoice.contractDate = invoiceViewModel.ContractDate ? Moment(invoiceViewModel.ContractDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n invoice.createdOn = invoiceViewModel.CreatedOn ? Moment(invoiceViewModel.CreatedOn) : null\r\n invoice.isCustomerApproved = invoiceViewModel.IsCustomerApproved\r\n invoice.customerApprovedOn = invoiceViewModel.CustomerApprovedOn ? Moment(invoiceViewModel.CustomerApprovedOn) : null\r\n invoice.isExecutorApproved = invoiceViewModel.IsExecutorApproved\r\n invoice.executorApprovedOn = invoiceViewModel.ExecutorApprovedOn ? Moment(invoiceViewModel.ExecutorApprovedOn) : null\r\n invoice.executorDetails = mapInvoiceMember(invoiceViewModel.ExecutorDetail)\r\n invoice.customerDetails = mapInvoiceMember(invoiceViewModel.CustomerDetail)\r\n invoice.total = invoiceViewModel.Total\r\n invoice.totalInWords = invoiceViewModel.TotalInWords\r\n invoice.executorDirector = invoiceViewModel.ExecutorDirector\r\n invoice.executorAccountant = invoiceViewModel.ExecutorAcccountant\r\n invoice.executorReleaser = invoiceViewModel.ExecutorReleaser\r\n invoice.customerProxyNumber = invoiceViewModel.CustomerProxyNumber\r\n invoice.customerProxyDate = invoiceViewModel.CustomerProxyDate ? Moment(invoiceViewModel.CustomerProxyDate.substr(0, 10), 'YYYY-MM-DD') : null\r\n invoice.customerProxyName = invoiceViewModel.CustomerProxyName\r\n invoice.shipment = invoiceViewModel.ReturnShipment ? mapReturnShipment(invoiceViewModel.ReturnShipment) : null\r\n invoice.items = invoiceViewModel.Items.map(item => {\r\n return mapReturnInvoiceItem(item)\r\n })\r\n\r\n return invoice\r\n }\r\n\r\n return null\r\n}\r\n\r\n\r\nlet mapInvoiceItemCatalog = vm => {\r\n let item = new InvoiceItemCatalog()\r\n\r\n item.id = vm.Id\r\n item.groupCode = vm.GroupCode\r\n item.groupNameRu = vm.GroupNameRu\r\n item.groupNameUz = vm.GroupNameUz\r\n item.classCode = vm.ClassCode\r\n item.classNameRu = vm.ClassNameRu\r\n item.classNameUz = vm.ClassNameUz\r\n\r\n return item\r\n}\r\n\r\nexport default {\r\n mapOrderItem: mapOrderItem,\r\n mapOrder: mapOrder,\r\n mapOrderInfo: mapOrderInfo,\r\n\r\n mapShipmentItem: mapShipmentItem,\r\n mapShipment: mapShipment,\r\n mapShipmentInfo: mapShipmentInfo,\r\n\r\n mapInvoice: mapInvoice,\r\n mapInvoiceMember: mapInvoiceMember,\r\n mapInvoiceInfo: mapInvoiceInfo,\r\n\r\n mapReturnOrderItem: mapReturnOrderItem,\r\n mapReturnOrder: mapReturnOrder,\r\n mapReturnOrderInfo: mapReturnOrderInfo,\r\n\r\n mapReturnShipmentItem: mapReturnShipmentItem,\r\n mapReturnShipment: mapReturnShipment,\r\n mapReturnShipmentInfo: mapReturnShipmentInfo,\r\n\r\n mapReturnInvoiceItem: mapReturnInvoiceItem,\r\n mapReturnInvoice: mapReturnInvoice,\r\n mapReturnInvoiceInfo: mapReturnInvoiceInfo,\r\n\r\n mapInvoiceItemCatalog: mapInvoiceItemCatalog\r\n}"],"sourceRoot":""}