{"version":3,"sources":["webpack:///./src/views/Reporting/CostDistribution.vue","webpack:///./src/views/Reporting/CostDistribution.vue?5faf","webpack:///./src/views/Reporting/CostDistribution.vue?4fcb","webpack:///./src/views/Reporting/CostDistribution.vue?53a6","webpack:///./src/views/Settings/CamMessageSettings.vue","webpack:///./src/dtos/messageTranslationDto.ts","webpack:///./src/views/Settings/CamMessageSettings.vue?4c93","webpack:///./src/views/Settings/CamMessageSettings.vue?08e3","webpack:///./src/views/Settings/CamMessageSettings.vue?7f18","webpack:///./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack:///./src/views/Settings/Settings.vue?7d21","webpack:///./src/views/Settings/CalcSettings.vue?1399","webpack:///./src/views/Customer/Detail.vue","webpack:///./src/dtos/customerDetailDto.ts","webpack:///./src/dtos/customerInfoDto.ts","webpack:///./src/components/AddressesOverview.vue","webpack:///./src/components/AddressTile.vue","webpack:///./src/components/AddressTile.vue?def9","webpack:///./src/components/AddressTile.vue?3e94","webpack:///./src/components/AddressTile.vue?a908","webpack:///./src/components/AddressesOverview.vue?4ebc","webpack:///./src/components/AddressesOverview.vue?591b","webpack:///./src/components/AddressesOverview.vue?ed93","webpack:///./node_modules/vuetify/lib/components/VTimeline/VTimeline.js","webpack:///./node_modules/vuetify/lib/components/VTimeline/VTimelineItem.js","webpack:///./src/components/AuditTrail.vue","webpack:///./src/components/AuditTrail.vue?9d79","webpack:///./src/components/AuditTrail.vue?9759","webpack:///./src/components/AuditTrail.vue?445a","webpack:///./src/components/UserTile.vue","webpack:///./src/dtos/userDto.ts","webpack:///./src/components/UserTile.vue?2d84","webpack:///./src/components/UserTile.vue?feea","webpack:///./src/components/UserTile.vue?cb54","webpack:///./src/views/Customer/Detail.vue?8c39","webpack:///./src/views/Customer/Detail.vue?44b3","webpack:///./src/views/Customer/Detail.vue?651c","webpack:///./src/views/Settings/GlobalSettings.vue","webpack:///./src/views/Settings/GlobalSettings.vue?b834","webpack:///./src/views/Settings/GlobalSettings.vue?6c41","webpack:///./src/views/Settings/GlobalSettings.vue?17bc","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack:///./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack:///./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack:///./src/components/EditAddressComponent.vue","webpack:///./src/components/EditAddressComponent.vue?07bc","webpack:///./src/components/EditAddressComponent.vue?995b","webpack:///./src/components/EditAddressComponent.vue?835e","webpack:///./src/views/ManufacturerSettlement/Dashboard.vue","webpack:///./src/views/ManufacturerSettlement/Dashboard.vue?45a4","webpack:///./src/views/ManufacturerSettlement/Dashboard.vue?77d9","webpack:///./src/views/ManufacturerSettlement/Dashboard.vue?93e2","webpack:///./src/views/Settings/CamMessageSettings.vue?8e36","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack:///./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","webpack:///./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack:///./node_modules/@babel/runtime/helpers/esm/slicedToArray.js","webpack:///./src/views/Orders/EditOrder.vue","webpack:///./src/dtos/customerOrderPositionDto.ts","webpack:///./src/views/Orders/EditOrder.vue?d9c2","webpack:///./src/views/Orders/EditOrder.vue?882f","webpack:///./src/views/Orders/EditOrder.vue?6cc6","webpack:///./src/views/Settings/Settings.vue","webpack:///./src/views/Settings/Settings.vue?baab","webpack:///./src/views/Settings/Settings.vue?d0b1","webpack:///./src/views/Settings/Settings.vue?a958","webpack:///./src/components/UserTile.vue?bd17","webpack:///./src/views/Customer/Calculations.vue","webpack:///./src/views/Customer/Calculations.vue?9473","webpack:///./src/views/Customer/Calculations.vue?ca1b","webpack:///./src/views/Customer/Calculations.vue?f33b","webpack:///./src/components/OrderCalculationComponent.vue","webpack:///./src/components/OrderCalculationComponent.vue?5ecc","webpack:///./src/components/OrderCalculationComponent.vue?7e2f","webpack:///./src/components/OrderCalculationComponent.vue?112a","webpack:///./node_modules/core-js/modules/es6.set.js","webpack:///./node_modules/core-js/modules/_object-to-array.js","webpack:///./src/views/Reporting/OrderVolumePerTechnology.vue","webpack:///./src/views/Reporting/OrderVolumePerTechnology.vue?60cf","webpack:///./src/views/Reporting/OrderVolumePerTechnology.vue?52de","webpack:///./src/views/Reporting/OrderVolumePerTechnology.vue?b6e5","webpack:///./src/views/Marketing/LinkDashboard.vue","webpack:///./src/dtos/marketingCampaignDto.ts","webpack:///./src/dtos/socialMediaPlattform.ts","webpack:///./src/views/Marketing/LinkDashboard.vue?ae8d","webpack:///./src/views/Marketing/LinkDashboard.vue?a21c","webpack:///./src/views/Marketing/LinkDashboard.vue?68b6","webpack:///./src/views/Customer/Dashboard.vue","webpack:///./src/views/Customer/Dashboard.vue?6946","webpack:///./src/views/Customer/Dashboard.vue?14ca","webpack:///./src/views/Customer/Dashboard.vue?8273","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack:///./src/views/Settings/MaterialSettings.vue","webpack:///./src/components/MaterialValidationSettingsComponent.vue","webpack:///./src/components/MaterialValidationSettingsComponent.vue?5810","webpack:///./src/components/MaterialValidationSettingsComponent.vue?2f8b","webpack:///./src/components/MaterialValidationSettingsComponent.vue?6458","webpack:///./src/components/NewMaterialDialog.vue","webpack:///./src/components/NewMaterialDialog.vue?798d","webpack:///./src/components/NewMaterialDialog.vue?a027","webpack:///./src/components/NewMaterialDialog.vue?1c55","webpack:///./src/components/CompareMaterialDialog.vue","webpack:///./src/components/CompareMaterialDialog.vue?434e","webpack:///./src/components/CompareMaterialDialog.vue?100a","webpack:///./src/components/CompareMaterialDialog.vue?60b0","webpack:///./src/views/Settings/MaterialSettings.vue?f24e","webpack:///./src/views/Settings/MaterialSettings.vue?da40","webpack:///./src/views/Settings/MaterialSettings.vue?264d","webpack:///./src/views/Reporting/TransportCost.vue","webpack:///./src/views/Reporting/TransportCost.vue?4749","webpack:///./src/views/Reporting/TransportCost.vue?67bf","webpack:///./src/views/Reporting/TransportCost.vue?71a6","webpack:///./src/views/Settings/FormTemplateSettings.vue","webpack:///./src/dtos/formVorlageDto.ts","webpack:///./src/components/FormTemplateDataTable.vue","webpack:///./src/components/FormTemplateDataTable.vue?41af","webpack:///./src/components/FormTemplateDataTable.vue?ad73","webpack:///./src/components/FormTemplateDataTable.vue?d400","webpack:///./src/views/Settings/FormTemplateSettings.vue?7edf","webpack:///./src/views/Settings/FormTemplateSettings.vue?f80d","webpack:///./src/views/Settings/FormTemplateSettings.vue?b4ac","webpack:///./src/views/Settings/CamMonitor.vue","webpack:///./src/views/Settings/CamMonitor.vue?fa4d","webpack:///./src/views/Settings/CamMonitor.vue?b9c9","webpack:///./src/views/Settings/CamMonitor.vue?dd90","webpack:///./src/views/Reporting/Reports.vue","webpack:///./src/views/Reporting/ReportIncomingOrders.vue","webpack:///./src/views/Accounting/RegionTotals.vue","webpack:///./src/views/Accounting/RegionTotals.vue?9fd0","webpack:///./src/views/Accounting/RegionTotals.vue?927b","webpack:///./src/views/Accounting/RegionTotals.vue?42b8","webpack:///./src/views/Reporting/ReportIncomingOrders.vue?d5fb","webpack:///./src/views/Reporting/ReportIncomingOrders.vue?0bb9","webpack:///./src/views/Reporting/ReportIncomingOrders.vue?d91b","webpack:///./src/views/Reporting/ReportOrdersProgress.vue","webpack:///./src/views/Reporting/ReportOrdersProgress.vue?aa7b","webpack:///./src/views/Reporting/ReportOrdersProgress.vue?00ef","webpack:///./src/views/Reporting/ReportOrdersProgress.vue?ae67","webpack:///./src/views/Reporting/ReportOrdersEvaluation.vue","webpack:///./src/views/Reporting/ReportOrdersEvaluation.vue?0f48","webpack:///./src/views/Reporting/ReportOrdersEvaluation.vue?b707","webpack:///./src/views/Reporting/ReportOrdersEvaluation.vue?6e76","webpack:///./src/views/Reporting/Reports.vue?0d9b","webpack:///./src/views/Reporting/Reports.vue?f2e0","webpack:///./src/views/Reporting/Reports.vue?539d","webpack:///./src/dtos/erpCustomerOrderState.ts","webpack:///./src/views/Orders/Dashboard.vue","webpack:///./src/dtos/orderSortingType.ts","webpack:///./src/dtos/orderSearchRequestDto.ts","webpack:///./src/views/Orders/Dashboard.vue?3475","webpack:///./src/views/Orders/Dashboard.vue?e01f","webpack:///./src/views/Orders/Dashboard.vue?bdbe","webpack:///./src/views/Reporting/OrderVolumePerManufacturerReport.vue","webpack:///./src/views/Reporting/OrderVolumePerManufacturerReport.vue?c642","webpack:///./src/views/Reporting/OrderVolumePerManufacturerReport.vue?c5d6","webpack:///./src/views/Reporting/OrderVolumePerManufacturerReport.vue?22fe","webpack:///./src/views/Reporting/OrderedMaterials.vue","webpack:///./src/views/Reporting/OrderedMaterials.vue?684c","webpack:///./src/views/Reporting/OrderedMaterials.vue?4f10","webpack:///./src/views/Reporting/OrderedMaterials.vue?2b49","webpack:///./src/views/Customer/Calculations.vue?c634","webpack:///./src/views/Orders/EditCancellationRequest.vue","webpack:///./src/views/Orders/EditCancellationRequest.vue?4551","webpack:///./src/views/Orders/EditCancellationRequest.vue?ec41","webpack:///./src/views/Orders/EditCancellationRequest.vue?ac25","webpack:///./node_modules/core-js/modules/_validate-collection.js","webpack:///./src/views/Orders/Dashboard.vue?678f","webpack:///./src/dtos/powderApplication.ts","webpack:///./src/views/Settings/CalcSettings.vue","webpack:///./src/dtos/IPowderApplication.ts","webpack:///./src/views/Settings/CalcSettings.vue?4a71","webpack:///./src/views/Settings/CalcSettings.vue?4653","webpack:///./src/views/Settings/CalcSettings.vue?114c","webpack:///./src/components/OrderCalculationComponent.vue?d4b5","webpack:///./src/views/Reporting/Registration.vue","webpack:///./src/views/Reporting/Registration.vue?1454","webpack:///./src/views/Reporting/Registration.vue?1b11","webpack:///./src/views/Reporting/Registration.vue?5eb7","webpack:///./src/views/Reporting/ComplainRate.vue","webpack:///./src/views/Reporting/ComplainRate.vue?b08c","webpack:///./src/views/Reporting/ComplainRate.vue?2a17","webpack:///./src/views/Reporting/ComplainRate.vue?5aca","webpack:///./node_modules/core-js/modules/_collection-strong.js","webpack:///./src/views/Reporting/UploadedArticles.vue","webpack:///./src/views/Reporting/UploadedArticles.vue?1945","webpack:///./src/views/Reporting/UploadedArticles.vue?82fb","webpack:///./src/views/Reporting/UploadedArticles.vue?43a2","webpack:///./src/views/Customer/Dashboard.vue?d542","webpack:///./src/views/Settings/MaterialPrices.vue?fcb2","webpack:///./node_modules/core-js/modules/_collection.js","webpack:///./src/views/Settings/MaterialPrices.vue","webpack:///./src/views/Settings/MaterialPrices.vue?ce4d","webpack:///./src/views/Settings/MaterialPrices.vue?1f53","webpack:///./src/views/Settings/MaterialPrices.vue?dc37","webpack:///./src/views/Log.vue?19a3","webpack:///./src/views/ManufacturerSettlement/Dashboard.vue?c663","webpack:///./src/views/Reporting/ReportIncomingOrders.vue?0c0f","webpack:///./src/dtos/addressType.ts","webpack:///./node_modules/core-js/modules/es6.map.js","webpack:///./src/views/Reporting/DeliveryDelay.vue","webpack:///./src/views/Reporting/DeliveryDelay.vue?c17c","webpack:///./src/views/Reporting/DeliveryDelay.vue?9406","webpack:///./src/views/Reporting/DeliveryDelay.vue?40a5","webpack:///./src/views/Log.vue","webpack:///./src/views/Log.vue?8489","webpack:///./src/views/Log.vue?3398","webpack:///./src/views/Log.vue?7856","webpack:///./src/views/Orders/QuickOrder.vue","webpack:///./src/dtos/quickOrderPositionDto.ts","webpack:///./src/dtos/quickInvoiceDto.ts","webpack:///./src/views/Orders/Position.vue","webpack:///./src/views/Orders/Position.vue?bad7","webpack:///./src/views/Orders/Position.vue?2792","webpack:///./src/views/Orders/Position.vue?69c7","webpack:///./src/views/Orders/QuickOrder.vue?04db","webpack:///./src/views/Orders/QuickOrder.vue?80ae","webpack:///./src/views/Orders/QuickOrder.vue?e96e","webpack:///./node_modules/core-js/modules/es7.object.entries.js"],"names":["_setup","_vm","staticClass","years","model","value","year","expression","attrs","_e","ref","staticRenderFns","Chart","require","CostDistributionReport","_Vue","_this","_classCallCheck","chart","costDistributions","loading","Date","getFullYear","_inherits","_createClass","key","this","loadReport","get","lastYears","index","push","_loadReport","_asyncToGenerator","regeneratorRuntime","mark","_callee","response","wrap","_context","prev","next","httpClient","concat","sent","data","updateDiagram","t0","console","error","$store","commit","finish","stop","apply","arguments","colors","labels","map","c","name","datasets","label","total","backgroundColor","hoverOffset","destroy","ctx","$refs","diagramCanvas","getContext","type","getDatasets","update","Vue","__decorate","Watch","Component","component","_c","$$v","callback","tab","click","_v","getTypedMessages","message","$set","on","createOrEdit","editDialog","valid","isEditMessage","currentEdit","severities","newSeverity","boostKeyRules","messageType","requiredRule","ignore","MessageTranslationDto","id","boostKey","errorCode","newMessageTitle","newMessage","ignoreFirstTime","helpLink","CustomerDashboard","saving","messages","messageTypes","suchbegriff","activeTab","tabs","v","replace","length","boostKeyIsTaken","rules","optionalUrlRule","loadCamMessages","loadMessageTypes","loadSeverities","_this2","lowerSearchTerm","toLowerCase","filter","m","includes","getMessageTypeName","filteredMessages","_this3","some","mt","item2","item1","_createOrEdit","messageId","JSON","parse","stringify","getTypeFromTab","form","validate","_x","_x2","_saveMessage","_callee2","_this4","_context2","post","findIndex","splice","unshift","log","saveMessage","_deleteMessage","_callee3","_context3","deleteMessage","_x3","_loadCamMessages","_callee4","_context4","_loadMessageTypes","_callee5","_context5","_loadSeverities","_callee6","_context6","_unsupportedIterableToArray","r","a","t","toString","call","slice","constructor","Array","from","test","addQuickInvoice","staticStyle","_l","addressesLoaded","saveCustomerDetail","customerDetail","branche","bemerkung","wieAufmerksamGeworden","eindruck","vorteil","alternativeBlechlieferanten","angerufenAm","technologie","naechsterSchritt","losgroessen","anforderungLieferzeit","wuensche","fachzeitschrift","kundeLöschenDialog","kundendatenVerschiebenDialog","user","tabTypes","validCreditLimit","targetCustomerId","customerId","CustomerDetailDto","beruflichePosition","cad","creditLimit","active","tags","deliveryAddresses","invoiceAddresses","CustomerInfoDto","companyName","surname","givenName","phone","eMail","street","town","plz","country","numberOfOrders","lastOrderDate","firstOrderDate","numberOfArtikel","totalAmountOrdered","registriertAm","users","render","currentEditAddress","$event","AddressTile","address","AddressDto","customerPersonalType","AddressType","CustomerPersonal","customerDeliveryType","CustomerDelivery","customerInvoiceType","CustomerInvoice","orderDeliveryType","OrderDelivery","orderInvoiceType","OrderInvoice","editAddressDialog","userCanChangeDeliveryAddress","userCanChangeInvoiceAddress","propAddress","Prop","components","EditAddressComponent","AddressesOverview","addresses","setAddress","copyAddresses","getters","customerPersonalAddress","state","detailCustomerDetails","_extends","Object","assign","target","i","source","prototype","hasOwnProperty","mixins","extend","props","alignTop","Boolean","dense","computed","classes","themeClasses","h","$slots","default","color","String","fillDot","hideDot","icon","iconColor","large","left","right","small","hasIcon","methods","genBody","$createElement","genIcon","dark","theme","isDark","genInnerDot","setBackgroundColor","genDot","class","genOpposite","opposite","children","slot","articleIdProp","AuditTrail","auditsLoading","audits","articleCreateEvent","EventType","ArticleCreated","articleDeleteEvent","ArticleDeleted","calculateOrderEvent","CalculatedOrder","articleValidatedEvent","ArticleValidated","loadAudits","eventType","audit","articleId","calculationId","ArticleState","OK","Warning","Error","Locked","New","Open","Info","Deleted","_loadAudits","confirmed","saveUser","UserDto","userId","firstname","lastname","newsletterSubscribed","canManageUsers","canChangeDeliveryAddress","canChangeInvoiceAddress","canOrderDirectly","canOrderIndirectly","funktion","UserTile","lastUser","isValid","isLoading","requiredStringMax35Rule","_saveClaim","username","claimType","claimValue","claimDto","status","saveClaim","_x4","_saveUser","hasChanges","_getLoginCode","link","url","document","createElement","process","undefined","substr","href","encodeURIComponent","setAttribute","getLoginCode","requiredNonNegativeIntegerRule","display","_mounted","loadData","mounted","_loadData","loadCustomerInfo","then","loadCustomerDetail","detailCustomerInfo","set","details","_loadCustomerInfo","_loadCustomerDetail","$router","go","customerIdProp","params","_saveCustomerDetail","abrupt","customer","_updateCreditLimit","updateCreditLimit","_deleteCustomer","_callee7","hasOrders","_context7","delete","deleteCustomer","_moveCustomerData","_callee8","_context8","moveCustomerData","euroRate","GlobalSettings","loaded","euroValid","requiredNumber0To2Rule","isNaN","getGlobalSettings","_getGlobalSettings","_saveEuroRate","saveEuroRate","_arrayWithoutHoles","isArray","arrayLikeToArray","_iterableToArray","Symbol","iterator","_nonIterableSpread","TypeError","_toConsumableArray","unsupportedIterableToArray","addressType","blur","validForm","addressOptionalStringRule","addressRequiredStringRule","requiredEmailRule","optionalEmailRule","correctPlzRule","parseInt","_saveAddress","orderId","$emit","t1","saveAddress","fertigers","style","endDate","loadFertigerPrices","isLoadingExcel","getExcel","fertiger","rawName","showResults","lieferterminImZeitraum","eingegangenImZeitraum","zertifikatsaufwand","pulverbeschichtungsAufwand","kostenpunkt","_s","fertigerCalculationReport","orderCalculationReportDtos","headers","scopedSlots","fn","header","expanded","showCalculationDetailsDialog","currentPosition","description","quantity","_u","showRecalculateDialog","idToAdd","ManufacturerSettlementDashboard","recalculationIds","startDate","moment","subtract","format","add","getPriceModelText","PriceModelDefault","text","align","sortable","width","detailHeaders","positionHeader","store","filteredItems","o","deliveryDate","isSameOrAfter","isSameOrBefore","receivedAt","thirdPartyCost","effektiveTransportkosten","reduce","k","cost","summeCustomerOrderPrices","summeFertiger","deckungsbeitrag","_step","summe","_iterator","_createForOfIteratorHelper","filteredOrders","s","n","done","order","totalFertigerPrice","err","e","f","summePowderCoaterDiscounts","summeManufacturerDiscounts","_step2","_iterator2","totalCustomerOrderPrice","_step3","_iterator3","_step4","_iterator4","_step5","_iterator5","verpackungsmaterial","_step6","_iterator6","materialaufwand","_step7","_iterator7","totalManufacturingComplaints","discounts","forEach","d","manufacturerShare","_step8","_iterator8","totalPowderCoatingComplaints","powderCoaterShare","blexonShare","_step9","kosten","_iterator9","_loop","transportCompany","group","find","transportAufwand","orderCalculationReportDto","positionCalculationReportDtos","p","fertigerPrice","customerOrderPrice","_step10","_iterator10","orderReport","priceIsWrong","position","_loadFertigerPrices","resetResults","_step11","_iterator11","date","_getExcel","forPowderCoating","start","ende","filenamepart","filename","method","responseType","FileSaver","saveAs","Blob","_neuBerechnen","_iterator12","_step12","neuBerechnen","DatePicker","_arrayWithHoles","_iterableToArrayLimit","l","u","_nonIterableRest","_slicedToArray","textDecoration","item","changed","gefilterteArtikel","articleFilter","selectedArticle","CustomerOrderPositionDto","articlelId","customerPricePerPart","menge","loadingKommission","addDialog","price","selectedPriceModel","priceInfoUpdateInfo","loadOrder","PriceModel","priceModel","keys","Number","customerOrderState","_loadOrder","_addArticle","dummy","getPartsAndPositions","partId","parseFloat","positions","addArticle","_loadArticle","generalArticleResponse","customerArticleName","loadArticle","_savePositions","changedPositions","positionDto","recalculate","fertigerId","back","savePositions","_setPriceModel","setPriceModel","_recalculate","_updateKommissionsNummer","kommissionsNummer","updateKommissionsNummer","parts","now","ArticleCadPreview","selectedBroadcastEventType","currentBroadcastMessage","directives","isMaintenanceBroadcast","executeSystemCommand","Settings","newBroadcastMessage","broadcastEventTypes","getBroadcastMessage","_getBroadcastMessage","_saveBroadcastMessage","broadcastInfo","isMaintenance","saveBroadcastMessage","_deleteBroadcastMessage","deleteBroadcastMessage","_executeSystemCommand","command","_updateMailChimp","updateMailChimp","_sendInvoices","sendInvoices","_createInvoices","createInvoices","searchTerm","regions","fromDate","untilDate","filteredCalculations","onClickedAuditGroup","stopPropagation","getIndividualCustomerAudits","article","getDiscountsFromString","showOrderWorkStepsDialog","currentOrderWorkSteps","Calculations","calculations","customerAudits","currentOrderArticleMaterials","Map","articleMaterials","lastSearchTerm","filterRegions","groupHeaders","auditHeaders","loadCalculations","loadCustomerCalculationAudits","ca","articles","hashMap","material","weight","materialWeightInKilos","has","filtered","_loadCalculations","fromString","_toString","toISOString","_loadCustomerCalculationAudits","_showOrderCalculation","groupBy","stepsResponse","xs","rv","x","entries","clear","step","showOrderCalculation","items","isDesc","sort","b","lastCalculationPrice","numberOfCalculations","dateA","lastCalculation","dateB","getTime","calculationDate","discountString","split","discount","displayText","OrderCalculationComponent","show","index2","index3","workstep","close","allPriceModels","enumValue","steps","grouped","worksteps","sum","manufacturerPrice","strong","SET","module","exports","def","DESCRIPTORS","getKeys","toIObject","isEnum","isEntries","it","O","result","OrderVolumePerTechnologyReport","orderVolume","getData","technologyCombinations","volume","combination","_technologyCombinatio","_i","orders","needsFeatures","needsBend","needsPowderCoating","needsWelding","partialSum","Math","round","title","options","scales","y","beginAtZero","showAll","saveCampaign","plattform","copyToClipboard","MarketingCampainDto","createdAt","targetLink","isPermanent","results","Plattforms","LinkDashboard","links","plattforms","loadLinks","_loadLinks","_addCampaign","campaign","addCampaign","_saveCampaign","navigator","clipboard","writeText","marketingLink","_unused2","plattformResults","clickSource","numberOfClicks","numberOfRegistrations","volltextSuche","filterCountries","filterTags","customers","hasMoreToLoad","manuallyLoadMoreCustomers","loadBatchSize","isCustomersLoading","isTotalLoading","currentFilterCustomerCount","skipRules","totalCustomerCount","to","vm","window","addEventListener","checkBottom","removeEventListener","loadCustomers","getTotalCustomerCount","isLoadingCustomers","currentCustomerSearchRequest","manualSkip","skip","customerLastSearchTerm","hasMoreCustomersToLoad","customerVolltextSuche","isVolltextSuche","customerFilterTags","countries","customerFilterCountries","_loadCustomers","reload","setLoading","searchRequest","customerInfos","count","_getTotalCustomerCount","bottomOfWindow","innerHeight","pageYOffset","body","offsetHeight","indexOf","column","newSort","sortProps","sortByColumn","sortDescending","sortingType","getSortTypeFromColumn","descending","currentSortingType","customerSortingType","CustomerSortingType","CustomerIdAscending","CustomerIdDescending","FirmaAscending","FirmaDescending","VornameAscending","VornameDescending","NachnameAscending","NachnameDescending","RegisteredAscending","RegisteredDescending","FirstOrderAscending","FirstOrderDescending","LastOrderAscending","LastOrderDescending","NumberOfArticlesAscending","NumberOfArticlesDescending","NumberOfOrdersAscending","NumberOfOrdersDescending","OrderSumAscending","OrderSumDescending","debounce","leading","_arrayLikeToArray","rohmaterial","updateMaterial","isBothSidesEnabled","isTrowalisierenEnabled","editDialogOpen","editRohmaterialId","newMaterialWerkstoffName","newMaterialMaterialList","newMaterialDialog","compareMaterialBaseMaterial","compareMaterialDialog","maximalDistanceForWeldline","parameter","bendRadius","upperTolerance","lowerTolerance","_n","toleranzBiegezoneAussenkontur","falzRadius","gewinde","senkung","durchzug","ValidationSettings","formVorlagen","_loadSettings","responseVorlagen","rohmaterialId","loadSettings","designFormTemplate","neu","toolId","priceFactor","setupCostPriceFactor","gewindeParameterDtos","senkungParameterDtos","durchzugParameterDtos","radius","bendRadiuses","falzRadiuses","_speichern","speichern","baseMaterialRule","selectedBaseMaterialId","newMaterialName","newMaterialThickness","createMaterial","NewMaterialDialog","materialNameRule","isNoDuplicate","requiredNumberBiggerZeroRule","materials","materialName","baseMaterialId","baseWerkstoffName","werkstoffName","materialBeschreibung","thickness","compareMaterialId","compareMaterialRule","selectedCompareMaterialId","differencesText","domProps","copyMaterial","CompareMaterialDialog","compareMaterialName","baseMaterial","compareMaterials","_compareMaterials","MaterialSettings","editRohmaterialBezeichnung","werkstoffEntgratenSettingDtos","compareMaterialWerkstoffName","rohmaterialEntgratenSettings","res","displayName","werkstoffBezeichnung","bezeichnung","_updateMaterial","_createNewMaterial","createNewMaterial","_copyMaterial","MaterialValidationSettingsComponent","providerCount","pagination","OrderedMaterialsReport","report","deviationThreshold","rowsPerPage","orderCosts","abs","costDifference","transportProviderName","correct","incorrect","_ref","_ref2","provider","counts","formTab","designFormTemplateTypes","deleteTemplate","editTemplate","requiredStringMax10Rule","param","senkungsSeiteTypes","FormVorlageDto","formId","stanzwerkzeugId","parameters","isActive","templates","getVerformungsrichtung","FormTemplateDataTable","template","boostName","FormTemplateSettings","currentEditTemplate","requiredStringMax50Rule","requiredMax1DecimalNumberRule","countDecimals","loadTemplates","localStorage","getItem","newTab","setItem","_loadTemplates","_saveTemplate","replaceNewTemplate","saveTemplate","_addTemplate","location","addTemplate","_deleteTemplate","deleteLocalTemplate","NaN","floor","decimals","_self","ComplainRateReport","sets","timestamp","numberOfRunningProcesses","numberOfProcessesInUse","numberOfExecutingProcesses","numberOfPendingCommands","borderColor","fill","elements","line","tension","animation","duration","hover","animationDuration","responsiveAnimationDuration","distinctPortalCustomerCount","allMandates","distinctMandateCustomerCount","groupTab","customerGroupReports","regionGroupReports","regionId","_setupProxy","orderAmount","currency","_f","totalPortal","distinctCustomerCount","RegionTotals","_callSuper","regionNameFromCountryCode","countryCode","region","regionOrders","totalMoney","totalAmount","EPSILON","distinctIds","Set","ReportIncomingOrders","orderIntakes","customerHeaders","customerPagination","sortBy","loadOrderReports","_loadReports","loadReports","_loadOrderReports","orderIntakeDtos","isMandate","getTotalPortal","getTotalMandate","allOrders","getRegionNameFromCountryCode","moneys","money","dateDiff","diff","groupedOrders","groupByKey","customerSummaries","lastName","regionSummaries","orderCount","firstEUROrder","currencyRate","storage","weeklyOrders","weekNumber","ReportOrdersProgress","startYear","selectableYears","_onStartYearChange","onStartYearChange","compareYearData","amountTotal","referenceYearData","referenceValues","compareValues","pointHitRadius","tooltips","callbacks","tooltipItem","yLabel","toFixed","timeRangeGroup","selectedNumberOfComparisons","getPercentage","amountAT","orderGroups","selectedComparisonType","comparisonTypes","numberOfComparisons","timeRangeTypes","setNumberOfcomparisonSelection","getFormattedDate","amountCHF","borderWidth","stack","amountDE","legend","yAxes","ticks","min","stacked","tempSelection","newNumber","part","Reports","ReportOrdersEvaluation","ErpCustomerOrderState","orderSearchTerm","articleSearchTerm","clickClear","filterStates","loadOrders","filterFertiger","totalWeightGreaterThen","weightOfASinglePositionGreaterThen","quantityOfASinglePositionGreaterThen","numberOfPositionsLessThen","goToCustomer","ersatzOrder","changeFertiger","blockInvoice","openSendOrderConfirmationDialog","sendFertigerMail","openReleaseOrderDialog","openCancelOrderdialog","updateTransportPosition","editAddress","getDeliveryNote","openTrackingLink","trackingLinkDialog","showPossibleFertigersDialog","currentCancellationRequest","showCancellationAtFertigerDialog","fertigerPortalLink","releaseOrderDialog","currentOrderSendConfirmation","currentOrderSendDirectlyToCustomer","sendOrderConfirmationDialog","cancelOrderDialog","cancelOrder","OrderSortingType","OrderSearchRequestDto","dateFrom","dateTo","OrderDateAscending","includeStorniert","includeOtherPositions","states","fertigerIds","OrderDashboard","showAnalyseFilters","currentEditedAddress","currentEditedAddressType","currentEditedOrderId","currentTrackingLink","articleFaceTypes","ArticleFaceTypes","powderFinishes","PowderFinishes","powderStructures","PowderStructures","getEntgratartText","currentOrderId","currentOrderFertigerId","currentCancelOrderId","currentCancelOrderFertigerId","possibleFertigers","orderCancellationRequests","loadOrderCancellationRequests","orderSuchbegriff","orderCancellations","number","_ref3","_ref4","word","orderFilterStates","orderFilterFertiger","blexonOrderId","fertigerUrlId","dbId","_loadOrders","orderSortingType","newOrder","orderIndex","localOrder","_downloadInvoice","dispatch","downloadInvoice","_loadOrderCancellationRequests","requests","_getDeliveryNote","URL","createObjectURL","_blockInvoice","invoiceHasBeenBlocked","_updateTransportPosition","_x5","_releaseInvoice","releaseInvoice","_x6","_createInvoice","Fakturiert","createInvoice","_x7","_updateDueDate","_callee9","newDate","_context9","dueDate","updateDueDate","_x8","_x9","_changeFertiger","_callee10","fertigerResponse","_context10","blexonFertigerId","_x10","_sendFertigerMail","_callee11","_context11","_x11","_sendOrderConfirmation","_callee12","_context12","sendOrderConfirmation","_releaseOrderandReload","_callee13","_context13","releaseOrder","releaseOrderandReload","_releaseOrder","_callee14","_context14","_cancelOrder","_callee15","_context15","customerOrder","Unvollstaendig","Gueltig","Freigegeben","Fertig","InStornierung","Geliefert","Abgeschlossen","Storniert","TerminUeberschritten","Gestoert","orderSorting","StateAscending","StateDescending","NameAscending","NameDescending","OrderIdAscending","OrderIdDescending","OrderDateDescending","ShippingDateAscending","ShippingDateDescending","FertigerAscending","FertigerDescending","_editAddress","_callee16","_context16","_x12","_x13","_openTrackingLink","_callee17","_context17","_x14","_callee18","_context18","materialBezeichnung","_x15","gewicht","_this5","währung","getTotal","_regions","substring","toDate","featureTexts","featureDtos","formVorlageText","hasEngravings","join","OrderVolumePerManufacturerReport","reports","manufacturersResponse","orderVolumes","delegateYield","t2","t3","relevantFertigers","fertigerSet","orderOfFertiger","getMonth","plugins","responsive","xAxes","groupByWerkstoffe","reportedType","list","keyGetter","collection","array","values","orderedMaterials","orderedMaterial","thicknessGroups","singleData","werkstoffGroups","g","w","totalWeightInKg","numberOfPositions","_loop2","werkstoffGroup","thicknesses","pos","cancellationCost","goToOrders","EditCancellationRequest","request","formValid","requiredNonNegativeNumberRule","requestIsLoaded","loadRequest","positionCost","acc","fixCosts","_loadRequest","_saveCost","cancellationSettingsAreValid","saveCost","stepValue","stateValue","isObject","TYPE","_t","PowderApplication","validForms","regionSettings","regionOpenExpand","refInFor","reverse","iban","holidayOpenExpand","holidayTypesIds","$$el","$$c","$$i","priceSettings","openExpand","validAllgemein","blexonMargeOverall","optionalNumber0To1Rule","keyup","optionalNonNegativeNumberRule","validNcProgramm","ncErzeugungPauschale","validSchneiden","einrichtkostenPauschale","validFeatures","pauschaleProFeature","validEntgraten","stundensatzManuellesEntgraten","validBiegen","stundensatzBiegemaschine","validSchweissen","stundensatzSchweissen","pulverbeschichtungFarbeBasisPreis","stundensatzPulverbeschichten","validTeilehandling","stundensatzTeilevereinzelung","validZertifikat","pauschaleZertifikat","validVerpacken","lkwTransportPauschale","requiredNumber0To1Rule","blexonMargeVerpackungsaufwand","palettenHandlingPauschale","stundensatzVerpacker","validStornieren","pauschaleStornieranfrage","editPowderDialog","showFinishMatt","powderHeaders","loadingPowder","updateRegionPowder","Internal","ExternalIndustry","ExternalFassade","CalcSettings","holidayTypes","optionalNonNegativeIntegerRule","requiredNumberBiggerEqual1Rule","currentPowderRegionId","regionPowders","powderApplications","PowderApplications","ralFilterTerm","showStructureFein","showStructureGrob","showStructureGlatt","showFinishGlaenzend","formRegion","formAllgemein","formNcprogramm","formSchneiden","formBiegen","formEntgraten","formFeatures","formPulverbeschichten","formTeilehandling","formVerpacken","formZertifikat","formStornieren","every","rs","ps","validPulverbeschichten","Standard","propertyName","standardSettings","standardPropValue","surfaceColor","ralCode","structure","PowderStructure","Fine","Smooth","Rough","PowderFinish","Glossy","Matt","c1","c2","_openPowderEditDialog","settings","openPowderEditDialog","_updateRegionPowder","powder","powderDto","setupPriceFactor","powderId","available","holidays","_updateSettings","updateSettings","interval","RegistrationReport","registrationReport","intervals","referenceData","registrations","uniqueLabels","getLabels","complainRates","complain","fertigerComplainRates","complainRateInProcent","fertigerName","procent","datasetIndex","dP","create","redefineAll","anInstance","forOf","$iterDefine","setSpecies","fastKey","SIZE","getEntry","that","entry","getConstructor","wrapper","NAME","IS_MAP","ADDER","C","iterable","callbackfn","setStrong","iterated","kind","_k","UploadedArticlesReport","uploadReport","tealLight","tealDark","blueLight","blueDark","purpleLight","purpleDark","timeFrame","re","regionName","ar","interaction","intersect","global","$export","redefine","meta","fails","$iterDetect","setToStringTag","inheritIfRequired","common","IS_WEAK","Base","proto","fixMethod","KEY","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","iter","BUGGY_ZERO","$instance","NEED","G","W","F","regionPriceLists","change","modelPrice","loadPrices","standardPrice","modelPrices","mp","rp","werkstoffe","getEnumNameFromValue","_loadPrices","_assignWerkstoffToRegion","werkstoff","assignWerkstoffToRegion","MAP","DeliveryDelayReport","delayReports","procentOnTime","procentOneDayDelay","procentMoreThenOneDayDelay","max","system","level","setStartDate","logs","Log","startDateString","suche","systems","levels","storedValue","loadLog","_loadLog","logIndex","systemsAsJson","selected","textArea","innerHTML","comment","addPosition","QuickOrderPositionDto","unit","pricePerUnit","QuickInvoiceDto","updateSearchInput","QuickOrder","requiredIntegerRule","requiredNumberRule","loadCustomer","_loadCustomer","_save","history","save","newPosition","PositionComponent","$entries","S"],"mappings":"4IAA4DA,EAAOC,WAAsB,MAAU,KAAgBC,UAAY,GAA6B,oB,OAAkE,EAAC,e,YAAS,qB,CAAO,KAAO,8CAAKC,UAAK,MAAC,CAACC,MAAM,OAACC,MAAOJ,EAAIK,O,MAAkC,CAAS,MAAC,OAACC,SAAU,SAAC,GAAM,UAA0CC,WAAM,UAAmB,oBAAG,MAAKC,CAAkBC,cAAI,MAClb,mBACGC,uBAEJ,I,2aCDA,IAAMC,EAAQC,EAAQ,QAIDC,GAHPD,EAAQ,QAGqB,SAAAE,GAA3C,SAAAD,IAAA,IAAAE,EAIoD,OAJpDC,eAAA,KAAAH,G,sBACYE,EAAAE,MAAa,KACbF,EAAAG,kBAAyB,GACzBH,EAAAI,SAAmB,EACnBJ,EAAAV,MAAe,IAAIe,MAAOC,cAAcN,EAgFnD,OAAAO,eAAAT,EAAAC,GAAAS,eAAAV,EAAA,EAAAW,IAAA,UAAApB,MA9EW,WACJqB,KAAKC,eACR,CAAAF,IAAA,QAAAG,IAED,WAGI,IADA,IAAIC,EAAY,GACPC,GAAQ,IAAIT,MAAOC,cAAeQ,GAAS,KAAMA,IACtDD,EAAUE,KAAKD,GAEnB,OAAOD,IACV,CAAAJ,IAAA,aAAApB,MAAA,eAAA2B,EAAAC,eAAAC,mBAAAC,MAGO,SAAAC,IAAA,IAAAC,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAGoB,OAHpBF,EAAAC,KAAA,EAGAd,KAAKN,SAAU,EAAKmB,EAAAE,KAAA,EACGC,iBAAad,IAAI,mCAADe,OAAoCjB,KAAKpB,OAAO,OAAjF+B,EAAQE,EAAAK,KACdlB,KAAKP,kBAAoBkB,EAASQ,KAClCnB,KAAKoB,gBAAgBP,EAAAE,KAAA,gBAAAF,EAAAC,KAAA,EAAAD,EAAAQ,GAAAR,EAAA,YAErBS,QAAQC,MAAM,0BACdD,QAAQC,MAAKV,EAAAQ,IACtBrB,KAAKwB,OAAOC,OAAO,uBAAwB,iDAAiD,QAE9D,OAF8DZ,EAAAC,KAAA,GAEnFd,KAAKN,SAAU,EAAMmB,EAAAa,OAAA,6BAAAb,EAAAc,UAAAjB,EAAA,wBAE5B,SAdaT,IAAU,OAAAK,EAAAsB,MAAC,KAADC,WAAA,OAAV5B,EAHb,IAGuB,CAAAF,IAAA,cAAApB,MAgBhB,WAEJ,IAAMmD,EAAS,CACX,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,WAGAX,EAAO,CACPY,OAAQ/B,KAAKP,kBAAkBuC,KAAI,SAACC,GAAM,SAAAhB,OAAQgB,EAAEC,SACpDC,SAAU,CAAC,CACPC,MAAO,mBACPjB,KAAMnB,KAAKP,kBAAkBuC,KAAI,SAACC,GAAM,OAAKA,EAAEI,SAC/CC,gBAAiBR,EACjBS,YAAa,KAGrB,OAAOpB,IACV,CAAApB,IAAA,gBAAApB,MAEO,WACWqB,KAAKP,kBAGR,MAAdO,KAAKR,OACRQ,KAAKR,MAAMgD,UAGN,IAAMC,EAAOzC,KAAK0C,MAAMC,cAAsBC,WAAW,MACzD5C,KAAKR,MAAQ,IAAIN,EAAMuD,EAAK,CAExBI,KAAM,MAEN1B,KAAMnB,KAAK8C,gBAGf9C,KAAKR,MAAMuD,aAlFwB,CAASC,SAoBhDC,eAAA,CADCC,eAAM,S,+BAnBU9D,EAAsB6D,eAAA,CAD1CE,QACoB/D,WCPuY,I,YCOxZgE,EAAY,eACd,EACA,EACAnE,GACA,EACA,KACA,KACA,MAIa,aAAAmE,E,8RClB8S,W,IAAmB,OAAgB,aAAU,EAAE7E,MAAM,Y,OAA8G,EAAC,Q,YAAO,OAAE,OAAI8E,MAAG,GAAUvE,eAAM,KAAY,qBAAE,MAAK,CAAgBA,IAAM,K,CAA+D,SAAQ,CAAQ,YAAC,iBAACJ,MAAM,CAACC,KAAOJ,O,GAA0CA,OAAgB+E,C,MAAI,CAACzE,cAAW,GAAa,mBAAyBH,IAAM,iG,MAAM,CAAiB6E,S,CAA0C,EAAC,Q,MAAC1E,CAAsB,YAAoC,UAAiB,C,MAAM2E,CAAI,YAAS,gDAAyCjF,MAAQA,U,MAAoDiF,CAAI,MAAK,cAAShF,kBAAY,GAAqBM,EAAK,YAAC,GAAkC,WAAC,kB,IAAK,GAAO,EAAC,OAAR2E,C,MAAyB,C,MAA+B,YAAC,qBAAIlF,EAAImF,UAAG,G,WAAsF,c,CAAU,yBAAC,OAAO,EAACC,QAAgD7E,IAAK,G,CAAE,KAAM,aAAC,yBAAE,yBAAC,OAAM,EAAG,OAAC,CAAuK,O,CAAoBiB,EAAG,OAAC6D,C,YAAiB,qB,MAAC,C,MAAgB,2B,GAAY,CAAQ,kBAAIP,OAAG,EAAQ,aAAK,Q,CAAmL,uEAAC,MAAM,CAAUvE,IAAM,G,KAAO,KAAK,GAAG0E,iBAAkB,WAAc,EAAC,U,MAAM,C,KAAE,K,GAAkE,4GAAQ,+C,OAAK,UAAG,IAAEA,EAAQ,GAA4B1E,MAAM,CAAC,QAAc,IAAO,GAAyB,IAAO,GAAQ,SAAuBA,GAAK,OAAC,8G,MAAC,CAAc,IAAO,KAAoC,WAAG,MAAK,CAAmBA,KAAM,K,CAAyB,SAAf,UAAe,CAAE,OAAIuE,SAAW,GAAEvE,MAAM,oCAAC,MAAM,QAAS,UAAHuE,EAAgB,CAACvE,MAAM,CAAC,SAAW,GAAG,QAAe,gBAAG,MAAQ,UAA8B,CAACJ,MAAM,CAACC,SAAOiF,GAAgBL,MAAQ,EAAC,S,MAAoBM,eAA8BhF,OAAU,EAAC,QAAgB,OAAI,IAAM,GAAWC,eAAM,KAAS,WAAE,MAAK,CAAcA,IAAM,K,CAAe,SAAc,C,MAAI,CAAiC,SAAQ,GAAS,kBAACJ,MAAM,aAACC,MAAOiF,U,MAAqD,CAAsC,MAAC,SAAC/E,SAAU,SAAC,GAAyB,sBAAgEL,WAAY,qBAAuB,GAAK,EAAC,OAAE,C,MAAC,CAAW,IAAO,KAAoBsF,CAAE,EAAC,Q,MAAC,C,SAAmC,GAA0B,kBAAC,+BAAIT,MAAG,UAAyEvE,MAAM,CAAC,MAAM,EAAE,gBAAC,SAAQ,SAAE,GAAC,OAAQ,wBAAwB,WAAC,8B,IAA0B,IAAOP,GAAIwF,SAAaH,CAAO,EAAG,QAAM,U,YAAA,gBAAC,OAAIP,IAAG,GAA+C,MAAK,GAAO,MAAI9E,mBAA+B,IAAgB,MAAQ,YAAQ,gCAA+BgF,UAAS,GAATA,gBAAwB,aAAChF,YAAIyF,gBAAe,OAACnF,IAAU,GAAa,SAAO,MAAS,sBAAYH,GAAM,CAACC,MAAWsF,SAAM,GAACV,OAAS,eAAUD,EAAK,SAAgBzE,UAAW,oCAAO,WAAIwE,IAAG,GAAQ,EAAI9E,KAAI2F,SAAa,CAAiKpF,MAAM,CAAC,WAAM,GAAE,eAAiBA,MAAM,CAAC,MAAM,EAAC,WAAE,qBAAM,EAAC,WAAW,GAAQ,WAAW,e,CAA4B,U,IAAoB,O,MAAqB,CAAoF,cAACJ,SAAM,YAACC,EAAK,MAAMwF,G,WAA2D5F,U,CAAsCM,SAAU,CAAC,0IAAyB,OAAI,IAAM,K,CAAwB,SAAM,CAAE,OAAIwE,KAAG,K,CAAiB,SAAO,CAAE,OAAIA,MAAG,EAAU,aAAEvE,MAAM,MAAC,YAAYsF,QAAW,aAAQ,QAAc,SAAmB,KAAR,EAAC,YAAO,6CAAqB,MAAC,CAAC1F,MAAM,0BAACC,SAAU,SAAa0F,GAAad,OAAS,cAAUD,cAAK,IAA8C,WAAC,8BAAqC,iBAAG,MAAK,CAAmBxE,IAAM,KAAS,WAAE,MAAK,CAAUA,KAAM,KAAU,WAAE,MAAK,CAAgBA,MAAM,aAAC,MAAQ,cAAW,YAAYwF,QAAc,sB,MAAK,C,MAAQ,EAAO/F,YAAI4F,YAAsD,qBAAC,uCAAQxF,WAAWwF,8B,IAAmDN,GAAI,EAACtF,OAAI4F,C,MAA8B,CAACtF,SAAqC,GAAG,OAAKwE,CAAevE,MAAM,CAAC,KAAM,KAAK,CAACuE,EAAG,OAAS,CAACvE,MAAM,CAAC,MAAO,WAAE,uBAAuBA,IAAO,OAAQ,WAAQ,OAAQP,EAAI4F,YAAYI,SAAW,EAAI,YAAUC,kB,MAAuB,C,MAAQ,EAAOjG,YAAI4F,SAAoE,qBAAC,oCAAQxF,WAAWwF,2B,IAA0DN,GAAI,EAACtF,OAAI4F,C,MAAqC,CAACtF,SAA4C,GAAG,OAAKwE,CAAevE,MAAM,CAAC,KAAM,KAAK,CAACuE,EAAG,OAAS,CAACvE,MAAM,CAAC,MAAO,QAAE,wDAAqBA,IAAO,OAAQ,WAAU,OAAQP,EAAI4F,YAAYI,gBAAkB,EAAGhG,YAAIiG,gBAAe,S,MAAQ,C,MAAQ,EAAOjG,YAAI4F,gBAA0D,qBAAC,2CAAQxF,WAAWwF,kC,IAAqDN,GAAI,EAACtF,OAAI4F,C,MAAgC,CAACtF,SAAuC,GAAG,OAAKwE,CAAevE,MAAM,CAAC,KAAM,KAAK,CAACuE,EAAG,OAAS,CAACvE,MAAM,CAAC,MAAO,UAAE,wDAAuBA,IAAO,OAAQP,WAAoB,OAAQ,2D,MAAyD,C,MAAQ,EAAOA,YAAI4F,WAAsD,qBAAC,sCAAQxF,WAAWwF,6B,IAAmDN,GAAI,EAACtF,OAAI4F,C,MAA8B,CAACtF,SAAqC,GAAG,OAAKwE,CAAevE,MAAM,CAAC,KAAM,KAAoB,WAAE,MAAK,CAAUA,MAAM,kBAAC,MAAM,mDAAI,GAAI,CAAeA,OAAM,WAAC,qBAAiB,yCAAsC,MAAC,CAACJ,MAAM,uBAACC,SAAU,SAAa8F,GAAQlB,OAAS,cAAUD,WAAK,IAAyC,WAAC,2BAAgC,iBAAG,MAAKD,CAAavE,IAAM,GAAC,eAAM,KAAK,CAACuE,EAAG,QAAcvE,MAAM,CAAC,S,CAAmD,SAAQ,CAAQ,MAAC,CAACJ,eAAM,GAACC,MAAOJ,aAAiCgF,MAAQ,U,MAAmE,CAAC1E,QAAU,YAAC,OAA6B,qBAAM,EAAG,KAAI,EAAGwE,YAAG,SAAkBA,IAA+B,WAAQ,yBAAuC,aAAC,OAAI9E,IAAO,KAAuGO,GAAK,OAAC,C,MAAC,CAAqB,eAAe,GAAO,+BAAG,MAAC,U,MAA0B,CAAwB,oCAAC,qBAAIP,EAAM,KAAC,oCAEp5NU,6C,miBCDSyF,EAAqB5E,gBAAlC,SAAA4E,IAAAnF,eAAA,KAAAmF,GACQ,KAAAC,GAAa,EACb,KAAAC,SAAmB,GACnB,KAAAC,UAAoB,GACpB,KAAAN,YAAsB,EACtB,KAAAO,gBAA0B,GAC1B,KAAAC,WAAqB,GACrB,KAAAV,YAAsB,EACtB,KAAAI,QAAkB,EAClB,KAAAO,iBAA2B,EAC3B,KAAAC,SAAmB,M,sSCH3B,IAAqBC,EAAiB,SAAA7F,GAAtC,SAAA6F,IAAA,IAAA5F,EAmByD,OAnBzDC,eAAA,KAAA2F,G,sBACY5F,EAAAI,SAAmB,EACnBJ,EAAA6F,QAAkB,EAClB7F,EAAA8F,SAAoC,GACpC9F,EAAA6E,YAAqC,IAAIO,EACzCpF,EAAA+F,aAAoB,GACpB/F,EAAA8E,WAAkB,GAClB9E,EAAAgG,YAAsB,GACtBhG,EAAAiG,UAAiB,KACjBjG,EAAAkG,KAAiB,CAAC,MAAO,SAAU,SACnClG,EAAA0E,YAAsB,EACtB1E,EAAA2E,OAAiB,EACjB3E,EAAAgF,cAAqB,CACzB,SAACmB,GAAS,QAAOA,GAAK,uBACtB,SAACA,GAAS,OAAKA,EAAEC,QAAQ,MAAO,IAAIC,OAAS,GAAK,4CAClD,SAACF,GAAS,OAAMA,GAAKA,EAAEE,QAAU,KAAO,gCACxC,SAACF,GAAS,OAAMnG,EAAKsG,gBAAgBH,IAAM,4BAEvCnG,EAAAkF,aAAoBqB,OAAMrB,aAC1BlF,EAAAwG,gBAAuBD,OAAMC,gBAAgBxG,EA0IxD,OAAAO,eAAAqF,EAAA7F,GAAAS,eAAAoF,EAAA,EAAAnF,IAAA,UAAApB,MAxIW,WACJqB,KAAK+F,kBACL/F,KAAKgG,mBACLhG,KAAKiG,mBACR,CAAAlG,IAAA,mBAAAG,IAED,WAA4B,IAAAgG,EAAA,KAClBC,EAAkBnG,KAAKsF,YAAYc,cACzC,OAAOpG,KAAKoF,SAASiB,QAAO,SAACC,GAAM,OAC/BA,EAAE1B,SAASwB,cAAcG,SAASJ,IAC9BG,EAAExB,iBAAmBwB,EAAExB,gBAAgBsB,cAAcG,SAASJ,IAC/DD,EAAKM,mBAAmBF,EAAE/B,aAAa6B,cAAcG,SAASJ,QAExE,CAAApG,IAAA,mBAAApB,MAEO,SAAiBkE,GACrB,OAAOA,GACH,IAAK,SACD,OAAO7C,KAAKyG,iBAAiBJ,QAAO,SAACC,GAAuB,OAAsB,KAAjBA,EAAE/B,eACvE,IAAK,QACD,OAAOvE,KAAKyG,iBAAiBJ,QAAO,SAACC,GAAuB,OAAsB,KAAjBA,EAAE/B,eACvE,IAAK,MACD,OAAOvE,KAAKyG,iBAAiBJ,QAAO,SAACC,GAAuB,OAAuB,MAAlBA,EAAE/B,aAAwC,KAAjB+B,EAAE/B,eAChG,QACI,MAAO,MAElB,CAAAxE,IAAA,gBAAAG,IAED,WACI,OAAOF,KAAKmE,aAAenE,KAAKmE,YAAYQ,GAAK,IACpD,CAAA5E,IAAA,kBAAApB,MACO,SAAgBoB,GAAW,IAAA2G,EAAA,KAC/B,OAAO1G,KAAKoF,SAASuB,MAAK,SAACL,GAAK,OAAKA,EAAE1B,WAAa7E,GAAOuG,EAAE3B,KAAO+B,EAAKvC,YAAYQ,QACxF,CAAA5E,IAAA,qBAAApB,MAEO,SAAmBkE,GACvB,OAAO7C,KAAKqF,aAAagB,QAAO,SAACO,GAAM,OAAKA,EAAGC,QAAUhE,KAAM,GAAGiE,QACrE,CAAA/G,IAAA,iBAAApB,MACO,SAAe6E,GACnB,OAAOA,GACH,IAAK,MACD,OAAO,EACX,IAAK,SACD,OAAO,IACX,IAAK,QACD,OAAO,IACX,QACI,OAAO,KAElB,CAAAzD,IAAA,eAAApB,MAAA,eAAAoI,EAAAxG,eAAAC,mBAAAC,MAEO,SAAAC,EAAmBsG,EAAmBxD,GAAW,OAAAhD,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAGjDf,KAAKmE,YAFL6C,EAAY,EAEOC,KAAKC,MAAMD,KAAKE,UAAUnH,KAAKoF,SAASiB,QAAO,SAACC,GAAuB,OAAKA,EAAE3B,KAAOqC,KAAW,KAGhG,CACfrC,GAAI,EACJJ,YAAavE,KAAKoH,eAAe5D,GACjCa,YAAa,EACbI,QAAQ,EACRO,iBAAiB,EACjBJ,SAAU,yBACVC,UAAW,GACXC,gBAAiB,GACjBC,WAAY,GACZE,SAAU,IAGlBjF,KAAKgE,YAAa,EACjBhE,KAAK0C,MAAM2E,KAAaC,WAAW,wBAAAzG,EAAAc,UAAAjB,EAAA,UACvC,SArBaqD,EAAYwD,EAAAC,GAAA,OAAAT,EAAAnF,MAAC,KAADC,WAAA,OAAZkC,EAFb,IAEyB,CAAAhE,IAAA,cAAApB,MAAA,eAAA8I,EAAAlH,eAAAC,mBAAAC,MAuBlB,SAAAiH,IAAA,IAAA/G,EAAAP,EAAAuH,EAAA,YAAAnH,mBAAAI,MAAA,SAAAgH,GAAA,eAAAA,EAAA9G,KAAA8G,EAAA7G,MAAA,OAEmB,OAFnB6G,EAAA9G,KAAA,EAEAd,KAAKmF,QAAS,EAAKyC,EAAA7G,KAAA,EACIC,iBAAa6G,KAAK,6BAA8B7H,KAAKmE,aAAY,OAAlFxD,EAAQiH,EAAA1G,KACTlB,KAAKkE,eAIF9D,EAAQJ,KAAKoF,SAAS0C,WAAU,SAACxB,GAAuB,OAAKA,EAAE3B,KAAOgD,EAAKxD,YAAYQ,MAC3F3E,KAAKoF,SAAS2C,OAAO3H,EAAO,EAAG6G,KAAKC,MAAMD,KAAKE,UAAUnH,KAAKmE,iBAJ9DnE,KAAKmE,YAAYQ,GAAKhE,EAASQ,KAC/BnB,KAAKoF,SAAS4C,QAAQf,KAAKC,MAAMD,KAAKE,UAAUnH,KAAKmE,gBAKzDnE,KAAKwB,OAAOC,OAAO,kBAAmB,uBAAuBmG,EAAA7G,KAAA,gBAAA6G,EAAA9G,KAAA,EAAA8G,EAAAvG,GAAAuG,EAAA,YAE7DtG,QAAQ2G,IAAGL,EAAAvG,IACXrB,KAAKwB,OAAOC,OAAO,uBAAwB,wCAAwC,QAG3D,OAH2DmG,EAAA9G,KAAA,GAEnFd,KAAKmF,QAAS,EACdnF,KAAKgE,YAAa,EAAM4D,EAAAlG,OAAA,6BAAAkG,EAAAjG,UAAA+F,EAAA,wBAE/B,SAnBaQ,IAAW,OAAAT,EAAA7F,MAAC,KAADC,WAAA,OAAXqG,EAvBY,IAuBD,CAAAnI,IAAA,gBAAApB,MAAA,eAAAwJ,EAAA5H,eAAAC,mBAAAC,MAqBjB,SAAA2H,EAAoBpB,GAAiB,IAAA5G,EAAA,OAAAI,mBAAAI,MAAA,SAAAyH,GAAA,eAAAA,EAAAvH,KAAAuH,EAAAtH,MAAA,cAAAsH,EAAAvH,KAAA,EAAAuH,EAAAtH,KAAA,EAE/BC,iBAAa6G,KAAK,0CAAD5G,OAA2C+F,GAAa,MAAK,OAChF5G,EAAQJ,KAAKoF,SAAS0C,WAAU,SAACxB,GAAuB,OAAKA,EAAE3B,KAAOqC,KAC1EhH,KAAKoF,SAAS2C,OAAO3H,EAAO,GAC5BJ,KAAKwB,OAAOC,OAAO,kBAAmB,oBAAoB4G,EAAAtH,KAAA,gBAAAsH,EAAAvH,KAAA,EAAAuH,EAAAhH,GAAAgH,EAAA,YAE1D/G,QAAQ2G,IAAGI,EAAAhH,IACXrB,KAAKwB,OAAOC,OAAO,uBAAwB,wCAAwC,yBAAA4G,EAAA1G,UAAAyG,EAAA,kBAE1F,SAVaE,EAAaC,GAAA,OAAAJ,EAAAvG,MAAC,KAADC,WAAA,OAAbyG,EArBW,IAqBE,CAAAvI,IAAA,kBAAApB,MAAA,eAAA6J,EAAAjI,eAAAC,mBAAAC,MAYnB,SAAAgI,IAAA,IAAA9H,EAAA,OAAAH,mBAAAI,MAAA,SAAA8H,GAAA,eAAAA,EAAA5H,KAAA4H,EAAA3H,MAAA,OAEoB,OAFpB2H,EAAA5H,KAAA,EAEAd,KAAKN,SAAU,EAAKgJ,EAAA3H,KAAA,EACGC,iBAAad,IAAI,8BAA6B,OAA/DS,EAAQ+H,EAAAxH,KACdlB,KAAKoF,SAAWzE,EAASQ,KAAKuH,EAAA3H,KAAA,gBAAA2H,EAAA5H,KAAA,EAAA4H,EAAArH,GAAAqH,EAAA,YAE9BpH,QAAQ2G,IAAI,6BAA6B,QAEpB,OAFoBS,EAAA5H,KAAA,GAEzCd,KAAKN,SAAU,EAAMgJ,EAAAhH,OAAA,6BAAAgH,EAAA/G,UAAA8G,EAAA,wBAE5B,SAVa1C,IAAe,OAAAyC,EAAA5G,MAAC,KAADC,WAAA,OAAfkE,EAZa,IAYE,CAAAhG,IAAA,mBAAApB,MAAA,eAAAgK,EAAApI,eAAAC,mBAAAC,MAYrB,SAAAmI,IAAA,IAAAjI,EAAA,OAAAH,mBAAAI,MAAA,SAAAiI,GAAA,eAAAA,EAAA/H,KAAA+H,EAAA9H,MAAA,cAAA8H,EAAA/H,KAAA,EAAA+H,EAAA9H,KAAA,EAEuBC,iBAAad,IAAI,uBAAsB,OAAxDS,EAAQkI,EAAA3H,KACdlB,KAAKqF,aAAe1E,EAASQ,KAAK0H,EAAA9H,KAAA,gBAAA8H,EAAA/H,KAAA,EAAA+H,EAAAxH,GAAAwH,EAAA,YAElCvH,QAAQ2G,IAAI,+BAA+B,yBAAAY,EAAAlH,UAAAiH,EAAA,kBAElD,SAPa5C,IAAgB,OAAA2C,EAAA/G,MAAC,KAADC,WAAA,OAAhBmE,EAZe,IAYC,CAAAjG,IAAA,iBAAApB,MAAA,eAAAmK,EAAAvI,eAAAC,mBAAAC,MAStB,SAAAsI,IAAA,IAAApI,EAAA,OAAAH,mBAAAI,MAAA,SAAAoI,GAAA,eAAAA,EAAAlI,KAAAkI,EAAAjI,MAAA,cAAAiI,EAAAlI,KAAA,EAAAkI,EAAAjI,KAAA,EAEuBC,iBAAad,IAAI,qBAAoB,OAAtDS,EAAQqI,EAAA9H,KACdlB,KAAKoE,WAAazD,EAASQ,KAAK6H,EAAAjI,KAAA,gBAAAiI,EAAAlI,KAAA,EAAAkI,EAAA3H,GAAA2H,EAAA,YAEhC1H,QAAQ2G,IAAI,2BAA2B,yBAAAe,EAAArH,UAAAoH,EAAA,kBAE9C,SAPa9C,IAAc,OAAA6C,EAAAlH,MAAC,KAADC,WAAA,OAAdoE,EATgB,MA5II,CAASjD,QAA1BkC,EAAiBjC,eAAA,CADrCE,QACoB+B,WCRyY,I,wBCQ1Z9B,EAAY,eACd,EACA,EACAnE,GACA,EACA,KACA,WACA,MAIa,aAAAmE,E,sECnBf,kDACA,SAAS6F,EAA4BC,EAAGC,GACtC,GAAID,EAAG,CACL,GAAI,iBAAmBA,EAAG,OAAO,eAAiBA,EAAGC,GACrD,IAAIC,EAAI,GAAGC,SAASC,KAAKJ,GAAGK,MAAM,GAAI,GACtC,MAAO,WAAaH,GAAKF,EAAEM,cAAgBJ,EAAIF,EAAEM,YAAYtH,MAAO,QAAUkH,GAAK,QAAUA,EAAIK,MAAMC,KAAKR,GAAK,cAAgBE,GAAK,2CAA2CO,KAAKP,GAAK,eAAiBF,EAAGC,QAAK,K,6DCLxN,W,oCCAA,W,2SCAkUrF,G,UAAG,W,IAAC,O,EAAyB,QAAW8F,GAAiB,oB,OAAC,8BAAE,YAAa,OAAE9K,MAAM,CAAC,eAAQ,GAAE,WAAuEA,GAAK,OAAC,C,YAAO,0BAAE,OAAIuE,IAAG,GAAsB7E,MAAW,GAAQM,IAAM,GAAC,MAAO,GAAG,0B,GAAK,C,MAAgCP,SAAU,iCAAkBO,GAAK,OAAC,C,MAAC,CAAS,WAA4GA,GAAK,GAAC,uD,MAAC,CAAU,S,CAAK,SAAQ,UAAR2E,C,YAAgClF,O,MAAkB,CAAC,SAA+CC,IAAmBM,MAAM,YAAC,OAAM,YAAmBA,GAAK,OAAC,C,MAAC,CAAS,UAAe+K,8BAAY,qE,MAAC,CAAkB,SAA2G/K,IAAO,MAAM,YAAE,2B,CAAwB,KAAM,cAAC,iBAAE,mBAAE,MAAK,CAAUA,IAAM,KAAwB,WAAE,MAAMgL,CAAiC,KAAU,K,CAAsBhL,SAAM,C,YAAS,CAAG,qBAA0F,CAACuE,EAAG,YAAa,2EAACtD,MAAI,CAAasD,IAAG,KAA+BvE,GAAK,OAAC,C,MAAM,CAAI,KAAO,KAAK,CAACuE,EAAG,QAAUvE,MAAM,CAAC,eAAO,WAAK,CAAEP,EAAIwL,eAAe,SAAK,GAAsBjL,OAAM,UAAC,MAAOP,I,MAAuB,CAA6B,OAACsE,KAAQtE,GAAIQ,GAAI,6BAAuB,+CAACD,EAAK,OAAC,C,IAAC,YAAQ,WAAE,YAAa,OAAEA,MAAM,CAAC,IAAM,GAAG,UAAqBA,GAAK,OAAC,C,MAAC,CAAiB,U,CAAwC,kBAAkB,wB,MAAC,CAAW,OAAW,2BAAG,4BAAI,Q,EAAyB,MAAU,IAACkL,YAAoB,C,MAAA,CAAE,S,CAAQrL,SAAU,C,MAAgB4E,C,KAA6BM,K,CAAiChF,SAAW,CAAe,OAAI,MAAO,EAAI,KAAYC,gBAAM,GAAC,MAAQ,aAAC,YAAO,OAAE,SAAIuE,SAAW,I,GAAS,CAAU,KAAM,SAAE,GAAC,OAAQ,yBAAW,MAAK,CAAcvE,MAAM,gBAAC,SAAQ,YAAsB,6BAAK,WAAO,oB,IAE1mEkL,a,MACR,CAAE,OAACtL,KAAM,K,CAA+C6E,SAAS,C,MAAmB,CAAoD,KAAC,GAAC1E,OAA8C,OAAI,IAAM,K,CAAkB,SAAS,C,MAAM,CAAI,MAAQ,uBAAS,IAAIwE,KAAG,WAAcvE,EAAM,6EAAC,yB,MAAuB,C,MACnSmL,iBAAeC,mB,SACfF,SAAoB,GAC5B,iDAAGtL,WAAM,wCAAoC6E,KAAQ,OAAC,C,MAAmB,CAAyC,KAAC,GAAC1E,OAAmC,OAAI,IAAM,K,CAAkB,SAAS,C,MAAM,CAAI,MAAQ,WAAS,IAAIwE,KAAG,WAAcvE,EAAM,uDAAC,yB,MAAyB,C,MACpQmL,iBAAeE,Q,SACfH,SAAoB,GAC5B,sCAAGtL,WAAM,6BAAsC6E,KAAQ,OAAC,C,MAAmB,CAA2C,KAAC,GAAC1E,OAAqC,OAAI,IAAM,K,CAAkB,SAAS,C,MAAM,CAAI,MAAQ,aAAS,IAAIwE,KAAG,WAAcvE,EAAM,2DAAC,yB,MAAmB,C,MACpQmL,iBAAkB,U,SAClBD,SAAoB,GAC5B,wCAAGtL,WAAM,+BAAgC6E,KAAQ,OAAC,C,MAAmB,CAAqC,KAAC,GAAC1E,OAA+B,OAAI,IAAM,K,CAAkB,SAAS,C,MAAM,CAAI,MAAQ,OAAS,IAAIwE,KAAG,WAAcvE,EAAM,+CAAC,yB,MAAyC,C,MACxQmL,iBAAeG,I,SACfJ,SAAoB,GAC5B,kCAAGtL,WAAM,yBAAkD6E,KAAQ,OAAC,C,MAAmB,CAAuD,KAAC,GAAC1E,OAAiD,OAAI,IAAM,K,CAAkB,SAAS,C,MAAM,CAAI,MAAQ,6BAAS,IAAIwE,KAAG,WAAcvE,EAAM,mFAAC,yB,MAAmC,C,MACxTmL,iBAAeI,sB,SACfL,SAAoB,GAC5B,oDAAGtL,WAAM,2CAAqC6E,KAAQ,OAAC,C,MAAmB,CAA0C,KAAC,GAAC1E,OAAoC,OAAI,IAAM,K,CAAkB,SAAS,C,MAAM,CAAI,MAAQ,uBAAS,IAAIwE,KAAG,WAAcvE,EAAM,yDAAC,yB,MAAmC,C,MACjRmL,iBAAeK,S,SACfN,SAAoB,GAC5B,uCAAGtL,WAAM,8BAAoC6E,KAAQ,OAAC,C,MAAmB,CAAyC,KAAC,GAAC1E,OAAmC,OAAI,IAAM,K,CAAkB,SAAS,C,MAAM,CAAI,MAAQ,uBAAS,IAAIwE,KAAG,WAAcvE,EAAM,uDAAC,yB,MAA4C,C,MACvRmL,iBAAeM,Q,SACfP,SAAoB,GAC5B,sCAAGtL,WAAM,6BAAwD6E,KAAQ,OAAC,C,MAAmB,CAA6D,KAAC,GAAC1E,OAAuD,OAAI,IAAM,K,CAAkB,SAAS,C,MAAM,CAAI,MAAQ,gCAAS,IAAIwE,KAAG,WAAcvE,EAAM,+FAAC,yB,MAA6B,C,MACpUmL,iBAAeO,4B,SACfR,SAAoB,GAC5B,0DAAGtL,WAAM,iDAAwC6E,KAAQ,OAAC,C,MAAmB,CAA6C,KAAC,GAAC1E,OAAuC,OAAI,IAAM,K,CAAkB,SAAS,C,MAAM,CAAI,MAAQ,iBAAS,IAAIwE,KAAG,WAAcvE,EAAM,+DAAC,yB,MAA2B,C,MAClRmL,iBAAeQ,Y,SACfT,SAAoB,GAC5B,0CAAGtL,WAAM,iCAAwC6E,KAAQ,OAAC,C,MAAmB,CAA6C,KAAC,GAAC1E,OAAuC,OAAI,IAAM,K,CAAkB,SAAS,C,MAAM,CAAI,MAAQ,eAAS,IAAIwE,KAAG,WAAcvE,EAAM,+DAAC,yB,MAAgC,C,MACvRmL,iBAAeS,Y,SACfV,SAAoB,GAC5B,0CAAGtL,WAAM,iCAA6C6E,KAAQ,OAAC,C,MAAmB,CAAkD,KAAC,GAAC1E,OAA4C,OAAI,IAAM,K,CAAkB,SAAS,C,MAAM,CAAI,MAAQ,oBAAS,IAAIwE,KAAG,WAAcvE,EAAM,yEAAC,yB,MAA0B,C,MAChSmL,iBAAeU,iB,SACfX,SAAoB,GAC5B,+CAAGtL,WAAM,sCAAwC6E,KAAQ,OAAC,C,MAAmB,CAA6C,KAAC,GAAC1E,OAAuC,OAAI,IAAM,K,CAAkB,SAAS,C,MAAM,CAAI,MAAQ,cAAS,IAAIwE,KAAG,WAAcvE,EAAM,+DAAC,yB,MAAyC,C,MAChSmL,iBAAeW,Y,SACfZ,SAAoB,GAC5B,0CAAGtL,WAAM,iCAAkD6E,KAAQ,OAAC,C,MAAmB,CAAuD,KAAC,GAAC1E,OAAiD,OAAI,IAAM,K,CAAkB,SAAS,C,MAAM,CAAI,MAAQ,6BAAS,IAAIwE,KAAG,WAAcvE,EAAM,mFAAC,yB,MAAuB,C,MAC5SmL,iBAAeY,sB,SACfb,SAAoB,GAC5B,oDAAGtL,WAAM,2CAAqC6E,KAAQ,OAAC,C,MAAmB,CAA0C,KAAC,GAAC1E,OAAoC,OAAI,IAAM,K,CAAkB,SAAS,C,MAAM,CAAI,MAAQ,WAAS,IAAIwE,KAAG,WAAcvE,EAAM,yDAAC,yB,MAAiC,C,MAC/QmL,iBAAea,S,SACfd,SAAoB,GAC5B,uCAAGtL,WAAM,8BAA4C6E,KAAQ,OAAC,C,MAAmB,CAAiD,KAAC,GAAC1E,OAA2C,OAAI,IAAM,KAAoCC,GAAK,OAAC,C,MAAM,CAAG,2BAAiBN,IAAmBM,KAAM,WAAC,iBAAS,wDAAE,yB,MAAoB,C,MAA6BiM,iBAAkB,gBAAO,qBAAC,8CAA+CvM,WAAY,qCAAqBM,IAAM,a,YAAS,OAAiG,MAAC,CAAG,IAAC,K,GAA0BP,OAAIyM,C,YAAmC,OAAC,OAAIzM,OAAO,KAA+I,CAAC8E,EAAG,QAAY7E,IAAmBM,MAAM,YAAC,EAAK,oBAAG,KAAaP,GAAIuL,GAAIvL,oBAAoB,YAAc,CAAC,YAAU,Q,CAAUwB,EAAG,OAAK,C,MAAa,C,MAAQ,mG,GAAa,C,MAAe,YAAE,qC,GAA2B,yGAAOkL,qB,IAAI,SAAE,CAAC,EAAE,OAAE,CAAE,YAAU,OAAelL,MAAI,CAAasD,IAAG,GAAY7E,U,EAA0B,GAAK,EAAG,4B,OAAC,EAAO,QAAE,aAAI6E,MAAG,CAAUvE,KAAM,GAAC,IAAO,GAAE,OAAKP,IAAIwL,KAAiD,eAAWmB,C,MAAmB,CAA6B,KAACrI,MAAQtE,MAAsCwB,IAAI,aAAU,IAAK,YAAYvB,UAAY,CAAOM,YAAM,O,MAAM,CAAI,IAAM,GAAG,UAAiBA,GAAK,OAAC,C,MAAC,CAAS,UAAmDA,GAAK,gBAAC,wB,MAAC,C,KAA8B,EAAK+D,SAAQ,MAAK,SAAS,GAAC,MAACA,sBAAI,QAA6C,EAAC,2BAAc,IAAK,WAAU7D,GAAI,QAAkBN,YAAM,O,MAAM,CAAwB6E,O,KAA6B4H,K,CAAsBtM,SAAU,CAAmB,OAAIwE,KAAG,KAA+BvE,GAAK,gBAAC,wB,MAAC,CAAe,KAAM,EAAE,2BAAC,MAAS,YAAF,EAAE,OAAC,QAAoBuE,EAAG,MAAQ,IAAC,iBAAC7E,mBAAmBM,GAAK,OAAC,C,IAAC,kBAAW,OAAIuE,MAAG,mBAAgBvE,SAAM,YAAC,mBAAqB,GAAiB,WAAW,qBAAiCJ,GAAK,OAAC,C,YAAYuL,O,MAA4B1G,C,YAAkChF,GAA+C,IAAC,GAACM,QAAuC,mBAAqBC,GAAK,OAAC,C,YAAU,OAAE,OAAIuE,OAAU,KAA8BvE,GAAK,OAAC,C,MAAC,CAAiC,oBAAG,KAAC,SAAC,MAAQ,kC,MAA+C,CAAC,mCAAIuE,SAAG,SAAwB,GAA2C,EAAC,8CAA8B7E,WAAY,iCAAc,GAAK,EAAC,OAAE,C,MAAC,CAAS,YAAiBM,GAAK,OAAC,C,YAAQ,gBAAE,OAAIuE,UAAG,EAAa,kB,GAAS,CAA2B,kBAAM,OAAM,EAAG,uBAA8D,wDAAC3E,IAAK,c,CAAEC,SAAWqM,C,YAAuC,O,MAAmB,CAAiC,IAAC,GAACnM,UAA4C,CAACwE,EAAG,QAA0qBvE,MAAM,CAAC,KAAO,KAAiE,kBAACJ,MAAM,CAACC,WAAWyM,iB,IAA+CA,gBAAiB7M,IAAM,GAAK,iB,MAAC,CAACM,aAAgC,MAAMwM,CAA+CxB,QAAY,6BAAC,SAAQ,YAAK,kCAAuL,WAAC,iC,GAA0BtL,OAAIyM,kBAA4B,CAAG,KAAK,glB,MAAA,CAAC,sDAAIzM,KAAO,UAAuDO,MAAM,CAAC,QAAU,iBAA8F,qBAAI,4B,WAAoC,sBAAoB,2CAAE,YAAS,CAAoFA,MAAM,QAAe,4JAACJ,IAAOC,MAAOJ,SAAIwM,GAAoBxH,gCAAwB,K,CAA6B1E,oBAAW,UAAoB,4BAAE,MAAK,CAAyf,UAAC,6E,GAA0BN,CAA8B,kBAAC,+BAAkEuF,CAAE,EAAC,kF,MAAC,C,MAAgCvF,OAAqB,OAAIA,MAAO,qBAC5pK,qBACGU,qBAAoB,G,wzBC1CXqM,EAAiBxL,gBAA9B,SAAAwL,IAAA/L,eAAA,KAAA+L,GACW,KAAA3G,GAAa,EACb,KAAA0G,WAAqB,GACrB,KAAAE,mBAA6B,GAC7B,KAAArB,QAAkB,GAClB,KAAAsB,IAAc,GACd,KAAApB,sBAAgC,GAChC,KAAAC,SAAmB,GACnB,KAAAC,QAAkB,GAClB,KAAAH,UAAoB,GACpB,KAAAI,4BAAsC,GACtC,KAAAC,YAAsB,GACtB,KAAAC,YAAsB,GACtB,KAAAC,iBAA2B,GAC3B,KAAAC,YAAsB,GACtB,KAAAC,sBAAgC,GAChC,KAAAC,SAAmB,GACnB,KAAAC,gBAA0B,GAC1B,KAAAW,YAAsB,EACtB,KAAAC,QAAkB,EAClB,KAAAC,KAAiB,IAAIlC,MACrB,KAAAmC,kBAAuC,IAAInC,MAC3C,KAAAoC,iBAAsC,IAAIpC,SCtBxCqC,EAAehM,gBAA5B,SAAAgM,IAAAvM,eAAA,KAAAuM,GACW,KAAAT,WAAqB,GACrB,KAAAU,YAAsB,GACtB,KAAAC,QAAkB,GAClB,KAAAC,UAAoB,GACpB,KAAAC,MAAgB,GAChB,KAAAC,MAAgB,GAChB,KAAAC,OAAiB,GACjB,KAAAC,KAAe,GACf,KAAAC,IAAc,GACd,KAAAC,QAAkB,GAClB,KAAAC,eAAyB,EACzB,KAAAC,cAAsB,IAAI9M,KAC1B,KAAA+M,eAAuB,IAAI/M,KAC3B,KAAAgN,gBAA0B,EAC1B,KAAAC,mBAA6B,EAC7B,KAAAlB,QAAkB,EAClB,KAAAC,KAAiB,IAAIlC,MACrB,KAAAoD,cAAsB,IAAIlN,KAC1B,KAAAmN,MAAmB,IAAIrD,S,YCxBuD,EAAU,W,IAAe3K,EAAM,K,EAAC,EAAO,MAAC,GAAE,oBAAC,OAAM,SAAW,CAACA,MAAM,CAAC,MAAQ,K,CAAW,UAAkB,OAAGP,IAAQA,GAAiC,KAAU,GAAUwB,gBAAc,K,EAAQ,GAAI,EAAC,WAAG,Y,OAAC,EAAK,OAAG,C,IAAC,EAAQ,G,MAAK,CAAK,OAAW,OAAKxB,GAAIwL,IAAoCjL,GAAM,IAAC,OAAOP,KAA8B,qCAAG,MAAKQ,CAAa,KAAI,OACxb,iBAGQgO,QAAQ9N,M,aCJ0H,aAAC,IAAGoE,EAAG,KAA6B7E,UAAY,GAAa,oB,OAAC,QAAQ,WAAQ,OAAID,MAAO,QAA4mB,CAACA,EAAG,OAAI,UAAeA,CAAmDC,YAAY,OAAO,MAAMkF,CAA4yBlF,MAAW,W,CAA8B,gBAAgB,ufAAM,YAAC,QAACM,GAAK,GAAC,6D,YAAS,Q,CAAC,oBAAa,mqB,YAAU,gB,YAAW,CAAG,wB,MAAK,C,IAAyB,GAA2B,YAAC,UAAIuE,MAAG,I,GAAyD,CAAgB,MAAQ,YAAM,6B,CAAsCE,SAAS,iBAAUD,IAAK,a,MAAI,CAAsB,WAAC,GAACzE,aAAgC,MAAK,CAA0BC,MAAM,oBAAC,SAAS,SAAKkO,GAAmB,oBAAkBnK,GAAQ,WAAC,sB,CAA2B,2BAAkBoK,C,MAAW,CAA2B,6BAAC,oBAC5xE,IACGhO,QAAe,cAEnB,OAAe,SAAiB,G,2VCOhC,IAAqBiO,EAAW,SAAA7N,GAAhC,SAAA6N,IAAA,IAAA5N,EAcsD,OAdtDC,eAAA,KAAA2N,G,sBAKS5N,EAAA6N,QAAsB,IAAIC,OAC1B9N,EAAA+N,qBAAoCC,OAAYC,iBAChDjO,EAAAkO,qBAAoCF,OAAYG,iBAChDnO,EAAAoO,oBAAmCJ,OAAYK,gBAC/CrO,EAAAsO,kBAAiCN,OAAYO,cAC7CvO,EAAAwO,iBAAgCR,OAAYS,aAC5CzO,EAAA0N,mBAAiC,IAAII,OACrC9N,EAAA0O,mBAA6B,EAC7B1O,EAAA2O,8BAAwC,EACxC3O,EAAA4O,6BAAuC,EAAM5O,EAsBrD,OAAAO,eAAAqN,EAAA7N,GAAAS,eAAAoN,EAAA,EAAAnN,IAAA,UAAApB,MApBQ,WACPqB,KAAKmN,QAAUlG,KAAKC,MAAMD,KAAKE,UAAUnH,KAAKmO,gBAC9C,CAAApO,IAAA,UAAAG,IAED,WACC,MAAkC,KAA3BF,KAAKmN,QAAQlB,WAA6C,KAAzBjM,KAAKmN,QAAQnB,UACrD,CAAAjM,IAAA,iBAAApB,MAEO,WACPqB,KAAKgN,mBAAqB/F,KAAKC,MAAMD,KAAKE,UAAUnH,KAAKmN,UACzDnN,KAAKgO,mBAAoB,IACzB,CAAAjO,IAAA,gBAAApB,MAEO,SAAcwO,GACO,KAAxBA,EAAQpB,cACXoB,EAAQpB,YAAc,UAEvB/L,KAAKmN,QAAUlG,KAAKC,MAAMD,KAAKE,UAAUgG,QAjCX,CAASnK,QAExCC,eAAA,CADCmL,kB,2BAGDnL,eAAA,CADCmL,kB,kCAHmBlB,EAAWjK,eAAA,CAL/BE,eAAU,CACPkL,WAAY,CACdC,gCAGmBpB,WCXgX,I,YCOjY9J,EAAY,eACd,EACA,EACA,GACA,EACA,KACA,KACA,MAIa,EAAAA,E,kSCPf,IAAqBmL,EAAiB,SAAAlP,GAAtC,SAAAkP,IAAA,IAAAjP,EAI0C,OAJ1CC,eAAA,KAAAgP,G,sBAGSjP,EAAAkP,UAA0B,IAAI/E,MAC9BnK,EAAAyK,iBAA2B,EAAMzK,EA8BzC,OAAAO,eAAA0O,EAAAlP,GAAAS,eAAAyO,EAAA,EAAAxO,IAAA,UAAApB,MA5BW,WACVqB,KAAKyO,eACF,CAAA1O,IAAA,aAAApB,MAEI,WAEP,OAAOqB,KAAK6C,MACX,KAAKyK,OAAYC,iBAChB,IAAImB,EAAgB,IAAIjF,MACxBiF,EAAcrO,KAAK4G,KAAKC,MAAMD,KAAKE,UAAUnH,KAAKwB,OAAOmN,QAAQC,2BACjE5O,KAAKwO,UAAYE,EACjB,MACD,KAAKpB,OAAYG,iBAChBiB,EAAgBzH,KAAKC,MAAMD,KAAKE,UAAUnH,KAAKwB,OAAOqN,MAAMC,sBAAsBlD,oBAClF5L,KAAKwO,UAAYE,EACjB,MACD,KAAKpB,OAAYK,gBAChBe,EAAgBzH,KAAKC,MAAMD,KAAKE,UAAUnH,KAAKwB,OAAOqN,MAAMC,sBAAsBjD,mBAClF7L,KAAKwO,UAAYE,EACjB,MACD,QACC1O,KAAKwO,UAAY,GACjB,MAEFxO,KAAK+J,iBAAkB,MA9Ba,CAAS/G,QAE9CC,eAAA,CADCmL,kB,2BADmBG,EAAiBtL,eAAA,CALrCE,eAAU,CACPkL,WAAY,CACdnB,kBAGmBqB,WCXsX,ICOvY,EAAY,eACd,EACA,EACA,GACA,EACA,KACA,WACA,MAIa,K,2DClBXQ,GAAWC,OAAOC,QAAU,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAItN,UAAU8D,OAAQwJ,IAAK,CAAE,IAAIC,EAASvN,UAAUsN,GAAI,IAAK,IAAIpP,KAAOqP,EAAcJ,OAAOK,UAAUC,eAAehG,KAAK8F,EAAQrP,KAAQmP,EAAOnP,GAAOqP,EAAOrP,IAAY,OAAOmP,GAOxO,UAAAK,GAAA,MAAO,SAEpBC,OAAO,CACLtN,KAAM,aACNuN,MAAO,CACHC,SAAUC,QACVC,MAAOD,SAEXE,SAAU,CACNC,QAAS,WACL,OAAOf,GAAS,CACZ,wBAAyB/O,KAAK0P,SAC9B,oBAAqB1P,KAAK4P,OAC3B5P,KAAK+P,gBAGhBhD,OAAQ,SAAgBiD,GACpB,OAAOA,EAAE,MAAO,CACZxR,YAAa,aACb,MAASwB,KAAK8P,SACf9P,KAAKiQ,OAAOC,Y,0BC3BnB,GAAWlB,OAAOC,QAAU,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAItN,UAAU8D,OAAQwJ,IAAK,CAAE,IAAIC,EAASvN,UAAUsN,GAAI,IAAK,IAAIpP,KAAOqP,EAAcJ,OAAOK,UAAUC,eAAehG,KAAK8F,EAAQrP,KAAQmP,EAAOnP,GAAOqP,EAAOrP,IAAY,OAAOmP,GASxO,UAAAK,GAAA,MAAO,QAAW,SAE/BC,OAAO,CACLtN,KAAM,kBACNuN,MAAO,CACHU,MAAO,CACHtN,KAAMuN,OACNF,QAAS,WAEbG,QAASV,QACTW,QAASX,QACTY,KAAMH,OACNI,UAAWJ,OACXK,MAAOd,QACPe,KAAMf,QACNgB,MAAOhB,QACPiB,MAAOjB,SAEXE,SAAU,CACNgB,QAAS,WACL,QAAS7Q,KAAKuQ,QAAUvQ,KAAKiQ,OAAOM,OAG5CO,QAAS,CACLC,QAAS,WACL,OAAO/Q,KAAKgR,eAAe,MAAO,CAC9BxS,YAAa,yBACdwB,KAAKiQ,OAAOC,UAEnBe,QAAS,WACL,OAAIjR,KAAKiQ,OAAOM,KACLvQ,KAAKiQ,OAAOM,KAEhBvQ,KAAKgR,eAAe,QAAO,CAC9BvB,MAAO,CACHU,MAAOnQ,KAAKwQ,UACZU,MAAOlR,KAAKmR,MAAMC,OAClBR,MAAO5Q,KAAK4Q,QAEjB5Q,KAAKuQ,OAEZc,YAAa,WACT,IAAIlQ,EAAOnB,KAAKsR,mBAAmBtR,KAAKmQ,OACxC,OAAOnQ,KAAKgR,eAAe,MAAO,GAAS,CACvCxS,YAAa,8BACd2C,GAAO,CAACnB,KAAK6Q,SAAW7Q,KAAKiR,aAEpCM,OAAQ,WACJ,OAAOvR,KAAKgR,eAAe,MAAO,CAC9BxS,YAAa,uBACbgT,MAAO,CACH,8BAA+BxR,KAAK4Q,MACpC,8BAA+B5Q,KAAKyQ,QAEzC,CAACzQ,KAAKqR,iBAEbI,YAAa,WACT,OAAOzR,KAAKgR,eAAe,MAAO,CAC9BxS,YAAa,6BACdwB,KAAKiQ,OAAOyB,YAGvB3E,OAAQ,SAAgBiD,GACpB,IAAI2B,EAAW,CAAC3R,KAAK+Q,WAGrB,OAFK/Q,KAAKsQ,SAASqB,EAAS3J,QAAQhI,KAAKuR,UACrCvR,KAAKiQ,OAAOyB,UAAUC,EAAStR,KAAKL,KAAKyR,eACtCzB,EAAE,MAAO,CACZxR,YAAa,kBACbgT,MAAO,GAAS,CACZ,4BAA6BxR,KAAKqQ,QAClC,wBAAyBrQ,KAAK0Q,KAC9B,yBAA0B1Q,KAAK2Q,OAChC3Q,KAAK+P,eACT4B,MClF4L7S,I,UAAM,W,IAAC,EAAK,KAAG,aAAO,EAAQ,MAAC,Y,OAAM,EAAC,Q,MAAC,CAAW,WAA8BA,GAAK,cAAC,U,YAAC,iB,MAAmB,CAAW,SAAoDN,UAAW,CAAkBM,MAAM,CAAC,KAAM,OAAK,CAACuE,EAAG,QAAS,CAACvE,MAAM,CAAC,cAAO,GAAI,cAA0FA,IAAM,gC,YAASP,iBAAiC,OAAGA,IAAQA,K,CAAyDwB,EAAG,OAAM,C,MAAc,C,KAAQ,O,GAA+C,8DAAW,S,MAAE,CAAE,MAAK,EAAO,gC,EAAQ,KAAO,oB,OAAW,MAAC6R,IAAI,EAAC,QAAW,MAAMlO,CAAoGlF,OAAY,qBAAgB6E,MAAG,SAAgB7E,WAAY,KAA2rBA,UAAY,CAAY,MAAMkF,CAA6J,KAAU,Y,KAA2BlF,Y,CAAmBM,KAAM,sF,YAAM,e,UAAQ,C,YAAiB,Y,MAAI+S,mBAAuBxI,OAAS,shB,YAAE,a,GAAE,qI,OAAC,iBAAE,IAAK,EAA+D,YAAO,OAAkH,MAAI,CACpoE,IACGpK,eAEK8N,OAAQ9N,C,8gBCMjB,IAAqB6S,GAAU,SAAAzS,GAA/B,SAAAyS,IAAA,IAAAxS,EAQoE,OARpEC,eAAA,KAAAuS,G,uBAGSxS,EAAAyS,eAAyB,EACzBzS,EAAA0S,OAAkC,IAAIvI,MACtCnK,EAAA2S,mBAA6BC,QAAUC,eACvC7S,EAAA8S,mBAA6BF,QAAUG,eACvC/S,EAAAgT,oBAA8BJ,QAAUK,gBACxCjT,EAAAkT,sBAAgCN,QAAUO,iBAAiBnT,EAoEnE,OAAAO,eAAAiS,EAAAzS,GAAAS,eAAAgS,EAAA,EAAA/R,IAAA,UAAApB,MAlEW,WACVqB,KAAK0S,eACF,CAAA3S,IAAA,UAAApB,MAEI,SAAQgU,GACf,OAAOA,GACN,KAAKT,QAAUC,eACf,KAAKD,QAAUO,iBACd,MAAO,YACR,KAAKP,QAAUG,eACd,MAAO,iBACR,KAAKH,QAAUK,gBACd,MAAO,YACR,QACC,MAAO,cAET,CAAAxS,IAAA,cAAApB,MAEO,SAAYiU,GACnB,OAAOA,EAAMD,WACZ,KAAKT,QAAUC,eACd,MAAO,oBAAPlR,OAA2B2R,EAAMC,WAClC,KAAKX,QAAUG,eACd,MAAO,oBAAPpR,OAA2B2R,EAAMC,WAClC,KAAKX,QAAUO,iBACd,MAAO,uBAAPxR,OAA8B2R,EAAMC,WACrC,KAAKX,QAAUK,gBACd,MAAO,eAAPtR,OAAsB2R,EAAME,eAC7B,QACC,MAAO,uBAET,CAAA/S,IAAA,sBAAApB,MAEO,SAAoBkQ,GAC3B,OAAOA,GACN,KAAKkE,QAAaC,GACjB,MAAO,KACR,KAAKD,QAAaE,QACjB,MAAO,UACR,KAAKF,QAAaG,MACjB,MAAO,QACR,KAAKH,QAAaI,OACjB,MAAO,SACR,KAAKJ,QAAaK,IACjB,MAAO,MACR,KAAKL,QAAaM,KACjB,MAAO,OACR,KAAKN,QAAaO,KACjB,MAAO,OACR,KAAKP,QAAaQ,QACjB,MAAO,aAET,CAAAxT,IAAA,aAAApB,MAAA,eAAA6U,EAAAjT,eAAAC,mBAAAC,MAEO,SAAAC,IAAA,IAAAC,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAE6B,OAF7BF,EAAAC,KAAA,EAEGd,KAAK+R,eAAgB,EAAKlR,EAAAE,KAAA,EACHC,iBAAad,IAAI,2CAADe,OAA4CjB,KAAKqL,aAAa,OAA/F1K,EAAQE,EAAAK,KACvBlB,KAAKgS,OAASrR,EAASQ,KAAKN,EAAAE,KAAA,gBAAAF,EAAAC,KAAA,EAAAD,EAAAQ,GAAAR,EAAA,YAEnBb,KAAKwB,OAAOC,OAAO,uBAAwB,uCAAuC,QAEvD,OAFuDZ,EAAAC,KAAA,GAElFd,KAAK+R,eAAgB,EAAMlR,EAAAa,OAAA,6BAAAb,EAAAc,UAAAjB,EAAA,wBAErC,SAVagS,IAAU,OAAAc,EAAA5R,MAAC,KAADC,WAAA,OAAV6Q,EAFb,MA9D6B,CAAS1P,QAEvCC,eAAA,CADCmL,kB,kCADmB0D,GAAU7O,eAAA,CAH9BE,eAAU,CACPkL,WAAY,MAEKyD,cCV+W,MCOhY,GAAY,eACd,GACA,GACA,IACA,EACA,KACA,WACA,MAIa,M,+DClB6M,W,IAACjT,OAAoB,aAAO,QAAW,Y,OAAM,EAAC,Q,YAAS,Y,CAAC,SAAS,C,MAAC,CAAU,gBAAiB,qBAAKN,EAAI0M,QAAKwI,GAA+B,WAAM,YAAK,CAACpQ,EAAG,OAAQ,CAAEvE,MAAM,CAAC,IAAO,GAA6B,OAAO,GAAU,OAAO,GAAI,oB,CAAK,OAAQ,UAAR2E,EAAiBwJ,OAAM,C,MAAE,CAAyB,SAAI,CAAC1O,EAAG,OAAI,CAA6BO,MAAM,CAAC,MAAO,4BAAG,eAAIuE,MAAG,I,GAAoB,CAAS,eAAgB,GAAe,2BAAqC,CAACA,EAAG,gBAAS,aAACvE,MAAM,CAAC,KAAO,MAAS,CAACP,EAAG,QAAI,CAAuIO,MAAM,CAAC,IAAM,GAAG,kCAAcN,cAAY,CAAW,KAAK,aAAaM,GAAK,OAAC,C,MAAM,CAAG,cAAmB8S,GAAK,qIAAY,MAAK,CAAkJ9S,KAAM,K,CAAU,QAAS,C,YAAQ,YAAE,YAAE,MAAK,CAAUA,IAAM,KAAU,eAAE,KAAK,aAAgBA,GAAK,OAAC,yH,MAAC,CAAkB,IAAO,GAAU,UAAgD,OAAO,KAA8BgF,CAAE,EAAC,Q,MAAC,C,KACxzCmH,K,CAEL,UAAC,MAAC,CAACvM,MAAM,UAACC,MAAOJ,SAAoBgF,SAAS,cAAUD,EAAK,e,MAAKO,EAAKtF,yB,GAA6BM,CAA2B,gBAAM,EAAG,KAAGwE,UAAa,EAAC,sBAACvE,EAAM,a,MAAoB,CAAS,uBAAIuE,SAAG,SAAS,GAACvE,EAAM,4BAAU,gCAAuBA,IAAM,a,MAAC,CAAmB,IAAO,GAAU,UAAgD,OAAO,KAA8BgF,CAAE,EAAC,Q,MAAC,C,KACpXmH,K,CAEL,UAAC,MAAC,CAACvM,MAAM,WAACC,MAAOJ,SAAmBgF,SAAS,cAAUD,EAAK,e,MAAKO,EAAKtF,yB,GAA4BM,CAA0B,gBAAM,EAAG,KAAGwE,SAAG,EAAW,qBAACvE,EAAM,a,MAAoB,CAAS,sBAAIuE,SAAG,SAAS,GAACvE,EAAM,2BAAU,+BAAuBA,IAAM,a,MAAC,CAAwB,IAAO,GAAU,UAAgD,OAAO,KAA8BgF,CAAE,EAAC,Q,MAAC,C,KACtXmH,K,CAEL,UAAC,MAAC,CAACvM,MAAM,gBAACC,MAAOJ,SAAgBgF,SAAS,cAAUD,EAAK,e,MAAKO,EAAKtF,yB,GAAyBM,CAAuB,gBAAM,EAAG,KAAGwE,MAAG,EAAU,KAAC,aAACvE,EAAM,a,MAAoB,CAAS,mBAAIuE,SAAG,SAAS,GAACvE,EAAM,wBAAU,4BAAuBA,IAAM,a,MAAC,CAA6C,IAAO,GAAU,UAAgD,Y,CAAK,SAAO,C,MACtW,C,KACC4U,KACH,WAAChV,MAAM,CAACC,MAAOJ,qCAAmBgF,MAAQ,S,SAA0BhF,EAAI0M,YAAM,EAAY3H,KAAI,W,GAAEzE,CAA0B,gBAAM,EAAG,KAAGwE,SAAG,EAAW,qBAACvE,EAAM,a,MAAoB,CAAS,sBAAIuE,SAAG,SAAS,GAACvE,EAAM,2BAAU,+BAAqBA,IAAM,a,MAAC,CAAgD,IAAO,GAAc,OAAO,GAAU,Y,CAAK,SAAS,C,MAAiB,CAAqB,UAAGJ,GAAK,QAAC,C,MAAM,CAAiC6E,SAAS,cAAUD,EAAK,e,MAAKO,aAA2C,MAAC,UAAuC,IAAI,OAAQR,SAAc,GAACvE,OAAM,e,MAAoB,CAAS,kCAAIuE,SAAG,SAAS,GAACvE,EAAM,uCAAW,WAAO,gCAAMuE,IAAG,YAAmB,CAAiDuO,MAAK,CAAWvO,IAAG,GAAQ7E,UAA2B6E,OAAG,K,CAAuD,SAAQ,C,MAAC,CAAU,KAAO,GAAE,YAAiBvE,GAAK,QAAC,0B,KAAC,UAAS,WAAE,YAAK,cAAcA,GAAK,SAAC,gC,MAAC,CAAgD,IAAO,GAAsB,OAAO,GAAU,Y,CAAK,SAAS,C,MAAiB,CAA2E,UAAGJ,GAAK,QAAC,C,MAAM,CAA2B6E,SAAS,cAAUD,EAAK,e,MAAKO,qBAAqC,MAAC,UAAiC,IAAI,OAAQR,SAAc,GAACvE,OAAM,yD,MAAoB,CAAS,4BAAIuE,SAAG,SAAS,GAACvE,EAAM,iCAAU,qCAAqBA,IAAM,a,MAAC,CAAgD,IAAO,GAAa,OAAO,GAAU,Y,CAAK,SAAS,C,MAAiB,CAA4E,UAAGJ,GAAK,QAAC,C,MAAM,CAA6B6E,SAAS,cAAUD,EAAK,e,MAAKO,YAAuC,MAAC,UAAmC,IAAI,OAAQR,SAAc,GAACvE,OAAM,0D,MAAoB,CAAS,8BAAIuE,SAAG,SAAS,GAACvE,EAAM,mCAAU,uCAAqBA,IAAM,a,MAAC,CAAgD,IAAO,GAAyB,OAAO,GAAU,Y,CAAK,SAAS,C,MAAiB,CAA8E,UAAGJ,GAAK,QAAC,C,MAAM,CAA+B6E,SAAS,cAAUD,EAAK,e,MAAKO,wBAAyC,MAAC,UAAqC,IAAI,OAAQR,SAAc,GAACvE,OAAM,4D,MAAoB,CAAS,gCAAIuE,SAAG,SAAS,GAACvE,EAAM,qCAAU,yCAAqBA,IAAM,a,MAAC,CAAgD,IAAO,GAAwB,OAAO,GAAU,Y,CAAK,SAAS,C,MAAiB,CAAsF,UAAGJ,GAAK,QAAC,C,MAAM,CAAqC6E,SAAS,cAAUD,EAAK,e,MAAKO,uBAA+C,MAAC,UAA2C,IAAI,OAAQR,SAAc,GAACvE,OAAM,oE,MAAoB,CAAS,sCAAIuE,SAAG,SAAS,GAACvE,EAAM,2CAAU,+CAAqBA,IAAM,a,MAAC,CAAgD,IAAO,GAA2B,OAAO,GAAU,Y,CAAK,SAAS,C,MAAiB,CAAqF,UAAGJ,GAAK,QAAC,C,MAAM,CAAoC6E,SAAS,cAAUD,EAAK,e,MAAKO,0BAA8C,MAAC,UAA0C,IAAI,OAAQ,SAAa,GAC1rG,0E,iMCXY8P,GAAO7T,gBAApB,SAAA6T,IAAApU,eAAA,KAAAoU,GACW,KAAAC,OAAiB,GACjB,KAAAvI,WAAqB,EACrB,KAAAwI,UAAoB,GACpB,KAAAC,SAAmB,GACnB,KAAA5H,MAAgB,GAChB,KAAAC,MAAgB,GAChB,KAAA4H,sBAAgC,EAChC,KAAAN,WAAqB,EACrB,KAAAO,gBAA0B,EAC1B,KAAAC,0BAAoC,EACpC,KAAAC,yBAAmC,EACnC,KAAAC,kBAA4B,EAC5B,KAAAC,oBAA8B,EAC9B,KAAAC,SAAmB,M,2SCR9B,IAAqBC,GAAQ,SAAAjV,GAA7B,SAAAiV,IAAA,IAAAhV,EAMiE,OANjEC,eAAA,KAAA+U,G,uBAGShV,EAAAiV,SAAoB,IAAIZ,GACxBrU,EAAAkV,SAAmB,EACnBlV,EAAAmV,WAAqB,EACrBnV,EAAAoV,wBAA0B7O,QAAM6O,wBAAwBpV,EAyEhE,OAAAO,eAAAyU,EAAAjV,GAAAS,eAAAwU,EAAA,EAAAvU,IAAA,UAAApB,MAvEQ,WACPqB,KAAKuU,SAAWtN,KAAKC,MAAMD,KAAKE,UAAUnH,KAAKiL,SAC/C,CAAAlL,IAAA,aAAAG,IAED,WACC,OAAQF,KAAKuU,SAASV,YAAc7T,KAAKiL,KAAK4I,WAC1C7T,KAAKuU,SAAST,WAAa9T,KAAKiL,KAAK6I,UACrC9T,KAAKuU,SAASrI,QAAUlM,KAAKiL,KAAKiB,OAClClM,KAAKuU,SAASF,WAAarU,KAAKiL,KAAKoJ,UACrCrU,KAAKuU,SAASR,uBAAyB/T,KAAKiL,KAAK8I,uBACrD,CAAAhU,IAAA,YAAApB,MAAA,eAAAgW,EAAApU,eAAAC,mBAAAC,MAEO,SAAAC,EAAgBkT,EAAgBgB,EAAkBC,EAAmBC,GAAmB,IAAAC,EAAApU,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAQ7F,OAPFO,QAAQ2G,IAAI,iBAADhH,OAAkB4T,EAAS,QAAA5T,OAAO6T,EAAU,cAAA7T,OAAa2T,EAAQ,QAAO/T,EAAAC,KAAA,EAE9EiU,EAAyB,CAC5BnB,OAAQA,EACRgB,SAAUA,EACVC,UAAWA,EACXC,WAAYA,EAAa,OAAS,SAClCjU,EAAAE,KAAA,EACsBC,iBAAa6G,KAAK,yBAA0BkN,GAAS,OAA9D,GAARpU,EAAQE,EAAAK,KACU,MAApBP,EAASqU,OAAc,CAAAnU,EAAAE,KAAA,SAC1Bf,KAAKwB,OAAOC,OAAO,kBAAmB,yCAAyCZ,EAAAE,KAAA,4CAAAE,OAEnDN,EAASqU,QAAM,QAAAnU,EAAAE,KAAA,iBAAAF,EAAAC,KAAA,GAAAD,EAAAQ,GAAAR,EAAA,YAG5CS,QAAQ2G,IAAI,gCAA+BpH,EAAAQ,IAC3CrB,KAAKwB,OAAOC,OAAO,uBAAwB,2CAA2C,yBAAAZ,EAAAc,UAAAjB,EAAA,mBAEvF,SAnBauU,EAAS1N,EAAAC,EAAAe,EAAA2M,GAAA,OAAAP,EAAA/S,MAAC,KAADC,WAAA,OAAToT,EAFb,IAEsB,CAAAlV,IAAA,WAAApB,MAAA,eAAAwW,EAAA5U,eAAAC,mBAAAC,MAqBf,SAAAiH,IAAA,IAAA/G,EAAA,OAAAH,mBAAAI,MAAA,SAAAgH,GAAA,eAAAA,EAAA9G,KAAA8G,EAAA7G,MAAA,WACHf,KAAKwU,SAAYxU,KAAKyU,YAAazU,KAAKoV,WAAU,CAAAxN,EAAA7G,KAAA,SAE9B,OAF8B6G,EAAA9G,KAAA,EAEpDd,KAAKyU,WAAY,EAAK7M,EAAA7G,KAAA,EACCC,iBAAa6G,KAAK,oBAAqB7H,KAAKiL,MAAK,OAA1D,GAARtK,EAAQiH,EAAA1G,KACU,MAApBP,EAASqU,OAAc,CAAApN,EAAA7G,KAAA,SAC1Bf,KAAKwB,OAAOC,OAAO,kBAAmB,0CACtCzB,KAAKuU,SAAWtN,KAAKC,MAAMD,KAAKE,UAAUnH,KAAKiL,OAAOrD,EAAA7G,KAAA,4CAAAE,OAE1BN,EAASqU,QAAM,QAAApN,EAAA7G,KAAA,iBAAA6G,EAAA9G,KAAA,GAAA8G,EAAAvG,GAAAuG,EAAA,YAG5CtG,QAAQ2G,IAAI,+BAA8BL,EAAAvG,IACjCrB,KAAKwB,OAAOC,OAAO,uBAAwB,mDAAmD,QAEhF,OAFgFmG,EAAA9G,KAAA,GAEvGd,KAAKyU,WAAY,EAAM7M,EAAAlG,OAAA,6BAAAkG,EAAAjG,UAAA+F,EAAA,yBAGzB,SAlBagM,IAAQ,OAAAyB,EAAAvT,MAAC,KAADC,WAAA,OAAR6R,EArBS,IAqBD,CAAA3T,IAAA,eAAApB,MAAA,eAAA0W,EAAA9U,eAAAC,mBAAAC,MAoBd,SAAA2H,IAAA,IAAAzH,EAAA2U,EAAAC,EAAA,OAAA/U,mBAAAI,MAAA,SAAAyH,GAAA,eAAAA,EAAAvH,KAAAuH,EAAAtH,MAAA,OAEgB,OAFhBsH,EAAAvH,KAAA,EAENd,KAAKyU,WAAY,EAAKpM,EAAAtH,KAAA,EACCC,iBAAad,IAAI,8BAADe,OAA+BjB,KAAKiL,KAAKkB,QAAQ,OAAlFxL,EAAQ0H,EAAAnH,KACRoU,EAAOE,SAASC,cAAc,KAChCF,EAAMG,kCACEC,IAARJ,IACMA,EAAMA,EAAIK,OAAO,EAAGL,EAAI5P,OAAS,GACjC2P,EAAKO,KAAO,GAAH5U,OAAMsU,EAAG,gBAAAtU,OAAe6U,mBAAmBnV,EAASQ,QAE9DmU,EAAKS,aAAa,SAAU,UAC5BT,EAAK7R,QACdzD,KAAKwB,OAAOC,OAAO,kBAAmB,kCAAkC4G,EAAAtH,KAAA,iBAAAsH,EAAAvH,KAAA,GAAAuH,EAAAhH,GAAAgH,EAAA,YAExErI,KAAKwB,OAAOC,OAAO,uBAAwB,0CAA0C,yBAAA4G,EAAA1G,UAAAyG,EAAA,mBAEtF,SAhBa4N,IAAY,OAAAX,EAAAzT,MAAC,KAADC,WAAA,OAAZmU,EApBQ,MAzCM,CAAShT,QAErCC,eAAA,CADCmL,kB,4BADmBkG,GAAQrR,eAAA,CAD5BE,eAAU,KACUmR,cCR6W,MCQ9X,I,UAAY,eACd,GACA,GACA,IACA,EACA,KACA,WACA,OAIa,M,sSCAf,IAAqBpP,GAAiB,SAAA7F,GAAtC,SAAA6F,IAAA,IAAA5F,EAwCK,OAxCLC,eAAA,KAAA2F,G,uBAGY5F,EAAAI,SAAmB,EACnBJ,EAAAyL,oBAA8B,EAC9BzL,EAAA0L,8BAAwC,EACxC1L,EAAA8L,iBAA2B,EAC3B9L,EAAA6L,kBAA4B,EAC5B7L,EAAA2W,+BAAiCpQ,QAAMoQ,+BACvC3W,EAAA4L,SAAkE,CACtE,CACInL,IAAK,WACL8C,KAAMyK,OAAYC,iBAClB2I,QAAS,eAEb,CACInW,IAAK,QACL8C,KAAMyK,OAAYC,iBAClB2I,QAAS,YAEb,CACInW,IAAK,WACL8C,KAAMyK,OAAYG,iBAClByI,QAAS,iBAEb,CACInW,IAAK,UACL8C,KAAMyK,OAAYK,gBAClBuI,QAAS,oBAEb,CACInW,IAAK,cACL8C,KAAMyK,OAAYC,iBAClB2I,QAAS,eAEb,CACInW,IAAK,aACL8C,KAAMyK,OAAYC,iBAClB2I,QAAS,gBAEhB5W,EAyJJ,OAAAO,eAAAqF,EAAA7F,GAAAS,eAAAoF,EAAA,EAAAnF,IAAA,UAAApB,MAAA,eAAAwX,EAAA5V,eAAAC,mBAAAC,MAvJW,SAAAC,IAAA,OAAAF,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OACgB,OAApBf,KAAKN,SAAU,EAAKmB,EAAAE,KAAA,EACdf,KAAKoW,WAAU,wBAAAvV,EAAAc,UAAAjB,EAAA,UACxB,SAHa2V,IAAO,OAAAF,EAAAvU,MAAC,KAADC,WAAA,OAAPwU,EAuJjB,IAvJwB,CAAAtW,IAAA,WAAApB,MAAA,eAAA2X,EAAA/V,eAAAC,mBAAAC,MAKb,SAAAiH,IAAA,IAAAxB,EAAA,YAAA1F,mBAAAI,MAAA,SAAAgH,GAAA,eAAAA,EAAA9G,KAAA8G,EAAA7G,MAAA,cAAA6G,EAAA7G,KAAA,EACEf,KAAKuW,mBACNC,KAAKxW,KAAKyW,oBACVD,MAAK,kBAAMtQ,EAAKxG,SAAU,KAAM,wBAAAkI,EAAAjG,UAAA+F,EAAA,UACxC,SAJa0O,IAAQ,OAAAE,EAAA1U,MAAC,KAADC,WAAA,OAARuU,EALO,IAKC,CAAArW,IAAA,kBAAAG,IAMtB,WACI,OAAOF,KAAKwB,OAAOqN,MAAM6H,oBAClB1W,KAAKwB,OAAOqN,MAAM6H,mBAAmBrL,YAAcrL,KAAKqL,YACxDrL,KAAKwB,OAAOqN,MAAMC,uBAClB9O,KAAKwB,OAAOqN,MAAMC,sBAAsBzD,YAAcrL,KAAKqL,aACrE,CAAAtL,IAAA,WAAAG,IAED,WACI,OAAIF,KAAKwB,OAAOqN,MAAM6H,oBAAsB1W,KAAKwB,OAAOqN,MAAM6H,mBAAmBrL,YAAcrL,KAAKqL,WACzFrL,KAAKwB,OAAOqN,MAAM6H,mBAGtB,IAAI5K,IACd,CAAA/L,IAAA,iBAAAG,IAED,WACI,OAAIF,KAAKwB,OAAOqN,MAAMC,uBAAyB9O,KAAKwB,OAAOqN,MAAMC,sBAAsBzD,YAAcrL,KAAKqL,WAC/FrL,KAAKwB,OAAOqN,MAAMC,sBAGtB,IAAIxD,GACdqL,IACD,SAA2BC,GACvB5W,KAAKwB,OAAOC,OAAO,2BAA4BmV,KAClD,CAAA7W,IAAA,mBAAApB,MAAA,eAAAkY,EAAAtW,eAAAC,mBAAAC,MAEO,SAAA2H,IAAA,IAAAzH,EAAA,OAAAH,mBAAAI,MAAA,SAAAyH,GAAA,eAAAA,EAAAvH,KAAAuH,EAAAtH,MAAA,cAAAsH,EAAAvH,KAAA,EAAAuH,EAAAtH,KAAA,EAEuBC,iBAAad,IAAI,2CAADe,OAA4CjB,KAAKqL,aAAa,OAA/F1K,EAAQ0H,EAAAnH,KACdlB,KAAKwB,OAAOC,OAAO,wBAAyBd,EAASQ,MAAMkH,EAAAtH,KAAA,gBAEd,MAFcsH,EAAAvH,KAAA,EAAAuH,EAAAhH,GAAAgH,EAAA,YAE3D/G,QAAQ2G,IAAI,iCAAiCI,EAAAhH,GAAA,yBAAAgH,EAAA1G,UAAAyG,EAAA,kBAGpD,SARamO,IAAgB,OAAAM,EAAAjV,MAAC,KAADC,WAAA,OAAhB0U,EAFb,IAE6B,CAAAxW,IAAA,qBAAApB,MAAA,eAAAmY,EAAAvW,eAAAC,mBAAAC,MAUtB,SAAAgI,IAAA,IAAA9H,EAAA,OAAAH,mBAAAI,MAAA,SAAA8H,GAAA,eAAAA,EAAA5H,KAAA4H,EAAA3H,MAAA,cAAA2H,EAAA5H,KAAA,EAAA4H,EAAA3H,KAAA,EAEuBC,iBAAad,IAAI,yCAADe,OAA0CjB,KAAKqL,aAAa,OAA7F1K,EAAQ+H,EAAAxH,KACdlB,KAAKwB,OAAOC,OAAO,2BAA4Bd,EAASQ,MAAMuH,EAAA3H,KAAA,gBAEd,MAFc2H,EAAA5H,KAAA,EAAA4H,EAAArH,GAAAqH,EAAA,YAE9DpH,QAAQ2G,IAAI,oCAAoCS,EAAArH,GAAA,yBAAAqH,EAAA/G,UAAA8G,EAAA,kBAGvD,SARagO,IAAkB,OAAAK,EAAAlV,MAAC,KAADC,WAAA,OAAlB4U,EAVgB,IAUE,CAAA1W,IAAA,OAAAG,IAUhC,WACI,OAAOF,KAAKwB,OAAOqN,MAAMlD,OAC5B,CAAA5L,IAAA,OAAApB,MAEO,WACJqB,KAAK+W,QAAQC,IAAI,KACpB,CAAAjX,IAAA,eAAApB,MAEO,WACJ,IAAIsY,EAAiBjX,KAAKqL,WAC1BrL,KAAK+W,QAAQ1W,KAAK,CAAC6B,KAAM,UAAWgV,OAAQ,CAAED,sBAGlD,CAAAlX,IAAA,qBAAApB,MAAA,eAAAwY,EAAA5W,eAAAC,mBAAAC,MAGQ,SAAAmI,IAAA,IAAAjI,EAAA,OAAAH,mBAAAI,MAAA,SAAAiI,GAAA,eAAAA,EAAA/H,KAAA+H,EAAA9H,MAAA,UAAA8H,EAAA/H,KAAA,GAEId,KAAKN,QAAS,CAAFmJ,EAAA9H,KAAA,eAAA8H,EAAAuO,OAAA,iBAI8B,OAD9CpX,KAAKN,SAAU,EACfM,KAAKiK,eAAe0B,KAAO3L,KAAKqX,SAAS1L,KAAK9C,EAAA9H,KAAA,EACvBC,iBAAa6G,KAAK,8BAA+B7H,KAAKiK,gBAAe,OAAtFtJ,EAAQkI,EAAA3H,KACQ,KAAlBP,EAASQ,MACTnB,KAAKwB,OAAOC,OAAO,kBAAmB,uCACzCoH,EAAA9H,KAAA,iBAAA8H,EAAA/H,KAAA,GAAA+H,EAAAxH,GAAAwH,EAAA,YAEDvH,QAAQC,MAAM,yBACdD,QAAQC,MAAKsH,EAAAxH,IACbrB,KAAKwB,OAAOC,OAAO,uBAAwB,gDAAgD,QAEtE,OAFsEoH,EAAA/H,KAAA,GAE3Fd,KAAKN,SAAU,EAAMmJ,EAAAnH,OAAA,6BAAAmH,EAAAlH,UAAAiH,EAAA,yBAE5B,SAlBaoB,IAAkB,OAAAmN,EAAAvV,MAAC,KAADC,WAAA,OAAlBmI,EAHd,IAGgC,CAAAjK,IAAA,oBAAApB,MAAA,eAAA2Y,EAAA/W,eAAAC,mBAAAC,MAoBxB,SAAAsI,IAAA,OAAAvI,mBAAAI,MAAA,SAAAoI,GAAA,eAAAA,EAAAlI,KAAAkI,EAAAjI,MAAA,UAAAiI,EAAAlI,KAAA,GAEId,KAAKN,QAAS,CAAFsJ,EAAAjI,KAAA,eAAAiI,EAAAoO,OAAA,iBAGI,OAApBpX,KAAKN,SAAU,EAAKsJ,EAAAjI,KAAA,EACdC,iBAAa6G,KAAK,yCAAD5G,OAA0CjB,KAAKqL,WAAU,cAAApK,OAAajB,KAAKiK,eAAewB,cAAc,OAC/HzL,KAAKwB,OAAOC,OAAO,kBAAmB,sCAAsCuH,EAAAjI,KAAA,gBAAAiI,EAAAlI,KAAA,EAAAkI,EAAA3H,GAAA2H,EAAA,YAE5E1H,QAAQ2G,IAAI,mCACZjI,KAAKwB,OAAOC,OAAO,uBAAwB,8CAA8C,QAEpE,OAFoEuH,EAAAlI,KAAA,GAEzFd,KAAKN,SAAU,EAAMsJ,EAAAtH,OAAA,6BAAAsH,EAAArH,UAAAoH,EAAA,wBAE5B,SAdawO,IAAiB,OAAAD,EAAA1V,MAAC,KAADC,WAAA,OAAjB0V,EApBkB,IAoBD,CAAAxX,IAAA,iBAAApB,MAAA,eAAA6Y,EAAAjX,eAAAC,mBAAAC,MAgBvB,SAAAgX,IAAA,IAAA9W,EAAA+W,EAAA,OAAAlX,mBAAAI,MAAA,SAAA+W,GAAA,eAAAA,EAAA7W,KAAA6W,EAAA5W,MAAA,OAKA,OALA4W,EAAA7W,KAAA,EAEAd,KAAKN,SAAU,EAGfiY,EAAA5W,KAAA,EAEuBC,iBAAad,IAAI,yCAADe,OAA0CjB,KAAKqL,aAAa,OACtE,OADvB1K,EAAQgX,EAAAzW,KACVwW,EAAY/W,EAASQ,KAAIwW,EAAA5W,KAAA,EACvBC,iBAAa4W,OAAO,sCAAD3W,OAAuCjB,KAAKqL,aAAa,OAC7EqM,GAID1X,KAAKwB,OAAOC,OAAO,uBAAwBzB,KAAKqL,YAChDrL,KAAKwB,OAAOC,OAAO,kBAAmB,oEAJtCzB,KAAKwB,OAAOC,OAAO,iBAAkBzB,KAAKqL,YAC1CrL,KAAKwB,OAAOC,OAAO,kBAAmB,0CAK1CzB,KAAK+K,oBAAqB,EAC1B/K,KAAK+W,QAAQ1W,KAAK,CAAC6B,KAAM,aAAayV,EAAA5W,KAAA,iBAAA4W,EAAA7W,KAAA,GAAA6W,EAAAtW,GAAAsW,EAAA,YAEtC3X,KAAKwB,OAAOC,OAAO,uBAAwB,+CAA+C,QAErE,OAFqEkW,EAAA7W,KAAA,GAE1Fd,KAAKN,SAAU,EAAMiY,EAAAjW,OAAA,6BAAAiW,EAAAhW,UAAA8V,EAAA,yBAE5B,SAxBaI,IAAc,OAAAL,EAAA5V,MAAC,KAADC,WAAA,OAAdgW,EAhBiB,IAgBH,CAAA9X,IAAA,mBAAApB,MAAA,eAAAmZ,EAAAvX,eAAAC,mBAAAC,MA0BpB,SAAAsX,IAAA,OAAAvX,mBAAAI,MAAA,SAAAoX,GAAA,eAAAA,EAAAlX,KAAAkX,EAAAjX,MAAA,OAEoB,OAFpBiX,EAAAlX,KAAA,EAEAd,KAAKN,SAAU,EAAKsY,EAAAjX,KAAA,EACdC,iBAAa6G,KAAK,8CAAD5G,OAA+CjB,KAAKqL,WAAU,sBAAApK,OAAqBjB,KAAKoL,mBAAmB,OAClIpL,KAAKwB,OAAOC,OAAO,kBAAmB,iCACtCzB,KAAKgL,8BAA+B,EAAMgN,EAAAjX,KAAA,gBAAAiX,EAAAlX,KAAA,EAAAkX,EAAA3W,GAAA2W,EAAA,YAE1ChY,KAAKwB,OAAOC,OAAO,uBAAwB,kDAAkD,QAExE,OAFwEuW,EAAAlX,KAAA,GAE7Fd,KAAKN,SAAU,EAAMsY,EAAAtW,OAAA,6BAAAsW,EAAArW,UAAAoW,EAAA,wBAE5B,SAXaE,IAAgB,OAAAH,EAAAlW,MAAC,KAADC,WAAA,OAAhBoW,EA1Bc,IA0BE,CAAAlY,IAAA,kBAAApB,MAatB,WACJqB,KAAK+W,QAAQ1W,KAAK,CAAC6B,KAAM,cAAegV,OAAQ,CAAE7L,WAAYrL,KAAKqL,kBA/LrC,CAASrI,QAE3CC,eAAA,CADCmL,kB,kCADgBlJ,GAAiBjC,eAAA,CAPrCE,eAAU,CACPkL,WAAY,CACRE,qBACA+F,YACAxC,kBAGa5M,cCnB6X,MCO9Y,GAAY,eACd,GACA,EACAjG,GACA,EACA,KACA,KACA,MAIa,gB,4IClBwI,W,IAAiB,OAAE,EAAIV,EAAImB,MAAO,GAAgI,oB,OAAC,EAAK,OAAC,CAAE,mBAAE,MAAK,CAAUlB,MAAW,GAAkBM,eAAM,KAAY,yCAAE,MAAK,CAAuBA,IAAM,K,CAAoB,SAAQ,CAAQ,6BAAG,MAAK,CAAoFE,KAAI,O,CAAkBL,SAAqB,C,MAAC4E,C,cAAsC,GAAI,MAAC,aAAuB,8EAAE,IAAK,WAAYzE,MAAM,CAAC,MAAM,EAAE,UAAC,SAAO,YAAE,eAAiBA,WAAM,cAAY,WAAE,MAAK,CAAgB+K,OAAa,YAAqB/K,GAAK,OAAC,C,MAAC,CAAe,OAAQ,KAAwF,WAACJ,YAAM,CAACC,YAAWuZ,S,MAAsC,CAAa,YAAC,GAACrZ,2DAAqB,gCAAqBC,MAAM,CAAC,QAAS,SAAE,qBAAM,EAAC,SAAQ,GAA6BA,WAAM,eAA2B,KAAO,OAAC,CAAyB,MAAC,CAAG,OAAC,K,GAA0B,OAAOP,C,YAAkB,gBAAC,OAAIA,UAAO,YACvsC,iCAGD,I,yFAJkY,yE,ibCKlY,IAAqB4Z,EAAc,SAAA9Y,GAAnC,SAAA8Y,IAAA,IAAA7Y,EAWM,OAXNC,eAAA,KAAA4Y,G,sBACY7Y,EAAAI,SAAmB,EACnBJ,EAAA6F,QAAkB,EAClB7F,EAAA8Y,QAAkB,EAClB9Y,EAAA4Y,SAAmB,EACnB5Y,EAAA+Y,WAAqB,EACrB/Y,EAAAgZ,uBAA8B,CAClC,SAAC7S,GAAS,QAAOA,EAAE4D,YAAc,uBACjC,SAAC5D,GAAS,OAAM8S,MAAM9S,IAAM,wBAClC,SAACA,GAAS,OAAKA,EAAI,GAAK,kBACxB,SAACA,GAAS,OAAKA,GAAK,GAAK,oBACrBnG,EAgCL,OAAAO,eAAAsY,EAAA9Y,GAAAS,eAAAqY,EAAA,EAAApY,IAAA,UAAApB,MA9BW,WACVqB,KAAKwY,sBACF,CAAAzY,IAAA,oBAAApB,MAAA,eAAA8Z,EAAAlY,eAAAC,mBAAAC,MAEO,SAAAC,IAAA,IAAAC,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAEoB,OAFpBF,EAAAC,KAAA,EAEAd,KAAKN,SAAU,EAAKmB,EAAAE,KAAA,EACGC,iBAAad,IAAI,8BAA6B,OAA/DS,EAAQE,EAAAK,KACdlB,KAAKkY,SAAWvX,EAASQ,KAAK+W,SAC9BlY,KAAKoY,QAAS,EAAKvX,EAAAE,KAAA,gBAAAF,EAAAC,KAAA,EAAAD,EAAAQ,GAAAR,EAAA,YAEnBb,KAAKwB,OAAOC,OAAO,uBAAwB,uDAAuD,QAE7E,OAF6EZ,EAAAC,KAAA,GAElGd,KAAKN,SAAU,EAAMmB,EAAAa,OAAA,6BAAAb,EAAAc,UAAAjB,EAAA,wBAE5B,SAXa8X,IAAiB,OAAAC,EAAA7W,MAAC,KAADC,WAAA,OAAjB2W,EAFb,IAE8B,CAAAzY,IAAA,eAAApB,MAAA,eAAA+Z,EAAAnY,eAAAC,mBAAAC,MAavB,SAAAiH,IAAA,IAAAvG,EAAA,OAAAX,mBAAAI,MAAA,SAAAgH,GAAA,eAAAA,EAAA9G,KAAA8G,EAAA7G,MAAA,OAGmC,OAHnC6G,EAAA9G,KAAA,EAEAd,KAAKmF,QAAS,EACVhE,EAAO,CAAExC,MAAOqB,KAAKkY,UAAUtQ,EAAA7G,KAAA,EACZC,iBAAa6G,KAAK,wBAAyB1G,GAAK,OAAzDyG,EAAA1G,KACdlB,KAAKwB,OAAOC,OAAO,kBAAmB,8BAA8BmG,EAAA7G,KAAA,gBAAA6G,EAAA9G,KAAA,EAAA8G,EAAAvG,GAAAuG,EAAA,YAEpE5H,KAAKwB,OAAOC,OAAO,uBAAwB,8CAA8C,QAErE,OAFqEmG,EAAA9G,KAAA,GAEzFd,KAAKmF,QAAS,EAAMyC,EAAAlG,OAAA,6BAAAkG,EAAAjG,UAAA+F,EAAA,wBAE3B,SAXaiR,IAAY,OAAAD,EAAA9W,MAAC,KAADC,WAAA,OAAZ8W,EAbiB,MAjBA,CAAS3V,QAAvBmV,EAAclV,eAAA,CADlCE,eAAU,KACUgV,WCLqY,I,YCOtZ/U,EAAY,eACd,EACA,EACAnE,GACA,EACA,KACA,KACA,MAIa,aAAAmE,E,6FCjBf,SAASwV,EAAmB1P,GAC1B,GAAIO,MAAMoP,QAAQ3P,GAAI,OAAO,OAAA4P,EAAA,MAAiB5P,GCFhD,SAAS6P,EAAiB7P,GACxB,GAAI,oBAAsB8P,QAAU,MAAQ9P,EAAE8P,OAAOC,WAAa,MAAQ/P,EAAE,cAAe,OAAOO,MAAMC,KAAKR,G,gBCD/G,SAASgQ,IACP,MAAM,IAAIC,UAAU,wICGtB,SAASC,EAAmBlQ,GAC1B,OAAO,EAAkBA,IAAM,EAAgBA,IAAM,OAAAmQ,EAAA,MAA2BnQ,IAAM,M,4KCLsN,aAAC,IAAG7F,EAAG,KAAevE,EAAK,EAAC,SAAQ,EAAG,kB,OAAC,EAAM,MAAG,kE,IAAC,cAAS,OAAIuE,MAAG,YAAYvE,SAAM,YAAC,YAAS,GAAOP,WAAI+a,c,CAAgF,SAAQ,C,MAAU,CAAsC,SAAG,OAAC,GAAC,OAAO,K,CAAqE,UAAC,MAAC,CAAC5a,OAAM,K,CAA+B6E,sCAAwB,oB,MAAI,CAAoC,MAAC,UAAC1E,QAAW,2BAAsB,GAAG,CAAyFC,KAAM,YAAC,UAAQ,UAAU,6BAAwCgF,MAAG,CAAC,MAAM,EAAC,QAAPyV,U,SAA4BpM,SAAsBA,GAAsB,iCAAGzO,WAAM,wBAA6B6E,KAAS,OAATA,aAAwB,2C,MAAI,CAAkC,MAAC,WAAC1E,QAAW,2BAAoB,GAAG,CAA2CC,KAAM,YAAC,UAAQ,QAAO,2BAAwCgF,MAAG,CAAC,MAAM,EAAC,QAAPyV,Q,SAA4BpM,SAAsB5O,GAA8B,+BAAGG,WAAM,sBAAiC6E,KAAS,OAATA,QAAQA,EAAWD,OAAK,C,MAAI,CAAsC,MAAC,QAACzE,QAAW,2BAAwB,GAAG,CAAkCC,KAAM,YAAC,UAAQ,YAAS,+BAAwCgF,MAAG,CAAC,MAAM,EAAC,QAAPyV,Y,SAA4BpM,SAAqBA,GAAqB,mCAAGzO,WAAM,0BAA4B6E,KAAQ,OAAC,GAATA,OAAsB,C,MAAM,CAAiC,MAAC,UAAC1E,QAAW,2BAAmB,GAAG,CAAkCC,KAAM,YAAC,UAAa,iCAA6BgF,MAAG,CAAC,MAAM,EAAC,QAAPyV,O,SAA4BpM,SAAkBA,GAAkB,8BAAGzO,WAAM,qBAAyB6E,KAAQ,OAAC,GAATA,OAAsB,C,MAAM,CAA8B,MAAC,MAAC1E,QAAW,gBAAgB,GAAG,CAAkCC,KAAM,YAAC,UAAa,2BAAwCgF,MAAG,CAAC,MAAM,EAAC,QAAPyV,I,SAA4BpM,SAAmBA,GAAmB,2BAAGzO,WAAM,kBAA0B6E,KAAQ,OAAC,GAATA,OAAsB,C,MAAM,CAA+B,MAAC,MAAC1E,QAAW,2BAAiB,GAAG,CAAkCC,KAAM,YAAC,UAAQ,KAAM,wBAA4B,MAAC,CAACJ,MAAM,eAACC,SAAU,SAAiB,GAAC4E,OAAS,UAATA,OAAsB,IAAwC,WAAC,mBAA6B,uBAAG,MAAMhF,CAAwKO,MAAM,OAAC,SAAQ,GAAU,SAAW,IAAegF,MAAG,CAAC,MAAM,EAAC,QAAPyV,Q,SAA4BpM,SAAoBA,GAAoB,+BAAGzO,WAAM,sBAA2B6E,KAAQ,aAARA,EAAmBD,sBAAK,8F,MAAI,CAAgC,MAAC,UAACzE,QAAW,cAAkB,GAAG,CAA8HC,KAAM,YAAC,UAAQ,MAAQ,yBAAgCgF,MAAG,CAAC,MAAM,EAAC,QAAPyV,M,SAA4BpM,SAAoBA,GAAoB,6BAAGzO,WAAM,oBAA2B6E,KAAS,OAATA,aAAwB,0E,MAAI,CAAgC,MAAC,SAAC1E,QAAW,mBAAkB,GAAG,CAA4EC,KAAM,YAAC,UAAQ,MAAQ,yBAAgCgF,MAAG,CAAC,MAAM,EAAC,QAAPyV,M,SAA4BpM,SAAoBA,GAAoB,6BAAGzO,WAAM,oBAA2B6E,KAAS,aAATA,EAAmBD,iBAAK,oB,MAAI,CAAgC,MAAC,SAACzE,QAAW,mBAAkB,GAAG,CAAyFC,KAAM,YAAC,UAAQ,MAAQ,yBAA4B,MAAC,CAACJ,MAAM,gBAACC,SAAU,SAAe,GAAC4E,OAAS,UAATA,QAAwB,IAAoC,WAAC,oBAA2B,oEAAG,MAAI,CAAuHzE,MAAM,SAAC,SAAQ,GAAS,SAAW,IAAoBgF,MAAG,CAAC,MAAM,EAAC,QAAPyV,M,SAA4BpM,SAAoBA,GAAoB,6BAAGzO,WAAM,oBAA2B6E,KAAS,aAATA,EAAmBD,qBAAK,sD,MAAI,CAAgC,MAAC,SAACzE,QAAW,mBAAkB,GAAG,CAA+EC,KAAM,YAAC,UAAQ,MAAQ,yBAAgCgF,MAAG,CAAC,MAAM,EAAC,QAAPyV,M,SAA4BpM,SAAoBA,GAAoB,6BAAGzO,WAAM,oBAA2B6E,KAAS,aAATA,EAAmBD,oBAAK,oB,MAAI,CAAgC,MAAC,SAACzE,QAAW,mBAAkB,GAAG,CAAyE,KAAC,YAAC,UAAQ,MAAR4E,EAAiBwJ,QAAO,eAA4B,OAAI1O,MAAO,gBAAmEC,SAAW,SAAgB,GAACM,EAAM,2BAA4C,+BAAK,KAAQ,UAAR2E,IAAiBwJ,GAAM,EAAC,4B,GAAC,CAAwB,kBAAC,4BAAiEnO,GAAK,GAAC,iE,YAAC,gB,MAAmB,CAAW,oCAC//J,IACGG,eAAoB,GAExB,OAAe,EAAEA,iB,0lBCOjB,IAAqBqP,EAAoB,SAAAjP,GAAzC,SAAAiP,IAAA,IAAAhP,EA0BM,OA1BNC,eAAA,KAAA+O,G,sBAOYhP,EAAAmV,WAAqB,EACxBnV,EAAAka,WAAqB,EACrBla,EAAA+N,qBAAoCC,OAAYC,iBAChDjO,EAAAkO,qBAAoCF,OAAYG,iBAChDnO,EAAAoO,oBAAmCJ,OAAYK,gBAC/CrO,EAAAsO,kBAAiCN,OAAYO,cAC7CvO,EAAAwO,iBAAgCR,OAAYS,aAC5CzO,EAAAkF,aAAeqB,OAAMrB,aACrBlF,EAAAma,0BAA4B5T,OAAM4T,0BAClCna,EAAAoa,0BAA4B7T,OAAM6T,0BAClCpa,EAAAqa,kBAAoB9T,OAAM8T,kBAC1Bra,EAAAsa,kBAAoB/T,OAAM+T,kBAE1Bta,EAAAua,eAAiB,CAClB,SAACpU,GAAS,MACoB,gBAAzBnG,EAAK6N,QAAQZ,SAAsD,YAAzBjN,EAAK6N,QAAQZ,SAAkD,kBAAzBjN,EAAK6N,QAAQZ,SACpE,gBAAzBjN,EAAK6N,QAAQZ,SAA0C,IAAb9G,EAAEE,QAAgBmU,SAASrU,IAAM,KAAQqU,SAASrU,IAAM,QACxE,YAAzBnG,EAAK6N,QAAQZ,SAAkD,kBAAzBjN,EAAK6N,QAAQZ,UAA6C,IAAb9G,EAAEE,QAAgBmU,SAASrU,IAAM,KAAQqU,SAASrU,IAAM,MAC7I,gCACNnG,EAkCL,OAAAO,eAAAyO,EAAAjP,GAAAS,eAAAwO,EAAA,EAAAvO,IAAA,cAAApB,MAAA,eAAAob,EAAAxZ,eAAAC,mBAAAC,MAhCQ,SAAAC,IAAA,OAAAF,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAAAF,EAAAC,KAAA,EAENd,KAAKyU,WAAY,EAAK5T,EAAAQ,GAEdrB,KAAKsZ,YAAWzY,EAAAE,KAAAF,EAAAQ,KAClBiM,OAAYC,iBAAgB,EAAA1M,EAAAQ,KAG5BiM,OAAYK,iBAAe9M,EAAAQ,KAC3BiM,OAAYG,iBADe,EACC5M,EAAAQ,KAG5BiM,OAAYS,aAAY,GAAAlN,EAAAQ,KAGxBiM,OAAYO,cAAa,0BAAAhN,EAAAE,KAAA,EATvBC,iBAAa6G,KAAK,sCAAuC7H,KAAKmN,SAAQ,cAAAtM,EAAAuW,OAAA,0BAAAvW,EAAAE,KAAA,GAItEC,iBAAa6G,KAAK,sCAAuC7H,KAAKmN,SAAQ,eAAAtM,EAAAuW,OAAA,2BAAAvW,EAAAE,KAAA,GAGtEC,iBAAa6G,KAAK,iDAAD5G,OAAkDjB,KAAKga,SAAWha,KAAKmN,SAAQ,eAAAtM,EAAAuW,OAAA,2BAAAvW,EAAAE,KAAA,GAGhGC,iBAAa6G,KAAK,kDAAD5G,OAAmDjB,KAAKga,SAAWha,KAAKmN,SAAQ,eAAAtM,EAAAuW,OAAA,yBAGjG,qBAAoB,QAG5BpX,KAAKwB,OAAOC,OAAO,kBAAmB,uCACtCzB,KAAKia,MAAM,QAASja,KAAKmN,SACzBnN,KAAKia,MAAM,UAAUpZ,EAAAE,KAAA,iBAAAF,EAAAC,KAAA,GAAAD,EAAAqZ,GAAArZ,EAAA,YAErBS,QAAQ2G,IAAGpH,EAAAqZ,IACXla,KAAKwB,OAAOC,OAAO,uBAAwB,yCAAyC,QAE7D,OAF6DZ,EAAAC,KAAA,GAEpFd,KAAKyU,WAAY,EAAM5T,EAAAa,OAAA,6BAAAb,EAAAc,UAAAjB,EAAA,yBAExB,SA/BayZ,IAAW,OAAAJ,EAAAnY,MAAC,KAADC,WAAA,OAAXsY,EAgCd,MA5DwC,CAASnX,QAE9CC,eAAA,CADCmL,kB,8BAGJnL,eAAA,CADCmL,kB,kCAGDnL,eAAA,CADCmL,kB,8BALmBE,EAAoBrL,eAAA,CAJxCE,eAAU,CACPkL,WAAY,MAGKC,WCXyX,I,YCO1YlL,EAAY,eACd,EACA,EACAnE,GACA,EACA,KACA,KACA,MAIa,OAAAmE,E,yPClBuO,W,IAAW,OAAE,EAAK,QAAU,GAAQ,oB,OAAC,QAAYgX,UAAS,C,YAAC,O,MAAmB,CAAmB,MAAQ,GAAW,oB,CAAsBra,EAAG,OAAO,C,MAAI,C,IAAe,G,KAAmBsa,K,CAA8J,UAAC,MAAG,CAAC3b,OAAM,K,CAAsB6E,SAAS,C,MAAmB,CAAa,MAAC,YAAC1E,gBAAW,GAAU,mBAAI,MAAO,Y,YAAkC,EAAC,KAAQ,WAACC,GAAK,SAAC,GAAC,MAAQ,CAAC,UAAE,qDAAO,uCAAc,uD,MAAqC,CAAuB,iBAA0B,SAAQ,YAAgB,cAAK,0BAAsE,aAAC,aAAI,YAAO,S,MAAuB,CAAoB,Y,CAAQ,gBAAS,CAAE,OAAIuE,aAAgB,EAAC,UAACvE,iBAAM,EAAC,mBAAmBwb,EAAQ,uB,GAAgD,CAAwB,kCAAI,8BAAqE,aAAC,aAAI,YAAO,SAAqCxb,MAAM,CAAC,OAAU,KAAgG,kBAACgF,MAAG,CAAC,aAAQ,EAARL,Q,iBAAoC8W,EAAoB,qBAAC,uBAAqE/b,IAA4BM,sBAAM,YAAC,OAAS,EAACP,WAAIic,QAA+H,aAAC1W,YAAG,gB,MAAC,C,SAAmD,OAAhB,EAAC2W,SAAe,wEAAG,GAAI,CAAiHjc,MAAW,SAAC,GAAgBM,OAAM,0B,CAAiF,KAAO,8CAAC,UAA0E,YAAC,gBAACgF,MAAG,CAAC,QAAQ,iB,SAA0C,OAAf,EAAC2W,WAAc,wEAAG,GAAI,CAA0H3b,MAAM,YAAC,SAAWP,UAAImc,MAAuG5W,CAAE,EAAC,wG,YAAS,gB,MAAoB,CAA6B,yBAAC,yCAAIvF,MAAO,4E,GAAiG2D,CAAYyY,MAAQ,SAAQ,GAAChc,OAAQJ,EAAIqc,gBAAmE9b,GAAK,OAAC,0G,MAAC,CAAkB,SAAgB,OAAhB,EAAe,SAAG,mFAAqCA,IAAO,MAAQ,YAAC,EAAM,uBAAC,KAAsCA,GAAK,GAAC,oE,WAAS,EAAQ,YAAwB,QAAO,SAAyC,gCAACJ,WAAM,4B,MAAyB6E,C,MAA6B+B,UAAe,cAAC,MAAyB,wBAAG,MAAKjC,CAAavE,IAAM,GAAC,KAAQ,KAAM,CAACuE,EAAG,iBAAa,CAACvE,MAAM,CAAC,MAAQ,QAA2B,wBAACJ,KAAM,0C,MAAoC6E,C,MAA6BsX,cAA0B,SAAC,YAAChc,cAAW,GAA4B,WAAO,kBAAiB,KAAQ,OAAC,CAAE,OAAIwE,OAAG,K,CAAqB,SAAQ,CAAyB,MAAC,CAAC3E,MAAM,4B,MAAmC6E,C,MAA6BuX,yBAAyB,SAAC,YAACjc,yBAAW,GAA2B,WAAQN,6BAAiD,GAAK,EAAC,OAAE,C,MAAC,CAAiB,YAAiB,CAAC8E,EAAG,OAAW9E,CAAkCO,MAAM,CAAC,MAAQ,2BAA+E,MAAK,CAAuGN,QAAY,sBAAUD,SAAO,YACviHC,wBAAY,GAAsP,WAAMuc,4BAAoFvc,OAAY,+BAAQ,MAAMkF,CAAiP,IAAMsX,GAAgCrV,cAAQ,GAAoDnH,YAAY,KAA4QA,UAAW,CAAC,4BAAQ,MAAMkF,CAA0PlF,MAAW,gFAAgMA,QAAW,GAAC,2FAAQ,YAAWD,SAAkHC,uCAAY,gSAAQ,YAAS,SAAkLM,GAAK,GAAC,mO,OAAC,EAAO,mBAAC,KAAsC,2DAAE,YAAWuE,SAAiH7E,uCAAY,2MAAS,OAAM,6BAAsB,KAAiFA,QAAW,2CAAC,QAAQ,YAAS,SAAmQA,uCAAY,+MAAQ,YAAS,SAAqPA,uCAAY,2MAAQ,YAAS,SAA4IA,uCAAY,gIAAQ,YAAWD,SAAuHC,QAAW,GAAC,yGAAQ,YAAS,SAA2IA,uCAAY,+HAAQ,MAAK,CAAkHA,MAAW,yCAA2MM,GAAK,KAAC,8G,YAAS,YAA8J,qGAAE,YAAWuE,SAASvE,GAAK,GAAC,wP,YAAS,SAA8H,gPAAE,YAAS,SAAuFN,uCAAY,oGAAQ,YAAS,SAA0N,QAAU,GAAK,kH,YAAKyc,SAAiB,GAAI,GAAC,iCAAa,OAAgC,GAAC1c,eAAjC,CAAmD,EAAC2D,6BAAM,kCAAyC,Q,YAAY,SAAS,GAAE3D,KAAO,kGAAkF,QAAmC,YAAU8E,SAAqH7E,uCAAY,sIAAQ,MAAMkF,CAAiIlF,MAAW,iKAA6GA,QAAW,GAAC,MAAQ,MAAMkF,CAAmb,MAAU,iIAAgB,GAAEnF,GAAImF,8EAA2E,QAAE,YAAS,SAA2CmG,uCAAY,oK,OAAC,OAAY,CAAO,YAAItL,GAAImF,KAAG,MAAY,iCAAiC,EAAE,KAAYwX,MAAOC,iCAA0BC,QAAqN5c,YAAY,SAAcM,GAAM,4GAAC,OAAS,GAACP,KAAI8c,GAAO,mG,YAAC,S,CAAkB,sCAAoB,sF,YAAS9c,SAAmB,+FAAC+c,YAAY/c,S,CAASwB,EAAG,GAAC,iCAAS,6V,OAAI,OAAHwb,C,IAAmB,G,GAAwD,gCAAe,uC,MAACxb,GAAIyb,QAAW,2B,YAAChd,C,YAAiCkF,U,CAA6E,2RAAC,YAAE,c,MAAK,CAAQ6X,QAAG,EAADA,Q,eAA4B,G,WAAM/c,U,MAA4B,EAAC,gB,YAA8C,O,IAAC6b,U,YAAS,G,MAA+K,oCAACvW,OAAG,QAAC,MAAQ,K,YAAuB2X,gBAA0B,uEAAC,MAAwjB,CAAE,IAAC,QAAC1b,GAAG,SAAS,GAAG,MAAC,GAAHwb,KAAY9L,CAAO,YAAW,WAAgBjR,OAAoCM,eAAM,wB,MAA8B,CAAiD,oBAAW,OAAgB,yHAAkB,GAAC,CAACwc,MAAW,SAAS,GAACvb,EAAI,UAAO,c,QAA2C,2d,0BAAuF,G,MAAE,GAAEsD,OAAY,C,YAAk5B,wB,eAAoI,iB,MAAO,EAAI,mCAAuiB,4BAAG,eAAU,IAAI,mBAAQ,IAAC,QAAwBtE,GAAI,SAAM2c,GAAmD,eAAQ,IAAK,kBAAO,kDAAuEA,+CAAgC,6tBAAC,OAAY,oIAA6C,GAAI,GAAC,iCAAuB,0BAAyC,EAACC,wBAA+B,EAAS,KAAI,WAAI,gCAAwC,EAACpd,KAAIod,CAAqC,WAArCA,OAAgBC,kBAA+BlY,EAAG,qHAAyHiY,EAAgBE,OAAS,EAAC,MAA+B,WAA/B,wBAAiD,UAAc,EAAC,yHAAQ,MAAc,SAAsE,sBAACP,OAAY/c,EAAIud,6BAAI,U,MAAK,CAAQP,MAAG,G,MAAiqB,CAAG,MAAK,EAAC,6BAAoBhd,SAAO,YAAmNO,EAAM,gCAAa,4C,CAAQH,SAAU,CAACod,eAAsB,0W,MAACxY,C,eAA6BwY,GAAyB,QAAC,gBAACld,QAAW,2BAAyB,YAAa,EAAEwE,GAAG,EAAgQ,IAAOA,QAAStD,GAAG,SAAC4E,GAAKpG,MAAO,qBAA6BA,KAAI2c,SAAO,kBAA0B,EAAC,+eAA4B,sBAAC,KAAM,uCAAiB,yJ,MAAI,CAA6B,SAAGxc,MAAM,CAACC,MAAOJ,EAAIyd,sBAASzY,SAAS,SAAUD,GAAM/E,EAAIyd,sBAAW,GAAEnd,WAAW,0BAAY,CAACwE,EAAG,OAAO,GAAC,qOAACS,OAAG,QAAC,O,CAAyB,KAAOvF,6BAA8Byd,KAAQ,+CAAC,IAAIzd,KAAO,SAAa8E,GAAmD,6B,MAA2D,CAAC,gBAAI9E,SAAO,YAAmEC,UAAY,GAAoB,WAAQ,aAA0C,UAAC,IAAID,MAAO,YACxiY,6C,24DCeD,IAAqB0d,EAA+B,SAAA5c,GAApD,SAAA4c,IAAA,IAAA3c,EAoMW,OApMXC,eAAA,KAAA0c,G,sBACY3c,EAAAkb,gBAA0B,EAC1Blb,EAAA0c,QAAkB,GAClB1c,EAAAyc,uBAAiC,EACjCzc,EAAA4c,iBAA6B,GAC7B5c,EAAAsb,aAAuB,EACvBtb,EAAAgG,YAAsB,GACtBhG,EAAAub,wBAAkC,EAClCvb,EAAAwb,uBAAiC,EACjCxb,EAAA6c,UAAoBC,MAASC,SAAS,EAAG,QAAQC,OAAO,sBACxDhd,EAAAgb,QAAkB8B,IAAOA,MAASC,SAAS,EAAG,QAAQC,OAAO,uBAChEC,IAAI,EAAG,SAASF,SAAS,EAAG,QAAQC,OAAO,uBACxChd,EAAAI,SAAmB,EACnBJ,EAAAoc,8BAAwC,EACxCpc,EAAAqc,gBAAuB,GACvBrc,EAAA6b,0BAAiE,KACjE7b,EAAAkd,kBAAoBC,OAAkBD,kBACtCld,EAAAob,SAAgB,KAChBpb,EAAA+b,QAEkC5R,MACtC,CACIiT,KAAM,QACN/d,MAAO,aACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,WACN/d,MAAO,cACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,iBACN/d,MAAO,UACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,cACN/d,MAAO,GACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,gBACN/d,MAAO,OACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,sCACN/d,MAAO,QACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,kBACN/d,MAAO,gBACPge,MAAO,OACPC,UAAU,EACVC,MAAO,QAEX,CACIH,KAAM,mBACN/d,MAAO,gBACPge,MAAO,OACPC,UAAU,EACVC,MAAO,QAEX,CACIH,KAAM,WACN/d,MAAO,gBACPge,MAAO,OACPC,UAAU,EACVC,MAAO,SAGPvd,EAAAwd,cAEkCrT,MACtC,CACIiT,KAAM,iBACN/d,MAAO,aACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,mBACN/d,MAAO,cACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,0BACN/d,MAAO,UACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,2BACN/d,MAAO,UACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,4BACN/d,MAAO,OACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,gBACN/d,MAAO,OACPge,MAAO,OACPC,UAAU,EACVC,MAAO,QAGPvd,EAAAyd,eAEkCtT,MACtC,CACIiT,KAAM,UACN/d,MAAO,aACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,aACN/d,MAAO,cACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,WACN/d,MAAO,UACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,QACN/d,MAAO,OACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,gBACN/d,MAAO,QACPge,MAAO,OACPC,UAAU,EACVC,MAAO,QAEX,CACIH,KAAM,iBACN/d,MAAO,GACPge,MAAO,OACPC,UAAU,EACVC,MAAO,QAEX,CACIH,KAAM,cACN/d,MAAO,gBACPge,MAAO,OACPC,UAAU,EACVC,MAAO,QAEX,CACIH,KAAM,mBACN/d,MAAO,gBACPge,MAAO,OACPC,UAAU,EACVC,MAAO,QAEX,CACIH,KAAM,WACN/d,MAAO,gBACPge,MAAO,OACPC,UAAU,EACVC,MAAO,SACRvd,EAiRV,OAAAO,eAAAoc,EAAA5c,GAAAS,eAAAmc,EAAA,EAAAlc,IAAA,YAAAG,IA/QG,WACI,IAAMwa,EAAWsC,OAAMnO,MAAMuL,UAAU7Q,QAKvC,OAJAmR,EAAS1S,QAAQ,CACb9F,KAAM,gBACNyC,GAAI,IAED+V,IACV,CAAA3a,IAAA,iBAAAG,IACD,WAA0B,IAAAgG,EAAA,KACtB,GAAuC,OAAnClG,KAAKmb,0BACL,MAAO,GAEX,IAAI8B,EAAgBjd,KAAKmb,0BAA0BC,2BAanD,MAZyB,KAArBpb,KAAKsF,aAA2C,OAArBtF,KAAKsF,cAChC2X,EAAgBA,EAAc5W,QAAO,SAAC6W,GAAC,OAAKA,EAAElD,QAAQzT,SAASL,EAAKZ,cAChE4X,EAAE7R,WAAW9E,SAASL,EAAKZ,iBAE/BtF,KAAK6a,yBACLoC,EAAgBA,EAAc5W,QAAO,SAAC6W,GAAC,OAAKd,IAAOc,EAAEC,cAAcC,cAAclX,EAAKiW,YAClFC,IAAOc,EAAEC,cAAcE,eAAejB,IAAOlW,EAAKoU,SAASgC,OAAO,4BAEtEtc,KAAK8a,wBACLmC,EAAgBA,EAAc5W,QAAO,SAAC6W,GAAC,OAAKd,IAAOc,EAAEI,YAAYF,cAAclX,EAAKiW,YAChFC,IAAOc,EAAEI,YAAYD,eAAejB,IAAOlW,EAAKoU,SAASgC,OAAO,4BAEjEW,IACV,CAAAld,IAAA,kBAAAG,IAED,WACI,IAAIqd,EAAiB,EAIrB,OAHIvd,KAAKwd,yBAAyB7X,OAAS,IACvC4X,EAAiBvd,KAAKwd,yBAAyBC,QAAO,SAACtU,EAAGuU,GAAC,MAAM,CAACC,KAAMxU,EAAEwU,KAAOD,EAAEC,KAAMzb,KAAM,OAAMyb,MAElG3d,KAAK4d,yBAA2BL,EAAiBvd,KAAK6d,gBAChE,CAAA9d,IAAA,2BAAAG,IAED,WACI,OAAOF,KAAK8d,gBACN9d,KAAK4d,yBACL,MACT,CAAA7d,IAAA,gBAAAG,IAED,WACI,IACuC6d,EADnCC,EAAQ,EAAEC,EAAAC,EACMle,KAAKme,gBAAc,IAAvC,IAAAF,EAAAG,MAAAL,EAAAE,EAAAI,KAAAC,MAAyC,KAA9BC,EAAKR,EAAApf,MACZqf,GAASO,EAAMC,oBAClB,MAAAC,GAAAR,EAAAS,EAAAD,GAAA,QAAAR,EAAAU,IAED,OADAX,GAAShe,KAAK4e,2BAA6B5e,KAAK6e,2BACzCb,IACV,CAAAje,IAAA,2BAAAG,IAED,WACI,IACuC4e,EADnCd,EAAQ,EAAEe,EAAAb,EACMle,KAAKme,gBAAc,IAAvC,IAAAY,EAAAX,MAAAU,EAAAC,EAAAV,KAAAC,MAAyC,KAA9BC,EAAKO,EAAAngB,MACZqf,GAASO,EAAMS,yBAClB,MAAAP,GAAAM,EAAAL,EAAAD,GAAA,QAAAM,EAAAJ,IAED,OADAX,GAAShe,KAAK6e,2BAA6B7e,KAAK4e,2BACzCZ,IACV,CAAAje,IAAA,kCAAAG,IAED,WACI,IACuC+e,EADnCjB,EAAQ,EAAEkB,EAAAhB,EACMle,KAAKme,gBAAc,IAAvC,IAAAe,EAAAd,MAAAa,EAAAC,EAAAb,KAAAC,MAAyC,KAA9BC,EAAKU,EAAAtgB,MACZqf,GAASO,EAAMvD,4BAClB,MAAAyD,GAAAS,EAAAR,EAAAD,GAAA,QAAAS,EAAAP,IACD,OAAOX,IACV,CAAAje,IAAA,0BAAAG,IAED,WACI,IACuCif,EADnCnB,EAAQ,EAAEoB,EAAAlB,EACMle,KAAKme,gBAAc,IAAvC,IAAAiB,EAAAhB,MAAAe,EAAAC,EAAAf,KAAAC,MAAyC,KAA9BC,EAAKY,EAAAxgB,MACZqf,GAASO,EAAMxD,oBAClB,MAAA0D,GAAAW,EAAAV,EAAAD,GAAA,QAAAW,EAAAT,IACD,OAAOX,IACV,CAAAje,IAAA,2BAAAG,IAED,WACI,IACuCmf,EADnCrB,EAAQ,EAAEsB,EAAApB,EACMle,KAAKme,gBAAc,IAAvC,IAAAmB,EAAAlB,MAAAiB,EAAAC,EAAAjB,KAAAC,MAAyC,KAA9BC,EAAKc,EAAA1gB,MACZqf,GAASO,EAAMgB,qBAClB,MAAAd,GAAAa,EAAAZ,EAAAD,GAAA,QAAAa,EAAAX,IACD,OAAOX,IACV,CAAAje,IAAA,uBAAAG,IAED,WACI,IACuCsf,EADnCxB,EAAQ,EAAEyB,EAAAvB,EACMle,KAAKme,gBAAc,IAAvC,IAAAsB,EAAArB,MAAAoB,EAAAC,EAAApB,KAAAC,MAAyC,KAA9BC,EAAKiB,EAAA7gB,MACZqf,GAASO,EAAMmB,iBAClB,MAAAjB,GAAAgB,EAAAf,EAAAD,GAAA,QAAAgB,EAAAd,IACD,OAAOX,IACV,CAAAje,IAAA,8BAAAG,IAED,WACI,IACuCyf,EADnC3B,EAAQ,EAAE4B,EAAA1B,EACMle,KAAKme,gBAAc,IAAvC,IAAAyB,EAAAxB,MAAAuB,EAAAC,EAAAvB,KAAAC,MAAyC,KAA9BC,EAAKoB,EAAAhhB,MACZqf,GAASO,EAAMsB,8BAClB,MAAApB,GAAAmB,EAAAlB,EAAAD,GAAA,QAAAmB,EAAAjB,IACD,OAAOX,IACV,CAAAje,IAAA,6BAAAG,IAED,WACI,GAAsC,MAAlCF,KAAKmb,0BAAmC,OAAO,EACnD,IAAI6C,EAAQ,EAEZ,OADAhe,KAAKmb,0BAA0B2E,UAAUC,SAAQ,SAAAC,GAAC,OAAIhC,GAASgC,EAAEC,qBAC1DjC,IACV,CAAAje,IAAA,8BAAAG,IAED,WACI,IACuCggB,EADnClC,EAAQ,EAAEmC,EAAAjC,EACMle,KAAKme,gBAAc,IAAvC,IAAAgC,EAAA/B,MAAA8B,EAAAC,EAAA9B,KAAAC,MAAyC,KAA9BC,EAAK2B,EAAAvhB,MACZqf,GAASO,EAAM6B,8BAClB,MAAA3B,GAAA0B,EAAAzB,EAAAD,GAAA,QAAA0B,EAAAxB,IACD,OAAOX,IACV,CAAAje,IAAA,6BAAAG,IAED,WACI,GAAsC,MAAlCF,KAAKmb,0BAAmC,OAAO,EACnD,IAAI6C,EAAQ,EAEZ,OADAhe,KAAKmb,0BAA0B2E,UAAUC,SAAQ,SAAAC,GAAC,OAAIhC,GAASgC,EAAEK,qBAC1DrC,IACV,CAAAje,IAAA,uBAAAG,IAED,WACI,GAAsC,MAAlCF,KAAKmb,0BAAmC,OAAO,EACnD,IAAI6C,EAAQ,EAEZ,OADAhe,KAAKmb,0BAA0B2E,UAAUC,SAAQ,SAAAC,GAAC,OAAIhC,GAASgC,EAAEM,eAC1DtC,IACV,CAAAje,IAAA,2BAAAG,IAED,WACI,IACuCqgB,EADjCC,EAAgD/W,QAAQgX,EAAAvC,EAC1Cle,KAAKme,gBAAc,QAAAuC,EAAA,WAAE,IAA9BnC,EAAKgC,EAAA5hB,MACZ,GAA+B,KAA3B4f,EAAMoC,iBAAyB,CAC/B,IAAIC,EAAQJ,EAAOK,MAAK,SAACnD,GAAC,OAAKA,EAAExb,OAASqc,EAAMoC,yBAClChL,IAAViL,GACAA,EAAQ,CACJjD,KAAMY,EAAMuC,iBACZ5e,KAAMqc,EAAMoC,kBAEhBH,EAAOngB,KAAKugB,IAEZA,EAAMjD,MAAQY,EAAMuC,mBAVhC,IAAAL,EAAArC,MAAAmC,EAAAE,EAAApC,KAAAC,MAAAoC,IAaC,MAAAjC,GAAAgC,EAAA/B,EAAAD,GAAA,QAAAgC,EAAA9B,IACD,OAAO6B,IACV,CAAAzgB,IAAA,eAAApB,MAEO,SAAaoiB,GACjB,OAAIA,EAA0BC,8BAA8B3a,QACxD,SAAC4a,GAA+B,OAAyB,IAApBA,EAAEC,eACd,IAArBD,EAAE1D,gBACF0D,EAAEE,mBAAqB,IACtBF,EAAErF,YAAYrV,SAAS,YACvB0a,EAAErF,YAAYrV,SAAS,4BAA0BZ,OAAS,IAItE,CAAA5F,IAAA,YAAAG,IAED,WACI,GAAuC,OAAnCF,KAAKmb,0BACL,OAAO,EACV,IAC4CiG,EAD5CC,EAAAnD,EACyBle,KAAKme,gBAAc,IAA7C,IAAAkD,EAAAjD,MAAAgD,EAAAC,EAAAhD,KAAAC,MAA+C,KAApCgD,EAAWF,EAAAziB,MAClB,GAAIqB,KAAKuhB,aAAaD,GAClB,OAAO,GAEd,MAAA7C,GAAA4C,EAAA3C,EAAAD,GAAA,QAAA4C,EAAA1C,IACD,OAAO,IACV,CAAA5e,IAAA,yBAAApB,MAEO,SAAuB6iB,EAAejD,GAC1Cve,KAAK2b,gBAAkB6F,EACvBxhB,KAAK0b,8BAA+B,IACvC,CAAA3b,IAAA,qBAAApB,MAAA,eAAA8iB,EAAAlhB,eAAAC,mBAAAC,MAEO,SAAAC,IAAA,IAAAC,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,UACkB,OAAlBf,KAAK0a,SAAiB,CAAA7Z,EAAAE,KAAA,SAGE,OAHFF,EAAAC,KAAA,EAElBd,KAAK0hB,eACL1hB,KAAKN,SAAU,EAAKmB,EAAAE,KAAA,EACGC,iBAAad,IAAI,qCAAAe,OAAqCjB,KAAKmc,UAAS,SAAAlb,OAAQjB,KAAKsa,SAAO,eAAArZ,OAC5FjB,KAAK0a,SAAS/V,KAAK,OADhChE,EAAQE,EAAAK,KAEdlB,KAAKmb,0BAA4Bxa,EAASQ,KAC1CnB,KAAK4a,aAAc,EAAK/Z,EAAAE,KAAA,iBAAAF,EAAAC,KAAA,GAAAD,EAAAQ,GAAAR,EAAA,YAExBS,QAAQ2G,IAAI,6BAA6B,QAEpB,OAFoBpH,EAAAC,KAAA,GAEzCd,KAAKN,SAAU,EAAMmB,EAAAa,OAAA,6BAAAb,EAAAc,UAAAjB,EAAA,yBAGhC,SAfa6Z,IAAkB,OAAAkH,EAAA7f,MAAC,KAADC,WAAA,OAAlB0Y,EAFb,IAE+B,CAAAxa,IAAA,eAAApB,MAkBxB,WACJqB,KAAK4a,aAAc,EACnB5a,KAAKmb,0BAA4B,OACpC,CAAApb,IAAA,uBAAApB,MAGO,WACJqB,KAAKkc,iBAAiBvW,OAAS,EAAE,IACMgc,EADNC,EAAA1D,EACble,KAAKme,gBAAc,IAAvC,IAAAyD,EAAAxD,MAAAuD,EAAAC,EAAAvD,KAAAC,MAAyC,KAA9BC,EAAKoD,EAAAhjB,MACZqB,KAAKkc,iBAAiB7b,KAAKke,EAAMvE,UACpC,MAAAyE,GAAAmD,EAAAlD,EAAAD,GAAA,QAAAmD,EAAAjD,OACJ,CAAA5e,IAAA,eAAApB,MAEO,SAAakjB,GACjB7hB,KAAKmc,UAAYC,IAAOyF,GAAMvF,OAAO,cACrCtc,KAAK0hB,iBACR,CAAA3hB,IAAA,aAAApB,MACO,SAAWkjB,GACf7hB,KAAKsa,QAAU8B,IAAOyF,GAAMvF,OAAO,cACnCtc,KAAK0hB,iBACR,CAAA3hB,IAAA,WAAApB,MAAA,eAAAmjB,EAAAvhB,eAAAC,mBAAAC,MAEO,SAAAiH,EAAeqa,GAAyB,IAAAphB,EAAAqhB,EAAAC,EAAA5b,EAAA6b,EAAAC,EAAA,OAAA3hB,mBAAAI,MAAA,SAAAgH,GAAA,eAAAA,EAAA9G,KAAA8G,EAAA7G,MAAA,eACjB4U,IAAvB3V,KAAK0a,SAASxY,KAAkB,CAAA0F,EAAA7G,KAAA,SAED,OAFC6G,EAAA9G,KAAA,EAE5Bd,KAAKwa,gBAAiB,EAAK5S,EAAA7G,KAAA,EACJC,iBAAad,IAChC,4BAAAe,OAA4BjB,KAAKmc,UAAS,SAAAlb,OAAQjB,KAAKsa,SAAO,eAAArZ,OAC3CjB,KAAK0a,SAAS/V,IAAI,2BAAA1D,OACNjB,KAAK6a,wBAAwB,0BAAA5Z,OAC9BjB,KAAK8a,uBAAuB,qBAAA7Z,OACjC8gB,GACzB,CACIK,OAAQ,MACRC,aAAc,SACpB,OATI1hB,EAAQiH,EAAA1G,KAUR8gB,EAAQ5F,IAAOpc,KAAKmc,WAAWG,OAAO,cACtC2F,EAAO7F,IAAOpc,KAAKsa,SAASgC,OAAO,cACrCjW,EAAS,GACTrG,KAAK6a,yBACLxU,EAAS,qBAETrG,KAAK8a,wBACLzU,GAAU,wBAEV6b,EAAe,aACfH,IACAG,EAAe,sBAEbC,EAAWniB,KAAK0a,SAASxY,KAAO,IAAHjB,OAAOihB,EAAY,KAAAjhB,OAAIoF,EAAM,KAAApF,OAAI+gB,EAAK,OAAA/gB,OAAMghB,EAAI,SACnFK,IAAUC,OAAO,IAAIC,KAAK,CAAC7hB,EAASQ,OAAQghB,GAAUva,EAAA7G,KAAA,iBAAA6G,EAAA9G,KAAA,GAAA8G,EAAAvG,GAAAuG,EAAA,YAEtDtG,QAAQ2G,IAAI,qBAAqB,QAEL,OAFKL,EAAA9G,KAAA,GAEjCd,KAAKwa,gBAAiB,EAAM5S,EAAAlG,OAAA,6BAAAkG,EAAAjG,UAAA+F,EAAA,yBAGvC,SAnCa+S,EAAQlT,GAAA,OAAAua,EAAAlgB,MAAC,KAADC,WAAA,OAAR4Y,EAFb,IAuCD,CAAA1a,IAAA,eAAApB,MAAA,eAAA8jB,EAAAliB,eAAAC,mBAAAC,MAGQ,SAAA2H,IAAA,IAAAsa,EAAAC,EAAAhe,EAAA,OAAAnE,mBAAAI,MAAA,SAAAyH,GAAA,eAAAA,EAAAvH,KAAAuH,EAAAtH,MAAA,OAAAsH,EAAAvH,KAAA,EAEAd,KAAKN,SAAU,EACfM,KAAK4a,aAAc,EAAM8H,EAAAxE,EACRle,KAAKkc,kBAAgB7T,EAAAvH,KAAA,EAAA4hB,EAAAtE,IAAA,WAAAuE,EAAAD,EAAArE,KAAAC,KAAE,CAAFjW,EAAAtH,KAAA,SAAzB,OAAF4D,EAAEge,EAAAhkB,MAAA0J,EAAAtH,KAAA,GACHC,iBAAa6G,KAAK,mCAAD5G,OAAoC0D,GAAM,MAAK,QAAA0D,EAAAtH,KAAA,gBAAAsH,EAAAtH,KAAA,iBAAAsH,EAAAvH,KAAA,GAAAuH,EAAAhH,GAAAgH,EAAA,YAAAqa,EAAAhE,EAAArW,EAAAhH,IAAA,eAAAgH,EAAAvH,KAAA,GAAA4hB,EAAA/D,IAAAtW,EAAA3G,OAAA,YAAA2G,EAAAtH,KAAA,iBAAAsH,EAAAvH,KAAA,GAAAuH,EAAA6R,GAAA7R,EAAA,YAG1E/G,QAAQ2G,IAAI,yBAAyB,QAGX,OAHWI,EAAAvH,KAAA,GAErCd,KAAK+b,uBAAwB,EAC7B/b,KAAKua,qBAAqBlS,EAAA3G,OAAA,6BAAA2G,EAAA1G,UAAAyG,EAAA,sCAEjC,SAbawa,IAAY,OAAAH,EAAA7gB,MAAC,KAADC,WAAA,OAAZ+gB,EAHd,MApcgD,CAAS5f,QAyYzDC,eAAA,CADCC,eAAM,a,iCAOPD,eAAA,CADCC,eAAM,0B,yCA9YU+Y,EAA+BhZ,eAAA,CALnDE,eAAU,CACPkL,WAAY,CACR,cAAewU,WAGF5G,WCjBgY,I,wBCQjZ7Y,EAAY,eACd,EACA,EACAnE,GACA,EACA,KACA,KACA,MAIa,aAAAmE,E,6CCnBf,W,2DCAA,SAAS0f,EAAgB5Z,GACvB,GAAIO,MAAMoP,QAAQ3P,GAAI,OAAOA,ECD/B,SAAS6Z,EAAsB7Z,EAAG8Z,GAChC,IAAI5Z,EAAI,MAAQF,EAAI,KAAO,oBAAsB8P,QAAU9P,EAAE8P,OAAOC,WAAa/P,EAAE,cACnF,GAAI,MAAQE,EAAG,CACb,IAAIsV,EACFL,EACAlP,EACA8T,EACA9Z,EAAI,GACJwV,GAAI,EACJzB,GAAI,EACN,IACE,GAAI/N,GAAK/F,EAAIA,EAAEE,KAAKJ,IAAInI,KAAM,IAAMiiB,EAAG,CACrC,GAAIhU,OAAO5F,KAAOA,EAAG,OACrBuV,GAAI,OACC,OAASA,GAAKD,EAAIvP,EAAE7F,KAAKF,IAAIkV,QAAUnV,EAAE9I,KAAKqe,EAAE/f,OAAQwK,EAAExD,SAAWqd,GAAIrE,GAAI,IACpF,MAAOzV,GACPgU,GAAI,EAAImB,EAAInV,EACZ,QACA,IACE,IAAKyV,GAAK,MAAQvV,EAAE,YAAc6Z,EAAI7Z,EAAE,YAAa4F,OAAOiU,KAAOA,GAAI,OACvE,QACA,GAAI/F,EAAG,MAAMmB,GAGjB,OAAOlV,G,kDCxBX,SAAS+Z,IACP,MAAM,IAAI/J,UAAU,6ICGtB,SAASgK,EAAeja,EAAGwV,GACzB,OAAO,EAAexV,IAAM,EAAqBA,EAAGwV,IAAM,OAAArF,EAAA,MAA2BnQ,EAAGwV,IAAM,M,mOCL0SlgB,a,IAAsCM,EAAM,K,EAAC,EAAM,MAAE,GAAQ,EAAG,kB,OAAC,EAAK,OAAG,C,YAAW,O,MAAC,CAA+C,MAAQ,GAAsB,oB,CAAK,UAAQ,SAAgB,C,MAAI,CAAe,oBAAKuE,EAAG,KAAS,MAAD,EAAC,uBAACvE,YAAM,qB,CAAC,KAAO,WAAC,iDAAE,sCAAE,MAAM4E,CAA2M5E,IAAM,GAAC,MAAO,GAAgC,OAAIP,MAAOA,GAA2EO,SAAM,8BAAC,MAAO,uBAAqC,GAAEP,CAA+DC,MAAW,SAAO,GAACM,EAAM,gBAA2B,WAAE,MAAK,CAAUN,MAAW,K,CAAe,+CAAS,2IAAE,OAAI6E,KAAG,OAAc,EAAC,sB,CAAQ,KAAO,EAAC,6BAAmB,qC,MAAC,CAA+C,uC,CAAK,KAAM,EAAC,KAAPkW,MAAa,kC,YAC9wC,O,MACN,CACP,OAAE,oB,CAAQ5a,SAAU,C,YAAmC,O,MAAmB,CAA0C,OAAC,KAAqC,WAAG,MAAK0E,CAAavE,MAAM,oBAAC,SAAS,+BAAI,GAAI,CAAaA,KAAM,WAAC,QAAW,kBAAe,iCAAC,8BAAsEgF,MAAG,CAAC,QAAS,wB,SAAwBvF,SAAmB,0CAAGG,WAAM,8BAAgC6E,KAAQ,OAAC,C,MAAmB,CAAuB,OAAC,KAAgC,WAAG,MAAMhF,CAAiDO,MAAM,iBAAC,MAAQ,cAAG,wCAAwIN,IAA0BM,OAAM,YAAC,OAAS,EAACP,kB,MAA+E,CAAkB,2BAAC+c,SAAW,SAAS,GAACvb,EAAI,mBAAO,G,WAAiC,yB,KAA6B,oBAAQ,mB,MAAM,C,OAAQ2D,K,MAAmH,qBAAM,4BAA4C,wCAAY,qB,YAAE,c,MAAG,C,QAAgL,iB,MAAC,yB,WAAiC,c,eAAkD,I,YAAsB,KAAW,E,IAAK,Q,GAAG,SAAU,G,MAAkB,GAAE,c,YAAC0f,CAAkE,eAAmItkB,GAAK,GAAC,8F,MAAC,CAAgB,gE,CAAK,KAAO,iCAAiB,2G,MAAI,C,UAA6BukB,EAAKC,KAAU,OAAI,qCAAE,cAAC5kB,MAAM,OAACC,UAAO6iB,K,EAAiD,MAAMA,KAAQ,KAAK,C,MAAwB,CAAC3iB,eAAW,wCAAyB,GAAG,GAAG,6BAAM,uEAACL,OAA8BD,KAAOA,UAA2G,GAAEA,CAAqG,kBAAS,cAAgB,EAAO,EAAW,kBAA2B,MAAQ,CAAC,QAAe,WAAE,qBAAO,EAAQ,KAAC,yBAAQ,WAAS,0BAAS,GAAO,EAAC,MAAI,6BAAC,GAAQ,QAARkF,EAAiBwJ,kBAAjBxJ,CAAwB,yCAAC,YAAe,iBAAE,oFAAKlF,MAAO,gBAAqEO,EAAK,OAAC,C,YAAU,OAAE,OAAIuE,IAAG,GAAS7E,eAAY,K,CAAuB,SAAU,C,MAAwD,CAAsB,Y,CAAK,SAAQ,C,GAAiB,CAA0B,kBAAC,mB,CAAiQ,0DAAe,a,MAAC,CAAc,Y,CAAQG,SAAOJ,C,YAAwB,gB,MAAmB,CAAc,UAAC,4CAACM,QAAU,EAAC,SAAa,GAAI,CAAqIC,MAAM,YAAC,OAAQP,EAAIglB,mB,CAA+D,6DAAgB,oK,MAAC,CAAiC,WAAa,GAAY,a,MAAK,C,MAA0CC,YAAoB,SAAC,YAAC,eAA+D,yBAAGlI,UAAW,CAAC/c,EAAG,OAAK,mF,MAAK,CAAOgd,MAAG,EAAHA,kB,KAAkB,oBAAqG,gBAAG,cAAC,GAAC7c,eAAM,gBAACC,aAAW8kB,a,GAA0CllB,CAAuB,qBAAC,YAACM,gBAAW,GAAqBwE,sBAAkB,YAACvE,EAAM,kBAAgC,YAAC,OAACJ,IAAM,OAACC,YAAiB,GAAC4E,MAAQ,CAAC,SAATA,MAAmBD,EAAK,oE,MAAwBzE,CAAkB,wBAAIwE,SAAG,SAAe,GAACvE,EAAM,mBAAiB,WAAQ,qBAA0D,UAACJ,MAAM,CAACC,MAAOJ,QAAWgF,KAAQ,U,MAAuC,CAAC1E,QAAU,MAAQ,qBAAM,EAAEwE,MAAG,SAAiD,WAAQ,WAAsC,UAAC,OAAI9E,KAAO,SAAoEC,MAAW,QAAmB,KAAC,4C,MAA0B,CAAuB,cAAC,qBAAID,EAAM,MAAC,SAE1zIU,uB,6iBCHSykB,EAAwB5jB,gBAArC,SAAA4jB,IAAAnkB,eAAA,KAAAmkB,GACW,KAAAC,WAAqB,GACrB,KAAA/H,YAAsB,GACtB,KAAAgI,qBAA+B,EAC/B,KAAAC,MAAgB,K,8xCCQ3B,IAAqB3e,EAAiB,SAAA7F,GAAtC,SAAA6F,IAAA,IAAA5F,EAmEM,OAnENC,eAAA,KAAA2F,G,sBAGY5F,EAAAif,MAAiC,KACjCjf,EAAAI,SAAmB,EACnBJ,EAAAwkB,mBAA6B,EAC7BxkB,EAAA8V,YAAsB,EACtB9V,EAAAykB,WAAqB,EACrBzkB,EAAAikB,kBAAyB,GACzBjkB,EAAAkkB,cAAwB,GACxBlkB,EAAAmkB,gBAAuB,KACvBnkB,EAAAukB,MAAgB,EAChBvkB,EAAA0kB,MAAgB,GAChB1kB,EAAA2kB,mBAA6B,GAC7B3kB,EAAA4kB,oBAA8B,GAC9B5kB,EAAAyd,eAEkCtT,MACtC,CACIiT,KAAM,MACN/d,MAAO,WACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,aACN/d,MAAO,aACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,GACN/d,MAAO,GACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,cACN/d,MAAO,cACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,QACN/d,MAAO,UACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,QACN/d,MAAO,OACPge,MAAO,QACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,QACN/d,MAAO,GACPge,MAAO,QACPC,UAAU,EACVC,MAAO,QAEbvd,EA6LL,OAAAO,eAAAqF,EAAA7F,GAAAS,eAAAoF,EAAA,EAAAnF,IAAA,UAAApB,MA3LW,WAAO,IAAAuH,EAAA,KACXlG,KAAKmkB,YACA3N,MAAK,WACEtQ,EAAKqY,QACLrY,EAAK+d,mBAAqBG,OAAWle,EAAKqY,MAAM8F,kBAG/D,CAAAtkB,IAAA,iBAAAG,IAED,WAEI,OAAO8O,OAAOsV,KAAKF,QAAY/d,QAAO,SAACtG,GAAO,OAAKwY,MAAMgM,OAAOxkB,KAAgB,WAAPA,OAC5E,CAAAA,IAAA,mBAAAG,IAED,WACI,QAAKF,KAAKue,OAEH,CAAC,GAAI,GAAI,KAAKhY,SAASvG,KAAKue,MAAMiG,sBAC5C,CAAAzkB,IAAA,YAAApB,MAAA,eAAA8lB,EAAAlkB,eAAAC,mBAAAC,MAEO,SAAAC,IAAA,IAAAC,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAEoB,OAFpBF,EAAAC,KAAA,EAEAd,KAAKN,SAAU,EAAKmB,EAAAE,KAAA,EACGC,iBAAad,IAAI,8DAADe,OAA+DjB,KAAKga,UAAU,OAA/GrZ,EAAQE,EAAAK,KACdlB,KAAKue,MAAQ5d,EAASQ,KAAKN,EAAAE,KAAA,gBAAAF,EAAAC,KAAA,EAAAD,EAAAQ,GAAAR,EAAA,YAE3BS,QAAQC,MAAM,sBAAsB,QAEf,OAFeV,EAAAC,KAAA,GAEpCd,KAAKN,SAAU,EAAMmB,EAAAa,OAAA,6BAAAb,EAAAc,UAAAjB,EAAA,wBAE5B,SAVayjB,IAAS,OAAAM,EAAA7iB,MAAC,KAADC,WAAA,OAATsiB,EAFb,IAEsB,CAAApkB,IAAA,aAAApB,MAAA,eAAA+lB,EAAAnkB,eAAAC,mBAAAC,MAYf,SAAAiH,IAAA,IAAAid,EAAAje,EAAA,YAAAlG,mBAAAI,MAAA,SAAAgH,GAAA,eAAAA,EAAA9G,KAAA8G,EAAA7G,MAAA,OAEAf,KAAK4kB,uBAAuBje,MAAK,SAACsa,GAAK,OAAKA,EAAE4D,QAAUne,EAAK+c,oBACzDzjB,KAAK4kB,uBAAuBje,MAAK,SAACsa,GAAK,OAAKA,EAAE0C,YAAcjd,EAAK+c,mBACrEzjB,KAAKwB,OAAOC,OAAO,uBAAwB,qDAE3CzB,KAAKoV,YAAa,EACduP,EAAQ,IAAIjB,EAEhBiB,EAAMrB,SAAU,EAEhBqB,EAAME,OAAS7kB,KAAKyjB,gBACpBkB,EAAMhB,WAAa3jB,KAAKyjB,gBACxBkB,EAAM/I,YAAc,uBACpB+I,EAAMd,MAAQ7jB,KAAK6jB,MACD,IAAd7jB,KAAKgkB,QACLW,EAAMf,qBAAuBkB,WAAW9kB,KAAKgkB,QAGjDhkB,KAAKue,MAAMwG,UAAU1kB,KAAKskB,IAE9B3kB,KAAKwjB,cAAgB,GACrBxjB,KAAK6jB,MAAQ,EACb7jB,KAAKyjB,gBAAkB,GACvBzjB,KAAK+jB,WAAY,EAAM,wBAAAnc,EAAAjG,UAAA+F,EAAA,UAC1B,SAzBasd,IAAU,OAAAN,EAAA9iB,MAAC,KAADC,WAAA,OAAVmjB,EAZS,IAYC,CAAAjlB,IAAA,cAAApB,MAAA,eAAAsmB,EAAA1kB,eAAAC,mBAAAC,MA4BhB,SAAA2H,IAAA,IAAAzH,EAAAsd,EAAAF,EAAA9E,EAAAiM,EAAAnG,EAAAD,EAAAI,EAAA,OAAA1e,mBAAAI,MAAA,SAAAyH,GAAA,eAAAA,EAAAvH,KAAAuH,EAAAtH,MAAA,OAEoB,OAFpBsH,EAAAvH,KAAA,EAEAd,KAAKN,SAAU,EAAK2I,EAAAtH,KAAA,EACGC,iBAAad,IAAI,uBAAsB,cAAAe,OAC5CjB,KAAKwjB,cAAa,KADI,gFAOV,OAPxB7iB,EAAQ0H,EAAAnH,KAOkB+c,EAAAC,EACTvd,EAASQ,MAAI,IAApC,IAAA8c,EAAAG,MAAAL,EAAAE,EAAAI,KAAAC,MAAWrF,EAAQ8E,EAAApf,MACfsa,EAASyD,KAAOzD,EAASpG,UAAY,MAAQoG,EAASkM,oBACzD,MAAA1G,GAAAR,EAAAS,EAAAD,GAAA,QAAAR,EAAAU,IAAA,OAAAtW,EAAAtH,KAAA,EAEoCC,iBAAad,IAAI,8BAA6B,cAAAe,OACjEjB,KAAKwjB,gBAAgB,OADjC0B,EAAsB7c,EAAAnH,KAAA6d,EAAAb,EAELgH,EAAuB/jB,MAAI,IAAlD,IAAA4d,EAAAX,MAAAU,EAAAC,EAAAV,KAAAC,MAAWrF,EAAQ6F,EAAAngB,MACfsa,EAASyD,KAAOzD,EAAStU,GAAK,MAAQsU,EAAS/W,KAC/C+W,EAASpG,UAAYoG,EAAStU,GAC9BsU,EAASkM,oBAAsBlM,EAAS/W,KAC3C,MAAAuc,GAAAM,EAAAL,EAAAD,GAAA,QAAAM,EAAAJ,IACD3e,KAAKujB,kBAAoB5iB,EAASQ,KAAKF,OAAOikB,EAAuB/jB,MAAMkH,EAAAtH,KAAA,iBAAAsH,EAAAvH,KAAA,GAAAuH,EAAAhH,GAAAgH,EAAA,YAE3E/G,QAAQ2G,IAAI,wBAAwB,QAEf,OAFeI,EAAAvH,KAAA,GAEpCd,KAAKN,SAAU,EAAM2I,EAAA3G,OAAA,6BAAA2G,EAAA1G,UAAAyG,EAAA,yBAE5B,SA5Bagd,IAAW,OAAAH,EAAArjB,MAAC,KAADC,WAAA,OAAXujB,EA5BU,IA4BC,CAAArlB,IAAA,gBAAApB,MAAA,eAAA0mB,EAAA9kB,eAAAC,mBAAAC,MA8BjB,SAAAgI,IAAA,IAAA6c,EAAAlG,EAAAH,EAAAuC,EAAA3O,EAAA0S,EAAA,OAAA/kB,mBAAAI,MAAA,SAAA8H,GAAA,eAAAA,EAAA5H,KAAA4H,EAAA3H,MAAA,OAAA2H,EAAA5H,KAAA,EAEAd,KAAKN,SAAU,EACX4lB,EAAmBtlB,KAAK4kB,uBAAuBve,QAAO,SAAC4a,GAAM,OAAKA,EAAEqC,WAAQlE,EAAAlB,EACzDoH,GAAgB5c,EAAA5H,KAAA,EAAAse,EAAAhB,IAAA,WAAAa,EAAAG,EAAAf,KAAAC,KAAE,CAAF5V,EAAA3H,KAAA,SAQ8B,OAR1DygB,EAAQvC,EAAAtgB,MACXkU,EAAY2O,EAASmC,gBACRhO,GAAb9C,IACAA,EAAY2O,EAASqD,QAErBU,EAAc,IAAI7B,EACtB6B,EAAY5B,WAAa9Q,EACzB0S,EAAY1B,MAAQrC,EAASqC,MAC7B0B,EAAY3B,qBAAuBpC,EAASoC,qBAAqBlb,EAAA3H,KAAA,GAE1CC,iBAAa6G,KAAK,gDAAD5G,OAAiDjB,KAAKga,SAAWuL,GAAY,QAAvG7c,EAAAxH,KACdsgB,EAAS8B,SAAU,EAAM,QAAA5a,EAAA3H,KAAA,gBAAA2H,EAAA3H,KAAA,iBAAA2H,EAAA5H,KAAA,GAAA4H,EAAArH,GAAAqH,EAAA,YAAA0W,EAAAV,EAAAhW,EAAArH,IAAA,eAAAqH,EAAA5H,KAAA,GAAAse,EAAAT,IAAAjW,EAAAhH,OAAA,mBAAAgH,EAAA3H,KAAA,GAEvBf,KAAKwlB,cAAa,QACpBxlB,KAAKue,OAELvd,iBAAa6G,KAAK,0DAAD5G,OAA2DjB,KAAKue,MAAMkH,aAE3FzlB,KAAK0lB,OAAOhd,EAAA3H,KAAA,iBAAA2H,EAAA5H,KAAA,GAAA4H,EAAAwR,GAAAxR,EAAA,YAEZpH,QAAQ2G,IAAI,sBAAsB,QAEb,OAFaS,EAAA5H,KAAA,GAElCd,KAAKN,SAAU,EAAMgJ,EAAAhH,OAAA,6BAAAgH,EAAA/G,UAAA8G,EAAA,sCAE5B,SA5Bakd,IAAa,OAAAN,EAAAzjB,MAAC,KAADC,WAAA,OAAb8jB,EA9BW,IA8BE,CAAA5lB,IAAA,gBAAApB,MAAA,eAAAinB,EAAArlB,eAAAC,mBAAAC,MA8BnB,SAAAmI,IAAA,OAAApI,mBAAAI,MAAA,SAAAiI,GAAA,eAAAA,EAAA/H,KAAA+H,EAAA9H,MAAA,UACCf,KAAKue,MAAO,CAAF1V,EAAA9H,KAAA,eAAA8H,EAAAuO,OAAA,oBAEXpX,KAAKue,MAAM8F,YAAcD,OAAWpkB,KAAKikB,oBAA8C,CAAApb,EAAA9H,KAAA,eAAA8H,EAAAuO,OAAA,iBAKzB,OAHlEpX,KAAKue,MAAM8F,WAAaD,OAAWpkB,KAAKikB,oBAA+Cpb,EAAA/H,KAAA,EAEnFd,KAAKN,SAAU,EACfM,KAAKkkB,oBAAsB,mCAAmCrb,EAAA9H,KAAA,GACxDC,iBAAa6G,KAAK,uCAAD5G,OAAwCjB,KAAKga,QAAO,gBAAA/Y,OAAejB,KAAKue,MAAM8F,aAAa,QACtD,OAA5DrkB,KAAKkkB,oBAAsB,iCAAiCrb,EAAA9H,KAAA,GACtDf,KAAKwlB,cAAa,QACxBxlB,KAAKwB,OAAOC,OAAO,kBAAmB,qDAAqDoH,EAAA9H,KAAA,iBAAA8H,EAAA/H,KAAA,GAAA+H,EAAAxH,GAAAwH,EAAA,YAE3FvH,QAAQ2G,IAAI,kCACZjI,KAAKwB,OAAOC,OAAO,kBAAmB,8CAA8C,QAGtD,OAHsDoH,EAAA/H,KAAA,GAEpFd,KAAKN,SAAU,EACfM,KAAKkkB,oBAAsB,GAAGrb,EAAAnH,OAAA,6BAAAmH,EAAAlH,UAAAiH,EAAA,yBAErC,SApBaid,IAAa,OAAAD,EAAAhkB,MAAC,KAADC,WAAA,OAAbgkB,EA9Ba,IA8BA,CAAA9lB,IAAA,cAAApB,MAAA,eAAAmnB,EAAAvlB,eAAAC,mBAAAC,MAsBnB,SAAAsI,IAAA,IAAApI,EAAA,OAAAH,mBAAAI,MAAA,SAAAoI,GAAA,eAAAA,EAAAlI,KAAAkI,EAAAjI,MAAA,UAAAiI,EAAAlI,KAAA,EAEiB,MAAdd,KAAKue,MAAa,CAAAvV,EAAAjI,KAAA,eAAAiI,EAAAoO,OAAA,iBAGD,OAApBpX,KAAKN,SAAU,EAAKsJ,EAAAjI,KAAA,EACGC,iBAAa6G,KAAK,qCAAD5G,OAAsCjB,KAAKue,MAAMvE,UAAU,OAA7FrZ,EAAQqI,EAAA9H,KACdlB,KAAKue,MAAQ5d,EAASQ,KAAK6H,EAAAjI,KAAA,iBAAAiI,EAAAlI,KAAA,GAAAkI,EAAA3H,GAAA2H,EAAA,YAE3B1H,QAAQ2G,IAAI,gCAAgC,QAEvB,OAFuBe,EAAAlI,KAAA,GAE5Cd,KAAKN,SAAU,EAAMsJ,EAAAtH,OAAA,6BAAAsH,EAAArH,UAAAoH,EAAA,yBAE5B,SAbayc,IAAW,OAAAM,EAAAlkB,MAAC,KAADC,WAAA,OAAX2jB,EAtBa,IAsBF,CAAAzlB,IAAA,0BAAApB,MAAA,eAAAonB,EAAAxlB,eAAAC,mBAAAC,MAejB,SAAAgX,IAAA,OAAAjX,mBAAAI,MAAA,SAAA+W,GAAA,eAAAA,EAAA7W,KAAA6W,EAAA5W,MAAA,UAAA4W,EAAA7W,KAAA,EAEiB,MAAdd,KAAKue,QAAiBve,KAAKN,UAAWM,KAAK8jB,kBAAiB,CAAAnM,EAAA5W,KAAA,eAAA4W,EAAAP,OAAA,iBAGjC,OAA9BpX,KAAK8jB,mBAAoB,EAAKnM,EAAA5W,KAAA,EACxBC,iBAAa6G,KAAK,iDAAD5G,OAAkDjB,KAAKue,MAAMvE,QAAO,uBAAA/Y,OAAsBjB,KAAKue,MAAMyH,oBAAoB,OAChJhmB,KAAKwB,OAAOC,OAAO,kBAAmB,4CAA4CkW,EAAA5W,KAAA,gBAAA4W,EAAA7W,KAAA,EAAA6W,EAAAtW,GAAAsW,EAAA,YAElFrW,QAAQ2G,IAAI,uCACZjI,KAAKwB,OAAOC,OAAO,uBAAwB,mDAAmD,QAE/D,OAF+DkW,EAAA7W,KAAA,GAE9Fd,KAAK8jB,mBAAoB,EAAMnM,EAAAjW,OAAA,6BAAAiW,EAAAhW,UAAA8V,EAAA,wBAEtC,SAdawO,IAAuB,OAAAF,EAAAnkB,MAAC,KAADC,WAAA,OAAvBokB,EAfW,IAeY,CAAAlmB,IAAA,OAAApB,MAgB7B,WACJqB,KAAK+W,QAAQC,IAAI,KAErB,CAAAjX,IAAA,uBAAApB,MAGQ,WACJ,OAAKqB,KAAKue,MACFve,KAAKue,MAAM2H,MAAcjlB,OAAOjB,KAAKue,MAAMwG,WAD3B,KAE3B,CAAAhlB,IAAA,iBAAApB,MAEO,WACJ,OAAOgB,KAAKwmB,MAAM9c,eA9PY,CAASrG,QAE3CC,eAAA,CADCmL,kB,8BAgIDnL,eAAA,CADCC,eAAM,kB,gCAhIUgC,EAAiBjC,eAAA,CALrCE,eAAU,CACPkL,WAAY,CACR+X,6BAGalhB,WCdgY,I,YCOjZ9B,EAAY,eACd,EACA,EACAnE,GACA,EACA,KACA,KACA,MAIa,aAAAmE,E,iLClByJ,aAAC,IAAGC,EAAG,KAAM7E,UAAY,GAAgB,oB,OAA+C,EAAC,Q,YAAO,OAAE,OAAI6E,MAAG,GAAsBwG,eAAY,KAA4B,SAAC/K,YAAM,Q,CAAC,KAAO,2BAAU,U,MAAK,CAA2B,SAA2C+K,UAAW,CAAC,U,YAAS,CAAmB,0B,MAAQ,CAAkB,MAAK,UAA4B,gCAAkDA,0BAAY,U,YAAS,CAAmB,0B,MAAQ,CAAkB,MAAK,UAA8B,kCAA0CA,iCAAY,U,YAAS,CAAmB,0B,MAAQ,CAAkB,MAAK,UAAgC,oCAA0CA,yBAAY,U,YAAS,CAAmB,0B,MAAQ,CAAkB,MAAK,UAAwB,sCAAoDA,yBAAY,U,YAAS,CAAmB,0B,MAAQ,CAAkB,MAAK,UAA0B,8BAAuErL,mCAAY,UAAO,YAAS,CAAyCM,MAAM,oBAAS,OAAIuE,MAAG,UAAsBvE,GAAM,6BAAuB,2DAACgF,YAAG,Q,CAAC,KAAO,0BAAiB,U,MAAC,CAA4B,SAAI,CAACvF,EAAG,OAAI,WAA0EO,MAAM,CAAC,QAAUP,EAAImB,SAA4H,GAAC,CAAG,MAAC,YAAC,OAAQ,uBAA6C,8EAAE,MAAMgE,CAAgF5E,QAAM,UAAC,MAAS,8GAAkF,GAAC,CAAG,MAAC,YAAC,OAAQ,sBAA2C,iFAAE,MAAM4E,CAAmGlF,QAAY,UAASD,MAAO,+D,GAAkD,CAAQ,kBAAKA,OAAI6G,EAASO,kBAAyG,GAAEpH,GAAImF,gEAAgD,SAA0B,QAAC,QAAE,YAAS,QAA+GlF,kCAAY,UAAO,MAAMkF,CAAoC5E,IAAM,K,CAAU,WAAO,yDAAE,eAAIuE,IAAG,GAAUvE,GAAM,uEAAC,KAAM,EAAG,oG,YAAS,Q,CAAC,KAAM,4BAAE,OAAIuE,IAAG,GAAcvE,KAAM,K,CAAiC,SAAQ,CAAW,MAAC,CAAG,KAAC,GAAC,O,IAA0B,KAAkC,WAACJ,MAAM,CAACC,MAAOJ,EAAI8nB,oBAA4B9iB,MAAQ,a,GAAoD,CAAC1E,OAAU,SAAC,GAA4B,iC,MAA4B,CAAU,MAAM,EAAE,2BAAC,SAAM,YAAE,gCAAqBC,WAAM,iCAA0E,KAAO,OAAC,C,MAAmB,CAAyC,QAAa,OAAsC,S,CAAQH,SAAW2nB,C,MAAyB/iB,C,KAA6B+iB,kEAA2B,MAAC,mBAACznB,YAAW,2BAAyB,WAAI,mBAAgB,kB,MAAQ,CAAU,MAAM,EAAE,wBAAC,SAAM,YAAE,6BAAmBC,WAAM,8BAAY,aAAE,MAAK,CAAUA,KAAM,GAAC,IAAM,GAAG,SAAqBynB,UAAY,C,MAAK,CAAQ5L,OAAQ,K,CAAwE9b,SAAU,CAAqD,MAAE,CAACC,KAAM,K,CAA6H,SAAQ,CAAQ,WAAC,EAACJ,KAAM,OAACC,QAAOJ,SAA4BgF,MAAwB,sBAAxBA,EAAS,2B,WAAoBijB,uD,MAA4B3nB,CAAmC,0HAAI,MAAO,U,MAAiB,CAAS,+BAAIwE,SAAU,SAAC,GAAC7E,yBAA2B,GAAQ,WAAWD,6BAAe,GAAC,U,MAAC,C,KAAyB,KAAkC,WAAE,YAAS,gBAAmFC,OAA4BM,SAAM,WAAuB,GAAC,CAAG,MAAC,YAAC,OAAQ,4BAAqD,uFAAE,YAAS,gBAA8GN,OAAqBD,SAAO,W,GAAsC,CAAQ,kBAAM,OAAC,EAAS,4B,GAA0C,yEAAgD,iC,YAAA,QAAC,gCAAE,MAAMmF,CAA0E,IAAC,K,GAA0B,OAAOnF,GAAIkoB,Q,GAAqC,CAAC,kBAAIloB,OAAO,2C,GAAsG,4DAA8C,U,GAAA,CAAC,kBAAIA,OAAO,2CAA8WO,GAAK,GAAC,uE,GAAC,CAAQ,kBAAM,OAAC,EAAS,qBAAmB,kBAIzsK,GAASiO,yEAAuB,8L,wlBCEhC,IAAqB2Z,EAAQ,SAAArnB,GAA7B,SAAAqnB,IAAA,IAAApnB,EAYM,OAZNC,eAAA,KAAAmnB,G,sBACYpnB,EAAAI,SAAmB,EACnBJ,EAAA8F,SAAqB,GACrB9F,EAAA2I,IAAc,GACd3I,EAAAgnB,wBAAkC,GAClChnB,EAAAqnB,oBAA8B,GAC9BrnB,EAAA+mB,2BAAqC,oBACrC/mB,EAAAknB,wBAAkC,EAElClnB,EAAAsnB,oBAAgC,CACpC,oBACA,oBACFtnB,EA2FL,OAAAO,eAAA6mB,EAAArnB,GAAAS,eAAA4mB,EAAA,EAAA3mB,IAAA,UAAApB,MAzFW,WACJqB,KAAK6mB,wBACR,CAAA9mB,IAAA,iBAAAG,IAED,WACI,OAAOF,KAAKsmB,wBAAwB3gB,OAAS,EAAI,SAAW,UAC/D,CAAA5F,IAAA,sBAAApB,MAAA,eAAAmoB,EAAAvmB,eAAAC,mBAAAC,MAEO,SAAAC,IAAA,IAAAC,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAEoB,OAFpBF,EAAAC,KAAA,EAEAd,KAAKN,SAAU,EAAKmB,EAAAE,KAAA,EACGC,iBAAad,IAAI,4CAADe,OAA6CjB,KAAKqmB,6BAA6B,OAAhH1lB,EAAQE,EAAAK,KACdlB,KAAKsmB,wBAA0B3lB,EAASQ,KAAKN,EAAAE,KAAA,gBAAAF,EAAAC,KAAA,EAAAD,EAAAQ,GAAAR,EAAA,YAE7CS,QAAQ2G,IAAI,2DAA2D,QAElD,OAFkDpH,EAAAC,KAAA,GAEvEd,KAAKN,SAAU,EAAMmB,EAAAa,OAAA,6BAAAb,EAAAc,UAAAjB,EAAA,wBAE5B,SAVammB,IAAmB,OAAAC,EAAAllB,MAAC,KAADC,WAAA,OAAnBglB,EAFb,IAEgC,CAAA9mB,IAAA,uBAAApB,MAAA,eAAAooB,EAAAxmB,eAAAC,mBAAAC,MAYzB,SAAAiH,IAAA,IAAAsf,EAAA,OAAAxmB,mBAAAI,MAAA,SAAAgH,GAAA,eAAAA,EAAA9G,KAAA8G,EAAA7G,MAAA,OAOC,OAPD6G,EAAA9G,KAAA,EAEAd,KAAKN,SAAU,EACTsnB,EAAgB,CAClBrU,UAAW3S,KAAKqmB,2BAChBziB,QAAS5D,KAAKsmB,wBACdW,cAAejnB,KAAKwmB,wBACvB5e,EAAA7G,KAAA,EACKC,iBAAa6G,KAAK,4BAA6Bmf,GAAc,OACnEhnB,KAAKwB,OAAOC,OAAO,kBAAmB,oCACtCzB,KAAKwmB,wBAAyB,EAAM5e,EAAA7G,KAAA,gBAAA6G,EAAA9G,KAAA,EAAA8G,EAAAvG,GAAAuG,EAAA,YAE7C5H,KAAKwB,OAAOC,OAAO,uBAAwB,0DAClCzB,KAAK6mB,sBAAsB,QAEN,OAFMjf,EAAA9G,KAAA,GAE3Bd,KAAKN,SAAU,EAAMkI,EAAAlG,OAAA,6BAAAkG,EAAAjG,UAAA+F,EAAA,wBAE5B,SAjBawf,IAAoB,OAAAH,EAAAnlB,MAAC,KAADC,WAAA,OAApBqlB,EAZmB,IAYC,CAAAnnB,IAAA,yBAAApB,MAAA,eAAAwoB,EAAA5mB,eAAAC,mBAAAC,MAmB1B,SAAA2H,IAAA,OAAA5H,mBAAAI,MAAA,SAAAyH,GAAA,eAAAA,EAAAvH,KAAAuH,EAAAtH,MAAA,OAC8B,OAAlCf,KAAKsmB,wBAA0B,GAAGje,EAAAtH,KAAA,EAC5Bf,KAAKknB,uBAAsB,wBAAA7e,EAAA1G,UAAAyG,EAAA,UACpC,SAHagf,IAAsB,OAAAD,EAAAvlB,MAAC,KAADC,WAAA,OAAtBulB,EAnBoB,IAmBE,CAAArnB,IAAA,uBAAApB,MAAA,eAAA0oB,EAAA9mB,eAAAC,mBAAAC,MAK5B,SAAAgI,EAA2B6e,GAAe,OAAA9mB,mBAAAI,MAAA,SAAA8H,GAAA,eAAAA,EAAA5H,KAAA4H,EAAA3H,MAAA,OAEtB,OAFsB2H,EAAA5H,KAAA,EAE1Cd,KAAKN,SAAU,EAAKgJ,EAAA3H,KAAA,EACdC,iBAAa6G,KAAK,UAAD5G,OAAWqmB,IAAU,OAAA5e,EAAA3H,KAAA,eAAA2H,EAAA5H,KAAA,EAAA4H,EAAArH,GAAAqH,EAAA,YAE5CpH,QAAQC,MAAM,8CAA8C,OAEvC,OAFuCmH,EAAA5H,KAAA,EAE5Dd,KAAKN,SAAU,EAAMgJ,EAAAhH,OAAA,4BAAAgH,EAAA/G,UAAA8G,EAAA,uBAE5B,SATage,EAAoBlf,GAAA,OAAA8f,EAAAzlB,MAAC,KAADC,WAAA,OAApB4kB,EALsB,IAKF,CAAA1mB,IAAA,kBAAApB,MAAA,eAAA4oB,EAAAhnB,eAAAC,mBAAAC,MAW1B,SAAAmI,IAAA,IAAAjI,EAAA,OAAAH,mBAAAI,MAAA,SAAAiI,GAAA,eAAAA,EAAA/H,KAAA+H,EAAA9H,MAAA,OAEoB,OAFpB8H,EAAA/H,KAAA,EAEAd,KAAKN,SAAU,EAAKmJ,EAAA9H,KAAA,EACGC,iBAAad,IAAI,4BAA2B,OAA7DS,EAAQkI,EAAA3H,KACdlB,KAAKoF,SAAWzE,EAASQ,KAAK0H,EAAA9H,KAAA,gBAAA8H,EAAA/H,KAAA,EAAA+H,EAAAxH,GAAAwH,EAAA,YAE9BvH,QAAQ2G,IAAI,4BAA4B,QAEnB,OAFmBY,EAAA/H,KAAA,GAExCd,KAAKN,SAAU,EAAMmJ,EAAAnH,OAAA,6BAAAmH,EAAAlH,UAAAiH,EAAA,wBAE5B,SAVa4e,IAAe,OAAAD,EAAA3lB,MAAC,KAADC,WAAA,OAAf2lB,EAXoB,IAWL,CAAAznB,IAAA,eAAApB,MAAA,eAAA8oB,EAAAlnB,eAAAC,mBAAAC,MAYrB,SAAAsI,IAAA,OAAAvI,mBAAAI,MAAA,SAAAoI,GAAA,eAAAA,EAAAlI,KAAAkI,EAAAjI,MAAA,OAEoB,OAFpBiI,EAAAlI,KAAA,EAEAd,KAAKN,SAAU,EAAKsJ,EAAAjI,KAAA,EACdC,iBAAa6G,KAAK,8BAA6B,OAAAmB,EAAAjI,KAAA,eAAAiI,EAAAlI,KAAA,EAAAkI,EAAA3H,GAAA2H,EAAA,YAErD1H,QAAQ2G,IAAI,yBAAyB,OAEhB,OAFgBe,EAAAlI,KAAA,EAErCd,KAAKN,SAAU,EAAMsJ,EAAAtH,OAAA,4BAAAsH,EAAArH,UAAAoH,EAAA,uBAE5B,SATa2e,IAAY,OAAAD,EAAA7lB,MAAC,KAADC,WAAA,OAAZ6lB,EAZe,IAYH,CAAA3nB,IAAA,iBAAApB,MAAA,eAAAgpB,EAAApnB,eAAAC,mBAAAC,MAWlB,SAAAgX,IAAA,OAAAjX,mBAAAI,MAAA,SAAA+W,GAAA,eAAAA,EAAA7W,KAAA6W,EAAA5W,MAAA,OAEoB,OAFpB4W,EAAA7W,KAAA,EAEAd,KAAKN,SAAU,EAAKiY,EAAA5W,KAAA,EACdC,iBAAa6G,KAAK,gCAA+B,OAAA8P,EAAA5W,KAAA,eAAA4W,EAAA7W,KAAA,EAAA6W,EAAAtW,GAAAsW,EAAA,YAEvDrW,QAAQ2G,IAAI,2BAA2B,OAElB,OAFkB0P,EAAA7W,KAAA,EAEvCd,KAAKN,SAAU,EAAMiY,EAAAjW,OAAA,4BAAAiW,EAAAhW,UAAA8V,EAAA,uBAE5B,SATamQ,IAAc,OAAAD,EAAA/lB,MAAC,KAADC,WAAA,OAAd+lB,EAXY,MAjFD,CAAS5kB,QAAjB0jB,EAAQzjB,eAAA,CAD5BE,QACoBujB,WCN+X,I,wBCQhZtjB,EAAY,eACd,EACA,EACAnE,GACA,EACA,KACA,KACA,MAIa,aAAAmE,E,2CCnBf,W,+ICAkL,G,oBAAA,WAAC,IAAGC,EAAG,KAA4DvE,EAAK,EAAC,SAAO,EAAE,kB,OAAC,EAAM,MAAG,W,YAAY,OAAG,OAAIuE,eAAY,GAAC7E,MAAW,K,CAAe,OAAO,CAAE,+C,MAAM,CAAI,IAAM,GAAE,QAAI6E,YAAG,K,CAAuB,SAAQ,C,YAAQ,O,MAAwB,CAA0E,QAAC3E,IAAM,GAACC,IAAOJ,K,GAAyCA,OAAIspB,C,MAAe,CAAChpB,cAAuB,wBAAI,KAAO,oEAA6BC,MAAM,CAAC,MAAM,EAAG,WAAC,SAAQ,YAAC,EAAK,WAAC,GAAMuE,WAAG,iBAAqB,KAAO,OAAKykB,C,YAAgB,O,MAAW,CAAW,QAAc,OAACppB,IAAM,K,CAA2B6E,SAAS,C,MAAmB,CAAkB,MAAC,UAAC1E,iBAA0B,SAAI,SAAO,IAA6BC,MAAM,CAAC,MAAM,EAAG,cAAC,SAAQ,YAAC,EAAK,cAAC,GAAMuE,WAAG,oBAAmB,GAAK,EAAC,OAAE,C,YAAY,OAAG,OAAIA,KAAG,GAA4BvE,IAAM,GAAC,S,CAAmD,U,MAA0B,CAAc,OAAG,YAAC,K,GAAwCP,OAAIwpB,GAAQ,cAAS,C,MAAA,CAAC,wBAAI,iBAAiB1kB,EAAkBvE,mBAAM,EAAC,a,GAAoD,CAA0B,sBAAQ,YAAM,kB,GAA+C,EAACkpB,OAAS,GAAG/a,cAAM,C,MAAA,CAAC,yBAAI,iBAAiB5J,EAAY7E,mBAAY,EAAgBqL,MAAW,OAAmC,GAAC,CAAC/K,sBAAM,YAAC,YAAS,OAAQ,KAAO,OAAC,GAAR2E,OAAiBwJ,C,YAAe1O,gB,YAAsB,CAAC,mCAAqGC,OAA0BM,OAAM,I,GAAmB,CAAsB,MAAQP,SAAI0pB,GAAqB,SAAW,sBAAqE,4EAAC3M,YAAY/c,c,MAAa,CAAQgd,eAAY9L,G,QAAepM,EAAG,Q,MAAS,uB,WAAC,a,QACz3D,EAAC6kB,a,cACEzM,c,YACT,O,IAAG,Q,GAAiGjd,SAAW,G,MAAW,S,GAAC,C,MAAgC2pB,WAAkB,sBAAwB1Y,EAAM4T,KAAKhY,YAAW,0BAAoY7M,QAAW,GAAC,yEAAgB,YAAS,OAAiH,IAAG,kBAAiB,OAAZ,EAAQ,kBAAG+c,EAAU9L,aAAM,sBAAgE3Q,GAAK,GAAC,oU,YAAWP,iB,CAAiB,KAAO,uBAAK6pB,OAA4B3Y,GAAK,eAAjC2Y,CAAiD,EAAC,yD,iBAAiF,SAAC,G,MAAC9M,UAAoB,C,YAAK,wB,MAAW,C,QAAyBjY,EAAG,a,MAAS,iD,WAAC,gB,eAAgC9E,G,cAAqC,qB,YAAQ,EAAK,GAACA,CAAG,C,IAAiZ,Q,YAA6B8pB,G,MAAW7pB,QAAY,C,GAAOM,C,MAAY,Y,OAAM,EAAE,qBAAS,W,QAAiD,gW,OAAE,iBAAC,SAAE,YAAY,OAAmJ,MAAM,CAAyF,GAAU,CAAW,KAACsB,UAAQ7B,OAAO,CAA6H,cAAYoH,EAAU,GAAEtC,eAAsN9E,GAAImF,OAAG,iHAAmMlF,UAAY,+DAAgB,OAAO,EAAED,OAAI+pB,CAA6E,IAAOjlB,GAAWtD,GAAIK,qGAAM,EAAMsD,KAAG,wBAA6BnF,CAAyL,YAAW,aAAEC,kEAAY,kEAAgB,YAAa0c,aAAmD,sMAAI,YAAS,iBAAI,qFAAG,OAAe,GAAK,GAACqN,6BAA6B,8BAA8B,6HAAO,WAAQhqB,YAAIgqB,iBAAyB,GAAgB,GAAChqB,EAAIiqB,wBAAqB,wBAAqD,mBAAkE,uEAAC,OAAG,KAAQ,EAAG,yBACx1G,uCACGvpB,iBAAoB,gC,inBCYxB,IAAqBwpB,EAAY,SAAAppB,GAAjC,SAAAopB,IAAA,IAAAnpB,EAyHG,OAzHHC,eAAA,KAAAkpB,G,sBACSnpB,EAAAI,SAAmB,EACnBJ,EAAAopB,aAAoB,GACpBppB,EAAAqpB,eAAsB,GACtBrpB,EAAAkpB,sBAA6B,GAC1BlpB,EAAAspB,6BAAoD,IAAIC,IACxDvpB,EAAAipB,0BAAoC,EACvCjpB,EAAAwpB,iBAAwC,IAAID,IAC5CvpB,EAAAuoB,WAAqB,GACrBvoB,EAAAypB,eAAyB,GACzBzpB,EAAA0pB,cAAgB,GAChB1pB,EAAAyoB,SAAiB,IAAIpoB,KAAKyc,MAASC,SAAS,EAAG,SAASC,OAAO,eAC/Dhd,EAAA0oB,UAAkB,IAAIroB,KACtBL,EAAA2pB,aAAe,CACtB,CACCvM,KAAM,qBACN/d,MAAO,kBACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAER,CACCH,KAAM,KACN/d,MAAO,aACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAER,CACCH,KAAM,aACN/d,MAAO,cACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAER,CACCH,KAAM,WACN/d,MAAO,WACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAER,CACCH,KAAM,UACN/d,MAAO,YACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAER,CACCH,KAAM,OACN/d,MAAO,UACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAER,CACCH,KAAM,8BACN/d,MAAO,oBACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAER,CACCH,KAAM,gCACN/d,MAAO,uBACPge,MAAO,QACPC,UAAU,EACVC,MAAO,QAGDvd,EAAA4pB,aAAe,CACtB,CACCxM,KAAM,iBACN/d,MAAO,gBACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAER,CACCH,KAAM,OACN/d,MAAO,kBACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAER,CACCH,KAAM,eACN/d,MAAO,WACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAER,CACCH,KAAM,UACN/d,MAAO,WACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAER,CACCH,KAAM,WACN/d,MAAO,YACPge,MAAO,OACPC,UAAU,EACVC,MAAO,SAER,CACCH,KAAM,iBACN/d,MAAO,iBACPge,MAAO,QACPC,UAAU,EACVC,MAAO,QAER,CACCH,KAAM,QACN/d,MAAO,QACPge,MAAO,QACPC,UAAU,EACVC,MAAO,QAEPvd,EAuLF,OAAAO,eAAA4oB,EAAAppB,GAAAS,eAAA2oB,EAAA,EAAA1oB,IAAA,UAAApB,MArLQ,WACPqB,KAAKgpB,cAAgBhpB,KAAK8nB,QAC1B9nB,KAAKmpB,qBACL,CAAAppB,IAAA,UAAAG,IAED,WACC,OAAOF,KAAKwB,OAAOqN,MAAMiZ,UACzB,CAAA/nB,IAAA,sBAAApB,MAEO,SAAoB0M,GACvBrL,KAAKooB,4BAA4B/c,GAAY1F,QAAU,GAC1D3F,KAAKopB,8BAA8B/d,KAEpC,CAAAtL,IAAA,8BAAApB,MAEO,SAA4B0M,GACnC,IAAI2G,EAAShS,KAAK2oB,eAAetiB,QAAO,SAACgjB,GAA2B,OAAKA,EAAGhe,aAAeA,KAC3F,OAAO2G,IACP,CAAAjS,IAAA,yBAAApB,MAEO,SAAuB2qB,GAC9B,IAAIC,EAAUD,EAAS7L,QAAO,SAACzb,EAAKqmB,GACnC,IAAMmB,EAAWnB,EAAQmB,SACnBC,EAASpB,EAAQqB,sBAOvB,OALK1nB,EAAI2nB,IAAIH,IACZxnB,EAAI2U,IAAI6S,EAAU,GAGnBxnB,EAAI2U,IAAI6S,EAAUxnB,EAAI9B,IAAIspB,GAAaC,GAChCznB,IACL,IAAI6mB,KAMP,OALAU,EAAQxJ,SAAQ,SAAC0J,EAAQD,GACT,IAAXC,GACHF,EAAQ3R,OAAO4R,MAGVD,IACP,CAAAxpB,IAAA,uBAAAG,IAED,WAAgC,IAAAgG,EAAA,KAC3B0jB,EAAW5pB,KAAK0oB,aAapB,OAZI1oB,KAAK6nB,WAAWliB,QAAU,IAC7BikB,EAAWA,EAASvjB,QAAO,SAACpE,GAAK,OAChCA,EAAEoJ,WAAWhC,WAAW9C,SAASL,EAAK2hB,aACtC5lB,EAAE8J,YAAY3F,cAAcG,SAASL,EAAK2hB,WAAWzhB,gBACrDnE,EAAEgK,UAAU7F,cAAcG,SAASL,EAAK2hB,WAAWzhB,gBACnDnE,EAAEC,KAAKkE,cAAcG,SAASL,EAAK2hB,WAAWzhB,mBAE5CpG,KAAKgpB,cAAcrjB,OAAS,GAAK3F,KAAKgpB,cAAcrjB,OAAS3F,KAAK8nB,QAAQniB,SAC7EikB,EAAWA,EAASvjB,QAAO,SAACpE,GAAK,OAChCiE,EAAK8iB,cAAcriB,MAAK,SAACgY,GAAQ,OAAKA,EAAEvY,cAAcG,SAAStE,EAAEsK,QAAQnG,sBAGpEwjB,IACP,CAAA7pB,IAAA,mBAAApB,MAAA,eAAAkrB,EAAAtpB,eAAAC,mBAAAC,MAEO,SAAAC,IAAA,IAAAopB,EAAAC,EAAAppB,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAIiD,OAJjDF,EAAAC,KAAA,EAENd,KAAKN,SAAU,EACXoqB,EAAc,IAAInqB,KAAKK,KAAK+nB,UAAWiC,cACvC3gB,EAAY,IAAI1J,KAAKK,KAAKgoB,WAAYgC,cAAanpB,EAAAE,KAAA,EAChCC,iBAAad,IAAI,yCAADe,OAA0C6oB,EAAU,QAAA7oB,OAAOoI,IAAW,OAAvG1I,EAAQE,EAAAK,KACdlB,KAAK0oB,aAAe/nB,EAASQ,KAAKunB,aAAa7nB,EAAAE,KAAA,iBAAAF,EAAAC,KAAA,GAAAD,EAAAQ,GAAAR,EAAA,YAE/CS,QAAQ2G,IAAI,6BAA6B,QAEpB,OAFoBpH,EAAAC,KAAA,GAEzCd,KAAKN,SAAU,EAAMmB,EAAAa,OAAA,6BAAAb,EAAAc,UAAAjB,EAAA,yBAEtB,SAZayoB,IAAgB,OAAAU,EAAAjoB,MAAC,KAADC,WAAA,OAAhBsnB,EAFb,IAE6B,CAAAppB,IAAA,gCAAApB,MAAA,eAAAsrB,EAAA1pB,eAAAC,mBAAAC,MActB,SAAAiH,EAAoC2D,GAAkB,IAAA1K,EAAA+F,EAAA,YAAAlG,mBAAAI,MAAA,SAAAgH,GAAA,eAAAA,EAAA9G,KAAA8G,EAAA7G,MAAA,OAExC,OAFwC6G,EAAA9G,KAAA,EAE5Dd,KAAKN,SAAU,EAAKkI,EAAA7G,KAAA,EACGC,iBAAad,IAAI,kDAADe,OAAmDoK,IAAa,OAAjG1K,EAAQiH,EAAA1G,KACdP,EAASQ,KAAK4e,SAAQ,SAACC,GACjBA,EAAEze,QAAOye,EAAEze,MAAQ,IACxBmF,EAAKiiB,eAAetoB,KAAK2f,MACvBpY,EAAA7G,KAAA,gBAAA6G,EAAA9G,KAAA,EAAA8G,EAAAvG,GAAAuG,EAAA,YAEHtG,QAAQ2G,IAAI,0BAA0B,QAEjB,OAFiBL,EAAA9G,KAAA,GAEtCd,KAAKN,SAAU,EAAMkI,EAAAlG,OAAA,6BAAAkG,EAAAjG,UAAA+F,EAAA,wBAEtB,SAba0hB,EAA6B7hB,GAAA,OAAA0iB,EAAAroB,MAAC,KAADC,WAAA,OAA7BunB,EAdgB,IAca,CAAArpB,IAAA,uBAAApB,MAAA,eAAAurB,EAAA3pB,eAAAC,mBAAAC,MAenC,SAAA2H,EAA2BwK,GAA8B,IAAAuX,EAAAC,EAAAziB,EAAA,YAAAnH,mBAAAI,MAAA,SAAAyH,GAAA,eAAAA,EAAAvH,KAAAuH,EAAAtH,MAAA,OAUtB,OAVsBsH,EAAAvH,KAAA,EAElDqpB,EAAU,SAACE,EAAQtqB,GACnB,OAAOsqB,EAAG5M,QAAO,SAAC6M,EAAQC,GAEtB,OADCD,EAAGC,EAAExqB,IAAQuqB,EAAGC,EAAExqB,KAAS,IAAIM,KAAKkqB,GAC9BD,IACR,KAGhBtqB,KAAKN,SAAU,EACNM,KAAKwoB,sBAAwB,GAAGngB,EAAAtH,KAAA,EACJC,iBAAad,IAAI,oDAADe,OAAqD2R,EAAME,gBAAgB,OAAjHsX,EAAa/hB,EAAAnH,KACnBlB,KAAKwoB,sBAAwBxZ,OAAOwb,QAAQL,EAAQC,EAAcjpB,KAAM,cACxEnB,KAAK4oB,6BAA6B6B,QAClCzqB,KAAKwoB,sBAAsBzI,SAAQ,SAAC2K,GAC5C,IAAIrC,EAAUzV,EAAM0W,SAASjjB,QAAO,SAAC8C,GAAiC,OAAKA,EAAExE,GAAG0E,aAAeqhB,EAAK,MAAI,GAC5F/iB,EAAKihB,6BAA6BjS,IAAI+T,EAAK,GAAIrC,EAAQmB,aAE3DxpB,KAAKuoB,0BAA2B,EAAKlgB,EAAAtH,KAAA,iBAAAsH,EAAAvH,KAAA,GAAAuH,EAAAhH,GAAAgH,EAAA,YAE9C/G,QAAQ2G,IAAI,qDAADhH,OAAsD2R,EAAME,cAAa,KAAAzK,EAAAhH,IAC3ErB,KAAKwB,OAAOC,OAAO,uBAAwB,iDAAiD,QAEhF,OAFgF4G,EAAAvH,KAAA,GAErGd,KAAKN,SAAU,EAAM2I,EAAA3G,OAAA,6BAAA2G,EAAA1G,UAAAyG,EAAA,yBAEnB,SAzBUuiB,EAAoBnjB,GAAA,OAAA0iB,EAAAtoB,MAAC,KAADC,WAAA,OAApB8oB,EAf6B,IAeT,CAAA5qB,IAAA,aAAApB,MA4B1B,SAAWisB,EAAYxqB,EAAeyqB,GA0B7C,OAzBAD,EAAME,MAAK,SAAC3hB,EAAQ4hB,GACnB,GAAc,yBAAV3qB,EACH,OAAIyqB,EACI1hB,EAAE6hB,qBAAuBD,EAAEC,qBAE3BD,EAAEC,qBAAuB7hB,EAAE6hB,qBAGpC,GAAc,sBAAV5qB,EACH,OAAIyqB,EACI1hB,EAAE8hB,qBAAuBF,EAAEE,qBAE3BF,EAAEE,qBAAuB9hB,EAAE8hB,qBAGpC,GAAc,oBAAV7qB,EAA6B,CAChC,IAAI8qB,EAAQ,IAAIvrB,KAAKwJ,EAAEgiB,iBACnBC,EAAQ,IAAIzrB,KAAKorB,EAAEI,iBACvB,OAAIN,EACIK,EAAMG,UAAYD,EAAMC,UAExBD,EAAMC,UAAYH,EAAMG,cAI3BT,IACP,CAAA7qB,IAAA,oBAAApB,MAEO,SAAkBisB,EAAYxqB,EAAeyqB,GAYpD,OAXAD,EAAME,MAAK,SAAC3hB,EAAQ4hB,GACnB,GAAc,oBAAV3qB,EAA6B,CAChC,IAAI8qB,EAAQ,IAAIvrB,KAAKwJ,EAAEmiB,iBACnBF,EAAQ,IAAIzrB,KAAKorB,EAAEO,iBACvB,OAAIT,EACIK,EAAMG,UAAYD,EAAMC,UAExBD,EAAMC,UAAYH,EAAMG,cAI3BT,IACP,CAAA7qB,IAAA,yBAAApB,MAEO,SAAuB4sB,GAC9B,OAAKA,GAAkBA,EAAe5lB,QAAU,EACxC,IAAI8D,MAEL8hB,EAAeC,MAAM,OAC5B,CAAAzrB,IAAA,yBAAApB,MAEO,SAAuB8sB,GAC9B,IAAIC,EAAc,GACdhtB,EAAQ+sB,EAASD,MAAM,KAAK,GAC5B7sB,EAAQ8sB,EAASD,MAAM,KAAK,GAEhC,OADAE,GAAe,GAAJzqB,OAAOmjB,OAAW5H,kBAAkB1C,SAASpb,IAAO,MAAAuC,OAAKtC,GAC7D+sB,IACP,CAAA3rB,IAAA,OAAApB,MAEO,WACPqB,KAAK+W,QAAQ1W,KAAK,CAAE6B,KAAM,eAC1B,CAAAnC,IAAA,eAAApB,MAEO,SAAa0M,GACpBrL,KAAK+W,QAAQ1W,KAAK,CAAE6B,KAAM,iBAAkBgV,OAAQ,CAAE7L,oBA7SvB,CAASrI,QAArBylB,EAAYxlB,eAAA,CANhCE,eAAU,CACVkL,WAAY,CACXsd,iCACA9I,sBAGmB4F,WCjBmY,I,wBCQpZrlB,EAAY,eACd,EACA,EACAnE,GACA,EACA,KACA,KACA,MAIa,aAAAmE,E,4JCnB8IG,W,MAA6BqoB,K,EAAS,WAAC/sB,EAAU,MAAC,Y,OAAM,UAAE,MAAK,CAAsT,MAAU,OAAgB,MAAM,CAAyQ,MAAOwE,EAAG,K,SAAWwoB,SAAM,GAACrtB,OAAW,G,WAAkF,S,GAAiB,wP,OAACoT,EAAK,OAAQ,IAAGvO,G,CAAqH7E,UAAY,gLAAkB,OAAM,QAAS,CAAsM,M,YAAoBstB,QAAO,GAAEzoB,OAAgB9E,GAAI2c,OAAwB,GAAI,MAAMxX,C,MAAyDlF,CAA4B,KAAQ,UAA4G,KAAIutB,U,CAA0MvtB,SAAY,oFAAe,YAAUD,oBAAuF,CAAC8E,EAAG,KAAK,CAACA,EAAG,MAAMA,EAAG,KAAK,CAACA,EAAG,GAAI,iBAAC,yHAAC7E,cAAY,CAAkBD,IAAImF,GAAoIlF,QAAY,8EAAkBD,YAAa,iBAAkI,+DAAM8E,YAAG,iBAA6C7E,GAAY,cAAe,oJAAI,6BAAC,GAAQ,QAARiF,EAAiBwJ,kBAAjBxJ,CAAwB,yCAAC,OAAWuoB,SAAO,6CAAC,+FAAIztB,YAAO,iBACx6E,uGACGU,MAEJ,GAAS8N,SAAQ9N,WAAe,U,0gBCEhC,IAAqB0sB,EAAyB,SAAAtsB,GAA9C,SAAAssB,IAAA,IAAArsB,EAQ2D,OAR3DC,eAAA,KAAAosB,G,sBAOSrsB,EAAAkd,kBAAoBC,OAAkBD,kBACtCld,EAAA2sB,eAAiBxP,OAAkBwP,eAAe3sB,EAoC1D,OAAAO,eAAA8rB,EAAAtsB,GAAAS,eAAA6rB,EAAA,EAAA5rB,IAAA,gBAAApB,MAlCQ,SAAcutB,GACrB,OAAOlsB,KAAKisB,eAAeC,GAAWvtB,QACtC,CAAAoB,IAAA,gCAAApB,MAEO,SAA8BwtB,GACrC,IAAIhC,EAAU,SAACE,EAAQtqB,GACtB,OAAOsqB,EAAG5M,QAAO,SAAC6M,EAAQC,GAEzB,OADCD,EAAGC,EAAExqB,IAAQuqB,EAAGC,EAAExqB,KAAS,IAAIM,KAAKkqB,GAC9BD,IACL,KAEA8B,EAAUpd,OAAOwb,QAAQL,EAAQgC,EAAO,eAC5C,OAAOC,IACP,CAAArsB,IAAA,qBAAApB,MAEU,SAAmBkU,GACvB,OAAO7S,KAAK8oB,iBAAiB5oB,IAAI2S,KACpC,CAAA9S,IAAA,mBAAApB,MAEO,SAAiB0tB,GACrB,OAAOA,EAAU5O,QAAO,SAAC6O,EAAUP,GAA4B,OAAOO,EAAMP,EAASpO,OAAO,KAC/F,CAAA5d,IAAA,uBAAApB,MAEO,SAAqB0tB,GACzB,OAAOA,EAAU5O,QAAO,SAAC6O,EAAUP,GAA4B,OAAOO,EAAMP,EAASQ,oBAAoB,KAC5G,CAAAxsB,IAAA,QAAApB,MAEO,WACJqB,KAAKia,MAAM,aAtC2B,CAASjX,QAEtDC,eAAA,CADCmL,kB,2BAGEnL,eAAA,CADCmL,kB,qCAGDnL,eAAA,CADCmL,kB,uCALgBud,EAAyB1oB,eAAA,CAD7CE,eAAU,KACUwoB,WCN8X,I,wBCQ/YvoB,EAAY,eACd,EACA,EACAnE,GACA,EACA,KACA,WACA,MAIa,OAAAmE,E,sEClBf,IAAIopB,EAAS,EAAQ,QACjBllB,EAAW,EAAQ,QACnBmlB,EAAM,MAGVC,EAAOC,QAAU,EAAQ,OAAR,CAAyBF,GAAK,SAAUvsB,GACvD,OAAO,WAAiB,OAAOA,EAAIF,KAAM6B,UAAU8D,OAAS,EAAI9D,UAAU,QAAK8T,MAC9E,CAED4G,IAAK,SAAa5d,GAChB,OAAO6tB,EAAOI,IAAItlB,EAAStH,KAAMysB,GAAM9tB,EAAkB,IAAVA,EAAc,EAAIA,EAAOA,KAEzE6tB,I,uBCbH,IAAIK,EAAc,EAAQ,QACtBC,EAAU,EAAQ,QAClBC,EAAY,EAAQ,QACpBC,EAAS,EAAQ,QAAiBrO,EACtC+N,EAAOC,QAAU,SAAUM,GACzB,OAAO,SAAUC,GACf,IAKIntB,EALAotB,EAAIJ,EAAUG,GACd5I,EAAOwI,EAAQK,GACfxnB,EAAS2e,EAAK3e,OACdwJ,EAAI,EACJie,EAAS,GAEb,MAAOznB,EAASwJ,EACdpP,EAAMukB,EAAKnV,KACN0d,IAAeG,EAAO1jB,KAAK6jB,EAAGptB,IACjCqtB,EAAO/sB,KAAK4sB,EAAY,CAACltB,EAAKotB,EAAEptB,IAAQotB,EAAEptB,IAG9C,OAAOqtB,K,qEClBiD9uB,EAAOC,WAAsB,MAAU,KAAgBC,UAAY,GAA6B,oB,OAAsE,EAAC,e,YAAS,qB,CAAO,KAAO,kDAAKC,UAAK,MAAC,CAACC,MAAM,OAACC,MAAOJ,EAAIK,O,MAAkC,CAAS,MAAC,OAACC,SAAU,SAAC,GAAM,UAA0CC,WAAM,UAAmB,oBAAG,MAAKC,CAAkBC,cAAI,MACtb,mBACGC,uBAEJ,I,iaCDA,IAAMC,EAAQC,EAAQ,QAGDkuB,EAA8B,SAAAhuB,GAAnD,SAAAguB,IAAA,IAAA/tB,EAIoD,OAJpDC,eAAA,KAAA8tB,G,sBACY/tB,EAAAE,MAAa,KACbF,EAAAguB,YAAmB,GACnBhuB,EAAAI,SAAmB,EACnBJ,EAAAV,MAAe,IAAIe,MAAOC,cAAcN,EAwInD,OAAAO,eAAAwtB,EAAAhuB,GAAAS,eAAAutB,EAAA,EAAAttB,IAAA,UAAApB,MAtIW,WACJqB,KAAKC,eACR,CAAAF,IAAA,QAAAG,IAED,WAGI,IADA,IAAIC,EAAY,GACPC,GAAQ,IAAIT,MAAOC,cAAeQ,GAAS,KAAMA,IACtDD,EAAUE,KAAKD,GAEnB,OAAOD,IACV,CAAAJ,IAAA,aAAApB,MAAA,eAAA2B,EAAAC,eAAAC,mBAAAC,MAGO,SAAAC,IAAA,IAAAC,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAGoB,OAHpBF,EAAAC,KAAA,EAGAd,KAAKN,SAAU,EAAKmB,EAAAE,KAAA,EACGC,iBAAad,IAAI,2CAADe,OAA4CjB,KAAKpB,OAAO,OAAzF+B,EAAQE,EAAAK,KACdlB,KAAKstB,YAAc3sB,EAASQ,KAC5BnB,KAAKoB,gBAAgBP,EAAAE,KAAA,gBAAAF,EAAAC,KAAA,EAAAD,EAAAQ,GAAAR,EAAA,YAErBS,QAAQC,MAAM,0BACdD,QAAQC,MAAKV,EAAAQ,IACtBrB,KAAKwB,OAAOC,OAAO,uBAAwB,iDAAiD,QAE9D,OAF8DZ,EAAAC,KAAA,GAEnFd,KAAKN,SAAU,EAAMmB,EAAAa,OAAA,6BAAAb,EAAAc,UAAAjB,EAAA,wBAE5B,SAdaT,IAAU,OAAAK,EAAAsB,MAAC,KAADC,WAAA,OAAV5B,EAHb,IAGuB,CAAAF,IAAA,cAAApB,MAgBhB,WAEJ,IAAMmD,EAAS,CACX,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,WAEEC,EAAS,CACX,eACA,YACA,YACA,sBAEA,UACA,oBACA,oBACA,8BAEA,wBACA,kCACA,iCACA,4CAGAZ,EAAO,CACPY,OAAQA,EACRI,SAAU,CAAC,CACPG,gBAAiBR,EACjBX,KAAMnB,KAAKutB,aAGnB,OAAOpsB,IACV,CAAApB,IAAA,UAAApB,MAEO,WAuBJ,IAvBW,IAAAuH,EAAA,KAKLsnB,EAAyB,CAE3B,EAAC,GAAO,GAAO,GAAO,GACtB,EAAC,GAAM,GAAO,GAAO,GACrB,EAAC,GAAO,GAAM,GAAO,GACrB,EAAC,GAAM,GAAM,GAAO,GACpB,EAAC,GAAO,GAAO,GAAM,GACrB,EAAC,GAAM,GAAO,GAAM,GACpB,EAAC,GAAO,GAAM,GAAM,GACpB,EAAC,GAAM,GAAM,GAAM,GAEnB,EAAC,GAAO,GAAM,GAAO,GACrB,EAAC,GAAM,GAAM,GAAO,GACpB,EAAC,GAAO,GAAM,GAAM,GACpB,EAAC,GAAM,GAAM,GAAM,IAGjBC,EAAS,GAAG/M,EAAA,WACb,IAAMgN,EAAWC,EAAAC,GACZC,EAAS3nB,EAAKonB,YAAYjnB,QAAO,SAAC6W,GAAM,OAAKA,EAAE4Q,gBAAkBJ,EAAY,IAC/ExQ,EAAE6Q,YAAcL,EAAY,IAC5BxQ,EAAE8Q,qBAAuBN,EAAY,IACrCxQ,EAAE+Q,eAAiBP,EAAY,MAC7BpB,EAAMuB,EAAO7rB,KAAI,SAACkb,GAAK,OAAKA,EAAE7a,SAAOob,QAAO,SAACyQ,EAAmB/kB,GAAQ,OAAK+kB,EAAa/kB,IAAG,GACnGskB,EAAOptB,KAAK8tB,KAAKC,MAAM9B,KAN3BsB,EAAA,EAAAD,EAA0BH,EAAsBI,EAAAD,EAAAhoB,OAAAioB,IAAAlN,IAQhD,OAAO+M,IACV,CAAA1tB,IAAA,gBAAApB,MAEO,WAIQ,MAAdqB,KAAKR,OACRQ,KAAKR,MAAMgD,UAGN,IAAMC,EAAOzC,KAAK0C,MAAMC,cAAsBC,WAAW,MACzD5C,KAAKR,MAAQ,IAAIN,EAAMuD,EAAK,CAExBI,KAAM,MAEN1B,KAAMnB,KAAK8C,cACXurB,MAAO,OACPC,QAAS,CACLC,OAAQ,CACJC,EAAG,CACCC,aAAa,OAM7BzuB,KAAKR,MAAMuD,aA1IgC,CAASC,QAoBxDC,eAAA,CADCC,eAAM,S,+BAnBUmqB,EAA8BpqB,eAAA,CADlDE,QACoBkqB,WCN+Y,I,YCOhajqB,EAAY,eACd,EACA,EACAnE,GACA,EACA,KACA,KACA,MAIa,aAAAmE,E,kIClB8L,W,IAAG,O,EAAW,EAAM,MAAE,GAAQ,EAAG,kB,OAAC,QAAQ,4CAAe,YAAC,0BAACU,MAAG,CAAC,IAAO,G,MAAyBvF,GAAiB,OAAC,SAAI8E,MAAG,iB,GAAiB,CAAU,kBAAI9E,OAAO,mBAAqF,WAACG,MAAM,CAACC,MAAOJ,K,GAAsCA,GAAImwB,kCAAW,a,MAAC,CAAC7vB,uBAAuB,MAAI,CAAgBL,QAAY,QAAcM,SAAM,YAAC,UAAcY,GAA+B,WAAW,aAAyB,SAAc2b,CAAO,YAAC,cAACC,OAAqBvb,QAAI,EAAO,QAACwb,MAAG,EAAHA,W,WAA6B,K,gBAA2B,E,QAAE,EAAQ,S,YAAa,KAAQ,CAAC,C,IAAC1R,Q,YAAsB,G,MAAU,iBAAC/F,YAAG,CAAC,MAAQ,S,CAAiD,UAAC,aAAIvF,OAAO,W,GAAoC,CAAa,kBAAM,EAAC,UAAa,cAA2F,4BAACuF,YAAG,CAAC,MAAQ,Q,CAAqD,UAAC,MAAC,CAACpF,KAAM,6E,GAAgC6E,C,OAAiC,SAAa,GAAoB,gCAAuC,MAAKF,CAASwG,QAAY,iBAAC,SAAQ,YAAK,gCAAyB,WAAC,6B,GAA2B,OAAW8kB,C,YAAwB,CAAE,c,CAAQhwB,SAAa0kB,C,GAAiB9f,C,OAAiC,SAAa,GAAmB,gCAAsC,MAAI,CAAczE,MAAM,kBAAC,SAAQ,YAAuB,OAAQ,wBAA2H,WAAC,2B,EAA2B,OAAW6vB,C,MAAwB,CAAE,6BAACjwB,MAAM,yH,GAAgC6E,C,OAAiC,SAAa,GAAoB,gCAAuC,MAAKF,CAASwG,QAAY,iBAAC,SAAQ,YAAM,gCAAwU,wCAAQ,KAAQ,MAAI,YAAS4F,CAAO,MAAW,S,CAAyO1P,EAAG,GAAC6uB,yBAAUjwB,yQ,0BAAgL,G,MAAG,CAAC,8L,OAAC,OAAQ,C,IAAiBJ,EAAIswB,O,CAAmE,2FAAC,OAAItwB,MAAO,iD,GAAoI,CAAwD,kBAAI,0D,CAAqG,gHAAC,OAAIA,MAAO,iDAA+X,IAAG,kBAAO,8DAIthHwO,GAAQ9N,gCAAe,uS,kNCDnB6vB,EAAmBhvB,gBAAhC,SAAAgvB,IAAAvvB,eAAA,KAAAuvB,GACW,KAAAnqB,GAAa,EACb,KAAAiX,YAAsB,GACtB,KAAAmT,UAAkB,IAAIpvB,KACtB,KAAAqvB,WAAqB,GACrB,KAAAC,aAAuB,EACvB,KAAAC,QAAgC,MCRrCC,EAAa,CACf,CACIzS,KAAM,aACN/d,MAAO,GAEX,CACI+d,KAAM,WACN/d,MAAO,GAEX,CACI+d,KAAM,YACN/d,MAAO,GAEX,CACI+d,KAAM,WACN/d,MAAO,GAEX,CACI+d,KAAM,UACN/d,MAAO,IAIAwwB,I,kxCCjBf,IAAqBC,EAAa,SAAA/vB,GAAlC,SAAA+vB,IAAA,IAAA9vB,EA8BK,OA9BLC,eAAA,KAAA6vB,G,sBACY9vB,EAAA+vB,MAA+B,GAC/B/vB,EAAAI,SAAmB,EACnBJ,EAAAovB,SAAmB,EACnBpvB,EAAAgwB,WAAkBH,EAClB7vB,EAAA+b,QAAiB,CACrB,CACIqB,KAAM,OACNE,UAAU,GAEd,CACIF,KAAM,QACNE,UAAU,GAEd,CACIF,KAAM,OACNE,UAAU,GAEd,CACIF,KAAM,cACNE,UAAU,GAEd,CACIF,KAAM,eACNE,UAAU,GAEd,CACIF,KAAM,kBACNE,UAAU,IAEjBtd,EAmFJ,OAAAO,eAAAuvB,EAAA/vB,GAAAS,eAAAsvB,EAAA,EAAArvB,IAAA,UAAApB,MAlFW,WACJqB,KAAKuvB,cACR,CAAAxvB,IAAA,YAAApB,MAAA,eAAA6wB,EAAAjvB,eAAAC,mBAAAC,MAEO,SAAAC,IAAA,IAAAC,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACmBC,iBAClBd,IAAI,+BAA8B,OADjCS,EAAQE,EAAAK,KAEdlB,KAAKqvB,MAAQ1uB,EAASQ,KAAK,wBAAAN,EAAAc,UAAAjB,EAAA,UAC9B,SAJa6uB,IAAS,OAAAC,EAAA5tB,MAAC,KAADC,WAAA,OAAT0tB,EAFb,IAEsB,CAAAxvB,IAAA,aAAAG,IAMvB,WACI,OAAIF,KAAK0uB,QACE1uB,KAAKqvB,MAETrvB,KAAKqvB,MAAMhpB,QAAO,SAAA2c,GAAC,OAAIA,EAAEiM,iBACnC,CAAAlvB,IAAA,cAAApB,MAAA,eAAA8wB,EAAAlvB,eAAAC,mBAAAC,MAEO,SAAAiH,IAAA,IAAAgoB,EAAA/uB,EAAA,OAAAH,mBAAAI,MAAA,SAAAgH,GAAA,eAAAA,EAAA9G,KAAA8G,EAAA7G,MAAA,OAG8C,OAF5C2uB,EAAW,IAAIZ,EACrBY,EAASV,WAAa,qBACtBU,EAAS9T,YAAc,4BAA2BhU,EAAA7G,KAAA,EAC3BC,iBAAa6G,KAAK,kCAAmC6nB,GAAS,OAA/E/uB,EAAQiH,EAAA1G,KACdwuB,EAAS/qB,GAAKhE,EAASQ,KACvBnB,KAAKqvB,MAAMrnB,QAAQ0nB,GAAS,wBAAA9nB,EAAAjG,UAAA+F,EAAA,UAC/B,SAPaioB,IAAW,OAAAF,EAAA7tB,MAAC,KAADC,WAAA,OAAX8tB,EAFb,IAEwB,CAAA5vB,IAAA,eAAApB,MAAA,eAAAixB,EAAArvB,eAAAC,mBAAAC,MASjB,SAAA2H,EAAmBsnB,GAA6B,OAAAlvB,mBAAAI,MAAA,SAAAyH,GAAA,eAAAA,EAAAvH,KAAAuH,EAAAtH,MAAA,cAAAsH,EAAAvH,KAAA,EAAAuH,EAAAtH,KAAA,EAE1CC,iBAAa6G,KAAK,kCAAmC6nB,GAAS,OACpE1vB,KAAKwB,OAAOC,OAAO,kBAAmB,uCAAuC4G,EAAAtH,KAAA,eAAAsH,EAAAvH,KAAA,EAAAuH,EAAAhH,GAAAgH,EAAA,YAE7ErI,KAAKwB,OAAOC,OAAO,uBAAwB,2DAA2D,wBAAA4G,EAAA1G,UAAAyG,EAAA,kBAE7G,SAPaumB,EAAYpnB,GAAA,OAAAqoB,EAAAhuB,MAAC,KAADC,WAAA,OAAZ8sB,EATW,IASC,CAAA5uB,IAAA,kBAAApB,MASlB,SAAgB+d,GACpBmT,UAAUC,UAAUC,UAAUrT,KACjC,CAAA3c,IAAA,oBAAApB,MAEO,SAAkBqxB,EAAoCpB,GAC1D,IACI,MAAO,+BAAP3tB,OAAsC+uB,EAAcrrB,GAAE,KAAA1D,OAAI2tB,EAAS,KACrE,MAAAqB,GACE,MAAO,MAEd,CAAAlwB,IAAA,wBAAApB,MAEO,SAAsBqxB,EAAoCpB,GAC9D,MAAO,4BAAP3tB,OAAmC+uB,EAAcrrB,GAAE,OAAA1D,OAAM2tB,KAC5D,CAAA7uB,IAAA,YAAApB,MAEO,SAAUqxB,EAAoCpB,GAClD,IAAMsB,EAAmBF,EAAcd,QAAQ7oB,QAAO,SAAA6C,GAAC,OAAIA,EAAEinB,cAAgBvB,KAC7E,OAAIsB,EAAiBvqB,OAAS,EACnBuqB,EAAiB,GAAGE,eAExB,IACV,CAAArwB,IAAA,mBAAApB,MAEO,SAAiBqxB,EAAoCpB,GACzD,IAAMsB,EAAmBF,EAAcd,QAAQ7oB,QAAO,SAAA6C,GAAC,OAAIA,EAAEinB,cAAgBvB,KAC7E,OAAIsB,EAAiBvqB,OAAS,EACnBuqB,EAAiB,GAAGG,sBAExB,IACV,CAAAtwB,IAAA,iBAAApB,MAEO,SAAeqxB,GACnB,IAC0CjS,EADtC1b,EAAQ,EAAC4b,EAAAC,EACQ8R,EAAcd,SAAO,IAA1C,IAAAjR,EAAAG,MAAAL,EAAAE,EAAAI,KAAAC,MAA4C,KAAjC8O,EAAMrP,EAAApf,MACb0D,GAAS+qB,EAAOgD,gBACnB,MAAA3R,GAAAR,EAAAS,EAAAD,GAAA,QAAAR,EAAAU,IACD,OAAOtc,IACV,CAAAtC,IAAA,wBAAApB,MAEO,SAAsBqxB,GAC1B,IAC0ClR,EADtCzc,EAAQ,EAAC0c,EAAAb,EACQ8R,EAAcd,SAAO,IAA1C,IAAAnQ,EAAAX,MAAAU,EAAAC,EAAAV,KAAAC,MAA4C,KAAjC8O,EAAMtO,EAAAngB,MACb0D,GAAS+qB,EAAOiD,uBACnB,MAAA5R,GAAAM,EAAAL,EAAAD,GAAA,QAAAM,EAAAJ,IACD,OAAOtc,MA/GmB,CAASW,QAAtBosB,EAAansB,eAAA,CADjCE,QACoBisB,WCPoY,I,YCOrZhsB,EAAY,eACd,EACA,EACAnE,GACA,EACA,KACA,KACA,MAIa,aAAAmE,E,wMClB8MtE,G,UAAM,W,IAAC,EAAK,KAAuB,aAAO,EAAO,MAAC,Y,OAAM,EAAC,iB,YAAU,O,MAAC,CAAS,WAAiDA,GAAK,cAAC,C,YAAS,CAAC,kBAAS,QAAe,OAAIuE,GAAG,0B,CAAiB,SAAQ,C,MAAM,CAAI,KAAO,GAAE,UAAuBvE,GAAK,GAAC,iC,MAAC,CAAgB,OAAwB,KAAO,GAA2F,iB,CAAK,SAAU,C,MAAkB,C,IAAiG,GAA0B,OAAE,Y,CAAQH,SAAWkpB,C,MAAYtkB,C,MAA6BskB,QAAc,eAAC,SAAChpB,+FAA0B,GAAG,CAAeC,SAAM,YAAC,OAAM,EAAE,mEAAS,oBAAY,MAAK,CAAcA,MAAM,aAAC,SAAQ,YAAW,gBAAQH,WAAW2xB,iB,GAA2C,EAACA,Q,MAAkB,CAACzxB,OAA0B,OAAI,OAAO,K,CAAiB,SAAQ,C,MAAM,CAAI,MAAO,YAAI,MAAK,CAAgBG,MAAI,EAAM,cAACF,SAAM,YAAC,gBAAc,GAA4B,WAAO,oBAA+B,KAAO,QAA2B,MAAC,CAACJ,IAAM,GAACC,IAAOJ,GAAgBgF,OAAQ,K,CAA2C,EAAC,Q,IAAC1E,OAAuB,OAAI,MAAO,OAAUC,eAAM,YAAC,KAAO,SAAG,MAAQ,YAAC,KAAO,6BAAI,MAAK,CAAcA,MAAM,aAAC,SAAQP,SAAa,GAAC,aAAgB,SAAY,WAAW,iBAAM,GAAC,U,MAAC,C,KAAwB,GAA8B,OAAE,Y,CAAQI,SAAW4xB,C,MAAiBhtB,C,MAA6BgtB,YAAmB,MAAC,SAAC1xB,SAA4B,aAAqBC,IAAO,KAAO,SAAE,GAAC,OAAO,sBAAuBA,MAAM,CAAC,MAAO,EAACP,gBAAS,kBAAkB,GAAC,kBAAc,GAAsB,WAAW,sBAAmB,YAAW,CAAE,MAAC,CAAG,KAAC,GAAC,KAAO,K,CAA+C,UAAC,MAAC,CAAC+c,MAAW,EAAC/c,KAASwB,gBAAe,GAACwb,a,MAAyB,a,YAA6B/c,O,MAAsC,G,SAA4K,I,SAAgB,Y,OAAC,EAAO,eAAPiF,K,YAA+D,O,IAAG,YAAuB,eAAI,2BAAM,YAAC,sBAAM,GAAK,GAAC+sB,qBAAW,8HAACjtB,MAAS,CAAoBitB,UAAgB3xB,IAAuB,kBAAW,OAAKwE,EAAG,gBAAO,WAAiC,0B,MAAmK,CAAmB,mBAAIA,SAAG,SAAe,GAAC7E,aAAY,GAAqB,WAAUD,iBAAoC,QAAQA,GAAIkyB,SAAS,C,YAAC,CAAoB,YAAa,UAAiBnV,uBAAoB,iH,YAAK,CAAUC,uB,SAAqF,C,YAAUC,c,eAMp8F,U,QAAC,EAAO,U,QAAkB,U,gBAAoD,E,cAAC,c,YAAoE,EAAC,K,0BAAW,G,MAAIjd,GAAImF,KAAG,OAAiB,SAAO,SAAS,GAAuD,OAAI,mBAAG,sLAAK,IAAW,MAAS+L,SAAM,GAASpM,OAAO,EAAC,kCAAsD,GAAQ,QAARI,EAAOA,UAAiB,uB,MAAC,CAA4C,WAAKJ,CAAE,EAAC,GAAK,kBAAoB,EAACggB,KAAKhY,KAAW,eAAa9M,EAAM,GAACA,EAAOkR,MAAU,eAAgB,MAAkD,M,KAAqG,Q,GAAqD,SAAU,G,MAAU,GAACxE,KAAK2I,CAAM,MAAM,EAAI,YAAgB,GAACrV,kBAAyC,GAAG,CAAUC,MAAW,SAAC,GAAe,OAAKiR,EAAM4T,WAAY,OAASpY,eAAuC,GAAE1M,KAAO,aAAiBA,KAAO0M,eAAY,UAAgB,GAAC,kEAAE,OAAI5H,EAAG,MAAM9E,CAA8CC,MAAW,QAAmBD,GAAM,GAACA,iBAAc,KAAckR,EAAK,WAAM5C,qBAA4BrO,UAAY,+BAAgB,OAAMkF,EAAGnF,MAAOA,CAA6DC,MAAW,QAAmBD,GAAM,GAACA,iBAAc,KAAckR,EAAK,UAAMhD,qBAA4BjO,UAAY,CAAgB,YAAa0c,YAA2C1c,OAAY,wBAAgB,OAAMkF,EAAGnF,MAAOkR,CAAuCjR,MAAW,QAAmBD,GAAM,GAACA,iBAAc,KAAc,EAAEkR,OAAW7C,qBAA0B,gDAAG,6BAAO,QAAa,GAAC,qDAACpO,YAAkB,iBAAO,iEAAC,YAAQ,iBAAE,gEAASkyB,YAAa,iBAAuB,8CAAC,YAAQ,iBAAC,QAAgB,GAAC,kCAAE,6BAAO,MAAS,kEAAmB,UAAE,YAAQjc,OAAuBjW,OAA4BM,MAAM,KAAsE,2BAACgF,MAAG,CAAC,IAAO,G,iBAA6B6sB,KAA4B,WAAE,MAAMjtB,CAAsD5E,OAAM,KAAW,a,oDAAA,UAAE,YAAS,gBAA+CA,MAAM,CAAC,oEAAmC,IAAI,MAAO,SAAa,GACzsE,wC,+jBCED,IAAqBoG,EAAiB,SAAA7F,GAAtC,SAAA6F,IAAA,IAAA5F,EAkHM,OAlHNC,eAAA,KAAA2F,G,sBACS5F,EAAAsxB,cAAwB,GACxBtxB,EAAAuxB,oBAA8B,EAC9BvxB,EAAAwxB,gBAA0B,EAC1BxxB,EAAAyxB,2BAAqC,EAErCzxB,EAAA+b,QAKH5R,MACJ,CACCiT,KAAM,QACN/d,MAAO,aACPge,MAAO,OACPC,UAAU,GAEX,CACCF,KAAM,QACN/d,MAAO,cACPge,MAAO,OACPC,UAAU,GAEX,CACCF,KAAM,UACN/d,MAAO,YACPge,MAAO,OACPC,UAAU,GAEX,CACCF,KAAM,WACN/d,MAAO,OACPge,MAAO,OACPC,UAAU,GAEX,CACCF,KAAM,SACN/d,MAAO,QACPge,MAAO,OACPC,UAAU,GAEX,CACCF,KAAM,OACN/d,MAAO,UACPge,MAAO,OACPC,UAAU,GAEX,CACCF,KAAM,gBACN/d,MAAO,gBACPge,MAAO,QACPC,UAAU,GAEX,CACCF,KAAM,mBACN/d,MAAO,iBACPge,MAAO,QACPC,UAAU,GAEX,CACCF,KAAM,oBACN/d,MAAO,gBACPge,MAAO,QACPC,UAAU,GAEX,CACCF,KAAM,YACN/d,MAAO,kBACPge,MAAO,QACPC,UAAU,GAEX,CACCF,KAAM,iBACN/d,MAAO,iBACPge,MAAO,QACPC,UAAU,GAEX,CACCF,KAAM,eACN/d,MAAO,qBACPge,MAAO,QACPC,UAAU,IA6BJtd,EAAA0xB,UAAY,CACb,SAACryB,GAAa,OAAKA,GAAS,GAAK,qBACjC,SAACA,GAAa,OAAKA,EAAQW,EAAK2xB,oBAAsB,WAAJhwB,OAAe3B,EAAK2xB,sBACxE3xB,EA2VL,OAAAO,eAAAqF,EAAA7F,GAAAS,eAAAoF,EAAA,EAAAnF,IAAA,mBAAApB,MAvXA,SAAiBuyB,EAASxnB,EAAW3I,GACpCA,GAAK,SAACowB,GACLC,OAAOC,iBAAiB,SAAUF,EAAGG,kBAEtC,CAAAvxB,IAAA,mBAAApB,MAED,SAAiBuyB,EAASxnB,EAAW3I,GACpCqwB,OAAOG,oBAAoB,SAAUvxB,KAAKsxB,aAC1CvwB,MACA,CAAAhB,IAAA,UAAApB,MAEO,WACuB,IAA1BqB,KAAKywB,UAAU9qB,SAClB3F,KAAKwxB,eAAc,GACnBxxB,KAAKyxB,2BAEN,CAAA1xB,IAAA,aAAApB,MAEO,SAAWisB,EAAYxqB,EAAYyqB,GAI1C,OAAOD,IACP,CAAA7qB,IAAA,YAAAG,IAOE,WACI,OAAOF,KAAKwB,OAAOqN,MAAM6iB,oBAC5B/a,IACD,SAAsBlC,GAClBzU,KAAKwB,OAAOC,OAAO,qBAAsBgT,KAC5C,CAAA1U,IAAA,YAAAG,IAEJ,WACC,OAAOF,KAAKwB,OAAOqN,MAAM4hB,YACzB,CAAA1wB,IAAA,qBAAAG,IAED,WACC,OAAOF,KAAKwB,OAAOqN,MAAMoiB,qBACzB,CAAAlxB,IAAA,gBAAAG,IAED,WACC,OAAOF,KAAKwB,OAAOmN,QAAQgjB,+BAC3B,CAAA5xB,IAAA,aAAAG,IAED,WACC,OAAOF,KAAKwB,OAAOqN,MAAMvJ,aACzBqR,IACD,SAAuBkR,GACtB7nB,KAAKwB,OAAOC,OAAO,iBAAkBomB,KACrC,CAAA9nB,IAAA,aAAAG,IAED,WACC,OAAOF,KAAKwB,OAAOqN,MAAM+iB,YACzBjb,IACD,SAAuBkb,GACtB7xB,KAAKwB,OAAOC,OAAO,gBAAiBowB,KACpC,CAAA9xB,IAAA,iBAAAG,IAED,WACC,OAAOF,KAAKwB,OAAOqN,MAAMijB,wBACzBnb,IACD,SAA2BoS,GAC1B/oB,KAAKwB,OAAOC,OAAO,4BAA6BsnB,KAChD,CAAAhpB,IAAA,gBAAAG,IAED,WACC,OAAOF,KAAKwB,OAAOqN,MAAMkjB,wBACzBpb,IACD,SAA0B+Z,GACzB1wB,KAAKwB,OAAOC,OAAO,4BAA6BivB,KAChD,CAAA3wB,IAAA,gBAAAG,IAED,WACC,OAAOF,KAAKwB,OAAOqN,MAAMmjB,uBACzBrb,IACD,SAA0Bsb,GACzBjyB,KAAKwB,OAAOC,OAAO,2BAA4BwwB,KAC/C,CAAAlyB,IAAA,OAAAG,IAED,WACC,OAAOF,KAAKwB,OAAOqN,MAAMlD,OACzB,CAAA5L,IAAA,aAAAG,IACD,WACC,OAAOF,KAAKwB,OAAOqN,MAAMqjB,oBACzBvb,IACD,SAAuBhL,GACtB3L,KAAKwB,OAAOC,OAAO,gBAAiBkK,KACpC,CAAA5L,IAAA,YAAAG,IAED,WACC,OAAOF,KAAKwB,OAAOqN,MAAMsjB,YACzB,CAAApyB,IAAA,kBAAAG,IACD,WACC,OAAOF,KAAKwB,OAAOqN,MAAMujB,yBACzBzb,IACD,SAA4Bwb,GAC3BnyB,KAAKwB,OAAOC,OAAO,6BAA8B0wB,KACjD,CAAApyB,IAAA,gBAAApB,MAAA,eAAA0zB,EAAA9xB,eAAAC,mBAAAC,MAEO,SAAAC,EAAoB4xB,GAAe,IAAA5oB,EAAA/I,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,WACtCf,KAAKyU,UAAW,CAAF5T,EAAAE,KAAA,eAAAF,EAAAuW,OAAA,iBAahB,OAbgBvW,EAAAC,KAAA,EAIjBd,KAAK6wB,oBAAqB,EAC1B7wB,KAAKuyB,aACLjxB,QAAQ2G,IAAI,wBACRyB,EAAO,EACP1J,KAAK4xB,WAAa,IACrBloB,EAAOoQ,SAAS9Z,KAAK4xB,WAAWvoB,aAE5BipB,IACJ5oB,GAAQ1J,KAAKwB,OAAOqN,MAAM4hB,UAAU9qB,QACpC9E,EAAAE,KAAA,GACsBC,iBAAa6G,KACnC,oCAAA5G,OAAsCyI,GAAS,OAAHzI,OAAUyI,EAAO1J,KAAK4wB,eAClE5wB,KAAKwyB,eACL,QAHK7xB,EAAQE,EAAAK,KAIDoxB,GACAtyB,KAAKwB,OAAOC,OAAO,eAAgBd,EAASQ,KAAKsxB,eAC7DzyB,KAAK+wB,2BAA6BpwB,EAASQ,KAAKuxB,OAEpC1yB,KAAKwB,OAAOC,OAAO,uBAAwBd,EAASQ,KAAKsxB,eAG7DzyB,KAAK0wB,cAAgB/vB,EAASQ,KAAKsxB,cAAc9sB,SAAW3F,KAAK4wB,cAAc/vB,EAAAE,KAAA,iBAAAF,EAAAC,KAAA,GAAAD,EAAAQ,GAAAR,EAAA,YAExFS,QAAQ2G,IAAI,0BAA0B,QAGpB,OAHoBpH,EAAAC,KAAA,GAEtCd,KAAK6wB,oBAAqB,EAC1B7wB,KAAKuyB,aAAa1xB,EAAAa,OAAA,6BAAAb,EAAAc,UAAAjB,EAAA,yBAEnB,SAjCa8wB,EAAajqB,GAAA,OAAA8qB,EAAAzwB,MAAC,KAADC,WAAA,OAAb2vB,EAFb,IAE0B,CAAAzxB,IAAA,wBAAApB,MAAA,eAAAg0B,EAAApyB,eAAAC,mBAAAC,MAmCnB,SAAAiH,IAAA,IAAA/G,EAAA,OAAAH,mBAAAI,MAAA,SAAAgH,GAAA,eAAAA,EAAA9G,KAAA8G,EAAA7G,MAAA,OAGY,OAHZ6G,EAAA9G,KAAA,EAENd,KAAK8wB,gBAAiB,EACtB9wB,KAAKuyB,aAAa3qB,EAAA7G,KAAA,EACKC,iBAAad,IAAI,kCAAiC,OAAnES,EAAQiH,EAAA1G,KACdlB,KAAKwB,OAAOC,OAAO,wBAAyBd,EAASQ,MAAKyG,EAAA7G,KAAA,gBAAA6G,EAAA9G,KAAA,EAAA8G,EAAAvG,GAAAuG,EAAA,YAE1DtG,QAAQ2G,IAAI,qCAAqC,QAG/B,OAH+BL,EAAA9G,KAAA,GAEjDd,KAAK8wB,gBAAiB,EACtB9wB,KAAKuyB,aAAa3qB,EAAAlG,OAAA,6BAAAkG,EAAAjG,UAAA+F,EAAA,wBAEnB,SAZa+pB,IAAqB,OAAAkB,EAAA/wB,MAAC,KAADC,WAAA,OAArB4vB,EAnCa,IAmCQ,CAAA1xB,IAAA,gBAAApB,MAc3B,WACFqB,KAAKyU,YACTzU,KAAK+oB,eAAiB/oB,KAAK6nB,WAC3B7nB,KAAKwxB,eAAc,MAEpB,CAAAzxB,IAAA,2BAAApB,MAIU,YACCqB,KAAKyU,WACHzU,KAAK+oB,iBAAmB/oB,KAAK6nB,aAC5B7nB,KAAK6nB,WAAWliB,QAAU,GAAgC,IAA3B3F,KAAK6nB,WAAWliB,UACnD3F,KAAK+oB,eAAiB/oB,KAAK6nB,WAC3B7nB,KAAKwxB,eAAc,MAE1B,CAAAzxB,IAAA,yBAAApB,MAGI,WACFqB,KAAKyU,WACTzU,KAAKwxB,eAAc,KAEpB,CAAAzxB,IAAA,qBAAApB,MAIO,WACNqB,KAAK0C,MAAM,QAAgB4E,WACvBtH,KAAK0C,MAAM,QAAgBuB,QAAUjE,KAAKyU,WAC9CzU,KAAKwxB,eAAc,KAEpB,CAAAzxB,IAAA,cAAApB,MAEO,WACP,IAAIi0B,EAAkBxB,OAAOyB,YAAczB,OAAO0B,aAAgBtd,SAASud,KAAKC,aAAe,EAC3FJ,GAAkB5yB,KAAK0wB,gBAAkB1wB,KAAKyU,WACjDzU,KAAKwxB,eAAc,KAEpB,CAAAzxB,IAAA,4BAAApB,MAEO,WACGqB,KAAK0wB,gBAAkB1wB,KAAKyU,WAC5BzU,KAAKwxB,eAAc,KAE1B,CAAAzxB,IAAA,kBAAApB,MAEO,SAAgB0kB,GAC1B,IAAMjjB,EAAQJ,KAAKwwB,WAAWyC,QAAQ5P,GACtCrjB,KAAKwwB,WAAWzoB,OAAO3H,EAAO,KAC9B,CAAAL,IAAA,aAAApB,MAEO,SAAW0M,GAClBrL,KAAK+W,QAAQ1W,KAAK,CAAE6B,KAAM,iBAAkBgV,OAAQ,CAAE7L,kBACtD,CAAAtL,IAAA,aAAApB,MAEO,WACPqB,KAAKyU,UAAYzU,KAAK6wB,oBAAsB7wB,KAAK8wB,iBACjD,CAAA/wB,IAAA,aAAApB,MAEO,SAAWu0B,EAAgBtW,GAEjC,IAAIuW,EADDvW,IAGFuW,EADGnzB,KAAKozB,UAAUC,eAAiBH,EACzBlzB,KAAKozB,UAAUE,eAAiBtzB,KAAKwyB,cAAce,YAAc,EAAIvzB,KAAKwyB,cAAce,YAAc,EAEtGvzB,KAAKwzB,sBAAsBN,GAEtClzB,KAAKwB,OAAOC,OAAO,sBAAuB0xB,GAC1CnzB,KAAKwxB,eAAc,MAEpB,CAAAzxB,IAAA,YAAAG,IAED,WACC,IAAIuzB,GAAsB,EACtBP,EAAiB,gBACjBQ,EAA0C1zB,KAAKwB,OAAOqN,MAAM8kB,oBAChE,OAAQD,GACP,KAAKE,OAAoBC,oBACxBJ,GAAa,EACbP,EAAS,aACT,MAED,KAAKU,OAAoBE,qBACxBL,GAAa,EACbP,EAAS,aACT,MAED,KAAKU,OAAoBG,eACxBN,GAAa,EACbP,EAAS,cACT,MAED,KAAKU,OAAoBI,gBACxBP,GAAa,EACbP,EAAS,cACT,MAED,KAAKU,OAAoBK,iBACxBR,GAAa,EACbP,EAAS,YACT,MAED,KAAKU,OAAoBM,kBACxBT,GAAa,EACbP,EAAS,YACT,MAED,KAAKU,OAAoBO,kBACxBV,GAAa,EACbP,EAAS,OACT,MAED,KAAKU,OAAoBQ,mBACxBX,GAAa,EACbP,EAAS,OACT,MAED,KAAKU,OAAoBS,oBACxBZ,GAAa,EACbP,EAAS,gBACT,MAED,KAAKU,OAAoBU,qBACxBb,GAAa,EACbP,EAAS,gBACT,MAED,KAAKU,OAAoBW,oBACxBd,GAAa,EACbP,EAAS,iBACT,MAED,KAAKU,OAAoBY,qBACxBf,GAAa,EACbP,EAAS,iBACT,MAED,KAAKU,OAAoBa,mBACxBhB,GAAa,EACbP,EAAS,gBACT,MAED,KAAKU,OAAoBc,oBACxBjB,GAAa,EACbP,EAAS,gBACT,MAED,KAAKU,OAAoBe,0BACxBlB,GAAa,EACbP,EAAS,kBACT,MAED,KAAKU,OAAoBgB,2BACxBnB,GAAa,EACbP,EAAS,kBACT,MAED,KAAKU,OAAoBiB,wBACxBpB,GAAa,EACbP,EAAS,iBACT,MAED,KAAKU,OAAoBkB,yBACxBrB,GAAa,EACbP,EAAS,iBACT,MAED,KAAKU,OAAoBmB,kBACxBtB,GAAa,EACbP,EAAS,qBACT,MAED,KAAKU,OAAoBoB,mBACxBvB,GAAa,EACbP,EAAS,qBACT,MAGF,MAAO,CACNI,eAAgBG,EAChBJ,aAAcH,KAEf,CAAAnzB,IAAA,wBAAApB,MAED,SAAsBu0B,GACrB,OAAQA,GACP,IAAK,aACJ,OAAOU,OAAoBC,oBAE5B,IAAK,cACJ,OAAOD,OAAoBG,eAE5B,IAAK,YACJ,OAAOH,OAAoBK,iBAE5B,IAAK,OACJ,OAAOL,OAAoBO,kBAE5B,IAAK,gBACJ,OAAOP,OAAoBS,oBAE5B,IAAK,iBACJ,OAAOT,OAAoBW,oBAE5B,IAAK,gBACJ,OAAOX,OAAoBa,mBAE5B,IAAK,kBACJ,OAAOb,OAAoBe,0BAE5B,IAAK,iBACJ,OAAOf,OAAoBiB,wBAE5B,IAAK,qBACJ,OAAOjB,OAAoBmB,kBAE5B,QACC,OAAOnB,OAAoBE,0BAzcO,CAAS9wB,QAwP3CC,eAAA,CAFFgyB,sBAAS,IAAK,CAAEC,SAAS,IACtBhyB,eAAM,e,6CAWVD,eAAA,CADCC,eAAM,kB,2CASPD,eAAA,CAFCgyB,sBAAS,IAAK,CAAEC,SAAS,IACzBhyB,eAAM,e,uCAzQagC,EAAiBjC,eAAA,CADrCE,QACoB+B,WCTgY,I,wBCQjZ9B,EAAY,eACd,EACA,EACAnE,GACA,EACA,KACA,WACA,MAIa,aAAAmE,E,6CCnBf,SAAS+xB,EAAkBjsB,EAAGC,IAC3B,MAAQA,GAAKA,EAAID,EAAEvD,UAAYwD,EAAID,EAAEvD,QACtC,IAAK,IAAI+Y,EAAI,EAAGL,EAAI5U,MAAMN,GAAIuV,EAAIvV,EAAGuV,IAAKL,EAAEK,GAAKxV,EAAEwV,GACnD,OAAOL,EAHT,mC,gJCA0J,W,IAAkB,O,EAAW,QAC3K,GACQ,EAAE,kB,OAEV,mB,MACI3B,C,QACO,U,eACG,GACd,MACH,GAAC,QAAQne,CAAG,CAA+B,mBAAkC,CAAC+c,kBAAqBvb,MAAI,QAAU,UAAC,I,MAAiCvB,gC,WAA0B,wB,YAA0BiR,EAAMgM,K,eAA2B,YAAC,MAAM,GAAI,KAAK,CAAwD5R,YAAY,W,GAAC,CAAoB,kBAAM,EAAC,UAAQ,cAAmB,2DAAC/F,YAAG,CAAC,aAAQ,U,CAAkF,UAAC,OAAIvF,MAAO,IAA6B,IAAK,MAAQ,YAAI,OAADgd,EAAU9L,sBAAM,gCAAgE3Q,GAAK,GAAC,6B,0BAI1kB,G,MAEZ,W,YACU,wB,MACN6d,C,QACQ,CAAE,CACb,KACD,SACID,MAAM,QACNC,UAAO,GACPC,CACH,KACD,cACIF,MAAM,OACNG,UAAO,GACPF,CACAC,aACH,MACD,QACIF,UAAM,GACNC,CACAC,oCACH,MACD,OACIF,MAAM,OACNC,UAAO,GACPC,CACH,KACD,wBACIF,MAAM,OACNC,UAAO,GACPC,CAEP,gDAAC,aAAkB,UAAU,GAAC,CAAgD,kBAAgC,aAACtB,UAAY/c,IAAqBgd,eAAY6Z,G,MAAoB,G,MAAmBvrB,EAAW,KAAC,6B,WAAC,sB,YAA4BnG,EAAGnF,GAAI2c,CAAE,C,IAAqGrR,Q,YAAa,G,MAAoB,iBAAE,YAAaqR,CAA8D,aAAC,U,GAA2B,KAAO3c,GAAI82B,OAAeD,kBAAiB,iD,YAAA,CAAE,uB,CAAQz2B,KAAOy2B,OAAiBE,mBAAmB,kB,GAAC/xB,C,OAAiC,SAAa8f,GAAiC,kCAAoD,MAAKhgB,CAA4B,MAAC,0BAAC,SAAS,SAAS4J,GAAQ,OAAO1O,EAAI82B,KAAeD,qBAAiB,IAAE,qDAAQz2B,GAAK,EAAEy2B,QAAW,OAAMG,C,GAAwBhyB,C,OAAiC,SAAa8f,GAAqC,kCAAwD,MAAKhgB,CAA4BvE,MAAM,8BAAC,SAAO,YAAS,2CAAK,WAAS,8CAA4D,qBAAC,MAAC,CAACJ,KAAM,U,GAA6C6E,C,OAAiC,SAAa8f,GAAyC,kCAAoD,MAAKhgB,CAAsBvE,MAAM,0BAAC,SAAQ,YAAS,6CAAK,WAAQ,0CAAoE,qBAAC,OAAIP,MAAO,U,GAA+F,CAAW,kBAAI,2C,CAAiH,2FAAC,OAAIA,MAAO,IAAwF,GAAK,CAAQ,4FAA4B,8FAAiB,kB,EAA4DA,OAAIi3B,C,MAAmB,CAAC32B,WAAW,IAAkB,MAAK,CAA0CC,MAAM,iBAAC,kBAAoB22B,GAAkB,iBAAsBl3B,GAAkC,WAAC,mB,GAA0BA,yCAA0B,C,MAAA,CAAC,kCAAI,oBAAO,8B,GAA8B,CAA6B,eAAoBm3B,GAAyB,kBAAgBC,OAA6B,KAAQ,sBAAU1oB,C,MAAQ,CAAoC,KAAC,oBAAC,cAAQ,EAAR+e,yB,UAA6B4J,2BAA0B,IAAIvyB,OAAG,YAA2BvE,OAAM,wBAAkC,eAAgB62B,GAAwB,qBAAmBE,MAAgF,EAAC,2B,MAAC,C,KAAwB,EAAU,sBAAqB,UAAC,0BAAC,aAAQ,EAAR7J,4B,cAA6B8J,gCAA8B,IAAI,KAAG,YACzvF,0BAGD,MAAe,SAAE72B,G,6TClDwbV,W,IAAyBgF,O,EAAyBhF,EAAIsF,MAAKtF,GAAyC,oB,OAACM,SAAW,uFAAqB,OAAIwE,cAAiB,GAAEvE,MAAM,aAA6D,GAAM,EAAC,oCAAQ,YAAC,aAACJ,GAAK,OAAC,C,MAAM,CAA+C6E,MAAQ,iB,KAAqBM,U,MAAmEhF,CAAoD,4BAAIwE,SAAG,SAAe,GAACvE,EAAM,uCAA0C,WAAO,yBAAUJ,EAAK,OAAC,C,MAAM,CAA0C6E,MAAQ,oD,KAAqBM,U,MAA8DhF,CAA+C,gDAAIwE,SAAG,SAAe,GAACvE,EAAM,2DAAuC,WAAO,6CAAUJ,EAAK,OAAC,C,MAAM,CAAuC6E,MAAQ,iC,KAAqBM,U,MAA2DhF,CAA4C,2CAAIwE,SAAG,SAAW,GAACvE,EAAM,sDAAS,mDAAuBN,SAAY,CAAOM,MAAM,CAAC,MAAQ,8BAAuC,KAAO,UAA6G,MAAC,CAACJ,MAAM,kCAACC,SAAU,SAAWo3B,GAA4BxyB,OAAS,YAATA,wBAAwB,UAAmE,WAAC,qCAAkD,UAAG,MAAI,CAAgBzE,IAAM,K,CAAqC,SAAO,C,YAA8G,OAAQ,MAAC,CAACJ,MAAM,uCAACC,KAAOJ,8FAA8BgF,KAAQ,U,MAAwE,CAAC1E,QAAU,UAAC,2BAA0B,qBAAM,EAAEwE,KAAG,YAAe,uCAAQ,WAAQ,0CAA2H,SAAO,CAAQ,MAAC,CAAC3E,MAAM,4BAACC,KAAOJ,uGAAuCgF,KAAQ,U,MAAiF,CAAC1E,QAAU,UAAC,eAAmC,qBAAM,EAAEN,KAAIQ,EAAI,UAAMi3B,iBAAsB,UAAsE,WAAO,+BAAUpkB,GAAK,UAAS,MAAMlO,CAAsC5E,MAAM,0CAAC,KAAO,0EAAI,KAAO,UAAI,MAAMgL,CAA2D,MAAS,EAAC,UAAW,wBAAC/J,SAAS,YAACjB,EAAK,KAAC,gD,WAAU,wCAAoB,GAAI,OAAS,+C,MAACN,CAAmBM,KAAM,U,KAAU,UAAE,GAAI,GAAC,iBAAe,U,MAAM,C,MAAS,G,OAAqB,K,CAAWJ,KAAM,wC,OAACC,EAAK,OAAEs3B,C,IAAmB1yB,E,MAA4B,CAAwC,IAAC,GAAC1E,eAAW,KAAuB,GAAG,OAAI,CAAUL,YAAY,OAAOM,MAAM,CAAC,KAAO,KAAK,CAACuE,EAAG,QAAgBvE,MAAM,CAAC,MAAQ,cAA8C,KAAO,UAAUJ,MAAM,CAACC,MAAOs3B,EAAWC,OAAgB3yB,SAAS,SAAUD,GAAM/E,EAAIsF,KAAKoyB,EAAY,cAAgB,KAAgBp3B,WAAW,wBAAgC,GAAGwE,EAAG,QAAU7E,YAAY,OAAOM,MAAM,CAAC,KAAO,KAAK,CAACuE,EAAG,QAAgBvE,MAAM,CAAC,MAAQ,8CAA+C,KAAO,UAAUJ,MAAM,CAACC,MAAOs3B,EAAWE,eAAgB5yB,SAAS,SAAUD,GAAM/E,EAAIsF,KAAKoyB,EAAY,iBAAkB13B,EAAI63B,GAAG9yB,KAAOzE,WAAW,gCAAgC,GAAGwE,EAAG,QAAU7E,YAAY,OAAOM,MAAM,CAAC,KAAO,KAAK,CAACuE,EAAG,QAAgBvE,MAAM,CAAC,MAAQ,+CAAiB,KAAO,UAA6E,MAAC,CAACJ,MAAM,iBAACC,SAAOs3B,SAAqB,GAAC1yB,OAAS,EAATA,iBAAwB,UAA+C,WAAC,gCAAkC,aAAG,YAAQ,OAAU/E,OAAmBM,KAAM,KAAU,WAAE,MAAK,CAAgBA,MAAM,iBAAC,KAAO,8DAAiC,KAAO,UAA4E,MAAC,CAACJ,MAAM,YAACC,SAAOs3B,SAAWI,GAA+B9yB,OAAS,EAATA,YAAwB,UAAmE,WAAC,2BAAsD,aAAG,YAAQ,OAAUzE,MAAM,CAAC,KAAQ,KAAM,CAACuE,EAAG,OAAS,CAACvE,MAAM,CAAC,MAAQ,gCAAS,kEAAG,KAAC,U,MAA0B,CAAkC,sCAAC,qBAAIP,EAAM,KAAC,4CAA0FC,WAAY,+CAA4B,GAAM,EAAC,QAAG,OAAI,Y,CAA0B,SAAU,CAAgB,OAAC,gBAAoKM,GAAK,CAAE,MAAO,YAAS,gCAA0DA,GAAM,kFAAC,SAAQ,C,YAAU,qBAAE,OAAIP,KAAQA,I,GAA6EwB,CAAUjB,MAAM,YAAC,OAAM,EAAE,mBAAoB,GAAEuE,OAAG,GAAS,4F,MAAC7E,CAAmBM,KAAM,U,KAAU,UAAE,GAAI,GAAC,gBAAe,U,MAAM,C,MAAS,G,OAAqB,K,CAAWJ,KAAM,wC,OAACC,EAAK,OAAE23B,C,IAAmB/yB,E,MAA4B,CAAwC,IAAC,GAAC1E,eAAW,KAAuB,GAAG,OAAI,CAAUL,YAAY,OAAOM,MAAM,CAAC,KAAO,KAAK,CAACuE,EAAG,QAAgBvE,MAAM,CAAC,MAAQ,cAA8C,KAAO,UAAUJ,MAAM,CAACC,MAAO23B,EAAWJ,OAAgB3yB,SAAS,SAAUD,GAAM/E,EAAIsF,KAAKyyB,EAAY,cAAgB,KAAgBz3B,WAAW,wBAAgC,GAAGwE,EAAG,QAAU7E,YAAY,OAAOM,MAAM,CAAC,KAAO,KAAK,CAACuE,EAAG,QAAgBvE,MAAM,CAAC,MAAQ,8CAA+C,KAAO,UAAUJ,MAAM,CAACC,MAAO23B,EAAWH,eAAgB5yB,SAAS,SAAUD,GAAM/E,EAAIsF,KAAKyyB,EAAY,iBAAkB/3B,EAAI63B,GAAG9yB,KAAOzE,WAAW,gCAAgC,GAAGwE,EAAG,QAAU7E,YAAY,OAAOM,MAAM,CAAC,KAAO,KAAK,CAACuE,EAAG,QAAgBvE,MAAM,CAAC,MAAQ,+CAAiB,KAAO,UAA6E,MAAC,CAACJ,MAAM,iBAACC,SAAO23B,SAAqB,GAAC/yB,OAAS,EAATA,iBAAwB,UAA+C,WAAC,gCAAkC,aAAG,YAAQ,OAAU/E,OAAmBM,KAAM,KAAU,WAAE,MAAK,CAAgBA,MAAM,iBAAC,KAAO,8DAAiC,KAAO,UAA4E,MAAC,CAACJ,MAAM,YAACC,SAAO23B,SAAWD,GAA+B9yB,OAAS,EAATA,YAAwB,UAAmE,WAAC,2BAAsD,aAAG,YAAQ,OAAUzE,MAAM,CAAC,KAAQ,KAAM,CAACuE,EAAG,OAAS,CAACvE,MAAM,CAAC,MAAQ,gCAAS,kEAAG,KAAC,U,MAA0B,CAAkC,sCAAC,qBAAIP,EAAM,KAAC,4CAA0FC,WAAY,+CAA4B,GAAM,EAAC,QAAG,OAAI,Y,CAA0B,SAAU,CAAgB,OAAC,gBAAoKM,GAAK,CAAE,MAAO,YAAS,gCAAuDA,GAAM,kFAAC,SAAQ,C,YAAU,qBAAE,OAAIP,KAAQA,I,GAAkFwB,CAAUjB,MAAM,YAAC,OAAM,EAAE,mBAAoB,GAAEuE,OAAG,GAAS,4F,MAAM,C,KAAQ,UAAI,KAAK,U,CAAa7E,kBAAkB,U,MAAM,C,MAAS,G,OAAmC,K,GAAmD,eAAa,oC,OAAkB,UAACE,IAAK,E,MAAO,CAAkB6E,O,eAAkCgzB,K,CAAyB13B,SAAU,CAAiB,OAAI,KAAO,KAAgDC,GAAK,OAAC,C,YAAQ,O,MAAS,CAAsB,wCAACJ,MAAM,sBAACC,YAAO43B,OAAqBhzB,aAAS,mB,MAA8D,CAAC1E,QAAW,OAAqB,qBAAM,EAAEwE,KAAG,EAAUA,SAAG,IAAmCvE,WAAM,qBAAiB,KAAO,OAAC,WAAsB,YAAC,OAACJ,MAAM,CAACC,KAAO43B,SAA8BhzB,MAAQ,e,MAAwE,CAAC1E,QAAW,YAA8B,qBAAM,EAAEwE,KAAG,EAAS,wBAAQ,WAAS,0BAAMA,GAAG,SAAS,WAACvE,YAAM,O,MAAC,CAAiB,cAAG,MAAC,wB,MAA0B,CAA+B,6BAAC,qBAAIP,EAAM,KAAC,mCAA0FC,WAAY,mCAA4B,GAAM,EAAC,QAAG,OAAI,Y,CAA0B,SAAU,CAAM,OAAC,gBAAoKM,GAAK,CAAE,MAAO,YAAS,6BAAyDA,GAAM,kFAAC,SAAQ,C,YAAU,qBAAE,OAAIP,KAAQA,I,GAAkFwB,CAAUjB,MAAM,YAAC,OAAM,EAAE,SAAoB,GAAEuE,OAAG,GAAS,4F,MAAM,C,KAAQ,UAAI,KAAK,U,CAAa7E,oBAAkB,U,MAAM,C,MAAS,G,OAAmC,K,GAAmD,eAAa,oC,OAAkB,UAACE,IAAK,E,MAAO,CAAkB6E,O,eAAkCizB,K,CAAyB33B,SAAU,CAAiB,OAAI,KAAO,KAAgDC,GAAK,OAAC,C,YAAQ,O,MAAS,CAAsB,wCAACJ,MAAM,sBAACC,YAAO63B,OAAqBjzB,aAAS,mB,MAA8D,CAAC1E,QAAW,OAAqB,qBAAM,EAAEwE,KAAG,EAAUA,SAAG,IAAmCvE,WAAM,qBAAiB,KAAO,OAAC,WAAsB,YAAC,OAACJ,MAAM,CAACC,KAAO63B,SAA8BjzB,MAAQ,e,MAAwE,CAAC1E,QAAW,YAA8B,qBAAM,EAAEwE,KAAG,EAAS,wBAAQ,WAAS,0BAAMA,GAAG,SAAS,WAACvE,YAAM,O,MAAC,CAAiB,cAAG,MAAC,wB,MAA0B,CAA+B,6BAAC,qBAAIP,EAAM,KAAC,mCAA0FC,WAAY,mCAA4B,GAAM,EAAC,QAAG,OAAI,Y,CAA0B,SAAU,CAAa,OAAC,gBAAoKM,GAAK,CAAE,MAAO,YAAS,6BAAqEA,GAAM,kFAAC,SAAQ,C,YAAU,qBAAE,OAAIP,KAAQA,I,GAAoFwB,CAAUjB,MAAM,YAAC,OAAM,EAAE,gBAAoB,GAAEuE,OAAG,GAAS,4F,MAAM,C,KAAQ,UAAI,KAAK,U,CAAa7E,gCAAkB,U,MAAM,C,MAAS,G,OAAmC,K,GAAoD,eAAa,qC,OAAkB,UAACE,IAAK,E,MAAO,CAAmB6E,O,eAAkCkzB,K,CAA0B53B,SAAU,CAAkB,OAAI,KAAO,KAAgDC,GAAK,OAAC,C,YAAQ,O,MAAS,CAAsB,wCAACJ,MAAM,uBAACC,YAAO83B,OAAsBlzB,aAAS,mB,MAA+D,CAAC1E,QAAW,OAAsB,qBAAM,EAAEwE,KAAG,EAAY,SAAC,IAAmCvE,WAAM,sBAAiB,KAAO,OAAC,WAAsB,YAAC,OAACJ,MAAM,CAACC,KAAO83B,SAA+BlzB,MAAQ,e,MAAyE,CAAC1E,QAAW,YAA+B,qBAAM,EAAEwE,KAAG,EAAS,wBAAQ,WAAS,2BAAMA,GAAG,SAAS,WAACvE,YAAM,O,MAAC,CAAiB,cAAG,MAAC,wB,MAA0B,CAAgC,6BAAC,qBAAIP,EAAM,KAAC,mCAA0FC,WAAY,oCAA4B,GAAM,EAAC,QAAG,OAAI,Y,CAA0B,SAAU,CAAc,OAAC,gBAA6HA,IAA4B,MAAC,SAAsB,GAAK,8BAA2C,qFAAC,UAAE,YAAS,qBAAwBA,OAAwC,KAAC,I,GAA0B,CAAsB,kBAAC,0BAE7tYS,aAAe,GAAK,0EAExB,YAAiBA,a,kiBCAjB,IAAqBy3B,EAAkB,SAAAr3B,GAAvC,SAAAq3B,IAAA,IAAAp3B,EAOmC,OAPnCC,eAAA,KAAAm3B,G,sBAKYp3B,EAAAI,SAAmB,EACnBJ,EAAA02B,UAAiB,KACjB12B,EAAAq3B,aAAoB,GAAGr3B,EAqHlC,OAAAO,eAAA62B,EAAAr3B,GAAAS,eAAA42B,EAAA,EAAA32B,IAAA,eAAApB,MAAA,eAAAi4B,EAAAr2B,eAAAC,mBAAAC,MAlHW,SAAAC,IAAA,IAAAm2B,EAAAl2B,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,UAAAF,EAAAC,KAAA,EAE0B,MAAtBd,KAAK82B,cAAqB,CAAAj2B,EAAAE,KAAA,eAAAF,EAAAuW,OAAA,iBAIuC,OADrEpX,KAAKN,SAAU,EACTm3B,EAAmB71B,iBAAad,IAAI,4BAA2BW,EAAAE,KAAA,EAC9CC,iBAAad,IAAI,8CAADe,OAA+CjB,KAAK82B,gBAAgB,OAA7F,OAARn2B,EAAQE,EAAAK,KAAAL,EAAAE,KAAG,GACU81B,EAAgB,QAA3C72B,KAAK22B,aAAY91B,EAAAK,KAA4BC,KAC7CnB,KAAKg2B,UAAYr1B,EAASQ,KAAKN,EAAAE,KAAA,iBAAAF,EAAAC,KAAA,GAAAD,EAAAQ,GAAAR,EAAA,YAE/BS,QAAQ2G,IAAI,4BAA4B,QAEnB,OAFmBpH,EAAAC,KAAA,GAExCd,KAAKN,SAAU,EAAMmB,EAAAa,OAAA,6BAAAb,EAAAc,UAAAjB,EAAA,yBAE5B,SAfaq2B,IAAY,OAAAH,EAAAh1B,MAAC,KAADC,WAAA,OAAZk1B,EAkHjB,IAlH6B,CAAAh3B,IAAA,sBAAAG,IAiB1B,WACI,OAAOF,KAAK22B,aAAatwB,QAAO,SAACZ,GAAM,OAA6B,GAAxBA,EAAEuxB,wBACjD,CAAAj3B,IAAA,sBAAAG,IAED,WACI,OAAOF,KAAK22B,aAAatwB,QAAO,SAACZ,GAAM,OAA6B,IAAxBA,EAAEuxB,wBACjD,CAAAj3B,IAAA,uBAAAG,IAED,WACI,OAAOF,KAAK22B,aAAatwB,QAAO,SAACZ,GAAM,OAA6B,GAAxBA,EAAEuxB,wBACjD,CAAAj3B,IAAA,MAAApB,MAEO,WACJ,IAAMs4B,EAAM,CACRC,OAAQ,EACRC,YAAa,EACbC,qBAAsB,GAE1Bp3B,KAAKg2B,UAAUqB,qBAAqBh3B,KAAK42B,KAC5C,CAAAl3B,IAAA,aAAApB,MAEO,WACJ,IAAMs4B,EAAM,CACRC,OAAQ,EACRC,YAAa,EACbC,qBAAsB,GAE1Bp3B,KAAKg2B,UAAUsB,qBAAqBj3B,KAAK42B,KAC5C,CAAAl3B,IAAA,cAAApB,MAEO,WACJ,IAAMs4B,EAAM,CACRC,OAAQ,EACRC,YAAa,EACbC,qBAAsB,GAE1Bp3B,KAAKg2B,UAAUuB,sBAAsBl3B,KAAK42B,KAC7C,CAAAl3B,IAAA,gBAAApB,MAEO,WACJ,IAAMs4B,EAAM,CACRH,cAAe92B,KAAKg2B,UAAUc,cAC9BU,OAAQ,EACRtB,eAAgB,EAChBC,eAAgB,GAEpBn2B,KAAKg2B,UAAUyB,aAAap3B,KAAK42B,KACpC,CAAAl3B,IAAA,gBAAApB,MAEO,WACJ,IAAMs4B,EAAM,CACRH,cAAe92B,KAAKg2B,UAAUc,cAC9BU,OAAQ,EACRtB,eAAgB,EAChBC,eAAgB,GAEpBn2B,KAAKg2B,UAAU0B,aAAar3B,KAAK42B,KACpC,CAAAl3B,IAAA,YAAApB,MAAA,eAAAg5B,EAAAp3B,eAAAC,mBAAAC,MAEO,SAAAiH,IAAA,OAAAlH,mBAAAI,MAAA,SAAAgH,GAAA,eAAAA,EAAA9G,KAAA8G,EAAA7G,MAAA,OAEoB,OAFpB6G,EAAA9G,KAAA,EAEAd,KAAKN,SAAU,EAAKkI,EAAA7G,KAAA,EACGC,iBAAa6G,KAAK,kCACrC7H,KAAKg2B,WAAU,OADLpuB,EAAA1G,KAEdlB,KAAKwB,OAAOC,OAAO,kBAAmB,uCACtCzB,KAAKia,MAAM,SAASrS,EAAA7G,KAAA,gBAAA6G,EAAA9G,KAAA,EAAA8G,EAAAvG,GAAAuG,EAAA,YAEpBtG,QAAQ2G,IAAI,mCACZjI,KAAKwB,OAAOC,OAAO,uBAAwB,+CAA+C,QAErE,OAFqEmG,EAAA9G,KAAA,GAE1Fd,KAAKN,SAAU,EAAMkI,EAAAlG,OAAA,6BAAAkG,EAAAjG,UAAA+F,EAAA,wBAE5B,SAbakwB,IAAS,OAAAD,EAAA/1B,MAAC,KAADC,WAAA,OAAT+1B,EAFb,IAEsB,CAAA73B,IAAA,gBAAApB,MAef,SAAcyB,GAClBJ,KAAKg2B,UAAUqB,qBAAqBtvB,OAAO3H,EAAO,KACrD,CAAAL,IAAA,gBAAApB,MAEO,SAAcyB,GAClBJ,KAAKg2B,UAAUsB,qBAAqBvvB,OAAO3H,EAAO,KACrD,CAAAL,IAAA,iBAAApB,MAEO,SAAeyB,GACnBJ,KAAKg2B,UAAUuB,sBAAsBxvB,OAAO3H,EAAO,KACtD,CAAAL,IAAA,mBAAApB,MAEO,SAAiByB,GACrBJ,KAAKg2B,UAAUyB,aAAa1vB,OAAO3H,EAAO,KAC7C,CAAAL,IAAA,mBAAApB,MAEO,SAAiByB,GACrBJ,KAAKg2B,UAAU0B,aAAa3vB,OAAO3H,EAAO,KAC7C,CAAAL,IAAA,OAAApB,MAEO,WACJqB,KAAKia,MAAM,aA1HoB,CAASjX,QAE5CC,eAAA,CADCmL,kB,oCAGDnL,eAAA,CADCmL,kB,0CAODnL,eAAA,CADCC,eAAM,kB,iCATUwzB,EAAkBzzB,eAAA,CADtCE,QACoBuzB,WCJwY,I,YCOzZtzB,EAAY,eACd,EACA,EACA,GACA,EACA,KACA,KACA,MAIa,EAAAA,E,sBClB0KvE,W,IAAkB,OAAE,EAAK,QAAU,GAAQ,oB,OAAC,SAAY,C,IAAI,OAAa,MAAC,CAACH,MAAM,QAACC,SAAU,SAAM,GAAC4E,QAAS,GAA4B,WAAC,UAAkB,WAAE,MAAK,CAA0JzE,WAAM,GAAC,MAAQ,O,MAAuC,CAA0B,aAAkB,SAAQP,SAAIs5B,GAAiB,UAAK,WAAS,S,CAA6C,6HAAC,MAAC,CAACn5B,MAAM,iBAACC,MAAOJ,EAAIu5B,UAAwBv0B,YAAS,c,aAAoBu0B,KAA0B,MAAC,oBAAoC,IAAIz0B,OAAG,SAAe,GAACvE,OAAM,sBAA0D,MAAC,CAAG,MAAC,yBAAC,SAAO,SAAe,GAAEP,EAAIw5B,uBAAsBA,GAAwB,uCAAQp5B,SAAWo5B,C,MAAiBx0B,C,MAA6Bw0B,qBAAmB,MAAC,oBAA6B,IAAI10B,KAAG,SAAe,GAACvE,EAAM,2CAAsE,MAAC,CAAG,MAAC,kBAAC,SAAO,SAAe,GAAEP,EAAIw5B,gBAAkBx5B,GAA4B,gCAAQI,SAAWq5B,C,MAAsBz0B,C,MAA6By0B,qBAAwB,MAAC,gCAAkC,IAAI,KAAO,YAAgD,6C,MAA4C,CAAC,6BAAIz5B,SAAO,SAAkB,GAASC,uBAA2B,GAAQ,WAAW,2BAAc,GAAC,8B,GAAC,C,MAAgCD,SAAI05B,GAAgB,oBACpoD,+BACGh5B,4BAEJ,MAAS8N,C,6aCCT,IAAqBmrB,EAAiB,SAAA74B,GAAtC,SAAA64B,IAAA,IAAA54B,EAqBM,OArBNC,eAAA,KAAA24B,G,sBAOY54B,EAAA2E,OAAiB,EACjB3E,EAAAw4B,uBAAiC,EACjCx4B,EAAAy4B,gBAA0B,GAC1Bz4B,EAAA04B,qBAA+B,EAC/B14B,EAAA64B,iBAAmB,CACvB,SAAC1yB,GAAS,QAAOA,GAAK,uBACtB,SAACA,GAAS,OAAKA,EAAEC,QAAQ,MAAO,IAAIC,OAAS,GAAK,4CAClD,SAACF,GAAS,OAAMA,GAAKA,EAAEE,QAAU,IAAM,+BACvC,SAACF,GAAS,OAAMA,GAAKnG,EAAK84B,cAAc3yB,IAAM,gDAE7CnG,EAAA+4B,6BAA+BxyB,OAAMwyB,6BAClC/4B,EAAAu4B,iBAAmB,CACvB,SAACpyB,GAAS,QAAOA,GAAK,wCACtB,SAACA,GAAS,OAAMA,GAAKA,EAAI,GAAK,yCAChCnG,EA+BL,OAAAO,eAAAq4B,EAAA74B,GAAAS,eAAAo4B,EAAA,EAAAn4B,IAAA,UAAApB,MA5BW,WACHqB,KAAK0C,MAAM2E,KAAaC,aAC5B,CAAAvH,IAAA,kBAAApB,MAEO,WAAe,IAAAuH,EAAA,KACfsjB,EAAWxpB,KAAKs4B,UAAUjyB,QAAO,SAACC,GAAM,OAAKA,EAAE3B,KAAOuB,EAAK4xB,0BAAwB,GACvF93B,KAAK+3B,gBAAkBvO,EAAS,UACnC,CAAAzpB,IAAA,gBAAApB,MAEO,SAAc45B,GAClB,OAAQv4B,KAAKs4B,UAAU3xB,MAAK,SAACL,GAAM,OAAKA,EAAEpE,OAASq2B,OACtD,CAAAx4B,IAAA,iBAAApB,MAEO,WACJ,IAAIwC,EAAO,CACPq3B,eAAgBx4B,KAAK83B,uBACrBW,kBAAmBz4B,KAAK04B,cACxBC,qBAAsB34B,KAAK+3B,gBAC3Ba,UAAW54B,KAAKg4B,qBAChBa,kBAAmB,GAEvB74B,KAAKia,MAAM,SAAU9Y,KACxB,CAAApB,IAAA,QAAApB,MAEO,WACJqB,KAAKia,MAAM,aAjDmB,CAASjX,QAE3CC,eAAA,CADCmL,kB,2BAGDnL,eAAA,CADCmL,kB,oCAGDnL,eAAA,CADCmL,kB,gCALgB8pB,EAAiBj1B,eAAA,CADrCE,QACoB+0B,WCLsX,ICOvY,EAAY,eACd,EACA,EACA,GACA,EACA,KACA,KACA,MAIa,I,UClB0Kr5B,W,IAAkB,OAAE,EAAK,QAAU,GAAQ,oB,OAAC,SAAY,C,IAAI,OAAa,MAAC,CAACH,MAAM,QAACC,SAAU,SAAM,GAAC4E,QAAS,GAA4B,WAAC,UAAkB,WAAE,MAAK,CAAkJzE,WAAM,GAAC,MAAQ,O,MAAoE,CAA0B,aAAkB,SAAQP,SAAIu6B,GAAoB,UAAK,WAAS,S,CAAmD,qHAAC,MAAC,CAACp6B,MAAM,8CAACC,MAAOJ,EAAIw6B,UAA2Bx1B,YAAS,c,aAAoBw1B,KAA6B,MAAC,uBAAuC,IAAK,OAAKr5B,SAAes5B,GAAuHC,OAAS,4BAA2C,MAAI16B,CAAuBC,QAAY,0BAAwB6E,SAAG,SAAsB,GAACvE,EAAM,6BAAmB,2CAAuE,EAAC,0H,SAAQ,C,UAA6BktB,KAAO,wBAAC,mBAAE,YAAS,uBAA2BxtB,UAAY,CAAgBM,MAAM,CAAC,cAAgBmF,OAAS,GAAC,yC,GAAC,C,MAAgC1F,SAAI26B,GAAc,oBAC/5C,+BACGj6B,4BAEJ,MAAS8N,C,6YCCT,IAAqBosB,GAAqB,SAAA95B,GAA1C,SAAA85B,IAAA,IAAA75B,EAiBM,OAjBNC,eAAA,KAAA45B,G,uBASY75B,EAAAI,SAAmB,EACnBJ,EAAA2E,OAAiB,EACjB3E,EAAA85B,oBAA8B,GAC9B95B,EAAAy5B,0BAAoC,EACpCz5B,EAAA05B,gBAA0B,GAC1B15B,EAAAw5B,oBAAsB,CAC1B,SAACrzB,GAAS,QAAOA,GAAK,6CACtB,SAACA,GAAS,OAAMA,GAAKA,EAAI,GAAK,8CAChCnG,EAyDL,OAAAO,eAAAs5B,EAAA95B,GAAAS,eAAAq5B,EAAA,EAAAp5B,IAAA,UAAApB,MAvDW,WACHqB,KAAK0C,MAAM2E,KAAaC,aAC5B,CAAAvH,IAAA,mBAAAG,IAED,WACI,OAAOF,KAAKq5B,aAAa,iBAC5B,CAAAt5B,IAAA,wBAAApB,MAEO,WAAqB,IAAAuH,EAAA,KACrBsjB,EAAWxpB,KAAKs4B,UAAUjyB,QAAO,SAACC,GAAM,OAAKA,EAAE3B,KAAOuB,EAAK6yB,6BAA2B,GAC1F/4B,KAAKo5B,oBAAsB5P,EAAS,QACpCxpB,KAAKs5B,qBACR,CAAAv5B,IAAA,eAAApB,MAEO,WACJ,IAAIwC,EAAO,CACPq3B,eAAgBx4B,KAAKq5B,aAAavC,cAClC2B,kBAAmBz4B,KAAK04B,cACxBC,qBAAsB,GACtBC,UAAW,EACXC,kBAAmB74B,KAAK+4B,2BAE5B/4B,KAAKg5B,gBAAkB,GACvBh5B,KAAK+4B,0BAA4B,EACjC/4B,KAAKia,MAAM,OAAQ9Y,KACtB,CAAApB,IAAA,mBAAApB,MAAA,eAAA46B,EAAAh5B,eAAAC,mBAAAC,MAEO,SAAAC,IAAA,IAAAS,EAAAR,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAUC,OAVDF,EAAAC,KAAA,EAEAd,KAAKN,SAAU,EACfM,KAAKg5B,gBAAkB,GACnB73B,EAAO,CACPq3B,eAAgBx4B,KAAKq5B,aAAavC,cAClC2B,kBAAmBz4B,KAAK04B,cACxBC,qBAAsB,GACtBC,UAAW,EACXC,kBAAmB74B,KAAK+4B,2BAC3Bl4B,EAAAE,KAAA,EACsBC,iBAAa6G,KAAK,0CAA2C1G,GAAK,OAAnFR,EAAQE,EAAAK,KAEdlB,KAAKg5B,gBAAkBr4B,EAASQ,KAAKuE,QAAQ,MAAO,QACpD1F,KAAKwB,OAAOC,OAAO,kBAAmB,wBAAwBZ,EAAAE,KAAA,iBAAAF,EAAAC,KAAA,GAAAD,EAAAQ,GAAAR,EAAA,YAE9Db,KAAKwB,OAAOC,OAAO,uBAAwB,4CAA4C,QAElE,OAFkEZ,EAAAC,KAAA,GAEvFd,KAAKN,SAAU,EAAMmB,EAAAa,OAAA,6BAAAb,EAAAc,UAAAjB,EAAA,yBAE5B,SApBa44B,IAAgB,OAAAC,EAAA33B,MAAC,KAADC,WAAA,OAAhBy3B,EAFb,IAE6B,CAAAv5B,IAAA,QAAApB,MAsBtB,WACJqB,KAAKg5B,gBAAkB,GACvBh5B,KAAK+4B,0BAA4B,EACjC/4B,KAAKia,MAAM,aAvEuB,CAASjX,QAE/CC,eAAA,CADCmL,kB,4BAGDnL,eAAA,CADCmL,kB,iCAGDnL,eAAA,CADCmL,kB,oCAGDnL,eAAA,CADCmL,kB,qCAPgB+qB,GAAqBl2B,eAAA,CADzCE,QACoBg2B,cCL0X,MCO3Y,GAAY,eACd,GACA,EACA,IACA,EACA,KACA,KACA,MAIa,M,sSCLf,IAAqBK,GAAgB,SAAAn6B,GAArC,SAAAm6B,IAAA,IAAAl6B,EAUkD,OAVlDC,eAAA,KAAAi6B,G,uBACYl6B,EAAAk2B,gBAA0B,EAC1Bl2B,EAAAm2B,kBAAmC,KACnCn2B,EAAAm6B,2BAAqC,GACrCn6B,EAAAI,SAAmB,EACnBJ,EAAAo6B,8BAAqC,GACrCp6B,EAAAs2B,mBAA6B,EAC7Bt2B,EAAAo2B,yBAA2B,GAC3Bp2B,EAAAq6B,6BAA+B,GAC/Br6B,EAAAw2B,uBAAiC,EACjCx2B,EAAAu2B,4BAAmC,GAAGv2B,EA6FjD,OAAAO,eAAA25B,EAAAn6B,GAAAS,eAAA05B,EAAA,EAAAz5B,IAAA,UAAApB,MA3FW,WACJqB,KAAK+2B,iBACR,CAAAh3B,IAAA,0BAAAG,IAED,WACI,GAAIF,KAAK05B,8BAA8B/zB,OAAS,EAAG,CAC/C,IAAI2yB,EAAmB,GAOvB,OANAt4B,KAAK05B,8BAA8B3Z,SAAQ,SAAC3B,GACxCA,EAAEwb,6BAA6B7Z,SAAQ,SAAC8Z,GACpC,IAAIC,EAAc,GAAH74B,OAAMmd,EAAE2b,qBAAoB,OAAA94B,OAAM44B,EAAIG,aACrD1B,EAAUj4B,KAAK,CAAEsE,GAAIk1B,EAAI/C,cAAe50B,KAAM23B,EAAIG,YAAaF,YAAaA,UAG7ExB,EAEX,MAAO,KACV,CAAAv4B,IAAA,eAAApB,MAAA,eAAAi4B,EAAAr2B,eAAAC,mBAAAC,MAEO,SAAAC,IAAA,IAAAC,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAEoB,OAFpBF,EAAAC,KAAA,EAEAd,KAAKN,SAAU,EAAKmB,EAAAE,KAAA,EACGC,iBAAad,IAAI,gCAA+B,OAAjES,EAAQE,EAAAK,KACdlB,KAAK05B,8BAAgC/4B,EAASQ,KAAKN,EAAAE,KAAA,gBAAAF,EAAAC,KAAA,EAAAD,EAAAQ,GAAAR,EAAA,YAEnDS,QAAQ2G,IAAI,4BAA4B,QAEnB,OAFmBpH,EAAAC,KAAA,GAExCd,KAAKN,SAAU,EAAMmB,EAAAa,OAAA,6BAAAb,EAAAc,UAAAjB,EAAA,wBAE5B,SAVaq2B,IAAY,OAAAH,EAAAh1B,MAAC,KAADC,WAAA,OAAZk1B,EAFb,IAEyB,CAAAh3B,IAAA,iBAAApB,MAAA,eAAAs7B,EAAA15B,eAAAC,mBAAAC,MAYlB,SAAAiH,EAAqB8hB,GAAa,OAAAhpB,mBAAAI,MAAA,SAAAgH,GAAA,eAAAA,EAAA9G,KAAA8G,EAAA7G,MAAA,OAEd,OAFc6G,EAAA9G,KAAA,EAElCd,KAAKN,SAAU,EAAKkI,EAAA7G,KAAA,EACGC,iBAAa6G,KAAK,gCACrC2hB,GAAS,OADC5hB,EAAA1G,KAEdlB,KAAKwB,OAAOC,OAAO,kBAAmB,uCAAuCmG,EAAA7G,KAAA,gBAAA6G,EAAA9G,KAAA,EAAA8G,EAAAvG,GAAAuG,EAAA,YAE7E5H,KAAKwB,OAAOC,OAAO,uBAAwB,gDAC3CH,QAAQ2G,IAAI,wBAAuBL,EAAAvG,IAAO,QAErB,OAFqBuG,EAAA9G,KAAA,GAE1Cd,KAAKN,SAAU,EAAMkI,EAAAlG,OAAA,6BAAAkG,EAAAjG,UAAA+F,EAAA,wBAE5B,SAZa2tB,EAAc9tB,GAAA,OAAA0yB,EAAAr4B,MAAC,KAADC,WAAA,OAAdwzB,EAZY,IAYE,CAAAt1B,IAAA,yBAAApB,MAcpB,SAAuBy2B,GAC3Bp1B,KAAKy1B,kBAAoBL,EAAY0B,cACrC92B,KAAKy5B,2BAA6BrE,EAAY4E,YAC9Ch6B,KAAKw1B,gBAAiB,IACzB,CAAAz1B,IAAA,wBAAApB,MAEO,SAAsBo7B,GAC1B/5B,KAAK01B,yBAA2BqE,EAChC/5B,KAAK41B,mBAAoB,IAC5B,CAAA71B,IAAA,4BAAApB,MAEO,SAA0B06B,EAAmBU,GACjD/5B,KAAK25B,6BAA+BI,EACpC/5B,KAAK61B,4BAA8BwD,EACnCr5B,KAAK81B,uBAAwB,IAChC,CAAA/1B,IAAA,oBAAApB,MAAA,eAAAu7B,EAAA35B,eAAAC,mBAAAC,MAEO,SAAA2H,EAAwBjH,GAAS,OAAAX,mBAAAI,MAAA,SAAAyH,GAAA,eAAAA,EAAAvH,KAAAuH,EAAAtH,MAAA,OAEb,OAFasH,EAAAvH,KAAA,EAEjCd,KAAKN,SAAU,EAAK2I,EAAAtH,KAAA,EACGC,iBAAa6G,KAAK,8CAA+C1G,GAAK,OAG7F,OAHckH,EAAAnH,KACdlB,KAAK41B,mBAAoB,EACzB51B,KAAKwB,OAAOC,OAAO,kBAAmB,4BACtC4G,EAAAtH,KAAA,EACMf,KAAK+2B,eAAc,OAAA1uB,EAAAtH,KAAA,iBAAAsH,EAAAvH,KAAA,GAAAuH,EAAAhH,GAAAgH,EAAA,YAEzBrI,KAAKwB,OAAOC,OAAO,uBAAwB,0CAA0C,QAEhE,OAFgE4G,EAAAvH,KAAA,GAErFd,KAAKN,SAAU,EAAM2I,EAAA3G,OAAA,6BAAA2G,EAAA1G,UAAAyG,EAAA,yBAE5B,SAba+xB,EAAiB3yB,GAAA,OAAA0yB,EAAAt4B,MAAC,KAADC,WAAA,OAAjBs4B,EAFb,IAE8B,CAAAp6B,IAAA,eAAApB,MAAA,eAAAy7B,EAAA75B,eAAAC,mBAAAC,MAevB,SAAAgI,EAAmBtH,GAAS,OAAAX,mBAAAI,MAAA,SAAA8H,GAAA,eAAAA,EAAA5H,KAAA4H,EAAA3H,MAAA,OAER,OAFQ2H,EAAA5H,KAAA,EAE5Bd,KAAKN,SAAU,EAAKgJ,EAAA3H,KAAA,EACGC,iBAAa6G,KAAK,gCAAiC1G,GAAK,OAG/E,OAHcuH,EAAAxH,KACdlB,KAAK81B,uBAAwB,EAC7B91B,KAAKwB,OAAOC,OAAO,kBAAmB,8CACtCiH,EAAA3H,KAAA,EACMf,KAAK+2B,eAAc,OAAAruB,EAAA3H,KAAA,iBAAA2H,EAAA5H,KAAA,GAAA4H,EAAArH,GAAAqH,EAAA,YAEzB1I,KAAKwB,OAAOC,OAAO,uBAAwB,uDAAuD,QAE7E,OAF6EiH,EAAA5H,KAAA,GAElGd,KAAKN,SAAU,EAAMgJ,EAAAhH,OAAA,6BAAAgH,EAAA/G,UAAA8G,EAAA,yBAE5B,SAbaywB,EAAY3wB,GAAA,OAAA6xB,EAAAx4B,MAAC,KAADC,WAAA,OAAZq3B,EAfiB,MAzEE,CAASl2B,QAAzBw2B,GAAgBv2B,eAAA,CAPpCE,eAAU,CACPkL,WAAY,CACRgsB,sCACAnC,oBACAiB,6BAGaK,cCbuY,MCOxZ,GAAY,eACd,GACA,EACAv6B,GACA,EACA,KACA,KACA,MAIa,gB,sKClByN,W,IAAiB,OAAE,EAAK,QAAU,GAAQ,oB,OAAC,EAAK,MAAG,S,YAAQ,qBAAE,qCAAE,YAAa,OAAEH,MAAM,CAAC,MAAO,GAAG,eAAQ,K,CAAU,SAAO,CAAE,OAAIuE,IAAG,GAAevE,KAAM,K,CAA8B,U,MAAuB,CAA0B,KAAO,GAAiB,OAAG,IAAC,GAAC,Y,CAAsE,iBAAC,OAAI,aAAe,EAAC,UAACA,iBAAM,EAAC,mBAAS,EAAC,MAAQ,iBAAS,IAAIuE,sBAAiB,YAACvE,OAAM,uBAAmD,a,MAAyB,CAAwB,QAAG,IAAC,GAAC,S,CAAoE,iBAAC,OAAI,aAAaY,UAAiCZ,iBAAM,EAAC,mBAAgB,EAAE,uBAAkEA,IAAO,sBAAQ,YAAC,OAAO,qBAAmBA,IAAM,uB,MAAC,CAAS,oBAAsGA,EAAM,6C,MAAM,CAAI,IAAM,GAAG,UAAiBA,GAAK,OAAC,C,MAAC,CAAU,KAAM,KAAK,CAACP,EAAG,OAAI,kDAAoE,CAAC,SAAUA,CAA+cO,MAAM,CAAC,IAAM,GAAI,KAAM,KAAK,CAACP,EAAG,OAAI,CAA+a,MAAO8E,CAAWtD,KAAIu6B,GAAuB,IAAM52B,KAAiL5E,GAAK,GAAC,qf,MAAC,CAAS,QAAIuE,IAAG,K,CAAuB,KAAO,gEAAmB,oU,OAAC,SAAcgY,CAAQ,MAAiBkf,UAAW,0GAAG,IAAC,yB,MAAC,C,KAAyCA,KAAmB,WAACjf,OAAqBvb,MAAI,EAAO,eAACwb,QAAG,EAADA,Q,WAA4B,EAAI,Y,wBAGtnE,YAAC,EAAGlY,WAAa,I,YAA4gB,OAAG,IAAC,QAAyB,GAAI,SAAQtE,GACjlC,gsBACGE,OAEK8N,IAAQ9N,K,+hCCIjB,IAAqBu7B,EAAsB,SAAAn7B,GAA3C,SAAAm7B,IAAA,IAAAl7B,EA0CG,OA1CHC,eAAA,KAAAi7B,G,sBACSl7B,EAAAm7B,OAAc,GACdn7B,EAAAI,SAAmB,EAEnBJ,EAAAgb,QAAkB8B,MAASE,OAAO,cAClChd,EAAA6c,UAAoBC,MAASC,SAAS,EAAG,SAASC,OAAO,cACzDhd,EAAAo7B,mBAA6B,EAC7Bp7B,EAAAi7B,WAAkB,CACzBI,YAAa,IAENr7B,EAAA+b,QAAe,CACtB,CACCqB,KAAM,kBACNG,MAAO,OACPle,MAAO,gBACPie,UAAU,GAEX,CACCF,KAAM,qBACN/d,MAAO,wBACPie,UAAU,GAEX,CACCF,KAAM,eACN/d,MAAO,eACPie,UAAU,GAEX,CACCF,KAAM,gBACN/d,MAAO,aACPie,UAAU,GAEX,CACCF,KAAM,kBACN/d,MAAO,gBACPie,UAAU,GAEX,CACCF,KAAM,YACN/d,MAAO,iBACPie,UAAU,IAEVtd,EA2DF,OAAAO,eAAA26B,EAAAn7B,GAAAS,eAAA06B,EAAA,EAAAz6B,IAAA,UAAApB,MAzDQ,WACPqB,KAAKC,eACL,CAAAF,IAAA,eAAApB,MAEO,SAAakjB,GACpB7hB,KAAKmc,UAAYC,IAAOyF,GAAMvF,OAAO,gBACrC,CAAAvc,IAAA,aAAApB,MACO,SAAWkjB,GAClB7hB,KAAKsa,QAAU8B,IAAOyF,GAAMvF,OAAO,gBACnC,CAAAvc,IAAA,iBAAAG,IAED,WAA0B,IAAAgG,EAAA,KACzB,IAAKlG,KAAKy6B,SAAWz6B,KAAKy6B,OAAOG,WAAY,MAAO,GACpD,IAAIhR,EAAW5pB,KAAKy6B,OAAOG,WAAWv0B,QACrC,SAACkY,GAAU,OAAK4P,KAAK0M,IAAItc,EAAMuc,gBAAkB50B,EAAKw0B,sBAEvD,OAAO9Q,IACP,CAAA7pB,IAAA,gBAAAG,IAED,WAAyB,IAAAwG,EAAA,KACxB,IAAK1G,KAAKy6B,SAAWz6B,KAAKy6B,OAAOG,WAAY,MAAO,GACpD,IAAMxO,EAAUpsB,KAAKy6B,OAAOG,WAAWnd,QAAO,SAAC2P,EAAa7O,GAS3D,OARK6O,EAAO7O,EAAMwc,yBACjB3N,EAAO7O,EAAMwc,uBAAyB,CAAEC,QAAS,EAAGC,UAAW,IAE5D9M,KAAK0M,IAAItc,EAAMuc,gBAAkBp0B,EAAKg0B,mBACzCtN,EAAO7O,EAAMwc,uBAAuBE,YAEpC7N,EAAO7O,EAAMwc,uBAAuBC,UAE9B5N,IACL,IAEH,OAAOpe,OAAOwb,QAAQ4B,GAASpqB,KAAI,SAAAk5B,GAAA,IAAAC,EAAAhY,eAAA+X,EAAA,GAAEE,EAAQD,EAAA,GAAEE,EAAMF,EAAA,SAAsB,CAC1EC,WACAJ,QAASK,EAAOL,QAChBC,UAAWI,EAAOJ,gBAEnB,CAAAl7B,IAAA,aAAApB,MAAA,eAAA2B,EAAAC,eAAAC,mBAAAC,MAIO,SAAAC,IAAA,IAAAC,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAEc,OAFdF,EAAAC,KAAA,EAENd,KAAKN,SAAU,EAAKmB,EAAAE,KAAA,EACGC,iBAAad,IAAI,sCAADe,OACAjB,KAAKmc,UAAS,QAAAlb,OAAOjB,KAAKsa,UAChE,OAFK3Z,EAAQE,EAAAK,KAGdlB,KAAKy6B,OAAS95B,EAASQ,KAAKN,EAAAE,KAAA,gBAAAF,EAAAC,KAAA,EAAAD,EAAAQ,GAAAR,EAAA,YAE5BS,QAAQC,MAAM,yCACdD,QAAQC,MAAKV,EAAAQ,IACbrB,KAAKwB,OAAOC,OAAO,uBAAwB,iDAAiD,QAEvE,OAFuEZ,EAAAC,KAAA,GAE5Fd,KAAKN,SAAU,EAAMmB,EAAAa,OAAA,6BAAAb,EAAAc,UAAAjB,EAAA,wBAEtB,SAdaT,IAAU,OAAAK,EAAAsB,MAAC,KAADC,WAAA,OAAV5B,EAJb,MAlFyC,CAAS+C,QAsFnDC,eAAA,CAFCC,eAAM,aACNA,eAAM,Y,+BArFas3B,EAAsBv3B,eAAA,CAL1CE,eAAU,CACVkL,WAAY,CACXwU,sBAGmB2X,WCXoY,I,YCOrZp3B,EAAY,eACd,EACA,EACAnE,GACA,EACA,KACA,KACA,MAIa,aAAAmE,E,iOClB8Q7E,W,IAAagF,O,EAAyBhF,EAAI+8B,MAAO,GAAK,oB,OAACz8B,QAAW,qBAAS,OAAIN,cAAYg9B,GAAwC,KAAU,KAASx7B,MAAQ,Y,EAAW,gBAAS,U,MAAE,CAAE,eAAS,UAAgEA,MAAI,CAAIsD,MAAG,UAA4BvE,SAAM,YAAC,UAAe,GAAsB,WAAC,Y,CAAiC,gCAAqB08B,YAAc,iBAAIn4B,IAAG,EAAO,GAAI,MAAC,CAAC,OAAQ,KAA0C,iDAAC,UAAE,IAAK,GAAoDtD,GAAI,4BAAE,MAAK,CAA4BjB,UAAM,qBAAiC,GAAC,CAAG,aAAC,eAAC,eAAeP,EAAIk9B,kBAAgD,UAAG,GAAG,CAAY,MAAC,YAAC,OAAQ,cAASxuB,MAAkC,+CAAE,IAAK,GAAmDlN,GAAI,4BAAG,MAAK,CAA4BjB,UAAM,oBAAkC,GAAC,CAAG,aAAC,eAAC,eAAeP,EAAIk9B,kBAAgD,UAAG,GAAG,CAAY,MAAC,YAAC,OAAQ,cAASxuB,MAAmC,8CAAE,IAAK,IAAyKvO,GAAK,2BAAC,C,MAAM,CAAe6E,UAAS,qB,GAAgC,CAAC1E,aAAW,eAAS,mCAAmBC,EAAK,OAAC,C,GAAC,CAAgB,MAAQ,YAAM,4B,CAA+ByE,iCAAwB,mI,MAAI,CAAe,MAAC,UAAC1E,SAAU,SAAC,GAAY,aAA+JC,WAAM,Y,CAAsE,SAAQ,C,MAAO,CAAoC,cAAG,MAAC,O,MAA4B,CAA+D,mBAAE,qBAACJ,EAAM,cAAsC6E,WAAS,e,CAA8D,EAAC,qH,MAAC1E,CAAqC,mEAAIwE,MAAG,OAAgBvE,MAAM,2B,GAAqE,CAAuB,KAAO,SAAK0F,GAAa,+D,MAAgC,CAA6E,iCAAE,qBAAC9F,EAAM,sCAA6C6E,WAAS,8BAAqE,EAAC,Q,MAAC1E,CAA4C,kEAAIwE,MAAG,eAAgBvE,MAAM,gB,GAAoG,CAAe,KAAO,SAAK48B,GAAwB,6E,MAAgC,CAA+D,wCAAE,qBAACh9B,EAAM,6CAAsC6E,WAAS,qCAA8D,EAAC,Q,MAAC1E,CAAqC,iGAAIwE,MAAG,OAA6F,MAAU,EAAK,yBAAgB,GAAIs4B,CAA+F78B,KAAM,YAAC,sBAAY88B,KAAkB,oC,MAA+B,C,MAAO,EAAED,oBAAY,K,SAAS,SAARp4B,G,EAAyBhF,KAAIsF,EAAK83B,oBAAoB,W,WAAY,8BAAiB,EAAE,SAAM,sBAAe,mD,OAAM,EAAC,O,IAAC,EAAQA,M,CAAoD,kBAAf,EAAM,WAAS,yC,MAAC,CAA0C,2BAAG,MAAC,a,MAAyBA,CAAgC,cAAE,qBAACj9B,EAAM,mBAAqB6E,WAAS,kBAA8C,a,MAAC1E,CAAwB,0CAAI,KAAG,SAAK,MAAK,iCAAiD,IAAyBN,KAAIyF,SAAkB,4BAAqExF,OAA4BM,MAAM,QAAC,SAAUP,SAAU,GAAC,OAAYA,EAAIiW,YAAY,6BAA0B,OAAyB,iCAAC,IAAIjW,MAAO,YAC1lI,mB,6ZCCas9B,EAAc/7B,gBAA3B,SAAA+7B,IAAAt8B,eAAA,KAAAs8B,GACU,KAAAC,OAAiB,EACjB,KAAA55B,KAAe,GACf,KAAA0Z,YAAsB,GACtB,KAAAc,KAAe,GACf,KAAAqf,gBAA0B,GAC1B,KAAA/E,mBAA6B,EAC7B,KAAAgF,WAA4C,IAAIvyB,MAChD,KAAAwyB,UAAoB,K,wBCV0D,EAAU,W,IAAgBn9B,EAAM,K,EAAC,WAAyB,EAACP,MAAI29B,Y,OAAU,SAAc7gB,CAAO,MAAC,CAACC,eAAgBQ,GAAK/b,MAAI,EAAO,UAACwb,QAAG,EAADA,S,YAAqC,O,wBAAiChd,G,MAAmC,SAAC,IAAI8E,MAAQ,SAAQ,GAA8Z,OAAU,EAAK,aAAC,kBAAuL,CAAC,EAAE,KAAI,GAAM9E,GAAG,eAAI,EAAeA,GAAG,EAAIA,KAAI49B,wBAA6B9Y,EAAI,KAAG,qBAAwB,EAAI,KAAQ,kRAACvkB,OAAM,SAAC,MAAO,MAAG,+IAAG,GAAC,qG,MAAC,C,KAA+B,I,GAA+D,CAAC,kBAA8C,OAAxC,EAAC,kBAAuC,mCACxtC,8C,+RCID,IAAqBs9B,EAAqB,SAAA/8B,GAA1C,SAAA+8B,IAAA,IAAA98B,EAuCG,OAvCHC,eAAA,KAAA68B,G,sBAGS98B,EAAA+b,QAAe,CACtB,CACCqB,KAAM,KACNG,MAAO,OACPD,UAAU,GAEX,CACCF,KAAM,UACNG,MAAO,OACPD,UAAU,GAEX,CACCF,KAAM,OACNE,UAAU,GAEX,CACCF,KAAM,eACNE,UAAU,GAEX,CACCF,KAAM,OACNE,UAAU,GAEX,CACCF,KAAM,YACNE,UAAU,GAEX,CACCF,KAAM,QACNE,UAAU,GAGX,CACCF,KAAM,GACNE,UAAU,IAEVtd,EAiBF,OAAAO,eAAAu8B,EAAA/8B,GAAAS,eAAAs8B,EAAA,EAAAr8B,IAAA,eAAApB,MAfQ,SAAagG,GACpB3E,KAAKia,MAAM,eAAgBtV,KAC3B,CAAA5E,IAAA,iBAAApB,MAEO,SAAegG,GACtB3E,KAAKia,MAAM,iBAAkBtV,KAC7B,CAAA5E,IAAA,yBAAApB,MAEO,SAAuB09B,GAC9B,OAAIA,EAASL,WAAW31B,QAAO,SAAA4a,GAAC,MAAoB,kBAAhBA,EAAEqb,WAAiD,UAAhBrb,EAAEqb,aAAuB32B,OAAS,EACjG02B,EAASL,WAAW31B,QAAO,SAAA4a,GAAC,MAAoB,kBAAhBA,EAAEqb,WAAiD,UAAhBrb,EAAEqb,aAAuB,GAAG39B,MAE/F,cArDgC,CAASqE,QAE/CC,eAAA,CADCmL,kB,gCADgBguB,EAAqBn5B,eAAA,CADzCE,QACoBi5B,WCL0X,I,YCO3Yh5B,EAAY,eACd,EACA,EACA,GACA,EACA,KACA,KACA,MAIa,EAAAA,E,8SCNf,IAAqBm5B,EAAoB,SAAAl9B,GAAzC,SAAAk9B,IAAA,IAAAj9B,EAuBM,OAvBNC,eAAA,KAAAg9B,G,sBACYj9B,EAAAI,SAAmB,EACnBJ,EAAA6F,QAAkB,EAClB7F,EAAA48B,UAAmC,IAAIzyB,MAC1CnK,EAAA0E,YAAsB,EACtB1E,EAAAk9B,oBAAsC,IAAIX,EAC1Cv8B,EAAAkV,SAAmB,EACnBlV,EAAAi8B,wBAA+B,CACtC,CAAEr5B,KAAM,mBAAoByC,GAAI,GAChC,CAAEzC,KAAM,UAAWyC,GAAI,GACvB,CAAEzC,KAAM,YAAayC,GAAI,KAElBrF,EAAAs8B,mBAA0B,CACjC,YACA,cAEOt8B,EAAAkF,aAAeqB,OAAMrB,aACrBlF,EAAAm9B,wBAA0B52B,OAAM42B,wBAChCn9B,EAAAo8B,wBAA0B71B,OAAM61B,wBAChCp8B,EAAAo9B,8BAAqC,CACtC,SAACj3B,GAAS,QAAOA,EAAE4D,YAAc,uBACjC,SAAC5D,GAAS,OAAM8S,MAAM9S,IAAM,wBAC5B,SAACA,GAAS,OAAKnG,EAAKq9B,cAAcl3B,IAAM,GAAK,qCAC/CnG,EAqIL,OAAAO,eAAA08B,EAAAl9B,GAAAS,eAAAy8B,EAAA,EAAAx8B,IAAA,UAAApB,MAnIW,WACVqB,KAAK48B,kBACF,CAAA78B,IAAA,mBAAAG,IAEJ,WACC,OAAOF,KAAKk8B,UAAU71B,QAAO,SAAC+C,GAAiB,OAA6B,GAAxBA,EAAE4tB,wBACtD,CAAAj3B,IAAA,oBAAAG,IACD,WACC,OAAOF,KAAKk8B,UAAU71B,QAAO,SAAC+C,GAAiB,OAA6B,IAAxBA,EAAE4tB,wBACtD,CAAAj3B,IAAA,oBAAAG,IACD,WACC,OAAOF,KAAKk8B,UAAU71B,QAAO,SAAC+C,GAAiB,OAA6B,GAAxBA,EAAE4tB,wBACtD,CAAAj3B,IAAA,UAAAG,IAED,WACC,IAAIsD,EAAMq5B,aAAaC,QAAQ,WAC/B,OAAW,MAAPt5B,EACIsW,SAAStW,GAEV,GACPmT,IAED,SAAoBomB,GACnBF,aAAaG,QAAQ,UAAWD,EAAO1zB,cACvC,CAAAtJ,IAAA,kBAAAG,IAED,WACC,OAAOF,KAAKk8B,UAAUv2B,OAAS,IAC/B,CAAA5F,IAAA,gBAAApB,MAAA,eAAAs+B,EAAA18B,eAAAC,mBAAAC,MAEO,SAAAC,IAAA,IAAAC,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAEc,OAFdF,EAAAC,KAAA,EAENd,KAAKN,SAAU,EAAKmB,EAAAE,KAAA,EACGC,iBAAad,IAAI,4BAA2B,OAA7DS,EAAQE,EAAAK,KACdlB,KAAKk8B,UAAYv7B,EAASQ,KAAKN,EAAAE,KAAA,gBAAAF,EAAAC,KAAA,EAAAD,EAAAQ,GAAAR,EAAA,YAE/Bb,KAAKwB,OAAOC,OAAO,uBAAwB,0CAC3CH,QAAQ2G,IAAGpH,EAAAQ,IAAM,QAEI,OAFJR,EAAAC,KAAA,GAEjBd,KAAKN,SAAU,EAAMmB,EAAAa,OAAA,6BAAAb,EAAAc,UAAAjB,EAAA,wBAEtB,SAXak8B,IAAa,OAAAK,EAAAr7B,MAAC,KAADC,WAAA,OAAb+6B,EAFb,IAE0B,CAAA78B,IAAA,eAAApB,MAAA,eAAAu+B,EAAA38B,eAAAC,mBAAAC,MAanB,SAAAiH,IAAA,OAAAlH,mBAAAI,MAAA,SAAAgH,GAAA,eAAAA,EAAA9G,KAAA8G,EAAA7G,MAAA,UACFf,KAAKwU,UAAWxU,KAAKmF,OAAM,CAAAyC,EAAA7G,KAAA,QACG,OAAlCO,QAAQ2G,IAAI,sBAAsBL,EAAAwP,OAAA,iBAIf,OAJexP,EAAA9G,KAAA,EAIlCd,KAAKmF,QAAS,EAAKyC,EAAA7G,KAAA,EACbC,iBAAa6G,KAAK,2BAA4B7H,KAAKw8B,qBAAoB,OAC7Ex8B,KAAKm9B,qBACLn9B,KAAKgE,YAAa,EAClBhE,KAAKwB,OAAOC,OAAO,kBAAmB,oCAAoCmG,EAAA7G,KAAA,iBAAA6G,EAAA9G,KAAA,GAAA8G,EAAAvG,GAAAuG,EAAA,YAE1E5H,KAAKwB,OAAOC,OAAO,uBAAwB,4CAC3CH,QAAQ2G,IAAGL,EAAAvG,IAAM,QAEG,OAFHuG,EAAA9G,KAAA,GAEjBd,KAAKmF,QAAS,EAAMyC,EAAAlG,OAAA,6BAAAkG,EAAAjG,UAAA+F,EAAA,yBAErB,SAjBa01B,IAAY,OAAAF,EAAAt7B,MAAC,KAADC,WAAA,OAAZu7B,EAba,IAaD,CAAAr9B,IAAA,cAAApB,MAAA,eAAA0+B,EAAA98B,eAAAC,mBAAAC,MAmBlB,SAAA2H,EAAkBvF,GAAY,OAAArC,mBAAAI,MAAA,SAAAyH,GAAA,eAAAA,EAAAvH,KAAAuH,EAAAtH,MAAA,OAEjB,OAFiBsH,EAAAvH,KAAA,EAEpCd,KAAKmF,QAAS,EAAKkD,EAAAtH,KAAA,EACbC,iBAAa6G,KAAK,2BAA4B,CACnDi0B,OAAQ,EACR55B,KAAM,eACN0Z,YAAa,MACbc,KAAM,MACNsf,WAAY,GACZhF,mBAAoBn0B,EACpBo5B,UAAU,IACT,OACFj8B,KAAKwB,OAAOC,OAAO,kBAAmB,oCACtC67B,SAAShL,SAASjqB,EAAAtH,KAAA,gBAAAsH,EAAAvH,KAAA,EAAAuH,EAAAhH,GAAAgH,EAAA,YAElBrI,KAAKwB,OAAOC,OAAO,uBAAwB,4CAC3CH,QAAQ2G,IAAGI,EAAAhH,IAAM,QAEG,OAFHgH,EAAAvH,KAAA,GAEjBd,KAAKmF,QAAS,EAAMkD,EAAA3G,OAAA,6BAAA2G,EAAA1G,UAAAyG,EAAA,wBAErB,SApBam1B,EAAWh2B,GAAA,OAAA81B,EAAAz7B,MAAC,KAADC,WAAA,OAAX07B,EAnBY,IAmBD,CAAAx9B,IAAA,eAAApB,MAsBjB,SAAagG,GACpB3E,KAAKw8B,oBACJv1B,KAAKC,MAAMD,KAAKE,UAAUnH,KAAKk8B,UAAU71B,QAAO,SAAC+C,GAAiB,OAAKA,EAAE0yB,SAAWn3B,KAAI,KACzF3E,KAAKgE,YAAa,IAClB,CAAAjE,IAAA,iBAAApB,MAAA,eAAA6+B,EAAAj9B,eAAAC,mBAAAC,MAEO,SAAAgI,EAAqB9D,GAAU,OAAAnE,mBAAAI,MAAA,SAAA8H,GAAA,eAAAA,EAAA5H,KAAA4H,EAAA3H,MAAA,OAElB,OAFkB2H,EAAA5H,KAAA,EAErCd,KAAKmF,QAAS,EAAKuD,EAAA3H,KAAA,EACbC,iBAAa6G,KAAK,qCAAD5G,OAAsC0D,IAAK,OAClE3E,KAAKy9B,oBAAoB94B,GACzB3E,KAAKwB,OAAOC,OAAO,kBAAmB,qBAAqBiH,EAAA3H,KAAA,gBAAA2H,EAAA5H,KAAA,EAAA4H,EAAArH,GAAAqH,EAAA,YAE3D1I,KAAKwB,OAAOC,OAAO,uBAAwB,yCAC3CH,QAAQ2G,IAAGS,EAAArH,IAAM,QAEG,OAFHqH,EAAA5H,KAAA,GAEjBd,KAAKmF,QAAS,EAAMuD,EAAAhH,OAAA,6BAAAgH,EAAA/G,UAAA8G,EAAA,wBAErB,SAZa+yB,EAAch0B,GAAA,OAAAg2B,EAAA57B,MAAC,KAADC,WAAA,OAAd25B,EAFb,IAE2B,CAAAz7B,IAAA,qBAAApB,MAcpB,WAAkB,IAAAuH,EAAA,KACrB9F,EAAQJ,KAAKk8B,UAAUjJ,QAC1BjzB,KAAKk8B,UAAU71B,QAAO,SAAC+C,GAAiB,OAAKA,EAAE0yB,SAAW51B,EAAKs2B,oBAAoBV,UAAQ,IAC5F97B,KAAKk8B,UAAUn0B,OAAO3H,EAAO,EAAG6G,KAAKC,MAAMD,KAAKE,UAAUnH,KAAKw8B,yBAC/D,CAAAz8B,IAAA,sBAAApB,MAEO,SAAoBm9B,GAC3B,IAAI17B,EAAQJ,KAAKk8B,UAAUjJ,QAC1BjzB,KAAKk8B,UAAU71B,QAAO,SAAC+C,GAAiB,OAAKA,EAAE0yB,SAAWA,KAAQ,IACnE97B,KAAKk8B,UAAUn0B,OAAO3H,EAAO,KAC7B,CAAAL,IAAA,gBAAApB,MAEO,SAAcA,GACrB,IAAI0f,EAAIyG,WAAWnmB,GACnB,GAAU,OAAN0f,QAAoB1I,IAAN0I,GAAyBqf,MAANrf,EACpC,OAAO,EAER,GAAI8P,KAAKwP,MAAMtf,KAAOA,EACrB,OAAO,EAER,IAAIuf,EAAWvf,EAAEhV,WAAWmiB,MAAM,KAClC,OAAIoS,EAASj4B,OAAS,EACdi4B,EAAS,GAAGj4B,OAEZ,MAzJ+B,CAAS3C,QAA7Bu5B,EAAoBt5B,eAAA,CALxCE,eAAU,CACPkL,WAAY,CACd+tB,4BAGmBG,WCZ2Y,ICO5Z,EAAY,eACd,EACA,EACAt9B,GACA,EACA,KACA,KACA,MAIa,e,sHClB6BoE,EAAOw6B,W,IAASv/B,EAAM,KAAuB,EAAO+E,EAAG,MAAM,GAA6C,oB,OAAC,WAAgB,kBAAE,OAAG,cAAa,MAAiC,EAAE,iBAC3N,uBACGpE,I,iaCCJ,IAAMC,EAAQC,EAAQ,QAGD2+B,EAAkB,SAAAz+B,GAAvC,SAAAy+B,IAAA,IAAAx+B,EAGqC,OAHrCC,eAAA,KAAAu+B,G,sBACYx+B,EAAAE,MAAa,KACbF,EAAA6B,KAAY,GACZ7B,EAAAI,SAAmB,EAAMJ,EAqFpC,OAAAO,eAAAi+B,EAAAz+B,GAAAS,eAAAg+B,EAAA,EAAA/9B,IAAA,UAAApB,MApFW,WAEJqB,KAAKC,eACR,CAAAF,IAAA,aAAApB,MAAA,eAAA2B,EAAAC,eAAAC,mBAAAC,MAEO,SAAAC,IAAA,IAAAC,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAGoB,OAHpBF,EAAAC,KAAA,EAGAd,KAAKN,SAAU,EAAKmB,EAAAE,KAAA,EACGC,iBAAad,IAAI,iCAAgC,OAAlES,EAAQE,EAAAK,KACdlB,KAAKmB,KAAOR,EAASQ,KACrBnB,KAAKoB,gBAAgBP,EAAAE,KAAA,gBAAAF,EAAAC,KAAA,EAAAD,EAAAQ,GAAAR,EAAA,YAErBS,QAAQC,MAAM,8BACdD,QAAQC,MAAKV,EAAAQ,IACtBrB,KAAKwB,OAAOC,OAAO,uBAAwB,+CAA+C,QAE5D,OAF4DZ,EAAAC,KAAA,GAEjFd,KAAKN,SAAU,EAAMmB,EAAAa,OAAA,6BAAAb,EAAAc,UAAAjB,EAAA,wBAE5B,SAdaT,IAAU,OAAAK,EAAAsB,MAAC,KAADC,WAAA,OAAV5B,EAFb,IAEuB,CAAAF,IAAA,cAAApB,MAgBhB,WACJ,IAAMo/B,EAAO,GAQb,OAPAA,EAAK19B,KAAKL,KAAKmB,KAAKa,KAAI,SAACge,GAAK,OAAKA,EAAEge,cACrCD,EAAK19B,KAAKL,KAAKmB,KAAKa,KAAI,SAACge,GAAK,OAAKA,EAAEie,6BACrCF,EAAK19B,KAAKL,KAAKmB,KAAKa,KAAI,SAACge,GAAK,OAAKA,EAAEke,2BACrCH,EAAK19B,KAAKL,KAAKmB,KAAKa,KAAI,SAACge,GAAK,OAAKA,EAAEme,+BACrCJ,EAAK19B,KAAKL,KAAKmB,KAAKa,KAAI,SAACge,GAAK,OAAKA,EAAEoe,4BAErC98B,QAAQ2G,IAAI81B,EAAK,IACV,CAAC,CACI37B,MAAO,sBACPjB,KAAM48B,EAAK,GACXM,YAAa,yBACb/7B,gBAAiB,0BAClB,CACCF,MAAO,8BACPjB,KAAM48B,EAAK,GACXM,YAAa,sBACbC,MAAM,GACP,CACCl8B,MAAO,uCACPjB,KAAM48B,EAAK,GACXM,YAAa,wBACbC,MAAM,GACP,CACCl8B,MAAO,wBACPjB,KAAM48B,EAAK,GACXM,YAAa,uBACbC,MAAM,MAErB,CAAAv+B,IAAA,gBAAApB,MAEO,WAEQ,MAAdqB,KAAKR,OACRQ,KAAKR,MAAMgD,UAGN,IAAMC,EAAOzC,KAAK0C,MAAMC,cAAsBC,WAAW,MACzD5C,KAAKR,MAAQ,IAAIN,EAAMuD,EAAK,CACxBI,KAAM,OACN1B,KAAM,CACFY,OAAQ/B,KAAKmB,KAAKa,KAAI,SAACge,GAAK,OAAKA,EAAEge,aACnC77B,SAAUnC,KAAK8C,eAGnBwrB,QAAS,CACLiQ,SAAU,CACNC,KAAM,CACFC,QAAS,IAGjBC,UAAW,CACPC,SAAU,GAEdC,MAAO,CACHC,kBAAmB,GAEvBC,4BAA6B,KAGrC9+B,KAAKR,MAAMuD,aAtFoB,CAASC,QAA3B86B,EAAkB76B,eAAA,CADtCE,QACoB26B,WCNiY,I,YCOlZ16B,EAAY,eACd,EACA,EACAnE,GACA,EACA,KACA,KACA,MAIa,aAAAmE,E,sHClBqG,W,IAAwB,OAAC1E,EAAK,EAAC,SAAQH,EAAIiF,MAAI,Y,OAACD,SAAS,C,MAAmB,CAAQ,eAAC,UAAiB,OAAIF,MAAG,EAAO,IAAEtD,SAAI,SAAgB,GAACjB,EAAM,OAAY,mBAA6CiB,GAAI,QAAiBjB,IAAK,iB,MAAE,CAAW,YAA6CiB,GAAI,yBAAkB,UAACjB,IAAK,iB,MAAE,CAAW,YAAqEA,GAAK,GAAC,gC,IAAC,mBAA2B,OAAIP,OAAO,K,CAA6D,EAAI,GAAC,oDAAuB,OAAIA,GAAM,yB,CAAqE,EAAI,GAAC,mDAA0B,OAAIA,GAAM,0B,CAAoE,EAAI,GAAC,0DAAqB,OAAIA,GAAM,6B,CAAmE,EAAI,GAAC,yDAAsB,OAAIA,GAAM,wB,CAAkE,EAAI,GAAC,wDAA0B,OAAIA,GAAM,yB,CAA0D,EAAI,GAAC,uDAAoC,OAAIA,GAAM,6B,CAAwE,EAAI,GAAC,+CAA0B,OAAIA,GAAM,uC,CAAyE,EAAI,GAAC,6DAAuB,OAAIA,GAAM,6B,CAAgDI,KAAOJ,2BAAQ,mC,MAACgF,C,GAA6BC,0B,CAAS3E,0BAAW,UAAK,OAAIwE,MAAG,MAActD,SAAI,YAAqB,EAAC,OAAiC,WAAUyD,QAAO,GAAG,OAAI,CAAczD,IAAI,kBAAkB,CAACsD,EAAG,yBAAyB,CAACvE,MAAM,CAAC,IAAMP,EAAIiF,QAAQ,GAAGH,EAAG,QAActD,IAAI,kBAAoB,CAACsD,EAAG,yBAA0B,CAAEvE,MAAM,CAAC,IAAMP,EAAIiF,QAAQ,GAAG,EAAG,OAAI,CAC7yD,wBACGvE,8BAAoB,CAExB,MAAS8N,C,2OCJqN,G,UAAA,WAAC,IAAG1J,EAAG,KAAUvE,EAAK,EAAC,SAAO,EAAG,kB,OAAC,EAAK,MAAG,W,YAAS,O,MAAC,CAAS,SAAIuE,eAAgB,K,CAAS,U,MAA6B,CAAuB,OAA0B,KAAO,KAAkBS,CAAE,EAAC,Q,MAAC,C,KAAuC,GAA+B,OAAC,OAAI,OAAO,K,CAAiB,gBAAS,C,MAAM,CAAI,aAAM,YAAE,mBAAIT,mBAAiB,EAACvE,MAAM,iB,GAA4B,CAAuB,sBAAoB,SAAI,GAAC,OAAQ,uBAAqB,a,MAAuC,CAA6B,QAAC,OAAI,IAAM,K,CAAkB,gBAAS,C,MAAM,CAAG,uBAAIuE,iBAAW,EAACvE,mBAAM,EAAC,uBAA6D,GAAC,CAAG,sBAAC,YAAC,OAAQ,aAASmO,QAA8C,aAAC,OAAI1O,KAAO,GAAuEO,IAAM,K,CAAwB,SAAQ,CAAqC,MAAC,CAAG,SAAC,UAAC,MAAQ,gC,GAAqCP,CAAsB,kBAAC,aAAIA,EAAM,sB,CAAkH,gEAAsB,U,MAAC,CAA4E,mBAAG,MAAC,uC,GAA0B,CAA6B,kBAAC,iBAAIA,EAAM,sB,CAA+J,KAAO,kEAAG,U,YAAC,gBAAiB,OAAI8E,SAAG,EAAW,QAAC7E,MAAW,qE,GAAe,CAAS,eAAiB,GAAE,+B,CAAwB,oEAAS,kDAAE,mBAAE,MAAOkB,CAAmCZ,MAAM,GAAC,eAAe,KAAoB,WAAG,YAAU,OAA4CN,OAAmBM,IAAM,GAAC,iBAAU,KAAkB,WAAE,MAAK,CAAYN,OAAW,K,CAAe,UAAQ,U,MAAC,CAAS,iBAAI6E,MAAG,YAAiB,EAAK,MAAC,kCAAE,mBAAE,MAAK,CAA8C7E,MAAW,GAAiBD,eAAO,KAAmE,CAACA,EAAG,OAAQ2c,CAAgD1c,YAAY,OAAc,MAAMkF,CAAyClF,OAA6BD,KAAOA,KAAgH,CAACA,EAAG,OAAI,CAAyBC,OAA6BD,IAAOA,KAAwH,CAACA,EAAG,KAAI,4BAA+B,UAACC,YAAY,eAAgB,CAACD,EAAImF,GAAGnF,4BAAc,UAAiFC,YAAY,gBAAe,CAACD,EAAImF,GAAG,4BAAgCL,EAAG,MAAM,EAAC,QAAC7E,YAAY,eAAgB,CAACD,EAAImF,GAAGnF,2BAAWwgC,SAA4B,CAAiCvgC,YAAY,gBAAe,CAACD,EAAImF,GAAG,wCAA+B,qCAAClF,YAAY,eAAgB,CAACD,EAAImF,GAAGnF,cAAWygC,SAAYr5B,CAA+BnH,YAAY,gBAAe,CAACD,EAAImF,GAAG,wCAAuC,6CAAClF,YAAY,eAAgB,CAACD,EAAImF,GAAGnF,qBAAc,UAAkFC,YAAY,gBAAe,CAACD,EAAImF,GAAG,wCAAuC,+CAAClF,YAAY,eAAgB,CAACD,EAAImF,GAAGnF,gCAAc,SAA8BA,CAAoDC,YAAY,gBAAe,CAACD,EAAImF,GAAG,uCAA0C,0BAAClF,YAAY,eAAgB,CAACD,EAAImF,GAAGnF,qBAAW0gC,UAA8DzgC,YAAY,gBAAe,CAACD,EAAImF,GAAG,mBAAuB,WAAM,EAAO,gBAAClF,YAAY,eAAgB,CAACD,EAAImF,GAAGnF,6BAAc,UAAmEO,YAAM,gB,CAAC,KAAM,wFAAE,2BAAG,CAACuE,EAAG,gCAAgB,UAACvE,YAAM,gB,CAAC,UAAa,EAAC,GAAI,6BAAL,CAAK,gD,YAAUP,e,CAAc,qCAAW,UAAK,4BAAI,GAAG,GAAG,EAAC,KAAS,2DAACO,YAAM,e,CAAC,KAAM,oCAAE,4BAAG,CAACuE,EAAG,UAAe,GAAC,6BAAhB,CAAgB,gCAACvE,MAAM,CAAC,S,CAA0C,kBAAW,CAAK,OAAI,YAAO,KAAUA,OAAM,YAAC,SAAM,UAAMuE,GAAG,UAAiBvE,MAAM,CAAC,S,CAA0C,kBAAW,CAAK,OAAI,YAAYuE,KAAavE,OAAM,YAAC,mBAAyBJ,GAAM,U,MAAM,CAAgB6E,S,CAAyC,EAAC,iB,MAAC1E,CAAqB,iBAAIwE,OAAU,EAAC,UAACtD,SAAI,UAAmB,QAAS,aAAE,OAAIxB,eAAO,UAA2CO,MAAM,CAAC,QAAS,SAAE,qBAAIP,EAAM,SAAC,GAA2CI,WAAWugC,a,GAAmC3gC,OAAI2gC,C,IAAa,Y,MAACrgC,CAAqB,YAAqBkB,GAAI,8BAAY,IAAK,UAAgBvB,OAA0BM,OAAM,K,CAA+B,KAAO,iBAAKqgC,SAAoB,C,MAAC,CAAoC,QAAW,SAAI,kBAAe,GAAG,cAAK,wB,CAAkE,UAAC,IAAC,aAAC7jB,UAAgBQ,C,YAAS,c,MAAW,C,QAAwBzY,EAAG,gB,MAAkJ7E,uB,WAAqCD,EAAI2c,mBAA6G,eAAG,mBAAyBnb,GAAG,CAAasD,oBAAiB,YAAC7E,qBAAkB,I,YAAmB,EAAc,GAAC,EAAE,YAAI6E,GAAG,SAAW,GAAC7E,MAAW,GAAC,KAAM,iHAAM,YAAC,iBAAM,GAAG,2GAAaD,GAAM,EAAEA,OAAI6gC,CAAoC,e,CAAoBr/B,EAAG,OAAOs/B,C,YAAe,O,MAAC,CAAQ,SAAE,eAAeh8B,KAC/kL,WACGpE,mBAEJ,MAAS8N,C,opBCJLA,EAAS,WAAkB,IAAIxO,EAAIyB,KAAKqD,EAAG9E,EAAIs/B,MAAMx6B,GAAU9E,EAAIs/B,MAAMyB,YAAY,OAAOj8B,EAAG,MAAM,CAACA,EAAG,KAAK,CAAC9E,EAAImF,GAAGnF,EAAI2c,GAAG3c,EAAI8vB,UAAUhrB,EAAG,OAAO,CAAC7E,YAAY,eAAe,CAACD,EAAImF,GAAG,4BAA4BL,EAAG,OAAO,CAAC7E,YAAY,gBAAgB,CAACD,EAAImF,GAAGnF,EAAI2c,GAAG3c,EAAIghC,gBAAgBl8B,EAAG,MAAMA,EAAG,OAAO,CAAC7E,YAAY,eAAe,CAACD,EAAImF,GAAG,mBAAmBnF,EAAI2c,GAAG3c,EAAIihC,UAAU,QAAQn8B,EAAG,OAAO,CAAC7E,YAAY,gBAAgB,CAACD,EAAImF,GAAGnF,EAAI2c,GAAG3c,EAAIkhC,GAAG,6BAAPlhC,CAAqCA,EAAImhC,iBAAiBr8B,EAAG,MAAMA,EAAG,OAAO,CAAC7E,YAAY,eAAe,CAACD,EAAImF,GAAG,gCAAgCL,EAAG,OAAO,CAAC7E,YAAY,gBAAgB,CAACD,EAAImF,GAAGnF,EAAI2c,GAAG3c,EAAIohC,6BAEvoB1gC,EAAkB,G,kxCCKtB,IAAqB2gC,EAAY,SAAAvgC,GAAA,SAAAugC,IAAA,OAAArgC,eAAA,KAAAqgC,GAAAC,EAAA,KAAAD,EAAA/9B,WAAA,OAAAhC,eAAA+/B,EAAAvgC,GAAAS,eAAA8/B,EAAA,EAAA7/B,IAAA,4BAAAG,IAQhC,WACC,OAAOF,KAAKwB,OAAOmN,QAAQmxB,0BAA0B9/B,KAAK+/B,eAC1D,CAAAhgC,IAAA,QAAAG,IAEE,WACI,OAAQF,KAAK+/B,aACT,IAAK,KACD,MAAO,UACX,IAAK,KACD,MAAO,cACX,IAAK,KACD,MAAO,aACX,QACI,MAAO,SAElB,CAAAhgC,IAAA,eAAAG,IAEJ,WAAwB,IAAAZ,EAAA,KACvB,OAAOU,KAAK6tB,OAAOxnB,QAAO,SAAC6W,GAAiB,OAAKA,EAAE8iB,QAAU1gC,EAAKwgC,+BAClE,CAAA//B,IAAA,cAAAG,IAED,WACC,OAAOF,KAAKigC,aAAat6B,SACzB,CAAA5F,IAAA,cAAAG,IAED,WACC,IACqC6d,EADjCmiB,EAAa,EAAEjiB,EAAAC,EACCle,KAAKigC,cAAY,IAArC,IAAAhiB,EAAAG,MAAAL,EAAAE,EAAAI,KAAAC,MAAuC,KAA5BC,EAAKR,EAAApf,MACfuhC,GAAc/R,KAAKC,MAA6C,KAAtC7P,EAAM4hB,YAAc5b,OAAO6b,UAAkB,KACvE,MAAA3hB,GAAAR,EAAAS,EAAAD,GAAA,QAAAR,EAAAU,IACD,OAAOuhB,IACP,CAAAngC,IAAA,wBAAAG,IAED,WACC,IAAMmgC,EAAWjnB,eAAO,IAAIknB,IAAItgC,KAAKigC,aAAaj+B,KAAI,SAAAkb,GAAC,OAAIA,EAAE7R,gBAC7D,OAAOg1B,EAAY16B,WA3CY,CAAS3C,QAEzCC,eAAA,CADCmL,kB,kCAGEnL,eAAA,CADCmL,kB,+BAGJnL,eAAA,CADCmL,kB,6BALmBwxB,EAAY38B,eAAA,CAHhCE,eAAU,CACVkL,WAAY,MAEQuxB,WCPmY,I,YCOpZx8B,EAAY,eACd,EACA,EACA,GACA,EACA,KACA,KACA,MAIa,EAAAA,E,0xCCJf,IAAqBm9B,EAAoB,SAAAlhC,GAAzC,SAAAkhC,IAAA,IAAAjhC,EAsCG,OAtCHC,eAAA,KAAAghC,G,sBAGYjhC,EAAA4/B,SAAgB,EAChB5/B,EAAAI,SAAmB,EACnBJ,EAAA6c,UAAoBC,MAASC,SAAS,EAAG,UAAUC,OAAO,aAC1Dhd,EAAAgb,QAAkB8B,IAAOA,MAASE,OAAO,cAAcC,IAAI,EAAG,UAAUF,SAAS,EAAG,QAAQC,OAAO,cACnGhd,EAAAkhC,aAAiC,GACpClhC,EAAAmhC,gBAAuB,CAC9B,CACC/jB,KAAM,KACNC,MAAO,OACPC,UAAU,EACVje,MAAO,cAER,CACC+d,KAAM,OACNC,MAAO,OACPC,UAAU,EACVje,MAAO,QAER,CACC+d,KAAM,SACNC,MAAO,QACPC,UAAU,EACVje,MAAO,SAER,CACC+d,KAAM,UACNC,MAAO,OACPC,UAAU,EACVje,MAAO,aAGDW,EAAAohC,mBAA0B,CACjCC,OAAQ,QACRlN,YAAY,EACZkH,aAAc,GACbr7B,EAmKF,OAAAO,eAAA0gC,EAAAlhC,GAAAS,eAAAygC,EAAA,EAAAxgC,IAAA,UAAApB,MAjKW,YACCqB,KAAKN,SAAWM,KAAKwgC,aAAa76B,QAAU,GAC7C3F,KAAK4gC,qBAEZ,CAAA7gC,IAAA,cAAApB,MAAA,eAAAkiC,EAAAtgC,eAAAC,mBAAAC,MAGO,SAAAC,IAAA,OAAAF,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,UACa,IAAbf,KAAKwD,KAAcxD,KAAKN,WAAWM,KAAKwgC,aAAa76B,QAAU,GAAC,CAAA9E,EAAAE,KAAA,eAAAF,EAAAE,KAAA,EAC1Df,KAAK4gC,mBAAkB,wBAAA//B,EAAAc,UAAAjB,EAAA,UAEpC,SAJaogC,IAAW,OAAAD,EAAAj/B,MAAC,KAADC,WAAA,OAAXi/B,EAHb,IAGwB,CAAA/gC,IAAA,mBAAApB,MAAA,eAAAoiC,EAAAxgC,eAAAC,mBAAAC,MAMjB,SAAAiH,IAAA,IAAA/G,EAAA,OAAAH,mBAAAI,MAAA,SAAAgH,GAAA,eAAAA,EAAA9G,KAAA8G,EAAA7G,MAAA,WACAf,KAAKN,QAAS,CAAFkI,EAAA7G,KAAA,eAAA6G,EAAAwP,OAAA,iBAIQ,OAJRxP,EAAA9G,KAAA,EAIZd,KAAKN,SAAU,EAAKkI,EAAA7G,KAAA,EACGC,iBAAad,IAAI,8BAADe,OAA+BjB,KAAKmc,UAAS,QAAAlb,OAAOjB,KAAKsa,UAAU,OAApG3Z,EAAQiH,EAAA1G,KACdlB,KAAKwgC,aAAe7/B,EAASQ,KAAK6/B,gBAAgBp5B,EAAA7G,KAAA,iBAAA6G,EAAA9G,KAAA,GAAA8G,EAAAvG,GAAAuG,EAAA,YAElDtG,QAAQ2G,IAAI,uBACZ3G,QAAQ2G,IAAGL,EAAAvG,IACXrB,KAAKwB,OAAOC,OAAO,uBAAwB,iDAAiD,QAEvE,OAFuEmG,EAAA9G,KAAA,GAE5Fd,KAAKN,SAAU,EAAMkI,EAAAlG,OAAA,6BAAAkG,EAAAjG,UAAA+F,EAAA,yBAE5B,SAfak5B,IAAgB,OAAAG,EAAAn/B,MAAC,KAADC,WAAA,OAAhB++B,EANW,IAMK,CAAA7gC,IAAA,+BAAApB,MAiBtB,SAA6BohC,GACjC,OAAO//B,KAAKwB,OAAOmN,QAAQmxB,0BAA0BC,KACxD,CAAAhgC,IAAA,YAAAG,IAED,WACI,OAAOF,KAAKwgC,aAAan6B,QAAO,SAAC6W,GAAiB,OAAMA,EAAE+jB,eAC7D,CAAAlhC,IAAA,cAAAG,IACD,WACI,OAAOF,KAAKwgC,aAAan6B,QAAO,SAAC6W,GAAiB,OAAKA,EAAE+jB,eAC5D,CAAAlhC,IAAA,eAAAG,IAGD,WACI,OAAOF,KAAKkhC,eAAe,MAAQlhC,KAAKmhC,gBAAgB,OACnDnhC,KAAKkhC,eAAe,MAAQlhC,KAAKkY,SAAalY,KAAKkhC,eAAe,MAAQlhC,KAAKkY,SAC/ElY,KAAKmhC,gBAAgB,OAASnhC,KAAKkY,WAC3C,CAAAnY,IAAA,cAAAG,IAED,WACI,OAAOF,KAAKkhC,eAAe,MACtBlhC,KAAKkhC,eAAe,MAAQlhC,KAAKkY,SAAalY,KAAKkhC,eAAe,MAAQlhC,KAAKkY,SAC/ElY,KAAKmhC,gBAAgB,OAASnhC,KAAKkY,WAC3C,CAAAnY,IAAA,iBAAApB,MAEO,SAAeohC,GAAmB,IAIZhiB,EAJY7X,EAAA,KAChC2nB,EAAS7tB,KAAKohC,UACf/6B,QAAO,SAAC6W,GAAiB,OAAKA,EAAE8iB,QAAU95B,EAAKm7B,6BAA6BtB,MAC7EG,EAAa,EAAEjiB,EAAAC,EACC2P,GAAM,IAA1B,IAAA5P,EAAAG,MAAAL,EAAAE,EAAAI,KAAAC,MAA4B,KAAjBC,EAAKR,EAAApf,MACZuhC,GAAc/R,KAAKC,MAA6C,KAAtC7P,EAAM4hB,YAAc5b,OAAO6b,UAAkB,KAC1E,MAAA3hB,GAAAR,EAAAS,EAAAD,GAAA,QAAAR,EAAAU,IACD,OAAOuhB,IACV,CAAAngC,IAAA,2BAAApB,MACO,SAAyB6gC,GAC7B,IAE0B1gB,EAFpBwiB,EAASthC,KAAKohC,UAAU/6B,QAAO,SAAC6W,GAAiB,OAAKA,EAAEsiB,WAAaA,KACvEU,EAAa,EAAEnhB,EAAAb,EACCojB,GAAM,IAA1B,IAAAviB,EAAAX,MAAAU,EAAAC,EAAAV,KAAAC,MAA4B,KAAjBijB,EAAKziB,EAAAngB,MACZuhC,GAAc/R,KAAKC,MAA6C,KAAtCmT,EAAMpB,YAAc5b,OAAO6b,UAAkB,KAC1E,MAAA3hB,GAAAM,EAAAL,EAAAD,GAAA,QAAAM,EAAAJ,IACD,OAAOuhB,IACV,CAAAngC,IAAA,kBAAApB,MACO,SAAgB6gC,GACpB,IAE0BvgB,EAFpBqiB,EAASthC,KAAKg/B,YAAY34B,QAAO,SAAC6W,GAAiB,OAAKA,EAAEsiB,WAAaA,KACzEU,EAAa,EAAEhhB,EAAAhB,EACCojB,GAAM,IAA1B,IAAApiB,EAAAd,MAAAa,EAAAC,EAAAb,KAAAC,MAA4B,KAAjBijB,EAAKtiB,EAAAtgB,MACZuhC,GAAc/R,KAAKC,MAA6C,KAAtCmT,EAAMpB,YAAc5b,OAAO6b,UAAkB,KAC1E,MAAA3hB,GAAAS,EAAAR,EAAAD,GAAA,QAAAS,EAAAP,IACD,OAAOuhB,IACV,CAAAngC,IAAA,8BAAAG,IAED,WACF,IAAMmgC,EAAWjnB,eAAO,IAAIknB,IAAItgC,KAAKohC,UAAUp/B,KAAI,SAAAkb,GAAC,OAAIA,EAAE7R,gBAC1D,OAAOg1B,EAAY16B,SACnB,CAAA5F,IAAA,+BAAAG,IACE,WACF,IAAMmgC,EAAWjnB,eAAO,IAAIknB,IAAItgC,KAAKg/B,YAAYh9B,KAAI,SAAAkb,GAAC,OAAIA,EAAE7R,gBAC5D,OAAOg1B,EAAY16B,SACnB,CAAA5F,IAAA,sBAAAG,IAED,WACC,IAAIshC,EAAWrT,KAAK0M,IAAKze,IAAOpc,KAAKsa,SAASmnB,KAAKrlB,IAAOpc,KAAKmc,WAAY,QAAW,GACtF,OAAOqlB,EAAW,EAAIxhC,KAAK0/B,YAAc8B,EAAWxhC,KAAK0/B,cACzD,CAAA3/B,IAAA,wBAAAG,IACD,WACC,OAAOF,KAAKohC,UAAUz7B,OAAS,EAAI3F,KAAK0/B,YAAc1/B,KAAKohC,UAAUz7B,OAAS3F,KAAK0/B,cACnF,CAAA3/B,IAAA,uBAAAG,IAEE,WACF,IAAIwhC,EAAgB1hC,KAAK2hC,WAAW3hC,KAAKwgC,aAAc,cACnDoB,EAAoB,GACxB,IAAK,IAAI7hC,KAAO2hC,EACfE,EAAkBvhC,KAAK,CACtBgL,WAAYtL,EACZmC,KAAM,GAAFjB,OAAKygC,EAAc3hC,GAAK,GAAGgM,YAAW,MAAA9K,OAAKygC,EAAc3hC,GAAK,GAAGkM,UAAS,KAAAhL,OAAIygC,EAAc3hC,GAAK,GAAG8hC,UACxGx/B,MAAOq/B,EAAc3hC,GAAK0d,QAAO,SAACtU,EAAQ4hB,GACzC,OAAO5hB,EAAI4hB,EAAE,iBACX,GACHyU,SAAUkC,EAAc3hC,GAAK,GAAGy/B,SACpByB,UAAWS,EAAc3hC,GAAK,GAAGkhC,YAGzC,OAAOW,EAAkB9W,MAAK,SAAC3hB,EAAQ4hB,GAAM,OAAKA,EAAE1oB,MAAQ8G,EAAE9G,WACjE,CAAAtC,IAAA,qBAAAG,IAED,WACF,IAAIwhC,EAAgB1hC,KAAK2hC,WAAW3hC,KAAKwgC,aAAc,YACnDsB,EAAkB,GACtB,IAAK,IAAI/hC,KAAO2hC,EACfI,EAAgBzhC,KAAK,CACpBg/B,SAAUt/B,EACVmC,KAAMw/B,EAAc3hC,GAAK,GAAGigC,OAChB+B,WAAYL,EAAc3hC,GAAK4F,OAC3CtD,MAAOq/B,EAAc3hC,GAAK0d,QAAO,SAACtU,EAAQ4hB,GACzC,OAAO5hB,EAAI4hB,EAAE,iBACX,GACHyU,SAAUkC,EAAc3hC,GAAK,GAAGy/B,WAG5B,OAAOsC,EAAgBhX,MAAK,SAAC3hB,EAAQ4hB,GAAM,OAAKA,EAAE1oB,MAAQ8G,EAAE9G,WAC/D,CAAAtC,IAAA,WAAAG,IAED,WACI,IAAI8hC,EAAgBhiC,KAAKwgC,aAAan6B,QAAO,SAAC6W,GAAiB,MAAoB,QAAfA,EAAEsiB,YAAoB,GAC1F,YAA0B7pB,IAAlBqsB,EAA+B,GAAMA,EAAcC,eAC9D,CAAAliC,IAAA,aAAApB,MAEI,SAAWwC,EAAWpB,GAC7B,OAAOoB,EAAKsc,QAAO,SAACykB,EAAc7e,GACjC,IAAIzC,EAAQyC,EAAKtjB,GAGjB,OAFAmiC,EAAQthB,GAASshB,EAAQthB,IAAU,GACnCshB,EAAQthB,GAAOvgB,KAAKgjB,GACb6e,IACL,MACH,CAAAniC,IAAA,eAAApB,MAEU,SAAakjB,GACjB7hB,KAAKmc,UAAYC,IAAOyF,GAAMvF,OAAO,gBACxC,CAAAvc,IAAA,aAAApB,MACO,SAAWkjB,GACf7hB,KAAKsa,QAAU8B,IAAOyF,GAAMvF,OAAO,gBACtC,CAAAvc,IAAA,WAAApB,MAEO,WACJqB,KAAKmc,UAAYC,MAASE,OAAO,cACjCtc,KAAKsa,QAAU8B,MAASE,OAAO,gBAClC,CAAAvc,IAAA,eAAApB,MACO,WACJqB,KAAKmc,UAAYC,MAASE,OAAO,cACjCtc,KAAKsa,QAAU8B,IAAOA,MAASE,OAAO,eAAeC,IAAI,EAAG,UAAUF,SAAS,EAAG,QAAQC,OAAO,kBAtMhE,CAAStZ,QAE9CC,eAAA,CADCmL,kB,0BA8CDnL,eAAA,CADCC,eAAM,Q,gCA9CUq9B,EAAoBt9B,eAAA,CANxCE,eAAU,CACPkL,WAAY,CACRwU,kBACA+c,mBAGaW,WCd2Y,KCQ5Z,I,UAAY,eACd,GACA,EACA,GACA,EACA,KACA,KACA,OAIa,M,wBCnBoI,W,IAAI,OAAiB,aAAS7gC,EAAO,MAAInB,Y,OAA6CC,SAAkB,CAACM,YAAM,O,MAAM,CAAI,SAAmB,oBAA+BA,GAAK,SAAC,mC,YAAU,OAAE,OAAIuE,IAAG,GAAuBvE,iBAAM,K,CAAoB,UAAQ,UAAQ,OAAI,OAAO,K,CAAiB,SAAS,CAAE,OAAIP,cAAO,GAAgFgoB,MAAU,aAAe5L,KAAQ,Q,MAAc,CAA+C9b,OAAU,KAA0C,CAACwE,EAAG,6DAAW,mBAAC7E,WAAW,CAAC,CAAOM,KAAM,OAAC,QAAM,SAAE,0CAAIuE,WAAW,yC,CAAS,SAAS,CAAE,mBAAE,MAAK,CAAcvE,IAAM,K,CAA6B,SAAQ,CAAY,MAAC,CAACJ,OAAM,K,CAAuB6E,UAAS,C,MAAmB,CAAc,MAAC,kBAAC1E,oBAAyB,MAAK,CAAmBL,QAAY,UAAOM,SAAM,YAAC,EAAK,UAAC,GAAMuE,WAAW,gBAAuC,IAAG,GAAK,EAAC8+B,QAAwC3jC,YAAY,OAAOM,MAAM,CAAC,IAAM,KAAK,CAACuE,EAAG,QAAQ,EAAEA,SAAG,CAAgB7E,yBAA+B,GAAC,kC,YAAWD,O,MAAiB,CAA8B,S,CAAkD,YAAc,OAAC,CAAE,YAAC,cAACuF,MAAG,CAAC,uB,MAAyCy2B,oBAAiB,wBAAE,kBAACjf,eAAgBQ,I,GAAmB,C,oBAAkCvd,SAAyB6jC,G,EAAkK5jC,WAAY,I,YAA4IkF,EAAGnF,GAAI2c,CAAE,CAA6E,YAAG,GAAC,SAAW,GAAe,MAAK,GAAC3c,KAAQ,CAAC,EAAG,GAAE,EAAE,qJACz5D,6BACGU,MAAe,EAAG,GAAE,mEAEf8N,YAAQ9N,iB,8aCAjB,IAAMC,GAAQC,EAAQ,QAGDkjC,GAAoB,SAAAhjC,GAAzC,SAAAgjC,IAAA,IAAA/iC,EAYG,OAZHC,eAAA,KAAA8iC,G,uBAGY/iC,EAAAI,SAAmB,EACtBJ,EAAAgjC,UAAoBlmB,MAASxd,OAC1BU,EAAA6iC,aAAsB,GACzB7iC,EAAAijC,gBAA4B,GAC5BjjC,EAAAE,MAAa,KACbF,EAAAi7B,WAAkB,CACzBoG,OAAQ,aACRlN,YAAY,EACZkH,aAAc,GACbr7B,EAiJF,OAAAO,eAAAwiC,EAAAhjC,GAAAS,eAAAuiC,EAAA,EAAAtiC,IAAA,UAAApB,MA/IW,WACV,IAAK,IAAIwQ,GAAK,IAAIxP,MAAOC,cAAgBuP,GAAK,KAAMA,IACnDnP,KAAKuiC,gBAAgBliC,KAAK8O,KAExB,CAAApP,IAAA,cAAApB,MAAA,eAAAkiC,EAAAtgC,eAAAC,mBAAAC,MAGO,SAAAC,IAAA,OAAAF,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,UACa,IAAbf,KAAKwD,KAAcxD,KAAKN,WAAWM,KAAKmiC,aAAax8B,QAAU,GAAC,CAAA9E,EAAAE,KAAA,eAAAF,EAAAE,KAAA,EAC1Df,KAAK4gC,mBAAkB,wBAAA//B,EAAAc,UAAAjB,EAAA,UAEpC,SAJaogC,IAAW,OAAAD,EAAAj/B,MAAC,KAADC,WAAA,OAAXi/B,EAHb,IAGwB,CAAA/gC,IAAA,oBAAApB,MAAA,eAAA6jC,EAAAjiC,eAAAC,mBAAAC,MAMpB,SAAAiH,IAAA,OAAAlH,mBAAAI,MAAA,SAAAgH,GAAA,eAAAA,EAAA9G,KAAA8G,EAAA7G,MAAA,UACIf,KAAKN,QAAS,CAAFkI,EAAA7G,KAAA,eAAA6G,EAAA7G,KAAA,EACPf,KAAK4gC,mBAAkB,wBAAAh5B,EAAAjG,UAAA+F,EAAA,UAEvC,SAJa+6B,IAAiB,OAAAD,EAAA5gC,MAAC,KAADC,WAAA,OAAjB4gC,EANc,IAMG,CAAA1iC,IAAA,eAAAG,IAM/B,WACC,MAAO,CACN,CACCwc,KAAM,KACNC,MAAO,OACPC,UAAU,EACVje,MAAO,cAER,CACC+d,KAAM,iBACNC,MAAO,OACPC,UAAU,EACVje,MAAO,aAER,CACC+d,KAAM,gBACNC,MAAO,OACPC,UAAU,EACVje,MAAO,WAER,CACC+d,KAAM1c,KAAKsiC,UACX3lB,MAAO,QACPC,UAAU,EACVje,MAAO,aAER,CACC+d,KAAM1c,KAAKsiC,UAAY,EACvB3lB,MAAO,QACPC,UAAU,EACVje,MAAO,iBAGT,CAAAoB,IAAA,oBAAAG,IAED,WAA6B,IAAAgG,EAAA,KAC5B,OAAOlG,KAAKmiC,aAAa97B,QAAO,SAAC6W,GAAM,OAAKd,IAAOc,EAAEf,WAAWvd,QAAUsH,EAAKo8B,eAC/E,CAAAviC,IAAA,kBAAAG,IACD,WAA2B,IAAAwG,EAAA,KAC1B,OAAO1G,KAAKmiC,aAAa97B,QAAO,SAAC6W,GAAM,OAAKd,IAAOc,EAAEf,WAAWvd,QAAU8H,EAAK47B,UAAY,OAC3F,CAAAviC,IAAA,mBAAApB,MAEO,SAAiBkjB,GACxB,OAAOzF,IAAOyF,GAAMvF,OAAO,gBAC3B,CAAAvc,IAAA,mBAAApB,MACO,SAAiByB,GACxB,MAA2C,qBAAhCJ,KAAK0iC,gBAAgBtiC,GACxB,EAEAJ,KAAK0iC,gBAAgBtiC,GAAOuiC,cAEpC,CAAA5iC,IAAA,mBAAApB,MAAA,eAAAoiC,EAAAxgC,eAAAC,mBAAAC,MAEU,SAAA2H,IAAA,IAAAzH,EAAA,OAAAH,mBAAAI,MAAA,SAAAyH,GAAA,eAAAA,EAAAvH,KAAAuH,EAAAtH,MAAA,WACAf,KAAKN,QAAS,CAAF2I,EAAAtH,KAAA,eAAAsH,EAAA+O,OAAA,iBAIQ,OAJR/O,EAAAvH,KAAA,EAIZd,KAAKN,SAAU,EAAK2I,EAAAtH,KAAA,EACGC,iBAAad,IAAI,2CAADe,OAA4CjB,KAAKsiC,YAAY,OAA9F3hC,EAAQ0H,EAAAnH,KACdlB,KAAKmiC,aAAexhC,EAASQ,KAClCnB,KAAKmiC,aAAax8B,OAAS,GAC9B3F,KAAKoB,gBACLiH,EAAAtH,KAAA,iBAAAsH,EAAAvH,KAAA,GAAAuH,EAAAhH,GAAAgH,EAAA,YAEQ/G,QAAQ2G,IAAI,sCACZ3G,QAAQ2G,IAAGI,EAAAhH,IACpBrB,KAAKwB,OAAOC,OAAO,uBAAwB,iDAAiD,QAE9D,OAF8D4G,EAAAvH,KAAA,GAEnFd,KAAKN,SAAU,EAAM2I,EAAA3G,OAAA,6BAAA2G,EAAA1G,UAAAyG,EAAA,yBAE5B,SAlBaw4B,IAAgB,OAAAG,EAAAn/B,MAAC,KAADC,WAAA,OAAhB++B,EAFhB,IAEgC,CAAA7gC,IAAA,gBAAApB,MAoBzB,WACD,IAAMoD,EAAS/B,KAAK4iC,kBAAkB5gC,KAAI,SAAC2c,GAAM,WAAA1d,OACjD0d,EAAEyjB,WAAU,OAAAnhC,OAAMmb,IAAOuC,EAAExC,WAAWG,OAAO,kBACvCumB,EAAkB7iC,KAAK4iC,kBAAkB5gC,KAAI,SAAC2c,GAAM,OAAKA,EAAEgkB,eAC3DG,EAAgB9iC,KAAK0iC,gBAAgB1gC,KAAI,SAAC2c,GAAM,OAAKA,EAAEgkB,eAGjD,MAAd3iC,KAAKR,OACRQ,KAAKR,MAAMgD,UAGN,IAAMC,EAAOzC,KAAK0C,MAAMC,cAAsBC,WAAW,MACzD5C,KAAKR,MAAQ,IAAIN,GAAMuD,EAAK,CAExBI,KAAM,OAEN1B,KAAM,CACFY,SACAI,SAAU,CACrB,CACCC,MAAOpC,KAAKsiC,UACZjE,YAAa,UACb0E,eAAgB,EAChBzE,MAAM,EACNG,QAAS,GACTt9B,KAAM0hC,GAEP,CACCzgC,MAAOpC,KAAKsiC,UAAY,EACxBjE,YAAa,UACb0E,eAAgB,EAChBzE,MAAM,EACNG,QAAS,GACTt9B,KAAM2hC,KAKAxU,QAAS,CACjB0U,SAAU,CACMC,UAAW,CACP7gC,MAAO,SAAS8gC,EAAkB/hC,GAC9B,IAAIogC,EAAQ2B,EAAYC,OACxB,MAAO,QAAPliC,OAAesgC,EAAM6B,QAAQ,GAAG/5B,WAAW3D,QAAQ,wBAAyB,YAMhG1F,KAAKR,MAAMuD,aA3JsB,CAASC,QAE9CC,eAAA,CADFmL,kB,2BAoBEnL,eAAA,CADFC,eAAM,Q,iCAOPD,eAAA,CADCC,eAAM,c,uCA1Bam/B,GAAoBp/B,eAAA,CADxCE,QACoBk/B,cCP2Y,MCO5Z,GAAY,eACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIa,M,kCClB2J,GAAO3iC,W,IAAwBlB,OAAmBM,EAAK,EAAC,SAAO,EAAE,kB,OAAC,SAAiB,CAAE,mBAAE,MAAK,CAAUA,MAAM,GAAC,eAAS,KAAK,CAACuE,EAAG,iBAAsB,CAACvE,YAAM,O,MAAC,CAAmB,IAAO,GAAS,sBAA+BynB,UAAW,C,MAAM,CAAQ5L,OAAQ,K,CAA8B9b,SAAW,CAAU,MAAC,CAAIwE,cAAc,GAAC7E,MAAW,aAAe,IAAK,GAAG,gB,WAAQ,EAAE,YAAI6E,QAAG,SAAUvE,OAAM,UAAC,WAAS,c,CAAU,SAAQ,C,YAAO,OAAE,OAAIuE,IAAG,GAAevE,KAAM,K,CAA8B,U,MAAuB,CAAyB,KAAO,GAAoB,OAAG,IAAC,GAAC,S,CAAsE,iBAAC,OAAI,aAAe,EAAC,UAACA,iBAAM,EAAC,mBAAS,EAAC,MAAQ,oB,GAAU,CAAQ,kCAAM,OAAC,EAAQ,qBAA+B,KAAO,OAAC,CAA8B,MAAC,CAAG,KAAC,GAAC,IAAO,G,IAAkB,GAAsB,SAAI,CAACP,EAAG,OAAI,CAA+DC,OAA4BM,SAAM,UAAC,sCAAkG,GAAC,CAAG,MAAC,YAAC,OAAQ,gBAA+C,mEAAE,YAAS,gBAA6EN,OAAmBM,SAAM,UAAC,MAAQ,qEAAU,IAAIuE,MAAG,SAAS,GAACvE,OAAM,wBAAmB,8EAAE,YAAK,OAAiBA,MAAM,CAAC,OAAe,U,CAAQH,SAAU,C,MAAiB4E,C,KAA6B8/B,GAAkB,IAAC,KAA4B,YAAE,MAAO,CAAqC,QAAU,G,MAA4B,C,MAAE,EAAQxgC,e,SAAiB,SAAM8B,GAAE,oBAAM,WAAU,mB,EAAiB,GAAM,EAAG,4B,OAAM,EAAC,QAAE,CAAC,IAAK,EAAC,GAAE,OAAM,MAAC,EAAY,KAAE7F,MAAM,WAAgD,OAAQ,UAAoB,MAAC,CAACJ,KAAM,GAACC,IAAOJ,GAA4BgF,S,CAAuD,EAAC,S,MAAC1E,CAAmC,wBAAI,YAAO,OAAUC,MAAM,sB,MAAgB,CAAI,MAAM,yBAAE,qBAAM,EAAC,uBAAa,GAAQ,WAAW,6BAAiD,aAACJ,MAAM,CAACC,KAAOJ,GAAiCgF,O,IAA6B+/B,K,CAAiCzkC,UAAW,CAA6B,OAAI,MAAO,EAAI,oBAAYL,MAAW,qB,MAAoB,CAAG,oCAAI6E,SAAG,SAAsB,GAAI,EAAC,+BAAoE7E,WAAY,kCAAc,IAAK,GAAC,UAAE,mBAAE,MAAK,CAA6BA,S,CAAiC,SAAS,CAACD,EAAG,SAAQ,C,IAAC,qBAAwB,iBAAiBg8B,OAAU,Y,YAAWh8B,O,MAAY,CAAkB,S,CAAK,mBAAoB,C,YAAqBg8B,c,MAAiB,CAAE,kBAACjf,MAAW,EAAC/c,YAASwB,WAAW,aAACwb,QAAG,EAADA,Q,eAA4B,I,GAA8J,C,oBAAqG,YAAe,EAAGhd,WAAa,I,YAA2LC,EAAW,GAAC,E,IAAiB,Q,GAA2FA,SAAW,GAAgB,MAAM,CAACkF,EAAGnF,KAAM,CAACA,EAAIglC,UAAc9zB,iBAAW+zB,EAAU/zB,KAAM4T,YAAKsf,MAAiBt/B,EAAG,GAAI,EAAC,6CAAC7E,YAAY,iBAAiB,CAACD,EAAImF,GAAGnF,EAAI2c,GAAG3c,EAAIkhC,GAAG,6BAAPlhC,CAAqCkR,EAAM4T,KAAKsf,eAAgB,EAAC,mCAAI,CAAI,EAAC,GAAK,EAAC,QAAU,6BAAV,CAAU,6BAAQ,YAAU,iBACnnH,2EACG1jC,YAAkB,iBAEb8N,GAAM,GAAE9N,qBAAe,gD,qjBCChC,IAAMC,GAAQC,EAAQ,QAODkjC,GAAoB,SAAAhjC,GAAzC,SAAAgjC,IAAA,IAAA/iC,EA8FM,OA9FNC,eAAA,KAAA8iC,G,uBAGY/iC,EAAAI,SAAmB,EACnBJ,EAAA6c,UAAoBC,MAASE,OAAO,cACpChd,EAAAmkC,YAAqB,GACxBnkC,EAAAijC,gBAA4B,GAC5BjjC,EAAAE,MAAa,KACbF,EAAA+b,QAAe,CACtB,CACCqB,KAAM,WACNC,MAAO,OACPC,UAAU,EACVje,MAAO,aAER,CACC+d,KAAM,8BACNC,MAAO,QACPC,UAAU,EACVje,MAAO,aAER,CACC+d,KAAM,8BACNC,MAAO,QACPC,UAAU,EACVje,MAAO,YAEF,CACL+d,KAAM,8BACNC,MAAO,QACPC,UAAU,EACVje,MAAO,YAER,CACC+d,KAAM,eACNC,MAAO,QACPC,UAAU,EACVje,MAAO,gBAEF,CACL+d,KAAM,eACNC,MAAO,QACPC,UAAU,EACVje,MAAO,gBAER,CACC+d,KAAM,iCACNC,MAAO,QACPC,UAAU,EACVje,MAAO,gBAGDW,EAAAi7B,WAAkB,CACzBoG,OAAQ,aACRlN,YAAY,EACZkH,aAAc,GAEJr7B,EAAAokC,uBAA8B,GAC9BpkC,EAAAqkC,gBAAyB,CAC7B,CACIh/B,GAAI,EACJhG,MAAO,gBACP+d,KAAM,wBAEV,CACI/X,GAAI,EACJhG,MAAO,eACP+d,KAAM,iBAGNpd,EAAAgkC,4BAAsC,EACtChkC,EAAAskC,oBAAgC,CAAE,EAAG,EAAG,EAAG,EAAG,GAC9CtkC,EAAA+jC,eAAyB,EACzB/jC,EAAAukC,eAAwB,CAC5B,CACIl/B,GAAI,EACJhG,MAAO,OACP+d,KAAM,QAEV,CACI/X,GAAI,EACJhG,MAAO,WACP+d,KAAM,YAEV,CACI/X,GAAI,EACJhG,MAAO,UACP+d,KAAM,WAEV,CACI/X,GAAI,EACJhG,MAAO,QACP+d,KAAM,UAEZpd,EAiKL,OAAAO,eAAAwiC,EAAAhjC,GAAAS,eAAAuiC,EAAA,EAAAtiC,IAAA,UAAApB,MA/JW,WACJqB,KAAK0jC,uBAAyB1jC,KAAK2jC,gBAAgB,KACtD,CAAA5jC,IAAA,yBAAApB,MAGO,WACJqB,KAAK8jC,mCACR,CAAA/jC,IAAA,oBAAApB,MAEO,WACJqB,KAAK8jC,mCACR,CAAA/jC,IAAA,mBAAApB,MAEI,SAAiBkjB,GACxB,OAAOzF,IAAOyF,GAAMvF,OAAO,gBAC3B,CAAAvc,IAAA,WAAApB,MACU,WACJqB,KAAKmc,UAAYC,MAASE,OAAO,gBACpC,CAAAvc,IAAA,mBAAApB,MAAA,eAAAoiC,EAAAxgC,eAAAC,mBAAAC,MAEO,SAAAC,IAAA,IAAAC,EAAA,OAAAH,mBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,WACAf,KAAKN,QAAS,CAAFmB,EAAAE,KAAA,eAAAF,EAAAuW,OAAA,iBAIQ,OAJRvW,EAAAC,KAAA,EAIZd,KAAKN,SAAU,EAAKmB,EAAAE,KAAA,EACGC,iBAClBd,IAAI,sCAAAe,OAAsCjB,KAAKmc,UAAS,eAAAlb,OAAcjB,KAAKqjC,gBAAc,mBAAApiC,OACrEjB,KAAK0jC,uBAAuB/+B,GAAE,yBAAA1D,OAAwBjB,KAAKsjC,8BAA8B,OAF5G3iC,EAAQE,EAAAK,KAGdlB,KAAKyjC,YAAc9iC,EAASQ,KACjCnB,KAAKyjC,YAAY99B,OAAS,GAC7B3F,KAAKoB,gBACLP,EAAAE,KAAA,iBAAAF,EAAAC,KAAA,GAAAD,EAAAQ,GAAAR,EAAA,YAEQS,QAAQ2G,IAAI,kCACZ3G,QAAQ2G,IAAGpH,EAAAQ,IACXrB,KAAKwB,OAAOC,OAAO,uBAAwB,iDAAiD,QAGvE,OAHuEZ,EAAAC,KAAA,GAG5Fd,KAAKN,SAAU,EAAMmB,EAAAa,OAAA,6BAAAb,EAAAc,UAAAjB,EAAA,yBAE5B,SArBakgC,IAAgB,OAAAG,EAAAn/B,MAAC,KAADC,WAAA,OAAhB++B,EAFb,IAE6B,CAAA7gC,IAAA,gBAAApB,MAuBzB,WAAa,IAAAuH,EAAA,KACVnE,EAAS/B,KAAKyjC,YAAYzhC,KAAI,SAACkb,GAAM,SAAAjc,OAClCiF,EAAK69B,iBAAiB7mB,EAAEf,WAAU,OAAAlb,OAAMiF,EAAK69B,iBAAiB7mB,EAAE5C,aAGrD,MAAdta,KAAKR,OACLQ,KAAKR,MAAMgD,UAGf,IAAMC,EAAOzC,KAAK0C,MAAMC,cAAsBC,WAAW,MACzD5C,KAAKR,MAAQ,IAAIN,GAAMuD,EAAK,CAExBI,KAAM,MAEN1B,KAAM,CACFY,SACAI,SAAU,CAQN,CACIC,MAAO,UACPjB,KAAMnB,KAAKyjC,YAAYzhC,KAAI,SAAC2c,GAAM,OAAKA,EAAEqlB,aACzC1hC,gBAAiB,0BACjB+7B,YAAa,oBACb4F,YAAa,EACbC,MAAO,SAEX,CACI9hC,MAAO,cACPjB,KAAMnB,KAAKyjC,YAAYzhC,KAAI,SAAC2c,GAAM,OAAKA,EAAEwlB,YACzC7hC,gBAAiB,0BACjB+7B,YAAa,oBACb4F,YAAa,EACbC,MAAO,SAEX,CACI9hC,MAAO,aACPjB,KAAMnB,KAAKyjC,YAAYzhC,KAAI,SAAC2c,GAAM,OAAKA,EAAE6kB,YACzClhC,gBAAiB,0BACjB+7B,YAAa,oBACb4F,YAAa,EACbC,MAAO,WAKnB5V,QAAS,CACL8V,OAAQ,CACJluB,SAAS,GAEbqY,OAAQ,CACJ8V,MAAO,CAAC,CACJC,MAAO,CACHC,IAAK,GAETC,SAAS,KAGjBxB,SAAU,CACNC,UAAW,CACP7gC,MAAO,SAAS8gC,EAAkB/hC,GAC9B,IAAIogC,EAAQ2B,EAAYC,OACxB,MAAO,GAAPliC,OAAUsgC,EAAM6B,QAAQ,GAAG/5B,WAAW3D,QAAQ,wBAAyB,KAAI,mBAM/F1F,KAAKR,MAAMuD,WACd,CAAAhD,IAAA,iCAAApB,MAEO,WACJ,IAAI8lC,EAAgBzkC,KAAKsjC,4BACrBoB,EAAY,EAChB,GAA0C,iBAAtC1kC,KAAK0jC,uBAAuB/kC,MAC5B+lC,EAAYtoB,MAASxd,OAAS,UAE9B,OAAQoB,KAAKqjC,gBACT,KAAK,EACDqB,EAAYtoB,MAASxd,OAAS,KAC9B,MACJ,KAAK,EACD8lC,EAAuC,GAA1BtoB,MAASxd,OAAS,MAC/B,MACJ,KAAK,EACD8lC,EAAuC,GAA1BtoB,MAASxd,OAAS,MAC/B,MACJ,KAAK,EACD8lC,EAAuC,IAA1BtoB,MAASxd,OAAS,MAC/B,MAGZoB,KAAK4jC,oBAAsB,GAC3B,IAAK,IAAIz0B,EAAI,EAAGA,GAAKu1B,EAAWv1B,IAC5BnP,KAAK4jC,oBAAoBz0B,EAAE,GAAKA,EAEhCnP,KAAK4jC,oBAAoBr9B,SAASk+B,GAClCzkC,KAAKsjC,4BAA8BmB,EAEnCzkC,KAAKsjC,4BAA8B,IAE1C,CAAAvjC,IAAA,gBAAApB,MAEO,SAAcgmC,EAActiC,GAChC,OAAQsiC,EAAOtiC,EAAQ,KAAK+gC,QAAQ,KACvC,CAAArjC,IAAA,eAAApB,MAEO,SAAakjB,GACjB7hB,KAAKmc,UAAYC,IAAOyF,GAAMvF,OAAO,kBA5PJ,CAAStZ,QAE9CC,eAAA,CADFmL,kB,2BAoGEnL,eAAA,CADCC,eAAM,2B,4CAKPD,eAAA,CADCC,eAAM,mB,uCAxGUm/B,GAAoBp/B,eAAA,CALxCE,eAAU,CACPkL,WAAY,CACRwU,sBAGawf,cCZ6Y,MCO9Z,GAAY,eACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIa,M,sSCLf,IAAqBuC,GAAO,SAAAvlC,GAA5B,SAAAulC,IAAA,IAAAtlC,EACyB,OADzBC,eAAA,KAAAqlC,G,uBACYtlC,EAAAkE,IAAW,EAAElE,EAExB,OAAAO,eAAA+kC,EAAAvlC,GAAAS,eAAA8kC,GAH2B,CAAS5hC,QAAhB4hC,GAAO3hC,eAAA,CAP3BE,eAAU,CACPkL,WAAY,CACRkyB,wBACA8B,wBACAwC,8BAGaD,cCb8X,MCO/Y,GAAY,eACd,GACA,EACA3lC,GACA,EACA,KACA,KACA,MAIa,gB,iFChBH6lC,E,yQCFqa73B,W,MAA6F,K,EAAsC,WAAE,oB,OAAM,EAAC,iB,YAAY83B,O,MAAiBxhC,C,MAA6BwhC,GAAmB,eAAC,KAA6B,WAAG,MAAK1hC,CAAgCvE,IAAM,GAAC,KAAO,K,CAAmC,SAAO,WAAuD,MAAC,CAAG,MAAC,QAAC,eAAW,S,KAAqBmO,qF,GAAmI,CAAE,qBAACvO,OAAM,qEAAQH,EAAIymC,8B,MAAsE,CAACnmC,QAAU,gBAAoB,qBAAM,EAAEwE,gBAAgB,GAAqB,WAAW,sBAA8B,YAAY,GAAM,Q,MAAC,CAAW,gBAAc,eAAc,SAAG,8DAAgBS,GAAG,CAAC,kBAAAmhC,GAC7uC1mC,OAAI2mC,OAAY,QAAK,sDACjBC,gC,MACkB,CAA2B,0BAAE,qBAACzmC,EAAM,qBAA0B6E,WAAS,wBAAqC,uB,MAAC1E,CAAyB,oBAAI,MAAO,SAA2BC,YAAM,OAAC,MAAQP,GAAc,SAAQ,GAAW,cAAY,GAAO,UAAY,I,GAAiB,CAAc,cAAc,WAAG,eAAY,GAAG,kBAAK,cAAc,GACnWA,OAAI6mC,cAAiB,K,MAEvB,C,MAAwB,EAAO7mC,aAAoB,qBAAE,kBAAQI,WAAWymC,mB,GAA4C,EAACA,iBAAkB,C,MAAC,CAACvmC,QAAW,UAAgB,iBAAI,YAAO,OAAUC,aAAM,KAAC,MAAQ,GAAG,YAAIuE,cAAW,GAAC7E,UAAY,I,GAA6B,CAAoB,yBAACM,EAAM,kBAAC,EAAM,YAAG,IAAY,iBAAI,0B,MAAwE,CAAC,uBAAIuE,SAAG,SAAwB,GAA8EwG,iBAAY,GAAgC,WAAU,qBAASxG,GAAG,UAAe7E,OAAmBM,OAAM,KAAW,WAAE,YAAK,gBAAYA,YAAM,CAAC,aAAQ,QAAU,OAAIuE,KAAG,GAA6BvE,MAAM,IAAiC,GAAC,CAACJ,MAAM,YAACC,EAAK,oBAAM0mC,wB,CAA+E,EAAC,qF,YAAW,CAAyB,6BAAI,QAAO,Q,CAAoC,SAAQ,CAAyB,YAAC,OAAC3mC,MAAM,CAACC,MAAOJ,K,GAAiEA,OAAI+mC,C,MAAuC,CAACzmC,OAA+C,UAAwCC,GAAK,OAAC,W,MAAC,CAAyC,gC,MAAa,CAA4CyE,QAAS,uB,SAAoBgiC,YAAyC,4BAAkD,wCAAwCzmC,GAAM,oB,MAAC,CAAkC,iC,MAAa,CAAiCyE,QAAS,mC,SAAoBiiC,YAA8B,wCAAuC,oDAAqB1mC,GAAM,oB,MAAC,CAAW,wCAAgBN,OAA4BqL,QAAY,qCAAC,kBAAa,GAAO,0CAAQ,WAAS,2CAAY,uBAAC/F,MAAG,CAAC,MAAQ,2B,MAA4C,CAAC,kCAAIT,SAAG,SAAiB,GAA+DwG,4BAAY,GAAkB,WAAW,gCAAYtL,GAAImF,EAAG,QAAsFlF,OAA0BM,OAAM,K,CAAuB,SAAS,C,YAAqBP,gB,YAAqB,CAAW,aAAc,QAAkC,MAAC,CAAC+c,QAAqBvb,MAAI,I,GAA6B,C,MAAwD,SAAe,G,OAAI,EAACyb,YAAW,M,UAM7yE,GAAO,GAAC,cAASvO,IAAM,IAAC,sC,YAACuO,C,QAAsE,O,YAAC,U,MAAkE1c,yBAAM,gD,YAAC,c,eAAiB,EAAI,Q,QAAsH,yBAAE,WAAC,UAACiB,gBAAW,EAACwb,cAAEA,EAAU9L,Y,YAA2B,O,0BAAgCgM,G,MAA0B,oCAAC,eAAIpY,IAAG,EAAQ,KAAavE,MAAM,sLAAC,IAAQ,kBAAO,EAAQ,UAAK,EAAQ,WAAC,uBAAiD,iDAACA,MAAM,CAAC,MAAQP,KAAgCA,GAAM,GAAC,2DAAiEkR,EAAM4T,GAAI,EAAG,iCAAsC,MAAmEvkB,M,KAA4D,Q,GAAE,SAAS,G,MAA+K,GAAC,M,GAAC,CAAqC,MAAQ,YAAQ,0B,GAA8BmO,KAAOkb,W,MAAkB,CAAsD,SAAI,CAAC5pB,EAAG,OAAI,WAA8KC,OAAqB,MAAC,yB,MAA0ByO,C,MAAgC1O,EAAIknC,aAAah2B,EAAM4T,QAAiB,yKAAE,MAAM3f,CAA0H8N,MAAM,8BAACk0B,gBAAiD77B,yFAAY,uE,MAAC,CAAiB,mCAAItL,MAAO,S,GAAyJ,CAAiB,kBAA0KsL,OAAtKtL,EAAO,kBAA0K,EAAC,2CAAqB,CAACA,EAAImF,GAAG,qFAAmF,GAAC,sBAA+B,GAAI,GAAG,EAAI,GAACL,EAAO,KAAC,iCAAC7E,YAAY,OAAgB,GAAED,CAAmKsL,MAAW,SAAC,GAAoB,OAAnB,oBAAmB,qC,CAA6B,sCAAiC,8E,MAAC,CAAwB,cAAmB,KAAC,uBAAM/F,YAAG,CAAC,kB,CAAmF,kIAAC,aAAI,QAAO,U,CAAmB,sCAAY,6GAAO,aAAIT,QAAG,U,CAAmB,KAAO,6CAAc,kF,YAAY,iB,CAAQ,UAAa,iIAAI,YAAC,CAAG,YAAC,U,GAA2B,cAAWsiC,C,MAA0B,CAAE,4BAACrqB,iBAAoB,EAACvb,mBAAU,G,GAAmB,C,sBAAoC2L,SAAyB,GAAkB,OAAM,EAAI,6BAAuHhN,GAAM,Q,YAAQ+Q,CAAuBlM,YAAS,U,CAAuD,EAAC,Q,MAAC1E,CAAkC,kBAAI,YAAW,OAAEL,aAAY,M,GAAoB,C,OAAgC2pB,SAAiB,GAAC,kCAAkBrpB,YAAM,OAAC,WAAc,YAAgB,GAAG,iBAAO,MAAQ,EAAC,6CAAO,6GAAoB,MAAO,G,MAAI,CAAkB,wBAAC8S,SAAK,YAAcrT,EAAM,KAAC,wBAAkK,WAAQ,4BAAoD,WAAC,4BAAE,GAAI,CAAoCO,MAAM,YAAC,EAAQ,qBAAmRgF,CAAE,EAAC,Q,MAAC,C,WAAmC,GAAkC,sBAAI,CAACT,EAAG,QAAmCvE,MAAM,CAAC,KAAO,YAAU,SAAIP,MAAO,W,KAA2Q,a,GAAyB,4FAA8C,kD,GAAA,CAAC,kBAAM,OAAC,SAAoB,KAAK,YAAkC,qBAAE,MAAMmF,CAA+T,MAAC,Y,GAA0B,cAAWkiC,KAAan2B,OAAWuK,GAAQ,uL,GAAA,CAAC,kBAAM,OAAC,gBAAsB3W,EAAG,KAAQ,YAA0B,qBAAE,MAAMK,CAAgT,MAAC,Y,GAA0B,sBAAyB,GAAC+L,EAAM4T,OAAa,8L,GAAA,CAAC,kBAAM,OAAC,kBAAyB,OAAS,YAAyB,qBAAE,MAAM3f,CAA8L,MAAC,Y,GAA0B,sBAAWmiC,YAAqC,CAACxiB,EAAI,GAACrJ,6GAAQ,kH,GAAA,CAAC,kBAAM,OAAC,eAAsB3W,EAAG,KAAQ,YAA0B,qBAAE,MAAMK,CAAwL,MAAC,Y,GAA0B,cAAWoiC,YAA4B9rB,MAAQ,yN,GAAA,CAAC,kBAAM,OAAC,iBAAwB,EAAC,KAAS,YAAyB,qBAAE,MAAMtW,CAAoN,MAAC,Y,GAA0B,mBAAWqiC,YAAkC/rB,MAAO,yGAAwB,oB,GAAA,CAAC,kBAAM,OAAC,kCAAkC,mBAAyB,qBAAE,MAAMtW,CAAuL5E,MAAM,YAAqE,iKAACgF,GAAG,CAAC,MAAQ,SAASmJ,GAAQ,OAAO1O,EAAIynC,mBAAsBv2B,KAAM4T,YAAwC,CAAChgB,EAAG,UAAoB,OAAK,CAAUvE,MAAM,CAAC,MAAQ,YAAY,CAACP,EAAImF,GAAG,eAAiB,EAAG,OAAO,gHAA4B,KAAqG,gBAAU,QAAc,UAACI,GAAG,CAAC,MAAQ,SAASmJ,GAAQ,OAAO1O,EAAI0nC,uBAAuB,EAAM,KAAK,QAAS,sBAAI,CAAC5iC,EAAG,UAAoB,OAAK,CAAUvE,MAAM,CAAC,MAAQ,YAAY,CAACP,EAAImF,GAAG,YAAa,GAAG,EAACL,OAAG,GAAmB,GAAE9E,wGAAO,UAAgH,EAAG,OAAI,CAAeuF,MAAG,CAAC,MAAQ,6D,GAA4D,CAAC,kBAAM,OAAC,wBAAyB,EAAS,mCAAyB,qBAAE,MAAMJ,CAAuL,MAAC,Y,GAA0B,wBAAuB+L,GAAM4T,EAAKrJ,OAAW,4H,GAAA,CAAC,kBAAM,OAAC,0BAAiC,EAAC,iBAAyB,qBAAE,MAAMtW,CAA+L,MAAC,Y,GAA0B,iBAAWwiC,GAAYz2B,SAAoB,CAAC,EAAC,iI,GAAA,CAAC,kBAAM,OAAC,uBAAyB,EAAS,SAAyB,qBAAE,MAAM/L,CAAoT5E,MAAM,YAA6E,gKAACgF,GAAG,CAAC,MAAQ,SAASmJ,GAAQ,OAAO1O,EAAI4nC,cAAgB12B,KAAM4T,QAAKrJ,MAAY,CAAC3W,EAAG,UAAoB,OAAK,CAAUvE,MAAM,CAAC,MAAQ,YAAY,CAACP,EAAImF,GAAG,oBAAiB,YAAwB,CAACA,EAAG,kHAAgH+L,GAAK,EAAC4T,OAAKmB,CAA0H1gB,GAAG,CAAC,MAAQ,SAASmJ,GAAQ,OAAO1O,EAAI6nC,cAAiB32B,KAAM4T,QAAKrJ,MAAY,CAAC3W,EAAG,UAAoB,OAAK,CAAUvE,MAAM,CAAC,MAAQ,YAAY,CAACP,EAAImF,GAAG,oBAAoB,GAAG,EAAG,OAAC,GAAmB,GAAEnF,kHAAmH,GAAwB,IAAvBA,EAAO,KAAI,oBAAY,8EAAG,2EAAiB,IAAgB,MAAW,SAAe,GAACC,OAAW,EAAC,kBAAuB,iB,CAAqD,SAAYomB,W,MAAiC,CAAyB,kBAAmBtJ,iBAAoB,qO,GAACvb,CAAYwb,MAAG,SAAiB,GAAE,OAAO,EAAI,iBAAc,mB,UAA4B,W,MAAG,C,MAAyH1R,Y,GAA2B,+K,0BAAmF,G,MAAE,GAAEtL,OAAO,C,YAAyHsL,wB,eAA2B,6B,MAAK2X,uBAA4B,EAAK,M,WAA6B,c,eAAC,I,YAA0E,EAAQ,K,wBAAiC,G,MAAM,iBAAG,YAAU,CAAanH,MAAO,SAAmE,6GAAG,YAAS,CAA+NxQ,MAAW,SAAqB,QAAE,MAAMnG,CAA8MmG,wCAAY,wBAAoB,qHAAE,YAAY,CAAk2CwQ,MAAO,SACtgX7b,GAAW,KAAC,sCAAgB,MAAMkF,CAAkFlF,UAAY,cAAkBD,kBAAqB,mBAAgF,aAAQ,OAAK,OAAO,UAAM,KAAyBsL,EAAY,iBAAC,OAAoB,uDAAerL,GAAW,GAAC,gLAAakF,YAAa,CAA0F,sBAAU,GAAa,GAAC,mLAAY,YAAO,CAAO,sBAAW,mqCAASgtB,MAAa,mEAAgB,+DAAO,slBAAS,6BAAC,GAAgB,GAAC,mEAAE,6BAAe,GAAC,iFAAgB,MAAC,KAAE,SAAS,YAAY,YAAUlyB,YAAY,CAAsB,uBAAwE,WAAI,oBAAC,GAAQ,eAASyO,EAAM,GAAC,8EAAqC,UAAE,YAAS,OAAuDnO,MAAM,CAAC,MAAQ,KAAK,CAACP,EAAImF,cAAgB,EAAG,OAAKL,CAA0BvE,MAAM,CAAC,OAAmB,iBAAQ,KAAY,GAAG,OAAI,CAA6BA,MAAM,CAAC,OAAQ,KAAsB,WAAqR,U,MAAC,C,cAA8BkP,GAAyB,kBAA7U,UAACtP,YAAM,gB,MAAM,CAAyB6E,MAAQ,gE,GAA2C,CAAC1E,eAAW,GAAmB,qC,CAAwC,+CAAkC,U,MAAC,CAA2C,MAAS,KAA2BiF,CAAE,EAAC,yBAA8D,IAAGT,GAAG,QAAW,aAACvE,MAAM,CAAC,MAAQ,MAAM,e,MAAa,CAA0ByE,QAAS,kB,SAAoB8iC,SAAmB/iC,GAAI,uBAAgC,iCAAkGxE,GAAK,yBAAC,C,MAAC,CAA+B,QAAS,uBAAQ,uCAAIP,QAAW2c,EAAG3c,sBAA0GuF,GAAG,CAAC,OAAQ,SAASmJ,GAAQ1O,EAAI8nC,mBAAkB,OAAa9nC,GAAImF,EAAG,QAA2C5E,MAAM,CAAC,MAAQ,OAAqB,MAAC,CAACJ,MAAM,qBAACC,SAAU,SAAC2nC,GAA6B/iC,qBAAQA,GAAoD,WAAC,uBAAyC,uEAAE,MAAK,CAA6Z,KAAU,EAAI,oBAAExD,OAAI2a,WAA6H,CAAC,EAAGnc,GAAG,EAAI,4DAA0E,CAAoDC,YAAY,gBAAgBsF,GAAG,CAAC,MAAQ,SAASmJ,GAAQ1O,EAAI+nC,yBAAuC,CAAC/nC,EAAImF,GAAG,iBAAiB,IAAI,IAAI,GAAInF,EAAG,OAACgoC,CAA2CznC,MAAM,CAAC,MAAQ,MAAM,e,MAAa,CAAwCyE,QAAS,4B,SAAoBijC,YAAqC,iCAA8C,2CAAsX1nC,GAAK,OAAC,8W,OAAC,EAAQ,KAAC,CAAQ,MAAW2nC,YAAkB,+FAAIloC,GAAImF,EAAG,iFAAoC,sBAA8E,OAAI,CAAsE,YAAU,gB,GAAQ3D,CAAiB,MAAQ,SAAS,GAAiF,EAAEsD,6BAAwB,K,CAAwD,KAAO,iBAAU4J,IAAM,IAAC,0C,MAAI,CAAyC,aAAG,MAAMvJ,CAA6E5E,MAAM,mCAAC,SAAQ,YAAM,sCAAQH,WAAW+nC,qC,GAA6CnoC,OAAImoC,UAAkB,CAACpjC,EAAG,8T,MAAC,CAACzE,OAAU,QAAqB,4BAAsOC,GAAK,GAAC,iL,OAAC,SAAeY,CAAQ,MAAQ,UAA6B,OAAQ,MAAQ,wEAAC,YAAe,qBAAE,YAAC,gBAAChB,IAAOC,MAAOJ,SAAIooC,GAA8BpjC,oCAAwB,K,CAAuC1E,4CAAW,4BAA8B,OAAIwE,MAAG,OAAiCvE,MAAM,CAAC,QAAU,mBAAkD,SAAQ,YAAyB,qBAAgB,GAAmB,kC,CAAQH,SAAU,CAACioC,gDAAmC,uI,MAACrjC,C,SAA6BqjC,UAAsC,MAAC,6BAAC/nC,eAA+C,mBAAwDL,OAA4BM,MAAM,+BAAC,SAAU,SAAKY,GAAQ,kCAAK,WAAQ,kCAAmD,UAAC,mBAAE,MAAOA,CAAmClB,SAAY,YAAM,+BAACM,MAAM,yBAAC,eAAmB,eAAO,IAAO,MAAKC,CAAwGD,MAAM,qCAAC,SAAQ,YAAM,wCAAQH,WAAWkoC,yC,GAAyD,EAACA,kBAA4BvjC,EAAG,Q,YAAC,gB,MAACzE,CAAwC,oBAAkQC,IAAO,eAAsB,GAAC,OAAQ,6BAA4D,qBAACJ,YAAM,O,MAAM,CAA0C6E,cAAS,G,KAAoBqjC,QAAwC/nC,OAAU,EAAC,0FAAoC,OAAI,MAAO,OAAyEC,MAAM,CAAC,QAAU,4BAAa,qBAAI,iC,WAAoC,gCAAyB,8NAAE,MAAOY,CAAmClB,SAAY,UAAOM,MAAM,yBAAC,eAAmB,eAAO,IAAO,MAAKC,CAAqGD,MAAM,qCAAC,kBAAe,GAAC,qCAAQ,GAAOJ,WAAM,yCAA+B6E,KAAQ,OAARA,WAAwB,U,YAAKujC,gB,MAAsB,CAACjoC,SAAW,WAAqB,GAAI,CAAqU,MAAC,YAAC,OAAQ,6BAA+C,qBAAE,YAAS,OAA6BL,OAA4BM,cAAM,GAAC,aAA0B,EAAC,8F,MAAC,C,WAAoCioC,GAAa,aAAG,MAAMrjC,CAAkG5E,MAAM,oBAAC,SAAOP,SAAIgqB,GAAyB,oBAAqBC,GAA0E,iC,CAAK,SAAQ,UAASvb,GAAM,KAAC,uP,GAAC1O,CAAoC,kBAAC,0BAE3yQU,uBAAoB,UAExB,YAAiBA,gB,0rBDfjB,SAAY6lC,GACRA,IAAA,uCACAA,IAAA,yBACAA,IAAA,iCACAA,IAAA,uBACAA,IAAA,6BACAA,IAAA,+BACAA,IAAA,qCACAA,IAAA,6BACAA,IAAA,mDACAA,IAAA,4BACAA,IAAA,uCAXJ,CAAYA,MAAqB,K,IEDrBkC,E,yBAAZ,SAAYA,GACRA,IAAA,gDACAA,IAAA,kDACAA,IAAA,sCACAA,IAAA,wCACAA,IAAA,oCACAA,IAAA,sCACAA,IAAA,0CACAA,IAAA,4CACAA,IAAA,8CACAA,IAAA,gDACAA,IAAA,qDACAA,IAAA,uDACAA,IAAA,6CACAA,IAAA,gDAdJ,CAAYA,MAAgB,KCErB,IAAMC,EAAqBnnC,gBAAlC,SAAAmnC,IAAA1nC,eAAA,KAAA0nC,GACW,KAAAlC,gBAA0B,GAC1B,KAAAC,kBAA4B,GAC/B,KAAAkC,SAAwB,KACxB,KAAAC,OAAsB,KACnB,KAAA5T,YAAgCyT,EAAiBI,mBACpD,KAAAC,kBAA4B,EAC5B,KAAAC,uBAAiC,EACjC,KAAAC,OAAkC,GAClC,KAAAC,YAAwB,GACxB,KAAAnC,uBAAiC,EACjC,KAAAC,mCAA6C,EAC7C,KAAAC,qCAA+C,EAC/C,KAAAC,0BAAoC,K,o2CCoB5C,IAAqBiC,GAAc,SAAApoC,GAAnC,SAAAooC,IAAA,IAAAnoC,EA8KM,OA9KNC,eAAA,KAAAkoC,G,uBAGYnoC,EAAA0lC,kBAA4B,GAC5B1lC,EAAA+lC,uBAAiC,EACjC/lC,EAAAgmC,mCAA6C,EAC7ChmC,EAAAimC,qCAA+C,EAC/CjmC,EAAAkmC,0BAAoC,EACpClmC,EAAAooC,mBAA6B,EAC7BpoC,EAAAI,SAAmB,EACnBJ,EAAAuuB,OAA6B,GAC7BvuB,EAAA0O,mBAA6B,EAC7B1O,EAAAqoC,qBAAmC,IAAIv6B,OACvC9N,EAAAsoC,yBAAwCt6B,OAAYS,aACpDzO,EAAAuoC,qBAA+B,EAC/BvoC,EAAAwoC,oBAA8B,GAC9BxoC,EAAA+mC,oBAA8B,EAC9B/mC,EAAAsxB,cAAwB,GACxBtxB,EAAAoxB,eAAyB,EACzBpxB,EAAAyoC,iBAAuCC,OACvC1oC,EAAA2oC,eAAkCC,OAClC5oC,EAAA6oC,iBAAuCC,OACvC9oC,EAAAknC,kCAA4C,EAC5ClnC,EAAAinC,2BAAkC,KAClCjnC,EAAAkpB,sBAA6B,GAC7BlpB,EAAAspB,6BAAoD,IAAIC,IACxDvpB,EAAAipB,0BAAoC,EACpCjpB,EAAAunC,6BAAuC,EACvCvnC,EAAA+oC,kBAAoBA,OACpB/oC,EAAAonC,oBAA8B,EAC9BpnC,EAAAgpC,eAAyB,EACzBhpC,EAAAipC,uBAAiC,EACjCjpC,EAAAqnC,8BAAwC,EACxCrnC,EAAAsnC,oCAA8C,EAC9CtnC,EAAAwnC,mBAA6B,EAC7BxnC,EAAAkpC,qBAA+B,GAC/BlpC,EAAAmpC,6BAAuC,EAMvCnpC,EAAAopC,kBAAyB,GACzBppC,EAAAgnC,6BAAuC,EACvChnC,EAAA+b,QAKH5R,MACD,CACIiT,KAAM,SACN/d,MAAO,qBACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,QACN/d,MAAO,aACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,OACN/d,MAAO,eACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,YACN/d,MAAO,UACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,UACN/d,MAAO,cACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,iBACN/d,MAAO,aACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,eACN/d,MAAO,UACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,WACN/d,MAAO,aACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,GACN/d,MAAO,GACPge,MAAO,QACPC,UAAU,EACVC,MAAO,QAGPvd,EAAAyd,eAGHtT,MACD,CACIiT,KAAM,MACN/d,MAAO,WACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,YACN/d,MAAO,YACPge,MAAO,OACPC,UAAU,EACVC,MAAO,QAEX,CACIH,KAAM,GACN/d,MAAO,QACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,cACN/d,MAAO,cACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,gBACN/d,MAAO,aACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,QACN/d,MAAO,SACPge,MAAO,OACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,QACN/d,MAAO,QACPge,MAAO,QACPC,UAAU,EACVC,MAAO,OAEX,CACIH,KAAM,QACN/d,MAAO,QACPge,MAAO,QACPC,UAAU,EACVC,MAAO,QAEbvd,EAwvBL,OAAAO,eAAA4nC,EAAApoC,GAAAS,eAAA2nC,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","file":"js/about.43b31259.js","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('h1',{staticClass:\"font-weight-light\"},[_vm._v(\"Kostenverteilung der Aufträge in Prozent\")]),_c('v-select',{attrs:{\"label\":\"Jahr\",\"items\":_vm.years},model:{value:(_vm.year),callback:function ($$v) {_vm.year=$$v},expression:\"year\"}}),(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\"}}):_vm._e(),_c('canvas',{ref:\"diagramCanvas\"})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport httpClient from '@/store/httpClient';\r\nconst Chart = require('chart.js');\r\nconst Utils = require('chart.js');\r\n\r\n@Component\r\nexport default class CostDistributionReport extends Vue {\r\n private chart: any = null;\r\n private costDistributions: any = [];\r\n private loading: boolean = false;\r\n private year: number = new Date().getFullYear();\r\n\r\n private mounted() {\r\n this.loadReport();\r\n }\r\n\r\n private get years()\r\n {\r\n var lastYears = []\r\n for (let index = new Date().getFullYear(); index >= 2012; index--) {\r\n lastYears.push(index);\r\n }\r\n return lastYears;\r\n }\r\n\r\n @Watch('year')\r\n private async loadReport()\r\n {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get(`Report/GetCostDistribution?year=${this.year}`);\r\n this.costDistributions = response.data;\r\n this.updateDiagram();\r\n } catch(err) {\r\n console.error('Loading report failed.');\r\n console.error(err);\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Fehler beim Laden der Reports. Siehe Konsole.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private getDatasets()\r\n {\r\n const colors = [\r\n '#635147',\r\n '#EFBB20',\r\n '#704214',\r\n '#468641',\r\n '#A3FF00',\r\n '#00F4C4',\r\n '#123524',\r\n '#007EFF',\r\n '#005A99',\r\n '#4B0082',\r\n '#A146FF',\r\n '#FF0090',\r\n '#FF2400',\r\n ];\r\n\r\n var data = {\r\n labels: this.costDistributions.map((c: any) => `${c.name}`),\r\n datasets: [{\r\n label: 'Kostenverteilung',\r\n data: this.costDistributions.map((c: any) => c.total),\r\n backgroundColor: colors,\r\n hoverOffset: 4\r\n }]\r\n }\r\n return data;\r\n }\r\n\r\n private updateDiagram() {\r\n const labels = this.costDistributions\r\n\r\n\t\t// Destroy the chart if one already exists.\r\n\t\tif (this.chart != null) {\r\n\t\t\tthis.chart.destroy();\r\n\t\t}\r\n\r\n const ctx = (this.$refs.diagramCanvas as any).getContext('2d');\r\n this.chart = new Chart(ctx, {\r\n // The type of chart we want to create\r\n type: 'pie',\r\n // The data for our dataset\r\n data: this.getDatasets(),\r\n \r\n });\r\n this.chart.update();\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CostDistribution.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CostDistribution.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./CostDistribution.vue?vue&type=template&id=7d8c4868\"\nimport script from \"./CostDistribution.vue?vue&type=script&lang=ts\"\nexport * from \"./CostDistribution.vue?vue&type=script&lang=ts\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[(_vm.loading)?_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',{staticClass:\"text-xs-center\",attrs:{\"cols\":\"12\"}},[_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"color\":\"accent\"}})],1)],1):_vm._e(),(_vm.messages.length > 0)?_c('div',[_c('h2',[_vm._v(\"Artikel-Meldung Übersetzungen\")]),_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',{attrs:{\"cols\":\"12\"}},[_c('v-text-field',{attrs:{\"placeholder\":\"Suchen nach BoostKey, Titel oder Meldungstext\",\"label\":\"Filter\"},model:{value:(_vm.suchbegriff),callback:function ($$v) {_vm.suchbegriff=$$v},expression:\"suchbegriff\"}})],1)],1),_c('v-tabs',{model:{value:(_vm.activeTab),callback:function ($$v) {_vm.activeTab=$$v},expression:\"activeTab\"}},[_vm._l((_vm.tabs),function(tab){return _c('v-tab',{key:tab},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(tab)+\"\\n\\t\\t\\t\")])}),_vm._l((_vm.tabs),function(tab){return _c('v-tab-item',{key:tab},[_c('v-btn',{staticClass:\"mt-2 blexon-button\",attrs:{\"title\":\"Neue Meldung hinzufügen\"},on:{\"click\":function($event){return _vm.createOrEdit(0, tab)}}},[_vm._v(\"\\n Hinzufügen\\n \")]),_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[(_vm.getTypedMessages(tab).length <= 0)?_c('v-flex',{attrs:{\"xs12\":\"\"}},[_vm._v(\"\\n Keine Meldungen mit dem aktuellen Filter vorhanden.\\n \")]):_vm._e(),_vm._l((_vm.getTypedMessages(tab)),function(message){return _c('v-flex',{key:message.id,attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('v-card',[_c('v-card-title',[(tab === 'Boost')?_c('h3',[_vm._v(_vm._s(message.boostKey))]):_c('h3',[_vm._v(_vm._s(message.newMessageTitle))])]),_c('v-card-text',[_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[(tab === 'CAM')?_c('v-text-field',{attrs:{\"readonly\":\"\",\"value\":_vm.getMessageTypeName(message.messageType),\"label\":\"Typ\"}}):(tab === 'Boost')?_c('v-text-field',{attrs:{\"readonly\":\"\",\"value\":message.newMessageTitle,\"label\":\"Titel\"}}):_c('v-text-field',{attrs:{\"readonly\":\"\",\"value\":message.boostKey,\"label\":\"BoostKey\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\",\"align-center\":\"\"}},[_c('v-flex',{attrs:{\"xs6\":\"\"}},[_c('v-checkbox',{attrs:{\"readonly\":\"\",\"hide-details\":\"\",\"label\":\"Ignorieren\",\"color\":\"accent\"},model:{value:(message.ignore),callback:function ($$v) {_vm.$set(message, \"ignore\", $$v)},expression:\"message.ignore\"}})],1),_c('v-flex',{attrs:{\"xs6\":\"\"}},[_c('v-checkbox',{attrs:{\"readonly\":\"\",\"hide-details\":\"\",\"label\":\"Beim 1. Mal ignorieren\",\"color\":\"accent\"},model:{value:(message.ignoreFirstTime),callback:function ($$v) {_vm.$set(message, \"ignoreFirstTime\", $$v)},expression:\"message.ignoreFirstTime\"}})],1)],1)],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"fab\":\"\",\"small\":\"\",\"title\":\"Meldung löschen\"},on:{\"click\":function($event){return _vm.deleteMessage(message.id)}}},[_c('v-icon',[_vm._v(\"delete\")])],1),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"fab\":\"\",\"small\":\"\",\"title\":\"Meldung bearbeiten\"},on:{\"click\":function($event){return _vm.createOrEdit(message.id, tab)}}},[_c('v-icon',[_vm._v(\"edit\")])],1)],1)],1)],1)})],2)],1)})],2)],1):_vm._e(),_c('v-dialog',{attrs:{\"persistent\":\"\",\"width\":\"600px\"},model:{value:(_vm.editDialog),callback:function ($$v) {_vm.editDialog=$$v},expression:\"editDialog\"}},[_c('v-form',{ref:\"form\",model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('v-card',[(!_vm.isEditMessage)?_c('v-card-title',[_c('h3',[_vm._v(\"Neue Meldung erstellen\")])]):_c('v-card-title',[_c('h3',[_vm._v(\"Meldung bearbeiten\")])]),_c('v-card-text',[_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.messageTypes,\"label\":\"Typ\",\"item-text\":\"item1\",\"item-value\":\"item2\",\"disabled\":_vm.currentEdit.messageType == 100 || _vm.currentEdit.messageType == 105},model:{value:(_vm.currentEdit.messageType),callback:function ($$v) {_vm.$set(_vm.currentEdit, \"messageType\", $$v)},expression:\"currentEdit.messageType\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.severities,\"label\":\"Schweregrad\",\"item-text\":\"item1\",\"item-value\":\"item2\"},model:{value:(_vm.currentEdit.newSeverity),callback:function ($$v) {_vm.$set(_vm.currentEdit, \"newSeverity\", $$v)},expression:\"currentEdit.newSeverity\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"BoostKey\",\"rules\":_vm.boostKeyRules},on:{\"change\":() => _vm.currentEdit.boostKey = _vm.currentEdit.boostKey.trim()},model:{value:(_vm.currentEdit.boostKey),callback:function ($$v) {_vm.$set(_vm.currentEdit, \"boostKey\", $$v)},expression:\"currentEdit.boostKey\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Titel\",\"rules\":_vm.currentEdit.messageType != 100 ? _vm.requiredRule : []},on:{\"change\":() => _vm.currentEdit.newMessageTitle = _vm.currentEdit.newMessageTitle.trim()},model:{value:(_vm.currentEdit.newMessageTitle),callback:function ($$v) {_vm.$set(_vm.currentEdit, \"newMessageTitle\", $$v)},expression:\"currentEdit.newMessageTitle\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-textarea',{attrs:{\"label\":\"Meldung\",\"rules\":_vm.currentEdit.messageType != 100 ? _vm.requiredRule : []},on:{\"change\":() => _vm.currentEdit.newMessage = _vm.currentEdit.newMessage.trim()},model:{value:(_vm.currentEdit.newMessage),callback:function ($$v) {_vm.$set(_vm.currentEdit, \"newMessage\", $$v)},expression:\"currentEdit.newMessage\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-text-field',{attrs:{\"rules\":_vm.optionalUrlRule,\"label\":\"Hilfe-Link (z.B. \\\"https://blexon.com/blog/...\\\")\"},on:{\"change\":() => _vm.currentEdit.helpLink = _vm.currentEdit.helpLink.trim()},model:{value:(_vm.currentEdit.helpLink),callback:function ($$v) {_vm.$set(_vm.currentEdit, \"helpLink\", $$v)},expression:\"currentEdit.helpLink\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\",\"align-center\":\"\"}},[_c('v-flex',{attrs:{\"xs6\":\"\"}},[_c('v-checkbox',{attrs:{\"hide-details\":\"\",\"label\":\"Ignorieren\",\"color\":\"accent\"},model:{value:(_vm.currentEdit.ignore),callback:function ($$v) {_vm.$set(_vm.currentEdit, \"ignore\", $$v)},expression:\"currentEdit.ignore\"}})],1),_c('v-flex',{attrs:{\"xs6\":\"\"}},[_c('v-checkbox',{attrs:{\"hide-details\":\"\",\"label\":\"Beim 1. Mal ignorieren\",\"color\":\"accent\"},model:{value:(_vm.currentEdit.ignoreFirstTime),callback:function ($$v) {_vm.$set(_vm.currentEdit, \"ignoreFirstTime\", $$v)},expression:\"currentEdit.ignoreFirstTime\"}})],1)],1)],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{on:{\"click\":function($event){_vm.editDialog = false}}},[_vm._v(\"\\n Abbrechen\\n \")]),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"loading\":_vm.saving,\"disabled\":!_vm.valid},on:{\"click\":function($event){return _vm.saveMessage()}}},[_vm._v(\"\\n Speichern\\n \")])],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","// This is NOT auto-type\r\nexport class MessageTranslationDto {\r\n\tpublic id: number = 0;\r\n\tpublic boostKey: string = '';\r\n\tpublic errorCode: string = '';\r\n\tpublic messageType: number = 0;\r\n\tpublic newMessageTitle: string = '';\r\n\tpublic newMessage: string = '';\r\n\tpublic newSeverity: number = 0;\r\n\tpublic ignore: boolean = false;\r\n\tpublic ignoreFirstTime: boolean = false;\r\n\tpublic helpLink: string = '';\r\n}\r\n","\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport httpClient from '../../store/httpClient';\r\nimport store from '../../store/store';\r\nimport { MessageTranslationDto } from \"../../dtos/messageTranslationDto\";\r\nimport rules from '@/store/rules'\r\n\r\n@Component\r\nexport default class CustomerDashboard extends Vue {\r\n private loading: boolean = false;\r\n private saving: boolean = false;\r\n private messages: MessageTranslationDto[] = [];\r\n private currentEdit: MessageTranslationDto = new MessageTranslationDto();\r\n private messageTypes: any = [];\r\n private severities: any = [];\r\n private suchbegriff: string = '';\r\n private activeTab: any = null;\r\n private tabs: string[] = [\"CAM\", \"Blexon\", \"Boost\"];\r\n private editDialog: boolean = false;\r\n private valid: boolean = false;\r\n private boostKeyRules: any = [\r\n (v: string) => !!v || 'Angabe erforderlich',\r\n (v: string) => v.replace(/\\s/g, '').length > 0 || 'Eingabe darf nicht nur Leerzeichen sein.',\r\n (v: string) => !v || v.length <= 300 || 'Maximal 300 Zeichen erlaubt.',\r\n (v: string) => !this.boostKeyIsTaken(v) || 'BoostKey schon vergeben',\r\n ];\r\n private requiredRule: any = rules.requiredRule;\r\n private optionalUrlRule: any = rules.optionalUrlRule;\r\n\r\n private mounted() {\r\n this.loadCamMessages();\r\n this.loadMessageTypes();\r\n this.loadSeverities();\r\n }\r\n\r\n private get filteredMessages(): MessageTranslationDto[] {\r\n const lowerSearchTerm = this.suchbegriff.toLowerCase();\r\n return this.messages.filter((m: any) => \r\n m.boostKey.toLowerCase().includes(lowerSearchTerm)\r\n || (m.newMessageTitle && m.newMessageTitle.toLowerCase().includes(lowerSearchTerm))\r\n || this.getMessageTypeName(m.messageType).toLowerCase().includes(lowerSearchTerm)\r\n );\r\n }\r\n\r\n private getTypedMessages(type: string): MessageTranslationDto[] {\r\n switch(type) {\r\n case 'Blexon':\r\n return this.filteredMessages.filter((m:MessageTranslationDto) => m.messageType == 105); // 105 = MessageType.Blexon\r\n case 'Boost':\r\n return this.filteredMessages.filter((m:MessageTranslationDto) => m.messageType == 100); // 100 = MessageType.Boost\r\n case 'CAM':\r\n return this.filteredMessages.filter((m:MessageTranslationDto) => m.messageType !== 105 && m.messageType != 100);\r\n default:\r\n return [];\r\n }\r\n }\r\n\r\n private get isEditMessage(): boolean {\r\n return this.currentEdit && this.currentEdit.id > 0;\r\n }\r\n private boostKeyIsTaken(key: string) {\r\n return this.messages.some((m:any) => m.boostKey === key && m.id !== this.currentEdit.id);\r\n }\r\n\r\n private getMessageTypeName(type: number) {\r\n return this.messageTypes.filter((mt:any) => mt.item2 === type)[0].item1;\r\n }\r\n private getTypeFromTab(tab: string): number {\r\n switch(tab) {\r\n case 'CAM':\r\n return 0;\r\n case 'Blexon':\r\n return 105;\r\n case 'Boost':\r\n return 100;\r\n default:\r\n return 0;\r\n }\r\n }\r\n\r\n private async createOrEdit(messageId: number, tab: string) {\r\n if (messageId > 0) {\r\n // Edit message\r\n this.currentEdit = JSON.parse(JSON.stringify(this.messages.filter((m:MessageTranslationDto) => m.id === messageId)[0]));\r\n } else {\r\n // Create new message\r\n this.currentEdit = {\r\n id: 0,\r\n messageType: this.getTypeFromTab(tab),\r\n newSeverity: 0,\r\n ignore: false,\r\n ignoreFirstTime: false, \r\n boostKey: 'EINDEUTIGER BEZEICHNER',\r\n errorCode: '',\r\n newMessageTitle: '',\r\n newMessage: '',\r\n helpLink: ''\r\n };\r\n }\r\n this.editDialog = true;\r\n (this.$refs.form as any).validate();\r\n }\r\n\r\n private async saveMessage() {\r\n try {\r\n this.saving = true;\r\n const response = await httpClient().post(`Cam/SaveMessageTranslation`, this.currentEdit);\r\n if (!this.isEditMessage) {\r\n this.currentEdit.id = response.data;\r\n this.messages.unshift(JSON.parse(JSON.stringify(this.currentEdit)));\r\n } else {\r\n let index = this.messages.findIndex((m:MessageTranslationDto) => m.id === this.currentEdit.id);\r\n this.messages.splice(index, 1, JSON.parse(JSON.stringify(this.currentEdit)));\r\n }\r\n this.$store.commit('setSnackbarText', 'Meldung gespeichert');\r\n } catch(ex) {\r\n console.log(ex);\r\n this.$store.commit('setSnackbarErrorText', 'Speichern der Meldung fehlgeschlagen');\r\n } finally {\r\n this.saving = false;\r\n this.editDialog = false;\r\n }\r\n }\r\n\r\n private async deleteMessage(messageId: number) {\r\n try {\r\n await httpClient().post(`Cam/DeleteMessageTranslation?messageId=${messageId}`, null);\r\n let index = this.messages.findIndex((m:MessageTranslationDto) => m.id === messageId);\r\n this.messages.splice(index, 1);\r\n this.$store.commit('setSnackbarText', 'Meldung gelöscht');\r\n } catch(ex) {\r\n console.log(ex);\r\n this.$store.commit('setSnackbarErrorText', 'Meldung konnte nicht gelöscht werden');\r\n }\r\n }\r\n\r\n private async loadCamMessages() {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get(`Cam/GetMessageTranslations`);\r\n this.messages = response.data;\r\n } catch {\r\n console.log('Load cam messages failed.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async loadMessageTypes() {\r\n try {\r\n const response = await httpClient().get(`Cam/GetMessageTypes`);\r\n this.messageTypes = response.data;\r\n } catch {\r\n console.log('Load messages types failed.');\r\n }\r\n }\r\n\r\n private async loadSeverities() {\r\n try {\r\n const response = await httpClient().get(`Cam/GetSeverities`);\r\n this.severities = response.data;\r\n } catch {\r\n console.log('Load severities failed.');\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CamMessageSettings.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CamMessageSettings.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./CamMessageSettings.vue?vue&type=template&id=ff3be230&scoped=true\"\nimport script from \"./CamMessageSettings.vue?vue&type=script&lang=ts\"\nexport * from \"./CamMessageSettings.vue?vue&type=script&lang=ts\"\nimport style0 from \"./CamMessageSettings.vue?vue&type=style&index=0&id=ff3be230&prod&scoped=true&lang=css\"\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 \"ff3be230\",\n null\n \n)\n\nexport default component.exports","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if (\"string\" == typeof r) return arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? arrayLikeToArray(r, a) : void 0;\n }\n}\nexport { _unsupportedIterableToArray as default };","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=style&index=0&id=58e26707&prod&lang=css\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CalcSettings.vue?vue&type=style&index=0&id=3e6cc6ae&prod&scoped=true&lang=css\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[(_vm.customer)?_c('v-container',{staticClass:\"pt-0\",attrs:{\"grid-list-lg\":\"\",\"fluid\":\"\"}},[_c('v-btn',{staticClass:\"mt-5 mr-1 blexon-button\",attrs:{\"fab\":\"\",\"fixed\":\"\",\"top\":\"\",\"right\":\"\",\"title\":\"Rechnung stellen\"},on:{\"click\":function($event){return _vm.addQuickInvoice()}}},[_c('v-icon',{attrs:{\"large\":\"\"}},[_vm._v(\"\\n add\\n \")])],1),_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',[_c('v-btn',{staticClass:\"ml-0\",attrs:{\"flat\":\"\"},on:{\"click\":function($event){return _vm.back()}}},[_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\"keyboard_backspace\")]),_vm._v(\"\\n Zurück\\n \")],1),_c('v-btn',{attrs:{\"flat\":\"\"},on:{\"click\":function($event){return _vm.goToArticles()}}},[_vm._v(\"Artikel\")])],1)],1),_c('v-layout',{staticClass:\"mt-3\",attrs:{\"row\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('span',{staticStyle:{\"font-size\":\"16px\"}},[_c('strong',[_vm._v(\"Kundennummer: \")]),_vm._v(_vm._s(_vm.customer.customerId))])])],1),_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-tabs',{attrs:{\"slider-color\":\"accent\"}},[_vm._l((_vm.tabTypes),function(type){return _c('v-tab',{key:type.key,attrs:{\"ripple\":\"\"}},[_vm._v(\"\\n \"+_vm._s(type.display)+\"\\n \")])}),_c('v-tab-item',{key:\"customer\"},[_c('v-layout',{staticClass:\"mt-1\",attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[(_vm.addressesLoaded)?_c('addresses-overview',{attrs:{\"type\":_vm.tabTypes.find((type) => type.key === 'customer').type}}):_vm._e()],1)],1),_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-combobox',{attrs:{\"items\":_vm.tags,\"return-object\":\"\",\"label\":\"Kategorien\",\"item-text\":\"name\",\"chips\":\"\",\"multiple\":\"\"},on:{\"blur\":function($event){return _vm.saveCustomerDetail()}},model:{value:(_vm.customer.tags),callback:function ($$v) {_vm.$set(_vm.customer, \"tags\", $$v)},expression:\"customer.tags\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('v-textarea',{attrs:{\"label\":\"Berufliche Position\"},on:{\"blur\":() => {\n _vm.customerDetail.beruflichePosition = _vm.customerDetail.beruflichePosition.trim();\n _vm.saveCustomerDetail();\n }},model:{value:(_vm.customerDetail.beruflichePosition),callback:function ($$v) {_vm.$set(_vm.customerDetail, \"beruflichePosition\", $$v)},expression:\"customerDetail.beruflichePosition\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('v-textarea',{attrs:{\"label\":\"Branche\"},on:{\"blur\":() => {\n _vm.customerDetail.branche = _vm.customerDetail.branche.trim();\n _vm.saveCustomerDetail();\n }},model:{value:(_vm.customerDetail.branche),callback:function ($$v) {_vm.$set(_vm.customerDetail, \"branche\", $$v)},expression:\"customerDetail.branche\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('v-textarea',{attrs:{\"label\":\"Bemerkung\"},on:{\"blur\":() => {\n _vm.customerDetail.bemerkung = _vm.customerDetail.bemerkung.trim();\n _vm.saveCustomerDetail();\n }},model:{value:(_vm.customerDetail.bemerkung),callback:function ($$v) {_vm.$set(_vm.customerDetail, \"bemerkung\", $$v)},expression:\"customerDetail.bemerkung\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('v-textarea',{attrs:{\"label\":\"CAD\"},on:{\"blur\":() => {\n _vm.customerDetail.cad = _vm.customerDetail.cad.trim();\n _vm.saveCustomerDetail();\n }},model:{value:(_vm.customerDetail.cad),callback:function ($$v) {_vm.$set(_vm.customerDetail, \"cad\", $$v)},expression:\"customerDetail.cad\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('v-textarea',{attrs:{\"label\":\"Aufmerksam geworden durch\"},on:{\"blur\":() => {\n _vm.customerDetail.wieAufmerksamGeworden = _vm.customerDetail.wieAufmerksamGeworden.trim();\n _vm.saveCustomerDetail();\n }},model:{value:(_vm.customerDetail.wieAufmerksamGeworden),callback:function ($$v) {_vm.$set(_vm.customerDetail, \"wieAufmerksamGeworden\", $$v)},expression:\"customerDetail.wieAufmerksamGeworden\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('v-textarea',{attrs:{\"label\":\"Eindruck von Blexon\"},on:{\"blur\":() => {\n _vm.customerDetail.eindruck = _vm.customerDetail.eindruck.trim();\n _vm.saveCustomerDetail();\n }},model:{value:(_vm.customerDetail.eindruck),callback:function ($$v) {_vm.$set(_vm.customerDetail, \"eindruck\", $$v)},expression:\"customerDetail.eindruck\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('v-textarea',{attrs:{\"label\":\"Vorteile von Blexon\"},on:{\"blur\":() => {\n _vm.customerDetail.vorteil = _vm.customerDetail.vorteil.trim();\n _vm.saveCustomerDetail();\n }},model:{value:(_vm.customerDetail.vorteil),callback:function ($$v) {_vm.$set(_vm.customerDetail, \"vorteil\", $$v)},expression:\"customerDetail.vorteil\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('v-textarea',{attrs:{\"label\":\"Alternative Blechlieferanten\"},on:{\"blur\":() => {\n _vm.customerDetail.alternativeBlechlieferanten = _vm.customerDetail.alternativeBlechlieferanten.trim();\n _vm.saveCustomerDetail();\n }},model:{value:(_vm.customerDetail.alternativeBlechlieferanten),callback:function ($$v) {_vm.$set(_vm.customerDetail, \"alternativeBlechlieferanten\", $$v)},expression:\"customerDetail.alternativeBlechlieferanten\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('v-textarea',{attrs:{\"label\":\"Letzter Anruf\"},on:{\"blur\":() => {\n _vm.customerDetail.angerufenAm = _vm.customerDetail.angerufenAm.trim();\n _vm.saveCustomerDetail();\n }},model:{value:(_vm.customerDetail.angerufenAm),callback:function ($$v) {_vm.$set(_vm.customerDetail, \"angerufenAm\", $$v)},expression:\"customerDetail.angerufenAm\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('v-textarea',{attrs:{\"label\":\"Technologie\"},on:{\"blur\":() => {\n _vm.customerDetail.technologie = _vm.customerDetail.technologie.trim();\n _vm.saveCustomerDetail();\n }},model:{value:(_vm.customerDetail.technologie),callback:function ($$v) {_vm.$set(_vm.customerDetail, \"technologie\", $$v)},expression:\"customerDetail.technologie\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('v-textarea',{attrs:{\"label\":\"Nächster Schritt\"},on:{\"blur\":() => {\n _vm.customerDetail.naechsterSchritt = _vm.customerDetail.naechsterSchritt.trim();\n _vm.saveCustomerDetail();\n }},model:{value:(_vm.customerDetail.naechsterSchritt),callback:function ($$v) {_vm.$set(_vm.customerDetail, \"naechsterSchritt\", $$v)},expression:\"customerDetail.naechsterSchritt\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('v-textarea',{attrs:{\"label\":\"Losgrössen\"},on:{\"blur\":() => {\n _vm.customerDetail.losgroessen = _vm.customerDetail.losgroessen.trim();\n _vm.saveCustomerDetail();\n }},model:{value:(_vm.customerDetail.losgroessen),callback:function ($$v) {_vm.$set(_vm.customerDetail, \"losgroessen\", $$v)},expression:\"customerDetail.losgroessen\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('v-textarea',{attrs:{\"label\":\"Anforderung an Lieferzeit\"},on:{\"blur\":() => {\n _vm.customerDetail.anforderungLieferzeit = _vm.customerDetail.anforderungLieferzeit.trim();\n _vm.saveCustomerDetail();\n }},model:{value:(_vm.customerDetail.anforderungLieferzeit),callback:function ($$v) {_vm.$set(_vm.customerDetail, \"anforderungLieferzeit\", $$v)},expression:\"customerDetail.anforderungLieferzeit\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('v-textarea',{attrs:{\"label\":\"Wünsche\"},on:{\"blur\":() => {\n _vm.customerDetail.wuensche = _vm.customerDetail.wuensche.trim();\n _vm.saveCustomerDetail();\n }},model:{value:(_vm.customerDetail.wuensche),callback:function ($$v) {_vm.$set(_vm.customerDetail, \"wuensche\", $$v)},expression:\"customerDetail.wuensche\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('v-textarea',{attrs:{\"label\":\"Fachzeitschriften\"},on:{\"blur\":() => {\n _vm.customerDetail.fachzeitschrift = _vm.customerDetail.fachzeitschrift.trim();\n _vm.saveCustomerDetail();\n }},model:{value:(_vm.customerDetail.fachzeitschrift),callback:function ($$v) {_vm.$set(_vm.customerDetail, \"fachzeitschrift\", $$v)},expression:\"customerDetail.fachzeitschrift\"}})],1)],1),_c('v-layout',{staticClass:\"mt-2\",attrs:{\"row\":\"\"}},[_c('v-flex',{staticClass:\"pa-0\",attrs:{\"shrink\":\"\"}},[_c('v-btn',{on:{\"click\":function($event){_vm.kundeLöschenDialog = true}}},[_vm._v(\"Kunde löschen\")])],1),_c('v-flex',{staticClass:\"pa-0\"},[_c('v-btn',{attrs:{\"title\":\"Alle Daten dieses Kunden zu einem anderen Kunden verschieben. Es öffnet sich zuerst ein Dialog.\"},on:{\"click\":function($event){_vm.kundendatenVerschiebenDialog = true}}},[_vm._v(\"\\n Kundendaten verschieben\\n \")])],1)],1)],1),_c('v-tab-item',{key:\"users\"},[_c('v-layout',{staticClass:\"mt-1\",attrs:{\"row\":\"\",\"wrap\":\"\"}},_vm._l((_vm.customer.users),function(user){return _c('v-flex',{key:user.userId,attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('user-tile',{attrs:{\"user\":user}})],1)}),1)],1),_c('v-tab-item',{key:\"delivery\"},[_c('v-layout',{staticClass:\"mt-1\",attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[(_vm.addressesLoaded)?_c('addresses-overview',{attrs:{\"type\":_vm.tabTypes.find((type) => type.key === 'delivery').type}}):_vm._e()],1)],1)],1),_c('v-tab-item',{key:\"invoice\"},[_c('v-layout',{staticClass:\"mt-1\",attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[(_vm.addressesLoaded)?_c('addresses-overview',{attrs:{\"type\":_vm.tabTypes.find((type) => type.key === 'invoice').type}}):_vm._e()],1)],1)],1),_c('v-tab-item',{key:\"creditLimit\"},[_c('v-form',{ref:\"creditLimitForm\",model:{value:(_vm.validCreditLimit),callback:function ($$v) {_vm.validCreditLimit=$$v},expression:\"validCreditLimit\"}},[_c('v-layout',{staticClass:\"mt-1\",attrs:{\"align-top\":\"\",\"row\":\"\",\"wrap\":\"\",\"fill-height\":\"\"}},[_c('v-flex',{staticClass:\"mr-2\",attrs:{\"shrink\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Kreditlimit\",\"type\":\"number\",\"rules\":_vm.requiredNonNegativeIntegerRule},model:{value:(_vm.customerDetail.creditLimit),callback:function ($$v) {_vm.$set(_vm.customerDetail, \"creditLimit\", _vm._n($$v))},expression:\"customerDetail.creditLimit\"}})],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":!_vm.validCreditLimit},on:{\"click\":function($event){return _vm.updateCreditLimit()}}},[_c('v-icon',[_vm._v(\"send\")])],1)],1)],1)],1)],1),_c('v-tab-item',{key:\"auditTrail\"},[_c('v-layout',{staticClass:\"mt-1\",attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('audit-trail',{attrs:{\"customerId\":_vm.customerId}})],1)],1)],1)],2)],1)],1)],1):_vm._e(),_c('v-dialog',{attrs:{\"width\":\"500\"},model:{value:(_vm.kundendatenVerschiebenDialog),callback:function ($$v) {_vm.kundendatenVerschiebenDialog=$$v},expression:\"kundendatenVerschiebenDialog\"}},[_c('v-card',[_c('v-card-title',[_c('h3',[_vm._v(\"Kundendaten verschieben\")])]),_c('v-card-text',[_vm._v(\"\\n Alle Daten von \\\"\"+_vm._s(_vm.customer.eMail)+\"\\\" werden in den angegebenen Kunden integriert.\\n Alle Benutzer, Artikel, Aufträge, Warenkörbe, Lieferungen, Kalkulationen, Audits, Zahlungen, Mahnungen \\n und Tickets werden verschoben.\"),_c('br'),_c('strong',[_vm._v(\"Das Kundenkonto von \\\"\"+_vm._s(_vm.customer.eMail)+\"\\\" wird danach automatisch gelöscht.\")]),_c('br'),_c('br'),_vm._v(\"\\n Hier die Id des Kunden eingeben, der die Daten \"),_c('strong',[_vm._v(\"erhalten\")]),_vm._v(\" soll:\"),_c('br'),_c('v-text-field',{attrs:{\"label\":\"Kundennummer des Kunden, der die Daten erhält\",\"type\":\"number\"},model:{value:(_vm.targetCustomerId),callback:function ($$v) {_vm.targetCustomerId=_vm._n($$v)},expression:\"targetCustomerId\"}}),(_vm.customerId == _vm.targetCustomerId)?_c('span',{staticStyle:{\"color\":\"red\"}},[_vm._v(\"\\n Die Ziel-Id kann nicht identisch sein wie die Id dieses Kunden!\\n \")]):_vm._e()],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{on:{\"click\":function($event){_vm.kundendatenVerschiebenDialog = false}}},[_vm._v(\"Abbrechen\")]),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":!_vm.targetCustomerId || _vm.targetCustomerId <= 0 || _vm.customerId == _vm.targetCustomerId},on:{\"click\":function($event){return _vm.moveCustomerData()}}},[_vm._v(\"\\n Verschieben\\n \")])],1)],1)],1),_c('v-dialog',{attrs:{\"width\":\"500\"},model:{value:(_vm.kundeLöschenDialog),callback:function ($$v) {_vm.kundeLöschenDialog=$$v},expression:\"kundeLöschenDialog\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\"\\n Kunde löschen! Sicher?\\n \")]),_c('v-card-text',[_vm._v(\"\\n Kunde mit Benutzern, Warenkörben und allen Artikeln wird gelöscht.\"),_c('br'),_vm._v(\"\\n Das kann nicht rückgängig gemacht werden.\"),_c('br'),_vm._v(\"\\n Falls Bestellungen vorhanden sind, wird der Kunde und all seine Benutzer \\n als gelöscht markiert.\\n \")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{on:{\"click\":function($event){_vm.kundeLöschenDialog = false}}},[_vm._v(\"Abbrechen\")]),_c('v-btn',{staticClass:\"blexon-button\",on:{\"click\":function($event){return _vm.deleteCustomer()}}},[_vm._v(\"Löschen\")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\nimport { TagDto } from './tagDto';\r\nimport { AddressDto } from './addressDto';\r\n\r\nexport class CustomerDetailDto {\r\n public id: number = 0;\r\n public customerId: string = '';\r\n public beruflichePosition: string = '';\r\n public branche: string = '';\r\n public cad: string = '';\r\n public wieAufmerksamGeworden: string = '';\r\n public eindruck: string = '';\r\n public vorteil: string = '';\r\n public bemerkung: string = '';\r\n public alternativeBlechlieferanten: string = '';\r\n public angerufenAm: string = '';\r\n public technologie: string = '';\r\n public naechsterSchritt: string = '';\r\n public losgroessen: string = '';\r\n public anforderungLieferzeit: string = '';\r\n public wuensche: string = '';\r\n public fachzeitschrift: string = '';\r\n public creditLimit: number = 0;\r\n public active: boolean = true;\r\n public tags: TagDto[] = new Array();\r\n public deliveryAddresses: Array = new Array();\r\n public invoiceAddresses: Array = new Array();\r\n}\r\n","\r\n\r\nimport { TagDto } from './tagDto';\r\nimport { UserDto } from './userDto';\r\n\r\nexport class CustomerInfoDto {\r\n public customerId: string = '';\r\n public companyName: string = '';\r\n public surname: string = '';\r\n public givenName: string = '';\r\n public phone: string = '';\r\n public eMail: string = '';\r\n public street: string = '';\r\n public town: string = '';\r\n public plz: string = '';\r\n public country: string = '';\r\n public numberOfOrders: number = 0;\r\n public lastOrderDate: Date = new Date();\r\n public firstOrderDate: Date = new Date();\r\n public numberOfArtikel: number = 0;\r\n public totalAmountOrdered: number = 0;\r\n public active: boolean = true;\r\n public tags: TagDto[] = new Array();\r\n public registriertAm: Date = new Date();\r\n public users: UserDto[] = new Array();\r\n}\r\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',{attrs:{\"fluid\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\",\"justify-start\":\"\"}},_vm._l((_vm.addresses),function(address){return _c('v-flex',{key:address.id,attrs:{\"sm\":\"6\",\"md\":\"4\",\"lg\":\"3\",\"xl\":\"3\",\"shrink\":\"\"}},[(_vm.addressesLoaded)?_c('address-tile',{attrs:{\"type\":_vm.type,\"propAddress\":address}}):_vm._e()],1)}),1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-card',{attrs:{\"width\":\"350\"}},[_c('v-card-title',[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"color\":\"accent\"}},[_vm._v(\"place\")]),(_vm.type == _vm.customerPersonalType)?_c('div',[(_vm.address.companyName === 'privat')?_c('span',[_c('h3',[_vm._v(\"Privatkunde\")])]):_c('span',[_c('h3',[_vm._v(_vm._s(_vm.address.companyName))])])]):_c('div',[(_vm.hasName)?_c('span',[_c('h3',[_vm._v(_vm._s(_vm.address.givenName)+\" \"+_vm._s(_vm.address.surname))])]):_c('span',[_c('h3',[_vm._v(_vm._s(_vm.address.companyName))])])])],1),_c('v-card-text',[(_vm.hasName && _vm.address.companyName !== '' && _vm.address.companyName !== 'privat')?_c('p',[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.address.companyName)+\"\\n\\t\\t\\t\\t\")]):_vm._e(),_c('p',{staticClass:\"ma-0\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.address.street)+\"\\n\\t\\t\\t\\t\")]),_c('p',{staticClass:\"ma-0\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.address.zip)+\" \"+_vm._s(_vm.address.town)+\"\\n\\t\\t\\t\\t\")]),_c('p',[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.address.country)+\"\\n\\t\\t\\t\\t\")]),(_vm.type == _vm.customerPersonalType || _vm.type == _vm.customerDeliveryType || _vm.type == _vm.orderDeliveryType)?_c('p',[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.address.phone)+\"\\n\\t\\t\\t\\t\")]):_vm._e(),(_vm.type == _vm.customerPersonalType || _vm.type == _vm.customerInvoiceType || _vm.type == _vm.orderInvoiceType)?_c('p',[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.address.eMail)+\"\\n\\t\\t\\t\\t\")]):_vm._e(),(_vm.type == _vm.customerInvoiceType || _vm.type == _vm.orderInvoiceType)?_c('p',[_vm._v(\"\\n\\t\\t\\t\\t\\tRechnung wird per \"),_c('strong',[_vm._v(_vm._s(_vm.address.eMail.length > 0 ? 'E-Mail' : 'Post'))]),_vm._v(\" versendet\\n\\t\\t\\t\\t\")]):_vm._e()]),_c('v-btn',{staticClass:\"blexon-button\",staticStyle:{\"margin-bottom\":\"40px\"},attrs:{\"fab\":\"\",\"absolute\":\"\",\"bottom\":\"\",\"right\":\"\"},on:{\"click\":function($event){return _vm.openEditDialog()}}},[_c('v-icon',[_vm._v(\"edit\")])],1)],1),_c('v-dialog',{attrs:{\"persistent\":\"\",\"width\":\"500\"},model:{value:(_vm.editAddressDialog),callback:function ($$v) {_vm.editAddressDialog=$$v},expression:\"editAddressDialog\"}},[_c('edit-address-component',{attrs:{\"address\":_vm.currentEditAddress,\"addressType\":_vm.type},on:{\"saved\":_vm.reloadAddress,\"closed\":function($event){_vm.editAddressDialog = false;}}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\nimport { AddressType } from '@/dtos/addressType';\r\nimport { AddressDto } from '@/dtos/addressDto';\r\nimport EditAddressComponent from '@/components/EditAddressComponent.vue'\r\n\r\n@Component({\r\n components: {\r\n\t\tEditAddressComponent,\r\n }\r\n})\r\nexport default class AddressTile extends Vue {\r\n\t@Prop()\r\n\tprivate type!: AddressType;\r\n\t@Prop()\r\n\tprivate propAddress!: AddressDto;\r\n\tprivate address: AddressDto = new AddressDto();\r\n\tprivate customerPersonalType: AddressType = AddressType.CustomerPersonal;\r\n\tprivate customerDeliveryType: AddressType = AddressType.CustomerDelivery;\r\n\tprivate customerInvoiceType: AddressType = AddressType.CustomerInvoice;\r\n\tprivate orderDeliveryType: AddressType = AddressType.OrderDelivery;\r\n\tprivate orderInvoiceType: AddressType = AddressType.OrderInvoice;\r\n\tprivate currentEditAddress: AddressDto = new AddressDto();\r\n\tprivate editAddressDialog: boolean = false;\r\n\tprivate userCanChangeDeliveryAddress: boolean = false;\r\n\tprivate userCanChangeInvoiceAddress: boolean = false;\r\n\r\n\tprivate mounted() {\r\n\t\tthis.address = JSON.parse(JSON.stringify(this.propAddress));\r\n\t}\r\n\r\n\tprivate get hasName() {\r\n\t\treturn this.address.givenName !== '' || this.address.surname !== '';\r\n\t}\r\n\r\n\tprivate openEditDialog() {\r\n\t\tthis.currentEditAddress = JSON.parse(JSON.stringify(this.address));\r\n\t\tthis.editAddressDialog = true;\r\n\t}\r\n\r\n\tprivate reloadAddress(address: AddressDto) {\r\n\t\tif (address.companyName === '') {\r\n\t\t\taddress.companyName = 'privat';\r\n\t\t}\r\n\t\tthis.address = JSON.parse(JSON.stringify(address));\r\n\t}\r\n\r\n}\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddressTile.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddressTile.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AddressTile.vue?vue&type=template&id=404dd785\"\nimport script from \"./AddressTile.vue?vue&type=script&lang=ts\"\nexport * from \"./AddressTile.vue?vue&type=script&lang=ts\"\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","\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { AddressType } from '@/dtos/addressType';\r\nimport { AddressDto } from '@/dtos/addressDto';\r\nimport AddressTile from '@/components/AddressTile.vue';\r\n\r\n@Component({\r\n components: {\r\n\t\tAddressTile,\r\n }\r\n})\r\nexport default class AddressesOverview extends Vue {\r\n\t@Prop()\r\n\tprivate type!: AddressType;\r\n\tprivate addresses: AddressDto[] = new Array();\r\n\tprivate addressesLoaded: boolean = false;\r\n\r\n private mounted() {\r\n\t\tthis.setAddress();\r\n }\r\n\r\n\tprivate setAddress() {\r\n\t\tlet copyAddresses: AddressDto[] = [];\r\n\t\tswitch(this.type) {\r\n\t\t\tcase AddressType.CustomerPersonal:\r\n\t\t\t\tlet copyAddresses = new Array();\r\n\t\t\t\tcopyAddresses.push(JSON.parse(JSON.stringify(this.$store.getters.customerPersonalAddress)))\r\n\t\t\t\tthis.addresses = copyAddresses;\r\n\t\t\t\tbreak;\r\n\t\t\tcase AddressType.CustomerDelivery:\r\n\t\t\t\tcopyAddresses = JSON.parse(JSON.stringify(this.$store.state.detailCustomerDetails.deliveryAddresses));\r\n\t\t\t\tthis.addresses = copyAddresses;\r\n\t\t\t\tbreak;\r\n\t\t\tcase AddressType.CustomerInvoice:\r\n\t\t\t\tcopyAddresses = JSON.parse(JSON.stringify(this.$store.state.detailCustomerDetails.invoiceAddresses));\r\n\t\t\t\tthis.addresses = copyAddresses;\r\n\t\t\t\tbreak;\r\n\t\t\tdefault:\r\n\t\t\t\tthis.addresses = [];\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t\tthis.addressesLoaded = true;\r\n\t}\r\n\r\n\r\n}\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddressesOverview.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddressesOverview.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AddressesOverview.vue?vue&type=template&id=0fff6bae&scoped=true\"\nimport script from \"./AddressesOverview.vue?vue&type=script&lang=ts\"\nexport * from \"./AddressesOverview.vue?vue&type=script&lang=ts\"\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 \"0fff6bae\",\n null\n \n)\n\nexport default component.exports","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n// Styles\nimport '../../../src/stylus/components/_timeline.styl';\nimport mixins from '../../util/mixins';\n// Mixins\nimport Themeable from '../../mixins/themeable';\nexport default mixins(Themeable\n/* @vue/component */\n).extend({\n name: 'v-timeline',\n props: {\n alignTop: Boolean,\n dense: Boolean\n },\n computed: {\n classes: function classes() {\n return _extends({\n 'v-timeline--align-top': this.alignTop,\n 'v-timeline--dense': this.dense\n }, this.themeClasses);\n }\n },\n render: function render(h) {\n return h('div', {\n staticClass: 'v-timeline',\n 'class': this.classes\n }, this.$slots.default);\n }\n});\n//# sourceMappingURL=VTimeline.js.map","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n// Types\nimport mixins from '../../util/mixins';\n// Components\nimport VIcon from '../VIcon';\n// Mixins\nimport Themeable from '../../mixins/themeable';\nimport Colorable from '../../mixins/colorable';\nexport default mixins(Colorable, Themeable\n/* @vue/component */\n).extend({\n name: 'v-timeline-item',\n props: {\n color: {\n type: String,\n default: 'primary'\n },\n fillDot: Boolean,\n hideDot: Boolean,\n icon: String,\n iconColor: String,\n large: Boolean,\n left: Boolean,\n right: Boolean,\n small: Boolean\n },\n computed: {\n hasIcon: function hasIcon() {\n return !!this.icon || !!this.$slots.icon;\n }\n },\n methods: {\n genBody: function genBody() {\n return this.$createElement('div', {\n staticClass: 'v-timeline-item__body'\n }, this.$slots.default);\n },\n genIcon: function genIcon() {\n if (this.$slots.icon) {\n return this.$slots.icon;\n }\n return this.$createElement(VIcon, {\n props: {\n color: this.iconColor,\n dark: !this.theme.isDark,\n small: this.small\n }\n }, this.icon);\n },\n genInnerDot: function genInnerDot() {\n var data = this.setBackgroundColor(this.color);\n return this.$createElement('div', _extends({\n staticClass: 'v-timeline-item__inner-dot'\n }, data), [this.hasIcon && this.genIcon()]);\n },\n genDot: function genDot() {\n return this.$createElement('div', {\n staticClass: 'v-timeline-item__dot',\n class: {\n 'v-timeline-item__dot--small': this.small,\n 'v-timeline-item__dot--large': this.large\n }\n }, [this.genInnerDot()]);\n },\n genOpposite: function genOpposite() {\n return this.$createElement('div', {\n staticClass: 'v-timeline-item__opposite'\n }, this.$slots.opposite);\n }\n },\n render: function render(h) {\n var children = [this.genBody()];\n if (!this.hideDot) children.unshift(this.genDot());\n if (this.$slots.opposite) children.push(this.genOpposite());\n return h('div', {\n staticClass: 'v-timeline-item',\n class: _extends({\n 'v-timeline-item--fill-dot': this.fillDot,\n 'v-timeline-item--left': this.left,\n 'v-timeline-item--right': this.right\n }, this.themeClasses)\n }, children);\n }\n});\n//# sourceMappingURL=VTimelineItem.js.map","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',{attrs:{\"fluid\":\"\"}},[(_vm.auditsLoading)?_c('v-layout',{staticClass:\"text-xs-center\",attrs:{\"row\":\"\"}},[_c('v-flex',{attrs:{\"cols\":\"12\"}},[_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"size\":\"20\"}})],1)],1):(_vm.audits.length <= 0)?_c('v-layout',{staticClass:\"text-xs-center\",attrs:{\"row\":\"\"}},[_c('v-flex',{attrs:{\"cols\":\"12\"}},[_vm._v(\"\\n\\t\\t\\t\\tDieser Kunde hat noch keine Audits\\n\\t\\t\\t\")])],1):_c('v-timeline',{attrs:{\"dense\":_vm.$vuetify.breakpoint.smAndDown}},_vm._l((_vm.audits),function(audit){return _c('v-timeline-item',{key:audit.auditId,attrs:{\"icon\":_vm.getIcon(audit.eventType),\"color\":\"accent\",\"fill-dot\":\"\"}},[_c('span',{attrs:{\"slot\":\"opposite\"},slot:\"opposite\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm._f(\"formatDateAndTime\")(audit.createdAt))+\"\\n\\t\\t\\t\\t\")]),_c('v-card',{staticClass:\"elevation-2\"},[_c('v-card-title',{staticClass:\"headline\"},[_vm._v(_vm._s(_vm.getHeadline(audit)))]),(audit.eventType == _vm.articleCreateEvent)?_c('v-card-text',[_vm._v(\"\\n\\t\\t\\t\\t\\t\\tArtikel erstellt.\\n\\t\\t\\t\\t\\t\")]):(audit.eventType == _vm.articleDeleteEvent)?_c('v-card-text',[_vm._v(\"\\n\\t\\t\\t\\t\\t\\tArtikel gelöscht mit Status: \"+_vm._s(_vm.getArticleStateText(audit.articleState))+\"\\n\\t\\t\\t\\t\\t\")]):(audit.eventType == _vm.articleValidatedEvent)?_c('v-card-text',[_vm._v(\"\\n\\t\\t\\t\\t\\t\\tArtikel validiert. Status: \"+_vm._s(_vm.getArticleStateText(audit.articleState))+\"\\n\\t\\t\\t\\t\\t\")]):(audit.eventType == _vm.calculateOrderEvent)?_c('v-card-text',[_c('span',[_vm._v(\"CHF \"+_vm._s(audit.price))]),_c('br'),(audit.calculationError)?_c('span',{staticClass:\"red--text\"},[_vm._v(\"Error: \"+_vm._s(audit.calculationError)),_c('br')]):_vm._e(),_vm._v(\"\\n\\t\\t\\t\\t\\t\\tArtikel: \\n\\t\\t\\t\\t\\t\\t\"),_vm._l((audit.articleIds),function(article){return _c('router-link',{key:article,staticClass:\"link\",attrs:{\"to\":{ name: 'article', params: { articleIdProp: article.toString() } }}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(article)+\", \\n\\t\\t\\t\\t\\t\\t\")])})],2):_c('v-card-text',[_vm._v(\"\\n\\t\\t\\t\\t\\t\\tWir konnten das Audit keinem Ereigniss zuordnen.\\n\\t\\t\\t\\t\\t\")])],1)],1)}),1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport httpClient from '@/store/httpClient';\r\nimport { CustomerAuditTrailDto } from '@/dtos/customerAuditTrailDto'\r\nimport { EventType } from '@/dtos/eventType';\r\nimport { ArticleState } from '@/dtos/articleState';\r\n\r\n@Component({\r\n components: {},\r\n})\r\nexport default class AuditTrail extends Vue {\r\n\t@Prop()\r\n\tprivate customerId!: number;\r\n\tprivate auditsLoading: boolean = true;\r\n\tprivate audits: CustomerAuditTrailDto[] = new Array();\r\n\tprivate articleCreateEvent: number = EventType.ArticleCreated;\r\n\tprivate articleDeleteEvent: number = EventType.ArticleDeleted;\r\n\tprivate calculateOrderEvent: number = EventType.CalculatedOrder;\r\n\tprivate articleValidatedEvent: number = EventType.ArticleValidated;\r\n\r\n private mounted() {\r\n\t\tthis.loadAudits();\r\n }\r\n\r\n\tprivate getIcon(eventType: EventType) {\r\n\t\tswitch(eventType) {\r\n\t\t\tcase EventType.ArticleCreated:\r\n\t\t\tcase EventType.ArticleValidated:\r\n\t\t\t\treturn 'extension';\r\n\t\t\tcase EventType.ArticleDeleted:\r\n\t\t\t\treturn 'delete_forever';\r\n\t\t\tcase EventType.CalculatedOrder:\r\n\t\t\t\treturn 'calculate';\t\t\t\r\n\t\t\tdefault:\r\n\t\t\t\treturn 'question';\r\n\t\t}\r\n\t}\r\n\r\n\tprivate getHeadline(audit: CustomerAuditTrailDto) {\r\n\t\tswitch(audit.eventType) {\r\n\t\t\tcase EventType.ArticleCreated:\r\n\t\t\t\treturn `Erstellt Artikel ${audit.articleId}`;\r\n\t\t\tcase EventType.ArticleDeleted:\r\n\t\t\t\treturn `Löschung Artikel ${audit.articleId}`;\r\n\t\t\tcase EventType.ArticleValidated:\r\n\t\t\t\treturn `Validierung Artikel ${audit.articleId}`\r\n\t\t\tcase EventType.CalculatedOrder:\r\n\t\t\t\treturn `Calculation ${audit.calculationId}`;\r\n\t\t\tdefault:\r\n\t\t\t\treturn 'Unbekannter Event';\r\n\t\t}\r\n\t}\r\n\r\n\tprivate getArticleStateText(state: ArticleState) {\r\n\t\tswitch(state) {\r\n\t\t\tcase ArticleState.OK:\r\n\t\t\t\treturn 'OK';\r\n\t\t\tcase ArticleState.Warning:\r\n\t\t\t\treturn 'Warning';\r\n\t\t\tcase ArticleState.Error:\r\n\t\t\t\treturn 'Error';\r\n\t\t\tcase ArticleState.Locked:\r\n\t\t\t\treturn 'Locked';\r\n\t\t\tcase ArticleState.New:\r\n\t\t\t\treturn 'New';\r\n\t\t\tcase ArticleState.Open:\r\n\t\t\t\treturn 'Open';\r\n\t\t\tcase ArticleState.Info:\r\n\t\t\t\treturn 'Info';\r\n\t\t\tcase ArticleState.Deleted:\r\n\t\t\t\treturn 'Deleted';\r\n\t\t}\r\n\t}\r\n\r\n\tprivate async loadAudits() {\r\n\t\ttry {\r\n this.auditsLoading = true;\r\n const response = await httpClient().get(`Report/GetCustomerAuditTrail?customerId=${this.customerId}`);\r\n\t\t\tthis.audits = response.data;\r\n } catch {\r\n this.$store.commit('setSnackbarErrorText', 'Fehler beim Laden des Audit Trails.');\r\n } finally {\r\n this.auditsLoading = false;\r\n }\r\n\t}\r\n\r\n}\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AuditTrail.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AuditTrail.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AuditTrail.vue?vue&type=template&id=c1351080&scoped=true\"\nimport script from \"./AuditTrail.vue?vue&type=script&lang=ts\"\nexport * from \"./AuditTrail.vue?vue&type=script&lang=ts\"\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 \"c1351080\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',{staticClass:\"userTile\"},[_c('v-form',{model:{value:(_vm.isValid),callback:function ($$v) {_vm.isValid=$$v},expression:\"isValid\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"pa-0\":\"\",\"ma-0\":\"\",\"align-center\":\"\"}},[(_vm.user.confirmed)?_c('v-flex',{attrs:{\"xs2\":\"\"}},[_c('v-icon',{attrs:{\"title\":\"Login als dieser Benutzer\",\"color\":\"accent\",\"large\":\"\"},on:{\"click\":function($event){return _vm.getLoginCode()}}},[_vm._v(\"person\")])],1):_c('v-flex',{attrs:{\"cols\":\"1\"}},[_c('v-tooltip',{attrs:{\"top\":\"\",\"content-class\":\"customTooltip\"}},[_c('template',{slot:\"activator\"},[_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"hourglass-bottom\")])],1),_vm._v(\"\\n\\t\\t\\t\\t\\tBestätigung des eingeladenen Benutzers noch ausstehend.\\n\\t\\t\\t\\t\")],2)],1),_c('v-flex',{attrs:{\"xs10\":\"\"}},[_c('div',{staticClass:\"truncate\"},[_c('v-tooltip',{attrs:{\"top\":\"\"}},[_c('template',{slot:\"activator\"},[_c('span',[_c('h3',[_vm._v(_vm._s(_vm.user.eMail))])])]),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.user.eMail)+\"\\n\\t\\t\\t\\t\\t\")],2)],1)])],1),_c('v-layout',{attrs:{\"row\":\"\",\"pa-0\":\"\",\"ma-0\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Vorname\",\"color\":\"accent\",\"disabled\":_vm.isLoading || !_vm.user.confirmed,\"rules\":_vm.requiredStringMax35Rule},on:{\"blur\":() => {\n\t\t\t\t\t\t_vm.user.firstname = _vm.user.firstname.trim();\n\t\t\t\t\t\t_vm.saveUser();\n\t\t\t\t\t}},model:{value:(_vm.user.firstname),callback:function ($$v) {_vm.$set(_vm.user, \"firstname\", $$v)},expression:\"user.firstname\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\",\"pa-0\":\"\",\"ma-0\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Nachname\",\"color\":\"accent\",\"disabled\":_vm.isLoading || !_vm.user.confirmed,\"rules\":_vm.requiredStringMax35Rule},on:{\"blur\":() => {\n\t\t\t\t\t\t_vm.user.lastname = _vm.user.lastname.trim();\n\t\t\t\t\t\t_vm.saveUser();\n\t\t\t\t\t}},model:{value:(_vm.user.lastname),callback:function ($$v) {_vm.$set(_vm.user, \"lastname\", $$v)},expression:\"user.lastname\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\",\"pa-0\":\"\",\"ma-0\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Telefonnummer\",\"color\":\"accent\",\"disabled\":_vm.isLoading || !_vm.user.confirmed,\"rules\":_vm.requiredStringMax35Rule},on:{\"blur\":() => {\n\t\t\t\t\t\t_vm.user.phone = _vm.user.phone.trim();\n\t\t\t\t\t\t_vm.saveUser();\n\t\t\t\t\t}},model:{value:(_vm.user.phone),callback:function ($$v) {_vm.$set(_vm.user, \"phone\", $$v)},expression:\"user.phone\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\",\"pa-0\":\"\",\"ma-0\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Funktion (nur für Blexon sichtbar)\",\"color\":\"accent\",\"disabled\":_vm.isLoading || !_vm.user.confirmed},on:{\"blur\":() => {\n\t\t\t\t\t\t_vm.user.funktion = _vm.user.funktion.trim();\n\t\t\t\t\t\t_vm.saveUser();\n\t\t\t\t\t}},model:{value:(_vm.user.funktion),callback:function ($$v) {_vm.$set(_vm.user, \"funktion\", $$v)},expression:\"user.funktion\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\",\"pa-0\":\"\",\"ma-0\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-checkbox',{attrs:{\"disabled\":_vm.isLoading || !_vm.user.confirmed,\"label\":\"Newsletter\",\"color\":\"accent\"},on:{\"change\":function($event){return _vm.saveUser()}},model:{value:(_vm.user.newsletterSubscribed),callback:function ($$v) {_vm.$set(_vm.user, \"newsletterSubscribed\", $$v)},expression:\"user.newsletterSubscribed\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\",\"pa-0\":\"\",\"ma-0\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"pa-0\":\"\"}},[_c('v-expansion-panel',[_c('v-expansion-panel-content',[_c('template',{slot:\"header\"},[_c('span',{staticClass:\"subheading\"},[_c('strong',[_vm._v(\"Rechte\")])])]),_c('v-layout',{attrs:{\"row\":\"\",\"pa-0\":\"\",\"ma-0\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-checkbox',{attrs:{\"disabled\":_vm.isLoading || !_vm.user.confirmed,\"label\":\"Benutzer verwalten\",\"color\":\"accent\"},on:{\"change\":function($event){return _vm.saveClaim(_vm.user.userId, _vm.user.eMail, 'ManageUser', $event)}},model:{value:(_vm.user.canManageUsers),callback:function ($$v) {_vm.$set(_vm.user, \"canManageUsers\", $$v)},expression:\"user.canManageUsers\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\",\"pa-0\":\"\",\"ma-0\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-checkbox',{attrs:{\"disabled\":_vm.isLoading || !_vm.user.confirmed,\"label\":\"Bestellen\",\"color\":\"accent\"},on:{\"change\":function($event){return _vm.saveClaim(_vm.user.userId, _vm.user.eMail, 'DirectOrder', $event)}},model:{value:(_vm.user.canOrderDirectly),callback:function ($$v) {_vm.$set(_vm.user, \"canOrderDirectly\", $$v)},expression:\"user.canOrderDirectly\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\",\"pa-0\":\"\",\"ma-0\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-checkbox',{attrs:{\"disabled\":_vm.isLoading || !_vm.user.confirmed,\"label\":\"Bestellung beantragen\",\"color\":\"accent\"},on:{\"change\":function($event){return _vm.saveClaim(_vm.user.userId, _vm.user.eMail, 'IndirectOrder', $event)}},model:{value:(_vm.user.canOrderIndirectly),callback:function ($$v) {_vm.$set(_vm.user, \"canOrderIndirectly\", $$v)},expression:\"user.canOrderIndirectly\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\",\"pa-0\":\"\",\"ma-0\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-checkbox',{attrs:{\"disabled\":_vm.isLoading || !_vm.user.confirmed,\"label\":\"Lieferadresse ändern\",\"color\":\"accent\"},on:{\"change\":function($event){return _vm.saveClaim(_vm.user.userId, _vm.user.eMail, 'ChangeDeliveryAddress', $event)}},model:{value:(_vm.user.canChangeDeliveryAddress),callback:function ($$v) {_vm.$set(_vm.user, \"canChangeDeliveryAddress\", $$v)},expression:\"user.canChangeDeliveryAddress\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\",\"pa-0\":\"\",\"ma-0\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-checkbox',{attrs:{\"disabled\":_vm.isLoading || !_vm.user.confirmed,\"label\":\"Rechnungsadresse ändern\",\"color\":\"accent\"},on:{\"change\":function($event){return _vm.saveClaim(_vm.user.userId, _vm.user.eMail, 'ChangeInvoiceAddress', $event)}},model:{value:(_vm.user.canChangeInvoiceAddress),callback:function ($$v) {_vm.$set(_vm.user, \"canChangeInvoiceAddress\", $$v)},expression:\"user.canChangeInvoiceAddress\"}})],1)],1)],2)],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\nexport class UserDto {\r\n public userId: string = '';\r\n public customerId: number = 0;\r\n public firstname: string = '';\r\n public lastname: string = '';\r\n public phone: string = '';\r\n public eMail: string = '';\r\n public newsletterSubscribed: boolean = false;\r\n public confirmed: boolean = false;\r\n public canManageUsers: boolean = false;\r\n public canChangeDeliveryAddress: boolean = false;\r\n public canChangeInvoiceAddress: boolean = false;\r\n public canOrderDirectly: boolean = false;\r\n public canOrderIndirectly: boolean = false;\r\n public funktion: string = '';\r\n}\r\n","\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport httpClient from '@/store/httpClient';\r\nimport { UserDto } from '@/dtos/userDto';\r\nimport { UserClaimDto } from '@/dtos/userClaimDto';\r\nimport rules from '@/store/rules'\r\n\r\n@Component({})\r\nexport default class UserTile extends Vue {\r\n\t@Prop()\r\n\tprivate user!: UserDto;\r\n\tprivate lastUser: UserDto = new UserDto();\r\n\tprivate isValid: boolean = false;\r\n\tprivate isLoading: boolean = false;\r\n\tprivate requiredStringMax35Rule = rules.requiredStringMax35Rule;\r\n\r\n\tprivate mounted() {\r\n\t\tthis.lastUser = JSON.parse(JSON.stringify(this.user));\r\n\t}\r\n\r\n\tprivate get hasChanges() {\r\n\t\treturn (this.lastUser.firstname !== this.user.firstname\r\n\t\t\t|| this.lastUser.lastname !== this.user.lastname\r\n\t\t\t|| this.lastUser.phone !== this.user.phone\r\n\t\t\t|| this.lastUser.funktion !== this.user.funktion\r\n\t\t\t|| this.lastUser.newsletterSubscribed !== this.user.newsletterSubscribed) \r\n\t}\r\n\r\n\tprivate async saveClaim(userId: string, username: string, claimType: string, claimValue: boolean) {\r\n\t\tconsole.log(`Setting claim ${claimType} to ${claimValue} for user ${username}...`);\r\n\t\ttry {\r\n\t\t\tlet claimDto: UserClaimDto = {\r\n\t\t\t\tuserId: userId,\r\n\t\t\t\tusername: username,\r\n\t\t\t\tclaimType: claimType,\r\n\t\t\t\tclaimValue: claimValue ? 'true' : 'false'\r\n\t\t\t};\t\t\t\r\n\t\t\tconst response = await httpClient().post('Customer/SaveUserClaim', claimDto);\r\n\t\t\tif (response.status === 200) {\r\n\t\t\t\tthis.$store.commit('setSnackbarText', 'Berechtigung erfolgreich gespeichert.');\r\n\t\t\t} else {\r\n\t\t\t\tthrow `Error status code: ${response.status}`;\r\n\t\t\t}\r\n\t\t} catch(err) {\r\n\t\t\tconsole.log('Error while saving user claim', err);\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Fehler beim Speichern der Berechtigung.');\r\n\t\t}\r\n\t}\r\n\t\r\n\tprivate async saveUser() {\r\n\t\tif (this.isValid && !this.isLoading && this.hasChanges) {\r\n\t\t\ttry {\r\n\t\t\t\tthis.isLoading = true;\r\n\t\t\t\tconst response = await httpClient().post('Customer/SaveUser', this.user);\r\n\t\t\t\tif (response.status === 200) {\r\n\t\t\t\t\tthis.$store.commit('setSnackbarText', 'Benutzerdaten erfolgreich gespeichert.');\r\n\t\t\t\t\tthis.lastUser = JSON.parse(JSON.stringify(this.user));\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthrow `Error status code: ${response.status}`;\r\n\t\t\t\t}\r\n\t\t\t} catch(err) {\r\n\t\t\t\tconsole.log('Error while saving user data', err);\r\n \tthis.$store.commit('setSnackbarErrorText', 'Benutzerdaten konnten nicht gespeichert werden.');\r\n\t\t\t} finally {\r\n\t\t\t\tthis.isLoading = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprivate async getLoginCode() {\r\n\t\ttry {\r\n\t\t\tthis.isLoading = true;\r\n\t\t\tconst response = await httpClient().get(`User/getLoginCode?username=${this.user.eMail}`);\r\n\t\t\tconst link = document.createElement('a');\r\n\t\t\tvar url = process.env.VUE_APP_KUNDENPORTAL_URL;\r\n\t\t\tif (url !== undefined) {\r\n \turl = url.substr(0, url.length - 3);\r\n \tlink.href = `${url}?signInUser=${encodeURIComponent(response.data)}`;\r\n\t\t\t}\r\n link.setAttribute('target', '_blank'); \r\n link.click();\r\n\t\t\tthis.$store.commit('setSnackbarText', 'Logincode erfolgreich geladen.');\r\n\t\t} catch {\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Logincode konnte nicht geladen werden.');\r\n\t\t}\r\n\t}\r\n\r\n}\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserTile.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserTile.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./UserTile.vue?vue&type=template&id=038908e8&scoped=true\"\nimport script from \"./UserTile.vue?vue&type=script&lang=ts\"\nexport * from \"./UserTile.vue?vue&type=script&lang=ts\"\nimport style0 from \"./UserTile.vue?vue&type=style&index=0&id=038908e8&prod&scoped=true&lang=css\"\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 \"038908e8\",\n null\n \n)\n\nexport default component.exports","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport httpClient from '../../store/httpClient';\r\nimport { CustomerDetailDto } from '../../dtos/customerDetailDto';\r\nimport { CustomerInfoDto } from '@/dtos/customerInfoDto';\r\nimport { AddressDto } from '@/dtos/addressDto';\r\nimport { AddressType } from '@/dtos/addressType';\r\nimport AddressesOverview from '@/components/AddressesOverview.vue'\r\nimport AuditTrail from '@/components/AuditTrail.vue'\r\nimport UserTile from '@/components/UserTile.vue'\r\nimport rules from '@/store/rules'\r\n\r\n@Component({\r\n components: {\r\n AddressesOverview,\r\n UserTile,\r\n AuditTrail\r\n },\r\n})\r\nexport default class CustomerDashboard extends Vue {\r\n @Prop()\r\n private customerId!: string;\r\n private loading: boolean = false;\r\n private kundeLöschenDialog: boolean = false;\r\n private kundendatenVerschiebenDialog: boolean = false;\r\n private targetCustomerId: number = 0;\r\n private validCreditLimit: boolean = true;\r\n private requiredNonNegativeIntegerRule = rules.requiredNonNegativeIntegerRule;\r\n private tabTypes: { key: string, type: AddressType, display: string }[] = [\r\n {\r\n key: \"customer\",\r\n type: AddressType.CustomerPersonal,\r\n display: \"Kundendaten\",\r\n },\r\n {\r\n key: \"users\",\r\n type: AddressType.CustomerPersonal, // Is not used\r\n display: \"Benutzer\",\r\n },\r\n {\r\n key: \"delivery\",\r\n type: AddressType.CustomerDelivery,\r\n display: \"Lieferadresse\",\r\n },\r\n {\r\n key: \"invoice\",\r\n type: AddressType.CustomerInvoice,\r\n display: \"Rechnungsadresse\",\r\n },\r\n {\r\n key: \"creditLimit\",\r\n type: AddressType.CustomerPersonal, // Is not used\r\n display: \"Kreditlimit\",\r\n },\r\n {\r\n key: \"auditTrail\",\r\n type: AddressType.CustomerPersonal, // Is not used\r\n display: \"Audit Trail\",\r\n },\r\n ]\r\n\r\n private async mounted() {\r\n this.loading = true;\r\n await this.loadData()\r\n }\r\n\r\n private async loadData() {\r\n await this.loadCustomerInfo()\r\n .then(this.loadCustomerDetail)\r\n .then(() => this.loading = false);\r\n }\r\n\r\n private get addressesLoaded() {\r\n return this.$store.state.detailCustomerInfo \r\n && this.$store.state.detailCustomerInfo.customerId == this.customerId\r\n && this.$store.state.detailCustomerDetails \r\n && this.$store.state.detailCustomerDetails.customerId == this.customerId;\r\n }\r\n\r\n private get customer(): CustomerInfoDto {\r\n if (this.$store.state.detailCustomerInfo && this.$store.state.detailCustomerInfo.customerId == this.customerId) {\r\n return this.$store.state.detailCustomerInfo;\r\n }\r\n // Returning empty object as long as correct informatino is not loaded into state.\r\n return new CustomerInfoDto();\r\n }\r\n\r\n private get customerDetail(): CustomerDetailDto {\r\n if (this.$store.state.detailCustomerDetails && this.$store.state.detailCustomerDetails.customerId == this.customerId) {\r\n return this.$store.state.detailCustomerDetails;\r\n }\r\n // Returning empty object as long as correct informatino is not loaded into state.\r\n return new CustomerDetailDto();\r\n }\r\n private set customerDetail(details: CustomerDetailDto) {\r\n this.$store.commit('setDetailCustomerDetails', details);\r\n }\r\n\r\n private async loadCustomerInfo() {\r\n try {\r\n const response = await httpClient().get(`Customer/GetCustomerInfoById?customerId=${this.customerId}`);\r\n this.$store.commit('setDetailCustomerInfo', response.data);\r\n } catch(err) {\r\n console.log('Failed getting customer info.');\r\n throw(err);\r\n }\r\n }\r\n\r\n private async loadCustomerDetail() {\r\n try {\r\n const response = await httpClient().get(`Customer/GetCustomerDetail?customerId=${this.customerId}`);\r\n this.$store.commit('setDetailCustomerDetails', response.data);\r\n } catch(err) {\r\n console.log('Failed getting customer details.');\r\n throw(err);\r\n }\r\n }\r\n\r\n private get tags() {\r\n return this.$store.state.tags;\r\n }\r\n\r\n private back() {\r\n this.$router.go(-1);\r\n }\r\n\r\n private goToArticles() {\r\n let customerIdProp = this.customerId;\r\n this.$router.push({name: 'article', params: { customerIdProp }});\r\n }\r\n\r\n /**\r\n * Saves the customer details.\r\n */\r\n private async saveCustomerDetail() {\r\n try {\r\n if (this.loading) {\r\n return;\r\n }\r\n this.loading = true;\r\n this.customerDetail.tags = this.customer.tags;\r\n const response = await httpClient().post(`Customer/SaveCustomerDetail`, this.customerDetail);\r\n if (response.data !== '') {\r\n this.$store.commit('setSnackbarText', 'Änderungen erfolgreich gespeichert.');\r\n }\r\n } catch (e) {\r\n console.error('Save customer failed.');\r\n console.error(e);\r\n this.$store.commit('setSnackbarErrorText', 'Änderungen konnten nicht gespeichert werden.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async updateCreditLimit() {\r\n try {\r\n if (this.loading) {\r\n return;\r\n }\r\n this.loading = true;\r\n await httpClient().post(`Customer/UpdateCreditLimit?customerId=${this.customerId}&newLimit=${this.customerDetail.creditLimit}`);\r\n this.$store.commit('setSnackbarText', 'Kreditlimit erfolgreich angepasst.');\r\n } catch {\r\n console.log('Credit limit adjustment failed.');\r\n this.$store.commit('setSnackbarErrorText', 'Kreditlimit konnte nicht angepasst werden.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async deleteCustomer() {\r\n try {\r\n this.loading = true;\r\n // Check hier, ob Kunde Bestellungen hat oder nicht\r\n // Dann entsprechend reagieren und Kunde entfernen oder nur markieren\r\n // Wenn das delete failt, kann belassen werden, dann hat es wohl nicht funktioniert.\r\n\r\n const response = await httpClient().get(`Customer/HasCustomerOrders?customerId=${this.customerId}`);\r\n let hasOrders = response.data;\r\n await httpClient().delete(`Customer/deleteCustomer?customerId=${this.customerId}`);\r\n if (!hasOrders) {\r\n this.$store.commit('removeCustomer', this.customerId);\r\n this.$store.commit('setSnackbarText', 'Kunde wurde mit allen Daten gelöscht.');\r\n } else {\r\n this.$store.commit('markCustomerInactive', this.customerId);\r\n this.$store.commit('setSnackbarText', 'Bestellungen sind vorhanden. Kunde wurde als inaktiv markiert.');\r\n }\r\n this.kundeLöschenDialog = false;\r\n this.$router.push({name: 'customer'});\r\n } catch {\r\n this.$store.commit('setSnackbarErrorText', 'Fehler beim Löschen des Kunden. Log prüfen.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async moveCustomerData() {\r\n try {\r\n this.loading = true;\r\n await httpClient().post(`Customer/moveCustomerData?sourceCustomerId=${this.customerId}&targetCustomerId=${this.targetCustomerId}`);\r\n this.$store.commit('setSnackbarText', 'Daten erfolgreich verschoben.');\r\n this.kundendatenVerschiebenDialog = false;\r\n } catch {\r\n this.$store.commit('setSnackbarErrorText', 'Fehler beim Verschieben der Daten. Log prüfen.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private addQuickInvoice() {\r\n this.$router.push({name: 'createOrder', params: { customerId: this.customerId }});\r\n }\r\n}\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Detail.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Detail.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Detail.vue?vue&type=template&id=5910e2ac\"\nimport script from \"./Detail.vue?vue&type=script&lang=ts\"\nexport * from \"./Detail.vue?vue&type=script&lang=ts\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[(!_vm.loading && !_vm.loaded)?_c('div',[_c('h4',[_vm._v(\"Einstellungen konnten nicht geladen werden\")])]):(_vm.loading)?_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',{staticClass:\"text-xs-center\",attrs:{\"cols\":\"12\"}},[_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"color\":\"accent\"}})],1)],1):(this.loaded)?_c('div',[_c('h2',[_vm._v(\"Globale Einstellungen\")]),_c('v-form',{ref:\"formEuro\",model:{value:(_vm.euroValid),callback:function ($$v) {_vm.euroValid=$$v},expression:\"euroValid\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"mt-3\":\"\"}},[_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-text-field',{staticStyle:{\"min-width\":\"300px\"},attrs:{\"min-width\":\"\",\"label\":\"Euro-Kurs (betrifft Berechnungen für Reports etc.)\",\"rules\":_vm.requiredNumber0To2Rule},model:{value:(_vm.euroRate),callback:function ($$v) {_vm.euroRate=$$v},expression:\"euroRate\"}})],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":!_vm.euroValid,\"title\":\"Speichert den Euro-Kurs\"},on:{\"click\":function($event){return _vm.saveEuroRate()}}},[_vm._v(\"Speichern\")])],1)],1)],1)],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport httpClient from '../../store/httpClient';\r\n\r\n@Component({})\r\nexport default class GlobalSettings extends Vue {\r\n private loading: boolean = false;\r\n private saving: boolean = false;\r\n private loaded: boolean = false;\r\n private euroRate: number = 0;\r\n private euroValid: boolean = false;\r\n private requiredNumber0To2Rule: any = [\r\n (v: number) => !!v.toString() || 'Angabe erforderlich',\r\n (v: number) => !isNaN(v) || 'Muss eine Zahl sein.',\r\n\t\t(v: number) => v > 0 || 'Muss > 0 sein.',\r\n\t\t(v: number) => v <= 2 || 'Muss <= 2 sein.'\r\n ];\r\n\r\n private mounted() {\r\n\t\tthis.getGlobalSettings();\r\n }\r\n\r\n private async getGlobalSettings() {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get('Settings/GetGlobalSettings');\r\n this.euroRate = response.data.euroRate;\r\n this.loaded = true;\r\n } catch {\r\n this.$store.commit('setSnackbarErrorText', 'Globale Einstellungen konnten nicht geladen werden.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async saveEuroRate() {\r\n try {\r\n this.saving = true;\r\n let data = { value: this.euroRate };\r\n const response = await httpClient().post(`Settings/SaveEuroRate`, data);\r\n this.$store.commit('setSnackbarText', 'Euro-Kurs wurde angepasst.');\r\n } catch {\r\n this.$store.commit('setSnackbarErrorText', 'Euro-Kurs konnte nicht gespeichert werden.');\r\n } finally {\r\n this.saving = false;\r\n }\r\n }\r\n\r\n}\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GlobalSettings.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GlobalSettings.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./GlobalSettings.vue?vue&type=template&id=5b6688ee\"\nimport script from \"./GlobalSettings.vue?vue&type=script&lang=ts\"\nexport * from \"./GlobalSettings.vue?vue&type=script&lang=ts\"\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","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _arrayWithoutHoles(r) {\n if (Array.isArray(r)) return arrayLikeToArray(r);\n}\nexport { _arrayWithoutHoles as default };","function _iterableToArray(r) {\n if (\"undefined\" != typeof Symbol && null != r[Symbol.iterator] || null != r[\"@@iterator\"]) return Array.from(r);\n}\nexport { _iterableToArray as default };","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableSpread as default };","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nfunction _toConsumableArray(r) {\n return arrayWithoutHoles(r) || iterableToArray(r) || unsupportedIterableToArray(r) || nonIterableSpread();\n}\nexport { _toConsumableArray as default };","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-card',[_c('v-card-title',[_c('h3',[_vm._v(\"Adressänderung\")])]),_c('v-form',{ref:\"addressForm\",model:{value:(_vm.validForm),callback:function ($$v) {_vm.validForm=$$v},expression:\"validForm\"}},[_c('v-container',{attrs:{\"fluid\":\"\",\"pa-3\":\"\",\"ma-0\":\"\"}},[_c('v-layout',{attrs:{\"column\":\"\"}},[(_vm.addressType != _vm.customerPersonalType)?_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Vorname\",\"rules\":_vm.addressOptionalStringRule},on:{\"blur\":function($event){_vm.address.givenName = _vm.address.givenName.trim()}},model:{value:(_vm.address.givenName),callback:function ($$v) {_vm.$set(_vm.address, \"givenName\", $$v)},expression:\"address.givenName\"}})],1):_vm._e(),(_vm.addressType != _vm.customerPersonalType)?_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Nachname\",\"rules\":_vm.addressRequiredStringRule},on:{\"blur\":function($event){_vm.address.surname = _vm.address.surname.trim()}},model:{value:(_vm.address.surname),callback:function ($$v) {_vm.$set(_vm.address, \"surname\", $$v)},expression:\"address.surname\"}})],1):_vm._e(),_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Firma\",\"rules\":_vm.addressOptionalStringRule},on:{\"blur\":function($event){_vm.address.companyName = _vm.address.companyName.trim()}},model:{value:(_vm.address.companyName),callback:function ($$v) {_vm.$set(_vm.address, \"companyName\", $$v)},expression:\"address.companyName\"}})],1),_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Strasse\",\"rules\":_vm.addressRequiredStringRule},on:{\"blur\":function($event){_vm.address.street = _vm.address.street.trim()}},model:{value:(_vm.address.street),callback:function ($$v) {_vm.$set(_vm.address, \"street\", $$v)},expression:\"address.street\"}})],1),_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"PLZ\",\"rules\":_vm.correctPlzRule},on:{\"blur\":function($event){_vm.address.zip = _vm.address.zip.trim()}},model:{value:(_vm.address.zip),callback:function ($$v) {_vm.$set(_vm.address, \"zip\", $$v)},expression:\"address.zip\"}})],1),_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Ort\",\"rules\":_vm.addressRequiredStringRule},on:{\"blur\":function($event){_vm.address.town = _vm.address.town.trim()}},model:{value:(_vm.address.town),callback:function ($$v) {_vm.$set(_vm.address, \"town\", $$v)},expression:\"address.town\"}})],1),_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Land\",\"readonly\":\"\",\"disabled\":\"\"},model:{value:(_vm.address.country),callback:function ($$v) {_vm.$set(_vm.address, \"country\", $$v)},expression:\"address.country\"}})],1),(_vm.addressType == _vm.customerPersonalType || _vm.addressType == _vm.customerDeliveryType || _vm.addressType == _vm.orderDeliveryType)?_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Telefon\",\"rules\":_vm.requiredRule},on:{\"blur\":function($event){_vm.address.phone = _vm.address.phone.trim()}},model:{value:(_vm.address.phone),callback:function ($$v) {_vm.$set(_vm.address, \"phone\", $$v)},expression:\"address.phone\"}})],1):_vm._e(),(_vm.addressType == _vm.orderInvoiceType && _vm.address.country === 'Deutschland')?_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"E-Mail\",\"rules\":_vm.requiredEmailRule},on:{\"blur\":function($event){_vm.address.eMail = _vm.address.eMail.trim()}},model:{value:(_vm.address.eMail),callback:function ($$v) {_vm.$set(_vm.address, \"eMail\", $$v)},expression:\"address.eMail\"}})],1):(_vm.addressType == _vm.orderInvoiceType)?_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"E-Mail\",\"rules\":_vm.optionalEmailRule},on:{\"blur\":function($event){_vm.address.eMail = _vm.address.eMail.trim()}},model:{value:(_vm.address.eMail),callback:function ($$v) {_vm.$set(_vm.address, \"eMail\", $$v)},expression:\"address.eMail\"}})],1):_vm._e(),(_vm.addressType == _vm.customerPersonalType)?_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"E-Mail\",\"readonly\":\"\",\"disabled\":\"\"},model:{value:(_vm.address.eMail),callback:function ($$v) {_vm.$set(_vm.address, \"eMail\", $$v)},expression:\"address.eMail\"}})],1):(_vm.addressType == _vm.customerInvoiceType && _vm.address.country === 'Deutschland')?_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"E-Mail\",\"rules\":_vm.requiredEmailRule},on:{\"blur\":function($event){_vm.address.eMail = _vm.address.eMail.trim()}},model:{value:(_vm.address.eMail),callback:function ($$v) {_vm.$set(_vm.address, \"eMail\", $$v)},expression:\"address.eMail\"}})],1):(_vm.addressType == _vm.customerInvoiceType)?_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"E-Mail\",\"rules\":_vm.optionalEmailRule},on:{\"blur\":function($event){_vm.address.eMail = _vm.address.eMail.trim()}},model:{value:(_vm.address.eMail),callback:function ($$v) {_vm.$set(_vm.address, \"eMail\", $$v)},expression:\"address.eMail\"}})],1):_vm._e()],1)],1)],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{on:{\"click\":function($event){return _vm.$emit('closed')}}},[_vm._v(\"\\n Abbrechen\\n \")]),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":_vm.isLoading || !_vm.validForm},on:{\"click\":function($event){return _vm.saveAddress()}}},[(_vm.isLoading)?_c('v-progress-circular',{staticClass:\"mr-2\",attrs:{\"indeterminate\":\"\",\"size\":\"20\"}}):_vm._e(),_vm._v(\"\\n Speichern\\n \")],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport httpClient from '../store/httpClient';\r\nimport { AddressDto } from '@/dtos/addressDto';\r\nimport { AddressType } from '@/dtos/addressType';\r\nimport rules from '@/store/rules'\r\n\r\n@Component({\r\n components: {\r\n },\r\n})\r\nexport default class EditAddressComponent extends Vue {\r\n @Prop()\r\n private address!: AddressDto;\r\n\t@Prop()\r\n\tprivate addressType!: AddressType;\r\n\t@Prop()\r\n\tprivate orderId!: number;\r\n private isLoading: boolean = false;\r\n\tprivate validForm: boolean = true;\r\n\tprivate customerPersonalType: AddressType = AddressType.CustomerPersonal;\r\n\tprivate customerDeliveryType: AddressType = AddressType.CustomerDelivery;\r\n\tprivate customerInvoiceType: AddressType = AddressType.CustomerInvoice;\r\n\tprivate orderDeliveryType: AddressType = AddressType.OrderDelivery;\r\n\tprivate orderInvoiceType: AddressType = AddressType.OrderInvoice;\r\n\tprivate requiredRule = rules.requiredRule;\r\n\tprivate addressOptionalStringRule = rules.addressOptionalStringRule;\r\n\tprivate addressRequiredStringRule = rules.addressRequiredStringRule;\r\n\tprivate requiredEmailRule = rules.requiredEmailRule;\r\n\tprivate optionalEmailRule = rules.optionalEmailRule;\r\n\r\n\tprivate correctPlzRule = [\r\n (v: string) => (\r\n (this.address.country !== 'Deutschland' && this.address.country !== 'Schweiz' && this.address.country !== 'Liechtenstein') ||\r\n (this.address.country === 'Deutschland' && v.length === 5 && parseInt(v) >= 1000 && parseInt(v) <= 99999) ||\r\n ((this.address.country === 'Schweiz' || this.address.country === 'Liechtenstein') && v.length === 4 && parseInt(v) >= 1000 && parseInt(v) <= 9999)) ||\r\n 'Muss eine gültige PLZ sein.'\r\n ];\r\n\r\n\tprivate async saveAddress() {\r\n\t\ttry {\r\n\t\t\tthis.isLoading = true;\r\n\r\n\t\t\tswitch (this.addressType) {\r\n\t\t\t\tcase AddressType.CustomerPersonal:\r\n\t\t\t\t\tawait httpClient().post(`Customer/SaveCustomerGenericAddress`, this.address);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase AddressType.CustomerInvoice:\r\n\t\t\t\tcase AddressType.CustomerDelivery:\r\n\t\t\t\t\tawait httpClient().post(`Customer/AddOrUpdateCustomerAddress`, this.address);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase AddressType.OrderInvoice:\r\n\t\t\t\t\tawait httpClient().post(`CustomerOrder/SaveOrderInvoiceAddress?orderId=${this.orderId}`, this.address);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase AddressType.OrderDelivery:\r\n\t\t\t\t\tawait httpClient().post(`CustomerOrder/SaveOrderDeliveryAddress?orderId=${this.orderId}`, this.address);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tthrow 'Wrong AddressType.'\r\n\t\t\t}\r\n\r\n\t\t\tthis.$store.commit('setSnackbarText', 'Adresse wurde erfolgreich geändert.');\r\n\t\t\tthis.$emit('saved', this.address);\r\n\t\t\tthis.$emit('closed');\r\n\t\t} catch (err) {\r\n\t\t\tconsole.log(err);\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Speichern der Adresse fehlgeschlagen.');\r\n\t\t} finally {\r\n\t\t\tthis.isLoading = false;\r\n\t\t}\t\t\r\n\t}\r\n}\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditAddressComponent.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditAddressComponent.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./EditAddressComponent.vue?vue&type=template&id=00576bc4\"\nimport script from \"./EditAddressComponent.vue?vue&type=script&lang=ts\"\nexport * from \"./EditAddressComponent.vue?vue&type=script&lang=ts\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.fertigers,\"return-object\":\"\",\"item-text\":\"name\",\"label\":\"Fertiger\"},scopedSlots:_vm._u([{key:\"item\",fn:function(data){return [_c('span',{style:(data.item.active ? 'color:black' : 'color:lightgrey')},[_vm._v(\"\\n \"+_vm._s(data.item.name)+\"\\n \")])]}}]),model:{value:(_vm.fertiger),callback:function ($$v) {_vm.fertiger=$$v},expression:\"fertiger\"}})],1),_c('v-flex',{staticStyle:{\"max-width\":\"290px\"},attrs:{\"shrink\":\"\"}},[_c('date-picker',{attrs:{\"selectedDate\":_vm.startDate,\"pastDateAllowed\":true,\"futureDateAllowed\":false,\"label\":\"Zeitraum von:\"},on:{\"update:selectedDate\":function($event){return _vm.setStartDate($event)}}})],1),_c('v-flex',{staticStyle:{\"max-width\":\"290px\"},attrs:{\"shrink\":\"\"}},[_c('date-picker',{attrs:{\"selectedDate\":_vm.endDate,\"pastDateAllowed\":true,\"futureDateAllowed\":true,\"label\":\"Zeitraum bis:\"},on:{\"update:selectedDate\":function($event){return _vm.setEndDate($event)}}})],1),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":_vm.fertiger === null,\"title\":\"Preise des gewählten Fertigers im gewählten Zeitraum anzeigen.\"},on:{\"click\":function($event){return _vm.loadFertigerPrices()}}},[_vm._v(\"\\n Anzeigen\\n \")]),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"loading\":_vm.isLoadingExcel,\"disabled\":_vm.fertiger === null || !_vm.canExport,\"title\":\"Lädt die Fertigerabrechnung als Exceldatei runter.\"},on:{\"click\":function($event){return _vm.getExcel(false)}}},[_c('v-icon',[_vm._v(\"receipt_long\")]),_vm._v(\"\\n Fertigerabrechnung\\n \")],1),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"loading\":_vm.isLoadingExcel,\"disabled\":_vm.fertiger === null || !_vm.canExport,\"title\":\"Lädt die Abrechnung für externe Pulverbeschichter als Exceldatei runter.\"},on:{\"click\":function($event){return _vm.getExcel(true)}}},[_c('v-icon',[_vm._v(\"receipt_long\")]),_vm._v(\"\\n Pulverbeschichterabrechnung\\n \")],1),_c('v-btn',{attrs:{\"disabled\":_vm.fertiger === null,\"title\":\"Berechnet die Auftragspreise und Zeiten für die angezeigten Aufträge neu.\"},on:{\"click\":function($event){_vm.showRecalculateDialog = true}}},[_vm._v(\"\\n Neu berechnen...\\n \")])],1),_c('v-progress-circular',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.showResults && _vm.loading),expression:\"!showResults && loading\"}],attrs:{\"color\":\"primary\",\"indeterminate\":\"\"}}),(_vm.showResults)?_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Suche\",\"prepend-icon\":\"search\",\"hint\":\"Suche nach Kunden- oder Auftragsnummer\"},model:{value:(_vm.suchbegriff),callback:function ($$v) {_vm.suchbegriff=$$v},expression:\"suchbegriff\"}})],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-checkbox',{attrs:{\"label\":\"Liefertermin im Zeitraum\"},model:{value:(_vm.lieferterminImZeitraum),callback:function ($$v) {_vm.lieferterminImZeitraum=$$v},expression:\"lieferterminImZeitraum\"}})],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-checkbox',{attrs:{\"label\":\"Eingegangen im Zeitraum\"},model:{value:(_vm.eingegangenImZeitraum),callback:function ($$v) {_vm.eingegangenImZeitraum=$$v},expression:\"eingegangenImZeitraum\"}})],1)],1):_vm._e(),(_vm.showResults)?_c('v-layout',{attrs:{\"row\":\"\",\"fill-height\":\"\",\"align-end\":\"\"}},[_c('v-flex',[(_vm.fertiger != null)?_c('table',{attrs:{\"title\":\"Produktionskosten ohne Material, Pulverbeschichtung und Verpackungsmaterial\"}},[_c('tr',[_c('td',[_vm._v(\"\\n Fertigung:\\n \")]),_c('td',{staticClass:\"price\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")(_vm.summeFertiger - _vm.summeMaterialaufwand - _vm.summeZertifikatsaufwand - \n _vm.summePulverbeschichtungsaufwand - _vm.summeVerpackungsmaterial))+\"\\n \")])]),_c('tr',[_c('td',[_vm._v(\"\\n Material:\\n \")]),_c('td',{staticClass:\"price\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")(_vm.summeMaterialaufwand))+\"\\n \")])]),_c('tr',[_c('td',[_vm._v(\"\\n Zertifikate (\"+_vm._s(_vm.filteredOrders.filter(f => f.zertifikatsaufwand > 0).length)+\" Aufträge):\\n \")]),_c('td',{staticClass:\"price\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")(_vm.summeZertifikatsaufwand))+\"\\n \")])]),_c('tr',[_c('td',[_vm._v(\"\\n Pulverbeschichten (\"+_vm._s(_vm.filteredOrders.filter(f => f.pulverbeschichtungsAufwand > 0).length)+\" Aufträge):\\n \")]),_c('td',{staticClass:\"price\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")(_vm.summePulverbeschichtungsaufwand))+\"\\n \")])]),_c('tr',[_c('td',[_vm._v(\"\\n Verpackungsmaterial:\\n \")]),_c('td',{staticClass:\"price\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")(_vm.summeVerpackungsmaterial))+\"\\n \")])]),_c('tr',[_c('td',[_vm._v(\"\\n Abzüglich Gutschriften:\\n \")]),_c('td',{staticClass:\"price\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")((_vm.summeManufacturerDiscounts + _vm.summePowderCoaterDiscounts)))+\"\\n \")])]),_c('tr',{staticClass:\"total\"},[_c('td',[_vm._v(\"\\n Total \"+_vm._s(_vm.fertiger.name)+\":\\n \")]),_c('td',{staticClass:\"price\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")(_vm.summeFertiger))+\"\\n \")])])]):_vm._e()]),_c('v-flex',[(_vm.fertiger != null)?_c('table',{attrs:{\"title\":\"Enthaltene Abzüge für Beanstandungen\"}},[_c('tr',[_c('td',[_vm._v(\"\\n Kosten für Beanstandungen:\\n \")]),_c('td',{staticClass:\"price\"})]),_c('tr',[_c('td',[_vm._v(\"\\n Fertigung:\\n \")]),_c('td',{staticClass:\"price\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")(_vm.summeManufacturingComplaint))+\"\\n \")])]),_c('tr',[_c('td',[_vm._v(\"\\n Gutschriften zu Lasten Fertiger:\\n \")]),_c('td',{staticClass:\"price\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")(_vm.summeManufacturerDiscounts))+\"\\n \")])]),_c('tr',[_c('td',[_vm._v(\"\\n Pulverbeschichtung:\\n \")]),_c('td',{staticClass:\"price\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")(_vm.summePowderCoatingComplaint))+\"\\n \")])]),_c('tr',{staticClass:\"table\"},[_c('td',[_vm._v(\"\\n Gutschriften zu Lasten Pulverbeschichter:\\n \")]),_c('td',{staticClass:\"price\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")(_vm.summePowderCoaterDiscounts))+\"\\n \")])]),_c('tr',{staticClass:\"table\"},[_c('td',[_vm._v(\"\\n Gutschriften zu Lasten Blexon:\\n \")]),_c('td',{staticClass:\"price\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")(_vm.summeBlexonDiscounts))+\"\\n \")])])]):_vm._e()]),_c('v-flex',[(_vm.fertiger != null)?_c('table',{attrs:{\"title\":\"Berechnung basiert auf dem Auftragstotal (inkl. Rabatt). Davon werden die Margen von Blexon abgezogen. Die Margen werden aus den Zeiten / Auftrag berechnet.\"}},[_c('tr',[_c('td',{attrs:{\"title\":\"Summe der Beträge die den Kunden in Rechnung gestellt wurden, abzüglich der Gutschriften, welche im Zeitraum gewährt wurden.\"}},[_vm._v(\"\\n Auftragseingang:\\n \")]),_c('td',{staticClass:\"price\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")(_vm.summeCustomerOrderPrices))+\"\\n \\n \")])]),_vm._l((_vm.effektiveTransportkosten),function(kostenpunkt){return _c('tr',{key:kostenpunkt.name},[_c('td',[_vm._v(\"\\n \"+_vm._s(kostenpunkt.name)+\":\\n \")]),_c('td',{staticClass:\"price\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")(kostenpunkt.cost))+\"\\n \")])])}),_c('tr',[_c('td',[_vm._v(\"\\n \"+_vm._s(_vm.fertiger.name)+\":\\n \")]),_c('td',{staticClass:\"price\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")(_vm.summeFertiger))+\"\\n \")])]),_c('tr',{staticClass:\"total\"},[_c('td',[_vm._v(\"\\n Total (DB):\\n \")]),_c('td',{staticClass:\"price\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")(_vm.deckungsbeitrag))+\"\\n \")]),_c('td',[_vm._v(\"\\n (\"+_vm._s(_vm._f(\"format2Digit\")(_vm.deckungsbeitragInProzent))+\" %)\\n \")])])],2):_vm._e()]),_c('v-flex')],1):_vm._e(),(_vm.showResults)?_c('v-layout',[_c('v-flex',[_c('ul',_vm._l((_vm.fertigerCalculationReport.messages),function(message,index){return _c('li',{key:index},[_vm._v(\"\\n \"+_vm._s(message)+\"\\n \")])}),0)])],1):_vm._e()],1),(_vm.showResults)?_c('span',{staticStyle:{\"font-size\":\"0.9em\"}},[_vm._v(\"\\n \"+_vm._s(_vm.filteredOrders.length)+\" von \"+_vm._s(_vm.fertigerCalculationReport.orderCalculationReportDtos.length)+\" \\n Aufträgen die bei \"+_vm._s(_vm.fertiger.name)+\" im gewählten Zeitraum eingegangen sind oder geliefert wurden.\\n \")]):_vm._e(),(_vm.showResults)?_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"headers\":_vm.headers,\"hide-actions\":\"\",\"item-key\":\"orderId\",\"items\":_vm.filteredOrders},scopedSlots:_vm._u([{key:\"headers\",fn:function(props){return [_c('tr',_vm._l((props.headers),function(header){return _c('th',{key:header.text,staticClass:\"text-xs-left\"},[_vm._v(\"\\n \"+_vm._s(header.text)+\"\\n \")])}),0)]}},{key:\"items\",fn:function(props){return [_c('tr',{staticClass:\"orderRow\",class:{priceIsHeigher: _vm.priceIsWrong(props.item)},style:({ 'background-color': (props.item.deckungsbeitragInProzent < 15 || props.item.deckungsbeitragInProzent > 35) && props.item.deckungsbeitragInProzent != '' ? '#efbb20' : 'white'}),on:{\"click\":function($event){props.expanded = !props.expanded}}},[_c('td',[_vm._v(_vm._s(props.item.customerId))]),_c('td',[_vm._v(_vm._s(props.item.orderId))]),_c('td',[_vm._v(_vm._s(_vm._f(\"formatDate\")(props.item.receivedAt)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"formatDate\")(props.item.deliveryDate)))]),_c('td',[_vm._v(_vm._s(props.item.totalFertigerPriceFormated))]),_c('td',[_vm._v(_vm._s(props.item.totalCustomerOrderPriceFormated))]),_c('td',[_vm._v(_vm._s(props.item.deckungsbeitragInProzent)+\"%\")]),_c('td',[_vm._v(_vm._s(props.item.totalLasertimeFormated))]),_c('td',[_vm._v(_vm._s(props.item.totalBendtimeFormated))])])]}},{key:\"expand\",fn:function(props){return [_c('v-data-table',{staticClass:\"elevation-1 ml-3 mb-3\",attrs:{\"headers\":_vm.positionHeader,\"items\":props.item.positionCalculationReportDtos,\"item-key\":\"item.articleId\",\"hide-actions\":\"\"},scopedSlots:_vm._u([{key:\"items\",fn:function(position){return [_c('tr',{on:{\"click\":function($event){return _vm.showCalculationDetails(position.item, props.item)}}},[_c('td',[_vm._v(\"\\n \"+_vm._s(position.item.description)+\"\\n \"),(position.item.description === 'Auftragsrabatt')?_c('span',[_c('br'),_vm._v(\"[\"+_vm._s(_vm.getPriceModelText(props.item.priceModel))+\"]\\n \")]):_vm._e()]),_c('td',[(position.item.articleId != 0)?_c('span',[_vm._v(\"\\n \"+_vm._s(position.item.articleId)+\"\\n \")]):_vm._e()]),_c('td',[_vm._v(_vm._s(position.item.materialName))]),_c('td',[_vm._v(_vm._s(position.item.quantity))]),_c('td',[_vm._v(_vm._s(_vm._f(\"format2Digit\")(position.item.fertigerPrice)))]),_c('td',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")(position.item.thirdPartyCost))+\"\\n \"),(position.item.thirdPartyCost > 0)?_c('span',[_vm._v(\"(\"+_vm._s(position.item.thirdPartyName)+\")\")]):_vm._e()]),_c('td',{attrs:{\"title\":\"Für Auftrag berechneter Preis für die gesamte Position. In Klammer der Preis, wenn der Artikel sortenrein bestellt würde.\"}},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"format2Digit\")(position.item.customerOrderPrice * position.item.quantity))+\"\\n \")]),_c('td',[(position.item.lasertimeFormated != '0:00:00')?_c('span',[_vm._v(\"\\n \"+_vm._s(position.item.lasertimeFormated)+\"\\n \")]):_vm._e()]),_c('td',[(position.item.bendTimeFormated != '0:00:00')?_c('span',[_vm._v(\"\\n \"+_vm._s(position.item.bendTimeFormated)+\"\\n \")]):_vm._e()])])]}}],null,true)})]}}],null,false,2615727723)}):_vm._e(),(_vm.showCalculationDetailsDialog)?_c('v-dialog',{attrs:{\"lazy\":true},model:{value:(_vm.showCalculationDetailsDialog),callback:function ($$v) {_vm.showCalculationDetailsDialog=$$v},expression:\"showCalculationDetailsDialog\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\"\\n Blexonnr: \"+_vm._s(_vm.currentPosition.articleId)+\" \"),_c('br'),_vm._v(\"\\n Artikelname: \"+_vm._s(_vm.currentPosition.description)+\" \"),_c('br'),_vm._v(\"\\n Alle Zeit- und Preisangaben sind immer das Total für die gesamte Position. Hier also für \"+_vm._s(_vm.currentPosition.quantity)+\" Teil(e)\\n \")]),_c('v-card-text',[_c('v-data-table',{attrs:{\"hide-actions\":\"\",\"headers\":_vm.detailHeaders,\"items\":_vm.currentPosition.workSteps},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('td',[_vm._v(_vm._s(props.item.name))]),_c('td',[_vm._v(_vm._s(props.item.duration))]),_c('td',[_vm._v(_vm._s(_vm._f(\"format2Digit\")(props.item.cost * _vm.currentPosition.quantity))+\" (\"+_vm._s(_vm._f(\"format2Digit\")(props.item.cost / 106 * 100 * _vm.currentPosition.quantity))+\")\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"format2Digit\")((props.item.cost / 106 * 100 - props.item.manufacturerPrice) * _vm.currentPosition.quantity)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"format2Digit\")(props.item.manufacturerPrice * _vm.currentPosition.quantity)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"format2Digit\")(props.item.materialPrice * _vm.currentPosition.quantity)))])]}}],null,false,1774457106)}),_vm._v(\"\\n Fertigerpreis für \"+_vm._s(_vm.currentPosition.quantity)+\" Stück: \"+_vm._s(_vm.currentPosition.fertigerPrice)+\"\\n \")],1)],1)],1):_vm._e(),(_vm.showRecalculateDialog)?_c('v-dialog',{attrs:{\"lazy\":true},model:{value:(_vm.showRecalculateDialog),callback:function ($$v) {_vm.showRecalculateDialog=$$v},expression:\"showRecalculateDialog\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\"\\n Neuberechnung\\n \")]),_c('v-card-text',[_vm._v(\"\\n Zeiten und Preise für die folgenden Aufträge werden neu berechnet:\\n \"),_c('ul',_vm._l((_vm.recalculationIds),function(id){return _c('li',{key:id},[_vm._v(\"\\n \"+_vm._s(id)+\"\\n \")])}),0),_c('v-text-field',{on:{\"blur\":function($event){_vm.idToAdd = _vm.idToAdd.trim()}},model:{value:(_vm.idToAdd),callback:function ($$v) {_vm.idToAdd=$$v},expression:\"idToAdd\"}}),_c('v-btn',{on:{\"click\":function($event){return _vm.recalculationIds.push(_vm.idToAdd)}}},[_vm._v(\"Add\")])],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{on:{\"click\":function($event){_vm.showRecalculateDialog = false}}},[_vm._v(\"\\n Abbrechen\\n \")]),_c('v-btn',{staticClass:\"blexon-button\",on:{\"click\":function($event){return _vm.neuBerechnen()}}},[_vm._v(\"\\n OK\\n \")])],1)],1)],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport httpClient from '../../store/httpClient';\r\nimport { FertigerCalculationReportDto } from '../../dtos/fertigerCalculationReportDto';\r\nimport { PositionCalculationReportDto } from '../../dtos/positionCalculationReportDto';\r\nimport moment from 'moment';\r\nimport FileSaver from 'file-saver';\r\nimport store from '../../store/store';\r\nimport PriceModelDefault from '@/dtos/priceModel'\r\nimport DatePicker from '@/components/DatePicker.vue';\r\n\r\n\r\n@Component({\r\n components: {\r\n 'date-picker': DatePicker,\r\n },\r\n})\r\nexport default class ManufacturerSettlementDashboard extends Vue {\r\n private isLoadingExcel: boolean = false;\r\n private idToAdd: string = '';\r\n private showRecalculateDialog: boolean = false;\r\n private recalculationIds: string[] = [];\r\n private showResults: boolean = false;\r\n private suchbegriff: string = '';\r\n private lieferterminImZeitraum: boolean = false;\r\n private eingegangenImZeitraum: boolean = false;\r\n private startDate: string = moment().subtract(5, 'days').format('YYYY-MM-1 00:00:00');\r\n private endDate: string = moment(moment().subtract(5, 'days').format('YYYY-MM-1 00:00:00'))\r\n .add(1, 'month').subtract(1, 'days').format('YYYY-MM-DD 23:59:59');\r\n private loading: boolean = false;\r\n private showCalculationDetailsDialog: boolean = false;\r\n private currentPosition: any = {};\r\n private fertigerCalculationReport: FertigerCalculationReportDto | null = null;\r\n private getPriceModelText = PriceModelDefault.getPriceModelText;\r\n private fertiger: any = null;\r\n private headers: Array<{\r\n text: string, value: string, align: string,\r\n sortable: boolean, width: string }> = Array(\r\n {\r\n text: 'KndNr',\r\n value: 'customerId',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Order Id',\r\n value: 'companyName',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Eingegangen am',\r\n value: 'surname',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Lieferdatum',\r\n value: '',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Fertigerpreis',\r\n value: 'name',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Kunden-Auftragspreis (inkl. Rabatt)',\r\n value: 'eMail',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Deckungsbeitrag',\r\n value: 'registriertAm',\r\n align: 'left',\r\n sortable: false,\r\n width: '10px',\r\n },\r\n {\r\n text: 'Laserbearbeitung',\r\n value: 'registriertAm',\r\n align: 'left',\r\n sortable: false,\r\n width: '10px',\r\n },\r\n {\r\n text: 'Abkanten',\r\n value: 'registriertAm',\r\n align: 'left',\r\n sortable: true,\r\n width: '10px',\r\n });\r\n\r\n private detailHeaders: Array<{\r\n text: string, value: string, align: string,\r\n sortable: boolean, width: string }> = Array(\r\n {\r\n text: 'Arbeitsschritt',\r\n value: 'customerId',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Dauer [hh:mm:ss]',\r\n value: 'companyName',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Kundenpreis (für Menge)',\r\n value: 'surname',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Blexonanteil (für Menge)',\r\n value: 'surname',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Fertigerpreis (für Menge)',\r\n value: 'name',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Materialpreis',\r\n value: 'name',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n });\r\n\r\n private positionHeader: Array<{\r\n text: string, value: string, align: string,\r\n sortable: boolean, width: string }> = Array(\r\n {\r\n text: 'Artikel',\r\n value: 'customerId',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Artikel Id',\r\n value: 'companyName',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Material',\r\n value: 'surname',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Menge',\r\n value: 'name',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Fertigerpreis',\r\n value: 'eMail',\r\n align: 'left',\r\n sortable: false,\r\n width: '10px',\r\n },\r\n {\r\n text: 'Externe Kosten',\r\n value: '',\r\n align: 'left',\r\n sortable: false,\r\n width: '10px',\r\n },\r\n {\r\n text: 'Kundenpreis',\r\n value: 'registriertAm',\r\n align: 'left',\r\n sortable: false,\r\n width: '10px',\r\n },\r\n {\r\n text: 'Laserbearbeitung',\r\n value: 'registriertAm',\r\n align: 'left',\r\n sortable: false,\r\n width: '10px',\r\n },\r\n {\r\n text: 'Abkanten',\r\n value: 'registriertAm',\r\n align: 'left',\r\n sortable: false,\r\n width: '10px',\r\n });\r\n\r\n private get fertigers() {\r\n const fertiger = store.state.fertigers.slice();\r\n fertiger.unshift({\r\n name: 'Alle Fertiger',\r\n id: 0,\r\n });\r\n return fertiger;\r\n }\r\n private get filteredOrders() {\r\n if (this.fertigerCalculationReport === null) {\r\n return [];\r\n }\r\n let filteredItems = this.fertigerCalculationReport.orderCalculationReportDtos;\r\n if (this.suchbegriff !== '' && this.suchbegriff !== null) {\r\n filteredItems = filteredItems.filter((o) => o.orderId.includes(this.suchbegriff) ||\r\n o.customerId.includes(this.suchbegriff));\r\n }\r\n if (this.lieferterminImZeitraum) {\r\n filteredItems = filteredItems.filter((o) => moment(o.deliveryDate).isSameOrAfter(this.startDate) &&\r\n moment(o.deliveryDate).isSameOrBefore(moment(this.endDate).format('YYYY-MM-DD 23:59:59')));\r\n }\r\n if (this.eingegangenImZeitraum) {\r\n filteredItems = filteredItems.filter((o) => moment(o.receivedAt).isSameOrAfter(this.startDate) &&\r\n moment(o.receivedAt).isSameOrBefore(moment(this.endDate).format('YYYY-MM-DD 23:59:59')));\r\n }\r\n return filteredItems;\r\n }\r\n\r\n private get deckungsbeitrag() {\r\n var thirdPartyCost = 0;\r\n if (this.effektiveTransportkosten.length > 0) {\r\n thirdPartyCost = this.effektiveTransportkosten.reduce((a, k) => ({cost: a.cost + k.cost, name: ''})).cost;\r\n }\r\n return this.summeCustomerOrderPrices - thirdPartyCost - this.summeFertiger;\r\n }\r\n\r\n private get deckungsbeitragInProzent() {\r\n return this.deckungsbeitrag\r\n / this.summeCustomerOrderPrices\r\n * 100;\r\n }\r\n\r\n private get summeFertiger() {\r\n let summe = 0;\r\n for (const order of this.filteredOrders) {\r\n summe += order.totalFertigerPrice;\r\n }\r\n summe += this.summePowderCoaterDiscounts + this.summeManufacturerDiscounts;\r\n return summe;\r\n }\r\n\r\n private get summeCustomerOrderPrices() {\r\n let summe = 0;\r\n for (const order of this.filteredOrders) {\r\n summe += order.totalCustomerOrderPrice;\r\n }\r\n summe += this.summeManufacturerDiscounts + this.summePowderCoaterDiscounts;\r\n return summe;\r\n }\r\n\r\n private get summePulverbeschichtungsaufwand() {\r\n let summe = 0;\r\n for (const order of this.filteredOrders) {\r\n summe += order.pulverbeschichtungsAufwand;\r\n }\r\n return summe;\r\n }\r\n\r\n private get summeZertifikatsaufwand() {\r\n let summe = 0;\r\n for (const order of this.filteredOrders) {\r\n summe += order.zertifikatsaufwand;\r\n }\r\n return summe;\r\n }\r\n\r\n private get summeVerpackungsmaterial() {\r\n let summe = 0;\r\n for (const order of this.filteredOrders) {\r\n summe += order.verpackungsmaterial;\r\n }\r\n return summe;\r\n }\r\n\r\n private get summeMaterialaufwand() {\r\n let summe = 0;\r\n for (const order of this.filteredOrders) {\r\n summe += order.materialaufwand;\r\n }\r\n return summe;\r\n }\r\n\r\n private get summeManufacturingComplaint() {\r\n let summe = 0;\r\n for (const order of this.filteredOrders) {\r\n summe += order.totalManufacturingComplaints;\r\n }\r\n return summe;\r\n }\r\n\r\n private get summeManufacturerDiscounts() {\r\n if (this.fertigerCalculationReport == null) return 0;\r\n var summe = 0;\r\n this.fertigerCalculationReport.discounts.forEach(d => summe += d.manufacturerShare);\r\n return summe;\r\n }\r\n\r\n private get summePowderCoatingComplaint() {\r\n let summe = 0;\r\n for (const order of this.filteredOrders) {\r\n summe += order.totalPowderCoatingComplaints;\r\n }\r\n return summe;\r\n }\r\n\r\n private get summePowderCoaterDiscounts() {\r\n if (this.fertigerCalculationReport == null) return 0;\r\n var summe = 0;\r\n this.fertigerCalculationReport.discounts.forEach(d => summe += d.powderCoaterShare);\r\n return summe;\r\n }\r\n\r\n private get summeBlexonDiscounts() {\r\n if (this.fertigerCalculationReport == null) return 0;\r\n var summe = 0;\r\n this.fertigerCalculationReport.discounts.forEach(d => summe += d.blexonShare);\r\n return summe;\r\n }\r\n\r\n private get effektiveTransportkosten() {\r\n const kosten: Array<{ cost: number, name: string }> = Array();\r\n for (const order of this.filteredOrders) {\r\n if (order.transportCompany !== '') {\r\n let group = kosten.find((k) => k.name === order.transportCompany);\r\n if (group === undefined) {\r\n group = {\r\n cost: order.transportAufwand,\r\n name: order.transportCompany,\r\n };\r\n kosten.push(group);\r\n } else {\r\n group.cost += order.transportAufwand;\r\n }\r\n }\r\n }\r\n return kosten;\r\n }\r\n\r\n private priceIsWrong(orderCalculationReportDto: any) {\r\n if (orderCalculationReportDto.positionCalculationReportDtos.filter(\r\n (p: PositionCalculationReportDto) => p.fertigerPrice === 0 && \r\n p.thirdPartyCost === 0 && \r\n p.customerOrderPrice > 0 && \r\n !p.description.includes('Kurier') && \r\n !p.description.includes('(gemäss Beanstandung)')).length > 0) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n private get canExport() {\r\n if (this.fertigerCalculationReport === null) {\r\n return false;\r\n }\r\n for (const orderReport of this.filteredOrders) {\r\n if (this.priceIsWrong(orderReport)) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n private showCalculationDetails(position: any, order: any) {\r\n this.currentPosition = position;\r\n this.showCalculationDetailsDialog = true;\r\n }\r\n\r\n private async loadFertigerPrices() {\r\n if (this.fertiger !== null) {\r\n try {\r\n this.resetResults();\r\n this.loading = true;\r\n const response = await httpClient().get(`Calculation/GetFertigerPrices?von=${this.startDate}&bis=${this.endDate}` +\r\n `&fertigerId=${this.fertiger.id}`);\r\n this.fertigerCalculationReport = response.data;\r\n this.showResults = true;\r\n } catch {\r\n console.log('Load calculations failed.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n }\r\n\r\n @Watch('fertiger')\r\n private resetResults() {\r\n this.showResults = false;\r\n this.fertigerCalculationReport = null;\r\n }\r\n\r\n @Watch('showRecalculateDialog')\r\n private fillRecalculationIds() {\r\n this.recalculationIds.length = 0;\r\n for (const order of this.filteredOrders) {\r\n this.recalculationIds.push(order.orderId);\r\n }\r\n }\r\n\r\n private setStartDate(date: Date) {\r\n this.startDate = moment(date).format('YYYY-MM-DD');\r\n this.resetResults();\r\n }\r\n private setEndDate(date: Date) {\r\n this.endDate = moment(date).format('YYYY-MM-DD');\r\n this.resetResults();\r\n }\r\n\r\n private async getExcel(forPowderCoating: boolean) {\r\n if (this.fertiger.name !== undefined) {\r\n try {\r\n this.isLoadingExcel = true;\r\n const response = await httpClient().get(\r\n `Calculation/GetExcel?von=${this.startDate}&bis=${this.endDate}` +\r\n `&fertigerId=${this.fertiger.id}` +\r\n `&lieferterminImZeitraum=${this.lieferterminImZeitraum}` +\r\n `&eingegangenImZeitraum=${this.eingegangenImZeitraum}` +\r\n `&forPowderCoating=${forPowderCoating}`,\r\n {\r\n method: 'GET',\r\n responseType: 'blob',\r\n });\r\n const start = moment(this.startDate).format('DD.MM.YYYY');\r\n const ende = moment(this.endDate).format('DD.MM.YYYY');\r\n let filter = '';\r\n if (this.lieferterminImZeitraum) {\r\n filter = 'nach Auslieferung';\r\n }\r\n if (this.eingegangenImZeitraum) {\r\n filter += 'nach Auftragseingang';\r\n }\r\n var filenamepart = 'Abrechnung';\r\n if (forPowderCoating) {\r\n filenamepart = 'Pulverbeschichtung';\r\n }\r\n const filename = this.fertiger.name + ` ${filenamepart} ${filter} ${start} - ${ende}.xlsx`;\r\n FileSaver.saveAs(new Blob([response.data]), filename);\r\n } catch {\r\n console.log('Get excel failed.');\r\n } finally {\r\n this.isLoadingExcel = false;\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Berechnet die Auftragspreise und Zeiten der gewählten orders neu.\r\n */\r\n private async neuBerechnen() {\r\n try {\r\n this.loading = true;\r\n this.showResults = false;\r\n for (const id of this.recalculationIds) {\r\n await httpClient().post(`Calculation/Recalculate?orderId=${id}`, null);\r\n }\r\n } catch {\r\n console.log('Recalculation failed.');\r\n } finally {\r\n this.showRecalculateDialog = false;\r\n this.loadFertigerPrices();\r\n }\r\n }\r\n}\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dashboard.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dashboard.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Dashboard.vue?vue&type=template&id=cba6a7ae\"\nimport script from \"./Dashboard.vue?vue&type=script&lang=ts\"\nexport * from \"./Dashboard.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Dashboard.vue?vue&type=style&index=0&id=cba6a7ae&prod&lang=css\"\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","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CamMessageSettings.vue?vue&type=style&index=0&id=ff3be230&prod&scoped=true&lang=css\"","function _arrayWithHoles(r) {\n if (Array.isArray(r)) return r;\n}\nexport { _arrayWithHoles as default };","function _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}\nexport { _iterableToArrayLimit as default };","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableRest as default };","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nfunction _slicedToArray(r, e) {\n return arrayWithHoles(r) || iterableToArrayLimit(r, e) || unsupportedIterableToArray(r, e) || nonIterableRest();\n}\nexport { _slicedToArray as default };","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\"}}):_vm._e(),(_vm.order != null)?_c('div',[_c('h1',{staticClass:\"font-weight-light\"},[_vm._v(\"Auftrag \"+_vm._s(_vm.order.orderId)+\" bearbeiten\")]),_c('v-btn',{staticClass:\"mt-5 mr-1 blexon-button\",attrs:{\"fab\":\"\",\"fixed\":\"\",\"top\":\"\",\"right\":\"\",\"disabled\":_vm.loading || _vm.orderIsCompleted,\"title\":\"Position hinzufügen\"},on:{\"click\":function($event){_vm.addDialog=true}}},[_c('v-icon',{attrs:{\"large\":\"\"}},[_vm._v(\"\\n add\\n \")])],1),_c('v-layout',[_c('v-flex',[_vm._v(\"\\n \"+_vm._s(_vm.order.customerName)+\" | \"+_vm._s(_vm.order.customerId)+\" | \\n \"),_c('a',{attrs:{\"href\":'tel:' + _vm.order.customerPhone}},[_vm._v(_vm._s(_vm.order.customerPhone))]),_vm._v(\" | \\n \"),_c('a',{attrs:{\"href\":'mailto:' + _vm.order.customerEMail}},[_vm._v(_vm._s(_vm.order.customerEMail))])])],1),_c('v-layout',{staticClass:\"mt-1\",attrs:{\"row\":\"\",\"align-center\":\"\"}},[_c('v-flex',{staticClass:\"mr-3\",attrs:{\"shrink\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Kommissionsnummer\",\"disabled\":_vm.loading || _vm.orderIsCompleted},on:{\"blur\":() => {\n _vm.order.kommissionsNummer = _vm.order.kommissionsNummer.trim();\n _vm.updateKommissionsNummer();\n }},model:{value:(_vm.order.kommissionsNummer),callback:function ($$v) {_vm.$set(_vm.order, \"kommissionsNummer\", $$v)},expression:\"order.kommissionsNummer\"}})],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.priceModelKeys,\"label\":\"Preismodell\",\"disabled\":_vm.loading || _vm.orderIsCompleted},on:{\"change\":function($event){return _vm.setPriceModel()}},model:{value:(_vm.selectedPriceModel),callback:function ($$v) {_vm.selectedPriceModel=$$v},expression:\"selectedPriceModel\"}})],1),(_vm.priceInfoUpdateInfo.length > 0)?_c('v-flex',{attrs:{\"shrink\":\"\"}},[_vm._v(\"\\n \"+_vm._s(_vm.priceInfoUpdateInfo)+\" \\n \")]):_vm._e()],1),_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"headers\":_vm.positionHeader,\"items\":_vm.getPartsAndPositions(),\"item-key\":\"item.partId\",\"hide-actions\":\"\"},scopedSlots:_vm._u([{key:\"items\",fn:function(position){return [_c('tr',[_c('td',{staticStyle:{\"width\":\"10px\"}},[_vm._v(\"\\n \"+_vm._s(position.item.position)+\"\\n \")]),_c('td',[_c('a',{attrs:{\"href\":`boost://homezone/browse/part?id=${position.item.partId}`}},[_vm._v(\"\\n \"+_vm._s(position.item.partId)+\"\\n \")])]),_c('td',[(position.item.materialId > 0)?_c('article-cad-preview',{attrs:{\"articleId\":position.item.partId,\"articleLastChange\":_vm.getCurrentDate(),\"height\":\"50px\",\"width\":\"50px\",\"readonly\":false}}):_vm._e()],1),_c('td',{style:({textDecoration: position.item.menge <= 0 ? 'line-through' : 'none'})},[_vm._v(\"\\n \"+_vm._s(position.item.description)+\"\\n \")]),_c('td',[_c('v-text-field',{attrs:{\"type\":\"number\"},on:{\"input\":function($event){_vm.hasChanges = true; position.item.changed = true}},model:{value:(position.item.menge),callback:function ($$v) {_vm.$set(position.item, \"menge\", _vm._n($$v))},expression:\"position.item.menge\"}})],1),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format2Digit\")(position.item.customerPricePerPart)))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format2Digit\")(position.item.customerPricePerPart * position.item.menge)))])])]}}],null,false,3754979762)}),_c('v-layout',{staticClass:\"mt-1\",attrs:{\"row\":\"\",\"align-center\":\"\"}},[_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-btn',{on:{\"click\":function($event){return _vm.back()}}},[_vm._v(\"\\n Zurück\\n \")])],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":!_vm.hasChanges || _vm.orderIsCompleted || _vm.loading,\"loading\":_vm.loading},on:{\"click\":function($event){return _vm.savePositions()}}},[_vm._v(\"\\n Speichern\\n \")])],1),(_vm.orderIsCompleted)?_c('v-flex',[_c('span',[_vm._v(\"Dieser Auftrag kann nicht mehr geändert werden. Er ist bereits abgeschlossen.\")])]):_vm._e()],1)],1):_vm._e(),_c('v-dialog',{attrs:{\"persistent\":\"\",\"width\":\"500\"},model:{value:(_vm.addDialog),callback:function ($$v) {_vm.addDialog=$$v},expression:\"addDialog\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\"\\n Position hinzufügen\\n \")]),_c('v-card-text',[_c('v-autocomplete',{attrs:{\"items\":_vm.gefilterteArtikel,\"hint\":\"Tippen zum Suchen\",\"label\":\"Artikel\",\"cache-items\":\"\",\"search-input\":_vm.articleFilter,\"item-value\":\"articleId\"},on:{\"update:searchInput\":function($event){_vm.articleFilter=$event},\"update:search-input\":function($event){_vm.articleFilter=$event}},scopedSlots:_vm._u([{key:\"item\",fn:function(data){return [_c('span',[_vm._v(_vm._s(data.item.articleId)+\" | \"+_vm._s(data.item.customerArticleName))])]}}]),model:{value:(_vm.selectedArticle),callback:function ($$v) {_vm.selectedArticle=$$v},expression:\"selectedArticle\"}}),_c('v-text-field',{attrs:{\"label\":\"Menge\",\"type\":\"number\"},model:{value:(_vm.menge),callback:function ($$v) {_vm.menge=_vm._n($$v)},expression:\"menge\"}}),_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":\"Preis\",\"hint\":\"Preis nur bei sonstigen Artikeln angeben\"},model:{value:(_vm.price),callback:function ($$v) {_vm.price=_vm._n($$v)},expression:\"price\"}})],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{on:{\"click\":function($event){_vm.addDialog = false}}},[_vm._v(\"\\n Schliessen\\n \")]),_c('v-btn',{staticClass:\"blexon-button\",on:{\"click\":function($event){return _vm.addArticle()}}},[_vm._v(\"\\n Speichern\\n \")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\nexport class CustomerOrderPositionDto {\r\n public articlelId: string = '';\r\n public description: string = '';\r\n public customerPricePerPart: number = 0;\r\n public menge: number = 0;\r\n}\r\n","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport httpClient from '../../store/httpClient';\r\nimport ArticleCadPreview from '@/components/ArticleCadPreview.vue'\r\nimport { CustomerOrderDto } from '../../dtos/customerOrderDto';\r\nimport { ErpCustomerOrderState } from '../../dtos/erpCustomerOrderState';\r\nimport { CustomerOrderPositionDto } from '@/dtos/customerOrderPositionDto';\r\nimport { PriceModel } from '@/dtos/priceModel';\r\n\r\n@Component({\r\n components: {\r\n ArticleCadPreview,\r\n },\r\n})\r\nexport default class CustomerDashboard extends Vue {\r\n @Prop()\r\n private orderId!:string;\r\n private order: CustomerOrderDto | null = null;\r\n private loading: boolean = false;\r\n private loadingKommission: boolean = false;\r\n private hasChanges: boolean = false;\r\n private addDialog: boolean = false;\r\n private gefilterteArtikel: any = [];\r\n private articleFilter: string = '';\r\n private selectedArticle: any = null;\r\n private menge: number = 1;\r\n private price: string = '';\r\n private selectedPriceModel: string = '';\r\n private priceInfoUpdateInfo: string = '';\r\n private positionHeader: Array<{\r\n text: string, value: string, align: string,\r\n sortable: boolean, width: string }> = Array(\r\n {\r\n text: 'Pos',\r\n value: 'position',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Artikel Id',\r\n value: 'customerId',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: '',\r\n value: '',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Bezeichnung',\r\n value: 'companyName',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Menge',\r\n value: 'surname',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Preis',\r\n value: 'name',\r\n align: 'right',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Total',\r\n value: '',\r\n align: 'right',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n );\r\n\r\n private mounted() {\r\n this.loadOrder()\r\n .then(() => {\r\n if (this.order) {\r\n this.selectedPriceModel = PriceModel[this.order.priceModel];\r\n }\r\n });\r\n }\r\n\r\n private get priceModelKeys() {\r\n // Filter \"Express\" because it's not in use\r\n return Object.keys(PriceModel).filter((key:any) => isNaN(Number(key)) && key != 'Express');\r\n }\r\n\r\n private get orderIsCompleted() {\r\n if (!this.order) return false;\r\n // 70 = Abgeschlossen, 80 = Storniert, 900 = InStornierung\r\n return [70, 80, 900].includes(this.order.customerOrderState)\r\n }\r\n\r\n private async loadOrder() {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get(`CustomerOrder/GetCompleteCustomerOrderById?customerOrderId=${this.orderId}`);\r\n this.order = response.data;\r\n } catch {\r\n console.error('Load order failed.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async addArticle() {\r\n // check if this article is already in the order\r\n if (this.getPartsAndPositions().some((p:any) => p.partId == this.selectedArticle) ||\r\n this.getPartsAndPositions().some((p:any) => p.articlelId == this.selectedArticle)) {\r\n this.$store.commit('setSnackbarErrorText', 'Dieser Artikel ist bereits im Auftrag enthalten.');\r\n } else {\r\n this.hasChanges = true;\r\n var dummy = new CustomerOrderPositionDto();\r\n //@ts-ignore\r\n dummy.changed = true;\r\n //@ts-ignore\r\n dummy.partId = this.selectedArticle;\r\n dummy.articlelId = this.selectedArticle;\r\n dummy.description = 'folgt beim Speichern'\r\n dummy.menge = this.menge;\r\n if (this.price != '') {\r\n dummy.customerPricePerPart = parseFloat(this.price);\r\n }\r\n //@ts-ignore\r\n this.order.positions.push(dummy);\r\n }\r\n this.articleFilter = '';\r\n this.menge = 1;\r\n this.selectedArticle = '';\r\n this.addDialog = false;\r\n }\r\n\r\n @Watch('articleFilter')\r\n private async loadArticle() {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get('Article/GetArticles?' +\r\n `searchTerm=${this.articleFilter}&` +\r\n 'customerId=0&' +\r\n 'from=0&' +\r\n 'to=20&' +\r\n 'onlyLocked=false&' +\r\n 'sorting=3&' + // Sorting ist hardcoded bis jetzt (LastChangeDescending = 3)\r\n 'includeSubarticles=true'); // Hier stehen Subartikel von Baugruppen auch zur Auswahl\r\n for (const iterator of response.data) {\r\n iterator.text = iterator.articleId + ' | ' + iterator.customerArticleName;\r\n }\r\n\r\n const generalArticleResponse = await httpClient().get('Article/GetGeneralArticles?' +\r\n `searchTerm=${this.articleFilter}`);\r\n for (const iterator of generalArticleResponse.data) {\r\n iterator.text = iterator.id + ' | ' + iterator.name;\r\n iterator.articleId = iterator.id;\r\n iterator.customerArticleName = iterator.name;\r\n }\r\n this.gefilterteArtikel = response.data.concat(generalArticleResponse.data);\r\n } catch {\r\n console.log('Load article failed.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async savePositions() {\r\n try {\r\n this.loading = true;\r\n var changedPositions = this.getPartsAndPositions().filter((p: any) => p.changed);\r\n for (const position of changedPositions) {\r\n var articleId = position.articlelId;\r\n if (articleId == undefined) {\r\n articleId = position.partId;\r\n }\r\n let positionDto = new CustomerOrderPositionDto();\r\n positionDto.articlelId = articleId;\r\n positionDto.menge = position.menge;\r\n positionDto.customerPricePerPart = position.customerPricePerPart;\r\n\r\n const response = await httpClient().post(`CustomerOrder/CreateOrUpdatePosition?orderId=${this.orderId}`, positionDto);\r\n position.changed = false;\r\n }\r\n await this.recalculate();\r\n if (this.order) {\r\n // Not waiting for this to finish as it's happening in the fertigerportal.\r\n httpClient().post(`CustomerOrder/RefreshOrdersInFertigerportal?fertigerId=${this.order.fertigerId}`);\r\n }\r\n this.back();\r\n } catch {\r\n console.log('Save order failed.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async setPriceModel() {\r\n if (!this.order) return;\r\n // Only do something if the current model is different to the order model\r\n if (this.order.priceModel == PriceModel[this.selectedPriceModel as keyof typeof PriceModel]) return;\r\n \r\n this.order.priceModel = PriceModel[this.selectedPriceModel as keyof typeof PriceModel];\r\n try {\r\n this.loading = true;\r\n this.priceInfoUpdateInfo = 'Preismodell wird aktualisiert...';\r\n await httpClient().post(`CustomerOrder/SetPriceModel?orderId=${this.orderId}&priceModel=${this.order.priceModel}`);\r\n this.priceInfoUpdateInfo = 'Auftrag wird neu kalkuliert...';\r\n await this.recalculate();\r\n this.$store.commit('setSnackbarText', 'Preismodell angepasst und Auftrag neu kalkuliert.');\r\n } catch {\r\n console.log(\"Setting new price model failed\");\r\n this.$store.commit('setSnackbarText', 'Fehler beim setzen des neuen Preismodells.');\r\n } finally {\r\n this.loading = false;\r\n this.priceInfoUpdateInfo = '';\r\n }\r\n }\r\n \r\n private async recalculate() {\r\n try {\r\n if(this.order == null) {\r\n return;\r\n }\r\n this.loading = true;\r\n const response = await httpClient().post(`CustomerOrder/Recalculate?orderId=${this.order.orderId}`);\r\n this.order = response.data;\r\n } catch {\r\n console.log('Calculation of order failed.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async updateKommissionsNummer() {\r\n try {\r\n if(this.order == null || this.loading || this.loadingKommission) {\r\n return;\r\n }\r\n this.loadingKommission = true;\r\n await httpClient().post(`CustomerOrder/UpdateKommissionsNummer?orderId=${this.order.orderId}&kommissionsNummer=${this.order.kommissionsNummer}`);\r\n this.$store.commit('setSnackbarText', 'Kommissionsnummer erfolgreich angepasst.');\r\n } catch {\r\n console.log('Update of KommissionsNummer failed.');\r\n this.$store.commit('setSnackbarErrorText', 'Anpassung der Kommissionsnummer fehlgeschlagen.');\r\n } finally {\r\n this.loadingKommission = false;\r\n }\r\n }\r\n\r\n private back() {\r\n this.$router.go(-1);\r\n }\r\n /**\r\n * Fits the parts and other positions to one list\r\n */\r\n private getPartsAndPositions() {\r\n if (!this.order) return []\r\n return (this.order.parts as any).concat(this.order.positions);\r\n }\r\n \r\n private getCurrentDate() {\r\n return Date.now().toString();\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditOrder.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditOrder.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./EditOrder.vue?vue&type=template&id=6073f6d6\"\nimport script from \"./EditOrder.vue?vue&type=script&lang=ts\"\nexport * from \"./EditOrder.vue?vue&type=script&lang=ts\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[_c('h2',{staticClass:\"mt-2\"},[_vm._v(\"Weitere Einstellungen\")]),_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',[_c('v-btn',{staticStyle:{\"color\":\"black !important\"},attrs:{\"color\":\"primary\",\"to\":\"/settings/materialprices\"}},[_vm._v(\"Materialpreise\")]),_c('v-btn',{staticStyle:{\"color\":\"black !important\"},attrs:{\"color\":\"primary\",\"to\":\"/settings/materialSettings\"}},[_vm._v(\"Materialeinstellungen\")]),_c('v-btn',{staticStyle:{\"color\":\"black !important\"},attrs:{\"color\":\"primary\",\"to\":\"/settings/camMessageSettings\"}},[_vm._v(\"Cam Meldungen\")]),_c('v-btn',{staticStyle:{\"color\":\"black !important\"},attrs:{\"color\":\"primary\",\"to\":\"/settings/formTemplateSettings\"}},[_vm._v(\"Form Vorlagen\")]),_c('v-btn',{staticStyle:{\"color\":\"black !important\"},attrs:{\"color\":\"primary\",\"to\":\"/settings/calcSettings\"}},[_vm._v(\"Regionale Einstellungen\")]),_c('v-btn',{staticStyle:{\"color\":\"black !important\"},attrs:{\"color\":\"primary\",\"to\":\"/settings/globalSettings\"}},[_vm._v(\"Globale Einstellungen\")])],1)],1),_c('v-divider'),_c('h2',{staticClass:\"mt-3\"},[_vm._v(\"One-Click Funktionen\")]),_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',[_c('v-btn',{attrs:{\"loading\":_vm.loading},on:{\"click\":function($event){return _vm.updateMailChimp()}}},[_vm._v(\"\\n Update MailChimp\\n \")]),_c('v-btn',{attrs:{\"loading\":_vm.loading,\"title\":\"Erzeugt alle Rechnungen von allen Aufträgen im Status 'Geliefert'. Ausser wenn die Rechnung blockiert ist.\"},on:{\"click\":function($event){return _vm.createInvoices()}}},[_vm._v(\"\\n Rechnungen erzeugen\\n \")]),_c('v-btn',{attrs:{\"loading\":_vm.loading,\"title\":\"Versendet alle noch nicht gesendeten Rechnungen per E-Mail.\"},on:{\"click\":function($event){return _vm.sendInvoices()}}},[_vm._v(\"\\n Rechnungen senden\\n \")])],1)],1),_c('v-divider'),_c('h2',{staticClass:\"mt-3\"},[_vm._v(\"Kundenportal Meldungen\")]),_c('v-layout',{attrs:{\"row\":\"\"}},[(_vm.messages.length > 0)?_c('v-flex',[_c('ul',_vm._l((_vm.messages),function(message,index){return _c('li',{key:index},[_vm._v(\"\\n \"+_vm._s(message)+\"\\n \")])}),0)]):_c('v-flex',[_vm._v(\"\\n Momentan keine Meldungen...\\n \")])],1),_c('v-divider'),_c('h3',{staticClass:\"mt-3\"},[_vm._v(\"Broadcasten:\")]),_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"md6\":\"\",\"lg4\":\"\"}},[_c('v-combobox',{attrs:{\"items\":_vm.broadcastEventTypes,\"label\":\"Event Typ\"},on:{\"change\":function($event){return _vm.getBroadcastMessage()}},model:{value:(_vm.selectedBroadcastEventType),callback:function ($$v) {_vm.selectedBroadcastEventType=$$v},expression:\"selectedBroadcastEventType\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"md6\":\"\",\"lg4\":\"\"}},[_c('v-textarea',{attrs:{\"hint\":\"Diese Meldung wird für alle Benutzer im Kundenportal angezeigt.\",\"label\":\"Aktuelle Meldung\",\"placeholder\":\"[Momentan keine Meldung]\",\"outline\":\"\",\"background-color\":_vm.broadcastColor},model:{value:(_vm.currentBroadcastMessage),callback:function ($$v) {_vm.currentBroadcastMessage=$$v},expression:\"currentBroadcastMessage\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"md6\":\"\",\"lg4\":\"\"}},[_c('v-layout',{attrs:{\"column\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-checkbox',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.selectedBroadcastEventType === 'KundenportalError'),expression:\"selectedBroadcastEventType === 'KundenportalError'\"}],attrs:{\"label\":\"Maintenance-Mode: Das Kundenportal wird für alle nicht-Administratoren gesperrt, bis diese Meldung entfernt wird.\",\"color\":\"accent\"},model:{value:(_vm.isMaintenanceBroadcast),callback:function ($$v) {_vm.isMaintenanceBroadcast=$$v},expression:\"isMaintenanceBroadcast\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.saveBroadcastMessage()}}},[_vm._v(\"\\n Speichern\\n \")]),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.deleteBroadcastMessage()}}},[_vm._v(\"\\n Löschen\\n \")])],1)],1)],1)],1),_c('v-divider'),_c('h2',{staticClass:\"mt-3\"},[_vm._v(\"CAM System\")]),_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',[_c('v-btn',{on:{\"click\":function($event){return _vm.executeSystemCommand('stopCamViewer')}}},[_vm._v(\"\\n Stop Viewer\\n \")]),_c('v-btn',{on:{\"click\":function($event){return _vm.executeSystemCommand('stopBlexonCam')}}},[_vm._v(\"\\n Stop Validation\\n \")]),_c('v-btn',{on:{\"click\":function($event){return _vm.executeSystemCommand('stopAutotec')}}},[_vm._v(\"\\n Stop Autotec Controller\\n \")])],1)],1),_vm._v(\"\\n Gestoppte Systeme werden nach dem Stop automatisch innert maximal 1 Minute vom ERP wieder gestartet\\n \"),_c('v-divider'),(_vm.log != '')?_c('v-divider'):_vm._e(),(_vm.log != '')?_c('h2',{staticClass:\"mt-2\"},[_vm._v(\"Log\")]):_vm._e(),(_vm.log != '')?_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',[_c('span',[_vm._v(\"\\n \"+_vm._s(_vm.log)+\"\\n \")])])],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport httpClient from '../../store/httpClient';\r\n\r\n\r\n@Component\r\nexport default class Settings extends Vue {\r\n private loading: boolean = false;\r\n private messages: string[] = [];\r\n private log: string = '';\r\n private currentBroadcastMessage: string = '';\r\n private newBroadcastMessage: string = '';\r\n private selectedBroadcastEventType: string = 'KundenportalError';\r\n private isMaintenanceBroadcast: boolean = false;\r\n \r\n private broadcastEventTypes: string[] = [\r\n 'KundenportalError',\r\n 'KundenportalInfo',\r\n ];\r\n\r\n private mounted() {\r\n this.getBroadcastMessage();\r\n }\r\n\r\n private get broadcastColor() {\r\n return this.currentBroadcastMessage.length > 0 ? \"orange\" : \"green\";\r\n }\r\n\r\n private async getBroadcastMessage() {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get(`Settings/GetLastBroadcastEvent?eventType=${this.selectedBroadcastEventType}`);\r\n this.currentBroadcastMessage = response.data;\r\n } catch (err) {\r\n console.log('Fehler beim Abfragen der aktuellen Broadcast Nachricht.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async saveBroadcastMessage() {\r\n try {\r\n this.loading = true;\r\n const broadcastInfo = {\r\n eventType: this.selectedBroadcastEventType,\r\n message: this.currentBroadcastMessage,\r\n isMaintenance: this.isMaintenanceBroadcast\r\n }\r\n await httpClient().post('Settings/BroadcastMessage', broadcastInfo);\r\n this.$store.commit('setSnackbarText', 'Meldung erfolgreich gespeichert.');\r\n this.isMaintenanceBroadcast = false;\r\n } catch (err) {\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Beim Speichern der Meldung ist ein Fehler aufgetreten.');\r\n this.getBroadcastMessage();\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async deleteBroadcastMessage() {\r\n this.currentBroadcastMessage = '';\r\n await this.saveBroadcastMessage();\r\n }\r\n\r\n private async executeSystemCommand(command: string) {\r\n try {\r\n this.loading = true;\r\n await httpClient().post(`System/${command}`);\r\n } catch {\r\n console.error('Fehler beim Ausführen eine Systemkommandos');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async updateMailChimp() {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get(`Customer/UpdateMailChimp`);\r\n this.messages = response.data;\r\n } catch {\r\n console.log('Update MailChimp failed.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async sendInvoices() {\r\n try {\r\n this.loading = true;\r\n await httpClient().post(`CustomerOrder/SendInvoices`);\r\n } catch {\r\n console.log('Send invoices failed.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async createInvoices() {\r\n try {\r\n this.loading = true;\r\n await httpClient().post(`CustomerOrder/CreateInvoices`);\r\n } catch {\r\n console.log('Create invoices failed.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n}\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Settings.vue?vue&type=template&id=58e26707\"\nimport script from \"./Settings.vue?vue&type=script&lang=ts\"\nexport * from \"./Settings.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Settings.vue?vue&type=style&index=0&id=58e26707&prod&lang=css\"\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","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserTile.vue?vue&type=style&index=0&id=038908e8&prod&scoped=true&lang=css\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-container',{staticClass:\"pt-0\",attrs:{\"grid-list-lg\":\"\",\"fluid\":\"\"}},[_c('h2',[_vm._v(\"Kalkulationen ohne Auftrag\")]),_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\",\"align-end\":\"\"}},[_c('v-flex',{staticClass:\"pr-2\",attrs:{\"xs12\":\"\",\"md6\":\"\",\"lg4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Suche\",\"prepend-icon\":\"search\",\"hint\":\"Suche nach Kundennummer und Kundenname (Vor-, Nach-, Firmenname)\"},model:{value:(_vm.searchTerm),callback:function ($$v) {_vm.searchTerm=$$v},expression:\"searchTerm\"}})],1),_c('v-flex',{staticClass:\"pr-2\",attrs:{\"xs12\":\"\",\"md6\":\"\",\"lg4\":\"\"}},[_c('v-combobox',{attrs:{\"items\":_vm.regions,\"label\":\"Regionen\",\"chips\":\"\",\"multiple\":\"\"},model:{value:(_vm.filterRegions),callback:function ($$v) {_vm.filterRegions=$$v},expression:\"filterRegions\"}})],1),_c('v-flex',{staticClass:\"pr-2\",attrs:{\"xs12\":\"\",\"md6\":\"\",\"lg4\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"align-end\":\"\"}},[_c('v-flex',[_c('date-picker',{attrs:{\"selectedDate\":_vm.fromDate,\"pastDateAllowed\":true,\"futureDateAllowed\":false,\"label\":\"Von\"},on:{\"update:selectedDate\":function($event){_vm.fromDate = $event}}})],1),_c('v-flex',[_c('date-picker',{attrs:{\"selectedDate\":_vm.untilDate,\"pastDateAllowed\":true,\"futureDateAllowed\":false,\"label\":\"Bis\"},on:{\"update:selectedDate\":function($event){_vm.untilDate = $event}}})],1),_c('v-flex',[_c('v-btn',{staticClass:\"blexon-button\",staticStyle:{\"margin-bottom\":\"19px !important\"},attrs:{\"shrink\":\"\"},on:{\"click\":function($event){return _vm.loadCalculations()}}},[_c('v-icon',[_vm._v(\"sync\")])],1)],1)],1)],1)],1),_c('v-layout',[_c('v-flex',[_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"hide-actions\":\"\",\"loading\":_vm.loading,\"items\":_vm.filteredCalculations,\"item-key\":\"customerId\",\"headers\":_vm.groupHeaders,\"custom-sort\":_vm.customSort},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('tr',{on:{\"click\":() => {\n _vm.onClickedAuditGroup(props.item.customerId);\n props.expanded = !props.expanded;\n }}},[_c('td',[_vm._v(_vm._s(_vm._f(\"formatDate\")(props.item.lastCalculation)))]),_c('td',[_c('span',{staticClass:\"link\",on:{\"click\":function($event){$event.stopPropagation();return _vm.goToCustomer(props.item.customerId)}}},[_vm._v(\"\\n \"+_vm._s(props.item.customerId)+\"\\n \")])]),_c('td',[_vm._v(_vm._s(props.item.companyName))]),_c('td',[_vm._v(_vm._s(props.item.givenName))]),_c('td',[_vm._v(_vm._s(props.item.name))]),_c('td',[_vm._v(_vm._s(props.item.country))]),_c('td',[_vm._v(_vm._s(props.item.numberOfCalculations))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm._f(\"format2Digit\")(props.item.lastCalculationPrice))+\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\")])])]}},{key:\"expand\",fn:function(props){return [_c('v-data-table',{staticClass:\"elevation-1 ml-3 mb-3\",attrs:{\"headers\":_vm.auditHeaders,\"items\":_vm.getIndividualCustomerAudits(props.item.customerId),\"item-key\":\"calculationId\",\"hide-actions\":\"\",\"custom-sort\":_vm.customerAuditSort},scopedSlots:_vm._u([{key:\"items\",fn:function(audits){return [_c('tr',{on:{\"click\":function($event){return _vm.showOrderCalculation(audits.item)}}},[_c('td',[_vm._v(_vm._s(audits.item.calculationId))]),_c('td',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"formatDateAndTime\")(audits.item.calculationDate))+\" \\n \")]),_c('td',[_vm._v(_vm._s(audits.item.firstname)+\" \"+_vm._s(audits.item.lastname))]),_c('td',_vm._l((audits.item.articles),function(article){return _c('router-link',{key:article.id,staticClass:\"link\",attrs:{\"to\":{ name: 'article', params: { articleIdProp: article.id.toString() } }}},[_c('span',[_vm._v(_vm._s(article.id))]),(article.count > 0)?_c('span',[_vm._v(\" x \"+_vm._s(article.count))]):_c('span',[_vm._v(\" (gelöscht)\")]),_c('br')])}),1),_c('td',[_vm._l((_vm.getMaterialsWithWeight(audits.item.articles)),function(material,index){return _c('span',{key:index},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(material[0])+\": \"+_vm._s(_vm._f(\"format2Digit\")(material[1]))+\" kg\"),_c('br')])}),(audits.item.error.length > 0)?_c('span',{staticClass:\"red--text\"},[_vm._v(\"\\n Error: \"+_vm._s(audits.item.error)),_c('br')]):(audits.item.articles.length <= 0)?_c('span',{staticClass:\"red--text\"},[_vm._v(\"\\n Für diese Kalkulation sind keine detaillierten Informationen vorhanden.\\n \")]):_vm._e()],2),_c('td',{staticClass:\"text-xs-right\"},_vm._l((_vm.getDiscountsFromString(audits.item.orderDiscounts)),function(discount,index){return _c('span',{key:index},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.getOrderDiscountString(discount))+\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\"),(index < _vm.getDiscountsFromString(audits.item.orderDiscounts).length - 1)?_c('span',[_c('br')]):_vm._e()])}),0),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format2Digit\")(audits.item.price)))])])]}}],null,true)})]}}])})],1)],1)],1),(_vm.showOrderWorkStepsDialog)?_c('order-calculation-component',{attrs:{\"show\":_vm.showOrderWorkStepsDialog,\"orderWorkSteps\":_vm.currentOrderWorkSteps,\"articleMaterials\":_vm.currentOrderArticleMaterials},on:{\"close\":function($event){_vm.showOrderWorkStepsDialog = false}}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from \"vue-property-decorator\";\r\nimport { debounce } from 'typescript-debounce-decorator';\r\nimport httpClient from \"../../store/httpClient\";\r\nimport { CalculatedOrderAuditDto } from \"../../dtos/calculatedOrderAuditDto\";\r\nimport OrderCalculationComponent from '@/components/OrderCalculationComponent.vue';\r\nimport { CalculatedOrderAuditArticleDto } from \"@/dtos/calculatedOrderAuditArticleDto\";\r\nimport DatePicker from \"@/components/DatePicker.vue\";\r\nimport moment from 'moment';\r\nimport PriceModel from '@/dtos/priceModel'\r\n\r\n@Component({\r\n\tcomponents: {\r\n\t\tOrderCalculationComponent,\r\n\t\tDatePicker,\r\n\t},\r\n})\r\nexport default class Calculations extends Vue {\r\n\tprivate loading: boolean = false;\r\n\tprivate calculations: any = [];\r\n\tprivate customerAudits: any = [];\r\n\tprivate currentOrderWorkSteps: any = [];\r\n private currentOrderArticleMaterials: Map = new Map();\r\n private showOrderWorkStepsDialog: boolean = false;\r\n\tprivate articleMaterials: Map = new Map();\r\n\tprivate searchTerm: string = \"\";\r\n\tprivate lastSearchTerm: string = \"\";\r\n\tprivate filterRegions = [];\r\n\tprivate fromDate: Date = new Date(moment().subtract(1, 'month').format('YYYY-MM-DD'));\r\n\tprivate untilDate: Date = new Date();\r\n\tprivate groupHeaders = [\r\n\t\t{\r\n\t\t\ttext: \"Letzte Kalkulation\",\r\n\t\t\tvalue: \"lastCalculation\",\r\n\t\t\talign: \"left\",\r\n\t\t\tsortable: true,\r\n\t\t\twidth: \"1px\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Id\",\r\n\t\t\tvalue: \"customerId\",\r\n\t\t\talign: \"left\",\r\n\t\t\tsortable: false,\r\n\t\t\twidth: \"1px\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Firmenname\",\r\n\t\t\tvalue: \"companyName\",\r\n\t\t\talign: \"left\",\r\n\t\t\tsortable: false,\r\n\t\t\twidth: \"1px\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Nachname\",\r\n\t\t\tvalue: \"lastName\",\r\n\t\t\talign: \"left\",\r\n\t\t\tsortable: false,\r\n\t\t\twidth: \"1px\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Vorname\",\r\n\t\t\tvalue: \"firstName\",\r\n\t\t\talign: \"left\",\r\n\t\t\tsortable: false,\r\n\t\t\twidth: \"1px\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Land\",\r\n\t\t\tvalue: \"country\",\r\n\t\t\talign: \"left\",\r\n\t\t\tsortable: false,\r\n\t\t\twidth: \"1px\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"# Kalkulationen in Zeitraum\",\r\n\t\t\tvalue: \"totalCalculations\",\r\n\t\t\talign: \"left\",\r\n\t\t\tsortable: true,\r\n\t\t\twidth: \"1px\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Preis der letzten Kalkulation\",\r\n\t\t\tvalue: \"lastCalculationPrice\",\r\n\t\t\talign: \"right\",\r\n\t\t\tsortable: true,\r\n\t\t\twidth: \"1px\",\r\n\t\t},\r\n\t];\r\n\tprivate auditHeaders = [\r\n\t\t{\r\n\t\t\ttext: \"Calculation Id\",\r\n\t\t\tvalue: \"calculationId\",\r\n\t\t\talign: \"left\",\r\n\t\t\tsortable: false,\r\n\t\t\twidth: \"1px\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Date\",\r\n\t\t\tvalue: \"calculationDate\",\r\n\t\t\talign: \"left\",\r\n\t\t\tsortable: true,\r\n\t\t\twidth: \"1px\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Benutzername\",\r\n\t\t\tvalue: \"username\",\r\n\t\t\talign: \"left\",\r\n\t\t\tsortable: false,\r\n\t\t\twidth: \"1px\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Artikel\",\r\n\t\t\tvalue: \"articles\",\r\n\t\t\talign: \"left\",\r\n\t\t\tsortable: false,\r\n\t\t\twidth: \"1px\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Material\",\r\n\t\t\tvalue: \"materials\",\r\n\t\t\talign: \"left\",\r\n\t\t\tsortable: false,\r\n\t\t\twidth: \"450px\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Auftragsrabatt\",\r\n\t\t\tvalue: \"orderDiscounts\",\r\n\t\t\talign: \"right\",\r\n\t\t\tsortable: false,\r\n\t\t\twidth: \"50px\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Preis\",\r\n\t\t\tvalue: \"price\",\r\n\t\t\talign: \"right\",\r\n\t\t\tsortable: false,\r\n\t\t\twidth: \"1px\",\r\n\t\t},\r\n\t];\r\n\r\n\tprivate mounted() {\r\n\t\tthis.filterRegions = this.regions;\r\n\t\tthis.loadCalculations();\r\n\t}\r\n\r\n\tprivate get regions() {\r\n\t\treturn this.$store.state.regions;\r\n\t}\r\n\r\n\tprivate onClickedAuditGroup(customerId: number) {\r\n\t\tif (this.getIndividualCustomerAudits(customerId).length <= 0) {\r\n\t\t\tthis.loadCustomerCalculationAudits(customerId);\r\n\t\t}\r\n\t}\r\n\r\n\tprivate getIndividualCustomerAudits(customerId: number) {\r\n\t\tlet audits = this.customerAudits.filter((ca: CalculatedOrderAuditDto) => ca.customerId === customerId);\r\n\t\treturn audits;\r\n\t}\r\n\r\n\tprivate getMaterialsWithWeight(articles: CalculatedOrderAuditArticleDto[]) {\r\n\t\tlet hashMap = articles.reduce((map, article) => {\r\n\t\t\tconst material = article.material;\r\n\t\t\tconst weight = article.materialWeightInKilos;\r\n\r\n\t\t\tif (!map.has(material)) {\r\n\t\t\t\tmap.set(material, 0);\r\n\t\t\t}\r\n\r\n\t\t\tmap.set(material, map.get(material)! + weight);\r\n\t\t\treturn map;\r\n\t\t}, new Map())\r\n\t\thashMap.forEach((weight, material) => {\r\n\t\t\tif (weight === 0) {\r\n\t\t\t\thashMap.delete(material);\r\n\t\t\t}\r\n\t\t})\r\n\t\treturn hashMap;\r\n\t}\r\n\r\n\tprivate get filteredCalculations() {\r\n\t\tlet filtered = this.calculations;\r\n\t\tif (this.searchTerm.length >= 3) {\r\n\t\t\tfiltered = filtered.filter((c:any) => \r\n\t\t\t\tc.customerId.toString().includes(this.searchTerm) ||\r\n\t\t\t\tc.companyName.toLowerCase().includes(this.searchTerm.toLowerCase()) ||\r\n\t\t\t\tc.givenName.toLowerCase().includes(this.searchTerm.toLowerCase()) ||\r\n\t\t\t\tc.name.toLowerCase().includes(this.searchTerm.toLowerCase()));\r\n\t\t}\r\n\t\tif (this.filterRegions.length > 0 && this.filterRegions.length < this.regions.length) {\r\n\t\t\tfiltered = filtered.filter((c:any) =>\r\n\t\t\t\tthis.filterRegions.some((f:string) => f.toLowerCase().includes(c.country.toLowerCase())));\r\n\t\t}\r\n\r\n\t\treturn filtered;\r\n\t}\r\n\r\n\tprivate async loadCalculations() {\r\n\t\ttry {\r\n\t\t\tthis.loading = true;\r\n\t\t\tlet fromString = (new Date(this.fromDate)).toISOString();\r\n\t\t\tlet toString = (new Date(this.untilDate)).toISOString();\r\n\t\t\tconst response = await httpClient().get(`Report/GetCalculatedWithoutOrder?from=${fromString}&to=${toString}`);\r\n\t\t\tthis.calculations = response.data.calculations;\r\n\t\t} catch {\r\n\t\t\tconsole.log(\"Load calculations failed.\");\r\n\t\t} finally {\r\n\t\t\tthis.loading = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprivate async loadCustomerCalculationAudits(customerId: number) {\r\n\t\ttry {\r\n\t\t\tthis.loading = true;\r\n\t\t\tconst response = await httpClient().get(`Report/GetCustomerCalculationAudits?customerId=${customerId}`);\r\n\t\t\tresponse.data.forEach((d: any) => {\r\n\t\t\t\tif (!d.error) d.error = \"\";\r\n\t\t\t\tthis.customerAudits.push(d);\r\n\t\t\t});\r\n\t\t} catch {\r\n\t\t\tconsole.log(\"Loading audits failed.\");\r\n\t\t} finally {\r\n\t\t\tthis.loading = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprivate async showOrderCalculation(audit: CalculatedOrderAuditDto) {\r\n try {\r\n var groupBy = (xs:any, key:any) => {\r\n return xs.reduce((rv:any, x:any) => {\r\n (rv[x[key]] = rv[x[key]] || []).push(x);\r\n return rv;\r\n }, {});\r\n };\r\n\r\n\t\t\tthis.loading = true;\r\n this.currentOrderWorkSteps = [];\r\n const stepsResponse = await httpClient().get(`Calculation/GetWorkSteps?orderId=0&calculationId=${audit.calculationId}`);\r\n this.currentOrderWorkSteps = Object.entries(groupBy(stepsResponse.data, 'articleId'));\r\n this.currentOrderArticleMaterials.clear();\r\n this.currentOrderWorkSteps.forEach((step: any) => {\r\n\t\t\t\tlet article = audit.articles.filter((a: CalculatedOrderAuditArticleDto) => a.id.toString() === step[0])[0];\r\n this.currentOrderArticleMaterials.set(step[0], article.material);\r\n })\r\n this.showOrderWorkStepsDialog = true;\r\n } catch(err) {\r\n\t\t\tconsole.log(`Error while getting the worksteps for calculation ${audit.calculationId}.`, err);\r\n this.$store.commit('setSnackbarErrorText', 'Arbeitsschritte konnten nicht geladen werden.');\r\n } finally {\r\n\t\t\tthis.loading = false;\t\t\t\r\n\t\t}\r\n }\r\n\r\n\r\n\tprivate customSort(items: any, index: string, isDesc: boolean) {\r\n\t\titems.sort((a: any, b: any) => {\r\n\t\t\tif (index === \"lastCalculationPrice\") {\r\n\t\t\t\tif (isDesc) {\r\n\t\t\t\t\treturn a.lastCalculationPrice - b.lastCalculationPrice;\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn b.lastCalculationPrice - a.lastCalculationPrice;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (index === \"totalCalculations\") {\r\n\t\t\t\tif (isDesc) {\r\n\t\t\t\t\treturn a.numberOfCalculations - b.numberOfCalculations;\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn b.numberOfCalculations - a.numberOfCalculations;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (index === \"lastCalculation\") {\r\n\t\t\t\tlet dateA = new Date(a.lastCalculation);\r\n\t\t\t\tlet dateB = new Date(b.lastCalculation);\r\n\t\t\t\tif (isDesc) {\r\n\t\t\t\t\treturn dateA.getTime() - dateB.getTime();\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn dateB.getTime() - dateA.getTime();\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t\treturn items;\r\n\t}\r\n\r\n\tprivate customerAuditSort(items: any, index: string, isDesc: boolean) {\r\n\t\titems.sort((a: any, b: any) => {\r\n\t\t\tif (index === \"calculationDate\") {\r\n\t\t\t\tlet dateA = new Date(a.calculationDate);\r\n\t\t\t\tlet dateB = new Date(b.calculationDate);\r\n\t\t\t\tif (isDesc) {\r\n\t\t\t\t\treturn dateA.getTime() - dateB.getTime();\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn dateB.getTime() - dateA.getTime();\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t\treturn items;\r\n\t}\r\n\r\n\tprivate getDiscountsFromString(discountString: string | null): Array {\r\n\t\tif (!discountString || discountString.length <= 0) {\r\n\t\t\treturn new Array();\r\n\t\t}\r\n\t\treturn discountString.split(';');\r\n\t}\r\n\r\n\tprivate getOrderDiscountString(discount: string): string {\r\n\t\tlet displayText = '';\r\n\t\tlet model = discount.split(':')[0];\r\n\t\tlet value = discount.split(':')[1];\r\n\t\tdisplayText += `${PriceModel.getPriceModelText(parseInt(model))}: ${value}`;\r\n\t\treturn displayText;\r\n\t}\r\n\r\n\tprivate back() {\r\n\t\tthis.$router.push({ name: \"customer\" });\r\n\t}\r\n\r\n\tprivate goToCustomer(customerId: string) {\r\n\t\tthis.$router.push({ name: \"customerDetail\", params: { customerId } });\r\n\t}\r\n\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Calculations.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Calculations.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Calculations.vue?vue&type=template&id=6b48eda8\"\nimport script from \"./Calculations.vue?vue&type=script&lang=ts\"\nexport * from \"./Calculations.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Calculations.vue?vue&type=style&index=0&id=6b48eda8&prod&lang=css\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-dialog',{attrs:{\"width\":\"700\"},model:{value:(_vm.show),callback:function ($$v) {_vm.show=$$v},expression:\"show\"}},[_c('v-card',[_c('v-card-title',[_c('h3',[_vm._v(\"Auftragskalkulation\")])]),(!_vm.orderWorkSteps || _vm.orderWorkSteps.length <= 0)?_c('v-card-text',[_vm._v(\"\\n\\t\\t\\t\\tFür diese Kalkulation sind keine Arbeitsschritte verfügbar.\\n\\t\\t\\t\")]):_c('v-card-text',_vm._l((_vm.orderWorkSteps),function(articleGroup,index){return _c('div',{key:index},[_c('h2',[_vm._v(_vm._s(articleGroup[1][0].quantity)+\" x \"+_vm._s(articleGroup[0]))]),_vm._v(\"\\n \"+_vm._s(_vm.getArticleMaterial(articleGroup[0]))),_c('br'),_vm._l((_vm.getStepsGroupedByPriceSetting(articleGroup[1])),function(priceModelGroup,index2){return _c('div',{key:index2,staticClass:\"mb-2\"},[_c('v-expansion-panel',[_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('b',[_vm._v(\"Preismodell: \"+_vm._s(_vm.getPriceModelText(_vm.getPriceModel(priceModelGroup[0]))))])]),_c('table',{staticClass:\"orderCalculation\"},[_c('tr',[_c('td'),_c('td',[_vm._v(\"Gesamtdauer\")]),_c('td',[_vm._v(\"Kundenpreis\")]),_c('td',[_vm._v(\"Materialpreis\")]),_c('td',[_vm._v(\"Fertigerpreis\")])]),_vm._l((priceModelGroup[1]),function(workstep,index3){return _c('tr',{key:index3},[_c('td',[_vm._v(_vm._s(workstep.name))]),_c('td',[_vm._v(_vm._s(workstep.duration.substring(0, 8)))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format2Digit\")((workstep.cost * workstep.quantity))))]),_c('td',{staticClass:\"text-xs-right\"},[(workstep.materialPrice > 0)?_c('span',[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm._f(\"format2Digit\")((workstep.materialPrice * workstep.quantity)))+\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\")]):_vm._e()]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format2Digit\")((workstep.manufacturerPrice * workstep.quantity))))])])}),_c('tr',[_c('td'),_c('td'),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format2Digit\")((_vm.getCustomerPrice(priceModelGroup[1]) * priceModelGroup[1][0].quantity))))]),_c('td'),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format2Digit\")((_vm.getManufacturerPrice(priceModelGroup[1]) * priceModelGroup[1][0].quantity))))])])],2)])],1)],1)})],2)}),0),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{staticClass:\"blexon-button\",on:{\"click\":function($event){return _vm.close()}}},[_vm._v(\"Schliessen \")])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { WorkStepDto } from \"@/dtos/workStepDto\";\r\nimport { Component, Prop, Vue } from \"vue-property-decorator\";\r\nimport PriceModelDefault, { PriceModel } from '@/dtos/priceModel'\r\n\r\n@Component({})\r\nexport default class OrderCalculationComponent extends Vue {\r\n\t@Prop()\r\n\tprivate show!: boolean;\r\n @Prop()\r\n private orderWorkSteps!: any;\r\n @Prop()\r\n private articleMaterials!: Map;\r\n\tprivate getPriceModelText = PriceModelDefault.getPriceModelText;\r\n\tprivate allPriceModels = PriceModelDefault.allPriceModels;\r\n\r\n\tprivate getPriceModel(enumValue: number) {\r\n\t\treturn this.allPriceModels[enumValue].value;\r\n\t}\r\n\r\n\tprivate getStepsGroupedByPriceSetting(steps: WorkStepDto[]) {\r\n\t\tvar groupBy = (xs:any, key:any) => {\r\n\t\t\treturn xs.reduce((rv:any, x:any) => {\r\n\t\t\t\t(rv[x[key]] = rv[x[key]] || []).push(x);\r\n\t\t\t\treturn rv;\r\n\t\t\t}, {});\r\n\t\t};\r\n\t\tlet grouped = Object.entries(groupBy(steps, 'priceModel'));\r\n\t\treturn grouped\r\n\t}\r\n\r\n private getArticleMaterial(articleId: number) {\r\n return this.articleMaterials.get(articleId);\r\n }\r\n\r\n private getCustomerPrice(worksteps: WorkStepDto[]) {\r\n return worksteps.reduce((sum: any, workstep: WorkStepDto) => { return sum + workstep.cost}, 0)\r\n }\r\n\r\n private getManufacturerPrice(worksteps: WorkStepDto[]) {\r\n return worksteps.reduce((sum: any, workstep: WorkStepDto) => { return sum + workstep.manufacturerPrice}, 0)\r\n }\r\n\r\n private close() {\r\n this.$emit(\"close\");\r\n }\r\n\r\n\r\n\r\n\r\n}\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderCalculationComponent.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderCalculationComponent.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./OrderCalculationComponent.vue?vue&type=template&id=0c5e35b1&scoped=true\"\nimport script from \"./OrderCalculationComponent.vue?vue&type=script&lang=ts\"\nexport * from \"./OrderCalculationComponent.vue?vue&type=script&lang=ts\"\nimport style0 from \"./OrderCalculationComponent.vue?vue&type=style&index=0&id=0c5e35b1&prod&scoped=true&lang=css\"\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 \"0c5e35b1\",\n null\n \n)\n\nexport default component.exports","'use strict';\nvar strong = require('./_collection-strong');\nvar validate = require('./_validate-collection');\nvar SET = 'Set';\n\n// 23.2 Set Objects\nmodule.exports = require('./_collection')(SET, function (get) {\n return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.2.3.1 Set.prototype.add(value)\n add: function add(value) {\n return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value);\n }\n}, strong);\n","var DESCRIPTORS = require('./_descriptors');\nvar getKeys = require('./_object-keys');\nvar toIObject = require('./_to-iobject');\nvar isEnum = require('./_object-pie').f;\nmodule.exports = function (isEntries) {\n return function (it) {\n var O = toIObject(it);\n var keys = getKeys(O);\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) {\n key = keys[i++];\n if (!DESCRIPTORS || isEnum.call(O, key)) {\n result.push(isEntries ? [key, O[key]] : O[key]);\n }\n }\n return result;\n };\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('h1',{staticClass:\"font-weight-light\"},[_vm._v(\"Auftragsvolumen abhängig von der Technologie\")]),_c('v-select',{attrs:{\"label\":\"Jahr\",\"items\":_vm.years},model:{value:(_vm.year),callback:function ($$v) {_vm.year=$$v},expression:\"year\"}}),(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\"}}):_vm._e(),_c('canvas',{ref:\"diagramCanvas\"})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport httpClient from '@/store/httpClient';\r\nconst Chart = require('chart.js');\r\n\r\n@Component\r\nexport default class OrderVolumePerTechnologyReport extends Vue {\r\n private chart: any = null;\r\n private orderVolume: any = [];\r\n private loading: boolean = false;\r\n private year: number = new Date().getFullYear();\r\n\r\n private mounted() {\r\n this.loadReport();\r\n }\r\n\r\n private get years()\r\n {\r\n var lastYears = []\r\n for (let index = new Date().getFullYear(); index >= 2012; index--) {\r\n lastYears.push(index);\r\n }\r\n return lastYears;\r\n }\r\n\r\n @Watch('year')\r\n private async loadReport()\r\n {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get(`Report/GetOrderVolumePerTechnology?year=${this.year}`);\r\n this.orderVolume = response.data;\r\n this.updateDiagram();\r\n } catch(err) {\r\n console.error('Loading report failed.');\r\n console.error(err);\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Fehler beim Laden der Reports. Siehe Konsole.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private getDatasets()\r\n {\r\n const colors = [\r\n '#635147',\r\n '#EFBB20',\r\n '#704214',\r\n '#468641',\r\n '#007EFF',\r\n '#007EFF',\r\n '#007EFF',\r\n '#007EFF',\r\n '#f5ff00',\r\n '#f5ff00',\r\n '#f5ff00',\r\n '#f5ff00',\r\n '#FF2400',\r\n ];\r\n const labels = [\r\n 'Nur Scheiden',\r\n '+Umformen',\r\n '+Abkanten',\r\n '+Umformen +Abkanten',\r\n \r\n '+Pulver',\r\n '+Umformen +Pulver',\r\n '+Abkanten +Pulver',\r\n '+Umformen +Abkanten +Pulver',\r\n\r\n '+Abkanten +Schweissen',\r\n '+Umformen +Abkanten +Schweissen',\r\n '+Abkanten +Schweissen +Pulver ',\r\n '+Umformen +Abkanten +Schweissen +Pulver ',\r\n ]\r\n\r\n var data = {\r\n labels: labels,\r\n datasets: [{\r\n backgroundColor: colors,\r\n data: this.getData(),\r\n }]\r\n }\r\n return data;\r\n }\r\n\r\n private getData()\r\n {\r\n // Spalte 1 ist Features / Umformen\r\n // Spalte 2 ist Abkanten\r\n // Spalte 3 ist Pulverbeschichten\r\n const technologyCombinations = [\r\n // Umformen, Abkanten, Pulver, Schweissen\r\n [false, false, false, false], // nur laser\r\n [true, false, false, false], // Umformen\r\n [false, true, false, false], // Abkanten\r\n [true, true, false, false], // Umformen und Abkanten\r\n [false, false, true, false], // Pulverbeschichten\r\n [true, false, true, false], // Umformen und Pulver\r\n [false, true, true, false], // Abkanten und Pulver\r\n [true, true, true, false], // Umformen, Abkanten, Pulver\r\n\r\n [false, true, false, true], // Abkanten und Schweissen\r\n [true, true, false, true], // Umformen und Abkanten und Schweissen\r\n [false, true, true, true], // Abkanten und Pulver und Schweissen\r\n [true, true, true, true] // Umformen, Abkanten, Pulver, Schweissen\r\n ]\r\n\r\n const volume = [];\r\n for (const combination of technologyCombinations) {\r\n const orders = this.orderVolume.filter((o: any) => o.needsFeatures === combination[0] &&\r\n o.needsBend === combination[1] &&\r\n o.needsPowderCoating === combination[2] &&\r\n o.needsWelding === combination[3]);\r\n const sum = orders.map((o:any) => o.total).reduce((partialSum:number, a:number) => partialSum + a, 0);\r\n volume.push(Math.round(sum));\r\n }\r\n return volume;\r\n }\r\n\r\n private updateDiagram() {\r\n \r\n\r\n\t\t// Destroy the chart if one already exists.\r\n\t\tif (this.chart != null) {\r\n\t\t\tthis.chart.destroy();\r\n\t\t}\r\n\r\n const ctx = (this.$refs.diagramCanvas as any).getContext('2d');\r\n this.chart = new Chart(ctx, {\r\n // The type of chart we want to create\r\n type: 'bar',\r\n // The data for our dataset\r\n data: this.getDatasets(),\r\n title: 'asdf',\r\n options: {\r\n scales: {\r\n y: {\r\n beginAtZero: true\r\n }\r\n }\r\n },\r\n \r\n });\r\n this.chart.update();\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderVolumePerTechnology.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderVolumePerTechnology.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./OrderVolumePerTechnology.vue?vue&type=template&id=4fb2f4b9\"\nimport script from \"./OrderVolumePerTechnology.vue?vue&type=script&lang=ts\"\nexport * from \"./OrderVolumePerTechnology.vue?vue&type=script&lang=ts\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('h1',[_vm._v(\"Werbekampagnen\")]),_c('v-btn',{staticClass:\"mt-5 mr-1 blexon-button\",attrs:{\"fab\":\"\",\"fixed\":\"\",\"top\":\"\",\"right\":\"\",\"title\":\"Neue Kampagne\"},on:{\"click\":function($event){return _vm.addCampaign()}}},[_c('v-icon',{attrs:{\"large\":\"\"}},[_vm._v(\"\\n add\\n \")])],1),_c('v-checkbox',{attrs:{\"label\":\"Alle anzeigen\"},model:{value:(_vm.showAll),callback:function ($$v) {_vm.showAll=$$v},expression:\"showAll\"}}),_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"loading\":_vm.loading,\"items\":_vm.shownLinks,\"item-key\":\"id\",\"hide-actions\":true,\"headers\":_vm.headers},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('tr',[_c('td',{staticStyle:{\"width\":\"50px\"}},[_c('v-icon',{staticStyle:{\"cursor\":\"pointer\"},on:{\"click\":function($event){props.expanded = !props.expanded}}},[_vm._v(\"link\")])],1),_c('td',{staticStyle:{\"width\":\"50%\"}},[_c('v-textarea',{attrs:{\"hint\":\"Beschreibung der Kampagne. Z.B. Blogartikel zur Einführung von Schweissen\"},on:{\"change\":function($event){return _vm.saveCampaign(props.item)}},model:{value:(props.item.description),callback:function ($$v) {_vm.$set(props.item, \"description\", $$v)},expression:\"props.item.description\"}})],1),_c('td',{staticStyle:{\"width\":\"50%\"}},[_c('v-text-field',{on:{\"change\":function($event){return _vm.saveCampaign(props.item)}},model:{value:(props.item.targetLink),callback:function ($$v) {_vm.$set(props.item, \"targetLink\", $$v)},expression:\"props.item.targetLink\"}}),_c('v-checkbox',{attrs:{\"label\":\"Permanente Umleitung\",\"title\":\"Permanente Umleitungen sind technisch gleich wie die anderen. Die Kennzeichnung hilft der Organisation der Kampagnen.\"},on:{\"change\":function($event){return _vm.saveCampaign(props.item)}},model:{value:(props.item.isPermanent),callback:function ($$v) {_vm.$set(props.item, \"isPermanent\", $$v)},expression:\"props.item.isPermanent\"}})],1),_c('td',{staticStyle:{\"width\":\"50px\"}},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"formatDate\")(props.item.createdAt))+\"\\n \")]),_c('td',[_vm._v(\"\\n \"+_vm._s(_vm.getTotalClicks(props.item))+\"\\n \")]),_c('td',[_vm._v(\"\\n \"+_vm._s(_vm.getTotalRegistrations(props.item))+\"\\n \")])])]}},{key:\"expand\",fn:function(props){return [_c('table',[_c('thead',[_c('th',[_vm._v(\"Plattform\")]),_c('th',[_vm._v(\"Link\")]),_c('th',[_vm._v(\"Link 2\")]),_c('th',[_vm._v(\"Klicks\")]),_c('th',[_vm._v(\"Registrierungen\")])]),_vm._l((_vm.plattforms),function(plattform){return _c('tr',{key:plattform.value},[_c('td',[_vm._v(\"\\n \"+_vm._s(plattform.text)+\"\\n \")]),_c('td',{attrs:{\"title\":\"Klicken um Link in Zwischenablage zu kopieren\"},on:{\"click\":function($event){_vm.copyToClipboard(_vm.getPlattformLinks(props.item, plattform.value))}}},[_vm._v(\"\\n \"+_vm._s(_vm.getPlattformLinks(props.item, plattform.value))+\"\\n \")]),_c('td',{attrs:{\"title\":\"Klicken um Link in Zwischenablage zu kopieren\"},on:{\"click\":function($event){_vm.copyToClipboard(_vm.getNicePlattformLinks(props.item, plattform.value))}}},[_vm._v(\"\\n \"+_vm._s(_vm.getNicePlattformLinks(props.item, plattform.value))+\"\\n \")]),_c('td',[_vm._v(\"\\n \"+_vm._s(_vm.getClicks(props.item, plattform.value))+\"\\n \")]),_c('td',[_vm._v(\"\\n \"+_vm._s(_vm.getRegistrations(props.item, plattform.value))+\"\\n \")])])})],2)]}}])})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { MarketingResultDto } from './marketingResultDto'\r\n\r\nexport class MarketingCampainDto {\r\n public id: number = 0;\r\n public description: string = '';\r\n public createdAt: Date = new Date();\r\n public targetLink: string = '';\r\n public isPermanent: boolean = false;\r\n public results: MarketingResultDto[] = []\r\n}\r\n","\r\nconst Plattforms = [\r\n {\r\n text: 'Newsletter',\r\n value: 1,\r\n },\r\n {\r\n text: 'Facebook',\r\n value: 2,\r\n },\r\n {\r\n text: 'Instagram',\r\n value: 3,\r\n },\r\n {\r\n text: 'LinkedIn',\r\n value: 4,\r\n },\r\n {\r\n text: 'YouTube',\r\n value: 5,\r\n },\r\n];\r\n\r\nexport default Plattforms;","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport httpClient from '../../store/httpClient';\r\nimport { MarketingCampainDto } from '@/dtos/marketingCampaignDto';\r\nimport Plattforms from '@/dtos/socialMediaPlattform';\r\n\r\n@Component\r\nexport default class LinkDashboard extends Vue {\r\n private links: MarketingCampainDto[] = []\r\n private loading: boolean = false\r\n private showAll: boolean = true\r\n private plattforms: any = Plattforms\r\n private headers: any[] = [\r\n {\r\n text: 'Link',\r\n sortable: false\r\n },\r\n {\r\n text: 'Titel',\r\n sortable: false\r\n },\r\n {\r\n text: 'Ziel',\r\n sortable: false\r\n },\r\n {\r\n text: 'Erstellt am',\r\n sortable: false\r\n },\r\n {\r\n text: 'Total Klicks',\r\n sortable: false\r\n },\r\n {\r\n text: 'Registrierungen',\r\n sortable: false\r\n },\r\n ]\r\n private mounted() {\r\n this.loadLinks()\r\n }\r\n\r\n private async loadLinks() {\r\n const response = await httpClient()\r\n .get(`Marketing/GetMarketingLinks`);\r\n this.links = response.data;\r\n }\r\n\r\n private get shownLinks() {\r\n if (this.showAll) {\r\n return this.links\r\n }\r\n return this.links.filter(l => l.isPermanent)\r\n }\r\n\r\n private async addCampaign() {\r\n const campaign = new MarketingCampainDto()\r\n campaign.targetLink = 'https://blexon.com'\r\n campaign.description = 'Beschreibung der Kampagne'\r\n const response = await httpClient().post(`Marketing/SaveMarketingCampaign`, campaign)\r\n campaign.id = response.data\r\n this.links.unshift(campaign)\r\n }\r\n\r\n private async saveCampaign(campaign: MarketingCampainDto) {\r\n try {\r\n await httpClient().post(`Marketing/SaveMarketingCampaign`, campaign)\r\n this.$store.commit('setSnackbarText', 'Änderungen erfolgreich gespeichert.');\r\n } catch {\r\n this.$store.commit('setSnackbarErrorText', 'Link ist ungültig. Änderungen wurden nicht gespeichert.');\r\n }\r\n }\r\n\r\n private copyToClipboard(text: string) {\r\n navigator.clipboard.writeText(text);\r\n }\r\n\r\n private getPlattformLinks(marketingLink: MarketingCampainDto, plattform: number) {\r\n try {\r\n return `https://ads.blexon.com/link/${marketingLink.id}/${plattform}/`\r\n } catch {\r\n return ''\r\n }\r\n }\r\n\r\n private getNicePlattformLinks(marketingLink: MarketingCampainDto, plattform: number) {\r\n return `https://blexon.com/to?id=${marketingLink.id}&p=${plattform}`\r\n }\r\n\r\n private getClicks(marketingLink: MarketingCampainDto, plattform: number) {\r\n const plattformResults = marketingLink.results.filter(r => r.clickSource === plattform)\r\n if (plattformResults.length > 0) {\r\n return plattformResults[0].numberOfClicks\r\n }\r\n return 0\r\n }\r\n\r\n private getRegistrations(marketingLink: MarketingCampainDto, plattform: number) {\r\n const plattformResults = marketingLink.results.filter(r => r.clickSource === plattform)\r\n if (plattformResults.length > 0) {\r\n return plattformResults[0].numberOfRegistrations\r\n }\r\n return 0\r\n }\r\n\r\n private getTotalClicks(marketingLink: MarketingCampainDto) {\r\n let total = 0\r\n for (const result of marketingLink.results) {\r\n total += result.numberOfClicks\r\n }\r\n return total\r\n }\r\n\r\n private getTotalRegistrations(marketingLink: MarketingCampainDto) {\r\n let total = 0\r\n for (const result of marketingLink.results) {\r\n total += result.numberOfRegistrations\r\n }\r\n return total\r\n }\r\n}\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkDashboard.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkDashboard.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./LinkDashboard.vue?vue&type=template&id=58b9e75c\"\nimport script from \"./LinkDashboard.vue?vue&type=script&lang=ts\"\nexport * from \"./LinkDashboard.vue?vue&type=script&lang=ts\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\"}},[_c('router-link',{staticStyle:{\"text-decoration\":\"none\"},attrs:{\"to\":\"customer/calculations\"}},[_c('v-btn',{attrs:{\"text\":\"\",\"flat\":\"\"}},[_vm._v(\"Kalkulationen\")])],1),_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\",\"align-end\":\"\"}},[_c('v-flex',{attrs:{\"xs6\":\"\",\"lg5\":\"\",\"pr-2\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Suche\",\"prepend-icon\":\"search\",\"hint\":\"Suche nach Kundennummer, Firma, Vorname, Name, E-Mail und Telefonnummer (\\\"\\\" verwenden)\"},on:{\"keypress\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.searchOnEnter()}},model:{value:(_vm.searchTerm),callback:function ($$v) {_vm.searchTerm=$$v},expression:\"searchTerm\"}})],1),_c('v-flex',{attrs:{\"xs3\":\"\",\"lg1\":\"\",\"pr-2\":\"\"}},[_c('v-checkbox',{attrs:{\"label\":\"Volltext\"},model:{value:(_vm.volltextSuche),callback:function ($$v) {_vm.volltextSuche=$$v},expression:\"volltextSuche\"}})],1),_c('v-flex',{attrs:{\"xs3\":\"\",\"lg1\":\"\",\"pr-2\":\"\"}},[_c('v-text-field',{ref:\"skip\",attrs:{\"label\":\"Skip\",\"prepend-icon\":\"skip_next\",\"type\":\"number\",\"rules\":_vm.skipRules,\"hint\":\"Überspringe Suchresultate\"},model:{value:(_vm.manualSkip),callback:function ($$v) {_vm.manualSkip=_vm._n($$v)},expression:\"manualSkip\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"lg5\":\"\",\"pr-2\":\"\"}},[_c('v-combobox',{attrs:{\"items\":_vm.countries,\"label\":\"Länder\",\"chips\":\"\",\"multiple\":\"\"},on:{\"blur\":function($event){return _vm.loadCustomers(true)}},model:{value:(_vm.filterCountries),callback:function ($$v) {_vm.filterCountries=$$v},expression:\"filterCountries\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"lg12\":\"\"}},[_c('v-combobox',{attrs:{\"items\":_vm.tags,\"return-object\":\"\",\"clearable\":\"\",\"label\":\"Kategorien\",\"item-text\":\"name\",\"chips\":\"\",\"multiple\":\"\"},on:{\"blur\":function($event){return _vm.loadCustomers(true)}},scopedSlots:_vm._u([{key:\"selection\",fn:function(data){return [_c('v-chip',[_c('v-avatar',{staticClass:\"accent white--text\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(data.item.customerIds.length)+\"\\n\\t\\t\\t\\t\\t\\t\\t\")]),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(data.item.name)+\"\\n\\t\\t\\t\\t\\t\\t\\t\"),_c('v-icon',{attrs:{\"right\":\"\"},on:{\"click\":function($event){return _vm.removeTagFilter(data.item)}}},[_vm._v(\"close\")])],1)]}}]),model:{value:(_vm.filterTags),callback:function ($$v) {_vm.filterTags=$$v},expression:\"filterTags\"}})],1)],1)],1),_c('span',{staticStyle:{\"font-size\":\"0.9em\"}},[_vm._v(\"Total Kunden: \"+_vm._s(_vm.totalCustomerCount)+\" || Total Kunden in diesem Filter: \"+_vm._s(_vm.currentFilterCustomerCount))]),_c('span',{staticStyle:{\"font-size\":\"0.9em\"}}),_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"headers\":_vm.headers,\"loading\":_vm.isLoading,\"items\":_vm.customers,\"hide-actions\":true,\"custom-sort\":_vm.customSort},scopedSlots:_vm._u([{key:\"headers\",fn:function(props){return [_c('tr',_vm._l((props.headers),function(header){return _c('th',{key:header.text,class:[\n\t\t\t\t\t\t'column',\n\t\t\t\t\t\theader.sortable === true ? 'sortable' : '',\n\t\t\t\t\t\t_vm.sortProps.sortDescending ? 'desc' : 'asc',\n\t\t\t\t\t\theader.value === _vm.sortProps.sortByColumn ? 'active' : '',\n\t\t\t\t\t\theader.align === 'left' ? 'text-xs-left' : 'text-xs-right'\n\t\t\t\t\t],on:{\"click\":function($event){return _vm.changeSort(header.value, header.sortable)}}},[(header.value === _vm.sortProps.sortByColumn)?_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\"arrow_upward\")]):_vm._e(),_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(header.text)+\"\\n\\t\\t\\t\\t\")],1)}),0)]}},{key:\"items\",fn:function(props){return [_c('tr',{class:props.item.active ? '' : 'deletedCustomer',on:{\"click\":function($event){return _vm.navigateTo(props.item.customerId)}}},[_c('td',[_vm._v(_vm._s(props.item.customerId))]),_c('td',[_vm._v(_vm._s(props.item.companyName))]),_c('td',_vm._l((props.item.users),function(user){return _c('div',{key:user.userId},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(user.firstname)+\"\\n\\t\\t\\t\\t\\t\")])}),0),_c('td',_vm._l((props.item.users),function(user){return _c('div',{key:user.userId},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(user.lastname)+\"\\n\\t\\t\\t\\t\\t\")])}),0),_c('td',{staticClass:\"truncate\"},_vm._l((props.item.users),function(user){return _c('div',{key:user.userId},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(user.eMail)+\"\\n\\t\\t\\t\\t\\t\")])}),0),_c('td',[_vm._v(_vm._s(props.item.country))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"formatDate\")(props.item.registriertAm)))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"formatDate\")(props.item.firstOrderDate)))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"formatDate\")(props.item.lastOrderDate)))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(props.item.numberOfArtikel))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(props.item.numberOfOrders))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format2Digit\")(props.item.totalAmountOrdered)))])])]}}])}),_c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\"}},[(_vm.hasMoreToLoad)?_c('v-layout',{attrs:{\"row\":\"\",\"justify-center\":\"\"}},[_c('v-flex',{attrs:{\"shrink\":\"\"}},[(!_vm.isLoading)?_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"title\":\"Lädt weitere Kunden mit den aktuellen Filtereinstellungen.\"},on:{\"click\":function($event){return _vm.manuallyLoadMoreCustomers()}}},[_vm._v(\"\\n\\t\\t\\t\\t\\tMehr laden\\n\\t\\t\\t\\t\\t\"),_c('v-icon',{attrs:{\"right\":\"\"}},[_vm._v(\"expand_more\")])],1):_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"color\":\"accent\"}})],1)],1):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Watch } from 'vue-property-decorator';\r\nimport { debounce } from 'typescript-debounce-decorator';\r\nimport httpClient from '../../store/httpClient';\r\nimport { CustomerSearchRequestDto } from '../../dtos/customerSearchRequestDto';\r\nimport { CustomerSortingType } from '../../dtos/customerSortingType';\r\nimport { TagDto } from '@/dtos/tagDto';\r\n\r\n@Component\r\nexport default class CustomerDashboard extends Vue {\r\n\tprivate loadBatchSize: number = 50;\r\n\tprivate isCustomersLoading: boolean = false;\r\n\tprivate isTotalLoading: boolean = false;\r\n\tprivate currentFilterCustomerCount: number = 0;\r\n\r\n\tprivate headers: Array<{\r\n\t\ttext: string,\r\n\t\tvalue: string,\r\n\t\talign: string,\r\n\t\tsortable: boolean\r\n\t}> = Array(\r\n\t\t{\r\n\t\t\ttext: 'KndNr',\r\n\t\t\tvalue: 'customerId',\r\n\t\t\talign: 'left',\r\n\t\t\tsortable: true\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Firma',\r\n\t\t\tvalue: 'companyName',\r\n\t\t\talign: 'left',\r\n\t\t\tsortable: true\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Vorname',\r\n\t\t\tvalue: 'firstname',\r\n\t\t\talign: 'left',\r\n\t\t\tsortable: false\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Nachname',\r\n\t\t\tvalue: 'name',\r\n\t\t\talign: 'left',\r\n\t\t\tsortable: false\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'E-Mail',\r\n\t\t\tvalue: 'eMail',\r\n\t\t\talign: 'left',\r\n\t\t\tsortable: false\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Land',\r\n\t\t\tvalue: 'country',\r\n\t\t\talign: 'left',\r\n\t\t\tsortable: false\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Registrierung',\r\n\t\t\tvalue: 'registriertAm',\r\n\t\t\talign: 'right',\r\n\t\t\tsortable: true\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Erste Bestellung',\r\n\t\t\tvalue: 'firstOrderDate',\r\n\t\t\talign: 'right',\r\n\t\t\tsortable: true\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Letzte Bestellung',\r\n\t\t\tvalue: 'lastOrderDate',\r\n\t\t\talign: 'right',\r\n\t\t\tsortable: true\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: '# Artikel',\r\n\t\t\tvalue: 'numberOfArtikel',\r\n\t\t\talign: 'right',\r\n\t\t\tsortable: true\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: '# Bestellungen',\r\n\t\t\tvalue: 'numberOfOrders',\r\n\t\t\talign: 'right',\r\n\t\t\tsortable: true\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Bestellsumme',\r\n\t\t\tvalue: 'totalAmountOrdered',\r\n\t\t\talign: 'right',\r\n\t\t\tsortable: true\r\n\t\t}\r\n\t);\r\n\r\n\tbeforeRouteEnter(to: any, from: any, next: any) {\r\n\t\tnext((vm: any) => {\r\n\t\t\twindow.addEventListener('scroll', vm.checkBottom);\r\n\t\t});\r\n\t}\r\n\r\n\tbeforeRouteLeave(to: any, from: any, next: any) {\r\n\t\twindow.removeEventListener('scroll', this.checkBottom);\r\n\t\tnext();\r\n\t}\r\n\r\n\tprivate mounted() {\r\n\t\tif (this.customers.length === 0) {\r\n\t\t\tthis.loadCustomers(true);\r\n\t\t\tthis.getTotalCustomerCount();\r\n\t\t}\r\n\t}\r\n\r\n\tprivate customSort(items: any, index: any, isDesc: any) {\r\n\t\t// Do nothing because items are correclty sorted by the backend\r\n\t\t// But a custom sort is needed because otherwise the data-table shuffles items around\r\n\t\t// Maybe there is another solution to stop the sorting but I haven't found it, yet.\r\n\t\treturn items;\r\n\t}\r\n\r\n\tprivate skipRules = [\r\n (value: number) => value >= 0 || 'Muss positiv sein',\r\n (value: number) => value < this.totalCustomerCount || `Maximal ${this.totalCustomerCount}`,\r\n ];\r\n\r\n private get isLoading() {\r\n return this.$store.state.isLoadingCustomers;\r\n }\r\n private set isLoading(isLoading: boolean) {\r\n this.$store.commit('setCustomerLoading', isLoading);\r\n }\r\n\r\n\tprivate get customers() {\r\n\t\treturn this.$store.state.customers;\r\n\t}\r\n\r\n\tprivate get totalCustomerCount() {\r\n\t\treturn this.$store.state.totalCustomerCount;\r\n\t}\r\n\r\n\tprivate get searchRequest(): CustomerSearchRequestDto {\r\n\t\treturn this.$store.getters.currentCustomerSearchRequest;\r\n\t}\r\n\r\n\tprivate get searchTerm(): string {\r\n\t\treturn this.$store.state.suchbegriff;\r\n\t}\r\n\tprivate set searchTerm(searchTerm: string) {\r\n\t\tthis.$store.commit('setSuchbegriff', searchTerm);\r\n\t}\r\n\r\n\tprivate get manualSkip(): number {\r\n\t\treturn this.$store.state.manualSkip;\r\n\t}\r\n\tprivate set manualSkip(skip: number) {\r\n\t\tthis.$store.commit('setManualSkip', skip);\r\n\t}\r\n\r\n\tprivate get lastSearchTerm(): string {\r\n\t\treturn this.$store.state.customerLastSearchTerm;\r\n\t}\r\n\tprivate set lastSearchTerm(lastSearchTerm: string) {\r\n\t\tthis.$store.commit('setCustomerLastSearchTerm', lastSearchTerm);\r\n\t}\r\n\r\n\tprivate get hasMoreToLoad(): boolean {\r\n\t\treturn this.$store.state.hasMoreCustomersToLoad;\r\n\t}\r\n\tprivate set hasMoreToLoad(hasMoreToLoad: boolean) {\r\n\t\tthis.$store.commit('setHasMoreCustomersToLoad', hasMoreToLoad);\r\n\t}\r\n\r\n\tprivate get volltextSuche(): boolean {\r\n\t\treturn this.$store.state.customerVolltextSuche;\r\n\t}\r\n\tprivate set volltextSuche(isVolltextSuche: boolean) {\r\n\t\tthis.$store.commit('setCustomerVolltextSuche', isVolltextSuche);\r\n\t}\r\n\r\n\tprivate get tags() {\r\n\t\treturn this.$store.state.tags;\r\n\t}\r\n\tprivate get filterTags(): TagDto[] {\r\n\t\treturn this.$store.state.customerFilterTags;\r\n\t}\r\n\tprivate set filterTags(tags: TagDto[]) {\r\n\t\tthis.$store.commit('setFilterTags', tags);\r\n\t}\r\n\t\r\n\tprivate get countries() {\r\n\t\treturn this.$store.state.countries;\r\n\t}\r\n\tprivate get filterCountries(): String[] {\r\n\t\treturn this.$store.state.customerFilterCountries;\r\n\t}\r\n\tprivate set filterCountries(countries: String[]) {\r\n\t\tthis.$store.commit('setCustomerFilterCountries', countries);\r\n\t}\r\n\r\n\tprivate async loadCustomers(reload: boolean) {\r\n\t\tif (this.isLoading) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\ttry {\r\n\t\t\tthis.isCustomersLoading = true;\r\n\t\t\tthis.setLoading();\r\n\t\t\tconsole.log(\"loading customers...\");\r\n\t\t\tlet from = 0;\r\n\t\t\tif (this.manualSkip > 0) {\r\n\t\t\t\tfrom = parseInt(this.manualSkip.toString());\r\n\t\t\t}\r\n\t\t\tif (!reload) {\r\n\t\t\t\tfrom += this.$store.state.customers.length;\r\n\t\t\t}\r\n\t\t\tconst response = await httpClient().post(\r\n\t\t\t\t`Customer/GetCustomerInfo` + `?from=${from}` + `&to=${from + this.loadBatchSize}`,\r\n\t\t\t\tthis.searchRequest\r\n\t\t\t);\r\n if (reload) {\r\n this.$store.commit('setCustomers', response.data.customerInfos);\r\n\t\t\t\tthis.currentFilterCustomerCount = response.data.count;\r\n } else {\r\n this.$store.commit('addOrUpdateCustomers', response.data.customerInfos);\r\n }\r\n\r\n this.hasMoreToLoad = response.data.customerInfos.length === this.loadBatchSize;\r\n\t\t} catch {\r\n\t\t\tconsole.log('Load customers failed.');\r\n\t\t} finally {\r\n\t\t\tthis.isCustomersLoading = false;\r\n\t\t\tthis.setLoading();\r\n\t\t}\r\n\t}\r\n\r\n\tprivate async getTotalCustomerCount() {\r\n\t\ttry {\r\n\t\t\tthis.isTotalLoading = true;\r\n\t\t\tthis.setLoading();\r\n\t\t\tconst response = await httpClient().get(`Customer/GetTotalCustomerCount`);\r\n\t\t\tthis.$store.commit('setTotalCustomerCount', response.data)\r\n\t\t} catch {\r\n\t\t\tconsole.log('Load total customer count failed.');\r\n\t\t} finally {\r\n\t\t\tthis.isTotalLoading = false;\r\n\t\t\tthis.setLoading();\r\n\t\t}\r\n\t}\r\n\r\n\tprivate searchOnEnter() {\r\n\t\tif (!this.isLoading) {\r\n\t\t\tthis.lastSearchTerm = this.searchTerm;\r\n\t\t\tthis.loadCustomers(true);\r\n\t\t}\r\n\t}\r\n\r\n\t@debounce(700, { leading: false })\r\n @Watch('searchTerm')\r\n private reloadOnSearchTermChange() {\r\n if (!this.isLoading\r\n && this.lastSearchTerm !== this.searchTerm\r\n && (this.searchTerm.length >= 3 || this.searchTerm.length === 0)) {\r\n this.lastSearchTerm = this.searchTerm; \r\n this.loadCustomers(true);\r\n }\r\n }\r\n\r\n\t@Watch('volltextSuche')\r\n\tprivate reloadOnVolltextChange() {\r\n\t\tif (!this.isLoading) {\r\n\t\t\tthis.loadCustomers(true);\r\n\t\t}\r\n\t}\r\n\r\n\t@debounce(700, { leading: false })\r\n\t@Watch('manualSkip')\r\n\tprivate reloadOnSkipChange() {\r\n\t\t(this.$refs['skip'] as any).validate();\r\n\t\tif ((this.$refs['skip'] as any).valid && !this.isLoading) {\r\n\t\t\tthis.loadCustomers(true);\r\n\t\t}\r\n\t}\r\n\r\n\tprivate checkBottom() {\r\n\t\tlet bottomOfWindow = (window.innerHeight + window.pageYOffset) >= document.body.offsetHeight - 2;\r\n\t\tif (bottomOfWindow && this.hasMoreToLoad && !this.isLoading) {\r\n\t\t\tthis.loadCustomers(false);\r\n\t\t}\r\n\t}\r\n\r\n\tprivate manuallyLoadMoreCustomers() {\r\n if (this.hasMoreToLoad && !this.isLoading) {\r\n this.loadCustomers(false);\r\n }\r\n }\r\n\r\n private removeTagFilter(item: any) {\r\n\t\tconst index = this.filterTags.indexOf(item);\r\n\t\tthis.filterTags.splice(index, 1);\r\n\t}\r\n\r\n\tprivate navigateTo(customerId: string) {\r\n\t\tthis.$router.push({ name: 'customerDetail', params: { customerId } });\r\n\t}\r\n\r\n\tprivate setLoading() {\r\n\t\tthis.isLoading = this.isCustomersLoading || this.isTotalLoading;\r\n\t}\r\n\r\n\tprivate changeSort(column: string, sortable: boolean) {\r\n\t\tif (sortable) {\r\n\t\t\tlet newSort: CustomerSortingType;\r\n\t\t\tif (this.sortProps.sortByColumn === column) {\r\n\t\t\t\tnewSort = this.sortProps.sortDescending ? this.searchRequest.sortingType - 1 : this.searchRequest.sortingType + 1;\r\n\t\t\t} else {\r\n\t\t\t\tnewSort = this.getSortTypeFromColumn(column);\r\n\t\t\t}\r\n\t\t\tthis.$store.commit('setCustomerSortType', newSort);\r\n\t\t\tthis.loadCustomers(true);\r\n\t\t}\r\n\t}\r\n\r\n\tprivate get sortProps() {\r\n\t\tlet descending: boolean = false;\r\n\t\tlet column: string = 'registriertAm';\r\n\t\tlet currentSortingType: CustomerSortingType = this.$store.state.customerSortingType;\r\n\t\tswitch (currentSortingType) {\r\n\t\t\tcase CustomerSortingType.CustomerIdAscending: {\r\n\t\t\t\tdescending = false;\r\n\t\t\t\tcolumn = 'customerId';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.CustomerIdDescending: {\r\n\t\t\t\tdescending = true;\r\n\t\t\t\tcolumn = 'customerId';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.FirmaAscending: {\r\n\t\t\t\tdescending = false;\r\n\t\t\t\tcolumn = 'companyName';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.FirmaDescending: {\r\n\t\t\t\tdescending = true;\r\n\t\t\t\tcolumn = 'companyName';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.VornameAscending: {\r\n\t\t\t\tdescending = false;\r\n\t\t\t\tcolumn = 'firstname';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.VornameDescending: {\r\n\t\t\t\tdescending = true;\r\n\t\t\t\tcolumn = 'firstname';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.NachnameAscending: {\r\n\t\t\t\tdescending = false;\r\n\t\t\t\tcolumn = 'name';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.NachnameDescending: {\r\n\t\t\t\tdescending = true;\r\n\t\t\t\tcolumn = 'name';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.RegisteredAscending: {\r\n\t\t\t\tdescending = false;\r\n\t\t\t\tcolumn = 'registriertAm';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.RegisteredDescending: {\r\n\t\t\t\tdescending = true;\r\n\t\t\t\tcolumn = 'registriertAm';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.FirstOrderAscending: {\r\n\t\t\t\tdescending = false;\r\n\t\t\t\tcolumn = 'firstOrderDate';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.FirstOrderDescending: {\r\n\t\t\t\tdescending = true;\r\n\t\t\t\tcolumn = 'firstOrderDate';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.LastOrderAscending: {\r\n\t\t\t\tdescending = false;\r\n\t\t\t\tcolumn = 'lastOrderDate';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.LastOrderDescending: {\r\n\t\t\t\tdescending = true;\r\n\t\t\t\tcolumn = 'lastOrderDate';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.NumberOfArticlesAscending: {\r\n\t\t\t\tdescending = false;\r\n\t\t\t\tcolumn = 'numberOfArtikel';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.NumberOfArticlesDescending: {\r\n\t\t\t\tdescending = true;\r\n\t\t\t\tcolumn = 'numberOfArtikel';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.NumberOfOrdersAscending: {\r\n\t\t\t\tdescending = false;\r\n\t\t\t\tcolumn = 'numberOfOrders';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.NumberOfOrdersDescending: {\r\n\t\t\t\tdescending = true;\r\n\t\t\t\tcolumn = 'numberOfOrders';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.OrderSumAscending: {\r\n\t\t\t\tdescending = false;\r\n\t\t\t\tcolumn = 'totalAmountOrdered';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase CustomerSortingType.OrderSumDescending: {\r\n\t\t\t\tdescending = true;\r\n\t\t\t\tcolumn = 'totalAmountOrdered';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn {\r\n\t\t\tsortDescending: descending,\r\n\t\t\tsortByColumn: column,\r\n\t\t}\r\n\t}\r\n\r\n\tgetSortTypeFromColumn(column: string) {\r\n\t\tswitch (column) {\r\n\t\t\tcase 'customerId': {\r\n\t\t\t\treturn CustomerSortingType.CustomerIdAscending;\r\n\t\t\t}\r\n\t\t\tcase 'companyName': {\r\n\t\t\t\treturn CustomerSortingType.FirmaAscending;\r\n\t\t\t}\r\n\t\t\tcase 'firstname': {\r\n\t\t\t\treturn CustomerSortingType.VornameAscending;\r\n\t\t\t}\r\n\t\t\tcase 'name': {\r\n\t\t\t\treturn CustomerSortingType.NachnameAscending;\r\n\t\t\t}\r\n\t\t\tcase 'registriertAm': {\r\n\t\t\t\treturn CustomerSortingType.RegisteredAscending;\r\n\t\t\t}\r\n\t\t\tcase 'firstOrderDate': {\r\n\t\t\t\treturn CustomerSortingType.FirstOrderAscending;\r\n\t\t\t}\r\n\t\t\tcase 'lastOrderDate': {\r\n\t\t\t\treturn CustomerSortingType.LastOrderAscending;\r\n\t\t\t}\r\n\t\t\tcase 'numberOfArtikel': {\r\n\t\t\t\treturn CustomerSortingType.NumberOfArticlesAscending;\r\n\t\t\t}\r\n\t\t\tcase 'numberOfOrders': {\r\n\t\t\t\treturn CustomerSortingType.NumberOfOrdersAscending;\r\n\t\t\t}\r\n\t\t\tcase 'totalAmountOrdered': {\r\n\t\t\t\treturn CustomerSortingType.OrderSumAscending;\r\n\t\t\t}\r\n\t\t\tdefault: {\r\n\t\t\t\treturn CustomerSortingType.CustomerIdDescending;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dashboard.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dashboard.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Dashboard.vue?vue&type=template&id=389611f8&scoped=true\"\nimport script from \"./Dashboard.vue?vue&type=script&lang=ts\"\nexport * from \"./Dashboard.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Dashboard.vue?vue&type=style&index=0&id=389611f8&prod&scoped=true&lang=css\"\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 \"389611f8\",\n null\n \n)\n\nexport default component.exports","function _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];\n return n;\n}\nexport { _arrayLikeToArray as default };","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-data-table',{attrs:{\"loading\":_vm.loading,\"hide-actions\":\"\",\"dense\":\"\",\"headers\":[\n {\n text: 'Werkstoffe',\n },\n {\n text: 'Funktionen',\n align: 'right',\n sortable: false\n }\n ],\"items\":_vm.werkstoffEntgratenSettingDtos,\"item-key\":\"werkstoffBezeichnung\"},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('tr',{staticClass:\"orderRow\",on:{\"click\":function($event){props.expanded = !props.expanded}}},[_c('td',[_vm._v(_vm._s(props.item.werkstoffBezeichnung))]),_c('td',{staticStyle:{\"text-align\":\"right\"}},[_c('v-btn',{attrs:{\"small\":\"\"},on:{\"click\":function($event){return _vm.openNewMaterialDialog(props.item.werkstoffBezeichnung)}}},[_vm._v(\"Neues Material\")])],1)])]}},{key:\"expand\",fn:function(props){return [_c('v-data-table',{staticClass:\"elevation-1 ml-3 mb-3\",attrs:{\"headers\":[\n {\n text: 'Fab Id',\n align: 'right',\n sortable: false,\n },\n {\n text: 'Bezeichnung',\n align: 'left',\n sortable: false,\n },\n {\n text: 'Dicke',\n align: 'right',\n sortable: false,\n },\n {\n text: 'Beidseitig entgraten möglich',\n width: '20px',\n align: 'left',\n sortable: false,\n },\n {\n text: 'Trowalisieren möglich',\n align: 'left',\n sortable: false,\n },\n {\n text: 'Manuelle Entgratgeschwindigkeit [mm/sek]',\n align: 'left',\n sortable: false,\n },\n {\n text: 'Validation',\n align: 'left',\n sortable: false,\n },\n ],\"hide-actions\":\"\",\"dense\":\"\",\"items\":props.item.rohmaterialEntgratenSettings,\"item-key\":\"item.rohmaterialId\"},scopedSlots:_vm._u([{key:\"items\",fn:function(rohmaterial){return [_c('tr',[_c('td',{staticStyle:{\"text-align\":\"right\"}},[_vm._v(_vm._s(rohmaterial.item.rohmaterialId))]),_c('td',[_vm._v(_vm._s(rohmaterial.item.bezeichnung))]),_c('td',{staticStyle:{\"text-align\":\"right\"}},[_vm._v(_vm._s(rohmaterial.item.thickness))]),_c('td',[_c('v-checkbox',{on:{\"change\":function($event){return _vm.updateMaterial(rohmaterial.item)}},model:{value:(rohmaterial.item.isBothSidesEnabled),callback:function ($$v) {_vm.$set(rohmaterial.item, \"isBothSidesEnabled\", $$v)},expression:\"rohmaterial.item.isBothSidesEnabled\"}})],1),_c('td',[_c('v-checkbox',{on:{\"change\":function($event){return _vm.updateMaterial(rohmaterial.item)}},model:{value:(rohmaterial.item.isTrowalisierenEnabled),callback:function ($$v) {_vm.$set(rohmaterial.item, \"isTrowalisierenEnabled\", $$v)},expression:\"rohmaterial.item.isTrowalisierenEnabled\"}})],1),_c('td',[_c('v-text-field',{attrs:{\"type\":\"number\"},on:{\"change\":function($event){return _vm.updateMaterial(rohmaterial.item)}},model:{value:(rohmaterial.item.manualBurringSpeed),callback:function ($$v) {_vm.$set(rohmaterial.item, \"manualBurringSpeed\", _vm._n($$v))},expression:\"rohmaterial.item.manualBurringSpeed\"}})],1),_c('td',[_c('v-icon',{attrs:{\"color\":\"accent\"},on:{\"click\":function($event){return _vm.openValidationSettings(rohmaterial.item)}}},[_vm._v(\"\\n create\\n \")]),_c('v-btn',{attrs:{\"small\":\"\"},on:{\"click\":function($event){return _vm.openCompareMaterialDialog(rohmaterial.item, props.item.werkstoffBezeichnung)}}},[_vm._v(\"\\n Kopieren\\n \")])],1)])]}}],null,true)})]}}])}),_c('v-dialog',{attrs:{\"fullscreen\":\"\"},model:{value:(_vm.editDialogOpen),callback:function ($$v) {_vm.editDialogOpen=$$v},expression:\"editDialogOpen\"}},[_c('material-validation-settings-component',{attrs:{\"rohmaterialId\":_vm.editRohmaterialId,\"materialBezeichnung\":_vm.editRohmaterialBezeichnung},on:{\"close\":function($event){_vm.editDialogOpen = false}}})],1),_c('new-material-dialog',{attrs:{\"open\":_vm.newMaterialDialog,\"werkstoffName\":_vm.newMaterialWerkstoffName,\"materials\":_vm.newMaterialMaterialList},on:{\"create\":function($event){return _vm.createNewMaterial($event)},\"close\":function($event){_vm.newMaterialDialog = false}}}),_c('compare-material-dialog',{attrs:{\"open\":_vm.compareMaterialDialog,\"materials\":_vm.newMaterialMaterialList,\"baseMaterial\":_vm.compareMaterialBaseMaterial,\"werkstoffName\":_vm.compareMaterialWerkstoffName},on:{\"copy\":function($event){return _vm.copyMaterial($event)},\"close\":function($event){_vm.compareMaterialDialog = false}}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-card',[_c('v-card-title',[_c('h3',[_vm._v(_vm._s(_vm.materialBezeichnung))])]),(_vm.loading)?_c('v-card-text',[_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"color\":\"accent\"}})],1):_c('v-card-text',[(_vm.parameter != null)?_c('v-container',{staticClass:\"ma-0 pa-0\"},[_c('v-text-field',{attrs:{\"label\":\"Biegezone [mm]\",\"type\":\"number\"},model:{value:(_vm.parameter.biegezone),callback:function ($$v) {_vm.$set(_vm.parameter, \"biegezone\", _vm._n($$v))},expression:\"parameter.biegezone\"}}),_c('v-text-field',{attrs:{\"label\":\"Toleranz zwischen Biegezone und Aussenkontur [mm]\",\"type\":\"number\"},model:{value:(_vm.parameter.toleranzBiegezoneAussenkontur),callback:function ($$v) {_vm.$set(_vm.parameter, \"toleranzBiegezoneAussenkontur\", _vm._n($$v))},expression:\"parameter.toleranzBiegezoneAussenkontur\"}}),_c('v-text-field',{attrs:{\"label\":\"Minimaler Lochdurchmesser [mm]\",\"type\":\"number\"},model:{value:(_vm.parameter.minimalerLochdurchmesser),callback:function ($$v) {_vm.$set(_vm.parameter, \"minimalerLochdurchmesser\", _vm._n($$v))},expression:\"parameter.minimalerLochdurchmesser\"}}),_c('v-text-field',{attrs:{\"label\":\"Minimale Konturdistanz [mm]\",\"type\":\"number\"},model:{value:(_vm.parameter.minimaleKonturdistanz),callback:function ($$v) {_vm.$set(_vm.parameter, \"minimaleKonturdistanz\", _vm._n($$v))},expression:\"parameter.minimaleKonturdistanz\"}}),_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-text-field',{staticClass:\"mr-3\",attrs:{\"label\":\"Maximale Distanz zum Schweissen [mm]\",\"hint\":\"Maximale Distanz von Kante zu Kante oder von Kante zu Fläche damit geschweisst werden kann.\",\"type\":\"number\"},model:{value:(_vm.parameter.maximalDistanceForWeldline),callback:function ($$v) {_vm.$set(_vm.parameter, \"maximalDistanceForWeldline\", _vm._n($$v))},expression:\"parameter.maximalDistanceForWeldline\"}}),_c('v-text-field',{attrs:{\"label\":\"Zeitfaktor für Schweissen\",\"hint\":\"Die Schweisszeit (ohne Einrichten) wird mit diesem Faktor multipliziert. Als Basis gilt 1 für Stahl.\",\"type\":\"number\"},model:{value:(_vm.parameter.weldTimeFactor),callback:function ($$v) {_vm.$set(_vm.parameter, \"weldTimeFactor\", _vm._n($$v))},expression:\"parameter.weldTimeFactor\"}})],1),_c('v-text-field',{attrs:{\"label\":\"Zeitfaktor für Biegewerkzeugrüstaufwand\",\"hint\":\"Die Rüstzeit (ohne Grundrüstzeit) wird mit diesem Faktor multipliziert.\",\"type\":\"number\"},model:{value:(_vm.parameter.bendToolSetupTimeFactor),callback:function ($$v) {_vm.$set(_vm.parameter, \"bendToolSetupTimeFactor\", _vm._n($$v))},expression:\"parameter.bendToolSetupTimeFactor\"}})],1):_vm._e(),(_vm.parameter != null)?_c('v-expansion-panel',[_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Biegeradien\")]),_c('v-container',{attrs:{\"fluid\":\"\",\"py-0\":\"\"}},[_vm._l((_vm.parameter.bendRadiuses),function(bendRadius,index){return _c('v-layout',{key:index,attrs:{\"row\":\"\",\"align-center\":\"\"}},[_c('v-flex',{staticClass:\"mr-3\",attrs:{\"grow\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Radius [mm]\",\"type\":\"number\"},model:{value:(bendRadius.radius),callback:function ($$v) {_vm.$set(bendRadius, \"radius\", _vm._n($$v))},expression:\"bendRadius.radius\"}})],1),_c('v-flex',{staticClass:\"mr-3\",attrs:{\"grow\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Toleranz nach oben für grössere Radien [mm]\",\"type\":\"number\"},model:{value:(bendRadius.upperTolerance),callback:function ($$v) {_vm.$set(bendRadius, \"upperTolerance\", _vm._n($$v))},expression:\"bendRadius.upperTolerance\"}})],1),_c('v-flex',{staticClass:\"mr-3\",attrs:{\"grow\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Toleranz nach unten für kleinere Radien [mm]\",\"type\":\"number\"},model:{value:(bendRadius.lowerTolerance),callback:function ($$v) {_vm.$set(bendRadius, \"lowerTolerance\", _vm._n($$v))},expression:\"bendRadius.lowerTolerance\"}})],1),_c('v-flex',{staticClass:\"mr-3\",attrs:{\"grow\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Biegezone [mm]\",\"hint\":\"Wenn der Wert 0mm ist, wird die default Biegezone verwendet\",\"type\":\"number\"},model:{value:(bendRadius.biegezone),callback:function ($$v) {_vm.$set(bendRadius, \"biegezone\", _vm._n($$v))},expression:\"bendRadius.biegezone\"}})],1),_c('v-flex',{staticClass:\"mr-3\",attrs:{\"grow\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Toleranz zu Aussenkontur [mm]\",\"hint\":\"Wenn der Wert 0mm ist, wird die default Toleranz verwendet\",\"type\":\"number\"},model:{value:(bendRadius.toleranzBiegezoneAussenkontur),callback:function ($$v) {_vm.$set(bendRadius, \"toleranzBiegezoneAussenkontur\", _vm._n($$v))},expression:\"bendRadius.toleranzBiegezoneAussenkontur\"}})],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-icon',{attrs:{\"color\":\"accent\"},on:{\"click\":function($event){return _vm.deleteBendRadius(index)}}},[_vm._v(\"\\n delete\\n \")])],1)],1)}),_c('v-btn',{staticClass:\"mx-0 blexon-button\",attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.addBendRadius()}}},[_c('v-icon',[_vm._v(\"add\")])],1)],2)],1)],1):_vm._e(),_c('v-divider'),(_vm.parameter != null)?_c('v-expansion-panel',[_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Falzradien\")]),_c('v-container',{attrs:{\"fluid\":\"\",\"py-0\":\"\"}},[_vm._l((_vm.parameter.falzRadiuses),function(falzRadius,index){return _c('v-layout',{key:index,attrs:{\"row\":\"\",\"align-center\":\"\"}},[_c('v-flex',{staticClass:\"mr-3\",attrs:{\"grow\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Radius [mm]\",\"type\":\"number\"},model:{value:(falzRadius.radius),callback:function ($$v) {_vm.$set(falzRadius, \"radius\", _vm._n($$v))},expression:\"falzRadius.radius\"}})],1),_c('v-flex',{staticClass:\"mr-3\",attrs:{\"grow\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Toleranz nach oben für grössere Radien [mm]\",\"type\":\"number\"},model:{value:(falzRadius.upperTolerance),callback:function ($$v) {_vm.$set(falzRadius, \"upperTolerance\", _vm._n($$v))},expression:\"falzRadius.upperTolerance\"}})],1),_c('v-flex',{staticClass:\"mr-3\",attrs:{\"grow\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Toleranz nach unten für kleinere Radien [mm]\",\"type\":\"number\"},model:{value:(falzRadius.lowerTolerance),callback:function ($$v) {_vm.$set(falzRadius, \"lowerTolerance\", _vm._n($$v))},expression:\"falzRadius.lowerTolerance\"}})],1),_c('v-flex',{staticClass:\"mr-3\",attrs:{\"grow\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Biegezone [mm]\",\"hint\":\"Wenn der Wert 0mm ist, wird die default Biegezone verwendet\",\"type\":\"number\"},model:{value:(falzRadius.biegezone),callback:function ($$v) {_vm.$set(falzRadius, \"biegezone\", _vm._n($$v))},expression:\"falzRadius.biegezone\"}})],1),_c('v-flex',{staticClass:\"mr-3\",attrs:{\"grow\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Toleranz zu Aussenkontur [mm]\",\"hint\":\"Wenn der Wert 0mm ist, wird die default Toleranz verwendet\",\"type\":\"number\"},model:{value:(falzRadius.toleranzBiegezoneAussenkontur),callback:function ($$v) {_vm.$set(falzRadius, \"toleranzBiegezoneAussenkontur\", _vm._n($$v))},expression:\"falzRadius.toleranzBiegezoneAussenkontur\"}})],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-icon',{attrs:{\"color\":\"accent\"},on:{\"click\":function($event){return _vm.deleteFalzRadius(index)}}},[_vm._v(\"\\n delete\\n \")])],1)],1)}),_c('v-btn',{staticClass:\"mx-0 blexon-button\",attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.addFalzRadius()}}},[_c('v-icon',[_vm._v(\"add\")])],1)],2)],1)],1):_vm._e(),_c('v-divider'),(_vm.parameter != null)?_c('v-expansion-panel',[_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Gewinde\")]),_c('v-container',{attrs:{\"fluid\":\"\",\"py-0\":\"\"}},[_vm._l((_vm.parameter.gewindeParameterDtos),function(gewinde,index){return _c('v-layout',{key:index,attrs:{\"row\":\"\",\"align-center\":\"\"}},[_c('v-flex',{attrs:{\"grow\":\"\"}},[_c('v-select',{staticClass:\"mr-3\",attrs:{\"label\":\"Name der Formatvorlage in Boost\",\"items\":_vm.gewindeFormVorlagen,\"item-text\":\"name\",\"item-value\":\"stanzwerkzeugId\"},model:{value:(gewinde.toolId),callback:function ($$v) {_vm.$set(gewinde, \"toolId\", $$v)},expression:\"gewinde.toolId\"}})],1),_c('v-flex',[_c('v-text-field',{staticClass:\"mr-3\",attrs:{\"type\":\"number\",\"label\":\"Preisfaktor\"},model:{value:(gewinde.priceFactor),callback:function ($$v) {_vm.$set(gewinde, \"priceFactor\", _vm._n($$v))},expression:\"gewinde.priceFactor\"}})],1),_c('v-flex',[_c('v-text-field',{staticClass:\"mr-3\",attrs:{\"type\":\"number\",\"label\":\"Einrichtkostenfaktor\"},model:{value:(gewinde.setupCostPriceFactor),callback:function ($$v) {_vm.$set(gewinde, \"setupCostPriceFactor\", _vm._n($$v))},expression:\"gewinde.setupCostPriceFactor\"}})],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-icon',{attrs:{\"color\":\"accent\"},on:{\"click\":function($event){return _vm.deleteGewinde(index)}}},[_vm._v(\"\\n delete\\n \")])],1)],1)}),_c('v-btn',{staticClass:\"mx-0 blexon-button\",attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.add()}}},[_c('v-icon',[_vm._v(\"add\")])],1)],2)],1)],1):_vm._e(),_c('v-divider'),(_vm.parameter != null)?_c('v-expansion-panel',[_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Senkungen\")]),_c('v-container',{attrs:{\"fluid\":\"\",\"py-0\":\"\"}},[_vm._l((_vm.parameter.senkungParameterDtos),function(senkung,index){return _c('v-layout',{key:index,attrs:{\"row\":\"\",\"align-center\":\"\"}},[_c('v-flex',{attrs:{\"grow\":\"\"}},[_c('v-select',{staticClass:\"mr-3\",attrs:{\"label\":\"Name der Formatvorlage in Boost\",\"items\":_vm.senkungFormVorlagen,\"item-text\":\"name\",\"item-value\":\"stanzwerkzeugId\"},model:{value:(senkung.toolId),callback:function ($$v) {_vm.$set(senkung, \"toolId\", $$v)},expression:\"senkung.toolId\"}})],1),_c('v-flex',[_c('v-text-field',{staticClass:\"mr-3\",attrs:{\"type\":\"number\",\"label\":\"Preisfaktor\"},model:{value:(senkung.priceFactor),callback:function ($$v) {_vm.$set(senkung, \"priceFactor\", _vm._n($$v))},expression:\"senkung.priceFactor\"}})],1),_c('v-flex',[_c('v-text-field',{staticClass:\"mr-3\",attrs:{\"type\":\"number\",\"label\":\"Einrichtkostenfaktor\"},model:{value:(senkung.setupCostPriceFactor),callback:function ($$v) {_vm.$set(senkung, \"setupCostPriceFactor\", _vm._n($$v))},expression:\"senkung.setupCostPriceFactor\"}})],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-icon',{attrs:{\"color\":\"accent\"},on:{\"click\":function($event){return _vm.deleteSenkung(index)}}},[_vm._v(\"\\n delete\\n \")])],1)],1)}),_c('v-btn',{staticClass:\"mx-0 blexon-button\",attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.addSenkung()}}},[_c('v-icon',[_vm._v(\"add\")])],1)],2)],1)],1):_vm._e(),_c('v-divider'),(_vm.parameter != null)?_c('v-expansion-panel',[_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Durchzüge für Gewinde\")]),_c('v-container',{attrs:{\"fluid\":\"\",\"py-0\":\"\"}},[_vm._l((_vm.parameter.durchzugParameterDtos),function(durchzug,index){return _c('v-layout',{key:index,attrs:{\"row\":\"\",\"align-center\":\"\"}},[_c('v-flex',{attrs:{\"grow\":\"\"}},[_c('v-select',{staticClass:\"mr-3\",attrs:{\"label\":\"Name der Formatvorlage in Boost\",\"items\":_vm.durchzugFormVorlagen,\"item-text\":\"name\",\"item-value\":\"stanzwerkzeugId\"},model:{value:(durchzug.toolId),callback:function ($$v) {_vm.$set(durchzug, \"toolId\", $$v)},expression:\"durchzug.toolId\"}})],1),_c('v-flex',[_c('v-text-field',{staticClass:\"mr-3\",attrs:{\"type\":\"number\",\"label\":\"Preisfaktor\"},model:{value:(durchzug.priceFactor),callback:function ($$v) {_vm.$set(durchzug, \"priceFactor\", _vm._n($$v))},expression:\"durchzug.priceFactor\"}})],1),_c('v-flex',[_c('v-text-field',{staticClass:\"mr-3\",attrs:{\"type\":\"number\",\"label\":\"Einrichtkostenfaktor\"},model:{value:(durchzug.setupCostPriceFactor),callback:function ($$v) {_vm.$set(durchzug, \"setupCostPriceFactor\", _vm._n($$v))},expression:\"durchzug.setupCostPriceFactor\"}})],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-icon',{attrs:{\"color\":\"accent\"},on:{\"click\":function($event){return _vm.deleteDurchzug(index)}}},[_vm._v(\"\\n delete\\n \")])],1)],1)}),_c('v-btn',{staticClass:\"mx-0 blexon-button\",attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.addDurchzug()}}},[_c('v-icon',[_vm._v(\"add\")])],1)],2)],1)],1):_vm._e()],1),_c('v-card-actions',[(_vm.parameter != null)?_c('v-container',{staticClass:\"ma-0 pa-0\"},[_c('v-spacer'),_c('v-btn',{on:{\"click\":function($event){return _vm.back()}}},[_vm._v(\"Zurück\")]),_c('v-btn',{staticClass:\"mx-0 my-3 blexon-button\",on:{\"click\":function($event){return _vm.speichern()}}},[_vm._v(\"\\n Speichern\\n \")])],1):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport httpClient from '../store/httpClient';\r\n@Component\r\nexport default class ValidationSettings extends Vue {\r\n @Prop()\r\n private rohmaterialId!: number;\r\n @Prop()\r\n private materialBezeichnung!: string;\r\n private loading: boolean = false;\r\n private parameter: any = null;\r\n private formVorlagen: any = [];\r\n\r\n @Watch('rohmaterialId')\r\n private async loadSettings() {\r\n try {\r\n if (this.rohmaterialId == null) {\r\n return;\r\n }\r\n this.loading = true;\r\n const responseVorlagen = httpClient().get(`Material/GetFormVorlagen`);\r\n const response = await httpClient().get(`Material/GetValidationParameter?materialId=${this.rohmaterialId}`);\r\n this.formVorlagen = (await responseVorlagen).data;\r\n this.parameter = response.data;\r\n } catch {\r\n console.log('Loading settings failed.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private get gewindeFormVorlagen() {\r\n return this.formVorlagen.filter((v: any) => v.designFormTemplate == 1);\r\n }\r\n\r\n private get senkungFormVorlagen() {\r\n return this.formVorlagen.filter((v: any) => v.designFormTemplate == 17);\r\n }\r\n\r\n private get durchzugFormVorlagen() {\r\n return this.formVorlagen.filter((v: any) => v.designFormTemplate == 9);\r\n }\r\n\r\n private add() {\r\n const neu = {\r\n toolId: 0,\r\n priceFactor: 1,\r\n setupCostPriceFactor: 1,\r\n };\r\n this.parameter.gewindeParameterDtos.push(neu);\r\n }\r\n\r\n private addSenkung() {\r\n const neu = {\r\n toolId: 0,\r\n priceFactor: 1,\r\n setupCostPriceFactor: 1,\r\n };\r\n this.parameter.senkungParameterDtos.push(neu);\r\n }\r\n\r\n private addDurchzug() {\r\n const neu = {\r\n toolId: 0,\r\n priceFactor: 1,\r\n setupCostPriceFactor: 1,\r\n };\r\n this.parameter.durchzugParameterDtos.push(neu);\r\n }\r\n\r\n private addBendRadius() {\r\n const neu = {\r\n rohmaterialId: this.parameter.rohmaterialId,\r\n radius: 0,\r\n upperTolerance: 0,\r\n lowerTolerance: 0,\r\n };\r\n this.parameter.bendRadiuses.push(neu);\r\n }\r\n\r\n private addFalzRadius() {\r\n const neu = {\r\n rohmaterialId: this.parameter.rohmaterialId,\r\n radius: 0,\r\n upperTolerance: 0,\r\n lowerTolerance: 0,\r\n };\r\n this.parameter.falzRadiuses.push(neu);\r\n }\r\n\r\n private async speichern() {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().post(`Material/SaveValidationParamter`,\r\n this.parameter);\r\n this.$store.commit('setSnackbarText', 'Änderungen erfolgreich gespeichert.');\r\n this.$emit('close');\r\n } catch {\r\n console.log('Save validation setting failed.');\r\n this.$store.commit('setSnackbarErrorText', 'Änderungen konnten nicht gespeichert werden');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private deleteGewinde(index: number) {\r\n this.parameter.gewindeParameterDtos.splice(index, 1);\r\n }\r\n\r\n private deleteSenkung(index: number) {\r\n this.parameter.senkungParameterDtos.splice(index, 1);\r\n }\r\n\r\n private deleteDurchzug(index: number) {\r\n this.parameter.durchzugParameterDtos.splice(index, 1);\r\n }\r\n\r\n private deleteBendRadius(index: number) {\r\n this.parameter.bendRadiuses.splice(index, 1);\r\n }\r\n\r\n private deleteFalzRadius(index: number) {\r\n this.parameter.falzRadiuses.splice(index, 1);\r\n }\r\n\r\n private back() {\r\n this.$emit('close');\r\n }\r\n}\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MaterialValidationSettingsComponent.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MaterialValidationSettingsComponent.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./MaterialValidationSettingsComponent.vue?vue&type=template&id=0abc48a4\"\nimport script from \"./MaterialValidationSettingsComponent.vue?vue&type=script&lang=ts\"\nexport * from \"./MaterialValidationSettingsComponent.vue?vue&type=script&lang=ts\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-form',{ref:\"form\",model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('v-dialog',{attrs:{\"persistent\":\"\",\"width\":\"500\"},model:{value:(_vm.open),callback:function ($$v) {_vm.open=$$v},expression:\"open\"}},[_c('v-card',[_c('v-card-title',[_c('h3',[_vm._v(\"Neues Material für Werkstoff \"+_vm._s(_vm.werkstoffName)+\" erstellen\")])]),_c('v-card-text',[_c('v-select',{attrs:{\"label\":\"Basis Material\",\"items\":_vm.materials,\"item-text\":\"displayName\",\"item-value\":\"id\",\"rules\":_vm.baseMaterialRule},on:{\"change\":function($event){return _vm.setMaterialName()}},model:{value:(_vm.selectedBaseMaterialId),callback:function ($$v) {_vm.selectedBaseMaterialId=$$v},expression:\"selectedBaseMaterialId\"}}),_c('v-text-field',{attrs:{\"label\":\"Neuer Materialname\",\"rules\":_vm.materialNameRule},on:{\"blur\":function($event){_vm.newMaterialName = _vm.newMaterialName.trim()}},model:{value:(_vm.newMaterialName),callback:function ($$v) {_vm.newMaterialName=$$v},expression:\"newMaterialName\"}}),_c('v-text-field',{attrs:{\"label\":\"Materialdicke [mm]\",\"rules\":_vm.requiredNumberBiggerZeroRule},on:{\"blur\":function($event){_vm.newMaterialName = _vm.newMaterialName.trim()}},model:{value:(_vm.newMaterialThickness),callback:function ($$v) {_vm.newMaterialThickness=$$v},expression:\"newMaterialThickness\"}})],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{on:{\"click\":function($event){return _vm.close()}}},[_vm._v(\"Abbrechen\")]),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":!_vm.valid},on:{\"click\":function($event){return _vm.createMaterial()}}},[_vm._v(\"Erstellen\")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport rules from '@/store/rules'\r\n\r\n@Component\r\nexport default class NewMaterialDialog extends Vue {\r\n @Prop()\r\n private open!: boolean;\r\n @Prop()\r\n private werkstoffName!: string;\r\n @Prop()\r\n private materials!: [];\r\n private valid: boolean = true;\r\n private selectedBaseMaterialId: number = 0;\r\n private newMaterialName: string = '';\r\n private newMaterialThickness: number = 0.0;\r\n private materialNameRule = [\r\n (v: string) => !!v || 'Angabe erforderlich',\r\n (v: string) => v.replace(/\\s/g, '').length > 0 || 'Eingabe darf nicht nur Leerzeichen sein.',\r\n (v: string) => !v || v.length <= 50 || 'Maximal 50 Zeichen erlaubt.',\r\n (v: string) => !v || this.isNoDuplicate(v) || 'Material mit diesem Namen existiert bereits'\r\n ]\r\n\tprivate requiredNumberBiggerZeroRule = rules.requiredNumberBiggerZeroRule;\r\n private baseMaterialRule = [\r\n (v: number) => !!v || 'Basismaterial muss ausgewählt werden',\r\n (v: number) => !v || v > 0 || 'Basismaterial muss ausgewählt werden',\r\n ];\r\n\r\n\r\n private mounted() {\r\n (this.$refs.form as any).validate();\r\n }\r\n\r\n private setMaterialName() {\r\n let material = this.materials.filter((m: any) => m.id === this.selectedBaseMaterialId)[0];\r\n this.newMaterialName = material['name'];\r\n }\r\n\r\n private isNoDuplicate(materialName: string): boolean {\r\n return !this.materials.some((m: any) => m.name === materialName);\r\n }\r\n\r\n private createMaterial() {\r\n let data = {\r\n baseMaterialId: this.selectedBaseMaterialId,\r\n baseWerkstoffName: this.werkstoffName,\r\n materialBeschreibung: this.newMaterialName,\r\n thickness: this.newMaterialThickness,\r\n compareMaterialId: 0,\r\n };\r\n this.$emit('create', data);\r\n }\r\n\r\n private close() {\r\n this.$emit('close');\r\n }\r\n \r\n}\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewMaterialDialog.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewMaterialDialog.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./NewMaterialDialog.vue?vue&type=template&id=c539f3de\"\nimport script from \"./NewMaterialDialog.vue?vue&type=script&lang=ts\"\nexport * from \"./NewMaterialDialog.vue?vue&type=script&lang=ts\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-form',{ref:\"form\",model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('v-dialog',{attrs:{\"persistent\":\"\",\"width\":\"900\"},model:{value:(_vm.open),callback:function ($$v) {_vm.open=$$v},expression:\"open\"}},[_c('v-card',[_c('v-card-title',[_c('h3',[_vm._v(\"Werte von Material \"+_vm._s(_vm.baseMaterialName)+\" kopieren\")])]),_c('v-card-text',[_c('v-select',{attrs:{\"label\":\"Material, dessen Werte überschrieben werden\",\"items\":_vm.materials,\"item-text\":\"displayName\",\"item-value\":\"id\",\"rules\":_vm.compareMaterialRule},on:{\"change\":function($event){return _vm.selectCompareMaterial()}},model:{value:(_vm.selectedCompareMaterialId),callback:function ($$v) {_vm.selectedCompareMaterialId=$$v},expression:\"selectedCompareMaterialId\"}}),(!_vm.loading && _vm.differencesText.length > 0)?_c('div',[_c('h3',[_vm._v(\"Das Kopieren wird zu folgenden Änderungen führen:\")]),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.differencesText)}})]):(_vm.loading)?_c('div',{staticClass:\"text-xs-center mt-5\"},[_c('v-progress-circular',{attrs:{\"indeterminate\":\"\"}})],1):_vm._e()],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{on:{\"click\":function($event){return _vm.close()}}},[_vm._v(\"Abbrechen\")]),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":!_vm.valid},on:{\"click\":function($event){return _vm.copyMaterial()}}},[_vm._v(\"Kopieren\")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport httpClient from '@/store/httpClient';\r\n\r\n@Component\r\nexport default class CompareMaterialDialog extends Vue {\r\n @Prop()\r\n private open!: boolean;\r\n @Prop()\r\n private materials!: [];\r\n @Prop()\r\n private baseMaterial!: any;\r\n @Prop()\r\n private werkstoffName!: string;\r\n private loading: boolean = false;\r\n private valid: boolean = true;\r\n private compareMaterialName: string = '';\r\n private selectedCompareMaterialId: number = 0;\r\n private differencesText: string = '';\r\n private compareMaterialRule = [\r\n (v: number) => !!v || 'Vergleichsmaterial muss ausgewählt werden',\r\n (v: number) => !v || v > 0 || 'Vergleichsmaterial muss ausgewählt werden',\r\n ];\r\n\r\n private mounted() {\r\n (this.$refs.form as any).validate();\r\n }\r\n\r\n private get baseMaterialName() {\r\n return this.baseMaterial['bezeichnung'];\r\n }\r\n\r\n private selectCompareMaterial() {\r\n let material = this.materials.filter((m: any) => m.id === this.selectedCompareMaterialId)[0];\r\n this.compareMaterialName = material['name'];\r\n this.compareMaterials();\r\n }\r\n\r\n private copyMaterial() {\r\n let data = {\r\n baseMaterialId: this.baseMaterial.rohmaterialId,\r\n baseWerkstoffName: this.werkstoffName,\r\n materialBeschreibung: '',\r\n thickness: 0,\r\n compareMaterialId: this.selectedCompareMaterialId,\r\n };\r\n this.differencesText = '';\r\n this.selectedCompareMaterialId = 0;\r\n this.$emit('copy', data);\r\n }\r\n\r\n private async compareMaterials() {\r\n try {\r\n this.loading = true;\r\n this.differencesText = '';\r\n let data = {\r\n baseMaterialId: this.baseMaterial.rohmaterialId,\r\n baseWerkstoffName: this.werkstoffName,\r\n materialBeschreibung: '',\r\n thickness: 0,\r\n compareMaterialId: this.selectedCompareMaterialId,\r\n };\r\n const response = await httpClient().post(`Material/GetDifferencesBetweenMaterials`, data);\r\n // Display differences\r\n this.differencesText = response.data.replace(/\\n/g, \"
\");\r\n this.$store.commit('setSnackbarText', 'Material verglichen.');\r\n } catch(err) {\r\n this.$store.commit('setSnackbarErrorText', 'Material konnte nicht verglichen werden.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private close() {\r\n this.differencesText = '';\r\n this.selectedCompareMaterialId = 0;\r\n this.$emit('close');\r\n }\r\n \r\n}\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CompareMaterialDialog.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CompareMaterialDialog.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./CompareMaterialDialog.vue?vue&type=template&id=4e3ad595\"\nimport script from \"./CompareMaterialDialog.vue?vue&type=script&lang=ts\"\nexport * from \"./CompareMaterialDialog.vue?vue&type=script&lang=ts\"\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","\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport MaterialValidationSettingsComponent from '../../components/MaterialValidationSettingsComponent.vue';\r\nimport NewMaterialDialog from '@/components/NewMaterialDialog.vue'\r\nimport CompareMaterialDialog from '@/components/CompareMaterialDialog.vue';\r\nimport httpClient from '../../store/httpClient';\r\n@Component({\r\n components: {\r\n MaterialValidationSettingsComponent,\r\n NewMaterialDialog,\r\n CompareMaterialDialog,\r\n },\r\n})\r\nexport default class MaterialSettings extends Vue {\r\n private editDialogOpen: boolean = false;\r\n private editRohmaterialId: number | null = null;\r\n private editRohmaterialBezeichnung: string = '';\r\n private loading: boolean = false;\r\n private werkstoffEntgratenSettingDtos: any = [];\r\n private newMaterialDialog: boolean = false;\r\n private newMaterialWerkstoffName = '';\r\n private compareMaterialWerkstoffName = '';\r\n private compareMaterialDialog: boolean = false;\r\n private compareMaterialBaseMaterial: any = {};\r\n\r\n private mounted() {\r\n this.loadSettings();\r\n }\r\n\r\n private get newMaterialMaterialList(): any[] {\r\n if (this.werkstoffEntgratenSettingDtos.length > 0) {\r\n let materials: any[] = [];\r\n this.werkstoffEntgratenSettingDtos.forEach((s: any) => {\r\n s.rohmaterialEntgratenSettings.forEach((res: any) => {\r\n let displayName = `${s.werkstoffBezeichnung} - ${res.bezeichnung}`;\r\n materials.push({ id: res.rohmaterialId, name: res.bezeichnung, displayName: displayName });\r\n })\r\n })\r\n return materials;\r\n }\r\n return [];\r\n }\r\n\r\n private async loadSettings() {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get(`Material/GetMaterialSettings`);\r\n this.werkstoffEntgratenSettingDtos = response.data;\r\n } catch {\r\n console.log('Loading settings failed.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async updateMaterial(material: any) {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().post(`Material/SaveMaterialSettings`,\r\n material);\r\n this.$store.commit('setSnackbarText', 'Änderungen erfolgreich gespeichert.');\r\n } catch(err) {\r\n this.$store.commit('setSnackbarErrorText', 'Änderungen konnten nicht gespeichert werden.');\r\n console.log('Save settings failed.', err);\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private openValidationSettings(rohmaterial: any) {\r\n this.editRohmaterialId = rohmaterial.rohmaterialId;\r\n this.editRohmaterialBezeichnung = rohmaterial.bezeichnung;\r\n this.editDialogOpen = true;\r\n }\r\n\r\n private openNewMaterialDialog(werkstoffBezeichnung: string) {\r\n this.newMaterialWerkstoffName = werkstoffBezeichnung;\r\n this.newMaterialDialog = true;\r\n }\r\n\r\n private openCompareMaterialDialog(baseMaterial: any, werkstoffBezeichnung: string) {\r\n this.compareMaterialWerkstoffName = werkstoffBezeichnung;\r\n this.compareMaterialBaseMaterial = baseMaterial;\r\n this.compareMaterialDialog = true;\r\n }\r\n\r\n private async createNewMaterial(data: any) {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().post(`Material/CreateNewMaterialOnBasisOfExisting`, data);\r\n this.newMaterialDialog = false;\r\n this.$store.commit('setSnackbarText', 'Neues Material erstellt.');\r\n // Reload materials to get the newly added one\r\n await this.loadSettings();\r\n } catch(err) {\r\n this.$store.commit('setSnackbarErrorText', 'Material konnte nicht erstellt werden.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async copyMaterial(data: any) {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().post(`Material/CopyMaterialSettings`, data);\r\n this.compareMaterialDialog = false;\r\n this.$store.commit('setSnackbarText', 'Materialeinstellungen erfolgreich kopiert.');\r\n // Reload materials to get the newly added one\r\n await this.loadSettings();\r\n } catch(err) {\r\n this.$store.commit('setSnackbarErrorText', 'Materialeinstellungen konnten nicht kopiert werden.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MaterialSettings.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MaterialSettings.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./MaterialSettings.vue?vue&type=template&id=3effc57f\"\nimport script from \"./MaterialSettings.vue?vue&type=script&lang=ts\"\nexport * from \"./MaterialSettings.vue?vue&type=script&lang=ts\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('h1',{staticClass:\"font-weight-light\"},[_vm._v(\"Transportkosten\")]),_c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"sm12\":\"\",\"md6\":\"\",\"lg4\":\"\",\"pr-3\":\"\"}},[_c('date-picker',{attrs:{\"selectedDate\":_vm.startDate,\"pastDateAllowed\":true,\"futureDateAllowed\":false,\"label\":\"Zeitraum von:\"},on:{\"update:selectedDate\":function($event){return _vm.setStartDate($event)}}})],1),_c('v-flex',{attrs:{\"sm12\":\"\",\"md6\":\"\",\"lg4\":\"\"}},[_c('date-picker',{attrs:{\"selectedDate\":_vm.endDate,\"pastDateAllowed\":true,\"futureDateAllowed\":true,\"label\":\"Zeitraum bis:\"},on:{\"update:selectedDate\":function($event){return _vm.setEndDate($event)}}})],1)],1),(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\"}}):_vm._e(),(_vm.report && _vm.report.orderCosts)?_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"sm12\":\"\"}},[_c('v-card',[_c('v-card-title',[_c('h3',[_vm._v(\"Übersicht\")])]),_c('v-card-text',[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"md6\":\"\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\tTotaler Überschuss-Betrag:\\n\\t\\t\\t\\t\\t\\t\\t\\t\"),_c('strong',[_vm._v(_vm._s(_vm._f(\"format2Digit\")(_vm.report.totalAmountBenefit)))]),_c('br'),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\tTotaler Verlust-Betrag: \"),_c('strong',[_vm._v(_vm._s(_vm._f(\"format2Digit\")(_vm.report.totalAmountLoss)))]),_c('br'),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\tBalance: \"),_c('strong',[_vm._v(_vm._s(_vm._f(\"format2Digit\")(_vm.report.totalBalance)))]),_vm._v(\" \\n\\t\\t\\t\\t\\t\\t\\t\\t\"),_c('small',[_vm._v(\"(Positiv = Mehr für Transport verlangt als bezahlt)\")])]),_c('v-flex',{attrs:{\"xs12\":\"\",\"md6\":\"\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\tTotal korrekt geschätzt:\\n\\t\\t\\t\\t\\t\\t\\t\\t\"),_c('strong',[_vm._v(_vm._s(_vm.report.orderCosts.length - _vm.filteredOrders.length))]),_c('br'),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\tTotal inkorrekt geschätzt: \"),_c('strong',[_vm._v(_vm._s(_vm.filteredOrders.length))]),_c('br'),_c('br'),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\tTransportprovider-Übersicht: (korrekt | inkorrekt)\"),_c('br'),_vm._l((_vm.groupedOrders),function(providerCount){return _c('span',{key:providerCount.provider},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(providerCount.provider)+\": \"+_vm._s(providerCount.correct)+\" | \"+_vm._s(providerCount.incorrect)),_c('br')])})],2)],1)],1)],1)],1),_c('v-flex',{attrs:{\"sm12\":\"\"}},[_c('v-data-table',{attrs:{\"items\":_vm.filteredOrders,\"headers\":_vm.headers,\"pagination\":_vm.pagination},on:{\"update:pagination\":function($event){_vm.pagination=$event}},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('tr',[_c('td',[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(props.item.blexonOrderId)+\"\\n\\t\\t\\t\\t\\t\\t\\t\")]),_c('td',[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(props.item.transportProviderName)+\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"),(\n\t\t\t\t\t\t\t\t\t\tprops.item.transportProviderName !=\n\t\t\t\t\t\t\t\t\t\tprops.item.calculatedTransportProviderName\n\t\t\t\t\t\t\t\t\t)?_c('span',[_c('br'),_vm._v(\"(geschätzt: \"+_vm._s(props.item.calculatedTransportProviderName)+\")\\n\\t\\t\\t\\t\\t\\t\\t\\t\")]):_vm._e()]),_c('td',[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm._f(\"format2Digit\")(props.item.customerCost))+\"\\n\\t\\t\\t\\t\\t\\t\\t\")]),_c('td',[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm._f(\"format2Digit\")(props.item.blexonCost))+\"\\n\\t\\t\\t\\t\\t\\t\\t\")]),_c('td',[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm._f(\"format2Digit\")(props.item.invoiceAmount))+\"\\n\\t\\t\\t\\t\\t\\t\\t\")]),_c('td',[_c('v-tooltip',{attrs:{\"top\":\"\"}},[_c('template',{slot:\"activator\"},[_c('span',[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm._f(\"format2Digit\")(props.item.costDifference))+\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\")])]),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\\tPositiv: Blexon hat vom Kunden mehr für den Transport verlangt, als dem Provider\\n\\t\\t\\t\\t\\t\\t\\t\\t\\tbezahlt werden musste.\"),_c('br'),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\\tNegativ: Blexon hat für den Transport mehr bezahlt, als dem Kunden belastet\\n\\t\\t\\t\\t\\t\\t\\t\\t\\twurde (dabei werden Margen nicht in Betracht gezogen).\\n\\t\\t\\t\\t\\t\\t\\t\\t\")],2)],1)])]}}],null,false,1648461259)})],1)],1):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from \"vue-property-decorator\";\r\nimport httpClient from \"@/store/httpClient\";\r\nimport DatePicker from \"@/components/DatePicker.vue\";\r\nimport moment from \"moment\";\r\n\r\n@Component({\r\n\tcomponents: {\r\n\t\tDatePicker,\r\n\t},\r\n})\r\nexport default class OrderedMaterialsReport extends Vue {\r\n\tprivate report: any = {};\r\n\tprivate loading: boolean = false;\r\n\t// private startDate: string = moment().format('YYYY-01-01');\r\n\tprivate endDate: string = moment().format(\"YYYY-MM-DD\");\r\n\tprivate startDate: string = moment().subtract(3, \"month\").format(\"YYYY-MM-01\");\r\n\tprivate deviationThreshold: number = 2; // in CHF/EUR. When is it considered different to expected.\r\n\tprivate pagination: any = {\r\n\t\trowsPerPage: 25,\r\n\t};\r\n\tprivate headers: any = [\r\n\t\t{\r\n\t\t\ttext: \"Blexon Order Id\",\r\n\t\t\twidth: \"20px\",\r\n\t\t\tvalue: \"blexonOrderId\",\r\n\t\t\tsortable: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Transport-Provider\",\r\n\t\t\tvalue: \"transportProviderName\",\r\n\t\t\tsortable: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Kosten Kunde\",\r\n\t\t\tvalue: \"customerCost\",\r\n\t\t\tsortable: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Kosten Blexon\",\r\n\t\t\tvalue: \"blexonCost\",\r\n\t\t\tsortable: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Rechnungsbetrag\",\r\n\t\t\tvalue: \"invoiceAmount\",\r\n\t\t\tsortable: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Differenz\",\r\n\t\t\tvalue: \"costDifference\",\r\n\t\t\tsortable: true,\r\n\t\t},\r\n\t];\r\n\r\n\tprivate mounted() {\r\n\t\tthis.loadReport();\r\n\t}\r\n\r\n\tprivate setStartDate(date: Date) {\r\n\t\tthis.startDate = moment(date).format(\"YYYY-MM-DD\");\r\n\t}\r\n\tprivate setEndDate(date: Date) {\r\n\t\tthis.endDate = moment(date).format(\"YYYY-MM-DD\");\r\n\t}\r\n\r\n\tprivate get filteredOrders() {\r\n\t\tif (!this.report || !this.report.orderCosts) return [];\r\n\t\tlet filtered = this.report.orderCosts.filter(\r\n\t\t\t(order: any) => Math.abs(order.costDifference) > this.deviationThreshold\r\n\t\t);\r\n\t\treturn filtered;\r\n\t}\r\n\r\n\tprivate get groupedOrders() {\r\n\t\tif (!this.report || !this.report.orderCosts) return [];\r\n\t\tconst grouped = this.report.orderCosts.reduce((result: any, order: any) => {\r\n\t\t\tif (!result[order.transportProviderName]) {\r\n\t\t\t\tresult[order.transportProviderName] = { correct: 0, incorrect: 0 };\r\n\t\t\t}\r\n\t\t\tif (Math.abs(order.costDifference) > this.deviationThreshold) {\r\n\t\t\t\tresult[order.transportProviderName].incorrect++;\r\n\t\t\t} else {\r\n\t\t\t\tresult[order.transportProviderName].correct++;\r\n\t\t\t}\r\n\t\t\treturn result;\r\n\t\t}, {} as Record);\r\n\r\n\t\treturn Object.entries(grouped).map(([provider, counts]: [string, any]) => ({\r\n\t\t\tprovider,\r\n\t\t\tcorrect: counts.correct,\r\n\t\t\tincorrect: counts.incorrect,\r\n\t\t}));\r\n\t}\r\n\r\n\t@Watch(\"startDate\")\r\n\t@Watch(\"endDate\")\r\n\tprivate async loadReport() {\r\n\t\ttry {\r\n\t\t\tthis.loading = true;\r\n\t\t\tconst response = await httpClient().get(\r\n\t\t\t\t`Report/GetTransportCostReport?from=${this.startDate}&to=${this.endDate}`\r\n\t\t\t);\r\n\t\t\tthis.report = response.data;\r\n\t\t} catch (err) {\r\n\t\t\tconsole.error(\"Loading transport cost report failed.\");\r\n\t\t\tconsole.error(err);\r\n\t\t\tthis.$store.commit(\"setSnackbarErrorText\", \"Fehler beim Laden der Reports. Siehe Konsole.\");\r\n\t\t} finally {\r\n\t\t\tthis.loading = false;\r\n\t\t}\r\n\t}\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TransportCost.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TransportCost.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./TransportCost.vue?vue&type=template&id=d7ee5ad6\"\nimport script from \"./TransportCost.vue?vue&type=script&lang=ts\"\nexport * from \"./TransportCost.vue?vue&type=script&lang=ts\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[(_vm.loading)?_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"size\":\"36\",\"color\":\"accent\"}}):(_vm.templatesLoaded)?_c('v-tabs',{attrs:{\"slider-color\":\"accent\"},model:{value:(_vm.formTab),callback:function ($$v) {_vm.formTab=$$v},expression:\"formTab\"}},[_vm._l((_vm.designFormTemplateTypes),function(type){return _c('v-tab',{key:type.id,attrs:{\"ripple\":\"\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(type.name)+\"\\n\\t\\t\\t\")])}),_c('v-tab-item',{key:9},[_c('form-template-data-table',{attrs:{\"templates\":_vm.durchzugTemplates},on:{\"editTemplate\":_vm.editTemplate,\"deleteTemplate\":_vm.deleteTemplate}}),_c('v-btn',{on:{\"click\":function($event){return _vm.addTemplate(9)}}},[_vm._v(\"Neue Durchzug Vorlage\")])],1),_c('v-tab-item',{key:1},[_c('form-template-data-table',{attrs:{\"templates\":_vm.gewindeTemplates},on:{\"editTemplate\":_vm.editTemplate,\"deleteTemplate\":_vm.deleteTemplate}}),_c('v-btn',{on:{\"click\":function($event){return _vm.addTemplate(1)}}},[_vm._v(\"Neue Gewinde Vorlage\")])],1),_c('v-tab-item',{key:17},[_c('form-template-data-table',{attrs:{\"templates\":_vm.senkungsTemplates},on:{\"editTemplate\":_vm.editTemplate,\"deleteTemplate\":_vm.deleteTemplate}}),_c('v-btn',{on:{\"click\":function($event){return _vm.addTemplate(17)}}},[_vm._v(\"Neue Senkungs Vorlage\")])],1)],2):_c('p',[_vm._v(\"\\n\\t\\t\\tEs sind keine Vorlagen vorhanden oder sie konnten nicht geladen werden. Siehe Log.\\n\\t\\t\")]),_c('v-form',{model:{value:(_vm.isValid),callback:function ($$v) {_vm.isValid=$$v},expression:\"isValid\"}},[_c('v-dialog',{attrs:{\"persistent\":\"\",\"width\":\"500\"},model:{value:(_vm.editDialog),callback:function ($$v) {_vm.editDialog=$$v},expression:\"editDialog\"}},[_c('v-card',[_c('v-card-title',[_c('h3',[_vm._v(\"Vorlage #\"+_vm._s(_vm.currentEditTemplate.formId)+\" bearbeiten\")])]),_c('v-card-text',[_c('v-text-field',{attrs:{\"hint\":\"Diese Name ist für Blexon und die Bezeichnungen im Helpdesk\",\"label\":\"Name\",\"rules\":_vm.requiredStringMax50Rule},on:{\"blur\":function($event){_vm.currentEditTemplate.name = _vm.currentEditTemplate.name.trim()}},model:{value:(_vm.currentEditTemplate.name),callback:function ($$v) {_vm.$set(_vm.currentEditTemplate, \"name\", $$v)},expression:\"currentEditTemplate.name\"}}),_c('v-text-field',{attrs:{\"hint\":\"Die Beschreibung ist für den Kunden und die Anzeige im CAD\",\"label\":\"Beschreibung\",\"rules\":_vm.requiredRule},on:{\"blur\":function($event){_vm.currentEditTemplate.description = _vm.currentEditTemplate.description.trim()}},model:{value:(_vm.currentEditTemplate.description),callback:function ($$v) {_vm.$set(_vm.currentEditTemplate, \"description\", $$v)},expression:\"currentEditTemplate.description\"}}),_c('v-text-field',{attrs:{\"hint\":\"Der Text ist der Text im scDoc für den Fertiger. Der Text wird je nach Fertiger übersetzt\",\"label\":\"Text\",\"rules\":_vm.requiredStringMax10Rule},on:{\"blur\":function($event){_vm.currentEditTemplate.text = _vm.currentEditTemplate.text.trim()}},model:{value:(_vm.currentEditTemplate.text),callback:function ($$v) {_vm.$set(_vm.currentEditTemplate, \"text\", $$v)},expression:\"currentEditTemplate.text\"}}),_c('strong',[_vm._v(\"Parameter:\")]),_vm._l((_vm.currentEditTemplate.parameters),function(param){return _c('div',{key:param.name},[(param.boostName === 'Senkungsseite' || param.boostName === 'Seite')?_c('div',[_c('v-combobox',{attrs:{\"items\":_vm.senkungsSeiteTypes,\"label\":param.boostName},model:{value:(param.value),callback:function ($$v) {_vm.$set(param, \"value\", $$v)},expression:\"param.value\"}})],1):_c('v-text-field',{attrs:{\"label\":param.name + ` (${param.boostName})`,\"type\":\"number\",\"rules\":_vm.requiredMax1DecimalNumberRule},on:{\"blur\":function($event){param.value = param.value.trim()}},model:{value:(param.value),callback:function ($$v) {_vm.$set(param, \"value\", $$v)},expression:\"param.value\"}})],1)})],2),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{on:{\"click\":function($event){_vm.editDialog = false}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\tAbbrechen\\n\\t\\t\\t\\t\\t\\t\")]),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"loading\":_vm.saving,\"disabled\":!_vm.isValid},on:{\"click\":function($event){return _vm.saveTemplate()}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\tSpeichern\\n\\t\\t\\t\\t\\t\\t\")])],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { DesignFormParameterDto } from \"./designFormParameterDto\";\r\n\r\n export class FormVorlageDto {\r\n public formId: number = 0;\r\n public name: string = '';\r\n public description: string = '';\r\n public text: string = '';\r\n public stanzwerkzeugId: string = '';\r\n public designFormTemplate: number = 0;\r\n public parameters: Array = new Array();\r\n public isActive: boolean = false;\r\n}","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-data-table',{attrs:{\"hide-actions\":\"\",\"items\":_vm.templates,\"headers\":_vm.headers},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('tr',{on:{\"click\":function($event){return _vm.editTemplate(props.item.formId)}}},[_c('td',[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(props.item.formId)+\"\\n\\t\\t\\t\\t\")]),_c('td',[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(props.item.stanzwerkzeugId)+\"\\n\\t\\t\\t\\t\")]),_c('td',[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(props.item.name)+\"\\n\\t\\t\\t\\t\")]),_c('td',[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(props.item.description)+\"\\n\\t\\t\\t\\t\")]),_c('td',[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(props.item.text)+\"\\n\\t\\t\\t\\t\")]),_c('td',_vm._l((props.item.parameters),function(param){return _c('div',{key:param.name},[(param.boostName !== 'Senkungsseite')?_c('span',[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(param.name)+\": \"+_vm._s(param.value)+\"\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\")]):_vm._e()])}),0),_c('td',[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.getVerformungsrichtung(props.item))+\"\\n\\t\\t\\t\\t\")]),_c('td',[_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.deleteTemplate(props.item.formId)}}},[_c('v-icon',[_vm._v(\"delete\")])],1)],1)])]}}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport { FormVorlageDto } from '@/dtos/formVorlageDto';\r\n\r\n@Component\r\nexport default class FormTemplateDataTable extends Vue {\r\n @Prop()\r\n private templates!: FormVorlageDto[];\r\n\tprivate headers: any = [\r\n\t\t{\r\n\t\t\ttext: 'Id',\r\n\t\t\twidth: '20px',\r\n\t\t\tsortable: false,\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Tool Id',\r\n\t\t\twidth: '20px',\r\n\t\t\tsortable: false,\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Name',\r\n\t\t\tsortable: false,\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Beschreibung',\r\n\t\t\tsortable: false,\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Text',\r\n\t\t\tsortable: false,\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Parameter',\r\n\t\t\tsortable: false,\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Seite',\r\n\t\t\tsortable: false,\r\n\t\t},\r\n\t\t// Controls\r\n\t\t{\r\n\t\t\ttext: '',\r\n\t\t\tsortable: false,\r\n\t\t}\r\n\t];\r\n\r\n\tprivate editTemplate(id: number) {\r\n\t\tthis.$emit('editTemplate', id);\r\n\t}\r\n\r\n\tprivate deleteTemplate(id: number) {\r\n\t\tthis.$emit('deleteTemplate', id);\r\n\t}\r\n\r\n\tprivate getVerformungsrichtung(template: FormVorlageDto){\r\n\t\tif (template.parameters.filter(p => p.boostName === 'Senkungsseite' || p.boostName === 'Seite').length > 0) {\r\n\t\t\treturn template.parameters.filter(p => p.boostName === 'Senkungsseite' || p.boostName === 'Seite')[0].value;\r\n\t\t} else {\r\n\t\t\treturn \"Neutral\";\r\n\t\t}\r\n\t}\r\n}\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTemplateDataTable.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTemplateDataTable.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FormTemplateDataTable.vue?vue&type=template&id=32d521f0\"\nimport script from \"./FormTemplateDataTable.vue?vue&type=script&lang=ts\"\nexport * from \"./FormTemplateDataTable.vue?vue&type=script&lang=ts\"\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","\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport httpClient from '../../store/httpClient';\r\nimport { FormVorlageDto } from '@/dtos/formVorlageDto';\r\nimport FormTemplateDataTable from '@/components/FormTemplateDataTable.vue'\r\nimport rules from '@/store/rules'\r\n\r\n@Component({\r\n components: {\r\n\t\tFormTemplateDataTable\r\n },\r\n})\r\nexport default class FormTemplateSettings extends Vue {\r\n private loading: boolean = false;\r\n private saving: boolean = false;\r\n private templates: Array = new Array();\r\n\tprivate editDialog: boolean = false;\r\n\tprivate currentEditTemplate: FormVorlageDto = new FormVorlageDto();\r\n\tprivate isValid: boolean = false;\t\r\n\tprivate designFormTemplateTypes: any = [\r\n\t\t{ name: 'Gewindedurchzüge', id: 9 },\r\n\t\t{ name: 'Gewinde', id: 1 },\r\n\t\t{ name: 'Senkungen', id: 17 },\r\n\t];\r\n\tprivate senkungsSeiteTypes: any = [\r\n\t\t\"Oberseite\",\r\n\t\t\"Unterseite\",\r\n\t];\r\n\tprivate requiredRule = rules.requiredRule;\r\n\tprivate requiredStringMax50Rule = rules.requiredStringMax50Rule;\r\n\tprivate requiredStringMax10Rule = rules.requiredStringMax10Rule;\r\n\tprivate requiredMax1DecimalNumberRule: any = [\r\n (v: number) => !!v.toString() || 'Angabe erforderlich',\r\n (v: number) => !isNaN(v) || 'Muss eine Zahl sein.',\r\n (v: number) => this.countDecimals(v) <= 1 || 'Darf max. 1 Dezimalstelle haben.'\r\n ];\r\n\r\n private mounted() {\r\n\t\tthis.loadTemplates();\r\n }\r\n\r\n\tprivate get gewindeTemplates() {\r\n\t\treturn this.templates.filter((t: FormVorlageDto) => t.designFormTemplate == 1);\r\n\t}\r\n\tprivate get senkungsTemplates() {\r\n\t\treturn this.templates.filter((t: FormVorlageDto) => t.designFormTemplate == 17);\r\n\t}\r\n\tprivate get durchzugTemplates() {\r\n\t\treturn this.templates.filter((t: FormVorlageDto) => t.designFormTemplate == 9);\r\n\t}\r\n\r\n\tprivate get formTab() {\r\n\t\tlet tab = localStorage.getItem('formTab');\r\n\t\tif (tab != null) {\r\n\t\t\treturn parseInt(tab);\r\n\t\t}\r\n\t\treturn 1;\r\n\t}\r\n\r\n\tprivate set formTab(newTab: number) {\r\n\t\tlocalStorage.setItem('formTab', newTab.toString());\r\n\t}\r\n\r\n\tprivate get templatesLoaded() {\r\n\t\treturn this.templates.length > 0;\r\n\t}\r\n\r\n\tprivate async loadTemplates() {\r\n\t\ttry {\r\n\t\t\tthis.loading = true;\r\n\t\t\tconst response = await httpClient().get('Material/GetFormVorlagen');\r\n\t\t\tthis.templates = response.data;\r\n\t\t} catch(err) {\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Laden der Formvorlagen fehlgeschlagen.');\r\n\t\t\tconsole.log(err);\r\n\t\t} finally {\r\n\t\t\tthis.loading = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprivate async saveTemplate() {\r\n\t\tif (!this.isValid || this.saving) {\r\n\t\t\tconsole.log(\"Form is not valid.\");\r\n\t\t\treturn;\r\n\t\t}\r\n\t\ttry {\r\n\t\t\tthis.saving = true;\r\n\t\t\tawait httpClient().post('Material/SaveFormVorlage', this.currentEditTemplate);\r\n\t\t\tthis.replaceNewTemplate();\r\n\t\t\tthis.editDialog = false;\r\n\t\t\tthis.$store.commit('setSnackbarText', 'Vorlage erfolgreich gespeichert.');\r\n\t\t} catch(err) {\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Vorlage konnte nicht gespeichert werden.');\r\n\t\t\tconsole.log(err);\r\n\t\t} finally {\r\n\t\t\tthis.saving = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprivate async addTemplate(type: number) {\r\n\t\ttry {\r\n\t\t\tthis.saving = true;\r\n\t\t\tawait httpClient().post('Material/SaveFormVorlage', {\r\n\t\t\t\tformId: 0,\r\n\t\t\t\tname: 'Neue Vorlage',\r\n\t\t\t\tdescription: 'neu',\r\n\t\t\t\ttext: 'neu',\r\n\t\t\t\tparameters: [],\r\n\t\t\t\tdesignFormTemplate: type,\r\n\t\t\t\tisActive: true,\r\n\t\t\t});\r\n\t\t\tthis.$store.commit('setSnackbarText', 'Vorlage erfolgreich gespeichert.');\r\n\t\t\tlocation.reload();\r\n\t\t} catch(err) {\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Vorlage konnte nicht gespeichert werden.');\r\n\t\t\tconsole.log(err);\r\n\t\t} finally {\r\n\t\t\tthis.saving = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprivate editTemplate(id: number) {\r\n\t\tthis.currentEditTemplate = \r\n\t\t\tJSON.parse(JSON.stringify(this.templates.filter((t: FormVorlageDto) => t.formId === id)[0]));\r\n\t\tthis.editDialog = true;\r\n\t}\r\n\t\r\n\tprivate async deleteTemplate(id: number) {\r\n\t\ttry {\r\n\t\t\tthis.saving = true;\r\n\t\t\tawait httpClient().post(`Material/DeleteFormVorlage?formId=${id}`);\r\n\t\t\tthis.deleteLocalTemplate(id);\r\n\t\t\tthis.$store.commit('setSnackbarText', 'Vorlage gelöscht.');\r\n\t\t} catch(err) {\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Vorlage konnte nicht gelöscht werden.');\r\n\t\t\tconsole.log(err);\r\n\t\t} finally {\r\n\t\t\tthis.saving = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprivate replaceNewTemplate() {\r\n\t\tlet index = this.templates.indexOf(\r\n\t\t\tthis.templates.filter((t: FormVorlageDto) => t.formId === this.currentEditTemplate.formId)[0]);\r\n\t\tthis.templates.splice(index, 1, JSON.parse(JSON.stringify(this.currentEditTemplate)));\r\n\t}\r\n\r\n\tprivate deleteLocalTemplate(formId: number) {\r\n\t\tlet index = this.templates.indexOf(\r\n\t\t\tthis.templates.filter((t: FormVorlageDto) => t.formId === formId)[0]);\r\n\t\tthis.templates.splice(index, 1);\r\n\t}\r\n\r\n\tprivate countDecimals(value: any) {\r\n\t\tlet n = parseFloat(value);\r\n\t\tif (n === null || n === undefined || n === NaN) {\r\n\t\t\treturn 0;\r\n\t\t}\r\n\t\tif (Math.floor(n) === n) {\r\n\t\t\treturn 0;\r\n\t\t}\r\n\t\tlet decimals = n.toString().split(\".\");\r\n\t\tif (decimals.length > 1) {\r\n\t\t\treturn decimals[1].length;\r\n\t\t} else {\r\n\t\t\treturn 0;\r\n\t\t}\r\n\t}\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTemplateSettings.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTemplateSettings.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FormTemplateSettings.vue?vue&type=template&id=5a81c0bb\"\nimport script from \"./FormTemplateSettings.vue?vue&type=script&lang=ts\"\nexport * from \"./FormTemplateSettings.vue?vue&type=script&lang=ts\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\"}}):_vm._e(),_c('canvas',{ref:\"diagramCanvas\"})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport httpClient from '@/store/httpClient';\r\nconst Chart = require('chart.js');\r\n\r\n@Component\r\nexport default class ComplainRateReport extends Vue {\r\n private chart: any = null;\r\n private data: any = [];\r\n private loading: boolean = false;\r\n private mounted()\r\n {\r\n this.loadReport();\r\n }\r\n\r\n private async loadReport()\r\n {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get(`System/GetCamProcessUsageData`);\r\n this.data = response.data;\r\n this.updateDiagram();\r\n } catch(err) {\r\n console.error('Loading usage data failed.');\r\n console.error(err);\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Fehler beim Laden der Daten. Siehe Konsole.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private getDatasets() {\r\n const sets = []\r\n sets.push(this.data.map((d:any) => d.timestamp))\r\n sets.push(this.data.map((d:any) => d.numberOfRunningProcesses))\r\n sets.push(this.data.map((d:any) => d.numberOfProcessesInUse))\r\n sets.push(this.data.map((d:any) => d.numberOfExecutingProcesses))\r\n sets.push(this.data.map((d:any) => d.numberOfPendingCommands))\r\n\r\n console.log(sets[0])\r\n return [{\r\n label: 'Gestartete Prozesse',\r\n data: sets[1],\r\n borderColor: 'rgba(0, 204, 102, 0.1)',\r\n backgroundColor: 'rgba(0, 204, 102, 0.1)'\r\n }, {\r\n label: 'Aktuell zugeteilte Prozesse',\r\n data: sets[2],\r\n borderColor: 'rgba(255, 0, , 0.1)',\r\n fill: false\r\n }, {\r\n label: 'Anzahl Prozesse die aktuell arbeiten',\r\n data: sets[3],\r\n borderColor: 'rgba(235, 187, 32, 1)',\r\n fill: false\r\n }, {\r\n label: 'Wartende Berechnungen',\r\n data: sets[4],\r\n borderColor: 'rgba(30, 60, 240, 1)',\r\n fill: false\r\n }]\r\n }\r\n\r\n private updateDiagram() {\r\n \t// Destroy the chart if one already exists.\r\n\t\tif (this.chart != null) {\r\n\t\t\tthis.chart.destroy();\r\n\t\t}\r\n\r\n const ctx = (this.$refs.diagramCanvas as any).getContext('2d');\r\n this.chart = new Chart(ctx, {\r\n type: 'line',\r\n data: {\r\n labels: this.data.map((d:any) => d.timestamp),\r\n datasets: this.getDatasets(),\r\n \r\n },\r\n options: {\r\n elements: {\r\n line: {\r\n tension: 0 // disables bezier curves\r\n }\r\n },\r\n animation: {\r\n duration: 0 // general animation time\r\n },\r\n hover: {\r\n animationDuration: 0 // duration of animations when hovering an item\r\n },\r\n responsiveAnimationDuration: 0 // animation duration after a resize\r\n }\r\n });\r\n this.chart.update();\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CamMonitor.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CamMonitor.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./CamMonitor.vue?vue&type=template&id=45a3a18d\"\nimport script from \"./CamMonitor.vue?vue&type=script&lang=ts\"\nexport * from \"./CamMonitor.vue?vue&type=script&lang=ts\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-tabs',{attrs:{\"slider-color\":\"accent\"},model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},[_c('v-tab',{key:\"incomingOrders\",attrs:{\"ripple\":\"\"}},[_vm._v(\"Aufträge Eingang\")]),_c('v-tab',{key:\"ordersProgress\",attrs:{\"ripple\":\"\"}},[_vm._v(\"Aufträge Verlauf\")]),_c('v-tab',{key:\"ordersEvaluation\",attrs:{\"ripple\":\"\"}},[_vm._v(\"Aufträge Auswertung\")]),_c('v-spacer'),_c('router-link',{attrs:{\"to\":\"/report/complainrate\"}},[_vm._v(\"Fehlerrate\")]),_vm._v(\" | \\n \"),_c('router-link',{attrs:{\"to\":\"/report/deliveryDelay\"}},[_vm._v(\"Lieferverzögerung\")]),_vm._v(\" | \\n \"),_c('router-link',{attrs:{\"to\":\"/report/costDistribution\"}},[_vm._v(\"Kostenverteilung\")]),_vm._v(\" | \\n \"),_c('router-link',{attrs:{\"to\":\"/report/orderVolume\"}},[_vm._v(\"Auftragsvolumen\")]),_vm._v(\" | \\n \"),_c('router-link',{attrs:{\"to\":\"/report/registration\"}},[_vm._v(\"Registrierungen\")]),_vm._v(\" |\\n \"),_c('router-link',{attrs:{\"to\":\"/report/uploadedArticles\"}},[_vm._v(\"Uploads\")]),_vm._v(\" |\\n \"),_c('router-link',{attrs:{\"to\":\"/report/orderVolumePerManufacturer\"}},[_vm._v(\"Umsatz nach Fertiger\")]),_vm._v(\" | \\n \"),_c('router-link',{attrs:{\"to\":\"/report/orderedMaterials\"}},[_vm._v(\"Bestellte Materialien\")]),_vm._v(\" | \\n \"),_c('router-link',{attrs:{\"to\":\"/report/transportCost\"}},[_vm._v(\"Transportkosten\")]),_c('v-tabs-items',{model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},[_c('v-tab-item',{key:\"incomingOrders\"},[_c('report-incoming-orders',{attrs:{\"tab\":_vm.tab}})],1),_c('v-tab-item',{key:\"ordersProgress\"},[_c('report-orders-progress',{attrs:{\"tab\":_vm.tab}})],1),_c('v-tab-item',{key:\"ordersEvaluation\"},[_c('report-orders-evaluation',{attrs:{\"tab\":_vm.tab}})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"sm12\":\"\",\"md6\":\"\",\"lg4\":\"\",\"pr-3\":\"\"}},[_c('date-picker',{attrs:{\"selectedDate\":_vm.startDate,\"pastDateAllowed\":true,\"futureDateAllowed\":false,\"label\":\"Zeitraum von:\"},on:{\"update:selectedDate\":function($event){return _vm.setStartDate($event)}}})],1),_c('v-flex',{attrs:{\"sm12\":\"\",\"md6\":\"\",\"lg4\":\"\"}},[_c('date-picker',{attrs:{\"selectedDate\":_vm.endDate,\"pastDateAllowed\":true,\"futureDateAllowed\":true,\"label\":\"Zeitraum bis:\"},on:{\"update:selectedDate\":function($event){return _vm.setEndDate($event)}}})],1),_c('v-flex',{attrs:{\"sm12\":\"\",\"lg4\":\"\"}},[_c('v-btn',{attrs:{\"disabled\":_vm.loading,\"title\":\"Aufträge von Heute anzeigen.\"},on:{\"click\":function($event){_vm.setToday(); _vm.loadOrderReports()}}},[_vm._v(\"\\n Heute\\n \")]),_c('v-btn',{attrs:{\"disabled\":_vm.loading,\"title\":\"Aufträge von diesem Monat anzeigen.\"},on:{\"click\":function($event){_vm.setThisMonth(); _vm.loadOrderReports()}}},[_vm._v(\"\\n Dieser Monat\\n \")]),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":_vm.loading,\"title\":\"Aufträge welche im gewählten Zeitraum eingegangen sind, anzeigen.\"},on:{\"click\":function($event){return _vm.loadOrderReports()}}},[_vm._v(\"\\n Anzeigen\\n \")])],1)],1),_c('v-divider')],1),(_vm.loading)?_c('div',[_c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[_c('v-layout',{staticClass:\"mt-3\",attrs:{\"row\":\"\",\"justify-center\":\"\"}},[_c('v-flex',{attrs:{\"shrink\":\"\"}},[(_vm.loading)?_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"color\":\"accent\"}}):_vm._e()],1)],1)],1)],1):_c('div',[_c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[_c('v-layout',{staticClass:\"my-3\",attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"lg3\":\"\"}},[_c('h3',[_vm._v(\"Zusammenfassung:\")]),_c('span',{staticClass:\"summaryLeft\"},[_vm._v(\"Anzahl Portalaufträge:\")]),_c('span',{staticClass:\"summaryRight\"},[_vm._v(_vm._s(_vm.allOrders.length))]),_c('br'),_c('span',{staticClass:\"summaryLeft\"},[_vm._v(\"Eingang Portal [CHF]:\")]),_c('span',{staticClass:\"summaryRight\"},[_vm._v(_vm._s(_vm._f(\"format2DigitWithSeparators\")(_vm.totalPortal)))]),_c('br'),_c('span',{staticClass:\"summaryLeft\"},[_vm._v(\"⊝ / Tag:\")]),_c('span',{staticClass:\"summaryRight\"},[_vm._v(_vm._s(_vm._f(\"format2DigitWithSeparators\")(_vm.averagePortalPerDay)))]),_c('br'),_c('span',{staticClass:\"summaryLeft\"},[_vm._v(\"⊝ / Bestellung:\")]),_c('span',{staticClass:\"summaryRight\"},[_vm._v(_vm._s(_vm._f(\"format2DigitWithSeparators\")(_vm.averagePortalPerOrder)))]),_c('br'),_c('span',{staticClass:\"summaryLeft\"},[_vm._v(\"Anzahl bestellende Kunden:\")]),_c('span',{staticClass:\"summaryRight\"},[_vm._v(_vm._s(_vm.distinctPortalCustomerCount))]),_c('br'),_c('br'),_c('span',{staticClass:\"summaryLeft\"},[_vm._v(\"Anzahl Mandate:\")]),_c('span',{staticClass:\"summaryRight\"},[_vm._v(_vm._s(_vm.allMandates.length))]),_c('br'),_c('span',{staticClass:\"summaryLeft\"},[_vm._v(\"Eingang Mandate in CHF:\")]),_c('span',{staticClass:\"summaryRight\"},[_vm._v(_vm._s(_vm._f(\"format2DigitWithSeparators\")(_vm.getTotalMandate('CHF'))))]),_c('br'),_c('span',{staticClass:\"summaryLeft\"},[_vm._v(\"Eingang Mandate in EUR:\")]),_c('span',{staticClass:\"summaryRight\"},[_vm._v(_vm._s(_vm._f(\"format2DigitWithSeparators\")(_vm.getTotalMandate('EUR'))))]),_c('br'),_c('span',{staticClass:\"summaryLeft\"},[_vm._v(\"Anzahl bestellende Kunden:\")]),_c('span',{staticClass:\"summaryRight\"},[_vm._v(_vm._s(_vm.distinctMandateCustomerCount))]),_c('br'),_c('br'),_c('span',{staticClass:\"summaryLeft\"},[_vm._v(\"Eingang Total [CHF]:\")]),_c('span',{staticClass:\"summaryRight\"},[_vm._v(_vm._s(_vm._f(\"format2DigitWithSeparators\")(_vm.totalOverall)))])]),_c('v-flex',{attrs:{\"lg3\":\"\"}},[_c('region-totals',{attrs:{\"countryCode\":\"CH\",\"orders\":_vm.allOrders,\"currency\":\"CHF\"}})],1),_c('v-flex',{attrs:{\"lg3\":\"\"}},[_c('region-totals',{attrs:{\"countryCode\":\"DE\",\"orders\":_vm.allOrders,\"currency\":\"EUR\"}})],1),_c('v-flex',{attrs:{\"lg3\":\"\"}},[_c('region-totals',{attrs:{\"countryCode\":\"AT\",\"orders\":_vm.allOrders,\"currency\":\"EUR\"}})],1)],1)],1),_c('v-tabs',{attrs:{\"slider-color\":\"accent\"},model:{value:(_vm.groupTab),callback:function ($$v) {_vm.groupTab=$$v},expression:\"groupTab\"}},[_c('v-tab',{key:\"customers\",attrs:{\"ripple\":\"\"}},[_vm._v(\"Nach Kunden\")]),_c('v-tab',{key:\"regions\",attrs:{\"ripple\":\"\"}},[_vm._v(\"Nach Region\")]),_c('v-tabs-items',{model:{value:(_vm.groupTab),callback:function ($$v) {_vm.groupTab=$$v},expression:\"groupTab\"}},[_c('v-tab-item',{key:\"customers\"},[_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"headers\":_vm.customerHeaders,\"items\":_vm.customerGroupReports,\"pagination\":_vm.customerPagination,\"must-sort\":\"\",\"hide-actions\":\"\"},on:{\"update:pagination\":function($event){_vm.customerPagination=$event}},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('td',[_vm._v(_vm._s(props.item.customerId))]),_c('td',[_vm._v(_vm._s(props.item.isMandate ? '(Mandat) ' : '')+_vm._s(props.item.name))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format2DigitWithSeparators\")(props.item.total)))]),_c('td',[_vm._v(_vm._s(props.item.currency))])]}}])})],1),_c('v-tab-item',{key:\"regions\"},[_c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[_c('v-layout',{staticClass:\"mt-2\",attrs:{\"row\":\"\",\"wrap\":\"\"}},_vm._l((_vm.regionGroupReports),function(group){return _c('v-flex',{key:group.regionId,attrs:{\"xs6\":\"\"}},[_c('v-card',[_c('v-card-text',[_c('h4',[_vm._v(_vm._s(group.name))]),_vm._v(\"\\n Aufträge (inkl. Mandate): \"+_vm._s(group.orderCount)),_c('br'),_vm._v(\"\\n Eingang: \"+_vm._s(_vm._f(\"format2DigitWithSeparators\")(group.total))+\" \"+_vm._s(group.currency)+\"\\n \")])],1)],1)}),1)],1)],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('h3',[_vm._v(_vm._s(_vm.title))]),_c('span',{staticClass:\"summaryLeft\"},[_vm._v(\"Anzahl Portalaufträge:\")]),_c('span',{staticClass:\"summaryRight\"},[_vm._v(_vm._s(_vm.orderAmount))]),_c('br'),_c('span',{staticClass:\"summaryLeft\"},[_vm._v(\"Eingang Portal [\"+_vm._s(_vm.currency)+\"]:\")]),_c('span',{staticClass:\"summaryRight\"},[_vm._v(_vm._s(_vm._f(\"format2DigitWithSeparators\")(_vm.totalPortal)))]),_c('br'),_c('span',{staticClass:\"summaryLeft\"},[_vm._v(\"Anzahl bestellende Kunden:\")]),_c('span',{staticClass:\"summaryRight\"},[_vm._v(_vm._s(_vm.distinctCustomerCount))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop } from \"vue-property-decorator\";\r\nimport { OrderIntakeDto } from \"@/dtos/orderIntakeDto\";\r\n\r\n@Component({\r\n\tcomponents: {},\r\n})\r\nexport default class RegionTotals extends Vue {\r\n\t@Prop()\r\n\tprivate countryCode!: string;\r\n @Prop()\r\n private currency!: string;\r\n\t@Prop()\r\n\tprivate orders!: OrderIntakeDto[];\r\n\r\n\tprivate get regionNameFromCountryCode(): string {\r\n\t\treturn this.$store.getters.regionNameFromCountryCode(this.countryCode);\r\n\t}\r\n\r\n private get title(): string {\r\n switch (this.countryCode) {\r\n case \"CH\":\r\n return \"Schweiz\";\r\n case \"DE\":\r\n return \"Deutschland\";\r\n case \"AT\":\r\n return \"Österreich\";\r\n default:\r\n return \"N/A\";\r\n }\r\n }\r\n\r\n\tprivate get regionOrders(): OrderIntakeDto[] {\r\n\t\treturn this.orders.filter((o: OrderIntakeDto) => o.region == this.regionNameFromCountryCode);\r\n\t}\r\n\r\n\tprivate get orderAmount(): number {\r\n\t\treturn this.regionOrders.length;\r\n\t}\r\n\r\n\tprivate get totalPortal() {\r\n\t\tlet totalMoney = 0;\r\n\t\tfor (const order of this.regionOrders) {\r\n\t\t\ttotalMoney += Math.round((order.totalAmount + Number.EPSILON) * 100) / 100;\r\n\t\t}\r\n\t\treturn totalMoney;\r\n\t}\r\n\r\n\tprivate get distinctCustomerCount() {\r\n\t\tconst distinctIds = [...new Set(this.regionOrders.map(o => o.customerId))];\r\n\t\treturn distinctIds.length;\r\n\t}\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RegionTotals.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RegionTotals.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./RegionTotals.vue?vue&type=template&id=df62de9e\"\nimport script from \"./RegionTotals.vue?vue&type=script&lang=ts\"\nexport * from \"./RegionTotals.vue?vue&type=script&lang=ts\"\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","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport moment from 'moment';\r\nimport httpClient from '../../store/httpClient';\r\nimport { OrderIntakeDto } from '@/dtos/orderIntakeDto'\r\nimport DatePicker from '@/components/DatePicker.vue';\r\nimport RegionTotals from '../Accounting/RegionTotals.vue';\r\n\r\n@Component({\r\n components: {\r\n DatePicker,\r\n RegionTotals,\r\n }\r\n})\r\nexport default class ReportIncomingOrders extends Vue {\r\n @Prop()\r\n private tab!: any;\r\n private groupTab: any = 0;\r\n private loading: boolean = false;\r\n private startDate: string = moment().subtract(1, 'months').format('YYYY-MM-1');\r\n private endDate: string = moment(moment().format('YYYY-MM-1')).add(1, 'months').subtract(1, 'days').format('YYYY-MM-DD');\r\n private orderIntakes: OrderIntakeDto[] = [];\r\n\tprivate customerHeaders: any = [\r\n\t\t{\r\n\t\t\ttext: 'Id',\r\n\t\t\talign: 'left',\r\n\t\t\tsortable: true,\r\n\t\t\tvalue: 'customerId'\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Name',\r\n\t\t\talign: 'left',\r\n\t\t\tsortable: true,\r\n\t\t\tvalue: 'name'\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Betrag',\r\n\t\t\talign: 'right',\r\n\t\t\tsortable: true,\r\n\t\t\tvalue: 'total'\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Währung',\r\n\t\t\talign: 'left',\r\n\t\t\tsortable: true,\r\n\t\t\tvalue: 'currency'\r\n\t\t}\r\n\t];\r\n\tprivate customerPagination: any = {\r\n\t\tsortBy: 'total',\r\n\t\tdescending: true,\r\n\t\trowsPerPage: -1,\r\n\t};\r\n\r\n private mounted() {\r\n if (!this.loading && this.orderIntakes.length <= 0) {\r\n this.loadOrderReports();\r\n }\r\n }\r\n\r\n @Watch('tab')\r\n private async loadReports() {\r\n if (this.tab === 0 && !this.loading && this.orderIntakes.length <= 0) {\r\n await this.loadOrderReports();\r\n }\r\n }\r\n\r\n private async loadOrderReports() {\r\n if (this.loading) {\r\n return;\r\n }\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get(`Report/GetOrderIntake?from=${this.startDate}&to=${this.endDate}`);\r\n this.orderIntakes = response.data.orderIntakeDtos;\r\n } catch(err) {\r\n console.log('Load report failed.');\r\n console.log(err);\r\n this.$store.commit('setSnackbarErrorText', 'Fehler beim Laden der Reports. Siehe Konsole.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private getRegionNameFromCountryCode(countryCode: string): string {\r\n return this.$store.getters.regionNameFromCountryCode(countryCode);\r\n }\r\n\r\n private get allOrders() {\r\n return this.orderIntakes.filter((o: OrderIntakeDto) => !o.isMandate);\r\n }\r\n private get allMandates() {\r\n return this.orderIntakes.filter((o: OrderIntakeDto) => o.isMandate);\r\n }\r\n\r\n\r\n private get totalOverall() {\r\n return this.getTotalPortal('CH') + this.getTotalMandate('CHF') +\r\n (this.getTotalPortal('DE') / this.euroRate) + (this.getTotalPortal('AT') / this.euroRate) +\r\n (this.getTotalMandate('EUR') / this.euroRate);\r\n }\r\n\r\n private get totalPortal() {\r\n return this.getTotalPortal('CH') +\r\n (this.getTotalPortal('DE') / this.euroRate) + (this.getTotalPortal('AT') / this.euroRate) +\r\n (this.getTotalMandate('EUR') / this.euroRate);\r\n }\r\n\r\n private getTotalPortal(countryCode: string) {\r\n const orders = this.allOrders\r\n .filter((o: OrderIntakeDto) => o.region == this.getRegionNameFromCountryCode(countryCode))\r\n let totalMoney = 0;\r\n for (const order of orders) {\r\n totalMoney += Math.round((order.totalAmount + Number.EPSILON) * 100) / 100;\r\n }\r\n return totalMoney;\r\n }\r\n private getTotalPortalByCurrency(currency: string) {\r\n const moneys = this.allOrders.filter((o: OrderIntakeDto) => o.currency === currency);\r\n let totalMoney = 0;\r\n for (const money of moneys) {\r\n totalMoney += Math.round((money.totalAmount + Number.EPSILON) * 100) / 100;\r\n }\r\n return totalMoney;\r\n }\r\n private getTotalMandate(currency: string) {\r\n const moneys = this.allMandates.filter((o: OrderIntakeDto) => o.currency === currency);\r\n let totalMoney = 0;\r\n for (const money of moneys) {\r\n totalMoney += Math.round((money.totalAmount + Number.EPSILON) * 100) / 100;\r\n }\r\n return totalMoney;\r\n }\r\n\r\n private get distinctPortalCustomerCount() {\r\n\t\tconst distinctIds = [...new Set(this.allOrders.map(o => o.customerId))];\r\n\t\treturn distinctIds.length;\r\n\t}\r\n private get distinctMandateCustomerCount() {\r\n\t\tconst distinctIds = [...new Set(this.allMandates.map(o => o.customerId))];\r\n\t\treturn distinctIds.length;\r\n\t}\r\n\r\n\tprivate get averagePortalPerDay() {\r\n\t\tlet dateDiff = Math.abs((moment(this.endDate).diff(moment(this.startDate), 'days')) + 1);\r\n\t\treturn dateDiff > 1 ? this.totalPortal / dateDiff : this.totalPortal;\r\n\t}\r\n\tprivate get averagePortalPerOrder() {\r\n\t\treturn this.allOrders.length > 1 ? this.totalPortal / this.allOrders.length : this.totalPortal;\r\n\t}\r\n\r\n private get customerGroupReports() {\r\n\t\tlet groupedOrders = this.groupByKey(this.orderIntakes, 'customerId');\r\n\t\tlet customerSummaries = [];\r\n\t\tfor (var key in groupedOrders) {\r\n\t\t\tcustomerSummaries.push({\r\n\t\t\t\tcustomerId: key,\r\n\t\t\t\tname: `${groupedOrders[key][0].companyName}, ${groupedOrders[key][0].givenName} ${groupedOrders[key][0].lastName}`,\r\n\t\t\t\ttotal: groupedOrders[key].reduce((a: any, b: any) => {\r\n\t\t\t\t\treturn a + b['totalAmount']\r\n\t\t\t\t}, 0),\r\n\t\t\t\tcurrency: groupedOrders[key][0].currency,\r\n isMandate: groupedOrders[key][0].isMandate,\r\n\t\t\t});\t\t\r\n\t\t}\r\n return customerSummaries.sort((a: any, b: any) => b.total - a.total);\r\n }\r\n\r\n private get regionGroupReports() {\r\n\t\tlet groupedOrders = this.groupByKey(this.orderIntakes, 'regionId');\r\n\t\tlet regionSummaries = [];\r\n\t\tfor (var key in groupedOrders) {\r\n\t\t\tregionSummaries.push({\r\n\t\t\t\tregionId: key,\r\n\t\t\t\tname: groupedOrders[key][0].region,\r\n orderCount: groupedOrders[key].length,\r\n\t\t\t\ttotal: groupedOrders[key].reduce((a: any, b: any) => {\r\n\t\t\t\t\treturn a + b['totalAmount']\r\n\t\t\t\t}, 0),\r\n\t\t\t\tcurrency: groupedOrders[key][0].currency,\r\n\t\t\t});\t\t\r\n\t\t}\r\n return regionSummaries.sort((a: any, b: any) => b.total - a.total);\r\n }\r\n\r\n private get euroRate() {\r\n let firstEUROrder = this.orderIntakes.filter((o: OrderIntakeDto) => o.currency === 'EUR')[0];\r\n return (firstEUROrder === undefined) ? 0.9 : firstEUROrder.currencyRate;\r\n }\r\n\r\n\tprivate groupByKey(data: any, key: any) {\r\n\t\treturn data.reduce((storage: any, item: any) => {\r\n\t\t\tlet group = item[key];\r\n\t\t\tstorage[group] = storage[group] || [];\r\n\t\t\tstorage[group].push(item);\r\n\t\t\treturn storage;\r\n\t\t}, {});\r\n\t}\r\n\r\n private setStartDate(date: Date) {\r\n this.startDate = moment(date).format('YYYY-MM-DD');\r\n }\r\n private setEndDate(date: Date) {\r\n this.endDate = moment(date).format('YYYY-MM-DD');\r\n }\r\n\r\n private setToday() {\r\n this.startDate = moment().format('YYYY-MM-DD');\r\n this.endDate = moment().format('YYYY-MM-DD');\r\n }\r\n private setThisMonth() {\r\n this.startDate = moment().format('YYYY-MM-01');\r\n this.endDate = moment(moment().format('YYYY-MM-01')).add(1, 'months').subtract(1, 'days').format('YYYY-MM-DD');\r\n }\r\n\r\n}\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportIncomingOrders.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportIncomingOrders.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ReportIncomingOrders.vue?vue&type=template&id=3a3fd7f9\"\nimport script from \"./ReportIncomingOrders.vue?vue&type=script&lang=ts\"\nexport * from \"./ReportIncomingOrders.vue?vue&type=script&lang=ts\"\nimport style0 from \"./ReportIncomingOrders.vue?vue&type=style&index=0&id=3a3fd7f9&prod&lang=css\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',{staticClass:\"pa-1\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[(_vm.loading || _vm.weeklyOrders.length <= 0)?_c('v-layout',{staticClass:\"mt-3\",attrs:{\"row\":\"\",\"justify-center\":\"\"}},[(_vm.loading)?_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"color\":\"accent\"}})],1):_c('v-flex',{attrs:{\"shrink\":\"\"}},[_vm._v(\"\\n\\t\\t\\tKann momentan nicht angezeigt werden.\\n\\t\\t\")])],1):_vm._e(),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.loading && _vm.weeklyOrders.length > 0),expression:\"!loading && weeklyOrders.length > 0\"}]},[_c('v-layout',{staticClass:\"mt-2\",attrs:{\"row\":\"\"}},[_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-combobox',{attrs:{\"items\":_vm.selectableYears,\"label\":\"Bezugsjahr\"},model:{value:(_vm.startYear),callback:function ($$v) {_vm.startYear=$$v},expression:\"startYear\"}})],1)],1),_c('v-layout',{staticClass:\"mt-2\",attrs:{\"row\":\"\"}},[_c('v-flex',[_c('canvas',{ref:\"diagramCanvas\"})])],1),(_vm.weeklyOrders.length > 0)?_c('v-layout',{staticClass:\"mt-2\",attrs:{\"row\":\"\"}},[_c('v-flex',[_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"headers\":_vm.tableHeaders,\"items\":_vm.referenceYearData,\"pagination\":_vm.pagination,\"loading\":_vm.loading,\"hide-actions\":\"\"},on:{\"update:pagination\":function($event){_vm.pagination=$event}},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('td',[_vm._v(_vm._s(props.item.weekNumber))]),_c('td',[_vm._v(_vm._s(_vm.getFormattedDate(props.item.startDate)))]),_c('td',[_vm._v(_vm._s(_vm.getFormattedDate(props.item.endDate)))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format2DigitWithSeparators\")(props.item.amountTotal)))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format2DigitWithSeparators\")(_vm.getCompareAmount(props.index))))])]}}],null,false,250362799)})],1)],1):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport moment from 'moment';\r\nimport httpClient from '@/store/httpClient';\r\nconst Chart = require('chart.js');\r\n\r\n@Component\r\nexport default class ReportOrdersProgress extends Vue {\r\n\t@Prop()\r\n private tab!: any;\r\n private loading: boolean = false;\r\n\tprivate startYear: number = moment().year();\r\n private weeklyOrders: any[] = [];\t\r\n\tprivate selectableYears: number[] = [];\r\n\tprivate chart: any = null;\r\n\tprivate pagination: any = {\r\n\t\tsortBy: 'weekNumber',\r\n\t\tdescending: false,\r\n\t\trowsPerPage: -1,\r\n\t};\r\n\r\n private mounted() {\r\n\t\tfor (let i = (new Date().getFullYear()); i >= 2012; i--) {\r\n\t\t\tthis.selectableYears.push(i);\r\n\t\t}\r\n }\r\n\r\n\t@Watch('tab')\r\n private async loadReports() {\r\n if (this.tab === 1 && !this.loading && this.weeklyOrders.length <= 0) {\r\n await this.loadOrderReports();\r\n }\r\n }\r\n\t@Watch('startYear')\r\n\tprivate async onStartYearChange() {\r\n if (!this.loading) {\r\n await this.loadOrderReports();\r\n }\r\n\t}\r\n\r\n\tprivate get tableHeaders() {\r\n\t\treturn [\r\n\t\t\t{\r\n\t\t\t\ttext: 'KW',\r\n\t\t\t\talign: 'left',\r\n\t\t\t\tsortable: false,\r\n\t\t\t\tvalue: 'weekNumber'\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttext: 'Zeitraum Start',\r\n\t\t\t\talign: 'left',\r\n\t\t\t\tsortable: false,\r\n\t\t\t\tvalue: 'startDate'\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttext: 'Zeitraum Ende',\r\n\t\t\t\talign: 'left',\r\n\t\t\t\tsortable: false,\r\n\t\t\t\tvalue: 'endDate'\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttext: this.startYear,\r\n\t\t\t\talign: 'right',\r\n\t\t\t\tsortable: false,\r\n\t\t\t\tvalue: 'amountRef'\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttext: this.startYear - 1,\r\n\t\t\t\talign: 'right',\r\n\t\t\t\tsortable: false,\r\n\t\t\t\tvalue: 'amountComp'\r\n\t\t\t}\r\n\t\t];\r\n\t}\r\n\r\n\tprivate get referenceYearData() {\r\n\t\treturn this.weeklyOrders.filter((o: any) => moment(o.startDate).year() == this.startYear)\r\n\t}\r\n\tprivate get compareYearData() {\r\n\t\treturn this.weeklyOrders.filter((o: any) => moment(o.startDate).year() == this.startYear - 1)\r\n\t}\r\n\r\n\tprivate getFormattedDate(date: Date) {\r\n\t\treturn moment(date).format('DD.MM.YYYY');\r\n\t}\r\n\tprivate getCompareAmount(index: number) {\r\n\t\tif (typeof this.compareYearData[index] === 'undefined') {\r\n\t\t\treturn 0;\r\n\t\t} else {\r\n\t\t\treturn this.compareYearData[index].amountTotal\r\n\t\t}\r\n\t}\r\n\r\n private async loadOrderReports() {\r\n if (this.loading) {\r\n return;\r\n }\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get(`Report/GetWeeklyOrderTotalsForYear?year=${this.startYear}`);\r\n this.weeklyOrders = response.data;\r\n\t\t\tif (this.weeklyOrders.length > 0) {\r\n\t\t\t\tthis.updateDiagram();\r\n\t\t\t}\r\n } catch(err) {\r\n console.log('Loading evaluation reports failed.');\r\n console.log(err);\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Fehler beim Laden der Reports. Siehe Konsole.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n\tprivate updateDiagram() {\r\n const labels = this.referenceYearData.map((f: any) => \r\n\t\t\t`KW${f.weekNumber} - ${moment(f.startDate).format('DD.MM.YYYY')}`);\r\n const referenceValues = this.referenceYearData.map((f: any) => f.amountTotal);\r\n const compareValues = this.compareYearData.map((f: any) => f.amountTotal);\r\n\r\n\t\t// Destroy the chart if one already exists.\r\n\t\tif (this.chart != null) {\r\n\t\t\tthis.chart.destroy();\r\n\t\t}\r\n\r\n const ctx = (this.$refs.diagramCanvas as any).getContext('2d');\r\n this.chart = new Chart(ctx, {\r\n // The type of chart we want to create\r\n type: 'line',\r\n // The data for our dataset\r\n data: {\r\n labels,\r\n datasets: [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tlabel: this.startYear, // Label shown above the graph\r\n\t\t\t\t\t\tborderColor: '#EFBB20', // Color of the line\r\n\t\t\t\t\t\tpointHitRadius: 2, // Size of the area where the point reacts to the mouse\r\n\t\t\t\t\t\tfill: true, // Filling (shadow) under the line\r\n\t\t\t\t\t\ttension: 0.3, // How \"smooth\" the line is. 0 for straight lines\r\n\t\t\t\t\t\tdata: referenceValues,\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tlabel: this.startYear - 1,\r\n\t\t\t\t\t\tborderColor: '#917216',\r\n\t\t\t\t\t\tpointHitRadius: 2,\r\n\t\t\t\t\t\tfill: true,\r\n\t\t\t\t\t\ttension: 0.3,\r\n\t\t\t\t\t\tdata: compareValues,\r\n\t\t\t\t\t},\r\n\t\t\t\t],\r\n },\r\n // Configuration options go here\r\n options: {\r\n\t\t\t\ttooltips: {\r\n callbacks: {\r\n label: function(tooltipItem: any, data: any): any {\r\n var money = tooltipItem.yLabel\r\n return `CHF: ${money.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \"'\")}`;\r\n }\r\n }\r\n },\r\n },\r\n });\r\n this.chart.update();\r\n }\r\n}\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportOrdersProgress.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportOrdersProgress.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ReportOrdersProgress.vue?vue&type=template&id=5e3ba8dd\"\nimport script from \"./ReportOrdersProgress.vue?vue&type=script&lang=ts\"\nexport * from \"./ReportOrdersProgress.vue?vue&type=script&lang=ts\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',{staticClass:\"pa-1\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[(_vm.loading)?_c('v-layout',{staticClass:\"mt-3\",attrs:{\"row\":\"\",\"justify-center\":\"\"}},[_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"color\":\"accent\"}})],1)],1):_vm._e(),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.loading),expression:\"!loading\"}]},[_c('v-layout',{staticClass:\"mt-2\",attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md3\":\"\",\"lg2\":\"\"}},[_c('date-picker',{attrs:{\"selectedDate\":_vm.startDate,\"pastDateAllowed\":true,\"futureDateAllowed\":true,\"label\":\"Bezugszeitpunkt:\"},on:{\"update:selectedDate\":function($event){return _vm.setStartDate($event)}}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\",\"lg3\":\"\"}},[_c('v-btn',{attrs:{\"disabled\":_vm.loading,\"title\":\"Aufträge von Heute anzeigen.\"},on:{\"click\":function($event){return _vm.setToday();}}},[_vm._v(\"\\n Heute\\n \")]),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":_vm.loading,\"title\":\"Aufträge welche im gewählten Zeitraum eingegangen sind, anzeigen.\"},on:{\"click\":function($event){return _vm.loadOrderReports()}}},[_vm._v(\"\\n Anzeigen\\n \")])],1)],1),_c('v-layout',{staticClass:\"mt-2\",attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"md12\":\"\",\"lg4\":\"\"}},[_c('v-radio-group',{attrs:{\"column\":false},model:{value:(_vm.timeRangeGroup),callback:function ($$v) {_vm.timeRangeGroup=$$v},expression:\"timeRangeGroup\"}},_vm._l((_vm.timeRangeTypes),function(type){return _c('v-radio',{key:type.id,attrs:{\"label\":type.text,\"value\":type.id}})}),1)],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"md6\":\"\",\"lg4\":\"\"}},[_c('v-combobox',{attrs:{\"items\":_vm.comparisonTypes,\"item-text\":\"text\",\"label\":\"Vergleichszeitraum\"},model:{value:(_vm.selectedComparisonType),callback:function ($$v) {_vm.selectedComparisonType=$$v},expression:\"selectedComparisonType\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"md6\":\"\",\"lg4\":\"\"}},[_c('v-combobox',{attrs:{\"items\":_vm.numberOfComparisons,\"label\":\"Anzahl Vergleiche\"},model:{value:(_vm.selectedNumberOfComparisons),callback:function ($$v) {_vm.selectedNumberOfComparisons=$$v},expression:\"selectedNumberOfComparisons\"}})],1)],1),_c('v-layout',{staticClass:\"mt-2\",attrs:{\"row\":\"\"}},[_c('v-flex',[_c('canvas',{ref:\"diagramCanvas\"})])],1),(_vm.orderGroups.length > 0)?_c('v-layout',{staticClass:\"mt-2\",attrs:{\"row\":\"\"}},[_c('v-flex',[_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"headers\":_vm.headers,\"items\":_vm.orderGroups,\"pagination\":_vm.pagination,\"loading\":_vm.loading,\"hide-actions\":\"\"},on:{\"update:pagination\":function($event){_vm.pagination=$event}},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('td',[_vm._v(_vm._s(_vm.getFormattedDate(props.item.startDate))+\" - \"+_vm._s(_vm.getFormattedDate(props.item.endDate)))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format2DigitWithSeparators\")(props.item.amountCHF)))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format2DigitWithSeparators\")(props.item.amountDE)))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format2DigitWithSeparators\")(props.item.amountAT)))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm.getPercentage(props.item.amountDE, props.item.amountTotal)))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm.getPercentage(props.item.amountAT, props.item.amountTotal)))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format2DigitWithSeparators\")(props.item.amountTotal)))])]}}],null,false,1004573491)})],1)],1):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport moment from 'moment';\r\nimport httpClient from '@/store/httpClient';\r\nimport DatePicker from '@/components/DatePicker.vue';\r\nconst Chart = require('chart.js');\r\n\r\n@Component({\r\n components: {\r\n DatePicker,\r\n }\r\n})\r\nexport default class ReportOrdersProgress extends Vue {\r\n\t@Prop()\r\n private tab!: any;\r\n private loading: boolean = false;\r\n private startDate: string = moment().format('YYYY-MM-DD');\r\n private orderGroups: any[] = [];\t\r\n\tprivate selectableYears: number[] = [];\r\n\tprivate chart: any = null;\r\n\tprivate headers: any = [\r\n\t\t{\r\n\t\t\ttext: 'Zeitraum',\r\n\t\t\talign: 'left',\r\n\t\t\tsortable: false,\r\n\t\t\tvalue: 'dateRange'\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Auftragseingang CH [in CHF]',\r\n\t\t\talign: 'right',\r\n\t\t\tsortable: false,\r\n\t\t\tvalue: 'amountCHF'\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Auftragseingang DE [in CHF]',\r\n\t\t\talign: 'right',\r\n\t\t\tsortable: false,\r\n\t\t\tvalue: 'amountDE'\r\n\t\t},\r\n {\r\n\t\t\ttext: 'Auftragseingang AT [in CHF]',\r\n\t\t\talign: 'right',\r\n\t\t\tsortable: false,\r\n\t\t\tvalue: 'amountAT'\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: '% DE Eingang',\r\n\t\t\talign: 'right',\r\n\t\t\tsortable: false,\r\n\t\t\tvalue: 'percentageDE'\r\n\t\t},\r\n {\r\n\t\t\ttext: '% AT Eingang',\r\n\t\t\talign: 'right',\r\n\t\t\tsortable: false,\r\n\t\t\tvalue: 'percentageAT'\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: 'Auftragseingang Total [in CHF]',\r\n\t\t\talign: 'right',\r\n\t\t\tsortable: false,\r\n\t\t\tvalue: 'amountTotal'\r\n\t\t},\r\n\t];\r\n\tprivate pagination: any = {\r\n\t\tsortBy: 'weekNumber',\r\n\t\tdescending: false,\r\n\t\trowsPerPage: -1,\r\n\t};\r\n private selectedComparisonType: any = {};\r\n private comparisonTypes: any[] = [ \r\n {\r\n id: 0,\r\n value: 'previousRange',\r\n text: 'Vorgängiger Zeitraum'\r\n },\r\n {\r\n id: 1,\r\n value: 'previousYear',\r\n text: 'Vorige Jahre',\r\n }\r\n ];\r\n private selectedNumberOfComparisons: number = 1;\r\n private numberOfComparisons: number[] = [ 1, 2, 3, 4, 5 ];\r\n private timeRangeGroup: number = 0;\r\n private timeRangeTypes: any[] = [\r\n {\r\n id: 0,\r\n value: 'year',\r\n text: 'Jahr',\r\n },\r\n {\r\n id: 1,\r\n value: 'halfYear',\r\n text: 'Halbjahr',\r\n },\r\n {\r\n id: 2,\r\n value: 'quarter',\r\n text: 'Quartal',\r\n },\r\n {\r\n id: 3,\r\n value: 'month',\r\n text: 'Monat',\r\n },\r\n ];\r\n\r\n private mounted() {\r\n this.selectedComparisonType = this.comparisonTypes[0];\r\n }\r\n\r\n @Watch('selectedComparisonType')\r\n private onComparisonTypeChange() {\r\n this.setNumberOfcomparisonSelection();\r\n }\r\n @Watch('timeRangeGroup')\r\n private onTimeRangeChange() {\r\n this.setNumberOfcomparisonSelection();\r\n }\r\n\r\n\tprivate getFormattedDate(date: Date) {\r\n\t\treturn moment(date).format('DD.MM.YYYY');\r\n\t}\r\n private setToday() {\r\n this.startDate = moment().format('YYYY-MM-DD');\r\n }\r\n\r\n private async loadOrderReports() {\r\n if (this.loading) {\r\n return;\r\n }\r\n try {\r\n this.loading = true;\r\n const response = await httpClient()\r\n .get(`Report/GetOrderReportPackages?date=${this.startDate}&timeFrame=${this.timeRangeGroup}` \r\n + `&comparisonType=${this.selectedComparisonType.id}&numberOfComparisons=${this.selectedNumberOfComparisons}`);\r\n this.orderGroups = response.data;\r\n\t\t\tif (this.orderGroups.length > 0) {\r\n\t\t\t\tthis.updateDiagram();\r\n\t\t\t}\r\n } catch(err) {\r\n console.log('Loading weekly reports failed.');\r\n console.log(err);\r\n this.$store.commit('setSnackbarErrorText', 'Fehler beim Laden der Reports. Siehe Konsole.');\r\n\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n\tprivate updateDiagram() {\r\n let labels = this.orderGroups.map((o: any) => \r\n `${this.getFormattedDate(o.startDate)} - ${this.getFormattedDate(o.endDate)}`);\r\n \r\n // Destroy the chart if one already exists.\r\n if (this.chart != null) {\r\n this.chart.destroy();\r\n }\r\n\r\n const ctx = (this.$refs.diagramCanvas as any).getContext('2d');\r\n this.chart = new Chart(ctx, {\r\n // The type of chart we want to create\r\n type: 'bar',\r\n // The data for our dataset\r\n data: {\r\n labels,\r\n datasets: [\r\n // {\r\n // label: 'Total', // Label shown in the legend.\r\n // data: this.orderGroups.map((f: any) => f.amountTotal), // Main value of the bars\r\n // backgroundColor: 'rgba(239, 187, 32, 0.2)', // Color of the bar filling\r\n // borderColor: 'rgb(239, 187, 32)', // Color of the border\r\n // borderWidth: 1, // size of border\r\n // },\r\n {\r\n label: 'Schweiz', // Label shown in the legend.\r\n data: this.orderGroups.map((f: any) => f.amountCHF), // Main value of the bars\r\n backgroundColor: 'rgba(239, 187, 32, 0.2)', // Color of the bar filling\r\n borderColor: 'rgb(239, 187, 32)', // Color of the border\r\n borderWidth: 1, // size of border\r\n stack: 'total',\r\n },\r\n {\r\n label: 'Deutschland', // Label shown in the legend.\r\n data: this.orderGroups.map((f: any) => f.amountDE), // Main value of the bars\r\n backgroundColor: 'rgba(191, 146, 13, 0.2)', // Color of the bar filling\r\n borderColor: 'rgb(191, 146, 13)', // Color of the border\r\n borderWidth: 1, // size of border\r\n stack: 'total',\r\n },\r\n {\r\n label: 'Österreich', // Label shown in the legend.\r\n data: this.orderGroups.map((f: any) => f.amountAT), // Main value of the bars\r\n backgroundColor: 'rgba(203, 109, 16, 0.2)', // Color of the bar filling\r\n borderColor: 'rgb(203, 109, 16)', // Color of the border\r\n borderWidth: 1, // size of border\r\n stack: 'total',\r\n },\r\n ],\r\n },\r\n // Configuration options go here\r\n options: {\r\n legend: {\r\n display: true,\r\n },\r\n scales: {\r\n yAxes: [{\r\n ticks: {\r\n min: 0,\r\n },\r\n stacked: true,\r\n }],\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: function(tooltipItem: any, data: any): any {\r\n var money = tooltipItem.yLabel;\r\n return `${money.toFixed(2).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \"'\")} [in CHF]`;\r\n }\r\n }\r\n },\r\n },\r\n });\r\n this.chart.update();\r\n }\r\n\r\n private setNumberOfcomparisonSelection() {\r\n let tempSelection = this.selectedNumberOfComparisons;\r\n let newNumber = 0;\r\n if (this.selectedComparisonType.value === 'previousYear') {\r\n newNumber = moment().year() - 2012; // If \"Vorjahrsvergleich\" always just until 2012\r\n } else {\r\n switch (this.timeRangeGroup) {\r\n case 0: // year\r\n newNumber = moment().year() - 2012;\r\n break;\r\n case 1: // halfyear\r\n newNumber = (moment().year() - 2012) * 2;\r\n break;\r\n case 2: // quarter\r\n newNumber = (moment().year() - 2011) * 4;\r\n break;\r\n case 3: // month\r\n newNumber = (moment().year() - 2011) * 12;\r\n break;\r\n }\r\n }\r\n this.numberOfComparisons = [];\r\n for (let i = 1; i <= newNumber; i++) {\r\n this.numberOfComparisons[i-1] = i;\r\n }\r\n if (this.numberOfComparisons.includes(tempSelection)) {\r\n this.selectedNumberOfComparisons = tempSelection;\r\n } else {\r\n this.selectedNumberOfComparisons = 1;\r\n }\r\n }\r\n\r\n private getPercentage(part: number, total: number) {\r\n return (part / total * 100).toFixed(2);\r\n }\r\n\r\n private setStartDate(date: Date) {\r\n this.startDate = moment(date).format('YYYY-MM-DD');\r\n }\r\n\r\n}\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportOrdersEvaluation.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportOrdersEvaluation.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ReportOrdersEvaluation.vue?vue&type=template&id=74d9b64c\"\nimport script from \"./ReportOrdersEvaluation.vue?vue&type=script&lang=ts\"\nexport * from \"./ReportOrdersEvaluation.vue?vue&type=script&lang=ts\"\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","\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport ReportIncomingOrders from '@/views/Reporting/ReportIncomingOrders.vue'\r\nimport ReportOrdersProgress from '@/views/Reporting/ReportOrdersProgress.vue'\r\nimport ReportOrdersEvaluation from '@/views/Reporting/ReportOrdersEvaluation.vue'\r\n\r\n@Component({\r\n components: {\r\n ReportIncomingOrders,\r\n ReportOrdersProgress,\r\n ReportOrdersEvaluation,\r\n },\r\n})\r\nexport default class Reports extends Vue {\r\n private tab: any = 0;\r\n\r\n}\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Reports.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Reports.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Reports.vue?vue&type=template&id=9d39b646\"\nimport script from \"./Reports.vue?vue&type=script&lang=ts\"\nexport * from \"./Reports.vue?vue&type=script&lang=ts\"\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","\r\n\r\nexport enum ErpCustomerOrderState {\r\n Unvollstaendig = 10,\r\n Gueltig = 20,\r\n Freigegeben = 30,\r\n Fertig = 40,\r\n Geliefert = 50,\r\n Fakturiert = 60,\r\n Abgeschlossen = 70,\r\n Storniert = 80,\r\n TerminUeberschritten = 90,\r\n Gestoert = 100,\r\n InStornierung = 900,\r\n}\r\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Suche\",\"prepend-icon\":\"search\",\"hint\":\"Suche nach Kundennummer, Auftragsnummer, Lieferscheinnummer, Firma, Vorname, Name\"},on:{\"keypress\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.onEnterClickInSearchterms()}},model:{value:(_vm.orderSearchTerm),callback:function ($$v) {_vm.orderSearchTerm=$$v},expression:\"orderSearchTerm\"}})],1),_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Artikel\",\"prepend-icon\":\"search\",\"hint\":\"Suche nach Auftrag mit diesem Artikel (Id oder Name).\"},on:{\"keypress\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.onEnterClickInSearchterms()}},model:{value:(_vm.articleSearchTerm),callback:function ($$v) {_vm.articleSearchTerm=$$v},expression:\"articleSearchTerm\"}})],1),_c('v-flex',[_c('v-combobox',{attrs:{\"items\":_vm.orderStates,\"label\":\"Status\",\"item-text\":\"name\",\"chips\":\"\",\"multiple\":\"\",\"small-chips\":\"\",\"clearable\":\"\"},on:{\"click:clear\":() => {\n _vm.filterStates = [];\n _vm.loadOrders(true);\n },\"blur\":function($event){return _vm.loadOrders(true)}},model:{value:(_vm.filterStates),callback:function ($$v) {_vm.filterStates=$$v},expression:\"filterStates\"}})],1),_c('v-flex',[_c('v-combobox',{attrs:{\"items\":_vm.fertigers,\"label\":\"Fertiger\",\"item-text\":\"name\",\"item-value\":\"id\",\"chips\":\"\",\"multiple\":\"\",\"small-chips\":\"\",\"clearable\":\"\"},on:{\"click:clear\":() => {\n _vm.filterFertiger = [];\n _vm.loadOrders(true);\n },\"blur\":function($event){return _vm.loadOrders(true)}},model:{value:(_vm.filterFertiger),callback:function ($$v) {_vm.filterFertiger=$$v},expression:\"filterFertiger\"}})],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-btn',{staticClass:\"blexon-button\",staticStyle:{\"margin-top\":\"20px\"},attrs:{\"icon\":\"\",\"small\":\"\"},on:{\"click\":function($event){_vm.showAnalyseFilters=!_vm.showAnalyseFilters}}},[_c('v-icon',[_vm._v(\"help\")])],1)],1)],1),(_vm.showAnalyseFilters)?_c('v-layout',[_c('v-flex',[_c('div',{staticStyle:{\"border\":\"1px solid lightgrey\",\"padding\":\"5px\"}},[_c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Gesamtgewicht > ... kg\"},model:{value:(_vm.totalWeightGreaterThen),callback:function ($$v) {_vm.totalWeightGreaterThen=$$v},expression:\"totalWeightGreaterThen\"}})],1),_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Einzelposition > ... kg\"},model:{value:(_vm.weightOfASinglePositionGreaterThen),callback:function ($$v) {_vm.weightOfASinglePositionGreaterThen=$$v},expression:\"weightOfASinglePositionGreaterThen\"}})],1),_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Menge einer Position > ... Stk\"},model:{value:(_vm.quantityOfASinglePositionGreaterThen),callback:function ($$v) {_vm.quantityOfASinglePositionGreaterThen=$$v},expression:\"quantityOfASinglePositionGreaterThen\"}})],1),_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Anzahl Positionen < ...\"},model:{value:(_vm.numberOfPositionsLessThen),callback:function ($$v) {_vm.numberOfPositionsLessThen=$$v},expression:\"numberOfPositionsLessThen\"}})],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-btn',{staticClass:\"blexon-button\",staticStyle:{\"margin-top\":\"20px\"},attrs:{\"icon\":\"\",\"small\":\"\"},on:{\"click\":function($event){return _vm.loadOrders(true)}}},[_c('v-icon',[_vm._v(\"refresh\")])],1)],1)],1)],1)],1)])],1):_vm._e()],1),_c('span',{staticStyle:{\"display\":\"flex\",\"font-size\":\"0.9em\"}},[_vm._v(\"\\n Anzahl: \"+_vm._s(_vm.orders.length)+\"\\n \")]),_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"headers\":_vm.headers,\"loading\":_vm.loading,\"items\":_vm.orders,\"item-key\":\"orderId\",\"hide-actions\":true,\"custom-sort\":_vm.customSort},scopedSlots:_vm._u([{key:\"headers\",fn:function(props){return [_c('tr',_vm._l((props.headers),function(header){return _c('th',{key:header.text,class:[\n 'column',\n header.sortable === true ? 'sortable' : '',\n _vm.orderSorting.sortDescending ? 'desc' : 'asc', \n header.value === _vm.orderSorting.sortByColumn ? 'active' : '',\n header.align === 'left' ? 'text-xs-left': 'text-xs-right'\n ],on:{\"click\":function($event){header.sortable ? _vm.changeSort(header.value, header.sortable) : null}}},[(header.value === _vm.orderSorting.sortByColumn)?_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\"arrow_upward\")]):_vm._e(),_vm._v(\"\\n \"+_vm._s(header.text)+\"\\n \")],1)}),0)]}},{key:\"items\",fn:function(props){return [_c('tr',{on:{\"click\":function($event){props.expanded = !props.expanded}}},[_c('td',[_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',[_c('v-icon',{style:({ color: _vm.getStateColor(props.item) }),attrs:{\"title\":_vm.getStateText(props.item)}},[_vm._v(\"\\n \"+_vm._s(_vm.getStateIcon(props.item))+\"\\n \")])],1),(props.item.invoiceHasBeenBlocked)?_c('v-flex',[_c('v-icon',{attrs:{\"title\":\"Rechnung wird nicht erzeugt\",\"color\":\"error\"}},[_vm._v(\"\\n lock\\n \")])],1):_vm._e(),(_vm.hasCancellationRequest(props.item.orderId))?_c('v-flex',[_c('v-icon',{attrs:{\"title\":\"Stornierungsantrag erfasst\",\"color\":\"error\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.onCancellationIconClick(props.item.orderId)}}},[_vm._v(\"\\n cancel\\n \")])],1):_vm._e()],1)],1),_c('td',[_vm._v(_vm._s(props.item.customerId))]),_c('td',[_c('span',{staticClass:\"link\",on:{\"click\":function($event){$event.stopPropagation();return _vm.goToCustomer(props.item.customerId)}}},[_vm._v(\"\\n \"+_vm._s(props.item.customerName)+\"\\n \")])]),_c('td',[_c('span',{class:{ersatzOrder: props.item.replacementOrderFor > 0},staticStyle:{\"display\":\"block\"}},[_vm._v(\"\\n \"+_vm._s(props.item.orderId)+\"\\n \")]),(props.item.kommissionsNummer != '')?_c('span',{staticStyle:{\"display\":\"block\"}},[_vm._v(\"\\n \"+_vm._s(props.item.kommissionsNummer)+\"\\n \")]):_vm._e(),(props.item.replacementOrderFor > 0)?_c('span',{staticStyle:{\"display\":\"block\"}},[_vm._v(\"\\n Ersatz für: \"+_vm._s(props.item.replacementOrderFor)+\"\\n \")]):_vm._e()]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format3Digit\")(_vm.getOrderTotalWeight(props.item)))+\"kg\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"formatDate\")(props.item.receivedAt)))]),_c('td',{staticStyle:{\"max-width\":\"150px\"}},[_c('date-picker',{attrs:{\"selectedDate\":props.item.dueDate,\"pastDateAllowed\":false,\"futureDateAllowed\":true},on:{\"update:selectedDate\":function($event){return _vm.updateDueDate(props.item, $event)}}})],1),_c('td',{staticStyle:{\"max-width\":\"250px\"}},[_c('v-select',{attrs:{\"items\":_vm.fertigers,\"item-text\":\"name\",\"item-value\":\"id\"},on:{\"change\":function($event){return _vm.changeFertiger(props.item)}},scopedSlots:_vm._u([{key:\"item\",fn:function(data){return [_c('span',{style:(data.item.active ? 'color:black' : 'color:lightgrey')},[_vm._v(\"\\n \"+_vm._s(data.item.name)+\"\\n \")])]}}],null,true),model:{value:(props.item.fertigerId),callback:function ($$v) {_vm.$set(props.item, \"fertigerId\", $$v)},expression:\"props.item.fertigerId\"}})],1),_c('td',{staticClass:\"text-xs-right\",on:{\"click\":function($event){$event.stopPropagation();}}},[_c('v-menu',{attrs:{\"offset-y\":\"\",\"close-on-click\":\"\"}},[_c('v-icon',{attrs:{\"slot\":\"activator\",\"large\":\"\",\"color\":\"primary\"},slot:\"activator\"},[_vm._v(\"\\n keyboard_arrow_down\\n \")]),_c('v-list',[(props.item.customerOrderState != 70)?_c('v-list-tile',{on:{\"click\":function($event){return _vm.edit(props.item.orderId)}}},[_c('v-list-tile-avatar',[_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"edit\")])],1),_c('v-list-tile-title',[_vm._v(\"\\n Bearbeiten\\n \")])],1):_vm._e(),(props.item.customerOrderState == 50 && props.item.invoiceHasBeenBlocked == false)?_c('v-list-tile',{on:{\"click\":function($event){return _vm.createInvoice(props.item.orderId)}}},[_c('v-list-tile-avatar',[_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"attach_money\")])],1),_c('v-list-tile-title',[_vm._v(\"\\n Rechnung stellen\\n \")])],1):_vm._e(),(props.item.customerOrderState == 60 || props.item.customerOrderState == 70)?_c('v-list-tile',{on:{\"click\":function($event){return _vm.downloadInvoice(props.item.orderId)}}},[_c('v-list-tile-avatar',[_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"attach_money\")])],1),_c('v-list-tile-title',[_vm._v(\"\\n Rechnung herunterladen\\n \")])],1):_vm._e(),(props.item.customerOrderState != 60 && props.item.customerOrderState != 70 && props.item.invoiceHasBeenBlocked == false)?_c('v-list-tile',{on:{\"click\":function($event){return _vm.blockInvoice(props.item.orderId)}}},[_c('v-list-tile-avatar',[_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"lock\")])],1),_c('v-list-tile-title',[_vm._v(\"\\n Rechnung sperren\\n \")])],1):_vm._e(),(props.item.customerOrderState != 60 && props.item.customerOrderState != 70 && props.item.invoiceHasBeenBlocked == true)?_c('v-list-tile',{on:{\"click\":function($event){return _vm.releaseInvoice(props.item.orderId)}}},[_c('v-list-tile-avatar',[_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"lock_open\")])],1),_c('v-list-tile-title',[_vm._v(\"\\n Rechnung freigeben\\n \")])],1):_vm._e(),_c('v-list-tile',{on:{\"click\":function($event){return _vm.openSendOrderConfirmationDialog(props.item.orderId)}}},[_c('v-list-tile-avatar',[_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"mail\")])],1),_c('v-list-tile-title',[_vm._v(\"\\n Auftragsbestätigung senden\\n \")])],1),_c('v-list-tile',{on:{\"click\":function($event){return _vm.sendFertigerMail(props.item.orderId)}}},[_c('v-list-tile-avatar',[_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"inbox\")])],1),_c('v-list-tile-title',[_vm._v(\"\\n Fertigermail senden\\n \")])],1),(_vm.isGestoertState(props.item))?_c('v-list-tile',{on:{\"click\":function($event){return _vm.openReleaseOrderDialog(props.item.orderId, props.item.fertigerId)}}},[_c('v-list-tile-avatar',[_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"gavel\")])],1),_c('v-list-tile-title',[_vm._v(\"\\n Auftrag freigeben\\n \")])],1):_vm._e(),_c('v-list-tile',{attrs:{\"title\":\"Storniert den Auftrag und aktualisiert das Fertigerportal\"},on:{\"click\":function($event){return _vm.openCancelOrderdialog(props.item.orderId, props.item.fertigerId)}}},[_c('v-list-tile-avatar',[_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"delete_forever\")])],1),_c('v-list-tile-title',[_vm._v(\"\\n Auftrag stornieren\\n \")])],1),_c('v-list-tile',{on:{\"click\":function($event){return _vm.updateTransportPosition(props.item.orderId)}}},[_c('v-list-tile-avatar',[_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"refresh\")])],1),_c('v-list-tile-title',[_vm._v(\"\\n Lieferkosten neu berechnen\\n \")])],1),_c('v-list-tile',{on:{\"click\":function($event){return _vm.showOrderCalculation(props.item)}}},[_c('v-list-tile-avatar',[_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"calculate\")])],1),_c('v-list-tile-title',[_vm._v(\"\\n Kalkulation anzeigen\\n \")])],1),_c('v-list-tile',{on:{\"click\":function($event){return _vm.editAddress(props.item.orderId, 4)}}},[_c('v-list-tile-avatar',[_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"edit_location\")])],1),_c('v-list-tile-title',[_vm._v(\"\\n Lieferadresse bearbeiten\\n \")])],1),_c('v-list-tile',{on:{\"click\":function($event){return _vm.editAddress(props.item.orderId, 3)}}},[_c('v-list-tile-avatar',[_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"edit_location\")])],1),_c('v-list-tile-title',[_vm._v(\"\\n Rechnungsadresse bearbeiten\\n \")])],1),(props.item.customerOrderState == 50 || props.item.customerOrderState == 60 || props.item.customerOrderState == 70)?_c('v-list-tile',{attrs:{\"title\":\"Lieferschein anzeigen. Der Lieferschein muss schon erstellt sein.\"},on:{\"click\":function($event){return _vm.getDeliveryNote(props.item.orderId)}}},[_c('v-list-tile-avatar',[_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"mail\")])],1),_c('v-list-tile-title',[_vm._v(\"\\n Lieferschein\\n \")])],1):_vm._e(),(props.item.customerOrderState == 50 || props.item.customerOrderState == 60 || props.item.customerOrderState == 70)?_c('v-list-tile',{on:{\"click\":function($event){return _vm.openTrackingLink(props.item.orderId)}}},[_c('v-list-tile-avatar',[_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"local_shipping\")])],1),_c('v-list-tile-title',[_vm._v(\"\\n Sendungslink öffnen\\n \")])],1):_vm._e()],1)],1)],1)])]}},{key:\"expand\",fn:function(props){return [_c('v-data-table',{staticClass:\"elevation-1 ml-3 mb-3\",attrs:{\"headers\":_vm.getPositionHeaders(props.item),\"items\":_vm.getPartsAndPositions(props.item),\"item-key\":\"item.partId\",\"hide-actions\":\"\"},scopedSlots:_vm._u([{key:\"items\",fn:function(position){return [_c('tr',[_c('td',{staticStyle:{\"width\":\"10px\"}},[_vm._v(\"\\n \"+_vm._s(position.item.position)+\"\\n \")]),_c('td',{staticStyle:{\"width\":\"60px\"}},[_c('a',{attrs:{\"href\":`boost://homezone/browse/part?id=${position.item.partId}`}},[_vm._v(\"\\n \"+_vm._s(position.item.partId)+\"\\n \")])]),_c('td',{staticStyle:{\"width\":\"60px\"}},[(position.item.materialId > 0)?_c('article-cad-preview',{attrs:{\"articleId\":position.item.partId,\"articleLastChange\":_vm.getCurrentDate(),\"width\":\"50px\",\"height\":\"50px\",\"readonly\":false}}):_vm._e()],1),_c('td',{style:({textDecoration: position.item.menge <= 0 ? 'line-through' : 'none'})},[_vm._v(\"\\n \"+_vm._s(position.item.description)),_c('br'),(position.item.customerArticleId != null && position.item.customerArticleId != undefined && position.item.customerArticleId != '')?_c('span',{staticStyle:{\"font-size\":\"0.8em\"}},[_vm._v(\"\\n Kundenartikelnummer: \"+_vm._s(position.item.customerArticleId)+\"\\n \")]):_vm._e()]),_c('td',[(position.item.materialId > 0)?_c('div',{staticStyle:{\"font-size\":\"0.8em\"}},[_c('span',[_vm._v(_vm._s(position.item.materialBezeichnung))]),_c('span',[_c('br'),_vm._v(\"LxBxH: \\n \"+_vm._s(_vm._f(\"format2Digit\")(position.item.laenge))+\" x \\n \"+_vm._s(_vm._f(\"format2Digit\")(position.item.breite))+\" x \\n \"+_vm._s(_vm._f(\"format2Digit\")(position.item.hoehe))+\"mm\\n \")]),_c('span',[_c('br'),_vm._v(\"Teil: \"+_vm._s(_vm._f(\"format3Digit\")(position.item.gewicht))+\"kg / Total: \"+_vm._s(_vm._f(\"format3Digit\")(position.item.gewicht * position.item.menge))+\"kg \\n \")]),(position.item.featureDtos.length > 0 || position.item.hasEngravings)?_c('span',[_c('br'),_vm._v(_vm._s(_vm.getFeatureString(position.item)))]):_vm._e(),_c('span',[_c('br'),_vm._v(\"Entgraten: \"+_vm._s(_vm.getEntgratartText(position.item.entgratart)))]),(position.item.certificateTypesAsText !== '')?_c('span',[_c('br'),_vm._v(\"\\n Zertifikat: \"+_vm._s(position.item.certificateTypesAsText)+\"\\n \")]):_vm._e(),(position.item.weldlinesAsText != '')?_c('span',[_c('br'),_vm._v(_vm._s(position.item.weldlinesAsText)+\"\\n \")]):_vm._e(),(position.item.powderCoatingTreatmentDto != null)?_c('span',[_c('br'),_c('span',{style:('display:inline-block; height: 8px; width: 8px; background-color:' \n + position.item.powderCoatingTreatmentDto.powder.surfaceColor.hexCode)}),_vm._v(\"\\n  RAL \"+_vm._s(position.item.powderCoatingTreatmentDto.powder.surfaceColor.ralCode)+\" |\\n  \"+_vm._s(_vm.GetArticleFaceString(position.item.powderCoatingTreatmentDto.treatmentFace))+\" |\\n  \"+_vm._s(_vm.GetStructureString(position.item.powderCoatingTreatmentDto.powder.structure))+\" |\\n  \"+_vm._s(_vm.GetFinishString(position.item.powderCoatingTreatmentDto.powder.finish))+\"\\n \")]):_vm._e()]):_vm._e()]),_c('td',[_vm._v(_vm._s(position.item.menge))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format2Digit\")(position.item.customerPricePerPart)))]),_c('td',{staticClass:\"text-xs-right\"},[_vm._v(_vm._s(_vm._f(\"format2Digit\")(position.item.customerPricePerPart * position.item.menge)))])])]}}],null,true)}),_c('div',{staticClass:\"mr-4 mb-3\",staticStyle:{\"text-align\":\"right\"}},[_c('span',{staticClass:\"mr-3\"},[_vm._v(\"Total:\")]),_vm._v(_vm._s(_vm._f(\"format2Digit\")(_vm.getTotal(props.item)))+\"\\n \")])]}}])}),_c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\"}},[(_vm.hasMoreToLoad)?_c('v-layout',{attrs:{\"row\":\"\",\"justify-center\":\"\"}},[_c('v-flex',{attrs:{\"shrink\":\"\"}},[(!_vm.loading)?_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"title\":\"Lädt weitere Aufträge mit den aktuellen Filtereinstellungen.\"},on:{\"click\":function($event){return _vm.manuallyLoadMoreOrders()}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\tMehr laden\\n\\t\\t\\t\\t\\t\\t\"),_c('v-icon',{attrs:{\"right\":\"\"}},[_vm._v(\"expand_more\")])],1):_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"color\":\"accent\"}})],1)],1):_vm._e()],1),_c('v-dialog',{attrs:{\"width\":\"500\",\"persistent\":\"\"},model:{value:(_vm.editAddressDialog),callback:function ($$v) {_vm.editAddressDialog=$$v},expression:\"editAddressDialog\"}},[_c('edit-address-component',{attrs:{\"address\":_vm.currentEditedAddress,\"addressType\":_vm.currentEditedAddressType,\"orderId\":_vm.currentEditedOrderId},on:{\"closed\":function($event){_vm.editAddressDialog = false}}})],1),_c('v-dialog',{attrs:{\"width\":\"500\"},model:{value:(_vm.trackingLinkDialog),callback:function ($$v) {_vm.trackingLinkDialog=$$v},expression:\"trackingLinkDialog\"}},[_c('v-card',[_c('v-card-title',[_c('h3',[_vm._v(\"Sendungslink\")])]),_c('v-card-text',[_c('a',{attrs:{\"href\":_vm.currentTrackingLink,\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.currentTrackingLink))])]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{staticClass:\"blexon-button\",on:{\"click\":function($event){_vm.trackingLinkDialog = false}}},[_vm._v(\"Schliessen\")])],1)],1)],1),_c('v-dialog',{attrs:{\"width\":\"500\",\"persistent\":\"\"},model:{value:(_vm.showPossibleFertigersDialog),callback:function ($$v) {_vm.showPossibleFertigersDialog=$$v},expression:\"showPossibleFertigersDialog\"}},[_c('v-card',[_c('v-card-title',[_c('h3',[_vm._v(\"Änderung nicht möglich\")])]),_c('v-card-text',[_vm._v(\"\\n Der gewählte Fertiger kann nicht zugewiesen werden. Eine Tabelle mit den Anforderungen wurde\\n per E-Mail an info@blexon.com gesendet.\\n \"),_c('h3',[_vm._v(\"Folgende Fertiger wären möglich:\")]),_c('ul',_vm._l((_vm.possibleFertigers),function(fertiger){return _c('li',{key:fertiger.fertigerId},[_vm._v(\"\\n \"+_vm._s(fertiger.friendlyName)+\"\\n \")])}),0),_vm._v(\"\\n Der Fertiger bleibt unverändert.\\n \")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{staticClass:\"blexon-button\",on:{\"click\":function($event){_vm.showPossibleFertigersDialog = false}}},[_vm._v(\"Schliessen\")])],1)],1)],1),(_vm.currentCancellationRequest)?_c('v-dialog',{attrs:{\"width\":\"500\"},model:{value:(_vm.showCancellationAtFertigerDialog),callback:function ($$v) {_vm.showCancellationAtFertigerDialog=$$v},expression:\"showCancellationAtFertigerDialog\"}},[_c('v-card',[_c('v-card-title',[_c('h3',[_vm._v(\"Stornierungsanfrage bei Fertiger\")])]),_c('v-card-text',[_vm._v(\"\\n Der Kunde hat eine Stornierungsanfrage zu dieser Bestellung gestellt.\"),_c('br'),_vm._v(\"\\n Momentan muss der Fertiger Informationen über den Fortschritt der Bestellung im Fertigerportal angeben.\"),_c('br'),_c('a',{attrs:{\"target\":\"blank\",\"href\":_vm.fertigerPortalLink}},[_vm._v(\"Fertigerportal\")]),_c('br'),_vm._v(\"\\n Folgende Positionen wurden zur Stornierung angefragt:\"),_c('br'),_vm._l((_vm.currentCancellationRequest.positions),function(pos){return _c('span',{key:pos.position},[_c('b',[_vm._v(\"  Position \"+_vm._s(pos.position)+\" - \"+_vm._s(pos.articleId))]),_c('br')])})],2),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{staticClass:\"blexon-button\",on:{\"click\":function($event){_vm.showCancellationAtFertigerDialog = false}}},[_vm._v(\"Schliessen\\n \")])],1)],1)],1):_vm._e(),_c('v-dialog',{attrs:{\"width\":\"500\"},model:{value:(_vm.releaseOrderDialog),callback:function ($$v) {_vm.releaseOrderDialog=$$v},expression:\"releaseOrderDialog\"}},[_c('v-card',[_c('v-card-title',[_c('h3',[_vm._v(\"Auftrag freigeben\")])]),_c('v-card-text',[_vm._v(\"\\n Der Auftrag wird freigegeben und die Auftragsbestätigung optional versendet.\"),_c('br'),_c('v-checkbox',{attrs:{\"disabled\":_vm.loading,\"label\":\"Auftragsbestätigung senden\",\"color\":\"accent\",\"hide-details\":\"\"},model:{value:(_vm.currentOrderSendConfirmation),callback:function ($$v) {_vm.currentOrderSendConfirmation=$$v},expression:\"currentOrderSendConfirmation\"}}),_c('v-checkbox',{staticClass:\"ml-3\",attrs:{\"disabled\":_vm.loading || !_vm.currentOrderSendConfirmation,\"label\":\"Direkt an Kunde senden\",\"color\":\"accent\",\"hide-details\":\"\"},model:{value:(_vm.currentOrderSendDirectlyToCustomer),callback:function ($$v) {_vm.currentOrderSendDirectlyToCustomer=$$v},expression:\"currentOrderSendDirectlyToCustomer\"}})],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.releaseOrderandReload()}}},[(_vm.loading)?_c('v-progress-circular',{staticClass:\"mr-2\",attrs:{\"indeterminate\":\"\",\"size\":\"20\"}}):_vm._e(),_vm._v(\"\\n Freigeben\\n \")],1)],1)],1)],1),_c('v-dialog',{attrs:{\"width\":\"500\"},model:{value:(_vm.sendOrderConfirmationDialog),callback:function ($$v) {_vm.sendOrderConfirmationDialog=$$v},expression:\"sendOrderConfirmationDialog\"}},[_c('v-card',[_c('v-card-title',[_c('h3',[_vm._v(\"Auftragsbestätigung senden\")])]),_c('v-card-text',[_vm._v(\"\\n Die Auftragsbestätigung wird je nach Auswahl direkt an den Kunden oder an info@blexon gesendet.\"),_c('br'),_c('v-checkbox',{attrs:{\"disabled\":_vm.loading,\"label\":\"Direkt an Kunde senden\",\"color\":\"accent\",\"hide-details\":\"\"},model:{value:(_vm.currentOrderSendDirectlyToCustomer),callback:function ($$v) {_vm.currentOrderSendDirectlyToCustomer=$$v},expression:\"currentOrderSendDirectlyToCustomer\"}})],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.sendOrderConfirmation()}}},[(_vm.loading)?_c('v-progress-circular',{staticClass:\"mr-2\",attrs:{\"indeterminate\":\"\",\"size\":\"20\"}}):_vm._e(),_vm._v(\"\\n Senden\\n \")],1)],1)],1)],1),_c('v-dialog',{attrs:{\"persistent\":\"\",\"width\":\"500\"},model:{value:(_vm.cancelOrderDialog),callback:function ($$v) {_vm.cancelOrderDialog=$$v},expression:\"cancelOrderDialog\"}},[_c('v-card',[_c('v-card-title',[_c('h3',[_vm._v(\"Auftrag \"+_vm._s(_vm.currentCancelOrderId)+\" stornieren\")])]),_c('v-card-text',[_vm._v(\"\\n Storniert den Auftrag \"+_vm._s(_vm.currentCancelOrderId)+\" und aktualisiert das Fertigerportal.\\n \")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{on:{\"click\":function($event){_vm.cancelOrderDialog = false}}},[_vm._v(\" Abbrechen \")]),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.cancelOrder()}}},[_vm._v(\" Stornieren \")])],1)],1)],1),(_vm.showOrderWorkStepsDialog)?_c('order-calculation-component',{attrs:{\"show\":_vm.showOrderWorkStepsDialog,\"orderWorkSteps\":_vm.currentOrderWorkSteps,\"articleMaterials\":_vm.currentOrderArticleMaterials},on:{\"close\":function($event){_vm.showOrderWorkStepsDialog = false}}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nexport enum OrderSortingType {\r\n CustomerIdAscending = 0,\r\n CustomerIdDescending = 1,\r\n StateAscending = 2,\r\n StateDescending = 3,\r\n NameAscending = 4,\r\n NameDescending = 5,\r\n OrderIdAscending = 6,\r\n OrderIdDescending = 7,\r\n OrderDateAscending = 8,\r\n OrderDateDescending = 9,\r\n ShippingDateAscending = 10,\r\n ShippingDateDescending = 11,\r\n FertigerAscending = 12,\r\n FertigerDescending = 13,\r\n}\r\n","import { ErpCustomerOrderState } from './erpCustomerOrderState';\r\nimport { OrderSortingType } from './orderSortingType';\r\n\r\nexport class OrderSearchRequestDto {\r\n public orderSearchTerm: string = '';\r\n public articleSearchTerm: string = '';\r\n\tpublic dateFrom: Date | null = null;\r\n\tpublic dateTo: Date | null = null;\r\n public sortingType: OrderSortingType = OrderSortingType.OrderDateAscending;\r\n\tpublic includeStorniert: boolean = true;\r\n\tpublic includeOtherPositions: boolean = true;\r\n\tpublic states: ErpCustomerOrderState[] = [];\r\n\tpublic fertigerIds: number[] = [];\r\n\tpublic totalWeightGreaterThen: number = 0;\r\n\tpublic weightOfASinglePositionGreaterThen: number = 0;\r\n\tpublic quantityOfASinglePositionGreaterThen: number = 0;\r\n\tpublic numberOfPositionsLessThen: number = 0;\r\n}\r\n","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport { debounce } from 'typescript-debounce-decorator';\r\nimport httpClient from '../../store/httpClient';\r\nimport moment from 'moment';\r\nimport DatePicker from '../../components/DatePicker.vue';\r\nimport ArticleCadPreview from '@/components/ArticleCadPreview.vue'\r\nimport EditAddressComponent from '@/components/EditAddressComponent.vue'\r\nimport store from '../../store/store';\r\nimport { CustomerOrderDto } from '../../dtos/customerOrderDto';\r\nimport { ErpCustomerOrderState } from '../../dtos/erpCustomerOrderState';\r\nimport { AddressDto } from '@/dtos/addressDto';\r\nimport { AddressType } from '@/dtos/addressType';\r\nimport { OrderSearchRequestDto } from '@/dtos/orderSearchRequestDto';\r\nimport { OrderSortingType } from '@/dtos/orderSortingType';\r\nimport ArticleFaceTypes from '@/dtos/IArticleFaceTypes';\r\nimport { IArticleFaceType } from '@/dtos/IArticleFaceTypes';\r\nimport PowderFinishes from '@/dtos/IPowderFinish';\r\nimport { IPowderFinish } from '@/dtos/IPowderFinish';\r\nimport PowderStructures from '@/dtos/IPowderStructure';\r\nimport { IPowderStructure } from '@/dtos/IPowderStructure';\r\nimport { WorkStepDto } from '@/dtos/workStepDto';\r\nimport { ArticleDto } from '@/dtos/articleDto';\r\nimport PriceModelDefault from '@/dtos/priceModel';\r\nimport { getEntgratartText } from '@/dtos/entgratart';\r\nimport { PartDto } from '@/dtos/partDto';\r\nimport OrderCalculationComponent from '@/components/OrderCalculationComponent.vue';\r\n\r\n@Component({\r\n components: {\r\n DatePicker,\r\n ArticleCadPreview,\r\n EditAddressComponent,\r\n OrderCalculationComponent,\r\n },\r\n})\r\nexport default class OrderDashboard extends Vue {\r\n @Prop()\r\n private articleId!: string;\r\n private articleSearchTerm: string = '';\r\n private totalWeightGreaterThen: number = 0;\r\n private weightOfASinglePositionGreaterThen: number = 0;\r\n private quantityOfASinglePositionGreaterThen: number = 0;\r\n private numberOfPositionsLessThen: number = 0;\r\n private showAnalyseFilters: number = 0;\r\n private loading: boolean = false;\r\n private orders: CustomerOrderDto[] = [];\r\n private editAddressDialog: boolean = false;\r\n private currentEditedAddress: AddressDto = new AddressDto();\r\n private currentEditedAddressType: AddressType = AddressType.OrderInvoice;\r\n private currentEditedOrderId: number = 0;\r\n private currentTrackingLink: string = '';\r\n private trackingLinkDialog: boolean = false;\r\n private loadBatchSize: number = 50;\r\n private hasMoreToLoad: boolean = true;\r\n private articleFaceTypes: IArticleFaceType[] = ArticleFaceTypes;\r\n private powderFinishes: IPowderFinish[] = PowderFinishes;\r\n private powderStructures: IPowderStructure[] = PowderStructures;\r\n private showCancellationAtFertigerDialog: boolean = false;\r\n private currentCancellationRequest: any = null;\r\n private currentOrderWorkSteps: any = [];\r\n private currentOrderArticleMaterials: Map = new Map();\r\n private showOrderWorkStepsDialog: boolean = false;\r\n private sendOrderConfirmationDialog: boolean = false;\r\n private getEntgratartText = getEntgratartText;\r\n private releaseOrderDialog: boolean = false;\r\n private currentOrderId: number = 0;\r\n private currentOrderFertigerId: number = 0;\r\n private currentOrderSendConfirmation: boolean = true;\r\n private currentOrderSendDirectlyToCustomer: boolean = true;\r\n private cancelOrderDialog: boolean = false;\r\n private currentCancelOrderId: string = \"\";\r\n private currentCancelOrderFertigerId: number = 0;\r\n\r\n /**\r\n * Wird temporär benutzt, um die möglichen Fertiger anzuzeigen, wenn ein Fertiger nicht\r\n * möglich ist.\r\n */\r\n private possibleFertigers: any = [];\r\n private showPossibleFertigersDialog: boolean = false;\r\n private headers: Array<{\r\n text: string, \r\n value: string, \r\n align: string,\r\n sortable: boolean \r\n }> = Array(\r\n {\r\n text: 'Status',\r\n value: 'customerOrderState',\r\n align: 'left',\r\n sortable: true,\r\n width: '1px',\r\n },\r\n {\r\n text: 'KndNr',\r\n value: 'customerId',\r\n align: 'left',\r\n sortable: true,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Name',\r\n value: 'customerName',\r\n align: 'left',\r\n sortable: true,\r\n width: '1px',\r\n },\r\n {\r\n text: 'AufragsNr',\r\n value: 'orderId',\r\n align: 'left',\r\n sortable: true,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Gewicht',\r\n value: 'totalWeight',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Eingegangen am',\r\n value: 'receivedAt',\r\n align: 'left',\r\n sortable: true,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Liefertermin',\r\n value: 'dueDate',\r\n align: 'left',\r\n sortable: true,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Fertiger',\r\n value: 'fertigerId',\r\n align: 'left',\r\n sortable: true,\r\n width: '1px',\r\n },\r\n {\r\n text: '',\r\n value: '',\r\n align: 'right',\r\n sortable: false,\r\n width: '0px',\r\n });\r\n\r\n private positionHeader: Array<{\r\n text: string, value: string, align: string,\r\n sortable: boolean, width: string \r\n }> = Array(\r\n {\r\n text: 'Pos',\r\n value: 'position',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Blexon Id',\r\n value: 'articleId',\r\n align: 'left',\r\n sortable: false,\r\n width: '60px',\r\n },\r\n {\r\n text: '',\r\n value: 'empty',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Bezeichnung',\r\n value: 'description',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Eigenschaften',\r\n value: 'attributes',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Menge',\r\n value: 'amount',\r\n align: 'left',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Preis',\r\n value: 'price',\r\n align: 'right',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n {\r\n text: 'Total',\r\n value: 'total',\r\n align: 'right',\r\n sortable: false,\r\n width: '1px',\r\n },\r\n );\r\n\r\n beforeRouteEnter(to: any, from: any, next: any) {\r\n\t\tnext((vm: any) => {\r\n\t\t\twindow.addEventListener('scroll', vm.checkBottom);\r\n\t\t});\r\n\t}\r\n\r\n\tbeforeRouteLeave(to: any, from: any, next: any) {\r\n\t\twindow.removeEventListener('scroll', this.checkBottom);\r\n\t\tnext();\r\n\t}\r\n\r\n private created() {\r\n if (this.articleId != null) {\r\n this.articleSearchTerm = this.articleId;\r\n }\r\n }\r\n\r\n private mounted() { \r\n if (this.orders.length <= 0) {\r\n this.loadOrders(true);\r\n }\r\n if (this.orderCancellationRequests == null) {\r\n this.loadOrderCancellationRequests();\r\n }\r\n }\r\n\r\n private get orderSearchTerm() {\r\n return (store.state as any).orderSuchbegriff;\r\n }\r\n private set orderSearchTerm(orderSearchTerm: string) {\r\n store.commit('setOrderSuchbegriff', orderSearchTerm);\r\n }\r\n\r\n private get orderCancellationRequests() {\r\n return this.$store.state.orderCancellations;\r\n }\r\n\r\n private get orderStates() {\r\n const states = Object.entries(ErpCustomerOrderState)\r\n .filter(([number]) => !isNaN(parseInt(number)))\r\n .map(([number, word]) => ({ value: parseInt(number), name: word }));\r\n\t\treturn states;\r\n\t}\r\n\r\n\tprivate get filterStates(): any[] {\r\n\t\treturn this.$store.state.orderFilterStates;\r\n\t}\r\n\tprivate set filterStates(states: any[]) {\r\n\t\tthis.$store.commit('setOrderFilterStates', states);\r\n\t}\r\n\r\n private get filterFertiger(): any[] {\r\n\t\treturn this.$store.state.orderFilterFertiger;\r\n\t}\r\n\tprivate set filterFertiger(fertiger: any[]) {\r\n\t\tthis.$store.commit('setOrderFilterFertiger', fertiger);\r\n\t}\r\n\r\n private getPositionHeaders(item: CustomerOrderDto) {\r\n let headers = JSON.parse(JSON.stringify(this.positionHeader));\r\n headers.filter((h:any) => h.text === 'Preis')[0].text = `Preis [${PriceModelDefault.getPriceModelText(item.priceModel)}]`;\r\n return headers\r\n }\r\n\r\n private customSort(items: any, index: any, isDesc: any) {\r\n\t\t// Do nothing because items are correclty sorted by the backend\r\n\t\t// But a custom sort is needed because otherwise the data-table shuffles items around\r\n\t\t// Maybe there is another solution to stop the sorting but I haven't found it, yet.\r\n\t\treturn items;\r\n\t}\r\n\r\n private get fertigers() {\r\n return store.state.fertigers;\r\n }\r\n\r\n private get fertigerPortalLink() {\r\n let fertigerId = this.orders\r\n .filter((o: CustomerOrderDto) => o.orderId == this.currentCancellationRequest.blexonOrderId)[0]\r\n .fertigerId;\r\n let fertigerUrlId = this.$store.state.fertigers.filter((f:any) => f.id == fertigerId)[0].dbId;\r\n return `${process.env.VUE_APP_FERTIGERPORTAL_URL}#/${fertigerUrlId}/cancellation/${this.currentCancellationRequest.blexonOrderId}`;\r\n }\r\n\r\n @debounce(700, { leading: false })\r\n @Watch('articleSearchTerm')\r\n private reloadOnArticleSearch() {\r\n if (this.articleSearchTerm.length === 0 || this.articleSearchTerm.length >= 3) \r\n this.loadOrders(true);\r\n }\r\n @debounce(700, { leading: false })\r\n @Watch('orderSearchTerm')\r\n private reloadOnOrderSearch() {\r\n if (this.orderSearchTerm.length === 0 || this.orderSearchTerm.length >= 3) \r\n this.loadOrders(true);\r\n }\r\n\r\n private onEnterClickInSearchterms() {\r\n this.loadOrders(true);\r\n }\r\n\r\n private checkBottom() {\r\n let bottomOfWindow = (window.innerHeight + window.pageYOffset) >= document.body.offsetHeight - 2;\r\n\t\tif (bottomOfWindow && this.hasMoreToLoad && !this.loading) {\r\n\t\t\tthis.loadOrders(false);\r\n\t\t}\r\n\t}\r\n\r\n private async loadOrders(reload: boolean) {\r\n // Don't load while already loading and don't load empty states if that is already loaded.\r\n if (this.loading) {\r\n return;\r\n }\r\n try {\r\n this.loading = true;\r\n let from = 0;\r\n if (!reload) {\r\n from += this.orders.length;\r\n }\r\n let searchRequest = new OrderSearchRequestDto();\r\n searchRequest.orderSearchTerm = this.orderSearchTerm;\r\n searchRequest.articleSearchTerm = this.articleSearchTerm;\r\n searchRequest.sortingType = this.$store.state.orderSortingType;\r\n searchRequest.states = this.filterStates.map((state:any) => state.value);\r\n searchRequest.fertigerIds = this.filterFertiger.map((fertiger:any) => fertiger.id);\r\n searchRequest.totalWeightGreaterThen = this.totalWeightGreaterThen;\r\n searchRequest.weightOfASinglePositionGreaterThen = this.weightOfASinglePositionGreaterThen;\r\n searchRequest.quantityOfASinglePositionGreaterThen = this.quantityOfASinglePositionGreaterThen;\r\n searchRequest.numberOfPositionsLessThen = this.numberOfPositionsLessThen;\r\n\r\n const response = await httpClient()\r\n .post(`CustomerOrder/GetCustomerOrders?from=${from}&to=${from + this.loadBatchSize}`, searchRequest);\r\n\r\n if (reload) {\r\n this.orders = response.data;\r\n } else {\r\n // Add new orders that weren't in the list before\r\n // Replace already existing orders to keep them updated\r\n response.data.forEach((newOrder: any) => {\r\n const orderIndex = this.orders.findIndex((localOrder:CustomerOrderDto) => localOrder.orderId == newOrder.orderId);\r\n if (orderIndex >= 0){\r\n this.orders.splice(orderIndex, 1, newOrder);\r\n } else {\r\n this.orders.push(newOrder);\r\n }\r\n });\r\n }\r\n this.hasMoreToLoad = response.data.length === this.loadBatchSize;\r\n } catch {\r\n console.log('Load orders failed.');\r\n this.$store.commit('setSnackbarErrorText', 'Fehler beim laden der Aufträge.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private manuallyLoadMoreOrders() {\r\n if (this.hasMoreToLoad && !this.loading) {\r\n this.loadOrders(false);\r\n }\r\n }\r\n\r\n private edit(orderId: string) {\r\n this.$router.push({name: 'editOrder', params: {orderId}});\r\n }\r\n\r\n private async downloadInvoice(orderId: string) {\r\n if (this.loading) {\r\n return;\r\n }\r\n try {\r\n this.loading = true;\r\n await this.$store.dispatch('downloadInvoiceAsPdf', orderId);\r\n } catch {\r\n console.log('Failed to download invoice pdf.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async loadOrderCancellationRequests() {\r\n try {\r\n console.log('loading order cancellations...');\r\n const response = await httpClient().get('CustomerOrder/GetOrderCancellationRequests');\r\n this.$store.commit('setOrderCancellations', response.data);\r\n } catch (err) {\r\n console.log(`Fehler beim Laden der Stornierungsanfragen: ${err}`);\r\n }\r\n }\r\n\r\n private hasCancellationRequest(orderId: number) {\r\n return this.orderCancellationRequests !== null && \r\n this.orderCancellationRequests.some((o: any) => o.blexonOrderId == orderId);\r\n }\r\n\r\n private onCancellationIconClick(orderId: number) {\r\n let requests = this.orderCancellationRequests.filter((r:any) => r.blexonOrderId == orderId);\r\n if (requests.length < 1) return;\r\n this.currentCancellationRequest = requests[0];\r\n // If the Fertiger has to set progress, a dialog is shown\r\n if (this.currentCancellationRequest.state == 0) {\r\n this.showCancellationAtFertigerDialog = true;\r\n } \r\n // If the cost is already determined, show view\r\n else if (this.currentCancellationRequest.state == 1) {\r\n this.$router.push(`cancellationRequest/${orderId}`);\r\n }\r\n }\r\n\r\n private async getDeliveryNote(orderId: string) {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get(`CustomerOrder/getDeliveryNote?orderId=${orderId}`,\r\n {\r\n responseType: 'blob',\r\n });\r\n const url = window.URL.createObjectURL(new Blob([response.data]));\r\n const link = document.createElement('a');\r\n link.href = url;\r\n link.setAttribute('download', 'Lieferschein zum Auftrag ' + orderId + '.pdf');\r\n link.click();\r\n } catch {\r\n console.error('Get delivery note failed.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n /**\r\n * Blocks the creation of an invoice for the specified order.\r\n */\r\n private async blockInvoice(orderId: string) {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().post(`CustomerOrder/BlockInvoice?orderId=${orderId}`);\r\n this.orders.filter((o) => o.orderId === orderId)[0].invoiceHasBeenBlocked = true;\r\n } catch {\r\n console.log('Block invoice failed.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async updateTransportPosition(orderId: string) {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().post(`CustomerOrder/UpdateTransportPosition?orderId=${orderId}`);\r\n } catch {\r\n console.log('Update transport position failed.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n /**\r\n * Resets the state of the specified order in such a way\r\n * that the invoice will be created. Either on demand or on the\r\n * next nightly batch.\r\n */\r\n private async releaseInvoice(orderId: string) {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().post(`CustomerOrder/ReleaseInvoice?orderId=${orderId}`);\r\n this.orders.filter((o) => o.orderId === orderId)[0].invoiceHasBeenBlocked = false;\r\n } catch {\r\n console.log('Release invoice failed.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async createInvoice(orderId: string) {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().post(`CustomerOrder/CreateInvoice?orderId=${orderId}`);\r\n this.orders.filter((o) => o.orderId === orderId)[0].customerOrderState = ErpCustomerOrderState.Fakturiert;\r\n } catch {\r\n console.log('Create invoice failed.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async updateDueDate(order: CustomerOrderDto, newDate: any) {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().post(`CustomerOrder/ChangeDeliveryDate?orderId=${order.orderId}&newDeliveryDate=${newDate}`);\r\n order.dueDate = newDate;\r\n this.$store.commit('setSnackbarText', `Lieferdatum wurde erfolgreich angepasst.`);\r\n } catch {\r\n this.$store.commit('setSnackbarErrorText', `Fehler beim Speicher des Lieferdatums.`);\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async changeFertiger(order: CustomerOrderDto) {\r\n try {\r\n this.loading = true;\r\n const fertigerResponse = await httpClient().post(`CustomerOrder/GetPossibleFertigers?orderId=${order.orderId}®ionId=${order.regionId}` +\r\n `&targetFertigerId=${order.fertigerId}`, order.parts);\r\n this.possibleFertigers = fertigerResponse.data;\r\n var fertiger = this.possibleFertigers.find((f:any) => f.blexonFertigerId == order.fertigerId)\r\n if (fertiger == undefined) {\r\n // nicht möglich\r\n this.loading = false;\r\n this.showPossibleFertigersDialog = true;\r\n this.loadOrders(true); \r\n return;\r\n }\r\n const response = await httpClient().post(`CustomerOrder/ChangeFertiger?orderId=${order.orderId}&newFertigerId=${order.fertigerId}`);\r\n this.$store.commit('setSnackbarText', `Fertiger wurde erfolgreich angepasst.`);\r\n } catch {\r\n this.$store.commit('setSnackbarErrorText', `Fehler beim Speicher des neuen Fertigers.`);\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async sendFertigerMail(orderId: string) {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().post(`CustomerOrder/SendFertigerMailForOrder?orderId=${orderId}`);\r\n this.$store.commit('setSnackbarText', `Mail für Fertiger wurde erfolgreich gesendet.`);\r\n } catch {\r\n this.$store.commit('setSnackbarErrorText', `Fehler beim Senden des Fertigermails.`);\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private openSendOrderConfirmationDialog(orderId: number) {\r\n this.currentOrderId = orderId;\r\n this.currentOrderSendDirectlyToCustomer = true;\r\n this.sendOrderConfirmationDialog = true;\r\n }\r\n\r\n private async sendOrderConfirmation() {\r\n try {\r\n if (this.currentOrderId <= 0) {\r\n throw new Error('Invalid order id');\r\n }\r\n this.loading = true;\r\n const response = await httpClient()\r\n .post(`CustomerOrder/SendOrderConfirmationMail?orderId=${this.currentOrderId}&sendToCustomer=${this.currentOrderSendDirectlyToCustomer}`);\r\n this.$store.commit('setSnackbarText', `Auftragsbestätiung wurde erfolgreich per Mail gesendet.`);\r\n this.currentOrderId = 0;\r\n this.sendOrderConfirmationDialog = false;\r\n } catch {\r\n this.$store.commit('setSnackbarErrorText', `Fehler beim Senden der Auftragsbestätigung.`);\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private openReleaseOrderDialog(orderId: number, fertigerId: number) {\r\n this.currentOrderId = orderId;\r\n this.currentOrderFertigerId = fertigerId;\r\n this.currentOrderSendConfirmation = true;\r\n this.currentOrderSendDirectlyToCustomer = true;\r\n this.releaseOrderDialog = true;\r\n }\r\n\r\n private async releaseOrderandReload() {\r\n await this.releaseOrder();\r\n await this.loadOrders(true);\r\n }\r\n\r\n private async releaseOrder() {\r\n try {\r\n if (this.currentOrderId <= 0 || this.currentOrderFertigerId <= 0) {\r\n console.log(`Order id ${this.currentOrderId} or fertiger id ${this.currentOrderFertigerId} are invalid.`);\r\n throw new Error('Invalid order or fertiger ids');\r\n }\r\n this.loading = true;\r\n const call = `CustomerOrder/ReleaseOrder?orderId=${this.currentOrderId}` +\r\n `&fertigerId=${this.currentOrderFertigerId}` + \r\n `&sendConfirmation=${this.currentOrderSendConfirmation}` + \r\n `&sendToCustomer=${this.currentOrderSendDirectlyToCustomer}`;\r\n const response = await httpClient().post(call);\r\n this.$store.commit('setSnackbarText', `Auftrag wurde freigegeben.`);\r\n this.currentOrderId = 0;\r\n this.currentOrderFertigerId = 0;\r\n this.releaseOrderDialog = false;\r\n } catch {\r\n this.$store.commit('setSnackbarErrorText', `Fehler beim freigeben des Auftrags.`);\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private openCancelOrderdialog(orderId: string, fertigerId: number) {\r\n this.currentCancelOrderId = orderId;\r\n this.currentCancelOrderFertigerId = fertigerId;\r\n this.cancelOrderDialog = true;\r\n }\r\n\r\n private async cancelOrder() {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient()\r\n .post(`CustomerOrder/CancelOrder?orderId=${this.currentCancelOrderId}&fertigerId=${this.currentCancelOrderFertigerId}`);\r\n this.$store.commit('setSnackbarText', `Auftrag wurde storniert.`);\r\n this.cancelOrderDialog = false;\r\n this.currentCancelOrderId = \"\";\r\n this.currentCancelOrderFertigerId = 0;\r\n await this.loadOrders(true);\r\n } catch {\r\n this.$store.commit('setSnackbarErrorText', `Fehler beim Stornieren des Auftrags.`);\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private getPartsAndPositions(order: any) {\r\n return order.parts.concat(order.positions);\r\n }\r\n\r\n private getStatusIcon(status: ErpCustomerOrderState) {\r\n return status.toString();\r\n }\r\n\r\n /**\r\n * Returns the color for the state of the specified customer order.\r\n * The state is based on the production order state.\r\n */\r\n private getStateColor(customerOrder: CustomerOrderDto) {\r\n switch (customerOrder.customerOrderState) {\r\n case ErpCustomerOrderState.Unvollstaendig:\r\n case ErpCustomerOrderState.Gueltig:\r\n case ErpCustomerOrderState.Freigegeben:\r\n case ErpCustomerOrderState.Fertig:\r\n case ErpCustomerOrderState.InStornierung:\r\n return 'grey';\r\n case ErpCustomerOrderState.Geliefert:\r\n case ErpCustomerOrderState.Fakturiert:\r\n case ErpCustomerOrderState.Abgeschlossen:\r\n case ErpCustomerOrderState.Storniert:\r\n return 'green';\r\n case ErpCustomerOrderState.TerminUeberschritten:\r\n case ErpCustomerOrderState.Gestoert:\r\n return 'red';\r\n }\r\n }\r\n\r\n\r\n private changeSort(column: string, sortable: boolean) {\r\n\t\tif (sortable) {\r\n\t\t\tlet newSort: OrderSortingType;\r\n\t\t\tif (this.orderSorting.sortByColumn === column) {\r\n\t\t\t\tnewSort = this.orderSorting.sortDescending ? this.$store.state.orderSortingType - 1 : this.$store.state.orderSortingType + 1;\r\n\t\t\t} else {\r\n\t\t\t\tnewSort = this.getSortTypeFromColumn(column);\r\n\t\t\t}\r\n\t\t\tthis.$store.commit('setOrderSorting', newSort);\r\n\t\t\tthis.loadOrders(true);\r\n\t\t}\r\n }\r\n\r\n private get orderSorting() {\r\n\t\tlet descending: boolean = false;\r\n\t\tlet column: string = 'receivedAt';\r\n\t\tlet currentSortingType: OrderSortingType = this.$store.state.orderSortingType;\r\n\t\tswitch (currentSortingType) {\r\n\t\t\tcase OrderSortingType.CustomerIdAscending: {\r\n\t\t\t\tdescending = false;\r\n\t\t\t\tcolumn = 'customerId';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase OrderSortingType.CustomerIdDescending: {\r\n\t\t\t\tdescending = true;\r\n\t\t\t\tcolumn = 'customerId';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase OrderSortingType.StateAscending: {\r\n\t\t\t\tdescending = false;\r\n\t\t\t\tcolumn = 'customerOrderState';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase OrderSortingType.StateDescending: {\r\n\t\t\t\tdescending = true;\r\n\t\t\t\tcolumn = 'customerOrderState';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase OrderSortingType.NameAscending: {\r\n\t\t\t\tdescending = false;\r\n\t\t\t\tcolumn = 'customerName';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase OrderSortingType.NameDescending: {\r\n\t\t\t\tdescending = true;\r\n\t\t\t\tcolumn = 'customerName';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase OrderSortingType.OrderIdAscending: {\r\n\t\t\t\tdescending = false;\r\n\t\t\t\tcolumn = 'orderId';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase OrderSortingType.OrderIdDescending: {\r\n\t\t\t\tdescending = true;\r\n\t\t\t\tcolumn = 'orderId';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase OrderSortingType.OrderDateAscending: {\r\n\t\t\t\tdescending = false;\r\n\t\t\t\tcolumn = 'receivedAt';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase OrderSortingType.OrderDateDescending: {\r\n\t\t\t\tdescending = true;\r\n\t\t\t\tcolumn = 'receivedAt';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase OrderSortingType.ShippingDateAscending: {\r\n\t\t\t\tdescending = false;\r\n\t\t\t\tcolumn = 'dueDate';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase OrderSortingType.ShippingDateDescending: {\r\n\t\t\t\tdescending = true;\r\n\t\t\t\tcolumn = 'dueDate';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase OrderSortingType.FertigerAscending: {\r\n\t\t\t\tdescending = false;\r\n\t\t\t\tcolumn = 'fertigerId';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tcase OrderSortingType.FertigerDescending: {\r\n\t\t\t\tdescending = true;\r\n\t\t\t\tcolumn = 'fertigerId';\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn {\r\n\t\t\tsortDescending: descending,\r\n\t\t\tsortByColumn: column,\r\n\t\t}\r\n\t}\r\n\r\n\r\n private isGestoertState(customerOrder: CustomerOrderDto) {\r\n customerOrder.fertigerId\r\n return customerOrder.customerOrderState == ErpCustomerOrderState.Gestoert;\r\n }\r\n\r\n private async editAddress(orderId: string, addressType: number) {\r\n try {\r\n this.currentEditedOrderId = parseInt(orderId);\r\n this.currentEditedAddressType = addressType as AddressType;\r\n let call = '';\r\n if (addressType == AddressType.OrderInvoice) {\r\n call = `CustomerOrder/GetOrderInvoiceAddress?orderId=${orderId}`\r\n } else if (addressType == AddressType.OrderDelivery) {\r\n call = `CustomerOrder/GetOrderDeliveryAddress?orderId=${orderId}`\r\n } else {\r\n throw 'Invalid address type';\r\n }\r\n const response = await httpClient().get(call);\r\n this.currentEditedAddress = response.data; \r\n this.editAddressDialog = true;\r\n } catch(err) {\r\n console.log(`Adresse konnte nicht geladen werden. ${err}`);\r\n }\r\n }\r\n\r\n private goToCustomer(customerId: string) {\r\n\t\tthis.$router.push({ name: 'customerDetail', params: { customerId } });\r\n }\r\n\r\n private async openTrackingLink(orderId: string) {\r\n try {\r\n const response = await httpClient().get(`CustomerOrder/GetTrackingLink?orderId=${orderId}`);\r\n let url = new URL(response.data); // This fails if the argument is not a valid URL\r\n this.currentTrackingLink = response.data;\r\n this.trackingLinkDialog = true;\r\n } catch(err) {\r\n console.log(`Error while getting the tracking link for order ${orderId}.`, err);\r\n this.$store.commit('setSnackbarErrorText', 'Sendungslink konnte nicht geöffnet werden.');\r\n }\r\n }\r\n\r\n private async showOrderCalculation(order: any) {\r\n try {\r\n var groupBy = (xs:any, key:any) => {\r\n return xs.reduce((rv:any, x:any) => {\r\n (rv[x[key]] = rv[x[key]] || []).push(x);\r\n return rv;\r\n }, {});\r\n };\r\n\r\n this.currentOrderWorkSteps = [];\r\n const response = await httpClient().get(`Calculation/GetWorkSteps?orderId=${order.orderId}&calculationId=0`);\r\n this.currentOrderWorkSteps = Object.entries(groupBy(response.data, 'articleId'));\r\n this.currentOrderArticleMaterials.clear();\r\n this.currentOrderWorkSteps.forEach((step: any) => {\r\n let article = order.parts.filter((p: any) => p.partId === step[0])[0];\r\n this.currentOrderArticleMaterials.set(step[0], article.materialBezeichnung);\r\n })\r\n this.showOrderWorkStepsDialog = true;\r\n } catch(err) {\r\n console.log(`Error while getting the worksteps for order ${order.orderId}.`, err);\r\n this.$store.commit('setSnackbarErrorText', 'Arbeitsschritte konnten nicht geladen werden.');\r\n }\r\n }\r\n\r\n /**\r\n * Gets the total of all positions of the specified order\r\n */\r\n private getTotal(order: CustomerOrderDto) {\r\n var total = 0;\r\n for (const position of order.positions) {\r\n total += position.menge * position.customerPricePerPart;\r\n }\r\n for (const position of order.parts) {\r\n total += position.menge * position.customerPricePerPart;\r\n }\r\n return total;\r\n }\r\n\r\n private getOrderTotalWeight(order:CustomerOrderDto) {\r\n return order.parts.reduce((partialSum: number, part: PartDto) => partialSum += (part.gewicht * part.menge), 0);\r\n }\r\n\r\n /**\r\n * Gets the total of all loaded orders\r\n */\r\n private getTotalOfAllOrders() {\r\n var regions : any = [];\r\n for (const order of this.orders) {\r\n if (order.customerOrderState !== ErpCustomerOrderState.Storniert) {\r\n var region = regions.find((r:any) => r.id === order.regionId);\r\n if (region == null) {\r\n region = {\r\n id : order.regionId,\r\n name : order.regionId == 1 ? 'Schweiz / Liechtenstein' : 'Deutschland',\r\n währung : order.regionId == 1 ? 'CHF' : 'EUR',\r\n total : 0,\r\n }\r\n regions.push(region);\r\n }\r\n region.total += this.getTotal(order);\r\n }\r\n }\r\n var total = 'Total: ';\r\n for (const region of regions) {\r\n total += `${region.name}: ${region.total.toFixed(2)} ${region.währung} | `\r\n }\r\n return total.substring(0, total.length - 3);\r\n }\r\n\r\n private getCurrentDate() {\r\n return moment().toDate();\r\n }\r\n\r\n getSortTypeFromColumn(column: string) {\r\n\t\tswitch (column) {\r\n\t\t\tcase 'customerId': {\r\n\t\t\t\treturn OrderSortingType.CustomerIdAscending;\r\n\t\t\t}\r\n\t\t\tcase 'customerOrderState': {\r\n\t\t\t\treturn OrderSortingType.StateAscending;\r\n\t\t\t}\r\n\t\t\tcase 'customerName': {\r\n\t\t\t\treturn OrderSortingType.NameAscending;\r\n\t\t\t}\r\n\t\t\tcase 'orderId': {\r\n\t\t\t\treturn OrderSortingType.OrderIdAscending;\r\n\t\t\t}\r\n\t\t\tcase 'receivedAt': {\r\n\t\t\t\treturn OrderSortingType.OrderDateAscending;\r\n\t\t\t}\r\n\t\t\tcase 'dueDate': {\r\n\t\t\t\treturn OrderSortingType.ShippingDateAscending;\r\n\t\t\t}\r\n\t\t\tcase 'fertigerId': {\r\n\t\t\t\treturn OrderSortingType.FertigerAscending;\r\n\t\t\t}\r\n\t\t\tdefault: {\r\n\t\t\t\treturn OrderSortingType.OrderDateAscending;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n /**\r\n * Returns the tooltip text explaining the state of the specified customer order.\r\n * The state is based on the production order state.\r\n */\r\n private getStateText(customerOrder: CustomerOrderDto) {\r\n switch (customerOrder.customerOrderState) {\r\n case ErpCustomerOrderState.Unvollstaendig:\r\n return 'Unvollständig';\r\n case ErpCustomerOrderState.Gueltig:\r\n return 'Gültig';\r\n case ErpCustomerOrderState.Freigegeben:\r\n return 'Freigegeben';\r\n case ErpCustomerOrderState.Fertig:\r\n return 'Fertig';\r\n case ErpCustomerOrderState.Geliefert:\r\n return 'Geliefert';\r\n case ErpCustomerOrderState.Fakturiert:\r\n return 'Fakturiert';\r\n case ErpCustomerOrderState.Abgeschlossen:\r\n return 'Abgeschlossen';\r\n case ErpCustomerOrderState.Storniert:\r\n return 'Storniert';\r\n case ErpCustomerOrderState.TerminUeberschritten:\r\n return 'Termin überschritten';\r\n case ErpCustomerOrderState.Gestoert:\r\n return 'Gestört';\r\n case ErpCustomerOrderState.InStornierung:\r\n return 'In Stornierung';\r\n }\r\n }\r\n\r\n private getStateIcon(customerOrder: CustomerOrderDto) {\r\n switch (customerOrder.customerOrderState) {\r\n case ErpCustomerOrderState.Unvollstaendig:\r\n return 'warning';\r\n case ErpCustomerOrderState.Gueltig:\r\n return 'bookmarks';\r\n case ErpCustomerOrderState.Freigegeben:\r\n return 'gavel';\r\n case ErpCustomerOrderState.Fertig:\r\n return 'gavel';\r\n case ErpCustomerOrderState.Geliefert:\r\n return 'local_shipping';\r\n case ErpCustomerOrderState.Fakturiert:\r\n return 'attach_money';\r\n case ErpCustomerOrderState.Abgeschlossen:\r\n return 'check_circle';\r\n case ErpCustomerOrderState.Storniert:\r\n return 'delete_forever';\r\n case ErpCustomerOrderState.TerminUeberschritten:\r\n return 'warning';\r\n case ErpCustomerOrderState.Gestoert:\r\n return 'warning';\r\n case ErpCustomerOrderState.InStornierung:\r\n return 'auto_delete';\r\n }\r\n }\r\n\r\n private GetArticleFaceString(enumValue: number) {\r\n return this.articleFaceTypes.filter((type: IArticleFaceType) => type.value == enumValue)[0].text;\r\n }\r\n private GetStructureString(enumValue: number) {\r\n return this.powderStructures.filter((type: IPowderStructure) => type.value == enumValue)[0].text;\r\n }\r\n private GetFinishString(enumValue: number) {\r\n return this.powderFinishes.filter((type: IPowderFinish) => type.value == enumValue)[0].text;\r\n }\r\n private getFeatureString(article: ArticleDto) : string {\r\n const featureTexts = article.featureDtos.map((f) => `${f.count} * ${f.formVorlageText}`);\r\n if (article.hasEngravings) {\r\n featureTexts.push('Gravur');\r\n }\r\n return featureTexts.join(' | ');\r\n }\r\n}\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dashboard.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dashboard.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Dashboard.vue?vue&type=template&id=9684da0e\"\nimport script from \"./Dashboard.vue?vue&type=script&lang=ts\"\nexport * from \"./Dashboard.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Dashboard.vue?vue&type=style&index=0&id=9684da0e&prod&lang=css\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('h1',{staticClass:\"font-weight-light\"},[_vm._v(\"Umsatz pro Fertiger und Monat\")]),_c('v-select',{attrs:{\"label\":\"Jahr\",\"items\":_vm.years},model:{value:(_vm.year),callback:function ($$v) {_vm.year=$$v},expression:\"year\"}}),(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\"}}):_vm._e(),_c('canvas',{ref:\"diagramCanvas\"})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport httpClient from '@/store/httpClient';\r\nconst Chart = require('chart.js');\r\nconst Utils = require('chart.js');\r\n\r\n@Component\r\nexport default class OrderVolumePerManufacturerReport extends Vue {\r\n private chart: any = null;\r\n private fertigers: any = [];\r\n private reports: any = [];\r\n private loading: boolean = false;\r\n private year: number = new Date().getFullYear();\r\n\r\n private mounted() {\r\n this.loadReport();\r\n }\r\n\r\n private get years()\r\n {\r\n var lastYears = []\r\n for (let index = new Date().getFullYear(); index >= 2012; index--) {\r\n lastYears.push(index);\r\n }\r\n return lastYears;\r\n }\r\n\r\n @Watch('year')\r\n private async loadReport()\r\n {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get(`Report/GetOrderVolumePerManufacturer?year=${this.year}`);\r\n const manufacturersResponse = await httpClient().get(`Manufacturer/GetManufacturers`);\r\n manufacturersResponse.data.sort((a:any, b:any) => a.id - b.id);\r\n this.fertigers = manufacturersResponse.data\r\n this.reports = response.data;\r\n console.log(this.fertigers);\r\n for (const report of this.reports) {\r\n for (const orderVolume of report.orderVolumes) {\r\n const fertiger = this.fertigers.filter((m: any) => m.id === orderVolume.fertigerId)[0];\r\n if (fertiger !== undefined) {\r\n orderVolume.fertigerId = fertiger.name;\r\n } else {\r\n console.log(report)\r\n }\r\n }\r\n }\r\n this.updateDiagram();\r\n } catch(err) {\r\n console.error('Loading order volume reports failed.');\r\n console.error(err);\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Fehler beim Laden der Reports. Siehe Konsole.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private getDatasets()\r\n {\r\n const colors = [\r\n '#635147',\r\n '#EFBB20',\r\n '#704214',\r\n '#468641',\r\n '#A3FF00',\r\n '#00F4C4',\r\n '#123524',\r\n '#007EFF',\r\n '#005A99',\r\n '#4B0082',\r\n '#A146FF',\r\n '#FF0090',\r\n '#FF2400',\r\n ]\r\n const relevantFertigers = this.fertigers.filter((f:any) => this.getData(f.name).some((e:number) => e > 0))\r\n var datasets: any = [...relevantFertigers.map((f:any, index:number) => \r\n {\r\n const fertigerSet = {\r\n label: f.name,\r\n data: this.getData(f.name),\r\n backgroundColor: colors[index]\r\n };\r\n return fertigerSet;\r\n })\r\n ];\r\n \r\n return datasets;\r\n }\r\n\r\n private getData(fertiger:string) {\r\n const data = [];\r\n for (const report of this.reports) {\r\n const orderOfFertiger = report.orderVolumes.filter((order:any) => order.fertigerId == fertiger)\r\n if (orderOfFertiger.length > 0) {\r\n data.push(orderOfFertiger[0].total);\r\n } else {\r\n data.push(0);\r\n }\r\n }\r\n return data;\r\n }\r\n\r\n private updateDiagram() {\r\n const labels = this.reports.map((r: any) => \r\n\t\t `${new Date(r.from).getMonth() + 1}.${new Date(r.from).getFullYear()}`);\r\n\r\n\t\t// Destroy the chart if one already exists.\r\n\t\tif (this.chart != null) {\r\n\t\t\tthis.chart.destroy();\r\n\t\t}\r\n\r\n const ctx = (this.$refs.diagramCanvas as any).getContext('2d');\r\n this.chart = new Chart(ctx, {\r\n // The type of chart we want to create\r\n type: 'line',\r\n // The data for our dataset\r\n data: {\r\n labels: labels,\r\n datasets: this.getDatasets()\r\n },\r\n options: {\r\n plugins: {\r\n title: {\r\n display: true,\r\n text: 'Umsatz'\r\n },\r\n },\r\n responsive: true,\r\n scales: {\r\n xAxes: [{\r\n stacked: true \r\n }],\r\n yAxes: [{\r\n stacked: true \r\n }]\r\n }\r\n }\r\n });\r\n this.chart.update();\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderVolumePerManufacturerReport.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderVolumePerManufacturerReport.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./OrderVolumePerManufacturerReport.vue?vue&type=template&id=8f82398c\"\nimport script from \"./OrderVolumePerManufacturerReport.vue?vue&type=script&lang=ts\"\nexport * from \"./OrderVolumePerManufacturerReport.vue?vue&type=script&lang=ts\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('h1',{staticClass:\"font-weight-light\"},[_vm._v(\"Bestellte Materialmengen\")]),_c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"sm12\":\"\",\"md6\":\"\",\"lg4\":\"\",\"pr-3\":\"\"}},[_c('date-picker',{attrs:{\"selectedDate\":_vm.startDate,\"pastDateAllowed\":true,\"futureDateAllowed\":false,\"label\":\"Zeitraum von:\"},on:{\"update:selectedDate\":function($event){return _vm.setStartDate($event)}}})],1),_c('v-flex',{attrs:{\"sm12\":\"\",\"md6\":\"\",\"lg4\":\"\"}},[_c('date-picker',{attrs:{\"selectedDate\":_vm.endDate,\"pastDateAllowed\":true,\"futureDateAllowed\":true,\"label\":\"Zeitraum bis:\"},on:{\"update:selectedDate\":function($event){return _vm.setEndDate($event)}}})],1),_c('v-flex',{attrs:{\"sm12\":\"\"}},[_c('v-layout',[_c('v-checkbox',{attrs:{\"label\":\"Nach Werkstoffen gruppieren\",\"title\":\"Werkstoffe werden auf der X-Achse angezeigt. Sonst Blechdicken\"},model:{value:(_vm.groupByWerkstoffe),callback:function ($$v) {_vm.groupByWerkstoffe=$$v},expression:\"groupByWerkstoffe\"}}),_c('v-radio-group',{model:{value:(_vm.reportedType),callback:function ($$v) {_vm.reportedType=$$v},expression:\"reportedType\"}},[_c('v-radio',{attrs:{\"label\":\"Gewicht [kg]\",\"value\":\"weight\"}}),_c('v-radio',{attrs:{\"label\":\"Anzahl Positionen\",\"value\":\"positions\"}})],1)],1)],1)],1)],1),(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\"}}):_vm._e(),_c('canvas',{ref:\"diagramCanvas\"})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport httpClient from '@/store/httpClient';\r\nimport DatePicker from '@/components/DatePicker.vue';\r\nconst Chart = require('chart.js');\r\nimport moment from 'moment';\r\n\r\nfunction groupBy(list: any, keyGetter: any) {\r\n const map = new Map();\r\n list.forEach((item:any) => {\r\n const key = keyGetter(item);\r\n const collection = map.get(key);\r\n if (!collection) {\r\n map.set(key, [item]);\r\n } else {\r\n collection.push(item);\r\n }\r\n });\r\n const array = Array.from(map, ([key, values]) => ({ key, values }));\r\n return array;\r\n}\r\n\r\n@Component({\r\n components: {\r\n DatePicker,\r\n }\r\n})\r\nexport default class OrderedMaterialsReport extends Vue {\r\n private chart: any = null;\r\n private orderedMaterials: any = [];\r\n private loading: boolean = false;\r\n private groupByWerkstoffe: boolean = true;\r\n private startDate: string = moment().format('YYYY-01-01');\r\n private reportedType: string = 'weight';\r\n private endDate: string = moment(moment().format('YYYY-01-01')).add(1, 'years').subtract(1, 'days').format('YYYY-MM-DD');\r\n\r\n private mounted() {\r\n this.loadReport();\r\n }\r\n\r\n \r\n private setStartDate(date: Date) {\r\n this.startDate = moment(date).format('YYYY-MM-DD');\r\n }\r\n private setEndDate(date: Date) {\r\n this.endDate = moment(date).format('YYYY-MM-DD');\r\n }\r\n\r\n @Watch('startDate')\r\n @Watch('endDate')\r\n @Watch('groupByWerkstoffe')\r\n @Watch('reportedType')\r\n private async loadReport()\r\n {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get(`Report/GetOrderedMaterialReport?from=${this.startDate}&to=${this.endDate}`);\r\n this.orderedMaterials = response.data.orderedMaterial;\r\n this.updateDiagram();\r\n } catch(err) {\r\n console.error('Loading report failed.');\r\n console.error(err);\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Fehler beim Laden der Reports. Siehe Konsole.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private getDatasets()\r\n {\r\n const colors = [\r\n '#264653',\r\n '#2A9D8F',\r\n '#E9C46A',\r\n '#F4A261',\r\n '#E76F51',\r\n '#6A994E',\r\n '#A7C957',\r\n '#F5CAC3',\r\n '#84A59D',\r\n '#F28482',\r\n '#F7E9A0',\r\n '#A8DADC',\r\n '#457B9D',\r\n '#1D3557',\r\n '#FF9F1C',\r\n '#2EC4B6',\r\n '#CBF3F0',\r\n '#FFBF69',\r\n '#ED6A5A',\r\n '#F2E2D2',\r\n\r\n ];\r\n\r\n const datasets:any = []\r\n let i = 0;\r\n if (this.groupByWerkstoffe) {\r\n for (const thickness of this.thicknessGroups) {\r\n const singleData = [...this.werkstoffGroups.map((g:any) => g.values.filter((w:any) => w.thickness === thickness.key).reduce(\r\n (a:any, b:any) => {\r\n if (this.reportedType === 'weight') {\r\n return a + Math.round(b.totalWeightInKg)\r\n } else if (this.reportedType === 'positions') {\r\n return a + Math.round(b.numberOfPositions)\r\n }\r\n }\r\n , 0))]\r\n datasets.push({\r\n label: thickness.key,\r\n data: singleData,\r\n backgroundColor: colors[i],\r\n stack: 'Stack 0',\r\n })\r\n i++\r\n }\r\n } else {\r\n for (const werkstoffGroup of this.werkstoffGroups) {\r\n const singleData = [...this.thicknessGroups.map((g:any) => g.values.filter((w:any) => w.werkstoffName === werkstoffGroup.key).reduce(\r\n (a:any, b:any) => {\r\n if (this.reportedType === 'weight') {\r\n return a + Math.round(b.totalWeightInKg)\r\n } else if (this.reportedType === 'positions') {\r\n return a + Math.round(b.numberOfPositions)\r\n }\r\n }\r\n , 0))]\r\n datasets.push({\r\n label: werkstoffGroup.key,\r\n data: singleData,\r\n backgroundColor: colors[i],\r\n stack: 'Stack 0',\r\n })\r\n i++\r\n }\r\n }\r\n\r\n return datasets;\r\n }\r\n\r\n private get werkstoffGroups() {\r\n return groupBy(this.orderedMaterials, (a : any) => a.werkstoffName).sort((a: any, b:any) => a.key > b.key ? 1 : b.key > a.key ? -1 : 0)\r\n }\r\n\r\n private get thicknessGroups() {\r\n const thicknesses = groupBy(this.orderedMaterials, (m:any) => m.thickness)\r\n return thicknesses.sort((a:any, b:any) => a.key - b.key )\r\n }\r\n\r\n private updateDiagram() {\r\n\r\n let labels = this.werkstoffGroups.map((g:any) => g.key)\r\n if (!this.groupByWerkstoffe) {\r\n labels = this.thicknessGroups.map((t: any) => t.key)\r\n }\r\n\r\n\t\t// Destroy the chart if one already exists.\r\n\t\tif (this.chart != null) {\r\n\t\t\tthis.chart.destroy();\r\n\t\t}\r\n\r\n const ctx = (this.$refs.diagramCanvas as any).getContext('2d');\r\n this.chart = new Chart(ctx, {\r\n // The type of chart we want to create\r\n type: 'bar',\r\n // The data for our dataset\r\n data: {\r\n labels: labels,\r\n datasets: this.getDatasets()\r\n },\r\n options: {\r\n plugins: {\r\n title: {\r\n display: true,\r\n text: 'Bestellte Mengen'\r\n },\r\n },\r\n responsive: true,\r\n scales: {\r\n xAxes: [{\r\n stacked: true \r\n }],\r\n yAxes: [{\r\n stacked: true,\r\n }]\r\n }\r\n }\r\n });\r\n\r\n this.chart.update();\r\n \r\n\r\n }\r\n}\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderedMaterials.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderedMaterials.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./OrderedMaterials.vue?vue&type=template&id=1ab29675\"\nimport script from \"./OrderedMaterials.vue?vue&type=script&lang=ts\"\nexport * from \"./OrderedMaterials.vue?vue&type=script&lang=ts\"\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","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Calculations.vue?vue&type=style&index=0&id=6b48eda8&prod&lang=css\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[(!_vm.isLoading && !_vm.request.blexonOrderId)?_c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',{staticClass:\"text-center\",attrs:{\"cols\":\"12\"}},[_vm._v(\"\\n\\t\\t\\t\\tDer Antrag konnte nicht gefunden werden.\\n\\t\\t\\t\")])],1)],1):(_vm.request.blexonOrderId > 0)?_c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\"}},[_c('v-form',{ref:\"form\",model:{value:(_vm.formValid),callback:function ($$v) {_vm.formValid=$$v},expression:\"formValid\"}},[_c('h2',{staticClass:\"mb-2\"},[_vm._v(\"Stornierungsanfrage zu Auftrag \"+_vm._s(_vm.request.blexonOrderId)+\" bearbeiten\")]),_c('v-layout',{attrs:{\"row\":\"\",\"align-center\":\"\"}},[_c('v-flex',{attrs:{\"xs3\":\"\"}},[_vm._v(\"\\n\\t\\t\\t\\tErstellt am: \"+_vm._s(_vm._f(\"formatDateAndTime\")(_vm.request.createdAt))+\"\\n\\t\\t\\t\")]),_c('v-flex',{attrs:{\"xs2\":\"\"}},[_vm._v(\"\\n\\t\\t\\t\\tForciert: \"+_vm._s(_vm.request.force ? 'Ja' : 'Nein')+\"\\n\\t\\t\\t\")]),_c('v-flex',{attrs:{\"xs5\":\"\"}},[_vm._v(\"\\n\\t\\t\\t\\tStatus: \"+_vm._s(_vm.getRequestStateText(_vm.request.state))+\"\\n\\t\\t\\t\")]),_c('v-flex',{attrs:{\"xs2\":\"\"}},[_c('v-text-field',{attrs:{\"rules\":_vm.requiredNonNegativeNumberRule,\"label\":\"Pauschale\",\"type\":\"number\"},model:{value:(_vm.request.fixCosts),callback:function ($$v) {_vm.$set(_vm.request, \"fixCosts\", _vm._n($$v))},expression:\"request.fixCosts\"}})],1)],1),_c('h3',[_vm._v(\"Positionen\")]),_c('v-layout',{staticClass:\"mb-2\",attrs:{\"row\":\"\"}},[_c('v-flex',{attrs:{\"xs1\":\"\"}},[_c('b',[_vm._v(\"Pos\")])]),_c('v-flex',{attrs:{\"xs2\":\"\"}},[_c('b',[_vm._v(\"Artikel Id\")])]),_c('v-flex',{attrs:{\"xs2\":\"\"}},[_c('b',[_vm._v(\"Vorschau\")])]),_c('v-flex',{attrs:{\"xs1\":\"\"}},[_c('b',[_vm._v(\"Menge\")])]),_c('v-flex',{attrs:{\"xs2\":\"\"}},[_c('b',[_vm._v(\"Verarbeitete Teile\")])]),_c('v-flex',{attrs:{\"xs2\":\"\"}},[_c('b',[_vm._v(\"Status\")])]),_c('v-flex',{attrs:{\"xs2\":\"\"}},[_c('b',[_vm._v(\"Kosten\")])])],1),_vm._l((_vm.request.positions),function(pos){return _c('v-layout',{key:pos.position,attrs:{\"row\":\"\",\"align-center\":\"\"}},[_c('v-flex',{attrs:{\"xs1\":\"\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(pos.position)+\"\\n\\t\\t\\t\")]),_c('v-flex',{attrs:{\"xs2\":\"\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(pos.articleId)+\"\\n\\t\\t\\t\")]),_c('v-flex',{attrs:{\"xs2\":\"\"}},[_c('v-img',{attrs:{\"contain\":\"\",\"width\":\"90px\",\"height\":\"90px\",\"src\":_vm.getThumbnailUrl(pos.articleId)}})],1),_c('v-flex',{attrs:{\"xs1\":\"\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(pos.quantity)+\"\\n\\t\\t\\t\")]),_c('v-flex',{attrs:{\"xs2\":\"\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(pos.partsProcessed)+\"\\n\\t\\t\\t\")]),_c('v-flex',{attrs:{\"xs2\":\"\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.getProcessStepText(pos.currentProcessStep))+\"\\n\\t\\t\\t\")]),_c('v-flex',{attrs:{\"xs2\":\"\"}},[_c('v-text-field',{attrs:{\"rules\":_vm.requiredNonNegativeNumberRule,\"dense\":\"\",\"type\":\"number\"},model:{value:(pos.cancellationCost),callback:function ($$v) {_vm.$set(pos, \"cancellationCost\", _vm._n($$v))},expression:\"pos.cancellationCost\"}})],1)],1)}),_c('v-divider'),_c('v-layout',{staticClass:\"mt-2\",attrs:{\"row\":\"\"}},[_c('v-spacer'),_c('v-flex',{attrs:{\"xs2\":\"\"}},[_c('b',[_vm._v(\"Total \"+_vm._s(_vm._f(\"format2Digit\")(_vm.subTotal)))])])],1),_c('v-layout',{staticClass:\"pa-0 mx-0 my-3\",attrs:{\"row\":\"\"}},[_c('v-btn',{on:{\"click\":_vm.goToOrders}},[_vm._v(\"\\n\\t\\t\\t\\tZurück\\n\\t\\t\\t\")]),_c('v-spacer'),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":!_vm.cancellationSettingsAreValid},on:{\"click\":function($event){return _vm.saveCost()}}},[(_vm.isLoading)?_c('v-progress-circular',{attrs:{\"size\":\"15\",\"indeterminate\":\"\"}}):_vm._e(),_vm._v(\"\\n\\t\\t\\t\\tSpeichern\\n\\t\\t\\t\")],1)],1)],2)],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop } from \"vue-property-decorator\";\r\nimport httpClient from \"../../store/httpClient\";\r\nimport rules from '@/store/rules'\r\n\r\n@Component\r\nexport default class EditCancellationRequest extends Vue {\r\n\t@Prop() \r\n\tprivate orderId!: number;\r\n\tprivate request: any = {};\r\n\tprivate isLoading: boolean = false;\r\n\tprivate formValid: boolean = true;\r\n\tprivate requiredNonNegativeNumberRule = rules.requiredNonNegativeNumberRule;\r\n\r\n\tprivate async mounted() {\r\n\t\tif (!this.requestIsLoaded) {\r\n\t\t\tawait this.loadRequest();\r\n\t\t}\r\n\t\tthis.request = this.$store.state.orderCancellations.filter((c: any) => c.blexonOrderId == this.orderId)[0];\r\n\t}\r\n\r\n\tprivate get requestIsLoaded() {\r\n\t\treturn (this.$store.state.orderCancellations !== null \r\n\t\t\t&& this.$store.state.orderCancellations.length > 0\r\n\t\t\t&& this.$store.state.orderCancellations.filter((c: any) => c.blexonOrderId == this.orderId)[0].blexonOrderId == this.orderId);\r\n\t}\r\n\r\n\tprivate get cancellationSettingsAreValid() {\r\n\t\treturn !this.isLoading && this.request != null && this.request.positions != null && this.formValid;\r\n\t}\r\n\r\n\tprivate get subTotal() {\r\n\t\tlet positionCost = this.request.positions.reduce((acc: number, pos: any) => acc + pos.cancellationCost, 0);\r\n\t\treturn this.request.fixCosts + parseFloat(positionCost);\r\n\t}\r\n\r\n\tprivate async loadRequest() {\r\n\t\ttry {\r\n\t\t\tthis.isLoading = true;\r\n const response = await httpClient().post('CustomerOrder/GetOrderCancellationRequestsByOrderIds', [this.orderId]);\r\n\t\t\tthis.$store.commit('addOrUpdateOrderCancellations', response.data)\r\n\t\t} catch (err) {\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Stornierung konnte nicht geladen werden.');\r\n\t\t} finally {\r\n\t\t\tthis.isLoading = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprivate async saveCost() {\r\n\t\tif (!this.cancellationSettingsAreValid) return false;\r\n\t\tconsole.log(\"saving cost...\");\r\n\t\ttry {\r\n\t\t\tthis.isLoading = true;\r\n\t\t\tawait httpClient().post(`CustomerOrder/UpdateCancellationCost`, this.request);\r\n\r\n\t\t\t// Update state\r\n\t\t\tthis.$store.commit('addOrUpdateOrderCancellations', [this.request])\r\n\t\t\tthis.$store.commit('setSnackbarText', 'Kosten wurden angepasst.');\r\n\t\t\tthis.goToOrders();\r\n\t\t} catch (err) {\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Kosten konnten nicht gespeichert werden.');\r\n\t\t} finally {\r\n\t\t\tthis.isLoading = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprivate getThumbnailUrl(articleId: number) {\r\n return process.env.VUE_APP_erpUrl + `article/getthumbnail?id=${articleId}`; \r\n\t}\r\n\r\n\tprivate goToOrders() {\r\n\t\tthis.$router.push({ name: 'order' });\r\n\t}\r\n\r\n\t\tprivate getProcessStepText(stepValue: number) {\r\n\t\tswitch (stepValue) {\r\n\t\t\tcase 0:\r\n\t\t\t\treturn \"Nicht gestartet\"\r\n\t\t\tcase 1:\r\n\t\t\t\treturn \"Programmiert\"\r\n\t\t\tcase 2:\r\n\t\t\t\treturn \"Geschnitten\"\r\n\t\t\tcase 3:\r\n\t\t\t\treturn \"Entgratet\"\r\n\t\t\tcase 4:\r\n\t\t\t\treturn \"Abgekantet\"\r\n\t\t\tcase 5:\r\n\t\t\t\treturn \"Beschichtet\"\r\n\t\t}\r\n\t}\r\n\r\n\tprivate getRequestStateText(stateValue: number) {\r\n\t\tswitch (stateValue) {\r\n\t\t\tcase 0:\r\n\t\t\t\treturn \"Kosten ermitteln\"\r\n\t\t\tcase 1:\r\n\t\t\t\treturn \"Warten auf Kundenentscheidung\"\r\n\t\t\tcase 2:\r\n\t\t\t\treturn \"Akzeptiert\"\r\n\t\t\tcase 3:\r\n\t\t\t\treturn \"Abgelehnt\"\r\n\t\t}\r\n\t}\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditCancellationRequest.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditCancellationRequest.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./EditCancellationRequest.vue?vue&type=template&id=1486d594&scoped=true\"\nimport script from \"./EditCancellationRequest.vue?vue&type=script&lang=ts\"\nexport * from \"./EditCancellationRequest.vue?vue&type=script&lang=ts\"\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 \"1486d594\",\n null\n \n)\n\nexport default component.exports","var isObject = require('./_is-object');\nmodule.exports = function (it, TYPE) {\n if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');\n return it;\n};\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dashboard.vue?vue&type=style&index=0&id=9684da0e&prod&lang=css\"","\r\n\r\nexport enum PowderApplication {\r\n Internal = 0,\r\n ExternalIndustry = 10,\r\n ExternalFassade = 20,\r\n}\r\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[(_vm.loading)?_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',{staticClass:\"text-xs-center\",attrs:{\"cols\":\"12\"}},[_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"color\":\"accent\"}})],1)],1):_vm._e(),(_vm.regionSettings.length > 0)?_c('div',[_c('h2',[_vm._v(\"Regionale Einstellungen\")]),_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":!_vm.validForms},on:{\"click\":_vm.updateSettings}},[_vm._v(\"Speichern\")])],1),_c('v-tabs',{staticClass:\"pb-3\"},[_vm._l((_vm.regionSettings),function(region){return _c('v-tab',{key:region.id},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(region.name)+\"\\n\\t\\t\\t\")])}),_vm._l((_vm.regionSettings),function(region){return _c('v-tab-item',{key:region.id},[_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-4\":\"\"}},[_c('v-expansion-panel',{model:{value:(_vm.regionOpenExpand),callback:function ($$v) {_vm.regionOpenExpand=$$v},expression:\"regionOpenExpand\"}},[_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('b',[_vm._v(\"Regionsweite Einstellungen\")]),_vm._v(\" \"),(!region.valid)?_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"warning\")]):_vm._e()],1),_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formRegion\",refInFor:true,model:{value:(region.valid),callback:function ($$v) {_vm.$set(region, \"valid\", $$v)},expression:\"region.valid\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},_vm._l((region.mwstRates.slice(-2).reverse()),function(rate,index){return _c('v-flex',{key:index,attrs:{\"xs6\":\"\",\"sm4\":\"\",\"md3\":\"\",\"lg2\":\"\",\"xl1\":\"\"}},[(index === 0)?_c('div',{staticClass:\"caption\"},[_vm._v(\"MwSt-Raten\")]):_c('div',[_vm._v(\" \")]),_c('div',[_vm._v(_vm._s(rate.rate)+\"% gültig ab \"+_vm._s(_vm._f(\"formatDate\")(rate.validFrom)))])])}),1),_c('v-text-field',{attrs:{\"label\":\"MWST-Nummer\",\"rules\":_vm.requiredRule},model:{value:(region.mwstNummer),callback:function ($$v) {_vm.$set(region, \"mwstNummer\", $$v)},expression:\"region.mwstNummer\"}}),_c('v-text-field',{attrs:{\"label\":\"IBAN\",\"rules\":_vm.requiredRule},model:{value:(region.iban),callback:function ($$v) {_vm.$set(region, \"iban\", $$v)},expression:\"region.iban\"}}),_c('v-text-field',{attrs:{\"label\":\"BIC\",\"rules\":_vm.requiredRule},model:{value:(region.bic),callback:function ($$v) {_vm.$set(region, \"bic\", $$v)},expression:\"region.bic\"}}),_c('v-text-field',{attrs:{\"label\":\"Currency\",\"rules\":_vm.requiredRule},model:{value:(region.currency),callback:function ($$v) {_vm.$set(region, \"currency\", $$v)},expression:\"region.currency\"}}),_c('v-text-field',{attrs:{\"label\":\"Payment Time (Erlaubte Tage bis zur Zahlung der Rechnung)\",\"rules\":_vm.requiredNonNegativeIntegerRule},model:{value:(region.paymentTime),callback:function ($$v) {_vm.$set(region, \"paymentTime\", $$v)},expression:\"region.paymentTime\"}}),_c('v-text-field',{attrs:{\"label\":\"Pallet Ersatzkosten\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(region.palletReplacementCost),callback:function ($$v) {_vm.$set(region, \"palletReplacementCost\", $$v)},expression:\"region.palletReplacementCost\"}}),_c('v-text-field',{attrs:{\"label\":\"Pallet Rahmen Ersatzkosten\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(region.palletFrameReplacementCost),callback:function ($$v) {_vm.$set(region, \"palletFrameReplacementCost\", $$v)},expression:\"region.palletFrameReplacementCost\"}}),_c('v-text-field',{attrs:{\"label\":\"Pallet Deckel Ersatzkosten\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(region.palletLidReplacementCost),callback:function ($$v) {_vm.$set(region, \"palletLidReplacementCost\", $$v)},expression:\"region.palletLidReplacementCost\"}})],1)],1),_c('v-expansion-panel',{model:{value:(_vm.holidayOpenExpand),callback:function ($$v) {_vm.holidayOpenExpand=$$v},expression:\"holidayOpenExpand\"}},[_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('b',[_vm._v(\"Feiertage\")])]),_c('v-container',{staticClass:\"pt-0 pb-2\",attrs:{\"fluid\":\"\"}},[_c('p',[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\tDie Länderkürzel dienen nur zum besseren Verständnis der Feiertage. Sie sollen helfen zu erkennen, aus\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\twelcher Region ein Feiertag stammt (z.B. Staatsfeiertag (AT)).\"),_c('br'),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\tEntscheidend dafür, ob Blexon den Feiertag in der entsprechenden Region berücksichtigt, ist die\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\tCheckbox.\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\")]),_vm._l((_vm.holidayTypes),function(holiday){return _c('div',{key:holiday.id,staticClass:\"pb-1\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(region.holidayTypesIds),expression:\"region.holidayTypesIds\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"value\":holiday.id,\"checked\":Array.isArray(region.holidayTypesIds)?_vm._i(region.holidayTypesIds,holiday.id)>-1:(region.holidayTypesIds)},on:{\"change\":function($event){var $$a=region.holidayTypesIds,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=holiday.id,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(region, \"holidayTypesIds\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(region, \"holidayTypesIds\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(region, \"holidayTypesIds\", $$c)}}}}),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(holiday.localName)+\" (\"+_vm._s(holiday.countryCodes)+\")\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\")])})],2)],1)],1)],1)],1),_c('h3',{staticClass:\"mt-3\"},[_vm._v(\"Preismodell-Einstellungen\")]),_c('v-tabs',{staticClass:\"mt-2\"},[_vm._l((region.priceSettings),function(set){return _c('v-tab',{key:set.id},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.getEnumNameFromValue(set.priceModel))+\"\\n\\t\\t\\t\\t\\t\\t\")])}),_vm._l((region.priceSettings),function(set){return _c('v-tab-item',{key:set.id},[_c('v-expansion-panel',{model:{value:(_vm.openExpand),callback:function ($$v) {_vm.openExpand=$$v},expression:\"openExpand\"}},[_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('b',[_vm._v(\"Allgemein\")]),_vm._v(\" \"),(!set.validAllgemein)?_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"warning\")]):_vm._e()],1),(_vm.isStandard(set.priceModel))?_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formAllgemein\",refInFor:true,model:{value:(set.validAllgemein),callback:function ($$v) {_vm.$set(set, \"validAllgemein\", $$v)},expression:\"set.validAllgemein\"}},[_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Overall\",\"rules\":_vm.requiredNumber0To1Rule},model:{value:(set.blexonMargeOverall),callback:function ($$v) {_vm.$set(set, \"blexonMargeOverall\", $$v)},expression:\"set.blexonMargeOverall\"}}),_c('v-text-field',{attrs:{\"label\":\"Fertiger Marge Overall\",\"rules\":_vm.requiredNumber0To1Rule},model:{value:(set.fertigerMargeOverall),callback:function ($$v) {_vm.$set(set, \"fertigerMargeOverall\", $$v)},expression:\"set.fertigerMargeOverall\"}}),_c('v-text-field',{attrs:{\"label\":\"Energiekosten Faktor\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.energiekostenFaktor),callback:function ($$v) {_vm.$set(set, \"energiekostenFaktor\", $$v)},expression:\"set.energiekostenFaktor\"}}),_c('v-text-field',{attrs:{\"label\":\"Verzug für ersten Liefertermin in Tagen\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.ersterLieferterminVerzugTage),callback:function ($$v) {_vm.$set(set, \"ersterLieferterminVerzugTage\", $$v)},expression:\"set.ersterLieferterminVerzugTage\"}})],1)],1):_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formAllgemein\",refInFor:true,model:{value:(set.validAllgemein),callback:function ($$v) {_vm.$set(set, \"validAllgemein\", $$v)},expression:\"set.validAllgemein\"}},[_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Overall\",\"rules\":_vm.optionalNumber0To1Rule,\"placeholder\":_vm.getPlaceholder(region.id, 'blexonMargeOverall')},on:{\"keyup\":function($event){set.blexonMargeOverall.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.blexonMargeOverall = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.blexonMargeOverall = set.blexonMargeOverall.trim())}},model:{value:(set.blexonMargeOverall),callback:function ($$v) {_vm.$set(set, \"blexonMargeOverall\", $$v)},expression:\"set.blexonMargeOverall\"}}),_c('v-text-field',{attrs:{\"label\":\"Fertiger Marge Overall\",\"rules\":_vm.optionalNumber0To1Rule,\"placeholder\":_vm.getPlaceholder(region.id, 'fertigerMargeOverall')},on:{\"keyup\":function($event){set.fertigerMargeOverall.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.fertigerMargeOverall = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.fertigerMargeOverall = set.fertigerMargeOverall.trim())}},model:{value:(set.fertigerMargeOverall),callback:function ($$v) {_vm.$set(set, \"fertigerMargeOverall\", $$v)},expression:\"set.fertigerMargeOverall\"}}),_c('v-text-field',{attrs:{\"label\":\"Energiekosten Faktor\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'energiekostenFaktor')},on:{\"keyup\":function($event){set.energiekostenFaktor.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.energiekostenFaktor = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.energiekostenFaktor = set.energiekostenFaktor.trim())}},model:{value:(set.energiekostenFaktor),callback:function ($$v) {_vm.$set(set, \"energiekostenFaktor\", $$v)},expression:\"set.energiekostenFaktor\"}}),_c('v-text-field',{attrs:{\"label\":\"Verzug für ersten Liefertermin in Tagen\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'ersterLieferterminVerzugTage')},on:{\"keyup\":function($event){set.ersterLieferterminVerzugTage.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.ersterLieferterminVerzugTage = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.ersterLieferterminVerzugTage = set.energiekostenFaktor.trim())}},model:{value:(set.ersterLieferterminVerzugTage),callback:function ($$v) {_vm.$set(set, \"ersterLieferterminVerzugTage\", $$v)},expression:\"set.ersterLieferterminVerzugTage\"}})],1)],1)],1),_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('b',[_vm._v(\"NC Programm\")]),_vm._v(\" \"),(!set.validNcProgramm)?_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"warning\")]):_vm._e()],1),(_vm.isStandard(set.priceModel))?_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formNcprogramm\",refInFor:true,model:{value:(set.validNcProgramm),callback:function ($$v) {_vm.$set(set, \"validNcProgramm\", $$v)},expression:\"set.validNcProgramm\"}},[_c('v-text-field',{attrs:{\"label\":\"NC-Erzeugung Pauschale\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.ncErzeugungPauschale),callback:function ($$v) {_vm.$set(set, \"ncErzeugungPauschale\", $$v)},expression:\"set.ncErzeugungPauschale\"}}),_c('v-text-field',{attrs:{\"label\":\"NC-Erzeugung Bendpart Pauschale\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.ncErzeugungBendpartPauschale),callback:function ($$v) {_vm.$set(set, \"ncErzeugungBendpartPauschale\", $$v)},expression:\"set.ncErzeugungBendpartPauschale\"}}),_c('v-text-field',{attrs:{\"label\":\"NC-Erzeugung Features Pauschale\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.ncErzeugungFeaturesPauschale),callback:function ($$v) {_vm.$set(set, \"ncErzeugungFeaturesPauschale\", $$v)},expression:\"set.ncErzeugungFeaturesPauschale\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge NC-Erzeugung\",\"rules\":_vm.requiredNumber0To1Rule},model:{value:(set.blexonMargeNCErzeugung),callback:function ($$v) {_vm.$set(set, \"blexonMargeNCErzeugung\", $$v)},expression:\"set.blexonMargeNCErzeugung\"}})],1)],1):_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formNcprogramm\",refInFor:true,model:{value:(set.validNcProgramm),callback:function ($$v) {_vm.$set(set, \"validNcProgramm\", $$v)},expression:\"set.validNcProgramm\"}},[_c('v-text-field',{attrs:{\"label\":\"NC-Erzeugung Pauschale\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'ncErzeugungPauschale')},on:{\"keyup\":function($event){set.ncErzeugungPauschale.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.ncErzeugungPauschale = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.ncErzeugungPauschale = set.ncErzeugungPauschale.trim())}},model:{value:(set.ncErzeugungPauschale),callback:function ($$v) {_vm.$set(set, \"ncErzeugungPauschale\", $$v)},expression:\"set.ncErzeugungPauschale\"}}),_c('v-text-field',{attrs:{\"label\":\"NC-Erzeugung Bendpart Pauschale\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'ncErzeugungBendpartPauschale')},on:{\"keyup\":function($event){set.ncErzeugungBendpartPauschale.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.ncErzeugungBendpartPauschale = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.ncErzeugungBendpartPauschale = set.ncErzeugungBendpartPauschale.trim())}},model:{value:(set.ncErzeugungBendpartPauschale),callback:function ($$v) {_vm.$set(set, \"ncErzeugungBendpartPauschale\", $$v)},expression:\"set.ncErzeugungBendpartPauschale\"}}),_c('v-text-field',{attrs:{\"label\":\"NC-Erzeugung Features Pauschale\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'ncErzeugungFeaturesPauschale')},on:{\"keyup\":function($event){set.ncErzeugungFeaturesPauschale.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.ncErzeugungFeaturesPauschale = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.ncErzeugungFeaturesPauschale = set.ncErzeugungFeaturesPauschale.trim())}},model:{value:(set.ncErzeugungFeaturesPauschale),callback:function ($$v) {_vm.$set(set, \"ncErzeugungFeaturesPauschale\", $$v)},expression:\"set.ncErzeugungFeaturesPauschale\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge NC-Erzeugung\",\"rules\":_vm.optionalNumber0To1Rule,\"placeholder\":_vm.getPlaceholder(region.id, 'blexonMargeNCErzeugung')},on:{\"keyup\":function($event){set.blexonMargeNCErzeugung.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.blexonMargeNCErzeugung = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.blexonMargeNCErzeugung = set.blexonMargeNCErzeugung.trim())}},model:{value:(set.blexonMargeNCErzeugung),callback:function ($$v) {_vm.$set(set, \"blexonMargeNCErzeugung\", $$v)},expression:\"set.blexonMargeNCErzeugung\"}})],1)],1)],1),_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('b',[_vm._v(\"Schneiden\")]),_vm._v(\" \"),(!set.validSchneiden)?_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"warning\")]):_vm._e()],1),(_vm.isStandard(set.priceModel))?_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formSchneiden\",refInFor:true,model:{value:(set.validSchneiden),callback:function ($$v) {_vm.$set(set, \"validSchneiden\", $$v)},expression:\"set.validSchneiden\"}},[_c('v-text-field',{attrs:{\"label\":\"Einrichtkosten Pauschale\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.einrichtkostenPauschale),callback:function ($$v) {_vm.$set(set, \"einrichtkostenPauschale\", $$v)},expression:\"set.einrichtkostenPauschale\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Einrichtkosten\",\"rules\":_vm.requiredNumber0To1Rule},model:{value:(set.blexonMargeEinrichtkosten),callback:function ($$v) {_vm.$set(set, \"blexonMargeEinrichtkosten\", $$v)},expression:\"set.blexonMargeEinrichtkosten\"}}),_c('v-text-field',{attrs:{\"label\":\"Stundensatz Lasermaschine\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.stundensatzLasermaschine),callback:function ($$v) {_vm.$set(set, \"stundensatzLasermaschine\", $$v)},expression:\"set.stundensatzLasermaschine\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Lasermaschine\",\"rules\":_vm.requiredNumber0To1Rule},model:{value:(set.blexonMargeLasermaschine),callback:function ($$v) {_vm.$set(set, \"blexonMargeLasermaschine\", $$v)},expression:\"set.blexonMargeLasermaschine\"}}),_c('v-text-field',{attrs:{\"label\":\"Stundensatz Kombimaschine\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.stundensatzKombimaschine),callback:function ($$v) {_vm.$set(set, \"stundensatzKombimaschine\", $$v)},expression:\"set.stundensatzKombimaschine\"}})],1)],1):_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formSchneiden\",refInFor:true,model:{value:(set.validSchneiden),callback:function ($$v) {_vm.$set(set, \"validSchneiden\", $$v)},expression:\"set.validSchneiden\"}},[_c('v-text-field',{attrs:{\"label\":\"Einrichtkosten Pauschale\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'einrichtkostenPauschale')},on:{\"keyup\":function($event){set.einrichtkostenPauschale.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.einrichtkostenPauschale = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.einrichtkostenPauschale = set.einrichtkostenPauschale.trim())}},model:{value:(set.einrichtkostenPauschale),callback:function ($$v) {_vm.$set(set, \"einrichtkostenPauschale\", $$v)},expression:\"set.einrichtkostenPauschale\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Einrichtkosten\",\"rules\":_vm.optionalNumber0To1Rule,\"placeholder\":_vm.getPlaceholder(region.id, 'blexonMargeEinrichtkosten')},on:{\"keyup\":function($event){set.blexonMargeEinrichtkosten.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.blexonMargeEinrichtkosten = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.blexonMargeEinrichtkosten = set.blexonMargeEinrichtkosten.trim())}},model:{value:(set.blexonMargeEinrichtkosten),callback:function ($$v) {_vm.$set(set, \"blexonMargeEinrichtkosten\", $$v)},expression:\"set.blexonMargeEinrichtkosten\"}}),_c('v-text-field',{attrs:{\"label\":\"Stundensatz Lasermaschine\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'stundensatzLasermaschine')},on:{\"keyup\":function($event){set.stundensatzLasermaschine.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.stundensatzLasermaschine = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.stundensatzLasermaschine = set.stundensatzLasermaschine.trim())}},model:{value:(set.stundensatzLasermaschine),callback:function ($$v) {_vm.$set(set, \"stundensatzLasermaschine\", $$v)},expression:\"set.stundensatzLasermaschine\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Lasermaschine\",\"rules\":_vm.optionalNumber0To1Rule,\"placeholder\":_vm.getPlaceholder(region.id, 'blexonMargeLasermaschine')},on:{\"keyup\":function($event){set.blexonMargeLasermaschine.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.blexonMargeLasermaschine = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.blexonMargeLasermaschine = set.blexonMargeLasermaschine.trim())}},model:{value:(set.blexonMargeLasermaschine),callback:function ($$v) {_vm.$set(set, \"blexonMargeLasermaschine\", $$v)},expression:\"set.blexonMargeLasermaschine\"}}),_c('v-text-field',{attrs:{\"label\":\"Stundensatz Kombimaschine\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'stundensatzKombimaschine')},on:{\"keyup\":function($event){set.stundensatzKombimaschine.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.stundensatzKombimaschine = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.stundensatzKombimaschine = set.stundensatzKombimaschine.trim())}},model:{value:(set.stundensatzKombimaschine),callback:function ($$v) {_vm.$set(set, \"stundensatzKombimaschine\", $$v)},expression:\"set.stundensatzKombimaschine\"}})],1)],1)],1),_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('b',[_vm._v(\"Features\")]),_vm._v(\" \"),(!set.validFeatures)?_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"warning\")]):_vm._e()],1),(_vm.isStandard(set.priceModel))?_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formFeatures\",refInFor:true,model:{value:(set.validFeatures),callback:function ($$v) {_vm.$set(set, \"validFeatures\", $$v)},expression:\"set.validFeatures\"}},[_c('v-text-field',{attrs:{\"label\":\"Pauschale pro Feature\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.pauschaleProFeature),callback:function ($$v) {_vm.$set(set, \"pauschaleProFeature\", $$v)},expression:\"set.pauschaleProFeature\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Features\",\"rules\":_vm.requiredNumber0To1Rule},model:{value:(set.blexonMargeFeatures),callback:function ($$v) {_vm.$set(set, \"blexonMargeFeatures\", $$v)},expression:\"set.blexonMargeFeatures\"}}),_c('v-text-field',{attrs:{\"label\":\"Pauschale Erstes Werkzeug\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.pauschaleErstesWerkzeug),callback:function ($$v) {_vm.$set(set, \"pauschaleErstesWerkzeug\", $$v)},expression:\"set.pauschaleErstesWerkzeug\"}}),_c('v-text-field',{attrs:{\"label\":\"Pauschale Weiteres Werkzeug\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.pauschaleWeiteresWerkzeug),callback:function ($$v) {_vm.$set(set, \"pauschaleWeiteresWerkzeug\", $$v)},expression:\"set.pauschaleWeiteresWerkzeug\"}})],1)],1):_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formFeatures\",refInFor:true,model:{value:(set.validFeatures),callback:function ($$v) {_vm.$set(set, \"validFeatures\", $$v)},expression:\"set.validFeatures\"}},[_c('v-text-field',{attrs:{\"label\":\"Pauschale pro Feature\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'pauschaleProFeature')},on:{\"keyup\":function($event){set.pauschaleProFeature.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.pauschaleProFeature = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.pauschaleProFeature = set.pauschaleProFeature.trim())}},model:{value:(set.pauschaleProFeature),callback:function ($$v) {_vm.$set(set, \"pauschaleProFeature\", $$v)},expression:\"set.pauschaleProFeature\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Features\",\"rules\":_vm.optionalNumber0To1Rule,\"placeholder\":_vm.getPlaceholder(region.id, 'blexonMargeFeatures')},on:{\"keyup\":function($event){set.blexonMargeFeatures.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.blexonMargeFeatures = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.blexonMargeFeatures = set.blexonMargeFeatures.trim())}},model:{value:(set.blexonMargeFeatures),callback:function ($$v) {_vm.$set(set, \"blexonMargeFeatures\", $$v)},expression:\"set.blexonMargeFeatures\"}}),_c('v-text-field',{attrs:{\"label\":\"Pauschale Erstes Werkzeug\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'pauschaleErstesWerkzeug')},on:{\"keyup\":function($event){set.pauschaleErstesWerkzeug.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.pauschaleErstesWerkzeug = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.pauschaleErstesWerkzeug = set.pauschaleErstesWerkzeug.trim())}},model:{value:(set.pauschaleErstesWerkzeug),callback:function ($$v) {_vm.$set(set, \"pauschaleErstesWerkzeug\", $$v)},expression:\"set.pauschaleErstesWerkzeug\"}}),_c('v-text-field',{attrs:{\"label\":\"Pauschale Weiteres Werkzeug\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'pauschaleWeiteresWerkzeug')},on:{\"keyup\":function($event){set.pauschaleWeiteresWerkzeug.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.pauschaleWeiteresWerkzeug = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.pauschaleWeiteresWerkzeug = set.pauschaleWeiteresWerkzeug.trim())}},model:{value:(set.pauschaleWeiteresWerkzeug),callback:function ($$v) {_vm.$set(set, \"pauschaleWeiteresWerkzeug\", $$v)},expression:\"set.pauschaleWeiteresWerkzeug\"}})],1)],1)],1),_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('b',[_vm._v(\"Entgraten\")]),_vm._v(\" \"),(!set.validEntgraten)?_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"warning\")]):_vm._e()],1),(_vm.isStandard(set.priceModel))?_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formEntgraten\",refInFor:true,model:{value:(set.validEntgraten),callback:function ($$v) {_vm.$set(set, \"validEntgraten\", $$v)},expression:\"set.validEntgraten\"}},[_c('v-text-field',{attrs:{\"label\":\"Stundensatz Manuelles Entgraten\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.stundensatzManuellesEntgraten),callback:function ($$v) {_vm.$set(set, \"stundensatzManuellesEntgraten\", $$v)},expression:\"set.stundensatzManuellesEntgraten\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Manuelles Entgraten\",\"rules\":_vm.requiredNumber0To1Rule},model:{value:(set.blexonMargeManuellesEntgraten),callback:function ($$v) {_vm.$set(set, \"blexonMargeManuellesEntgraten\", $$v)},expression:\"set.blexonMargeManuellesEntgraten\"}}),_c('v-text-field',{attrs:{\"label\":\"Stundensatz Webern\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.stundensatzWebern),callback:function ($$v) {_vm.$set(set, \"stundensatzWebern\", $$v)},expression:\"set.stundensatzWebern\"}}),_c('v-text-field',{attrs:{\"label\":\"Zusatzkosten Webern\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.zusatzkostenWebern),callback:function ($$v) {_vm.$set(set, \"zusatzkostenWebern\", $$v)},expression:\"set.zusatzkostenWebern\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Webern\",\"rules\":_vm.requiredNumber0To1Rule},model:{value:(set.blexonMargeWebern),callback:function ($$v) {_vm.$set(set, \"blexonMargeWebern\", $$v)},expression:\"set.blexonMargeWebern\"}}),_c('v-text-field',{attrs:{\"label\":\"Stundensatz Trowalisieren\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.stundensatzTrowalisieren),callback:function ($$v) {_vm.$set(set, \"stundensatzTrowalisieren\", $$v)},expression:\"set.stundensatzTrowalisieren\"}}),_c('v-text-field',{attrs:{\"label\":\"Zusatzkosten Trowalisieren\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.zusatzkostenTrowalisieren),callback:function ($$v) {_vm.$set(set, \"zusatzkostenTrowalisieren\", $$v)},expression:\"set.zusatzkostenTrowalisieren\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Trowalisieren\",\"rules\":_vm.requiredNumber0To1Rule},model:{value:(set.blexonMargeTrowalisieren),callback:function ($$v) {_vm.$set(set, \"blexonMargeTrowalisieren\", $$v)},expression:\"set.blexonMargeTrowalisieren\"}})],1)],1):_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formEntgraten\",refInFor:true,model:{value:(set.validEntgraten),callback:function ($$v) {_vm.$set(set, \"validEntgraten\", $$v)},expression:\"set.validEntgraten\"}},[_c('v-text-field',{attrs:{\"label\":\"Stundensatz Manuelles Entgraten\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'stundensatzManuellesEntgraten')},on:{\"keyup\":function($event){set.stundensatzManuellesEntgraten.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.stundensatzManuellesEntgraten = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.stundensatzManuellesEntgraten = set.stundensatzManuellesEntgraten.trim())}},model:{value:(set.stundensatzManuellesEntgraten),callback:function ($$v) {_vm.$set(set, \"stundensatzManuellesEntgraten\", $$v)},expression:\"set.stundensatzManuellesEntgraten\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Manuelles Entgraten\",\"rules\":_vm.optionalNumber0To1Rule,\"placeholder\":_vm.getPlaceholder(region.id, 'blexonMargeManuellesEntgraten')},on:{\"keyup\":function($event){set.blexonMargeManuellesEntgraten.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.blexonMargeManuellesEntgraten = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.blexonMargeManuellesEntgraten = set.blexonMargeManuellesEntgraten.trim())}},model:{value:(set.blexonMargeManuellesEntgraten),callback:function ($$v) {_vm.$set(set, \"blexonMargeManuellesEntgraten\", $$v)},expression:\"set.blexonMargeManuellesEntgraten\"}}),_c('v-text-field',{attrs:{\"label\":\"Stundensatz Webern\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'stundensatzWebern')},on:{\"keyup\":function($event){set.stundensatzWebern.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.stundensatzWebern = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.stundensatzWebern = set.stundensatzWebern.trim())}},model:{value:(set.stundensatzWebern),callback:function ($$v) {_vm.$set(set, \"stundensatzWebern\", $$v)},expression:\"set.stundensatzWebern\"}}),_c('v-text-field',{attrs:{\"label\":\"Zusatzkosten Webern\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'zusatzkostenWebern')},on:{\"keyup\":function($event){set.zusatzkostenWebern.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.zusatzkostenWebern = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.zusatzkostenWebern = set.zusatzkostenWebern.trim())}},model:{value:(set.zusatzkostenWebern),callback:function ($$v) {_vm.$set(set, \"zusatzkostenWebern\", $$v)},expression:\"set.zusatzkostenWebern\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Webern\",\"rules\":_vm.optionalNumber0To1Rule,\"placeholder\":_vm.getPlaceholder(region.id, 'blexonMargeWebern')},on:{\"keyup\":function($event){set.blexonMargeWebern.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.blexonMargeWebern = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.blexonMargeWebern = set.blexonMargeWebern.trim())}},model:{value:(set.blexonMargeWebern),callback:function ($$v) {_vm.$set(set, \"blexonMargeWebern\", $$v)},expression:\"set.blexonMargeWebern\"}}),_c('v-text-field',{attrs:{\"label\":\"Stundensatz Trowalisieren\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'stundensatzTrowalisieren')},on:{\"keyup\":function($event){set.stundensatzTrowalisieren.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.stundensatzTrowalisieren = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.stundensatzTrowalisieren = set.stundensatzTrowalisieren.trim())}},model:{value:(set.stundensatzTrowalisieren),callback:function ($$v) {_vm.$set(set, \"stundensatzTrowalisieren\", $$v)},expression:\"set.stundensatzTrowalisieren\"}}),_c('v-text-field',{attrs:{\"label\":\"Zusatzkosten Trowalisieren\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'zusatzkostenTrowalisieren')},on:{\"keyup\":function($event){set.zusatzkostenTrowalisieren.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.zusatzkostenTrowalisieren = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.zusatzkostenTrowalisieren = set.zusatzkostenTrowalisieren.trim())}},model:{value:(set.zusatzkostenTrowalisieren),callback:function ($$v) {_vm.$set(set, \"zusatzkostenTrowalisieren\", $$v)},expression:\"set.zusatzkostenTrowalisieren\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Trowalisieren\",\"rules\":_vm.optionalNumber0To1Rule,\"placeholder\":_vm.getPlaceholder(region.id, 'blexonMargeTrowalisieren')},on:{\"keyup\":function($event){set.blexonMargeTrowalisieren.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.blexonMargeTrowalisieren = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.blexonMargeTrowalisieren = set.blexonMargeTrowalisieren.trim())}},model:{value:(set.blexonMargeTrowalisieren),callback:function ($$v) {_vm.$set(set, \"blexonMargeTrowalisieren\", $$v)},expression:\"set.blexonMargeTrowalisieren\"}})],1)],1)],1),_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('b',[_vm._v(\"Biegen\")]),_vm._v(\" \"),(!set.validBiegen)?_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"warning\")]):_vm._e()],1),(_vm.isStandard(set.priceModel))?_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formBiegen\",refInFor:true,model:{value:(set.validBiegen),callback:function ($$v) {_vm.$set(set, \"validBiegen\", $$v)},expression:\"set.validBiegen\"}},[_c('v-text-field',{attrs:{\"label\":\"Stundensatz Biegemaschine\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.stundensatzBiegemaschine),callback:function ($$v) {_vm.$set(set, \"stundensatzBiegemaschine\", $$v)},expression:\"set.stundensatzBiegemaschine\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Biegemaschine\",\"rules\":_vm.requiredNumber0To1Rule},model:{value:(set.blexonMargeBiegemaschine),callback:function ($$v) {_vm.$set(set, \"blexonMargeBiegemaschine\", $$v)},expression:\"set.blexonMargeBiegemaschine\"}})],1)],1):_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formBiegen\",refInFor:true,model:{value:(set.validBiegen),callback:function ($$v) {_vm.$set(set, \"validBiegen\", $$v)},expression:\"set.validBiegen\"}},[_c('v-text-field',{attrs:{\"label\":\"Stundensatz Biegemaschine\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'stundensatzBiegemaschine')},on:{\"keyup\":function($event){set.stundensatzBiegemaschine.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.stundensatzBiegemaschine = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.stundensatzBiegemaschine = set.stundensatzBiegemaschine.trim())}},model:{value:(set.stundensatzBiegemaschine),callback:function ($$v) {_vm.$set(set, \"stundensatzBiegemaschine\", $$v)},expression:\"set.stundensatzBiegemaschine\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Biegemaschine\",\"rules\":_vm.optionalNumber0To1Rule,\"placeholder\":_vm.getPlaceholder(region.id, 'blexonMargeBiegemaschine')},on:{\"keyup\":function($event){set.blexonMargeBiegemaschine.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.blexonMargeBiegemaschine = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.blexonMargeBiegemaschine = set.blexonMargeBiegemaschine.trim())}},model:{value:(set.blexonMargeBiegemaschine),callback:function ($$v) {_vm.$set(set, \"blexonMargeBiegemaschine\", $$v)},expression:\"set.blexonMargeBiegemaschine\"}})],1)],1)],1),_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('b',[_vm._v(\"Schweißen\")]),_vm._v(\" \"),(!set.validSchweissen)?_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"warning\")]):_vm._e()],1),(_vm.isStandard(set.priceModel))?_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formSchweissen\",refInFor:true,model:{value:(set.validSchweissen),callback:function ($$v) {_vm.$set(set, \"validSchweissen\", $$v)},expression:\"set.validSchweissen\"}},[_c('v-text-field',{attrs:{\"label\":\"Stundensatz Schweissen\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.stundensatzSchweissen),callback:function ($$v) {_vm.$set(set, \"stundensatzSchweissen\", $$v)},expression:\"set.stundensatzSchweissen\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Schweissen\",\"rules\":_vm.requiredNumber0To1Rule},model:{value:(set.blexonMargeSchweissen),callback:function ($$v) {_vm.$set(set, \"blexonMargeSchweissen\", $$v)},expression:\"set.blexonMargeSchweissen\"}})],1)],1):_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formSchweissen\",refInFor:true,model:{value:(set.validSchweissen),callback:function ($$v) {_vm.$set(set, \"validSchweissen\", $$v)},expression:\"set.validSchweissen\"}},[_c('v-text-field',{attrs:{\"label\":\"Stundensatz Schweissen\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'stundensatzSchweissen')},on:{\"keyup\":function($event){set.stundensatzSchweissen.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.stundensatzSchweissen = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.stundensatzSchweissen = set.stundensatzSchweissen.trim())}},model:{value:(set.stundensatzSchweissen),callback:function ($$v) {_vm.$set(set, \"stundensatzSchweissen\", $$v)},expression:\"set.stundensatzSchweissen\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Schweissen\",\"rules\":_vm.optionalNumber0To1Rule,\"placeholder\":_vm.getPlaceholder(region.id, 'blexonMargeSchweissen')},on:{\"keyup\":function($event){set.blexonMargeSchweissen.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.blexonMargeSchweissen = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.blexonMargeSchweissen = set.blexonMargeSchweissen.trim())}},model:{value:(set.blexonMargeSchweissen),callback:function ($$v) {_vm.$set(set, \"blexonMargeSchweissen\", $$v)},expression:\"set.blexonMargeSchweissen\"}})],1)],1)],1),_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('b',[_vm._v(\"Pulverbeschichten\")]),_vm._v(\" \"),(!set.validPulverbeschichten)?_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"warning\")]):_vm._e()],1),_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-btn',{staticClass:\"ml-0\",attrs:{\"disabled\":_vm.loading || _vm.loadingPowder},on:{\"click\":function($event){return _vm.openPowderEditDialog(region.id)}}},[_vm._v(\"Pulver bearbeiten\")])],1),(_vm.isStandard(set.priceModel))?_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formPulverbeschichten\",refInFor:true,model:{value:(set.validPulverbeschichten),callback:function ($$v) {_vm.$set(set, \"validPulverbeschichten\", $$v)},expression:\"set.validPulverbeschichten\"}},[_c('v-text-field',{attrs:{\"label\":\"Stundensatz Pulverbeschichten\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.stundensatzPulverbeschichten),callback:function ($$v) {_vm.$set(set, \"stundensatzPulverbeschichten\", $$v)},expression:\"set.stundensatzPulverbeschichten\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Pulverbeschichten [z.B. 0.2 -> 20%]\",\"rules\":_vm.requiredNumber0To1Rule},model:{value:(set.blexonMargePulverbeschichten),callback:function ($$v) {_vm.$set(set, \"blexonMargePulverbeschichten\", $$v)},expression:\"set.blexonMargePulverbeschichten\"}}),_c('v-text-field',{attrs:{\"label\":\"Farbe Basis Preis\",\"rules\":_vm.requiredNonNegativeNumberRule,\"hint\":\"Pro kg Farbe\"},model:{value:(set.pulverbeschichtungFarbeBasisPreis),callback:function ($$v) {_vm.$set(set, \"pulverbeschichtungFarbeBasisPreis\", $$v)},expression:\"set.pulverbeschichtungFarbeBasisPreis\"}}),_c('v-text-field',{attrs:{\"label\":\"Einrichtkosten Pauschale\",\"rules\":_vm.requiredNonNegativeNumberRule,\"hint\":\"Wird mit Einrichtungs-Faktor des verwendeten Pulvers multipliziert. Für Standardpulver ist Faktor 1\"},model:{value:(set.pulverbeschichtungEinrichtkostenPauschale),callback:function ($$v) {_vm.$set(set, \"pulverbeschichtungEinrichtkostenPauschale\", $$v)},expression:\"set.pulverbeschichtungEinrichtkostenPauschale\"}}),_c('v-text-field',{attrs:{\"label\":\"Entfettungkosten\",\"rules\":_vm.requiredNonNegativeNumberRule,\"hint\":\"Pro 1m^2 Oberfläche, die entfettet wird.\"},model:{value:(set.pulverbeschichtungEntfettungkosten),callback:function ($$v) {_vm.$set(set, \"pulverbeschichtungEntfettungkosten\", $$v)},expression:\"set.pulverbeschichtungEntfettungkosten\"}}),_c('v-text-field',{attrs:{\"label\":\"Ofen-Kosten\",\"rules\":_vm.requiredNonNegativeNumberRule,\"hint\":\"Pro 1h im Ofen\"},model:{value:(set.pulverbeschichtungOfenKosten),callback:function ($$v) {_vm.$set(set, \"pulverbeschichtungOfenKosten\", $$v)},expression:\"set.pulverbeschichtungOfenKosten\"}})],1)],1):_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formPulverbeschichten\",refInFor:true,model:{value:(set.validPulverbeschichten),callback:function ($$v) {_vm.$set(set, \"validPulverbeschichten\", $$v)},expression:\"set.validPulverbeschichten\"}},[_c('v-text-field',{attrs:{\"label\":\"Stundensatz Pulverbeschichten\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'stundensatzPulverbeschichten')},on:{\"keyup\":function($event){set.stundensatzPulverbeschichten.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.stundensatzPulverbeschichten = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.stundensatzPulverbeschichten = set.stundensatzPulverbeschichten.trim())}},model:{value:(set.stundensatzPulverbeschichten),callback:function ($$v) {_vm.$set(set, \"stundensatzPulverbeschichten\", $$v)},expression:\"set.stundensatzPulverbeschichten\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Pulverbeschichten [z.B. 0.2 -> 20%]\",\"rules\":_vm.optionalNumber0To1Rule,\"placeholder\":_vm.getPlaceholder(region.id, 'blexonMargePulverbeschichten')},on:{\"keyup\":function($event){set.blexonMargePulverbeschichten.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.blexonMargePulverbeschichten = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.blexonMargePulverbeschichten = set.blexonMargePulverbeschichten.trim())}},model:{value:(set.blexonMargePulverbeschichten),callback:function ($$v) {_vm.$set(set, \"blexonMargePulverbeschichten\", $$v)},expression:\"set.blexonMargePulverbeschichten\"}}),_c('v-text-field',{attrs:{\"label\":\"Farbe Basis Preis\",\"hint\":\"Pro kg Farbe\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'pulverbeschichtungFarbeBasisPreis')},on:{\"keyup\":function($event){set.pulverbeschichtungFarbeBasisPreis.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.pulverbeschichtungFarbeBasisPreis = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.pulverbeschichtungFarbeBasisPreis = set.pulverbeschichtungFarbeBasisPreis.trim())}},model:{value:(set.pulverbeschichtungFarbeBasisPreis),callback:function ($$v) {_vm.$set(set, \"pulverbeschichtungFarbeBasisPreis\", $$v)},expression:\"set.pulverbeschichtungFarbeBasisPreis\"}}),_c('v-text-field',{attrs:{\"label\":\"Einrichtkosten Pauschale\",\"hint\":\"Wird mit Einrichtungs-Faktor des verwendeten Pulvers multipliziert. Für Standardpulver ist Faktor 1\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'pulverbeschichtungEinrichtkostenPauschale')},on:{\"keyup\":function($event){set.pulverbeschichtungEinrichtkostenPauschale.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.pulverbeschichtungEinrichtkostenPauschale = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.pulverbeschichtungEinrichtkostenPauschale =\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tset.pulverbeschichtungEinrichtkostenPauschale.trim())}},model:{value:(set.pulverbeschichtungEinrichtkostenPauschale),callback:function ($$v) {_vm.$set(set, \"pulverbeschichtungEinrichtkostenPauschale\", $$v)},expression:\"set.pulverbeschichtungEinrichtkostenPauschale\"}}),_c('v-text-field',{attrs:{\"label\":\"Entfettungkosten\",\"hint\":\"Pro 1m^2 Oberfläche, die entfettet wird.\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'pulverbeschichtungEntfettungkosten')},on:{\"keyup\":function($event){set.pulverbeschichtungEntfettungkosten.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.pulverbeschichtungEntfettungkosten = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.pulverbeschichtungEntfettungkosten = set.pulverbeschichtungEntfettungkosten.trim())}},model:{value:(set.pulverbeschichtungEntfettungkosten),callback:function ($$v) {_vm.$set(set, \"pulverbeschichtungEntfettungkosten\", $$v)},expression:\"set.pulverbeschichtungEntfettungkosten\"}}),_c('v-text-field',{attrs:{\"label\":\"Ofen-Kosten\",\"hint\":\"Pro 1h im Ofen\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'pulverbeschichtungOfenKosten')},on:{\"keyup\":function($event){set.pulverbeschichtungOfenKosten.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.pulverbeschichtungOfenKosten = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.pulverbeschichtungOfenKosten = set.pulverbeschichtungOfenKosten.trim())}},model:{value:(set.pulverbeschichtungOfenKosten),callback:function ($$v) {_vm.$set(set, \"pulverbeschichtungOfenKosten\", $$v)},expression:\"set.pulverbeschichtungOfenKosten\"}})],1)],1)],1),_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('b',[_vm._v(\"Teilehandling\")]),_vm._v(\" \"),(!set.validTeilehandling)?_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"warning\")]):_vm._e()],1),(_vm.isStandard(set.priceModel))?_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formTeilehandling\",refInFor:true,model:{value:(set.validTeilehandling),callback:function ($$v) {_vm.$set(set, \"validTeilehandling\", $$v)},expression:\"set.validTeilehandling\"}},[_c('v-text-field',{attrs:{\"label\":\"Stundensatz Teilevereinzelung\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.stundensatzTeilevereinzelung),callback:function ($$v) {_vm.$set(set, \"stundensatzTeilevereinzelung\", $$v)},expression:\"set.stundensatzTeilevereinzelung\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Teilevereinzelung\",\"rules\":_vm.requiredNumber0To1Rule},model:{value:(set.blexonMargeTeilevereinzelung),callback:function ($$v) {_vm.$set(set, \"blexonMargeTeilevereinzelung\", $$v)},expression:\"set.blexonMargeTeilevereinzelung\"}})],1)],1):_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formTeilehandling\",refInFor:true,model:{value:(set.validTeilehandling),callback:function ($$v) {_vm.$set(set, \"validTeilehandling\", $$v)},expression:\"set.validTeilehandling\"}},[_c('v-text-field',{attrs:{\"label\":\"Stundensatz Teilevereinzelung\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'stundensatzTeilevereinzelung')},on:{\"keyup\":function($event){set.stundensatzTeilevereinzelung.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.stundensatzTeilevereinzelung = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.stundensatzTeilevereinzelung = set.stundensatzTeilevereinzelung.trim())}},model:{value:(set.stundensatzTeilevereinzelung),callback:function ($$v) {_vm.$set(set, \"stundensatzTeilevereinzelung\", $$v)},expression:\"set.stundensatzTeilevereinzelung\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Teilevereinzelung\",\"rules\":_vm.optionalNumber0To1Rule,\"placeholder\":_vm.getPlaceholder(region.id, 'blexonMargeTeilevereinzelung')},on:{\"keyup\":function($event){set.blexonMargeTeilevereinzelung.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.blexonMargeTeilevereinzelung = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.blexonMargeTeilevereinzelung = set.blexonMargeTeilevereinzelung.trim())}},model:{value:(set.blexonMargeTeilevereinzelung),callback:function ($$v) {_vm.$set(set, \"blexonMargeTeilevereinzelung\", $$v)},expression:\"set.blexonMargeTeilevereinzelung\"}})],1)],1)],1),_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('b',[_vm._v(\"Zertifikat\")]),_vm._v(\" \"),(!set.validZertifikat)?_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"warning\")]):_vm._e()],1),(_vm.isStandard(set.priceModel))?_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formZertifikat\",refInFor:true,model:{value:(set.validZertifikat),callback:function ($$v) {_vm.$set(set, \"validZertifikat\", $$v)},expression:\"set.validZertifikat\"}},[_c('v-text-field',{attrs:{\"label\":\"Pauschale Zertifikat\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.pauschaleZertifikat),callback:function ($$v) {_vm.$set(set, \"pauschaleZertifikat\", $$v)},expression:\"set.pauschaleZertifikat\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Zertifikat\",\"rules\":_vm.requiredNumber0To1Rule},model:{value:(set.blexonMargeZertifikat),callback:function ($$v) {_vm.$set(set, \"blexonMargeZertifikat\", $$v)},expression:\"set.blexonMargeZertifikat\"}})],1)],1):_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formZertifikat\",refInFor:true,model:{value:(set.validZertifikat),callback:function ($$v) {_vm.$set(set, \"validZertifikat\", $$v)},expression:\"set.validZertifikat\"}},[_c('v-text-field',{attrs:{\"label\":\"Pauschale Zertifikat\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'pauschaleZertifikat')},on:{\"keyup\":function($event){set.pauschaleZertifikat.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.pauschaleZertifikat = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.pauschaleZertifikat = set.pauschaleZertifikat.trim())}},model:{value:(set.pauschaleZertifikat),callback:function ($$v) {_vm.$set(set, \"pauschaleZertifikat\", $$v)},expression:\"set.pauschaleZertifikat\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Zertifikat\",\"rules\":_vm.optionalNumber0To1Rule,\"placeholder\":_vm.getPlaceholder(region.id, 'blexonMargeZertifikat')},on:{\"keyup\":function($event){set.blexonMargeZertifikat.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.blexonMargeZertifikat = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.blexonMargeZertifikat = set.blexonMargeZertifikat.trim())}},model:{value:(set.blexonMargeZertifikat),callback:function ($$v) {_vm.$set(set, \"blexonMargeZertifikat\", $$v)},expression:\"set.blexonMargeZertifikat\"}})],1)],1)],1),_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('b',[_vm._v(\"Verpacken / Transport\")]),_vm._v(\" \"),(!set.validVerpacken)?_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"warning\")]):_vm._e()],1),(_vm.isStandard(set.priceModel))?_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formVerpacken\",refInFor:true,model:{value:(set.validVerpacken),callback:function ($$v) {_vm.$set(set, \"validVerpacken\", $$v)},expression:\"set.validVerpacken\"}},[_c('v-text-field',{attrs:{\"label\":\"Stundensatz Verpacker\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.stundensatzVerpacker),callback:function ($$v) {_vm.$set(set, \"stundensatzVerpacker\", $$v)},expression:\"set.stundensatzVerpacker\"}}),_c('v-text-field',{attrs:{\"label\":\"LKW Transport Buchungspauschale\",\"title\":\"Bekommt Blexon für das Buchen des Transports\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.lkwTransportPauschale),callback:function ($$v) {_vm.$set(set, \"lkwTransportPauschale\", $$v)},expression:\"set.lkwTransportPauschale\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Verpackungsaufwand\",\"rules\":_vm.requiredNumber0To1Rule},model:{value:(set.blexonMargeVerpackungsaufwand),callback:function ($$v) {_vm.$set(set, \"blexonMargeVerpackungsaufwand\", $$v)},expression:\"set.blexonMargeVerpackungsaufwand\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Verpackungsmaterial\",\"rules\":_vm.requiredNumber0To1Rule},model:{value:(set.blexonMargeVerpackungsmaterial),callback:function ($$v) {_vm.$set(set, \"blexonMargeVerpackungsmaterial\", $$v)},expression:\"set.blexonMargeVerpackungsmaterial\"}}),_c('v-text-field',{attrs:{\"label\":\"Minimum Verpackungsaufwand pro Laserposition\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.verpackungsaufwandProLaserposition),callback:function ($$v) {_vm.$set(set, \"verpackungsaufwandProLaserposition\", $$v)},expression:\"set.verpackungsaufwandProLaserposition\"}}),_c('v-text-field',{attrs:{\"label\":\"Minimum Verpackungsaufwand pro Bendposition\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.verpackungsaufwandProBendposition),callback:function ($$v) {_vm.$set(set, \"verpackungsaufwandProBendposition\", $$v)},expression:\"set.verpackungsaufwandProBendposition\"}}),_c('v-text-field',{attrs:{\"label\":\"LKW Verpackungspauschale\",\"title\":\"Bekommt der Fertiger für das Verpacken eines Auftrags für LKW Transport. Unabhängig von der tatsächlich verwendeten Anzahl Paletten\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.palettenHandlingPauschale),callback:function ($$v) {_vm.$set(set, \"palettenHandlingPauschale\", $$v)},expression:\"set.palettenHandlingPauschale\"}})],1)],1):_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formVerpacken\",refInFor:true,model:{value:(set.validVerpacken),callback:function ($$v) {_vm.$set(set, \"validVerpacken\", $$v)},expression:\"set.validVerpacken\"}},[_c('v-text-field',{attrs:{\"label\":\"Stundensatz Verpacker\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'stundensatzVerpacker')},on:{\"keyup\":function($event){set.stundensatzVerpacker.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.stundensatzVerpacker = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.stundensatzVerpacker = set.stundensatzVerpacker.trim())}},model:{value:(set.stundensatzVerpacker),callback:function ($$v) {_vm.$set(set, \"stundensatzVerpacker\", $$v)},expression:\"set.stundensatzVerpacker\"}}),_c('v-text-field',{attrs:{\"label\":\"LKW Transport Buchungspauschale\",\"title\":\"Bekommt Blexon für das Buchen des Transports\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'lkwTransportPauschale')},on:{\"keyup\":function($event){set.lkwTransportPauschale.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.lkwTransportPauschale = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.lkwTransportPauschale = set.lkwTransportPauschale.trim())}},model:{value:(set.lkwTransportPauschale),callback:function ($$v) {_vm.$set(set, \"lkwTransportPauschale\", $$v)},expression:\"set.lkwTransportPauschale\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Verpackungsaufwand\",\"rules\":_vm.optionalNumber0To1Rule,\"placeholder\":_vm.getPlaceholder(region.id, 'blexonMargeVerpackungsaufwand')},on:{\"keyup\":function($event){set.blexonMargeVerpackungsaufwand.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.blexonMargeVerpackungsaufwand = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.blexonMargeVerpackungsaufwand = set.blexonMargeVerpackungsaufwand.trim())}},model:{value:(set.blexonMargeVerpackungsaufwand),callback:function ($$v) {_vm.$set(set, \"blexonMargeVerpackungsaufwand\", $$v)},expression:\"set.blexonMargeVerpackungsaufwand\"}}),_c('v-text-field',{attrs:{\"label\":\"Blexon Marge Verpackungsmaterial\",\"rules\":_vm.optionalNumber0To1Rule,\"placeholder\":_vm.getPlaceholder(region.id, 'blexonMargeVerpackungsmaterial')},on:{\"keyup\":function($event){set.blexonMargeVerpackungsmaterial.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.blexonMargeVerpackungsmaterial = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.blexonMargeVerpackungsmaterial = set.blexonMargeVerpackungsmaterial.trim())}},model:{value:(set.blexonMargeVerpackungsmaterial),callback:function ($$v) {_vm.$set(set, \"blexonMargeVerpackungsmaterial\", $$v)},expression:\"set.blexonMargeVerpackungsmaterial\"}}),_c('v-text-field',{attrs:{\"label\":\"Minimum Verpackungsaufwand pro Laserposition\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'verpackungsaufwandProLaserposition')},on:{\"keyup\":function($event){set.verpackungsaufwandProLaserposition.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.verpackungsaufwandProLaserposition = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.verpackungsaufwandProLaserposition = set.verpackungsaufwandProLaserposition.trim())}},model:{value:(set.verpackungsaufwandProLaserposition),callback:function ($$v) {_vm.$set(set, \"verpackungsaufwandProLaserposition\", $$v)},expression:\"set.verpackungsaufwandProLaserposition\"}}),_c('v-text-field',{attrs:{\"label\":\"Minimum Verpackungsaufwand pro Bendposition\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'verpackungsaufwandProBendposition')},on:{\"keyup\":function($event){set.verpackungsaufwandProBendposition.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.verpackungsaufwandProBendposition = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.verpackungsaufwandProBendposition = set.verpackungsaufwandProBendposition.trim())}},model:{value:(set.verpackungsaufwandProBendposition),callback:function ($$v) {_vm.$set(set, \"verpackungsaufwandProBendposition\", $$v)},expression:\"set.verpackungsaufwandProBendposition\"}}),_c('v-text-field',{attrs:{\"label\":\"LKW Verpackungspauschale\",\"title\":\"Bekommt der Fertiger für das Verpacken eines Auftrags für LKW Transport. Unabhängig von der tatsächlich verwendeten Anzahl Paletten\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'palettenHandlingPauschale')},on:{\"keyup\":function($event){set.palettenHandlingPauschale.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.palettenHandlingPauschale = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.palettenHandlingPauschale = set.palettenHandlingPauschale.trim())}},model:{value:(set.palettenHandlingPauschale),callback:function ($$v) {_vm.$set(set, \"palettenHandlingPauschale\", $$v)},expression:\"set.palettenHandlingPauschale\"}})],1)],1)],1),_c('v-expansion-panel-content',[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('b',[_vm._v(\"Stornieren\")]),_vm._v(\" \"),(!set.validStornieren)?_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"warning\")]):_vm._e()],1),(_vm.isStandard(set.priceModel))?_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formStornieren\",refInFor:true,model:{value:(set.validStornieren),callback:function ($$v) {_vm.$set(set, \"validStornieren\", $$v)},expression:\"set.validStornieren\"}},[_c('v-text-field',{attrs:{\"label\":\"Pauschale Stornieranfrage\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.pauschaleStornieranfrage),callback:function ($$v) {_vm.$set(set, \"pauschaleStornieranfrage\", $$v)},expression:\"set.pauschaleStornieranfrage\"}}),_c('v-text-field',{attrs:{\"label\":\"Pauschale Laser-Stornierung\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.pauschaleLaserStornierung),callback:function ($$v) {_vm.$set(set, \"pauschaleLaserStornierung\", $$v)},expression:\"set.pauschaleLaserStornierung\"}}),_c('v-text-field',{attrs:{\"label\":\"Pauschale Abkanten-Stornierung\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.pauschaleAbkantenStornierung),callback:function ($$v) {_vm.$set(set, \"pauschaleAbkantenStornierung\", $$v)},expression:\"set.pauschaleAbkantenStornierung\"}}),_c('v-text-field',{attrs:{\"label\":\"Pauschale Beschichten-Stornierung\",\"rules\":_vm.requiredNonNegativeNumberRule},model:{value:(set.pauschaleBeschichtenStornierung),callback:function ($$v) {_vm.$set(set, \"pauschaleBeschichtenStornierung\", $$v)},expression:\"set.pauschaleBeschichtenStornierung\"}})],1)],1):_c('v-container',{attrs:{\"fluid\":\"\",\"px-4\":\"\",\"py-0\":\"\"}},[_c('v-form',{ref:\"formStornieren\",refInFor:true,model:{value:(set.validStornieren),callback:function ($$v) {_vm.$set(set, \"validStornieren\", $$v)},expression:\"set.validStornieren\"}},[_c('v-text-field',{attrs:{\"label\":\"Pauschale Stornieranfrage\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'pauschaleStornieranfrage')},on:{\"keyup\":function($event){set.pauschaleStornieranfrage.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.pauschaleStornieranfrage = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.pauschaleStornieranfrage = set.pauschaleStornieranfrage.trim())}},model:{value:(set.pauschaleStornieranfrage),callback:function ($$v) {_vm.$set(set, \"pauschaleStornieranfrage\", $$v)},expression:\"set.pauschaleStornieranfrage\"}}),_c('v-text-field',{attrs:{\"label\":\"Pauschale Laser-Stornierung\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'pauschaleLaserStornierung')},on:{\"keyup\":function($event){set.pauschaleLaserStornierung.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.pauschaleLaserStornierung = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.pauschaleLaserStornierung = set.pauschaleLaserStornierung.trim())}},model:{value:(set.pauschaleLaserStornierung),callback:function ($$v) {_vm.$set(set, \"pauschaleLaserStornierung\", $$v)},expression:\"set.pauschaleLaserStornierung\"}}),_c('v-text-field',{attrs:{\"label\":\"Pauschale Abkanten-Stornierung\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'pauschaleAbkantenStornierung')},on:{\"keyup\":function($event){set.pauschaleAbkantenStornierung.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.pauschaleAbkantenStornierung = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.pauschaleAbkantenStornierung = set.pauschaleAbkantenStornierung.trim())}},model:{value:(set.pauschaleAbkantenStornierung),callback:function ($$v) {_vm.$set(set, \"pauschaleAbkantenStornierung\", $$v)},expression:\"set.pauschaleAbkantenStornierung\"}}),_c('v-text-field',{attrs:{\"label\":\"Pauschale Beschichten-Stornierung\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":_vm.getPlaceholder(region.id, 'pauschaleBeschichtenStornierung')},on:{\"keyup\":function($event){set.pauschaleBeschichtenStornierung.trim() === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (set.pauschaleBeschichtenStornierung = null)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: (set.pauschaleBeschichtenStornierung = set.pauschaleBeschichtenStornierung.trim())}},model:{value:(set.pauschaleBeschichtenStornierung),callback:function ($$v) {_vm.$set(set, \"pauschaleBeschichtenStornierung\", $$v)},expression:\"set.pauschaleBeschichtenStornierung\"}})],1)],1)],1)],1)],1)})],2)],1)],1)})],2)],1):(!_vm.loading)?_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',{staticClass:\"text-xs-center\",attrs:{\"cols\":\"12\"}},[_vm._v(\" Einstellungen konnten nicht geladen werden. \")])],1):_vm._e(),_c('v-dialog',{attrs:{\"width\":\"800\"},model:{value:(_vm.editPowderDialog),callback:function ($$v) {_vm.editPowderDialog=$$v},expression:\"editPowderDialog\"}},[_c('v-card',[_c('v-card-title',[_c('h1',{staticClass:\"font-weight-light\"},[_vm._v(\"Pulver für Region bearbeiten\")])]),_c('v-card-text',[_c('v-layout',{staticClass:\"mb-3\",attrs:{\"row\":\"\"}},[_c('v-flex',{attrs:{\"cols\":\"2\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\tRAL-Farbe:\"),_c('br'),_c('v-text-field',{attrs:{\"label\":\"RAL-Filter\"},model:{value:(_vm.ralFilterTerm),callback:function ($$v) {_vm.ralFilterTerm=$$v},expression:\"ralFilterTerm\"}})],1),_c('v-flex',{staticClass:\"ml-3\",attrs:{\"cols\":\"5\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\tStruktur:\"),_c('br'),_c('v-checkbox',{attrs:{\"color\":\"accent\",\"label\":\"Fein\",\"hide-details\":\"\"},model:{value:(_vm.showStructureFein),callback:function ($$v) {_vm.showStructureFein=$$v},expression:\"showStructureFein\"}}),_c('v-checkbox',{attrs:{\"color\":\"accent\",\"label\":\"Grob\",\"hide-details\":\"\"},model:{value:(_vm.showStructureGrob),callback:function ($$v) {_vm.showStructureGrob=$$v},expression:\"showStructureGrob\"}}),_c('v-checkbox',{attrs:{\"color\":\"accent\",\"label\":\"Glatt\",\"hide-details\":\"\"},model:{value:(_vm.showStructureGlatt),callback:function ($$v) {_vm.showStructureGlatt=$$v},expression:\"showStructureGlatt\"}})],1),_c('v-flex',{staticClass:\"ml-3\",attrs:{\"cols\":\"5\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\tFinish:\"),_c('br'),_c('v-checkbox',{attrs:{\"color\":\"accent\",\"label\":\"Matt\",\"hide-details\":\"\"},model:{value:(_vm.showFinishMatt),callback:function ($$v) {_vm.showFinishMatt=$$v},expression:\"showFinishMatt\"}}),_c('v-checkbox',{attrs:{\"color\":\"accent\",\"label\":\"Glänzend\",\"hide-details\":\"\"},model:{value:(_vm.showFinishGlaenzend),callback:function ($$v) {_vm.showFinishGlaenzend=$$v},expression:\"showFinishGlaenzend\"}})],1)],1),_c('v-progress-linear',{staticClass:\"ma-0\",attrs:{\"active\":_vm.loadingPowder,\"indeterminate\":\"\",\"color\":\"accent\",\"height\":\"5px\"}}),_c('v-data-table',{attrs:{\"hide-actions\":\"\",\"items\":_vm.filteredPowders,\"headers\":_vm.powderHeaders},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('tr',[_c('td',[_c('span',{style:('display:inline-block; height: 10px; width: 10px; background-color:' + props.item.surfaceColor.hexCode)}),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t RAL \"+_vm._s(props.item.surfaceColor.ralCode)+\" |  \"+_vm._s(_vm.GetStructureString(props.item.structure))+\" |  \"+_vm._s(_vm.GetFinishString(props.item.finish))+\"\\n\\t\\t\\t\\t\\t\\t\\t\\t|  \"+_vm._s(_vm.GetApplicationString(props.item.application))+\" |  (Id: \"+_vm._s(props.item.id)+\")\\n\\t\\t\\t\\t\\t\\t\\t\")]),_c('td',[_c('v-checkbox',{attrs:{\"disabled\":_vm.loadingPowder,\"color\":\"accent\",\"hide-details\":\"\"},on:{\"change\":function($event){return _vm.updateRegionPowder(props.item)}},model:{value:(props.item.available),callback:function ($$v) {_vm.$set(props.item, \"available\", $$v)},expression:\"props.item.available\"}})],1),_c('td',[_c('v-text-field',{staticStyle:{\"width\":\"100px\"},attrs:{\"disabled\":_vm.loadingPowder,\"rules\":_vm.requiredNumberBiggerEqual1Rule},on:{\"blur\":function($event){return _vm.updateRegionPowder(props.item)}},model:{value:(props.item.setupPriceFactor),callback:function ($$v) {_vm.$set(props.item, \"setupPriceFactor\", $$v)},expression:\"props.item.setupPriceFactor\"}})],1)])]}}])})],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { PowderApplication } from './powderApplication';\r\n\r\nexport interface IPowderApplication {\r\n text: string;\r\n value: PowderApplication;\r\n}\r\n\r\nconst values: IPowderApplication[] = [\r\n {\r\n text: 'Innenanwendung',\r\n value: PowderApplication.Internal,\r\n },\r\n {\r\n text: 'Aussenanwendung Industrie',\r\n value: PowderApplication.ExternalIndustry,\r\n },\r\n {\r\n text: 'Aussenanwendung Fassade',\r\n value: PowderApplication.ExternalFassade,\r\n },\r\n];\r\n\r\nexport default values;\r\n","\r\nimport { Component, Vue, Prop } from \"vue-property-decorator\";\r\nimport httpClient from \"../../store/httpClient\";\r\nimport { RegionDto } from \"../../dtos/regionDto\";\r\nimport rules from \"@/store/rules\";\r\nimport { PriceModel } from \"@/dtos/priceModel\";\r\nimport { PriceSettingsDto } from \"@/dtos/priceSettingDto\";\r\nimport { RegionPowderDto } from \"@/dtos/regionPowderDto\";\r\nimport PowderFinishes from \"@/dtos/IPowderFinish\";\r\nimport { IPowderFinish } from \"@/dtos/IPowderFinish\";\r\nimport PowderStructures from \"@/dtos/IPowderStructure\";\r\nimport { IPowderStructure } from \"@/dtos/IPowderStructure\";\r\nimport PowderApplications from \"@/dtos/IPowderApplication\";\r\nimport { IPowderApplication } from \"@/dtos/IPowderApplication\";\r\nimport { PowderStructure } from \"@/dtos/powderStructure\";\r\nimport { PowderFinish } from \"@/dtos/powderFinish\";\r\nimport { HolidayTypeDto } from \"@/dtos/holidayTypeDto\";\r\n\r\n@Component\r\nexport default class CalcSettings extends Vue {\r\n\tprivate loading: boolean = false;\r\n\tprivate loadingPowder: boolean = false;\r\n\tprivate openExpand: number | null = null;\r\n\tprivate regionOpenExpand: number | null = null;\r\n\tprivate regionSettings: RegionDto[] = new Array();\r\n\tprivate holidayTypes: HolidayTypeDto[] = new Array();\r\n\tprivate holidayOpenExpand: number | null = null;\r\n\tprivate requiredRule = rules.requiredRule;\r\n\tprivate requiredNonNegativeIntegerRule = rules.requiredNonNegativeIntegerRule;\r\n\tprivate optionalNonNegativeIntegerRule = rules.optionalNonNegativeIntegerRule;\r\n\tprivate requiredNonNegativeNumberRule = rules.requiredNonNegativeNumberRule;\r\n\tprivate optionalNonNegativeNumberRule = rules.optionalNonNegativeNumberRule;\r\n\tprivate requiredNumber0To1Rule = rules.requiredNumber0To1Rule;\r\n\tprivate optionalNumber0To1Rule = rules.optionalNumber0To1Rule;\r\n\tprivate requiredNumberBiggerEqual1Rule = rules.requiredNumberBiggerEqual1Rule;\r\n\tprivate editPowderDialog: boolean = false;\r\n\tprivate currentPowderRegionId: number = 0;\r\n\tprivate regionPowders: RegionPowderDto[] = new Array();\r\n\tprivate powderFinishes: IPowderFinish[] = PowderFinishes;\r\n\tprivate powderStructures: IPowderStructure[] = PowderStructures;\r\n\tprivate powderApplications: IPowderApplication[] = PowderApplications;\r\n\tprivate ralFilterTerm: string = \"\";\r\n\tprivate showStructureFein: boolean = true;\r\n\tprivate showStructureGrob: boolean = true;\r\n\tprivate showStructureGlatt: boolean = true;\r\n\tprivate showFinishMatt: boolean = true;\r\n\tprivate showFinishGlaenzend: boolean = true;\r\n\tprivate powderHeaders: any = [\r\n\t\t{\r\n\t\t\ttext: \"Pulver\",\r\n\t\t\tsortable: false,\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Verfügbar\",\r\n\t\t\tsortable: false,\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: \"Einrichtungs-Faktor\",\r\n\t\t\tsortable: false,\r\n\t\t},\r\n\t];\r\n\r\n\tprivate async mounted() {\r\n\t\tawait this.loadSettings();\r\n\t\t// Validate all the forms\r\n\t\t(this.$refs.formRegion as any).forEach((form: any) => form.validate());\r\n\t\t(this.$refs.formAllgemein as any).forEach((form: any) => form.validate());\r\n\t\t(this.$refs.formNcprogramm as any).forEach((form: any) => form.validate());\r\n\t\t(this.$refs.formSchneiden as any).forEach((form: any) => form.validate());\r\n\t\t(this.$refs.formBiegen as any).forEach((form: any) => form.validate());\r\n\t\t(this.$refs.formEntgraten as any).forEach((form: any) => form.validate());\r\n\t\t(this.$refs.formFeatures as any).forEach((form: any) => form.validate());\r\n\t\t(this.$refs.formPulverbeschichten as any).forEach((form: any) => form.validate());\r\n\t\t(this.$refs.formTeilehandling as any).forEach((form: any) => form.validate());\r\n\t\t(this.$refs.formVerpacken as any).forEach((form: any) => form.validate());\r\n\t\t(this.$refs.formZertifikat as any).forEach((form: any) => form.validate());\r\n\t\t(this.$refs.formStornieren as any).forEach((form: any) => form.validate());\r\n\t}\r\n\r\n\tprivate get validForms(): boolean {\r\n\t\treturn this.regionSettings.every(\r\n\t\t\t(rs: RegionDto) =>\r\n\t\t\t\trs.valid &&\r\n\t\t\t\trs.priceSettings.every(\r\n\t\t\t\t\t(ps: PriceSettingsDto) =>\r\n\t\t\t\t\t\tps.validNcProgramm &&\r\n\t\t\t\t\t\tps.validSchneiden &&\r\n\t\t\t\t\t\tps.validBiegen &&\r\n\t\t\t\t\t\tps.validEntgraten &&\r\n\t\t\t\t\t\tps.validFeatures &&\r\n\t\t\t\t\t\tps.validPulverbeschichten &&\r\n\t\t\t\t\t\tps.validTeilehandling &&\r\n\t\t\t\t\t\tps.validZertifikat &&\r\n\t\t\t\t\t\tps.validAllgemein &&\r\n\t\t\t\t\t\tps.validVerpacken &&\r\n\t\t\t\t\t\tps.validStornieren\r\n\t\t\t\t)\r\n\t\t);\r\n\t}\r\n\r\n\tprivate isStandard(priceModel: PriceModel) {\r\n\t\treturn priceModel == PriceModel.Standard;\r\n\t}\r\n\r\n\tprivate getEnumNameFromValue(enumValue: number) {\r\n\t\treturn PriceModel[enumValue];\r\n\t}\r\n\r\n\tprivate getPlaceholder(regionId: number, propertyName: string) {\r\n\t\tlet standardSettings: PriceSettingsDto = this.regionSettings\r\n\t\t\t.filter((r: RegionDto) => r.id == regionId)[0]\r\n\t\t\t.priceSettings.filter((s: PriceSettingsDto) => s.priceModel == PriceModel.Standard)[0];\r\n\t\tlet standardPropValue = standardSettings[propertyName as keyof PriceSettingsDto];\r\n\t\treturn `Erbt von Standard: ${standardPropValue}`;\r\n\t}\r\n\r\n\tprivate getRegionSettings(regionId: number) {\r\n\t\treturn this.regionSettings.filter((r: RegionDto) => r.id === regionId)[0];\r\n\t}\r\n\r\n\tprivate GetStructureString(enumValue: number) {\r\n\t\treturn this.powderStructures.filter((type: IPowderStructure) => type.value == enumValue)[0].text;\r\n\t}\r\n\tprivate GetFinishString(enumValue: number) {\r\n\t\treturn this.powderFinishes.filter((type: IPowderFinish) => type.value == enumValue)[0].text;\r\n\t}\r\n\tprivate GetApplicationString(enumValue: number) {\r\n\t\treturn this.powderApplications.filter((type: IPowderApplication) => type.value == enumValue)[0].text;\r\n\t}\r\n\r\n\tprivate get filteredPowders() {\r\n\t\tif (!this.regionPowders || this.regionPowders.length <= 0) return [];\r\n\t\tlet filtered = this.regionPowders.filter(\r\n\t\t\t(p: RegionPowderDto) =>\r\n\t\t\t\t(this.ralFilterTerm.length <= 0 || p.surfaceColor.ralCode.includes(this.ralFilterTerm)) &&\r\n\t\t\t\t(this.showStructureFein || p.structure != PowderStructure.Fine) &&\r\n\t\t\t\t(this.showStructureGlatt || p.structure != PowderStructure.Smooth) &&\r\n\t\t\t\t(this.showStructureGrob || p.structure != PowderStructure.Rough) &&\r\n\t\t\t\t(this.showFinishGlaenzend || p.finish != PowderFinish.Glossy) &&\r\n\t\t\t\t(this.showFinishMatt || p.finish != PowderFinish.Matt)\r\n\t\t);\r\n\r\n\t\tfiltered = filtered.sort((c1: RegionPowderDto, c2: RegionPowderDto) => {\r\n\t\t\tif (c1.surfaceColor.ralCode == c2.surfaceColor.ralCode) {\r\n\t\t\t\tif (c1.structure === c2.structure) {\r\n\t\t\t\t\treturn c1.finish - c2.finish;\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn c1.structure - c2.structure;\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\treturn parseInt(c1.surfaceColor.ralCode) - parseInt(c2.surfaceColor.ralCode);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\treturn filtered;\r\n\t}\r\n\r\n\tprivate async openPowderEditDialog(regionId: number) {\r\n\t\ttry {\r\n\t\t\tthis.loading = true;\r\n\t\t\tthis.loadingPowder = true;\r\n\t\t\tif (this.regionPowders.length <= 0 || this.currentPowderRegionId !== regionId) {\r\n\t\t\t\tconst settings = await httpClient().get(`Region/GetRegionPowders?regionId=${regionId}`);\r\n\t\t\t\tthis.regionPowders = settings.data;\r\n\t\t\t\tthis.currentPowderRegionId = regionId;\r\n\t\t\t}\r\n\t\t\tthis.editPowderDialog = true;\r\n\t\t} catch {\r\n\t\t\tconsole.log(\"Loading regional powders failed.\");\r\n\t\t} finally {\r\n\t\t\tthis.loading = false;\r\n\t\t\tthis.loadingPowder = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprivate async updateRegionPowder(powder: RegionPowderDto) {\r\n\t\tif (isNaN(powder.setupPriceFactor) || powder.setupPriceFactor < 1) {\r\n\t\t\tthis.$store.commit(\"setSnackbarErrorText\", \"Einrichtungs-Faktor muss >= 1 sein.\");\r\n\t\t\treturn;\r\n\t\t}\r\n\t\ttry {\r\n\t\t\tconsole.log(\"saving powder\");\r\n\t\t\tthis.loadingPowder = true;\r\n\t\t\tlet powderDto = {\r\n\t\t\t\tpowderId: powder.id,\r\n\t\t\t\tregionId: this.currentPowderRegionId,\r\n\t\t\t\tsetupPriceFactor: powder.setupPriceFactor,\r\n\t\t\t\tavailable: powder.available,\r\n\t\t\t};\r\n\t\t\tawait httpClient().post(`Region/UpdateRegionPowder`, powderDto);\r\n\t\t\tthis.$store.commit(\"setSnackbarText\", `Pulver #${powder.id} aktualisiert`);\r\n\t\t} catch (err) {\r\n\t\t\tthis.$store.commit(\"setSnackbarErrorText\", \"Pulver konnte nicht aktualisiert werden\");\r\n\t\t\tconsole.log(\"Error while saving settings.\", err);\r\n\t\t} finally {\r\n\t\t\tthis.loadingPowder = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprivate async loadSettings() {\r\n\t\ttry {\r\n\t\t\tthis.loading = true;\r\n\t\t\tconst settings = await httpClient().get(\"Region/GetRegionSettings\");\r\n\t\t\tthis.regionSettings = settings.data;\r\n\t\t\tconst holidays = await httpClient().get(\"Region/GetHolidayTypes\");\r\n\t\t\tthis.holidayTypes = holidays.data;\r\n\t\t} catch {\r\n\t\t\tconsole.log(\"Loading settings failed.\");\r\n\t\t} finally {\r\n\t\t\tthis.loading = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprivate async updateSettings() {\r\n\t\ttry {\r\n\t\t\tthis.loading = true;\r\n\t\t\tawait httpClient().post(`Region/SetRegionSettings`, this.regionSettings);\r\n\t\t\tthis.$store.commit(\"setSnackbarText\", `Einstellungen erfolgreich gespeichert.`);\r\n\t\t} catch (err) {\r\n\t\t\tthis.$store.commit(\"setSnackbarErrorText\", \"Einstellungen konnten nicht gespeichert werden.\");\r\n\t\t\tconsole.log(\"Error while saving settings.\", err);\r\n\t\t} finally {\r\n\t\t\tthis.loading = false;\r\n\t\t}\r\n\t}\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CalcSettings.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CalcSettings.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./CalcSettings.vue?vue&type=template&id=3e6cc6ae&scoped=true\"\nimport script from \"./CalcSettings.vue?vue&type=script&lang=ts\"\nexport * from \"./CalcSettings.vue?vue&type=script&lang=ts\"\nimport style0 from \"./CalcSettings.vue?vue&type=style&index=0&id=3e6cc6ae&prod&scoped=true&lang=css\"\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 \"3e6cc6ae\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderCalculationComponent.vue?vue&type=style&index=0&id=0c5e35b1&prod&scoped=true&lang=css\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-container',{staticClass:\"pa-0 mb-3\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\",\"align-center\":\"\"}},[_c('v-flex',{attrs:{\"sm12\":\"\",\"md6\":\"\",\"lg3\":\"\",\"pr-3\":\"\"}},[_c('date-picker',{attrs:{\"selectedDate\":_vm.startDate,\"pastDateAllowed\":true,\"futureDateAllowed\":false,\"label\":\"Zeitraum von:\"},on:{\"update:selectedDate\":function($event){return _vm.setStartDate($event)}}})],1),_c('v-flex',{attrs:{\"sm12\":\"\",\"md6\":\"\",\"lg3\":\"\",\"pr-3\":\"\"}},[_c('date-picker',{attrs:{\"selectedDate\":_vm.endDate,\"pastDateAllowed\":true,\"futureDateAllowed\":false,\"label\":\"Zeitraum bis:\"},on:{\"update:selectedDate\":function($event){return _vm.setEndDate($event)}}})],1),_c('v-flex',{attrs:{\"sm12\":\"\",\"md6\":\"\",\"lg3\":\"\",\"pr-3\":\"\"}},[_c('v-radio-group',{attrs:{\"column\":false},model:{value:(_vm.interval),callback:function ($$v) {_vm.interval=$$v},expression:\"interval\"}},_vm._l((_vm.intervals),function(interval){return _c('v-radio',{key:interval.value,attrs:{\"label\":interval.name,\"value\":interval.value}})}),1)],1),_c('v-flex',{attrs:{\"sm12\":\"\",\"md6\":\"\",\"lg3\":\"\"}},[_c('v-btn',{staticClass:\"blexon-button\",on:{\"click\":_vm.loadReport}},[_vm._v(\"Anzeigen\")])],1)],1)],1),(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\"}}):_vm._e(),_c('canvas',{ref:\"diagramCanvas\"})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport httpClient from '@/store/httpClient';\r\nimport DatePicker from \"@/components/DatePicker.vue\";\r\nimport moment from \"moment\";\r\nconst Chart = require('chart.js');\r\n\r\n@Component({\r\n\tcomponents: {\r\n\t\tDatePicker,\r\n\t},\r\n})\r\nexport default class RegistrationReport extends Vue {\r\n private chart: any = null;\r\n private registrationReport: any = [];\r\n private loading: boolean = false;\r\n private endDate: string = moment().format(\"YYYY-MM-DD\");\r\n\tprivate startDate: string = moment().subtract(6, \"month\").format(\"YYYY-MM-01\");\r\n private interval: number = 4;\r\n private intervals = [\r\n { name: 'pro Tag', value: 2 }, // value comes from TimeInterval enum\r\n { name: 'pro Woche', value: 3 }, // value comes from TimeInterval enum\r\n { name: 'pro Monat', value: 4 }, // value comes from TimeInterval enum\r\n ]\r\n\r\n private mounted()\r\n {\r\n // Better not load the report on mount. Wait till data range is given.\r\n }\r\n\r\n private async loadReport()\r\n {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient()\r\n .get(`Report/GetRegistrations?from=${this.startDate}&to=${this.endDate}&interval=${this.interval}`);\r\n this.registrationReport = response.data;\r\n this.updateDiagram();\r\n } catch(err) {\r\n console.error('Loading registration reports failed.');\r\n console.error(err);\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Fehler beim Laden der Reports. Siehe Konsole.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private setStartDate(date: Date) {\r\n\t\tthis.startDate = moment(date).format(\"YYYY-MM-DD\");\r\n\t}\r\n\tprivate setEndDate(date: Date) {\r\n\t\tthis.endDate = moment(date).format(\"YYYY-MM-DD\");\r\n\t}\r\n\r\n\r\n private getDatasets()\r\n {\r\n const colors = [\r\n '#468641',\r\n '#A3FF00',\r\n '#00F4C4',\r\n '#123524',\r\n '#007EFF',\r\n '#005A99',\r\n '#4B0082',\r\n '#A146FF',\r\n '#FF0090',\r\n '#704214',\r\n ]\r\n var datasets = [];\r\n var i = 0;\r\n for (const report of this.registrationReport) {\r\n const referenceData = report.registrations.map((c:any) => c.item2);\r\n let color = colors[i];\r\n if (report.region === 'Alle') color = '#EFBB20'; // Blexon yellow\r\n if (report.region === 'Schweiz') color = '#E11A27'; // Swiss red\r\n if (report.region === 'Deutschland') color = '#000000'; // Germany black\r\n if (report.region === 'Österreich') color = '#800020'; // Austria burgundy\r\n\r\n datasets.push({\r\n label: report.region, // Label shown above the graph\r\n borderColor: color, // Color of the line\r\n //borderColor: colors[i % colors.length], // Color of the line\r\n pointHitRadius: 2, // Size of the area where the point reacts to the mouse\r\n fill: false,\r\n tension: 0.3, // How \"smooth\" the line is. 0 for straight lines\r\n data: referenceData,\r\n })\r\n i++;\r\n }\r\n return datasets;\r\n }\r\n\r\n private getLabels() {\r\n if (!this.registrationReport) return [];\r\n // All reports have a registration entry for all intervals\r\n // so the first one can be taken to extract the labels\r\n const uniqueLabels: string[] = this.registrationReport[0].registrations.map((r:any) => r.item1);\r\n\r\n if (this.interval === 2 || this.interval === 3) {\r\n // It's set to daily or weekly. Label should be day and month\r\n return uniqueLabels.map(l => `${moment(l).format(\"DD.MM\")}`);\r\n }\r\n if (this.interval === 4) {\r\n // It's set to monthly. Label should be month and year\r\n return uniqueLabels.map(l => `${moment(l).format(\"MM.Y\")}`);\r\n }\r\n }\r\n\r\n private updateDiagram() {\r\n const labels = this.getLabels();\r\n\r\n\t\t// Destroy the chart if one already exists.\r\n\t\tif (this.chart != null) {\r\n\t\t\tthis.chart.destroy();\r\n\t\t}\r\n\r\n const ctx = (this.$refs.diagramCanvas as any).getContext('2d');\r\n this.chart = new Chart(ctx, {\r\n // The type of chart we want to create\r\n type: 'line',\r\n // The data for our dataset\r\n data: {\r\n labels,\r\n datasets: this.getDatasets()\r\n },\r\n // Configuration options go here\r\n // options: {\r\n\t\t\t// \ttooltips: {\r\n // callbacks: {\r\n // label: function(tooltipItem: any, data: any): any {\r\n // var procent = tooltipItem.xLabel\r\n // return ``;\r\n // }\r\n // }\r\n // },\r\n // },\r\n });\r\n this.chart.update();\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Registration.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Registration.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Registration.vue?vue&type=template&id=2ee95aad\"\nimport script from \"./Registration.vue?vue&type=script&lang=ts\"\nexport * from \"./Registration.vue?vue&type=script&lang=ts\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\"}}):_vm._e(),_c('canvas',{ref:\"diagramCanvas\"})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport httpClient from '@/store/httpClient';\r\nconst Chart = require('chart.js');\r\n\r\n@Component\r\nexport default class ComplainRateReport extends Vue {\r\n private chart: any = null;\r\n private complainRates: any = [];\r\n private loading: boolean = false;\r\n private mounted()\r\n {\r\n this.loadReport();\r\n }\r\n\r\n private async loadReport()\r\n {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get(`Report/GetComplainRate`);\r\n this.complainRates = response.data;\r\n this.updateDiagram();\r\n } catch(err) {\r\n console.error('Loading evaluation reports failed.');\r\n console.error(err);\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Fehler beim Laden der Reports. Siehe Konsole.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private getDatasets()\r\n {\r\n const colors = [\r\n '#635147',\r\n '#EFBB20',\r\n '#704214',\r\n '#468641',\r\n '#A3FF00',\r\n '#00F4C4',\r\n '#123524',\r\n '#007EFF',\r\n '#005A99',\r\n '#4B0082',\r\n '#A146FF',\r\n '#FF0090',\r\n '#FF2400',\r\n ]\r\n var datasets = [];\r\n var i = 0;\r\n for (const complain of this.complainRates) {\r\n var referenceData = complain.fertigerComplainRates.map((c:any) => c.complainRateInProcent);\r\n\r\n datasets.push({\r\n label: complain.fertigerName, // Label shown above the graph\r\n borderColor: colors[i], // Color of the line\r\n pointHitRadius: 2, // Size of the area where the point reacts to the mouse\r\n fill: false,\r\n tension: 0.3, // How \"smooth\" the line is. 0 for straight lines\r\n data: referenceData,\r\n })\r\n i++;\r\n }\r\n return datasets;\r\n }\r\n\r\n private updateDiagram() {\r\n const labels = this.complainRates[0].fertigerComplainRates.map((f: any) => \r\n\t\t\t`${f.year}`);\r\n\r\n\t\t// Destroy the chart if one already exists.\r\n\t\tif (this.chart != null) {\r\n\t\t\tthis.chart.destroy();\r\n\t\t}\r\n\r\n const ctx = (this.$refs.diagramCanvas as any).getContext('2d');\r\n this.chart = new Chart(ctx, {\r\n // The type of chart we want to create\r\n type: 'line',\r\n // The data for our dataset\r\n data: {\r\n labels,\r\n datasets: this.getDatasets()\r\n },\r\n // Configuration options go here\r\n options: {\r\n\t\t\t\ttooltips: {\r\n callbacks: {\r\n label: function(tooltipItem: any, data: any): any {\r\n var procent = tooltipItem.yLabel\r\n var fertiger = data.datasets[tooltipItem.datasetIndex].label;\r\n return `${fertiger}: ${procent.toFixed(2).toString()}%`;\r\n }\r\n }\r\n },\r\n },\r\n });\r\n this.chart.update();\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ComplainRate.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ComplainRate.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ComplainRate.vue?vue&type=template&id=1fe0dd65\"\nimport script from \"./ComplainRate.vue?vue&type=script&lang=ts\"\nexport * from \"./ComplainRate.vue?vue&type=script&lang=ts\"\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","'use strict';\nvar dP = require('./_object-dp').f;\nvar create = require('./_object-create');\nvar redefineAll = require('./_redefine-all');\nvar ctx = require('./_ctx');\nvar anInstance = require('./_an-instance');\nvar forOf = require('./_for-of');\nvar $iterDefine = require('./_iter-define');\nvar step = require('./_iter-step');\nvar setSpecies = require('./_set-species');\nvar DESCRIPTORS = require('./_descriptors');\nvar fastKey = require('./_meta').fastKey;\nvar validate = require('./_validate-collection');\nvar SIZE = DESCRIPTORS ? '_s' : 'size';\n\nvar getEntry = function (that, key) {\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return that._i[index];\n // frozen object case\n for (entry = that._f; entry; entry = entry.n) {\n if (entry.k == key) return entry;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, NAME, '_i');\n that._t = NAME; // collection type\n that._i = create(null); // index\n that._f = undefined; // first entry\n that._l = undefined; // last entry\n that[SIZE] = 0; // size\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n });\n redefineAll(C.prototype, {\n // 23.1.3.1 Map.prototype.clear()\n // 23.2.3.2 Set.prototype.clear()\n clear: function clear() {\n for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {\n entry.r = true;\n if (entry.p) entry.p = entry.p.n = undefined;\n delete data[entry.i];\n }\n that._f = that._l = undefined;\n that[SIZE] = 0;\n },\n // 23.1.3.3 Map.prototype.delete(key)\n // 23.2.3.4 Set.prototype.delete(value)\n 'delete': function (key) {\n var that = validate(this, NAME);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.n;\n var prev = entry.p;\n delete that._i[entry.i];\n entry.r = true;\n if (prev) prev.n = next;\n if (next) next.p = prev;\n if (that._f == entry) that._f = next;\n if (that._l == entry) that._l = prev;\n that[SIZE]--;\n } return !!entry;\n },\n // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)\n // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)\n forEach: function forEach(callbackfn /* , that = undefined */) {\n validate(this, NAME);\n var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);\n var entry;\n while (entry = entry ? entry.n : this._f) {\n f(entry.v, entry.k, this);\n // revert to the last existing entry\n while (entry && entry.r) entry = entry.p;\n }\n },\n // 23.1.3.7 Map.prototype.has(key)\n // 23.2.3.7 Set.prototype.has(value)\n has: function has(key) {\n return !!getEntry(validate(this, NAME), key);\n }\n });\n if (DESCRIPTORS) dP(C.prototype, 'size', {\n get: function () {\n return validate(this, NAME)[SIZE];\n }\n });\n return C;\n },\n def: function (that, key, value) {\n var entry = getEntry(that, key);\n var prev, index;\n // change existing entry\n if (entry) {\n entry.v = value;\n // create new entry\n } else {\n that._l = entry = {\n i: index = fastKey(key, true), // <- index\n k: key, // <- key\n v: value, // <- value\n p: prev = that._l, // <- previous entry\n n: undefined, // <- next entry\n r: false // <- removed\n };\n if (!that._f) that._f = entry;\n if (prev) prev.n = entry;\n that[SIZE]++;\n // add to index\n if (index !== 'F') that._i[index] = entry;\n } return that;\n },\n getEntry: getEntry,\n setStrong: function (C, NAME, IS_MAP) {\n // add .keys, .values, .entries, [@@iterator]\n // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11\n $iterDefine(C, NAME, function (iterated, kind) {\n this._t = validate(iterated, NAME); // target\n this._k = kind; // kind\n this._l = undefined; // previous\n }, function () {\n var that = this;\n var kind = that._k;\n var entry = that._l;\n // revert to the last existing entry\n while (entry && entry.r) entry = entry.p;\n // get next entry\n if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {\n // or finish the iteration\n that._t = undefined;\n return step(1);\n }\n // return step by kind\n if (kind == 'keys') return step(0, entry.k);\n if (kind == 'values') return step(0, entry.v);\n return step(0, [entry.k, entry.v]);\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // add [@@species], 23.1.2.2, 23.2.2.2\n setSpecies(NAME);\n }\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('h1',{staticClass:\"font-weight-light\"},[_vm._v(\"Anzahl berechneter Artikel pro Monat, Region und Status\")]),_c('v-select',{attrs:{\"label\":\"Jahr\",\"items\":_vm.years},model:{value:(_vm.year),callback:function ($$v) {_vm.year=$$v},expression:\"year\"}}),(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\"}}):_vm._e(),_c('canvas',{ref:\"diagramCanvas\"})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport httpClient from '@/store/httpClient';\r\nconst Chart = require('chart.js');\r\n\r\n@Component\r\nexport default class UploadedArticlesReport extends Vue {\r\n private chart: any = null;\r\n private uploadReport: any = [];\r\n private loading: boolean = false;\r\n private year: number = new Date().getFullYear();\r\n\r\n private mounted() {\r\n this.loadReport();\r\n }\r\n\r\n private get years()\r\n {\r\n var lastYears = []\r\n for (let index = new Date().getFullYear(); index >= 2023; index--) {\r\n lastYears.push(index);\r\n }\r\n return lastYears;\r\n }\r\n\r\n @Watch('year')\r\n private async loadReport()\r\n {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get(`Report/GetUploadedArticlesPerRegion?year=${this.year}`);\r\n this.uploadReport = response.data;\r\n this.updateDiagram();\r\n } catch(err) {\r\n console.error('Loading report failed.');\r\n console.error(err);\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Fehler beim Laden der Reports. Siehe Konsole.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private getData()\r\n {\r\n const colors = {\r\n tealLight: '#4DB6AC',\r\n tealDark: '#00796B',\r\n blueLight: '#64B5F6',\r\n blueDark: '#1976D2',\r\n purpleLight: '#BA68C8',\r\n purpleDark: '#7B1FA2',\r\n }\r\n\r\n var data = {\r\n labels: this.uploadReport.map((c: any) => `${new Date(c.timeFrame).getMonth() + 1}-${new Date(c.timeFrame).getFullYear()}`),\r\n datasets: [\r\n {\r\n label: 'CH Bestellbar',\r\n data: this.uploadReport.map((r:any) => r.regions.filter((re: any) => re.regionName == 'CH/LI')[0]\r\n .articles.filter((ar: any) => ar.state == 0)[0].count),\r\n backgroundColor: colors.tealLight,\r\n stack: 'Stack 0',\r\n },\r\n {\r\n label: 'CH Error',\r\n data: this.uploadReport.map((r:any) => r.regions.filter((re: any) => re.regionName == 'CH/LI')[0]\r\n .articles.filter((ar: any) => ar.state == 1)[0].count),\r\n backgroundColor: colors.tealDark,\r\n stack: 'Stack 0',\r\n },\r\n {\r\n label: 'DE Bestellbar',\r\n data: this.uploadReport.map((r:any) => r.regions.filter((re: any) => re.regionName == 'DE')[0]\r\n .articles.filter((ar: any) => ar.state == 0)[0].count),\r\n backgroundColor: colors.blueLight,\r\n stack: 'Stack 1',\r\n },\r\n {\r\n label: 'DE Error',\r\n data: this.uploadReport.map((r:any) => r.regions.filter((re: any) => re.regionName == 'DE')[0]\r\n .articles.filter((ar: any) => ar.state == 1)[0].count),\r\n backgroundColor: colors.blueDark,\r\n stack: 'Stack 1',\r\n },\r\n {\r\n label: 'AT Bestellbar',\r\n data: this.uploadReport.map((r:any) => r.regions.filter((re: any) => re.regionName == 'AT')[0]\r\n .articles.filter((ar: any) => ar.state == 0)[0].count),\r\n backgroundColor: colors.purpleLight,\r\n stack: 'Stack 2',\r\n },\r\n {\r\n label: 'AT Error',\r\n data: this.uploadReport.map((r:any) => r.regions.filter((re: any) => re.regionName == 'AT')[0]\r\n .articles.filter((ar: any) => ar.state == 1)[0].count),\r\n backgroundColor: colors.purpleDark,\r\n stack: 'Stack 2',\r\n },\r\n ]\r\n }\r\n return data;\r\n }\r\n\r\n private updateDiagram() {\r\n\r\n\t\t// Destroy the chart if one already exists.\r\n\t\tif (this.chart != null) {\r\n\t\t\tthis.chart.destroy();\r\n\t\t}\r\n const ctx = (this.$refs.diagramCanvas as any).getContext('2d');\r\n \r\n this.chart = new Chart(ctx, {\r\n // The type of chart we want to create\r\n type: 'bar',\r\n // The data for our dataset\r\n data: this.getData(),\r\n options: {\r\n plugins: {\r\n title: {\r\n display: false,\r\n text: 'Chart.js Bar Chart - Stacked'\r\n },\r\n },\r\n responsive: true,\r\n interaction: {\r\n intersect: false,\r\n },\r\n scales: {\r\n x: {\r\n stacked: true,\r\n },\r\n y: {\r\n stacked: true\r\n }\r\n }\r\n }\r\n });\r\n this.chart.update();\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UploadedArticles.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UploadedArticles.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./UploadedArticles.vue?vue&type=template&id=09fa41ca\"\nimport script from \"./UploadedArticles.vue?vue&type=script&lang=ts\"\nexport * from \"./UploadedArticles.vue?vue&type=script&lang=ts\"\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","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dashboard.vue?vue&type=style&index=0&id=389611f8&prod&scoped=true&lang=css\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MaterialPrices.vue?vue&type=style&index=0&id=b6ae13b8&prod&scoped=true&lang=css\"","'use strict';\nvar global = require('./_global');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar redefineAll = require('./_redefine-all');\nvar meta = require('./_meta');\nvar forOf = require('./_for-of');\nvar anInstance = require('./_an-instance');\nvar isObject = require('./_is-object');\nvar fails = require('./_fails');\nvar $iterDetect = require('./_iter-detect');\nvar setToStringTag = require('./_set-to-string-tag');\nvar inheritIfRequired = require('./_inherit-if-required');\n\nmodule.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {\n var Base = global[NAME];\n var C = Base;\n var ADDER = IS_MAP ? 'set' : 'add';\n var proto = C && C.prototype;\n var O = {};\n var fixMethod = function (KEY) {\n var fn = proto[KEY];\n redefine(proto, KEY,\n KEY == 'delete' ? function (a) {\n return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'has' ? function has(a) {\n return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'get' ? function get(a) {\n return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'add' ? function add(a) { fn.call(this, a === 0 ? 0 : a); return this; }\n : function set(a, b) { fn.call(this, a === 0 ? 0 : a, b); return this; }\n );\n };\n if (typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () {\n new C().entries().next();\n }))) {\n // create collection constructor\n C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);\n redefineAll(C.prototype, methods);\n meta.NEED = true;\n } else {\n var instance = new C();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n var ACCEPT_ITERABLES = $iterDetect(function (iter) { new C(iter); }); // eslint-disable-line no-new\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new C();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n if (!ACCEPT_ITERABLES) {\n C = wrapper(function (target, iterable) {\n anInstance(target, C, NAME);\n var that = inheritIfRequired(new Base(), target, C);\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n return that;\n });\n C.prototype = proto;\n proto.constructor = C;\n }\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n // weak collections should not contains .clear method\n if (IS_WEAK && proto.clear) delete proto.clear;\n }\n\n setToStringTag(C, NAME);\n\n O[NAME] = C;\n $export($export.G + $export.W + $export.F * (C != Base), O);\n\n if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);\n\n return C;\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[(_vm.regionPriceLists.length > 0)?_c('v-tabs',[_vm._l((_vm.regionPriceLists),function(region){return _c('v-tab',{key:region.regionId},[_vm._v(\"\\r\\n \"+_vm._s(region.regionName)+\"\\r\\n \")])}),_vm._l((_vm.regionPriceLists),function(region){return _c('v-tab-item',{key:region.regionId},[_c('v-data-table',{attrs:{\"hide-actions\":\"\",\"dense\":\"\",\"headers\":[\r\n {\r\n text: 'Werkstoffe',\r\n value: 'werkstoff',\r\n },\r\n {\r\n text: 'Verfügbar',\r\n value: 'available',\r\n }\r\n ],\"items\":region.werkstoffe,\"item-key\":\"werkstoff\"},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('tr',{staticClass:\"orderRow\",on:{\"click\":function($event){props.expanded = !props.expanded}}},[_c('td',[_vm._v(_vm._s(props.item.werkstoff))]),_c('td',{on:{\"click\":function($event){$event.stopPropagation();}}},[_c('v-checkbox',{on:{\"change\":function($event){return _vm.assignWerkstoffToRegion(region.regionId, \r\n props.item.werkstoff, props.item.available)}},model:{value:(props.item.available),callback:function ($$v) {_vm.$set(props.item, \"available\", $$v)},expression:\"props.item.available\"}})],1)])]}},{key:\"expand\",fn:function(props){return [_c('v-data-table',{staticClass:\"elevation-1 ml-3 mb-3\",attrs:{\"headers\":[\r\n {\r\n text: 'Fab Id',\r\n align: 'right',\r\n sortable: false,\r\n value: 'id',\r\n },\r\n {\r\n text: 'Name',\r\n align: 'left',\r\n sortable: false,\r\n value: 'name',\r\n },\r\n {\r\n text: 'Bezeichnung',\r\n align: 'left',\r\n sortable: false,\r\n value: 'bezeichnung',\r\n },\r\n {\r\n text: 'Dicke',\r\n align: 'right',\r\n sortable: false,\r\n value: 'thickness',\r\n },\r\n {\r\n text: 'Preise',\r\n align: 'left',\r\n sortable: false,\r\n value: 'modelPrices',\r\n },\r\n ],\"hide-actions\":\"\",\"dense\":\"\",\"items\":props.item.materials,\"item-key\":\"item.werkstoff\"},scopedSlots:_vm._u([{key:\"items\",fn:function(position){return [_c('tr',[_c('td',{staticStyle:{\"text-align\":\"right\"}},[_vm._v(_vm._s(position.item.id))]),_c('td',[_vm._v(_vm._s(position.item.name))]),_c('td',[_vm._v(_vm._s(position.item.beschreibung))]),_c('td',{staticStyle:{\"text-align\":\"right\"}},[_vm._v(_vm._s(position.item.thickness))]),_c('td',[_c('v-layout',{staticClass:\"my-2\",attrs:{\"column\":\"\"}},_vm._l((position.item.modelPrices),function(modelPrice){return _c('v-flex',{key:modelPrice.priceModel},[_c('v-form',{ref:\"priceForm\",refInFor:true,model:{value:(modelPrice.valid),callback:function ($$v) {_vm.$set(modelPrice, \"valid\", $$v)},expression:\"modelPrice.valid\"}},[_c('v-text-field',{attrs:{\"label\":_vm.getEnumNameFromValue(modelPrice.priceModel),\"suffix\":region.currency,\"hide-details\":\"\",\"rules\":_vm.optionalNonNegativeNumberRule,\"placeholder\":modelPrice.priceModel == 0 ? '' : _vm.getPlaceholder(position.item)},on:{\"keyup\":function($event){(modelPrice.price === null || modelPrice.price.trim() === '') ? modelPrice.price = null : {}},\"change\":function($event){return _vm.updateMaterial(position.item, region.regionId, modelPrice.valid)}},model:{value:(modelPrice.price),callback:function ($$v) {_vm.$set(modelPrice, \"price\", $$v)},expression:\"modelPrice.price\"}})],1)],1)}),1)],1)])]}}],null,true)})]}}],null,true)})],1)})],2):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport httpClient from '../../store/httpClient';\r\nimport rules from \"@/store/rules\";\r\nimport { RegionPriceListDto } from '../../dtos/regionPriceListDto';\r\nimport { MaterialWithPriceDto } from '../../dtos/materialWithPriceDto';\r\nimport { PriceModel } from '@/dtos/priceModel';\r\nimport { WerkstoffDto } from '@/dtos/werkstoffDto';\r\nimport { MaterialPriceDto } from '@/dtos/materialPriceDto';\r\n@Component\r\nexport default class Settings extends Vue {\r\n private loading: boolean = false;\r\n private regionPriceLists: RegionPriceListDto[] = [];\r\n private requiredNonNegativeNumberRule = rules.requiredNonNegativeNumberRule;\r\n\tprivate optionalNonNegativeNumberRule = rules.optionalNonNegativeNumberRule;\r\n private formValid: boolean = false;\r\n\r\n private async mounted() {\r\n await this.loadPrices();\r\n }\r\n\r\n private getEnumNameFromValue(enumValue: number) {\r\n\t\treturn PriceModel[enumValue];\r\n\t}\r\n\r\n\tprivate getPlaceholder(material: MaterialWithPriceDto) {\r\n let standardPrice = material.modelPrices.filter((mp:MaterialPriceDto) => mp.priceModel == PriceModel.Standard)[0].price;\r\n return `Erbt von Standard: ${standardPrice}`;\r\n\t}\r\n\r\n private get formsValid(): boolean {\r\n let valid = true;\r\n\t\tthis.regionPriceLists.forEach((rp: RegionPriceListDto) => {\r\n rp.werkstoffe.forEach((w: WerkstoffDto) => {\r\n w.materials.forEach((m: MaterialWithPriceDto) => {\r\n m.modelPrices.forEach((mp: MaterialPriceDto) => {\r\n if (!mp.valid) {\r\n valid = false;\r\n console.log(`invalid: region=${rp.regionId} | material=${m.name} | price=${this.getEnumNameFromValue(mp.priceModel)}`);\r\n }\r\n })\r\n })\r\n })\r\n });\r\n return valid;\r\n\t}\r\n\r\n private async loadPrices() {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get(`Material/GetMaterialPrices`);\r\n this.regionPriceLists = response.data;\r\n } catch {\r\n console.log('Loading prices failed.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async updateMaterial(material: MaterialWithPriceDto, regionId: string, valid: boolean) {\r\n if (!valid) {\r\n console.log('forms not valid');\r\n return;\r\n }\r\n try {\r\n this.loading = true;\r\n await httpClient().post(`Material/UpdateMaterialPrice?regionId=${regionId}`, material);\r\n this.$store.commit('setSnackbarText', 'Änderungen erfolgreich gespeichert.');\r\n } catch(err) {\r\n this.$store.commit('setSnackbarErrorText', 'Änderungen konnten nicht gespeichert werden.');\r\n console.log('Saving price failed.', err);\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private async assignWerkstoffToRegion(regionId: number, werkstoff: string, available: boolean) {\r\n try {\r\n this.loading = true;\r\n await httpClient().post(`Material/AssignWerkstoffToRegion?regionId=${regionId}` +\r\n `&werkstoff=${werkstoff}&available=${available}`);\r\n if (available) {\r\n this.$store.commit('setSnackbarText', 'Werkstoff erfolgreich der Region zugewiesen.');\r\n } else {\r\n this.$store.commit('setSnackbarText', 'Werkstoff erfolgreich aus der Region entfernt.');\r\n }\r\n } catch(err) {\r\n this.$store.commit('setSnackbarErrorText', 'Werkstoff konnte nicht zugewiesen werden.');\r\n console.log('Assigning werkstoff to region failed.', err);\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n}\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MaterialPrices.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MaterialPrices.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./MaterialPrices.vue?vue&type=template&id=b6ae13b8&scoped=true\"\nimport script from \"./MaterialPrices.vue?vue&type=script&lang=ts\"\nexport * from \"./MaterialPrices.vue?vue&type=script&lang=ts\"\nimport style0 from \"./MaterialPrices.vue?vue&type=style&index=0&id=b6ae13b8&prod&scoped=true&lang=css\"\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 \"b6ae13b8\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Log.vue?vue&type=style&index=0&id=4ca5d811&prod&scoped=true&lang=css\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dashboard.vue?vue&type=style&index=0&id=cba6a7ae&prod&lang=css\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportIncomingOrders.vue?vue&type=style&index=0&id=3a3fd7f9&prod&lang=css\"","export enum AddressType {\r\n CustomerPersonal = 0,\r\n CustomerInvoice = 1,\r\n CustomerDelivery = 2,\r\n OrderInvoice = 3,\r\n\tOrderDelivery = 4,\r\n}","'use strict';\nvar strong = require('./_collection-strong');\nvar validate = require('./_validate-collection');\nvar MAP = 'Map';\n\n// 23.1 Map Objects\nmodule.exports = require('./_collection')(MAP, function (get) {\n return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.1.3.6 Map.prototype.get(key)\n get: function get(key) {\n var entry = strong.getEntry(validate(this, MAP), key);\n return entry && entry.v;\n },\n // 23.1.3.9 Map.prototype.set(key, value)\n set: function set(key, value) {\n return strong.def(validate(this, MAP), key === 0 ? 0 : key, value);\n }\n}, strong, true);\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('h1',{staticClass:\"font-weight-light\"},[_vm._v(\"Lieferverzögerung der Aufträge in Prozent\")]),_c('v-select',{attrs:{\"label\":\"Jahr\",\"items\":_vm.years},model:{value:(_vm.year),callback:function ($$v) {_vm.year=$$v},expression:\"year\"}}),(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\"}}):_vm._e(),_c('canvas',{ref:\"diagramCanvas\"})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport httpClient from '@/store/httpClient';\r\nconst Chart = require('chart.js');\r\nconst Utils = require('chart.js');\r\n\r\n@Component\r\nexport default class DeliveryDelayReport extends Vue {\r\n private chart: any = null;\r\n private delayReports: any = [];\r\n private loading: boolean = false;\r\n private year: number = new Date().getFullYear();\r\n\r\n private mounted() {\r\n this.loadReport();\r\n }\r\n\r\n private get years()\r\n {\r\n var lastYears = []\r\n for (let index = new Date().getFullYear(); index >= 2012; index--) {\r\n lastYears.push(index);\r\n }\r\n return lastYears;\r\n }\r\n\r\n @Watch('year')\r\n private async loadReport()\r\n {\r\n try {\r\n this.loading = true;\r\n const response = await httpClient().get(`Report/GetDeliveryDelay?year=${this.year}`);\r\n const manufacturersResponse = await httpClient().get(`Manufacturer/GetManufacturers`);\r\n console.log(manufacturersResponse);\r\n this.delayReports = response.data;\r\n for (const report of this.delayReports) {\r\n const fertiger = manufacturersResponse.data.filter((m: any) => m.id === report.fertigerId)[0];\r\n if (fertiger !== undefined) {\r\n report.fertigerId = fertiger.name;\r\n } else {\r\n console.log(report)\r\n }\r\n }\r\n this.updateDiagram();\r\n } catch(err) {\r\n console.error('Loading delay reports failed.');\r\n console.error(err);\r\n\t\t\tthis.$store.commit('setSnackbarErrorText', 'Fehler beim Laden der Reports. Siehe Konsole.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private getDatasets()\r\n {\r\n var datasets: any = [\r\n {\r\n label: 'Pünktlich',\r\n data: [...this.delayReports.map((r:any) => r.procentOnTime.toFixed(1))],\r\n backgroundColor: '#378805',\r\n },\r\n {\r\n label: '1 Tag verzögert',\r\n data: [...this.delayReports.map((r:any) => r.procentOneDayDelay.toFixed(1))],\r\n backgroundColor: '#ffad33',\r\n },\r\n {\r\n label: '2 Tage und mehr',\r\n data: [...this.delayReports.map((r:any) => r.procentMoreThenOneDayDelay.toFixed(1))],\r\n backgroundColor: '#e10000',\r\n }\r\n ];\r\n \r\n return datasets;\r\n }\r\n\r\n private updateDiagram() {\r\n const labels = this.delayReports.map((r: any) => \r\n\t\t `${r.fertigerId}`);\r\n\r\n\t\t// Destroy the chart if one already exists.\r\n\t\tif (this.chart != null) {\r\n\t\t\tthis.chart.destroy();\r\n\t\t}\r\n\r\n const ctx = (this.$refs.diagramCanvas as any).getContext('2d');\r\n this.chart = new Chart(ctx, {\r\n // The type of chart we want to create\r\n type: 'bar',\r\n // The data for our dataset\r\n data: {\r\n labels: labels,\r\n datasets: this.getDatasets()\r\n },\r\n options: {\r\n plugins: {\r\n title: {\r\n display: true,\r\n text: 'Lieferverzögerung'\r\n },\r\n },\r\n responsive: true,\r\n scales: {\r\n xAxes: [{\r\n stacked: true \r\n }],\r\n yAxes: [{\r\n stacked: true,\r\n ticks: {\r\n min: 0, // minimum value\r\n max: 100 // maximum value\r\n }\r\n }]\r\n }\r\n }\r\n });\r\n this.chart.update();\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DeliveryDelay.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DeliveryDelay.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./DeliveryDelay.vue?vue&type=template&id=57029cd5\"\nimport script from \"./DeliveryDelay.vue?vue&type=script&lang=ts\"\nexport * from \"./DeliveryDelay.vue?vue&type=script&lang=ts\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-layout',{attrs:{\"row\":\"\",\"align-end\":\"\"}},[_c('v-flex',{staticClass:\"mr-3 pt-4\"},[_c('v-text-field',{attrs:{\"placeholder\":\"Suchbegriff\"},model:{value:(_vm.suche),callback:function ($$v) {_vm.suche=$$v},expression:\"suche\"}})],1),_c('v-flex',{staticClass:\"mr-3\",staticStyle:{\"width\":\"200px\"}},[_c('v-select',{attrs:{\"clearable\":\"\",\"items\":_vm.systems,\"chips\":\"\",\"label\":\"System\",\"return-object\":false,\"multiple\":\"\"},model:{value:(_vm.system),callback:function ($$v) {_vm.system=$$v},expression:\"system\"}})],1),_c('v-flex',{staticClass:\"mr-3\",staticStyle:{\"width\":\"130px\"}},[_c('v-select',{attrs:{\"clearable\":\"\",\"items\":_vm.levels,\"chips\":\"\",\"label\":\"Level\",\"multiple\":\"\"},model:{value:(_vm.level),callback:function ($$v) {_vm.level=$$v},expression:\"level\"}})],1),_c('v-flex',{staticClass:\"pt-2\"},[_c('date-picker',{attrs:{\"selectedDate\":_vm.startDateString,\"pastDateAllowed\":true,\"futureDateAllowed\":false,\"label\":\"Starttag\"},on:{\"update:selectedDate\":function($event){return _vm.setStartDate($event)}}})],1)],1),(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\"}}):_vm._e(),_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"items\":_vm.logs,\"hide-actions\":true,\"hide-headers\":true},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('tr',{class:props.item.level},[_c('td',{staticStyle:{\"max-width\":\"100px\"}},[_vm._v(_vm._s(props.item.system))]),_c('td',{staticStyle:{\"max-width\":\"100px\"}},[_vm._v(_vm._s(props.item.level))]),_c('td',{staticStyle:{\"max-width\":\"100px\"}},[_vm._v(_vm._s(_vm._f(\"formatDateAndTime\")(props.item.timeStamp)))]),_c('td',{staticStyle:{\"max-width\":\"500px\"}},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.formattedMessage(props.item.message))}})]),_c('td',{staticStyle:{\"max-width\":\"500px\",\"font-size\":\"0.8em\"}},[_vm._v(_vm._s(props.item.exception))])])]}}])})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport { debounce } from 'typescript-debounce-decorator';\r\nimport moment from 'moment';\r\nimport httpClient from '../store/httpClient';\r\nimport DatePicker from '../components/DatePicker.vue';\r\n\r\n@Component({\r\n components: {\r\n 'date-picker': DatePicker,\r\n },\r\n})\r\nexport default class Log extends Vue {\r\n private logs: any = [];\r\n private loading: boolean = false;\r\n private startDateString: string = moment().format('YYYY-MM-DD');\r\n private suche: string = '';\r\n private systems: any = [\r\n {text: 'Erp', value: 'Erp'},\r\n {text: 'Shop', value: 'Kundenportal'},\r\n {text: 'Helpdesk', value: 'Helpdesk'},\r\n {text: 'Fertigung', value: 'Fertigerportal'},\r\n {text: 'CalculateApi', value: 'CalculateApi'},\r\n {text: 'Monitor', value: 'Monitor'},\r\n {text: 'SpaceClaimApi', value: 'SpaceClaimApi'},\r\n {text: 'Identity', value: 'Identity'},\r\n {text: 'Packaging', value: 'Packaging'},\r\n {text: 'Cam', value: 'Cam'},\r\n ];\r\n \r\n private levels: any = ['Debug', 'Information', 'Warning', 'Error', 'Fatal'];\r\n private level: any = ['Debug', 'Information', 'Warning', 'Error', 'Fatal'];\r\n private mounted() {\r\n var storedValue = localStorage.getItem('suche');\r\n if (storedValue != null) {\r\n this.suche = storedValue;\r\n }\r\n this.loadLog(true);\r\n }\r\n\r\n private async loadLog(reload: boolean) {\r\n try {\r\n this.loading = true;\r\n let from = 0;\r\n if (!reload) {\r\n\t\t\t\tfrom = this.logs.length;\r\n\t\t\t}\r\n const response = await httpClient().get(`Log/GetLogs?skip=${from}&take=50&start=${this.startDateString}`\r\n + `&suche=${this.suche}&system=${this.system}&level=${this.level}`);\r\n\r\n if (reload) {\r\n this.logs = response.data;\r\n } else {\r\n response.data.forEach((c: any) => {\r\n const logIndex = this.logs.findIndex((log:any) => log.id == c.id);\r\n if (logIndex >= 0){\r\n this.logs.splice(logIndex, 1, c);\r\n } else {\r\n this.logs.push(c);\r\n }\r\n });\r\n }\r\n } catch {\r\n this.$store.commit('setSnackbarErrorText', 'Fehler beim Laden der Logs.');\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n private get system() {\r\n \r\n var systemsAsJson = localStorage.getItem('systems');\r\n if (systemsAsJson == null) {\r\n return ['Erp', 'Kundenportal', 'Helpdesk', 'Fertigerportal', 'Identity', 'CalculateApi', 'SpaceClaimApi', 'Cam', 'Monitor', 'Packaging'];\r\n } else {\r\n var systems = JSON.parse(systemsAsJson);\r\n return systems;\r\n }\r\n }\r\n private set system(selected: string[]) {\r\n localStorage.setItem('systems', JSON.stringify(selected));\r\n this.loadLog(true);\r\n }\r\n\r\n @Watch('level')\r\n private reload() {\r\n this.loadLog(true);\r\n }\r\n\r\n @debounce(700, { leading: false })\r\n @Watch('suche')\r\n private sucheChanged() {\r\n localStorage.setItem('suche', this.suche);\r\n this.loadLog(true);\r\n }\r\n\r\n private formattedMessage(message: string) {\r\n var textArea = document.createElement('textarea');\r\n textArea.innerHTML = message;\r\n let newMessage = textArea.innerHTML.replace(/(?:\\r\\n|\\r|\\n)/g, '
');\r\n return newMessage;\r\n }\r\n\r\n private checkBottom() {\r\n\t\tlet bottomOfWindow = (window.innerHeight + window.pageYOffset) >= document.body.offsetHeight - 2;\r\n\t\tif (bottomOfWindow && !this.loading) {\r\n\t\t\tthis.loadLog(false);\r\n\t\t}\r\n\t}\r\n\r\n private setStartDate(date: Date) {\r\n this.startDateString = moment(date).format('YYYY-MM-DD');\r\n this.loadLog(true);\r\n }\r\n\r\n beforeRouteEnter(to: any, from: any, next: any) {\r\n\t\tnext((vm: any) => {\r\n\t\t\twindow.addEventListener('scroll', vm.checkBottom);\r\n\t\t});\r\n\t}\r\n\r\n\tbeforeRouteLeave(to: any, from: any, next: any) {\r\n\t\twindow.removeEventListener('scroll', this.checkBottom);\r\n\t\tnext();\r\n\t}\r\n}\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Log.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Log.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Log.vue?vue&type=template&id=4ca5d811&scoped=true\"\nimport script from \"./Log.vue?vue&type=script&lang=ts\"\nexport * from \"./Log.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Log.vue?vue&type=style&index=0&id=4ca5d811&prod&scoped=true&lang=css\"\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 \"4ca5d811\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\"}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.loading),expression:\"!loading\"}],staticStyle:{\"height\":\"7px\"}}),_c('v-progress-linear',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.loading),expression:\"loading\"}],staticStyle:{\"margin\":\"0\"},attrs:{\"indeterminate\":\"\"}}),_c('div',[_c('h1',{staticClass:\"font-weight-light\"},[_vm._v(\"Auftrag erstellen\")])]),(_vm.customer != null)?_c('div',[_vm._v(\"\\n Kunde: \"+_vm._s(_vm.customer.customerId)+\" \"+_vm._s(_vm.customer.eMail)+\"\\n \")]):_vm._e(),_c('v-textarea',{attrs:{\"label\":\"Beschreibung des Auftrags (optional)\"},on:{\"blur\":function($event){_vm.comment = _vm.comment.trim()}},model:{value:(_vm.comment),callback:function ($$v) {_vm.comment=$$v},expression:\"comment\"}}),_c('h2',{staticClass:\"font-weight-light\"},[_vm._v(\"Positionen\")]),_c('v-form',{model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('table',_vm._l((_vm.positions),function(position,index){return _c('position-component',{key:index,attrs:{\"position\":position}})}),1)]),_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"title\":\"Position hinzufügen\"},on:{\"click\":function($event){return _vm.addPosition()}}},[_c('v-icon',{attrs:{\"large\":\"\"}},[_vm._v(\"\\n add\\n \")])],1),_c('hr'),_c('div',[_c('v-btn',{staticClass:\"blexon-button\",attrs:{\"disabled\":!_vm.valid || _vm.positions.length <= 0},on:{\"click\":function($event){return _vm.save()}}},[_vm._v(\"\\n Speichern\\n \")])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\nexport class QuickOrderPositionDto {\r\n public position: number = 0;\r\n public description: string = '';\r\n public quantity: number = 0;\r\n public unit: string = '';\r\n public pricePerUnit: number = 0;\r\n}\r\n","\r\n\r\nimport { QuickOrderPositionDto } from \"./quickOrderPositionDto\";\r\n\r\nexport class QuickInvoiceDto {\r\n public customerId: number = 0;\r\n public comment: string = '';\r\n public positions: QuickOrderPositionDto[] = [];\r\n}\r\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',[_c('td',[_vm._v(\"\\n \"+_vm._s(_vm.position.position)+\"\\n \")]),_c('td',{staticStyle:{\"width\":\"300px\",\"padding-left\":\"10px\"}},[_c('v-combobox',{attrs:{\"items\":_vm.gefilterteArtikel,\"hint\":\"Tippen zum Suchen\",\"label\":\"Artikel\",\"cache-items\":\"\",\"search-input\":_vm.articleFilter},on:{\"change\":function($event){return _vm.setArticle(_vm.position)},\"update:searchInput\":function($event){_vm.articleFilter=$event},\"update:search-input\":function($event){_vm.articleFilter=$event}},scopedSlots:_vm._u([{key:\"item\",fn:function(data){return [_c('span',[_vm._v(_vm._s(data.item.id)+\" | \"+_vm._s(data.item.name))])]}}]),model:{value:(_vm.position.description),callback:function ($$v) {_vm.$set(_vm.position, \"description\", $$v)},expression:\"position.description\"}})],1),_c('td',{staticStyle:{\"width\":\"100px\",\"padding-left\":\"10px\"}},[_c('v-text-field',{attrs:{\"rules\":_vm.requiredRule,\"label\":\"Menge\",\"type\":\"number\"},model:{value:(_vm.position.quantity),callback:function ($$v) {_vm.$set(_vm.position, \"quantity\", _vm._n($$v))},expression:\"position.quantity\"}})],1),_c('td',{staticStyle:{\"width\":\"100px\",\"padding-left\":\"10px\"}},[_c('v-text-field',{attrs:{\"rules\":_vm.requiredStringMax10Rule,\"label\":\"Einheit\"},on:{\"blur\":function($event){_vm.position.unit = _vm.position.unit.trim();}},model:{value:(_vm.position.unit),callback:function ($$v) {_vm.$set(_vm.position, \"unit\", $$v)},expression:\"position.unit\"}})],1),_c('td',{staticStyle:{\"width\":\"100px\",\"padding-left\":\"10px\"}},[_c('v-text-field',{attrs:{\"rules\":_vm.requiredNumberRule,\"label\":\"Einzelpreis\",\"type\":\"number\"},model:{value:(_vm.position.pricePerUnit),callback:function ($$v) {_vm.$set(_vm.position, \"pricePerUnit\", _vm._n($$v))},expression:\"position.pricePerUnit\"}})],1),_c('td',{staticStyle:{\"width\":\"100px\",\"padding-left\":\"10px\"}},[_vm._v(\"\\n \"+_vm._s(_vm.getTotal(_vm.position))+\"\\n \")])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch } from \"vue-property-decorator\";\r\nimport httpClient from \"../../store/httpClient\";\r\nimport { QuickOrderPositionDto } from \"@/dtos/quickOrderPositionDto\";\r\nimport rules from '@/store/rules'\r\n\r\n@Component\r\nexport default class QuickOrder extends Vue {\r\n\t@Prop() \r\n private position!: QuickOrderPositionDto;\r\n\tprivate gefilterteArtikel: any = [];\r\n\tprivate articleFilter: string = \"\";\r\n\tprivate valid: boolean = false;\r\n private requiredRule = rules.requiredIntegerRule;\r\n private requiredStringMax10Rule = rules.requiredStringMax10Rule;\r\n private requiredNumberRule = rules.requiredNumberRule;\r\n\r\n private setArticle(position: any) {\r\n if (position.description.name != undefined) {\r\n // Ein Objekt in der Liste wurde ausgewählt\r\n // Wir speichern aber immer nur den Namen\r\n position.description = position.description.name;\r\n }\r\n console.log(position.description)\r\n }\r\n\r\n @Watch('articleFilter')\r\n private async loadArticle() {\r\n try {\r\n\r\n const generalArticleResponse = await httpClient().get('Article/GetGeneralArticles?' +\r\n `searchTerm=${this.articleFilter}`);\r\n for (const iterator of generalArticleResponse.data) {\r\n iterator.text = iterator.id + ' | ' + iterator.name;\r\n }\r\n this.gefilterteArtikel = generalArticleResponse.data;\r\n } catch {\r\n console.error('Load article failed.');\r\n }\r\n }\r\n\r\n\tprivate getTotal(position: QuickOrderPositionDto) {\r\n\t\treturn (position.quantity * position.pricePerUnit).toFixed(2);\r\n\t}\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Position.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Position.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Position.vue?vue&type=template&id=6f25ed3a\"\nimport script from \"./Position.vue?vue&type=script&lang=ts\"\nexport * from \"./Position.vue?vue&type=script&lang=ts\"\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","\r\nimport { Component, Vue, Prop, Watch } from \"vue-property-decorator\";\r\nimport httpClient from \"../../store/httpClient\";\r\nimport { QuickOrderPositionDto } from \"@/dtos/quickOrderPositionDto\";\r\nimport { QuickInvoiceDto } from \"@/dtos/quickInvoiceDto\";\r\nimport { CustomerInfoDto } from \"@/dtos/customerInfoDto\";\r\nimport PositionComponent from './Position.vue';\r\n\r\n@Component({\r\n components: {\r\n 'position-component': PositionComponent,\r\n },\r\n})\r\nexport default class QuickOrder extends Vue {\r\n\t@Prop() private customerId!: number;\r\n\tprivate customer: CustomerInfoDto | null = null;\r\n\tprivate loading: boolean = false;\r\n\tprivate positions: QuickOrderPositionDto[] = [];\r\n\tprivate comment: string = \"\";\r\n\tprivate valid: boolean = false;\r\n \r\n\tprivate mounted() {\r\n\t\tthis.loadCustomer();\r\n\t}\r\n\r\n\tprivate async loadCustomer() {\r\n\t\ttry {\r\n\t\t\tthis.loading = true;\r\n\t\t\tconst response = await httpClient().get(`customer/getCustomerInfoById?customerId=${this.customerId}`);\r\n\t\t\tthis.customer = response.data;\r\n\t\t} catch {\r\n\t\t\tconsole.log(\"Load customer failed.\");\r\n\t\t} finally {\r\n\t\t\tthis.loading = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprivate async save() {\r\n\t\ttry {\r\n\t\t\tthis.loading = true;\r\n\t\t\tvar order = new QuickInvoiceDto();\r\n\t\t\torder.comment = this.comment;\r\n\t\t\torder.customerId = this.customerId;\r\n\t\t\torder.positions = this.positions;\r\n\t\t\tawait httpClient().post(`customerOrder/createQuickInvoice`, order);\r\n history.back();\r\n\t\t} catch {\r\n\t\t\tconsole.log(\"Save order failed.\");\r\n\t\t} finally {\r\n\t\t\tthis.loading = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprivate addPosition() {\r\n\t\tvar newPosition = new QuickOrderPositionDto();\r\n\t\tnewPosition.position = this.positions.length + 1;\r\n\t\tthis.positions.push(newPosition);\r\n\t}\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./QuickOrder.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./QuickOrder.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./QuickOrder.vue?vue&type=template&id=f9eb29cc\"\nimport script from \"./QuickOrder.vue?vue&type=script&lang=ts\"\nexport * from \"./QuickOrder.vue?vue&type=script&lang=ts\"\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","// https://github.com/tc39/proposal-object-values-entries\nvar $export = require('./_export');\nvar $entries = require('./_object-to-array')(true);\n\n$export($export.S, 'Object', {\n entries: function entries(it) {\n return $entries(it);\n }\n});\n"],"sourceRoot":""}