{"version":3,"sources":["store/services/operations.js","store/addresses/selectors/getAddressesList.js","store/addresses/selectors/getAddressesMeta.js","store/addresses/selectors/getAddressesPending.js","store/apps/actions.js","store/users/operations.js","store/auth/operations.js","store/permissions/slice.js","store/service_partnersOld/actions.js","store/addresses/services.js","utils/api.js","store/localitiesSlice.js","store/devicesOld/actions.js","features/ui/uiSlice.js","store/companies/types.js","store/products/types.js","store/addresses/selectors/getAddressesSelected.js","store/servicePartnersSlice.js","components/organisms/ReassignIntercomModal.js","config.js","store/addresses/addressesSlice.js","store/service_partnersOld/operations.js","components/molecules/SuccessfullPaymentForm/index.js","store/companies/actions.js","store/intercom/actions.js","store/intercom/types.js","store/products/actions.js","features/analytics/analyticsSlice.js","globalTypes.js","store/apps/operations.js","features/Services/servicesSlice.js","components/organisms/InviteUKModal/AddressesList.js","features/Services/face_rec.svg","components/organisms/CompanyPermissionsCard/CompanyPermissionsCard.js","components/organisms/InviteUKModal/PermissionsForm.js","components/index.js","store/products/operations.js","components/atoms/AccessError/index.js","components/molecules/BuyProductForm/index.js","components/molecules/DepositForm/index.js","components/molecules/SpringCard/index.js","components/organisms/AcceptLicenseModal/index.js","components/organisms/BillingAccountInfo/index.js","components/organisms/InvitePartnerModal/index.js","components/organisms/InviteUKModal/index.js","features/PartnerProgram/FrontBar.js","features/PartnerProgram/ProgressBar.js","features/PartnerProgram/ListItem.js","components/pages/PartnerProgramPage/success.png","components/pages/PartnerProgramPage/analyctic.png","components/pages/PartnerProgramPage/avatar.png","components/pages/PartnerProgramPage/human.svg","components/pages/PartnerProgramPage/actionHelper.svg","features/PartnerProgram/straightLine.svg","features/PartnerProgram/downLine.svg","features/PartnerProgram/upLine.svg","features/PartnerProgram/MoneyCard.js","features/PartnerProgram/MoneyCardContainer.js","components/pages/PartnerProgramPage/index.js","components/pages/PartnerProgramPage/star1.png","components/pages/PartnerProgramPage/star2.png","components/pages/PartnerProgramPage/star3.png","components/organisms/EditUKModal/UKList.js","components/organisms/EditUKModal/UKLinkedList.js","components/organisms/EditUKModal/index.js","components/atoms/CreditCard/visa.svg","components/atoms/CreditCard/mastercard.svg","components/atoms/CreditCard/index.js","features/Customization/customizationSlice.js","utils/helpers.js","store/intercom/operations.js","features/RoadMap/RoadMapSlice.js","components/atoms/Link/index.js","store/services/types.js","components/organisms/BillingAccountForm/index.js","components/organisms/UnitEconomyModal/index.js","store/users/types.js","store/actions.js","store/devicesSlice.js","store/billing/types.js","store sync //.//.+//operations/.js$","store/companies/operations.js","store/devicesOld/operations.js","store/services/actions.js","store sync //.//.+//reducers/.js$","store/apps/reducers.js","store/auth/reducers.js","store/billing/reducers.js","store/operations.js","store/companies/reducers.js","store/devicesOld/reducers.js","store/intercom/reducers.js","store/service_partnersOld/reducers.js","store/services/reducers.js","store/users/reducers.js","components sync //.//[^/]+//[^/]+//index/.js$","store/users/actions.js","components/atoms/DepositOption/index.js","components/atoms/Fade/index.js","components/atoms/Headline/index.js","components/atoms/Option/index.js","components/atoms/Options/index.js","components/atoms/Search/index.js","components/atoms/ServiceActions/index.js","components/atoms/TransactionStatus/index.js","store/permissions/services.js","components/atoms/UpdateLabel/index.js","components/molecules/AccountBalance/index.js","components/molecules/BillingStats/index.js","store/auth/types.js","store/auth/actions.js","store/permissions/selectors/getAppAbilitiesList.js","store/permissions/selectors/getPermissionsCurrentCompany.js","store/permissions/selectors/getPermissionsList.js","store/permissions/selectors/getCompaniesList.js","store/permissions/selectors/getManagementCompaniesPending.js","store/permissions/selectors/getCurrentCompanyPending.js","store/permissions/selectors/getCurrentCompanyAddresses.js","store/billing/actions.js","components/molecules/GlobalService/index.js","components/molecules/ProductCard/index.js","components/molecules/Service/index.js","components/molecules/TransactionsTable/index.js","components/organisms/AddUserModal/index.js","components/organisms/BuyProductModal/index.js","components/organisms/DepositModal/index.js","components/organisms/SubscriptionPlan/index.js","components/organisms/UpdateModal/index.js","components/pages/AccountsPage/index.js","components/pages/BillingPage/index.js","store sync //.//.+//actions/.js$","components/pages/BuyPage/index.js","components/pages/ServicePage/index.js","components/pages/ServicesPage/index.js","components/pages/SubscriptionPage/index.js","components/templates/AccountsTemplate/index.js","components/templates/AppTemplate/index.js","components/templates/BillingTemplate/index.js","components/templates/BuyPageTemplate/index.js","components/templates/DevicesTemplate/index.js","components/templates/ServicePageTemplate/index.js","components/templates/ServicesTemplate/index.js","features/Customization/CustomizationTemplate.js","features/Customization/CustomizationProductForm.js","features/Customization/FileInput.js","features/Customization/CustomizationForm.js","features/Customization/CustomizationForms.js","features/Customization/CustomizationAddressItem.js","components/atoms/FetchingScreen.jsx","features/Customization/CustomizationAddressChooseAll.js","features/Customization/CustomizationAddressList.js","features/Customization/CustomizationPhone.js","components/atoms/Toggle.jsx","components/atoms/TabItem.jsx","features/Customization/ViewItem.js","features/Customization/Patterns.js","features/Customization/CustomizationModal.js","features/Customization/CustomizationUnLinkModal.js","features/Customization/CustomizationFilterBlock.js","components/pages/CustomizationPage/index.js","features/Devices/cam.png","features/Devices/sputnik.png","hooks/useHover.js","features/Devices/Device.jsx","components/atoms/Overlay.jsx","features/Services/AddServicesButch.jsx","features/Devices/DevicesToolbar.jsx","features/Devices/DevicesBottombar.jsx","components/atoms/FiltersWrapper.jsx","components/atoms/FilterButton.jsx","features/Devices/DevicePlaceholder.jsx","features/Devices/DevicesList.jsx","components/pages/DevicesPage/index.js","store/reducers.js","store/store.js","serviceWorker.js","features/billing/BillingAccountModal.js","features/auth/LicenseModal.js","features/PartnerProgram/AcceptProgramModal.js","App.js","utils/requireAuth.js","index.js","components/organisms/DevicesTable/Sputnik.svg","components/organisms/DevicesTable/columnData.js","components/organisms/DevicesTable/TableHead.js","components/organisms/DevicesTable/TableBody.js","components/organisms/DevicesTable/TablePagination.js","components/organisms/DevicesTable/TableToolbar.js","components/organisms/DevicesTable/Table.js","components/organisms/DevicesTable/index.js","features/Devices/DeviceServicesHistory.jsx","features/Services/VideoArchive.svg","features/Services/Present.svg","features/Services/face_rec.png","features/Services/Service.jsx","components/organisms/DeviceDetails/Content.js","components/organisms/DeviceDetails/index.js","features/Services/refund.svg","features/Services/debit_bonus.svg","features/Services/accrual_bonus.svg","features/Services/withdrawal_money.svg","features/billing/Transaction.js","features/billing/Transactions.js","components/organisms/TransactionHistory/index.js","components/pages/AnalyticsPage/Search.svg","components/pages/AnalyticsPage/Calendar.svg","components/pages/AnalyticsPage/index.js","store/products/sputnik-group.png","store/products/cam-group-2.png","store/products/reducers.js","components/atoms/Transaction/Sputnik.svg","components/atoms/Transaction/ISee_alt.svg","components/atoms/Transaction/index.js","components/organisms/UsersTable/data.js","components/organisms/UsersTable/TableHead.js","components/organisms/UsersTable/index.js","components/pages/AccountPage/styles.js","components/pages/AccountPage/index.js","components/molecules/Map/place-24.svg","components/molecules/Map/index.js","components/pages/ProductPage/sputnik.png","components/pages/ProductPage/index.js","store/apps/types.js","store/billing/operations.js","store/devicesOld/types.js","store/service_partnersOld/types.js"],"names":["fetchServices","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","dispatch","services","wrap","_context","prev","next","actions","Api","request","sent","t0","stop","_x","apply","arguments","activatePackage","appId","_ref2","_callee2","msg","_yield$error$json","message","_context2","concat","method","checkAuth","abrupt","Promise","resolve","json","reject","_x2","deactivatePackage","_ref3","_callee3","_yield$error$json2","_context3","_x3","activateService","device","_ref4","_callee4","_yield$error$json3","_context4","body","JSON","stringify","app_id","_x4","deactivateService","_ref5","_callee5","_yield$error$json4","_context5","_x5","fetchPackages","_ref6","_callee6","packages","_context6","_x6","fetchService","_ref7","_callee7","service","_yield$error$json5","_context7","_x7","fetchPackage","_ref8","_callee8","currentPackage","_yield$error$json6","_context8","_x8","getAddressesList","state","addresses","list","getAddressesMeta","meta","getAddressesPending","pending","getAppsRequest","type","types","getAppsSuccess","clients","payload","getAppsError","err","getUserAppsRequest","getUserAppsSuccess","getUserAppsError","getAppAbilitiesRequest","getAppAbilitiesSuccess","abilities","getAppAbilitiesError","getAbilityActionsRequest","getAbilityActionsSuccess","getAbilityActionsError","getUsers","q","page","limit","sort","order","setParams","users","params","push","join","config","ssoUri","getCurrentUser","id","user","inviteUser","response","_yield$err$json","showError","getUserPermissions","userId","permissions","t1","updateUserPermissions","blockUser","_ref9","deleteUser","_ref10","errorMessage","status","updateUser","_ref11","email","password","app_ids","is_blocked","company_id","_ref12","undefined","updateCurrentUser","_ref13","name","surname","_ref14","_callee9","_yield$err$json2","_context9","_x9","ignoreSessionStorage","getState","redirect_to","redirectUri","window","location","logOut","sessionStorage","clear","reload","fetchUserCompany","company","acceptPartnerProgram","partnerStatus","partners_program_accepted","fetchStatisticPartnerProgram","buildUrl","Error","acceptLicense","_err$json","error","initialState","test","appAbilitiesList","companies","current","permissionsSlice","createSlice","reducers","setPermissionsList","clearPermission","clearPermissionCurrent","extraReducers","_extraReducers","_defineProperty","fetchManagementCompany","rejected","fulfilled","fetchManagementsCompanies","fetchAppAbilities","console","log","permissionsActions","permissionsReducer","reducer","invitePartnerRequest","invitePartnerSuccess","invitePartnerFailure","reassignDevicesRequest","reassignDevicesSuccess","reassignDevicesFailure","fetchPartnersRequest","fetchPartnersSuccess","partners","fetchPartnersFailure","fetchAddresses","createAsyncThunk","rejectWithValue","_params$page","_params$limit","apps","search","address_type","show_devices","locality_uuid","addresses_uuids","service_partner_uuid","api","showInfo","removeAddresses","uuid","address_uuids","addAddresses","_yield$err$json3","baseUri","_classCallCheck","this","_createClass","key","value","removeItem","href","endpoint","options","length","blob","BASE_URI","Request","_objectSpread","headers","Headers","credentials","fetch","then","r","catch","_handleError","fetchLocalities","_args","API","placeholder","label","localitiesSlice","filter","_reducers","clearDevices","clamp","pages","_toConsumableArray","map","l","_localitiesSlice$acti","setLocalityFilter","incPage","decPage","fetchDevicesRequest","fetchDevicesSuccess","devices","totalPages","fetchDevicesFailure","fetchDeviceInfoRequest","fetchDeviceInfoSuccess","fetchDeviceInfoFailure","clearCurrentDevice","setDeviceSearchQuery","query","info","updateAction","uiSlice","showMessage","showUpdateMessage","_uiSlice$actions","GET_COMPANIES_REQUEST","GET_COMPANIES_SUCCESS","GET_COMPANIES_ERROR","BUY_PRODUCT_REQUEST","BUY_PRODUCT_SUCCESS","BUY_PRODUCT_FAILURE","getAddressesSelected","selected","fetchServicePartners","servicePartnersSlice","s","service_partner_name","_servicePartnersSlice","setServicePartnerFilter","Transition","props","_jsx","Zoom","direction","ReassignIntercomModal","onClose","open","_useState","_objectWithoutProperties","_excluded","useState","_useState2","_slicedToArray","setSelected","useDispatch","deviceUuid","useParams","servicePartners","useSelector","localityFilter","localities","servicePartnerFilter","Object","keys","handleSubmit","useCallback","reassignDevices","fetchDevice","fetchDevices","t","useTranslation","_jsxs","Dialog","TransitionComponent","PaperProps","style","overflow","minWidth","children","DialogTitle","DialogContent","Select","isMulti","isClearable","isSearchable","cacheOptions","defaultOptions","onChange","DialogActions","Button","onClick","secondary","rounded","primary","variant","disabled","intercomId","userUri","app","brand","addressesSlice","clearAddresses","selectAddress","index","findIndex","address","splice","setSelectedAddresses","Array","isArray","addressesActions","addressesReducer","invitePartner","partnerUuid","device_uuids","fetchPartners","SuccessfullPaymentForm","handleClose","invoiceUuid","_Fragment","Mascotte","emote","margin","Typography","align","justifyContent","color","component","target","padding","width","maxWidth","fontSize","PictureAsPdf","marginRight","height","getCompaniesRequest","getCompaniesSuccess","getCompaniesError","createConversationRequest","createConversationSuccess","createConversationFailure","CREATE_CONVERSATION_REQUEST","CREATE_CONVERSATION_SUCCESS","CREATE_CONVERSATION_FAILURE","buyProductRequest","buyProductSuccess","buyProductFailure","downloadReport","url","link","URL","createObjectURL","Blob","document","createElement","setAttribute","Date","start_date","toLocaleDateString","end_date","download_type","appendChild","click","downloadReportProgram","_args2","analytics","_objectDestructuringEmpty","rateTypes","monthly","daily","paymentMethods","card","check","getApps","getUserApps","getAppAbilities","getAbilityActions","abilityId","abilityActions","fetchCompanyServices","servicesSlice","companyServices","AddressesList","selectedAddresses","addressesPending","addressesMeta","setPage","_useState3","_useState4","setLimit","handleSelectAddress","useEffect","Loader","Table","TableBody","TableRow","TableCell","Checkbox","checked","find","e","TablePagination","count","total","rowsPerPage","rowsPerPageOptions","labelRowsPerPage","labelDisplayedRows","from","to","onChangePage","onChangeRowsPerPage","background","_circle","_ellipse","_ellipse2","_path","_rect","_rect2","_rect3","_rect4","_rect5","_rect6","_rect7","_rect8","_extends","assign","bind","i","source","prototype","hasOwnProperty","call","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","SvgFaceRec","svgRef","title","titleId","viewBox","fill","xmlns","ref","cx","cy","stroke","strokeWidth","rx","ry","d","transform","x","y","ForwardRef","isEmptyPermissions","CompanyPermissionsCard","appAbilities","handleSelect","resources","handleSelectAllPermissions","nextPermissions","entries","forEach","privileges","el","action","handleUnSelectAllPermissions","permissionsAsArray","isDisabledRejectAll","every","isDisabledSelectAll","values","reduce","acc","Wrapper","flexDirection","shadow","border","Divider","marginBottom","display","tertiary","Container","CardContent","paddingLeft","paddingRight","gap","ability","translation","isDisabled","feature","selectedOptions","o","includes","PermissionsForm","getAppAbilitiesList","getPermissionsList","newActions","oldPermissions","newActionValues","a","fullPage","req","require","componentName","replace","module","exports","default","buyProduct","amount","gradient","css","_templateObject","_taggedTemplateLiteral","styled","div","_templateObject2","ErrorCode","h1","_templateObject3","p","theme","sizes","tablet","Text","_templateObject4","HelperText","_templateObject5","palette","StyledSection","section","_templateObject6","AccessError","code","Link","preventDefault","Separator","ValueText","DescText","attrs","QuantityInput","TextField","withTranslation","withWidth","onBuy","notEnoughBalance","product","productQty","setProductQty","totalPrice","setIsDepositing","isMobile","flex","onSubmit","alignItems","number","cost","unit","autoFocus","InputProps","endAdornment","InputAdornment","position","currentTarget","num","Number","parseInt","inputProps","textAlign","marginLeft","fontWeight","step","min","max","size","styles","checkboxWrapper","marginTop","connect","billingAccount","billing","account","_jsx2","defaultAmount","cardInfoPresent","card_info","paymentMethod","usePaymentCard","setUsePaymentCard","_useInput","useInput","phoneNumber","_useState5","_useState6","setTotal","fullWidth","helperText","FormControlLabel","control","checkbox","CreditCard","calc","trans","relativeCoords","event","_event$target$getBoun","getBoundingClientRect","left","top","clientX","clientY","SpringCard","_useSpring","useSpring","xys","mass","tension","friction","_useSpring2","set","animated","onMouseMove","onMouseLeave","interpolate","AcceptLicenseModal","licenseStatus","_auth$company","auth","license_agreement_accepted","isAccepted","setAccepted","isModalOpen","setIsModalOpen","handleCloseModal","FormModal","FormModalTitle","FormModalContent","pathname","textDecoration","cursor","paddingTop","paddingBottom","FormModalActions","_props$billingAccount","_props$billingAccount2","_props$billingAccount3","_props$billingAccount4","notFilled","company_name","phone_number","setIsDisabled","BillingAccountForm","changeBillingAccountInfo","fetchBillingAccount","isSubmitting","Form","form","Fade","in","validationSchema","Yup","shape","typeError","required","InvitePartnerModal","_React$Component","_inherits","_super","_createSuper","_this","_len","args","_key","handleinvitePartner","toggleModal","modal","setState","_this$props","fullScreen","FullscreenDialogTitle","subtitle","FullscreenExitButton","Formik","initialValues","validateOnChange","validateOnBlur","render","touched","errors","handleChange","handleBlur","autoComplete","onBlur","Send","React","Component","withRouter","customPermissionsVariables","isArrayLengthMoreThanZero","array","InviteUKModal","permissionsList","customPermissions","setCustomPermissions","handleSelectPermission","formik","useFormik","createManagementCompany","isSubmitDisabled","some","FormControl","FormLabel","RadioGroup","Radio","Bar","createRef","init","transitionBar","node","tau","g","select","append","datum","endAngle","initialValue","transition","duration","arcGenerator","attrTween","newAngle","customInterpolate","arcTween","_this$props2","svgWidth","svgHeight","className","formatNumber","format","ProgressBar","progress","bgColor","img","bold","setValue","useRef","tween","that","interpolateNumber","text","renderText","Math","PI","arcInnerRadius","arc","innerRadius","outerRadius","startAngle","cornerRadius","src","whiteSpace","isNaN","FrontBar","ListItem","Card","MoneyCard","val","date","isActive","setActiveCard","points","moneyCount","isStart","onMouseOver","dayjs","upLine","downLine","straightLine","alt","labelWorker","subtract","MoneyCardContainer","amountByMonths","activeCard","data","useMemo","sortedData","b","prevValue","isFirst","floor","slice","Value","TableWrapper","CellWrapper","ResDiv","StarImage","table","numColor","PartnerProgramPage","_useSelector","partnerProgramStatistic","medianActiveFlats","circle","Tooltip","actionHelper","Trans","i18nKey","components","borderColor","isActiveColor","valueColor","borderTopLeftRadius","borderTopRightRadius","right","borderTopStyle","Box","UKList","confirmDeleteModal","setConfirmDeleteModal","currentCompany","setCurrentCompany","getCompaniesList","getManagementCompaniesPending","handleCloseDeleteModal","handleDeleteCompany","deleteManagementCompany","ConfirmModal","company_uuid","handleOpenDeleteModal","UKLinkedList","getCurrentCompanyAddresses","isLoading","setLoading","getPermissionsCurrentCompany","address_uuid","updatedAddresses","handleRemoveAddresses","short_address","EditUKModal","companyPending","getCurrentCompanyPending","abi","_abi$","_a$privileges","handleConfirmPermissions","updateAppAbilities","handleAddAddresses","_g","_g2","_g3","_g4","_g5","_g6","_g7","_g8","_g9","_g10","_g11","_g12","_g13","_g14","_g15","SvgVisa","xmlnsXlink","enableBackground","xmlSpace","SvgMastercard","icons","Visa","MasterCard","Payment","Div","isBlurred","_ref$card_type","card_type","expiry_month","expiry_year","last4","first6","Icon","formattedDigits","match","isHovered","setIsHovered","boxShadow","onMouseEnter","unbindPaymentMethod","fetchCustomizations","t2","connectToCustomization","selectedEntries","entries_uuids","createCustomization","editCustomization","credits","products","creditsArr","productsArr","creditsPromise","productsPromise","res","_x10","all","credit_ids","product_id","fetchCustomizationAddresses","_ref16","_ref15","_ref14$page","_ref14$limit","_ref14$with_customiza","with_customization","_ref14$search","isInteger","_x11","_x12","customizationsSlice","editMode","isFetching","editSelectedCredit","_ref17","editCurrentCredit","_ref18","editCurrentProduct","_ref19","editCurrentTitle","_ref20","setErrCurrentCredit","_ref21","addCreditToCurrent","tinkoff","random","addProductToCurrent","removeCurrentCredit","_ref22","removeCurrentProduct","_ref23","initCurrent","_ref24","clearCurrent","customizationEditMode","_ref25","setCustomizationFetching","_ref26","editSelectedEntries","_ref27","clearSelectedEntries","_ref28","_ref29","_ref30","_customizationsSlice$","pad","totalChars","changeColor","ratio","darker","difference","round","rgb","RegExp","alpha","decimal","split","toString","lighterColor","darkerColor","formatDate","noTime","dateOptions","month","day","hour","minute","year","dateObj","isToday","toDateString","isYesterday","setDate","getDate","toLocaleTimeString","toLocaleString","baseUrl","pair","encodeURIComponent","buildUrlQuery","copyToClipboard","str","clipboard","navigator","writeText","textarea","range","createRange","sel","getSelection","removeAllRanges","addRange","setSelectionRange","execCommand","removeChild","isEmail","String","toLowerCase","isPhone","createConversation","fetchRoadMapList","arg","fetchAnswer","result","RoadMapSlice","clearRoadMap","vote","poll_result","_RoadMapSlice$actions","fonts","FETCH_SERVICES_REQUEST","FETCH_SERVICES_SUCCESS","FETCH_SERVICES_FAILURE","FETCH_PACKAGES_REQUEST","FETCH_PACKAGES_SUCCESS","FETCH_PACKAGES_FAILURE","FETCH_SERVICE_REQUEST","FETCH_SERVICE_SUCCESS","FETCH_SERVICE_FAILURE","FETCH_PACKAGE_REQUEST","FETCH_PACKAGE_SUCCESS","FETCH_PACKAGE_FAILURE","ACTIVATE_SERVICE_REQUEST","ACTIVATE_SERVICE_SUCCESS","ACTIVATE_SERVICE_FAILURE","DEACTIVATE_SERVICE_REQUEST","DEACTIVATE_SERVICE_SUCCESS","DEACTIVATE_SERVICE_FAILURE","ACTIVATE_PACKAGE_REQUEST","ACTIVATE_PACKAGE_SUCCESS","ACTIVATE_PACKAGE_FAILURE","DEACTIVATE_PACKAGE_REQUEST","DEACTIVATE_PACKAGE_SUCCESS","DEACTIVATE_PACKAGE_FAILURE","CLEAR_SERVICES","ActionsWrapper","InputWrapper","tin","nullable","postal_code","actual_address","legal_address","bic","settlement_account","kpp","bank","responsiveInput","inputWrapper","AddBillingAccountForm","enableReinitialize","formikProps","defaultValue","contract_number","row","cell","valueCell","field","helpIcon","Row","cellCss","NameCell","ValueCell","combined","grayscale","other","pink","green","hover","_ref$open","accountBalance","history","useHistory","productIdx","flatsQty","bindFlatsQty","_useInput2","flatPayment","bindFlatPayment","_useInput3","profitCoef","bindProfitCoef","archiveEnabled","setArchiveEnabled","entryProfit","setEntryProfit","_useInput4","maintenance","bindMaintenance","_useInput5","internet","bindInternet","sputnikBilling","setSputnikBilling","_useState7","_useState8","videoArchive","setVideoArchive","_useState9","_useState10","totalExpenses","setTotalExpenses","_useState11","_useState12","sputnikCount","setSputnikCount","_useState13","_useState14","sputnikPrice","setSputnikPrice","_useState15","preparationWork","_useState17","_useState18","totalInvestments","setTotalInvestments","_useState19","_useState20","buyerMargin","setBuyerMargin","_useState21","_useState22","buyerPayback","setBuyerPayback","_useState23","_useState24","investmentsRoR","setInvestmentsRoR","handleSpuntikBillingClick","nextVal","_useState25","_useState26","internetEditable","setInternetEditable","_useState27","_useState28","maintenanceEditable","setMaintenanceEditable","inline","TableHead","Help","Edit","IconButton","disableRipple","Switch","RemoveCircle","AddCircle","rel","Launch","placement","GET_USERS_REQUEST","GET_USERS_SUCCESS","GET_USERS_ERROR","GET_CURRENT_USER_REQUEST","GET_CURRENT_USER_SUCCESS","GET_CURRENT_USER_ERROR","INVITE_USER_REQUEST","INVITE_USER_SUCCESS","INVITE_USER_ERROR","GET_USER_PERMISSIONS_REQUEST","GET_USER_PERMISSIONS_SUCCESS","GET_USER_PERMISSIONS_ERROR","UPDATE_USER_PERMISSIONS_REQUEST","UPDATE_USER_PERMISSIONS_SUCCESS","UPDATE_USER_PERMISSIONS_ERROR","BLOCK_USER_REQUEST","BLOCK_USER_SUCCESS","BLOCK_USER_ERROR","DELETE_USER_REQUEST","DELETE_USER_SUCCESS","DELETE_USER_ERROR","UPDATE_USER_REQUEST","UPDATE_USER_SUCCESS","UPDATE_USER_ERROR","UPDATE_CURRENT_USER_SUCCESS","UPDATE_CURRENT_USER_ERROR","CLEAR_USERS","_params$order","is_installed","is_online","device_type","fetchDeviceServices","fetchDeviceServicesHistory","_ref6$limit","service_history","pages_count","parseServiceErrors","item","_x13","devicesSlice","totalSum","currentServices","servicesHistory","pendingServiceToggle","toggleSelect","toggleAllDevices","cur","setSearch","_payload$meta","_payload$meta2","_payload$meta3","total_pages","total_sum","historyPages","_devicesSlice$actions","selectSelectedDevices","selectNumSelected","createSelector","selectTotalServicesSum","services_sum","FETCH_STATISTICS_REQUEST","FETCH_STATISTICS_SUCCESS","FETCH_STATISTICS_FAILURE","FETCH_BILLING_ACCOUNT_REQUEST","FETCH_BILLING_ACCOUNT_SUCCESS","FETCH_BILLING_ACCOUNT_FAILURE","FETCH_AVAILABLE_PERIOD_REQUEST","FETCH_AVAILABLE_PERIOD_SUCCESS","FETCH_AVAILABLE_PERIOD_FAILURE","FETCH_TRANSACTIONS_REQUEST","FETCH_TRANSACTIONS_SUCCESS","FETCH_TRANSACTIONS_FAILURE","MAKE_DEPOSIT_REQUEST","MAKE_DEPOSIT_SUCCESS","MAKE_DEPOSIT_FAILURE","CHANGE_BILLING_ACCOUNT_INFO_REQUEST","CHANGE_BILLING_ACCOUNT_INFO_SUCCESS","CHANGE_BILLING_ACCOUNT_INFO_FAILURE","UNBIND_PAYMENT_METHOD_REQUEST","UNBIND_PAYMENT_METHOD_SUCCESS","UNBIND_PAYMENT_METHOD_FAILURE","CLEAR_TRANSACTIONS_DATA","webpackContext","webpackContextResolve","__webpack_require__","getCompanies","items","sortBy","orderBy","_yield$Api$request","intercoms","fetchDeviceInfo","fetchServicesRequest","fetchServicesSuccess","fetchServicesFailure","fetchPackagesRequest","fetchPackagesSuccess","fetchPackagesFailure","fetchServiceRequest","fetchServiceSuccess","fetchServiceFailure","fetchPackageRequest","fetchPackageSuccess","fetchPackageFailure","activateServiceRequest","activateServiceSuccess","activateServiceFailure","deactivateServiceRequest","deactivateServiceSuccess","deactivateServiceFailure","activatePackageRequest","activatePackageSuccess","activatePackageFailure","deactivatePackageRequest","deactivatePackageSuccess","deactivatePackageFailure","clearServices","userApps","collection","isLoggedIn","amount_by_months","median_active_flats","period","statistics","loading","transactions","intercom","service_partners","currentService","currentUser","getUsersRequest","getUsersSuccess","getUsersError","getCurrentUserRequest","getCurrentUserSuccess","getCurrentUserError","inviteUserRequest","inviteUserSuccess","inviteUserError","getUserPermissionsRequest","getUserPermissionsSuccess","getUserPermissionsError","updateUserPermissionsRequest","updateUserPermissionsSuccess","updateUserPermissionsError","blockUserRequest","blockUserSuccess","blockUserError","deleteUserRequest","deleteUserSuccess","deleteUserError","updateUserRequest","updateUserSuccess","updateUserError","updateCurrentUserRequest","updateCurrentUserSuccess","updateCurrentUserError","clearUsers","ifSelected","contrastText","DepositOptionWrapper","shadows","main","DepositOption","icon","defaultStyle","opacity","transitionStyles","entering","entered","exiting","exited","inProp","timeout","TextWrapper","textColor","Headline","_ref4$variant","_ref4$textColor","Option","Options","Skeleton","SearchField","InputBase","startAdornment","Search","scale","_ref$services","active","inactive","isConnected","updateData","disabledButton","setDisabled","Status","textTransalations","success","waiting_approve","TransactionStatus","_yield$err$json4","_yield$err$json5","_yield$err$json6","mc_uuids","updated","textTransform","borderRadius","UpdateLabel","BalanceWrapper","StyledMoney","weekday","AccountBalance","handleClick","balance_with_currency","_billingAccount$balan","_billingAccount$balan2","bigNums","smallNums","flexWrap","AccountBalanceWallet","balance_last_update","centered","stats","withTheme","chart","setChart","ResponsiveContainer","BarChart","XAxis","axisLine","dataKey","YAxis","Legend","minPointSize","LineChart","Line","dot","activeDot","CircularProgress","SIGN_IN","SIGN_IN_ERROR","CHECK_AUTH","FETCH_USER_COMPANY_REQUEST","FETCH_USER_COMPANY_SUCCESS","FETCH_USER_COMPANY_FAILURE","LOG_OUT_REQUEST","LOG_OUT_SUCCESS","LOG_OUT_ERROR","FETCH_PARTNER_ACCEPT","FETCH_PARTNER_ACCEPT_FAILURE","FETCH_PARTNER_STATISTIC","FETCH_PARTNER_STATISTIC_SUCCESS","FETCH_PARTNER_STATISTIC_FAILURE","ACCEPT_LICENSE","ACCEPT_LICENSE_SUCCESS","ACCEPT_LICENSE_FAILURE","signIn","signInError","logOutRequest","logOutSuccess","logOutError","fetchUserCompanyRequest","fetchUserCompanySuccess","fetchUserCompanyError","fetchPartnerAcceptSuccess","fetchPartnerAcceptFailure","fetchPartnerAccept","fetchPartnerStatistic","fetchPartnerStatisticSuccess","statistic","fetchPartnerStatisticFailure","acceptLicenseSuccess","acceptLicenseFailure","fetchTransactionsRequest","fetchTransactionsSuccess","fetchTransactionsFailure","fetchAvailablePeriodRequest","fetchAvailablePeriodSuccess","fetchAvailablePeriodFailure","fetchStatisticsRequest","fetchStatisticsSuccess","fetchStatisticsFailure","changeBillingAccountInfoRequest","changeBillingAccountInfoSuccess","changeBillingAccountInfoFailure","makeDepositRequest","makeDepositSuccess","makeDepositFailure","fetchBillingAccountRequest","fetchBillingAccountSuccess","fetchBillingAccountFailure","unbindPaymentMethodRequest","unbindPaymentMethodSuccess","unbindPaymentMethodFailure","clearTransactionsData","fade","keyframes","OnlineIcon","FiberManualRecord","isOnline","PALE_PINK","BRIGHT_PINK","DEFAULT_TEXT","SHADOW_FACTOR","ServiceBody","colors","active_bg","inactive_bg","active_text","inactive_text","ServiceName","ServicePrice","ServiceImage","svg","ServiceDescription","_templateObject7","NextPayment","_templateObject8","GlobalService","_ref$base_info","base_info","payment_name","payment","description","rate_type","service_address","is_active","next_payment_date","noPrice","image","xlinkHref","origin","COLORS","MARG_TOP","ProductWrapper","jump","jumpRotated","NextIcon","NavigateNext","isLast","ProductImageWrapper","idx","isCurrentItem","screen","ProductImage","ProductInfo","ProductTitle","_templateObject9","ProductDescription","_templateObject10","ProductRow","_templateObject11","ProductOrderSeparator","_templateObject12","PaginationRow","_templateObject13","ActionsRow","_templateObject14","Feature","_templateObject15","productsNumber","currentPosition","calculator_link","setCurrentPosition","features","setRef","minimumIntegerDigits","useGrouping","f","ym","PriceTag","Avatar","price","rate","Service","ServiceActions","StyledTableRow","TransactionsTable","onApprove","classes","transaction","Transaction","operation_id","login","InviteUserModal","selectedApps","appsError","handleinviteUser","user_id","_this2","authorizedUser","usersError","_billing$account","balance","goBack","Boolean","isDepositing","setInvoiceUuid","currentScreen","DepositForm","makeDeposit","quantity","operation_type","use_payment_method","redirect_url","onBuyAndDeposit","BuyProductForm","textProps","onExit","fetchTransactions","handleDeposit","DARK_GREY","Body","strong","PlanImg","Title","PriceWrapper","Price","BillingInterval","short_description","short_features","UpdateModal","disableBackdropClick","HomePage","componentDidMount","toggleInviteUserModal","inviteUserModal","toggleSearch","isSearching","searchUsers","searchQuery","handleChangePage","handleChangeRowsPerPage","handleRequestSort","property","handleCopyCode","serviceToken","throttle","usersList","_this$state","AccountsTemplate","subheader","UsersTable","PersonAdd","FileCopy","AddUserModal","serviceCode","service_code","service_token","Tab","activeStyle","NavLink","years","fetchAvailablePeriod","selectedYear","setSelectedYear","fetchStatistics","fadeLeft","useTransition","leave","enter","fadeRight","BillingTemplate","tabs","exact","aside","Route","path","BillingStats","BillingAccountInfo","TransactionHistory","DepositModal","Carousel","carouselRef","cardsRef","lastNextButton","setCurrentPositionWithAnimation","pos","nextCard","carousel","isFirstItem","rect","setTimeout","BuyPageTemplate","ProductCard","flexShrink","Description","MARGIN","scroll","ServicePageTemplate","activeBg","inactiveBg","activeText","inactiveText","instructions","frameBorder","allow","allowFullScreen","backgroundColor","maxHeight","Close","app_url","_ref3$services","transitions","precision","velocity","trail","ServicesTemplate","plans","SubscriptionPlan","ServicePage","SubscriptionPage","ServicesWrapper","FeaturesList","iconStyle","Check","in_package","Content","header","AppWrapper","AppTemplate","Tabs","ContentWrapper","Children","Aside","navigationButtons","Actions","DevicesTemplate","defaultIconStyle","Img","IconPlaceholder","Instructions","_ref$activeBg","_ref$inactiveBg","_ref$activeText","_ref$inactiveText","SectionTitle","SectionSubtitle","PlansSection","Nav","ButtonList","phone","CustomizationTemplate","buttonsList","btnDel","fontFamily","fontStyle","lineHeight","letterSpacing","borderBottom","inlineContent","gridTemplateColumns","columnGap","CustomizationProductForm","_customization$curren","customization","scrollIntoView","_useFormik","handleChangeState","DeleteOutlineOutlined","COLOR","COLOR_ERR","useStyles","makeStyles","root","button","FileInput","linkValue","useTheme","attachment","setAttachment","minHeight","bottom","mt","mb","disableUnderline","input","ButtonBase","onKeyDown","_ref$current","keyCode","accept","hidden","file","files","DescriptionOutlined","StyledForm","StyledGrid","SUPPORTED_FORMATS","phoneValidation","phoneValidationKz","getBase64","baseURL","reader","FileReader","readAsDataURL","onload","offset","Image","isValidUrl","trim","website","CustomizationForm","len","firstRender","handleFileInputChange","_e$target","t3","t4","t5","t6","t7","btn","CustomizationForms","customizationTitle","_customization$curren2","_customization$curren3","CustomizationAddressItem","connected","setCheсked","filtered","FetchingScreen","CustomizationAddressChooseAll","handleSelectAll","isSelected","chooseAll","arr","v","Set","overflowX","CustomizationAddressList","addressParams","handleChangeAddressParams","_customization$addres","_customization$addres2","firstUpdate","allSelected","setAllSelected","rerender","useDebouncedCallback","_el$customization","CustomizationPhone","picture","AnimatePresence","motion","initial","animate","exit","ToggleWrapper","Label","Toggle","initStatus","label1","label2","setActive","TabItem","Column","TypographyBold","Website","hr","ViewItem","credit","Head","Patterns","StyledDialogContent","StyledAccordion","Accordion","CustomizationModal","isOpen","setAddressParams","expanded","setExpanded","panel","elevation","newExpanded","AccordionSummary","flexGrow","expandIcon","ExpandMore","AccordionDetails","creditIndex","creditID","productIndex","productID","subtle","CustomizationUnLinkModal","queues","newEntries","entry","FilterBlock","CustomizationFilterBlock","didMountRef","withPatterns","setWithPatterns","withoutPatterns","setWithoutPatterns","StyledButton","CustomizationPage","_current$credits","_current$credits$map","_current$credits$map$","subscribePro","setSubscribePro","patternsList","openModal","setOpenModal","openUnLinkModal","setOpenUnLinkModal","setPicture","filterWindow","setFilterWindow","isEditMode","fieldsErr","unwrapResult","handleSave","checkpointReached","_slice","_slice$meta","rejectedWithValue","finish","selectedAddressesWithCuz","inputValue","noOptionsMessage","onInputChange","_current$products","useHover","hovered","Power","OfflineIcon","PowerOff","serviceIcons","archive_3","Archive3","IconColors","blue","archive_5","Archive5","archive_7","Archive7","archive_14","Archive14","archive_30","Archive30","face_rec","FaceRec","Device","serial_number","services_count","motherboard_id","service_partner","handleToggle","stopPropagation","_useHover","ListItemIcon","cam","objectFit","objectPosition","ListItemText","formatDeviceId","identifier","secondaryTypographyProps","ListItemSecondaryAction","primaryTypographyProps","AddServiceButchModal","selectedDevices","_React$useState","_React$useState2","List","borderRight","_createElement","Overlay","DevicesToolbar","toggleReassignModal","numSelected","totalServicesSum","addServicesButch","setAddServicesButch","indeterminate","SubdirectoryArrowRight","Add","AddServicesButch","DevicesBottombar","ChevronLeft","ChevronRight","FiltersWrapper","ifColor","FilterButton","DevicePlaceholder","StyledSelectContainer","DevicesList","fetchDevicesDebounce","reassignModal","setReassignModal","DevicesPage","invitePartnerModal","setInvitePartnerModal","inviteUKModal","setInviteUKModal","editUKModal","setEditUKModal","Settings","AddAlert","Poll","gutterBottom","DeviceDetails","ui","servicesNew","roadmap","storeName","camelCase","combineReducers","store","configureStore","rootReducer","preloadedState","loadState","subscribe","saveState","hostname","BillingAccountModal","setOpen","LicenseModal","companyUuid","_auth$user","setPending","userSelect","AcceptProgramModal","useLocation","programStatus","keepMounted","accepted","setValues","lazy","BillingPage","AccountsPage","AccountPage","AnalyticsPage","RoadmapPage","re","C","servicePartnersOld","userBalance","regexMatch","namespace","Navbar","logo","copy","tab","Suspense","fallback","Redirect","Intercom","Toast","Update","extend","calendar","updateLocale","locale","sameDay","nextDay","lastDay","nextWeek","lastWeek","sameElse","monthsShort","Root","Provider","BrowserRouter","ThemeProvider","I18nextProvider","i18n","App","Metrika","getElementById","ReactDOM","serviceWorker","ready","registration","unregister","numeric","disablePadding","SvgSputnik","DevicesTableHead","createSortHandler","handleSortRequest","rowCount","columnData","column","sortDirection","enterDelay","TableSortLabel","Sputnik","Build","RoomService","GpsNotFixed","withStyles","PowerOn","duuid","tabIndex","scope","installed","GpsFixed","GpsOff","Pagination","StyledToolbar","Toolbar","TableToolbar","openReassignIntercomModal","DevicesTable","tableLayout","TableContainer","_Component","getSorting","fetchData","extractProps","prevProps","prevState","callback","debounce","GreenCheck","incrementPage","isLastPage","Drawer","onOpen","anchor","isWidthUp","ModalProps","BackdropProps","committed_at","images","facerec","videoarchive","mobile_pack","Present","variants","Question","grey","edge","light","mainContent","offsetLeft","categoryTitle","openHistory","mapZoomTransition","sc","translate","slow","Map","lat","lon","animation","Gavel","History","historyOpen","setHistory","DeviceServicesHistory","_path2","SvgRefund","fillRule","clipRule","_defs","SvgDebitBonus","clipPath","SvgAccrualBonus","SvgWithdrawalMoney","negative","StyledListItemText","ContentContainer","total_cost","service_cost","refund","Refund","debit_bonus","Debit","accrual_bonus","AccrualBonus","withdrawal_money","WithdrawalMoney","IconComponent","AttachMoney","Collapse","HistoryOption","skeleton","listItem","Transactions","_operations$meta","operations","dense","wrapper","BlueRadio","getMonth","getFullYear","monthAgo","setMonthAgo","minDate","setMinDate","isChecked","setIsChecked","gilad","kek","setMonth","setFieldValue","FormGroup","InputLabelProps","shrink","SputnikImg","CamImg","SvgISeeAlt","dateFormatOptions","verticalAlign","center","orderIcons","order_intercom","order_camera","ISee","order_service","isOrder","payment_method","CardGiftcard","Assignment","Done","MyTableHead","onRequestSort","EmailIcon","PhoneIphone","AccountIcon","BusinessIcon","n","full_name","avatar","subcolumn","flexBasis","alignSelf","permissionColumn","UserPage","deleteUserModal","addAppModal","editCompanyModal","snackbarSuccess","snackbarError","permission","modalName","toggleUserBlock","_this$props3","UserCard","UserCardActions","L","drawLocal","merge","leafletLocale","myIcon","iconUrl","markerIcon","iconSize","iconAnchor","popupAnchor","StyledMap","_Map","_ref$lat","_ref$lon","zoom","zoomControl","TileLayer","Marker","ProductPrice","ProductActions","BuyWrapper","GET_APPS_REQUEST","GET_APPS_SUCCESS","GET_APPS_ERROR","GET_USER_APPS_REQUEST","GET_USER_APPS_SUCCESS","GET_USER_APPS_ERROR","GET_APP_ABILITIES_REQUEST","GET_APP_ABILITIES_SUCCESS","GET_APP_ABILITIES_ERROR","GET_ABILITY_ACTIONS_REQUEST","GET_ABILITY_ACTIONS_SUCCESS","GET_ABILITY_ACTIONS_ERROR","updatedAccount","FETCH_DEVICES_REQUEST","FETCH_DEVICES_SUCCESS","FETCH_DEVICES_FAILURE","FETCH_DEVICE_INFO_REQUEST","FETCH_DEVICE_INFO_SUCCESS","FETCH_DEVICE_INFO_FAILURE","CLEAR_CURRENT_DEVICE","SET_DEVICE_SEARCH_QUERY","INVITE_PARTNER_REQUEST","INVITE_PARTNER_SUCCESS","INVITE_PARTNER_FAILURE","REASSIGN_DEVICES_REQUEST","REASSIGN_DEVICES_SUCCESS","REASSIGN_DEVICES_FAILURE","FETCH_PARTNERS_REQUEST","FETCH_PARTNERS_SUCCESS","FETCH_PARTNERS_FAILURE"],"mappings":"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","file":"static/js/main.5038e6c7.chunk.js","sourcesContent":["//@flow\nimport * as actions from './actions'\nimport Api from 'utils/api'\nimport { checkAuth } from 'store/auth/actions'\n\nexport const fetchServices = () => async (dispatch: Function) => {\n dispatch(actions.fetchServicesRequest())\n try {\n const services: Object[] = await Api.request(`/services`)\n\n dispatch(actions.fetchServicesSuccess(services))\n } catch (error) {\n dispatch(\n actions.fetchServicesFailure(\n 'При загрузке списка услуг произошла ошибка',\n ),\n )\n }\n}\n\nexport const activatePackage = (appId: string) => async (\n dispatch: Function,\n) => {\n dispatch(actions.activatePackageRequest())\n try {\n await Api.request(`/packages/${appId}/activate`, { method: 'POST' })\n\n const msg = `Пакет был успешно подключен`\n dispatch(actions.activatePackageSuccess(msg))\n dispatch(checkAuth())\n return Promise.resolve(msg)\n } catch (error) {\n const { message } = await error.json()\n dispatch(actions.activatePackageFailure(message))\n return Promise.reject(message)\n }\n}\n\nexport const deactivatePackage = (appId: string) => async (\n dispatch: Function,\n) => {\n dispatch(actions.deactivatePackageRequest())\n try {\n await Api.request(`/packages/${appId}/deactivate`, {\n method: 'POST',\n })\n\n const msg = `Пакет был успешно отключен`\n dispatch(actions.deactivatePackageSuccess(msg))\n dispatch(checkAuth())\n return Promise.resolve(msg)\n } catch (error) {\n const { message } = await error.json()\n dispatch(actions.deactivatePackageFailure(message))\n return Promise.reject()\n }\n}\n\nexport const activateService = (appId: string, device?: string) => async (\n dispatch: Function,\n) => {\n dispatch(actions.activateServiceRequest())\n try {\n if (device) {\n await Api.request(`/partners/devices/${device}/activate_service`, {\n method: 'POST',\n body: JSON.stringify({ app_id: appId }),\n })\n } else {\n await Api.request(`/services/${appId}/activate`, { method: 'POST' })\n }\n\n const msg = `Услуга был успешно подключена`\n dispatch(actions.activateServiceSuccess(msg))\n fetchServices()\n dispatch(checkAuth())\n return Promise.resolve(msg)\n } catch (error) {\n const { message } = await error.json()\n\n dispatch(actions.activateServiceFailure(message))\n return Promise.reject(message)\n }\n}\n\nexport const deactivateService = (appId: string, device?: string) => async (\n dispatch: Function,\n) => {\n dispatch(actions.deactivateServiceRequest())\n try {\n if (device) {\n await Api.request(`/partners/devices/${device}/deactivate_service`, {\n method: 'POST',\n body: JSON.stringify({ app_id: appId }),\n })\n } else {\n await Api.request(`/services/${appId}/deactivate`, {\n method: 'POST',\n })\n }\n\n const msg = `Услуга была успешно отключена`\n dispatch(actions.deactivateServiceSuccess(msg))\n fetchServices()\n dispatch(checkAuth())\n return Promise.resolve(msg)\n } catch (error) {\n const { message } = await error.json()\n dispatch(actions.deactivatePackageFailure(message))\n return Promise.reject(message)\n }\n}\n\nexport const fetchPackages = () => async (dispatch: Function) => {\n dispatch(actions.fetchPackagesRequest())\n try {\n const packages: Object[] = await Api.request(`/packages`)\n dispatch(actions.fetchPackagesSuccess(packages))\n } catch (error) {\n dispatch(actions.fetchPackagesFailure(error))\n }\n}\n\nexport const fetchService = (appId: string) => async (dispatch: Function) => {\n dispatch(actions.fetchServiceRequest())\n try {\n const service: Object = await Api.request(`/services/${appId}`)\n dispatch(actions.fetchServiceSuccess(service))\n } catch (error) {\n const { message } = await error.json()\n dispatch(actions.fetchServiceFailure(message))\n }\n}\n\nexport const fetchPackage = (appId: string) => async (dispatch: Function) => {\n dispatch(actions.fetchPackageRequest())\n try {\n const currentPackage: Object = await Api.request(`/packages/${appId}`)\n dispatch(actions.fetchPackageSuccess(currentPackage))\n } catch (error) {\n const { message } = await error.json()\n dispatch(actions.fetchPackageFailure(message))\n }\n}\n","export const getAddressesList = (state) => state.addresses.list\n","export const getAddressesMeta = (state) => state.addresses.meta","export const getAddressesPending = (state) => state.addresses.pending\n","//@flow\nimport * as types from './types'\n\nexport const getAppsRequest = (): types.requestAction => ({\n type: types.GET_APPS_REQUEST,\n})\n\nexport const getAppsSuccess = (\n clients: Array\n): types.successAction => ({\n type: types.GET_APPS_SUCCESS,\n payload: clients,\n})\n\nexport const getAppsError = (err: string): types.errorAction => ({\n type: types.GET_APPS_ERROR,\n err,\n})\n\nexport const getUserAppsRequest = (): types.requestAction => ({\n type: types.GET_USER_APPS_REQUEST,\n})\n\nexport const getUserAppsSuccess = (\n clients: types.App[]\n): types.successAction => ({\n type: types.GET_USER_APPS_SUCCESS,\n payload: clients,\n})\n\nexport const getUserAppsError = (err: string): types.errorAction => ({\n type: types.GET_USER_APPS_ERROR,\n err,\n})\n\nexport const getAppAbilitiesRequest = (): types.requestAction => ({\n type: types.GET_APP_ABILITIES_REQUEST,\n})\n\nexport const getAppAbilitiesSuccess = (\n abilities: any[]\n): types.successAction => ({\n type: types.GET_APP_ABILITIES_SUCCESS,\n payload: abilities,\n})\n\nexport const getAppAbilitiesError = (err: string): types.errorAction => ({\n type: types.GET_APP_ABILITIES_ERROR,\n err,\n})\n\nexport const getAbilityActionsRequest = (): types.requestAction => ({\n type: types.GET_ABILITY_ACTIONS_REQUEST,\n})\n\nexport const getAbilityActionsSuccess = (\n actions: Array\n): types.successAction => ({\n type: types.GET_ABILITY_ACTIONS_SUCCESS,\n payload: actions,\n})\n\nexport const getAbilityActionsError = (err: string): types.errorAction => ({\n type: types.GET_ABILITY_ACTIONS_ERROR,\n err,\n})\n","//@flow\nimport * as actions from './actions'\nimport Api from 'utils/api'\nimport type { User } from './types'\nimport config from 'config'\nimport { showError } from 'features/ui/uiSlice'\n\nexport const getUsers: Function = ({\n q,\n page,\n limit,\n sort,\n order,\n}: {\n q: string,\n page: number,\n limit: number,\n sort?: 'email' | 'company' | 'full_name' | 'phone',\n order?: 'asc' | 'desc',\n}): Function => async (dispatch: Function): Promise => {\n dispatch(actions.getUsersRequest())\n try {\n const setParams = () => {\n let params = []\n\n if (q) {\n params.push(`q=${q}`)\n }\n if (limit) {\n params.push(`limit=${limit}`)\n }\n if (limit && page) {\n params.push(`offset=${limit * page}`)\n }\n if (sort) {\n params.push(`sort=${sort}`)\n }\n if (order) {\n params.push(`order=${order}`)\n }\n\n return params.join('&')\n }\n\n const users: Array = await Api.request(\n `/users?${setParams()}`,\n {},\n config.ssoUri,\n )\n\n dispatch(actions.getUsersSuccess(users))\n } catch (err) {\n dispatch(actions.getUsersError(err))\n }\n}\n\nexport const getCurrentUser: Function = (id: number): Function => async (\n dispatch: Function,\n): Promise => {\n dispatch(actions.getCurrentUserRequest())\n try {\n const user: User = await Api.request(`/users/${id}`, {}, config.ssoUri)\n dispatch(actions.getCurrentUserSuccess(user))\n } catch (err) {\n dispatch(\n actions.getCurrentUserError(\n 'Не удалось получить информацию о данном пользователе',\n ),\n )\n return Promise.reject(err)\n }\n}\n\n\nexport const inviteUser: Function = (body): Function => async (\n dispatch: Function,\n): Promise => {\n dispatch(actions.inviteUserRequest())\n try {\n const response = await Api.request(\n `/invites`,\n {\n method: 'POST',\n body: JSON.stringify(body),\n },\n config.ssoUri,\n )\n\n dispatch(actions.inviteUserSuccess())\n return Promise.resolve(response)\n } catch (err) {\n const { message } = await err.json()\n // dispatch(actions.inviteUserError(message)) //hz nahuya eto bilo i kakaya ideya bila\n dispatch(showError(message))\n return Promise.reject(err)\n }\n}\n\nexport const getUserPermissions: Function = (\n userId: number,\n appId?: number,\n): Function => async (dispatch: Function): Promise => {\n dispatch(actions.getUserPermissionsRequest())\n try {\n const permissions = appId\n ? await Api.request(\n `/users/${userId}/permissions?app_id=${appId}`,\n {},\n config.ssoUri,\n )\n : await Api.request(`/users/${userId}/permissions`, {}, config.ssoUri)\n dispatch(actions.getUserPermissionsSuccess(permissions))\n return Promise.resolve(permissions)\n } catch (err) {\n dispatch(actions.inviteUserError(err))\n return Promise.reject(err)\n }\n}\n\nexport const updateUserPermissions: Function = ({\n userId,\n appId,\n abilities,\n}): Function => async (dispatch: Function): Promise => {\n dispatch(actions.updateUserPermissionsRequest())\n try {\n const response = await Api.request(\n `/permissions?user_id=${userId}&app_id=${appId}`,\n {\n method: 'PUT',\n body: JSON.stringify({ abilities }),\n },\n config.ssoUri,\n )\n\n dispatch(actions.updateUserPermissionsSuccess(response))\n return Promise.resolve(response)\n } catch (err) {\n dispatch(actions.updateUserPermissionsError(err))\n return Promise.reject(err)\n }\n}\n\nexport const blockUser: Function = ({\n userId,\n appId,\n abilities,\n}): Function => async (dispatch: Function): Promise => {\n dispatch(actions.blockUserRequest())\n try {\n const response = await Api.request(`/user`, {}, config.ssoUri)\n dispatch(actions.blockUserSuccess(response))\n return Promise.resolve(response)\n } catch (err) {\n dispatch(actions.blockUserError(err))\n return Promise.reject(err)\n }\n}\n\nexport const deleteUser: Function = (id): Function => async (\n dispatch: Function,\n): Promise => {\n dispatch(actions.deleteUserRequest())\n try {\n const response = await Api.request(`/users/${id}`, { method: 'DELETE' })\n dispatch(actions.deleteUserSuccess(response))\n return Promise.resolve(response)\n } catch (err) {\n const errorMessage =\n err.status === 403\n ? 'У вас отсутсвуют права на удаление пользователя'\n : 'При удалении пользователя произошла ошибка'\n dispatch(actions.deleteUserError(errorMessage))\n return Promise.reject(errorMessage)\n }\n}\n\nexport const updateUser: Function = ({\n userId,\n email,\n password,\n app_ids,\n is_blocked,\n company_id,\n}): Object => async (dispatch: Function): Promise => {\n dispatch(actions.updateUserRequest())\n\n const setParams = () => {\n let params = []\n\n if (email) params.push(`email=${email}`)\n if (password) params.push(`password=${password}`)\n if (app_ids) params.push(`app_ids=${app_ids}`)\n if (is_blocked !== undefined) params.push(`is_blocked=${is_blocked}`)\n if (company_id) params.push(`company_id=${company_id}`)\n params = params.join('&')\n\n return `?${params}`\n }\n\n try {\n const response = await Api.request(`/users/${userId}${setParams()}`, {\n method: 'PUT',\n })\n dispatch(actions.updateUserSuccess(response))\n return Promise.resolve(response)\n } catch (err) {\n dispatch(actions.updateUserPermissionsError(err))\n return Promise.reject(err)\n }\n}\n\nexport const updateCurrentUser: Function = ({\n email,\n name,\n surname,\n}): Object => async (dispatch: Function): Promise => {\n dispatch(actions.updateCurrentUserRequest())\n try {\n const response = await Api.request(`/users/me`, {\n method: 'PATCH',\n body: JSON.stringify({ email, name, surname }),\n })\n dispatch(actions.updateCurrentUserSuccess(response))\n return Promise.resolve(response)\n } catch (err) {\n const { message } = await err.json()\n dispatch(actions.updateCurrentUserError(message))\n return Promise.reject(message)\n }\n}\n","//@flow\nimport * as actions from './actions'\nimport Api from 'utils/api'\nimport config from 'config'\nimport { buildUrl } from 'utils/helpers'\nimport { showError } from 'features/ui/uiSlice'\n\nexport const checkAuth =\n (ignoreSessionStorage: ?boolean) => async (dispatch: Function, getState: Function) => {\n dispatch(actions.checkAuth())\n // if (getState().auth.isLoggedIn && !ignoreSessionStorage) return\n try {\n const user: Object = await Api.request(\n `/users/me?app=${config.redirectUri}`,\n {},\n config.ssoUri\n )\n dispatch(actions.signIn(user))\n } catch (err) {\n const { redirect_to } = await err.json()\n if (redirect_to) {\n window.location = config.ssoUri + redirect_to\n }\n dispatch(actions.signInError())\n }\n }\n\nexport const logOut =\n () =>\n async (dispatch: Function): Promise => {\n dispatch(actions.logOutRequest())\n try {\n const response = await Api.request('/logout', { method: 'DELETE' }, config.redirectUri)\n dispatch(actions.logOutSuccess())\n sessionStorage.clear()\n window.location.reload()\n return Promise.resolve(response)\n } catch (err) {\n dispatch(actions.logOutError())\n return Promise.reject(err)\n }\n }\n\nexport const fetchUserCompany = () => async (dispatch: Function) => {\n dispatch(actions.fetchUserCompanyRequest())\n try {\n const company: Object = await Api.request('/users/me/company')\n dispatch(actions.fetchUserCompanySuccess(company))\n } catch (err) {\n dispatch(actions.fetchUserCompanyError())\n }\n}\n\nexport const acceptPartnerProgram = () => async (dispatch) => {\n dispatch(actions.fetchPartnerAccept())\n try {\n const partnerStatus = await Api.request(`/users/me/company`, {\n method: 'PATCH',\n body: JSON.stringify({ partners_program_accepted: true }),\n })\n dispatch(actions.fetchPartnerAcceptSuccess(true)) // then fix\n return Promise.resolve(partnerStatus)\n } catch (error) {\n dispatch(actions.fetchPartnerAcceptFailure(error))\n dispatch(showError('При принятии партнерской программы произошла ошибка'))\n return Promise.reject(error)\n }\n}\n\nexport const fetchStatisticPartnerProgram = () => async (dispatch) => {\n dispatch(actions.fetchPartnerStatistic())\n try {\n const partnerStatus = await Api.request(\n buildUrl('/analytics/partner_program/statistic'),\n {\n dispatch,\n },\n `${config.redirectUri}/api/v2`\n )\n\n dispatch(actions.fetchPartnerStatisticSuccess(partnerStatus))\n return Promise.resolve(partnerStatus)\n } catch (error) {\n dispatch(actions.fetchPartnerStatisticFailure(error))\n throw new Error(error)\n }\n}\n\nexport const acceptLicense = () => async (dispatch) => {\n dispatch(actions.acceptLicense())\n try {\n const partnerStatus = await Api.request(`/users/me/accept_license_agreement`, {\n method: 'PATCH',\n })\n dispatch(actions.acceptLicenseSuccess(partnerStatus?.message))\n return Promise.resolve(partnerStatus)\n } catch (err) {\n const { error } = err.json()\n dispatch(actions.acceptLicenseFailure(error))\n return Promise.reject(err)\n }\n}\n","import { createSlice } from '@reduxjs/toolkit'\nimport { fetchAppAbilities, fetchManagementCompany, fetchManagementsCompanies } from './services'\n\nconst initialState = {\n test: undefined,\n pending: false,\n appAbilitiesList: undefined,\n permissions: {},\n companies: undefined,\n current: {\n pending: false,\n company: undefined,\n },\n}\n\nconst permissionsSlice = createSlice({\n name: 'permissions',\n initialState,\n reducers: {\n setPermissionsList: (state, { payload }) => {\n state.permissions = payload\n },\n clearPermission: () => initialState,\n clearPermissionCurrent: (state) => {\n state.current = { pending: false }\n },\n },\n extraReducers: {\n [fetchManagementCompany.rejected]: (state) => {\n state.current.pending = false\n },\n [fetchManagementCompany.pending]: (state) => {\n state.current.pending = true\n },\n [fetchManagementCompany.fulfilled]: (state, { payload }) => {\n state.current.company = payload\n state.current.pending = false\n state.test = payload.permissions\n },\n\n [fetchManagementsCompanies.rejected]: (state) => {\n state.pending = false\n },\n [fetchManagementsCompanies.pending]: (state) => {\n state.pending = true\n },\n [fetchManagementsCompanies.fulfilled]: (state, { payload }) => {\n state.companies = payload\n state.pending = false\n },\n [fetchAppAbilities.rejected]: (state) => {\n // state.permissionsList = payload\n },\n\n [fetchAppAbilities.pending]: (state) => {\n console.log('fetchPermissionsList.pending')\n // state.permissionsList = payload\n },\n [fetchAppAbilities.fulfilled]: (state, { payload }) => {\n state.appAbilitiesList = payload\n },\n },\n})\n\nexport const { actions: permissionsActions } = permissionsSlice\nexport const { reducer: permissionsReducer } = permissionsSlice\n","import * as types from './types'\n\nexport const invitePartnerRequest = () => ({\n type: types.INVITE_PARTNER_REQUEST,\n})\nexport const invitePartnerSuccess = msg => ({\n type: types.INVITE_PARTNER_SUCCESS,\n payload: { msg },\n})\nexport const invitePartnerFailure = error => ({\n type: types.INVITE_PARTNER_FAILURE,\n payload: {\n error,\n },\n})\n\nexport const reassignDevicesRequest = () => ({\n type: types.REASSIGN_DEVICES_REQUEST,\n})\nexport const reassignDevicesSuccess = msg => ({\n type: types.REASSIGN_DEVICES_SUCCESS,\n payload: { msg },\n})\nexport const reassignDevicesFailure = error => ({\n type: types.REASSIGN_DEVICES_FAILURE,\n payload: {\n error,\n },\n})\n\nexport const fetchPartnersRequest = () => ({\n type: types.FETCH_PARTNERS_REQUEST,\n})\nexport const fetchPartnersSuccess = partners => ({\n type: types.FETCH_PARTNERS_SUCCESS,\n payload: { partners },\n})\nexport const fetchPartnersFailure = error => ({\n type: types.FETCH_PARTNERS_FAILURE,\n payload: {\n error,\n },\n})\n","import { createAsyncThunk } from '@reduxjs/toolkit'\nimport { showError, showInfo } from 'features/ui/uiSlice'\nimport api from 'utils/api'\nimport { buildUrl } from 'utils/helpers'\n\nexport const fetchAddresses = createAsyncThunk(\n 'addresses/fetch_list',\n async (params, { getState, rejectWithValue, dispatch }) => {\n const {\n search,\n address_type,\n show_devices,\n locality_uuid,\n addresses_uuids,\n service_partner_uuid,\n page = 1,\n limit = 25,\n } = params\n\n try {\n const apps = await api.request(buildUrl('/addresses', params))\n dispatch(showInfo(apps?.message))\n return apps\n } catch (err) {\n const { error } = await err.json()\n dispatch(showError(error))\n return rejectWithValue(err)\n }\n }\n)\n\n\nexport const removeAddresses = createAsyncThunk(\n 'addresses/remove_addresses',\n async ({ uuid, address_uuids }, { rejectWithValue, dispatch }) => {\n try {\n const addresses = await api.request(`/managment_companies/${uuid}/remove_addresses`, {\n method: 'PATCH',\n body: JSON.stringify({ address_uuids: address_uuids }),\n })\n dispatch(showInfo(addresses?.message))\n return addresses\n } catch (err) {\n const { error } = await err.json()\n dispatch(showError(error))\n return rejectWithValue(err)\n }\n }\n)\n\nexport const addAddresses = createAsyncThunk(\n 'addresses/add_addresses',\n async ({ uuid, address_uuids }, { rejectWithValue, dispatch }) => {\n try {\n const addresses = await api.request(`/managment_companies/${uuid}/add_addresses`, {\n method: 'PATCH',\n body: JSON.stringify({ address_uuids: address_uuids }),\n })\n dispatch(showInfo(addresses?.message))\n return addresses\n } catch (err) {\n const { error } = await err.json()\n dispatch(showError(error))\n return rejectWithValue(err)\n }\n }\n)\n","/* eslint-disable */\n\nimport config from 'config'\n\n/**\n *\n *\n * @export\n * @class Api\n */\nclass Api {\n /**\n * Creates an instance of Api.\n * @param {*} baseUri\n * @memberof Api\n */\n constructor(baseUri) {\n this.baseUri = baseUri\n }\n\n /**\n * Makes a redirect to the SSO if err status is 401, returns a Promise.reject\n *\n * @param {*} err\n * @returns {Promise}\n * @memberof Api\n */\n _handleError(err: any): Promise {\n if (err.status === 401) {\n sessionStorage.removeItem('auth')\n window.location = `${config.redirectUri}/auth/sso?origin=${window.location.href}`\n return Promise.reject()\n }\n return Promise.reject(err)\n }\n\n /**\n * Makes an api request, handles error status 401\n *\n * @param {string} endpoint - the endpoint, that gets appended to the (default) baseUri\n * @param {?Object} [options={}] - custom request options, override default ones\n * @param {?string} baseUri - custom baseUri\n * @returns {Promise}\n * @memberof Api\n */\n request(\n endpoint: string,\n options: ?Object = {},\n baseUri: ?string,\n blob\n ): Promise {\n const BASE_URI: string = baseUri || this.baseUri\n\n const request = new Request(`${BASE_URI}${endpoint}`, {\n headers: new Headers({\n 'Content-Type': 'application/json',\n }),\n credentials: 'include',\n ...options,\n })\n\n return fetch(request)\n .then((r) => {\n return blob ? r.blob() : r.status <= 200 ? r.json() : Promise.reject(r)\n })\n .catch(this._handleError)\n }\n}\n\nconst api = new Api(config.baseUri)\n\nexport default api\n","import { createSlice, createAsyncThunk } from '@reduxjs/toolkit'\nimport API from 'utils/api'\nimport { buildUrl, clamp } from 'utils/helpers'\nimport config from 'config'\nimport { clearDevices } from './devicesSlice'\n\nexport const fetchLocalities = createAsyncThunk(\n 'localities/fetchList',\n async (params = {}, { getState, rejectWithValue, dispatch }) => {\n try {\n const payload = await API.request(\n buildUrl('/localities', params),\n {\n dispatch,\n },\n `${config.redirectUri}/api/v2`\n )\n return payload\n } catch {\n return rejectWithValue()\n }\n }\n)\n\nconst placeholder = { value: undefined, label: 'Весь фонд' }\n\n// reducers\nexport const localitiesSlice = createSlice({\n name: 'localities',\n initialState: {\n list: null,\n page: 1,\n limit: 100,\n search: '',\n filter: placeholder,\n },\n reducers: {\n [clearDevices.type]: (state) => {\n state.list = []\n state.filter = placeholder\n },\n incPage: (state) => {\n state.page = clamp(state.page + 1, 1, state.pages)\n },\n decPage: (state) => {\n state.page = clamp(state.page - 1, 1, state.pages)\n },\n setSearch: (state, { payload }) => {\n state.search = payload\n },\n setLocalityFilter: (state, { payload }) => {\n state.filter = payload\n },\n },\n extraReducers: {\n [fetchLocalities.fulfilled]: (state, { payload }) => {\n state.list = [\n placeholder,\n ...payload.map((l) => ({ label: l.name, value: l.uuid })),\n ]\n },\n },\n})\n\nexport const { incPage, decPage, setLocalityFilter } = localitiesSlice.actions\n\nexport default localitiesSlice.reducer\n","import * as types from './types'\n\nexport const fetchDevicesRequest = () => ({\n type: types.FETCH_DEVICES_REQUEST,\n})\nexport const fetchDevicesSuccess = ({ devices, totalPages }) => ({\n type: types.FETCH_DEVICES_SUCCESS,\n payload: {\n devices,\n totalPages,\n },\n})\nexport const fetchDevicesFailure = error => ({\n type: types.FETCH_DEVICES_FAILURE,\n payload: {\n error,\n },\n})\n\nexport const fetchDeviceInfoRequest = () => ({\n type: types.FETCH_DEVICE_INFO_REQUEST,\n})\nexport const fetchDeviceInfoSuccess = device => ({\n type: types.FETCH_DEVICE_INFO_SUCCESS,\n payload: {\n device,\n },\n})\nexport const fetchDeviceInfoFailure = error => ({\n type: types.FETCH_DEVICE_INFO_FAILURE,\n payload: {\n error,\n },\n})\n\nexport const clearCurrentDevice = () => ({\n type: types.CLEAR_CURRENT_DEVICE,\n})\n\nexport const setDeviceSearchQuery = query => ({\n type: types.SET_DEVICE_SEARCH_QUERY,\n payload: {\n query,\n },\n})\n","import { createSlice } from '@reduxjs/toolkit'\n\nconst initialState = {\n msg: null,\n error: null,\n info: null,\n updateAction: null,\n}\n\n// reducers\nexport const uiSlice = createSlice({\n name: 'ui',\n initialState,\n reducers: {\n showMessage: (state, { payload }) => {\n state.msg = payload\n },\n showError: (state, { payload }) => {\n state.error = payload\n },\n showInfo: (state, { payload }) => {\n state.info = payload\n },\n clear: () => initialState,\n showUpdateMessage: (state, { payload: updateAction }) => {\n state.updateAction = updateAction\n },\n },\n})\n\nexport const {\n showMessage,\n showError,\n showUpdateMessage,\n showInfo,\n clear,\n} = uiSlice.actions\n\nexport default uiSlice.reducer\n","//@flow\nexport const GET_COMPANIES_REQUEST: string = 'users/GET_COMPANIES_REQUEST'\nexport const GET_COMPANIES_SUCCESS: string = 'users/GET_COMPANIES_SUCCESS'\nexport const GET_COMPANIES_ERROR: string = 'users/GET_COMPANIES_ERROR'\n\nexport type requestAction = {\n type: string,\n}\n\nexport type successAction = {\n type: string,\n payload?: any,\n}\n\nexport type errorAction = {\n type: string,\n payload: string,\n}\n","export const BUY_PRODUCT_REQUEST = 'devices/BUY_PRODUCT_REQUEST'\nexport const BUY_PRODUCT_SUCCESS = 'devices/BUY_PRODUCT_SUCCESS'\nexport const BUY_PRODUCT_FAILURE = 'devices/BUY_PRODUCT_FAILURE'\n","export const getAddressesSelected = (state) => state.addresses.selected\n","import { createSlice, createAsyncThunk } from '@reduxjs/toolkit'\nimport API from 'utils/api'\nimport { buildUrl, clamp } from 'utils/helpers'\nimport config from 'config'\nimport { clearDevices } from './devicesSlice'\n\nexport const fetchServicePartners = createAsyncThunk(\n 'devices/fetchServicePartners',\n async (params, { getState, rejectWithValue, dispatch }) => {\n try {\n const payload = await API.request(buildUrl(`/service_partners`, params), {\n dispatch,\n })\n\n return payload\n } catch {\n return rejectWithValue()\n }\n }\n)\n\nconst placeholder = {\n value: undefined,\n label: 'Все обслуживающие компании',\n}\n\n// reducers\nexport const servicePartnersSlice = createSlice({\n name: 'servicePartners',\n initialState: {\n list: null,\n page: 1,\n limit: 100,\n search: '',\n filter: placeholder,\n },\n reducers: {\n [clearDevices.type]: (state) => {\n state.list = []\n state.filter = placeholder\n },\n incPage: (state) => {\n state.page = clamp(state.page + 1, 1, state.pages)\n },\n decPage: (state) => {\n state.page = clamp(state.page - 1, 1, state.pages)\n },\n setSearch: (state, { payload }) => {\n state.search = payload\n },\n\n setServicePartnerFilter: (state, { payload }) => {\n state.filter = payload\n },\n },\n extraReducers: {\n [fetchServicePartners.fulfilled]: (state, { payload }) => {\n state.list = [\n placeholder,\n ...payload.map((s) => ({\n label: s.service_partner_name,\n value: s.service_partner_uuid,\n })),\n ]\n },\n },\n})\n\nexport const {\n incPage,\n decPage,\n setServicePartnerFilter,\n} = servicePartnersSlice.actions\n\nexport default servicePartnersSlice.reducer\n","import React, { useState, useEffect, useCallback } from 'react'\nimport { Button, Select, Loader } from 'sputnik-ui'\nimport { connect, useDispatch, useSelector } from 'react-redux'\nimport { useParams } from 'react-router-dom'\nimport Dialog from '@material-ui/core/Dialog'\nimport DialogActions from '@material-ui/core/DialogActions'\nimport DialogContent from '@material-ui/core/DialogContent'\nimport DialogTitle from '@material-ui/core/DialogTitle'\nimport Zoom from '@material-ui/core/Zoom'\n\nimport {\n getservicePartners,\n linkDevice,\n getIntercomsByAddress,\n getCamerasByAddress,\n} from 'store/operations'\nimport { useTranslation } from 'react-i18next'\nimport {\n fetchPartners,\n reassignDevices,\n} from 'store/service_partnersOld/operations'\n\nimport { fetchDevice, fetchDevices } from 'store/devicesSlice'\n\nfunction Transition(props) {\n return \n}\n\nexport default function ReassignIntercomModal({\n onClose,\n device,\n open,\n ...props\n}) {\n const [selected, setSelected] = useState()\n const dispatch = useDispatch()\n const { device: deviceUuid } = useParams()\n\n const servicePartners = useSelector(\n ({ servicePartners }) => servicePartners.list\n )\n const localityFilter = useSelector(({ localities }) => localities.filter)\n const servicePartnerFilter = useSelector(\n ({ servicePartners }) => servicePartners.filter\n )\n const page = useSelector(({ devices }) => devices.page)\n const limit = useSelector(({ devices }) => devices.limit)\n\n const devices = useSelector(({ devices }) => Object.keys(devices.selected))\n\n const handleSubmit = useCallback(() => {\n if (deviceUuid) {\n dispatch(reassignDevices(selected.value, [deviceUuid])).then(() => {\n dispatch(fetchDevice(deviceUuid))\n onClose()\n })\n } else {\n if (selected)\n dispatch(reassignDevices(selected.value, devices)).then(() => {\n setSelected(null)\n\n dispatch(\n fetchDevices({\n page,\n limit,\n locality_uuid: localityFilter.value,\n service_partner_uuid: servicePartnerFilter.value,\n })\n )\n\n onClose()\n })\n }\n }, [\n dispatch,\n onClose,\n devices,\n selected,\n page,\n limit,\n localityFilter.value,\n servicePartnerFilter.value,\n ])\n\n const { t } = useTranslation(['common', 'service'])\n\n return (\n \n {t('service:actions.reassign')}\n \n \n \n \n \n \n {t('common:button:confirm')}\n \n \n \n )\n}\n","/* eslint-disable import/no-anonymous-default-export */\nexport default {\n baseUri: process.env.REACT_APP_BASE_URL || 'https://api-partner.stage.sputnik.systems/api/v1',\n redirectUri: process.env.REACT_APP_REDIRECT_URL || 'https://api-partner.stage.sputnik.systems',\n ssoUri: 'https://sso.sputnik.systems',\n intercomId: 'PartnerUserWeb',\n userUri: 'https://account.sputnik.systems',\n app: 'Партнёр',\n brand: 'Спутник',\n}\n\n","import { createSlice } from '@reduxjs/toolkit'\nimport { fetchAddresses } from './services'\n\nconst initialState = {\n meta: undefined,\n list: [],\n selected: [],\n pending: false,\n}\n\nconst addressesSlice = createSlice({\n name: 'addresses',\n initialState,\n reducers: {\n clearAddresses: () => initialState,\n selectAddress: (state, { payload }) => {\n const index = state.selected.findIndex((address) => address.uuid === payload.uuid)\n if (index === -1) {\n state.selected = [...state.selected, payload]\n }\n if (index !== -1) {\n state.selected.splice(index, 1)\n }\n },\n setSelectedAddresses: (state, { payload }) => {\n if (!Array.isArray(payload)) {\n return\n } \n state.selected = payload\n },\n },\n extraReducers: {\n [fetchAddresses.rejected]: (state) => {\n state.pending = false\n },\n [fetchAddresses.pending]: (state) => {\n state.pending = true\n },\n [fetchAddresses.fulfilled]: (state, { payload }) => {\n state.list = payload.addresses\n state.meta = payload.meta\n state.pending = false\n },\n },\n})\n\nexport const { actions: addressesActions } = addressesSlice\nexport const { reducer: addressesReducer } = addressesSlice\n","import { showError, showMessage } from 'features/ui/uiSlice'\nimport Api from 'utils/api'\nimport * as actions from './actions'\n\nexport const invitePartner = ({ email, name }) => async dispatch => {\n dispatch(actions.invitePartnerRequest())\n try {\n await Api.request('/service_partners', {\n body: JSON.stringify({ name, email }),\n method: 'POST',\n })\n\n dispatch(showMessage('Приглашение было отправлено на электронную почту партнёра'))\n // dispatch(\n // actions.invitePartnerSuccess(\n // 'Приглашение было отправлено на электронную почту партнёра',\n // ),\n // )\n return Promise.resolve()\n } catch (error) {\n const { message } = await error.json()\n dispatch(showError(message))\n // dispatch(actions.invitePartnerFailure(message))\n return Promise.reject()\n }\n}\n\nexport const reassignDevices = (partnerUuid, devices) => async dispatch => {\n dispatch(actions.reassignDevicesRequest())\n try {\n await Api.request(`/service_partners/${partnerUuid}/devices/reassign`, {\n method: 'PATCH',\n body: JSON.stringify({ device_uuids: devices }),\n })\n dispatch(\n actions.reassignDevicesSuccess('Устройства были успешно привязаны'),\n )\n return Promise.resolve()\n } catch (error) {\n const { message } = await error.json()\n dispatch(actions.reassignDevicesFailure(message))\n return Promise.reject()\n }\n}\n\nexport const fetchPartners = q => async dispatch => {\n dispatch(actions.fetchPartnersRequest())\n try {\n const partners = await Api.request(`/service_partners?q=${q}`)\n dispatch(actions.fetchPartnersSuccess(partners))\n return Promise.resolve(partners)\n } catch (error) {\n const { message } = await error.json()\n dispatch(actions.fetchPartnersFailure(message))\n return Promise.reject()\n }\n}\n","import React from 'react'\nimport { Button, Mascotte } from 'sputnik-ui'\nimport config from 'config'\nimport { DialogActions, DialogContent, Typography } from '@material-ui/core'\nimport { PictureAsPdf } from '@material-ui/icons'\n\nconst SuccessfullPaymentForm = ({ handleClose, invoiceUuid }) => (\n <>\n \n \n \n Вы можете посмотреть счет на оплату и распечатать файл.\n \n \n \n \n \n счет\n \n \n \n)\n\nexport default SuccessfullPaymentForm\n","//@flow\nimport * as types from './types'\n\nexport const getCompaniesRequest = (): types.requestAction => ({\n type: types.GET_COMPANIES_REQUEST,\n})\n\nexport const getCompaniesSuccess = (\n companies: Object[]\n): types.successAction => ({\n type: types.GET_COMPANIES_SUCCESS,\n payload: companies,\n})\n\nexport const getCompaniesError = (err: string): types.errorAction => ({\n type: types.GET_COMPANIES_ERROR,\n payload: err,\n})\n","import * as types from './types'\n\nexport const createConversationRequest = () => ({\n type: types.CREATE_CONVERSATION_REQUEST,\n})\nexport const createConversationSuccess = () => ({\n type: types.CREATE_CONVERSATION_SUCCESS,\n})\nexport const createConversationFailure = (error) => ({\n type: types.CREATE_CONVERSATION_FAILURE,\n payload: {\n error,\n },\n})\n","export const CREATE_CONVERSATION_REQUEST =\n 'intercom/CREATE_CONVERSATION_REQUEST'\nexport const CREATE_CONVERSATION_SUCCESS =\n 'intercom/CREATE_CONVERSATION_SUCCESS'\nexport const CREATE_CONVERSATION_FAILURE =\n 'intercom/CREATE_CONVERSATION_FAILURE'\n","import * as types from './types'\n\nexport const buyProductRequest = () => ({\n type: types.BUY_PRODUCT_REQUEST,\n})\nexport const buyProductSuccess = msg => ({\n type: types.BUY_PRODUCT_SUCCESS,\n payload: { msg },\n})\nexport const buyProductFailure = error => ({\n type: types.BUY_PRODUCT_FAILURE,\n payload: {\n error,\n },\n})\n","import { createSlice, createAsyncThunk } from '@reduxjs/toolkit'\nimport API from 'utils/api'\nimport { buildUrl, formatDate } from 'utils/helpers'\nimport config from 'config'\nimport { showError, showMessage } from 'features/ui/uiSlice'\n\nexport const downloadReport = createAsyncThunk(\n 'analytics/downloadReport',\n async (params = {}, { getState, rejectWithValue, dispatch }) => {\n try {\n const payload = await API.request(\n buildUrl('/analytics/reports/citizen_registrations', params),\n {\n dispatch,\n method: 'POST',\n },\n `${config.redirectUri}/api/v2`,\n true\n )\n\n const url = window.URL.createObjectURL(new Blob([payload]))\n const link = document.createElement('a')\n link.href = url\n link.setAttribute(\n 'download',\n `Спутник отчёт ${new Date(\n params.start_date\n ).toLocaleDateString()} - ${new Date(\n params.end_date\n ).toLocaleDateString()}.${params.download_type}`\n ) //or any other extension\n document.body.appendChild(link)\n link.click()\n return payload\n } catch {\n dispatch(showError('При формировании отчёта произошла ошибка'))\n return rejectWithValue()\n }\n }\n)\n\nexport const downloadReportProgram = createAsyncThunk(\n 'analytics/downloadReport',\n async (params = {}, { getState, rejectWithValue, dispatch }) => {\n try {\n const payload = await API.request(\n buildUrl('/analytics/reports/partner_program', params),\n {\n dispatch,\n method: 'POST',\n },\n `${config.redirectUri}/api/v2`,\n true\n )\n\n const url = window.URL.createObjectURL(new Blob([payload]))\n const link = document.createElement('a')\n link.href = url\n link.setAttribute(\n 'download',\n `Спутник отчёт ${new Date(\n params.start_date\n ).toLocaleDateString()} - ${new Date(\n params.end_date\n ).toLocaleDateString()}.${params.download_type}`\n ) //or any other extension\n document.body.appendChild(link)\n link.click()\n return payload\n } catch {\n dispatch(showError('При формировании отчёта произошла ошибка'))\n return rejectWithValue()\n }\n }\n)\n\nexport const analytics = createSlice({\n name: 'analytics',\n initialState: {},\n reducers: {},\n extraReducers: {\n [downloadReport.pending]: (state) => {\n state.pending = true\n },\n [downloadReport.fulfilled]: (state) => {\n state.pending = false\n },\n [downloadReport.rejected]: (state) => {\n state.pending = false\n },\n },\n})\n\nexport const {} = analytics.actions\nexport default analytics.reducer\n","//@flow\nexport type IService = {\n base_info: {\n is_active: boolean,\n in_package: boolean,\n payment: string,\n payment_name: string,\n image: string,\n type: 'global' | 'per_device',\n rate_type: 'monthly' | 'daily',\n cost: number,\n description: string,\n service_address: string,\n colors: {\n activated: string,\n deactivated: string,\n text: string,\n },\n },\n}\n\nexport const rateTypes = {\n monthly: 'ежемесячно',\n daily: 'ежедневно',\n}\n\nexport type Action = {\n +type: string,\n +payload: Object,\n +meta?: Object,\n}\n\nexport type BillingAccount = {\n actual_address: ?string,\n balance: ?string,\n balance_with_currency: ?string,\n inn: ?string,\n bic: ?string,\n company_name: ?string,\n email: ?string,\n id: ?number,\n legal_address: ?string,\n phone_number: ?string,\n postal_code: ?string,\n settlement_account: ?string,\n kpp: ?string,\n balance_last_update: Date,\n is_filled: boolean,\n card_info: ?Object,\n service_code: ?string,\n}\n\nexport type Company = {\n id: number,\n name: string,\n tin: string,\n uuid: string,\n inn: string,\n billing_account: BillingAccount,\n}\n\nexport type ITransaction = {\n type: 'order' | 'invoice',\n description?: string,\n payment_method?: 'card' | 'check',\n operation_id: number,\n status: 'pending' | 'success' | 'error',\n date: string,\n amount: string,\n balance: number,\n}\n\nexport type Stat = {\n name: string,\n total_spent: number,\n total_deposit: number,\n}\n\nexport const paymentMethods = {\n card: 'card',\n check: 'direct_deposit',\n}\n","//@flow\nimport * as actions from './actions'\nimport Api from 'utils/api'\nimport type { App } from './types'\nimport config from 'config'\n\nexport const getApps: Function = (): Function => async (\n dispatch: Function,\n): Promise => {\n dispatch(actions.getAppsRequest())\n try {\n const apps: App[] = await Api.request('/apps', {}, config.ssoUri)\n dispatch(actions.getAppsSuccess(apps))\n } catch (err) {\n dispatch(\n actions.getAppsError('Произошла ошибка при получении списка приложений.'),\n )\n }\n}\n\nexport const getUserApps: Function = (id: number): Function => async (\n dispatch: Function,\n): Promise => {\n dispatch(actions.getUserAppsRequest())\n try {\n const apps: App[] = await Api.request(\n `/users/${id}/apps`,\n {},\n config.ssoUri,\n )\n dispatch(actions.getUserAppsSuccess(apps))\n return Promise.resolve(apps)\n } catch (err) {\n dispatch(actions.getUserAppsError(err))\n return Promise.reject(err)\n }\n}\n\nexport const getAppAbilities: Function = (appId: number): Function => async (\n dispatch: Function,\n): Promise => {\n dispatch(actions.getAppAbilitiesRequest())\n try {\n const abilities: Object[] = await Api.request(\n `/apps/${appId}/abilities`,\n {},\n config.ssoUri,\n )\n dispatch(actions.getAppAbilitiesSuccess(abilities))\n return Promise.resolve(abilities)\n } catch (err) {\n dispatch(\n actions.getAppAbilitiesError(\n 'При получении списка возможностей приложения произошла ошибка. Проверьте свой уровень доступа.',\n ),\n ) // !\n return Promise.reject(err)\n }\n}\n\nexport const getAbilityActions: Function = (\n abilityId: number,\n): Function => async (dispatch: Function): Promise => {\n dispatch(actions.getAbilityActionsRequest())\n try {\n const abilityActions: Object[] = await Api.request(\n `/actions?ability_id=${abilityId}`,\n {},\n config.ssoUri,\n )\n dispatch(actions.getAbilityActionsSuccess(abilityActions))\n return Promise.resolve(abilityActions)\n } catch (err) {\n dispatch(actions.getAbilityActionsError(err))\n return Promise.reject(err)\n }\n}\n\n// export const getAppsPermissions: Function = (\n// userId: number\n// ): Function => async (dispatch: Function): Promise => {\n// dispatch(actions.)\n// }\n","import { createSlice, createAsyncThunk, createSelector } from '@reduxjs/toolkit'\nimport API from 'utils/api'\nimport { buildUrl, clamp } from 'utils/helpers'\nimport config from 'config'\nimport { showError, showMessage } from 'features/ui/uiSlice'\n\nexport const fetchCompanyServices = createAsyncThunk(\n 'services/fetchCompanyServices',\n async (uuid, { getState, rejectWithValue, dispatch }) => {\n try {\n const payload = await API.request(\n `/services?company_service=true`,\n {\n dispatch,\n },\n `${config.redirectUri}/api/v2`,\n )\n return payload\n } catch {\n return rejectWithValue()\n }\n },\n)\n\nconst servicesSlice = createSlice({\n name: 'servicesNew',\n initialState: {\n companyServices: null,\n },\n extraReducers: {\n [fetchCompanyServices.fulfilled]: (state, { payload }) => {\n state.companyServices = payload\n },\n },\n})\n\nexport default servicesSlice.reducer\n","import { TablePagination } from '@material-ui/core'\r\nimport { TableBody } from '@material-ui/core'\r\nimport { useCallback, useEffect, useState } from 'react'\r\nimport { useDispatch, useSelector } from 'react-redux'\r\n\r\nimport { Checkbox } from 'sputnik-ui'\r\nimport { Loader } from 'sputnik-ui'\r\nimport { TableCell } from 'sputnik-ui'\r\nimport { TableRow } from 'sputnik-ui'\r\nimport { Table } from 'sputnik-ui'\r\nimport {\r\n addressesActions,\r\n fetchAddresses,\r\n getAddressesList,\r\n getAddressesMeta,\r\n getAddressesPending,\r\n getAddressesSelected,\r\n} from 'store/addresses'\r\n\r\nexport const AddressesList = () => {\r\n const selectedAddresses = useSelector(getAddressesSelected)\r\n const addressesPending = useSelector(getAddressesPending)\r\n const addresses = useSelector(getAddressesList)\r\n const addressesMeta = useSelector(getAddressesMeta)\r\n const { selectAddress } = addressesActions\r\n const dispatch = useDispatch()\r\n const [page, setPage] = useState(1)\r\n const [limit, setLimit] = useState(5)\r\n\r\n const handleSelectAddress = useCallback(\r\n (addresses) => {\r\n dispatch(selectAddress(addresses))\r\n },\r\n [dispatch, selectAddress]\r\n )\r\n\r\n useEffect(() => {\r\n if (page < 1) setPage(1)\r\n dispatch(fetchAddresses({ page, limit }))\r\n }, [dispatch, page, limit])\r\n\r\n if (addressesPending && addresses.length < 1) {\r\n return \r\n }\r\n\r\n return (\r\n
\r\n \r\n \r\n {addresses ? (\r\n addresses?.map((address) => {\r\n return (\r\n \r\n \r\n selected.uuid === address.uuid\r\n )}\r\n onChange={(e) => handleSelectAddress(address)}\r\n />\r\n {address.address}\r\n \r\n \r\n )\r\n })\r\n ) : (\r\n Тут ничего нет\r\n )}\r\n \r\n
\r\n `${from}-${to} из ${count}`}\r\n onChangePage={(e, page) => {\r\n setPage(page)\r\n }}\r\n onChangeRowsPerPage={(e) => {\r\n setLimit(e.target.value)\r\n }}\r\n style={{ background: 'white' }}\r\n />\r\n
\r\n )\r\n}\r\n","var _circle, _ellipse, _ellipse2, _path, _rect, _rect2, _rect3, _rect4, _rect5, _rect6, _rect7, _rect8;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : 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; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgFaceRec(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 14,\n height: 14,\n viewBox: \"0 0 14 14\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _circle || (_circle = /*#__PURE__*/React.createElement(\"circle\", {\n cx: 7,\n cy: 7,\n r: 5,\n fill: \"black\",\n stroke: \"black\",\n strokeWidth: 1.2\n })), _ellipse || (_ellipse = /*#__PURE__*/React.createElement(\"ellipse\", {\n cx: 5.5,\n cy: 5.9,\n rx: 0.5,\n ry: 0.9,\n fill: \"white\"\n })), _ellipse2 || (_ellipse2 = /*#__PURE__*/React.createElement(\"ellipse\", {\n cx: 8.5,\n cy: 5.9,\n rx: 0.5,\n ry: 0.9,\n fill: \"white\"\n })), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9 8C9 8.47739 8.78929 8.93523 8.41421 9.27279C8.03914 9.61036 7.53043 9.8 7 9.8C6.46957 9.8 5.96086 9.61036 5.58579 9.27279C5.21071 8.93523 5 8.47739 5 8H9Z\",\n fill: \"white\"\n })), _rect || (_rect = /*#__PURE__*/React.createElement(\"rect\", {\n width: 3,\n height: 1.2,\n rx: 0.6,\n fill: \"black\"\n })), _rect2 || (_rect2 = /*#__PURE__*/React.createElement(\"rect\", {\n width: 3,\n height: 1.2,\n rx: 0.6,\n transform: \"matrix(1 0 0 -1 0 14)\",\n fill: \"black\"\n })), _rect3 || (_rect3 = /*#__PURE__*/React.createElement(\"rect\", {\n width: 3,\n height: 1.2,\n rx: 0.6,\n transform: \"matrix(-1 0 0 1 14 0)\",\n fill: \"black\"\n })), _rect4 || (_rect4 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 14,\n y: 14,\n width: 3,\n height: 1.2,\n rx: 0.6,\n transform: \"rotate(-180 14 14)\",\n fill: \"black\"\n })), _rect5 || (_rect5 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 1.19995,\n width: 3,\n height: 1.2,\n rx: 0.6,\n transform: \"rotate(90 1.19995 0)\",\n fill: \"black\"\n })), _rect6 || (_rect6 = /*#__PURE__*/React.createElement(\"rect\", {\n width: 3,\n height: 1.2,\n rx: 0.6,\n transform: \"matrix(-4.37114e-08 -1 -1 4.37114e-08 1.19995 14)\",\n fill: \"black\"\n })), _rect7 || (_rect7 = /*#__PURE__*/React.createElement(\"rect\", {\n width: 3,\n height: 1.2,\n rx: 0.6,\n transform: \"matrix(4.37114e-08 1 1 -4.37114e-08 12.8 0)\",\n fill: \"black\"\n })), _rect8 || (_rect8 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 12.8,\n y: 14,\n width: 3,\n height: 1.2,\n rx: 0.6,\n transform: \"rotate(-90 12.8 14)\",\n fill: \"black\"\n })));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgFaceRec);\nexport default __webpack_public_path__ + \"static/media/face_rec.86f22ab1.svg\";\nexport { ForwardRef as ReactComponent };","import React, { useMemo } from 'react'\nimport { Select, Wrapper, Container, Button } from 'sputnik-ui'\nimport Divider from '@material-ui/core/Divider'\nimport CardContent from '@material-ui/core/CardContent'\nimport { useDispatch } from 'react-redux'\nimport { permissionsActions } from 'store/permissions'\nimport { useCallback } from 'react'\nimport { useTranslation } from 'react-i18next'\n\nfunction isEmptyPermissions([, val]) {\n return val.length < 1\n}\n\nexport const CompanyPermissionsCard = ({ permissions, appAbilities, handleSelect }) => {\n const { t } = useTranslation('common')\n const { setPermissionsList } = permissionsActions\n const dispatch = useDispatch()\n const appAbilitiesList = appAbilities[0].resources\n\n const handleSelectAllPermissions = useCallback(() => {\n let nextPermissions = {}\n Object.entries(appAbilitiesList).forEach(([key, value]) => {\n nextPermissions[key] = value.privileges.map((el) => el.action)\n })\n\n dispatch(setPermissionsList(nextPermissions))\n }, [appAbilitiesList, dispatch, setPermissionsList])\n\n const handleUnSelectAllPermissions = useCallback(() => {\n let nextPermissions = {}\n Object.entries(permissions).forEach(([key, value]) => {\n nextPermissions[key] = []\n })\n\n dispatch(setPermissionsList(nextPermissions))\n }, [dispatch, permissions, setPermissionsList])\n\n const permissionsAsArray = Object.entries(permissions)\n\n const isDisabledRejectAll =\n permissionsAsArray.length > 0 ? permissionsAsArray.every(isEmptyPermissions) : true\n\n const allPrivilegesCount = Object.values(appAbilitiesList).reduce((acc, value) => {\n return acc + value.privileges.length\n })\n\n const allActivePrivilegesCount = permissionsAsArray.reduce((acc, value) => {\n return acc + value[1].length\n }, 0)\n\n const isDisabledSelectAll = allPrivilegesCount === allActivePrivilegesCount\n\n return (\n \n \n \n \n {t('common:button.select_all')}\n \n \n {t('common:button.reset')}\n \n \n \n \n {appAbilities &&\n Object.entries(appAbilitiesList).map(([key, ability]) => {\n const options = ability.privileges.map((s) => ({\n value: s.action,\n label: s.translation,\n isDisabled: s.feature,\n }))\n const selected = (permissions[key] && permissions[key]) || null\n\n const selectedOptions = options.filter((o) => selected && selected.includes(o.value))\n\n return (\n
\n \n
\n )\n })}\n \n
\n
\n )\n}\n","import React from 'react'\nimport { useDispatch, useSelector } from 'react-redux'\nimport { Loader } from 'sputnik-ui'\nimport { CompanyPermissionsCard } from 'components/organisms/CompanyPermissionsCard/CompanyPermissionsCard'\nimport { getAppAbilitiesList, getPermissionsList, permissionsActions } from 'store/permissions'\n\nexport const PermissionsForm = () => {\n const appAbilities = useSelector(getAppAbilitiesList)\n const permissions = useSelector(getPermissionsList)\n const { setPermissionsList } = permissionsActions\n const dispatch = useDispatch()\n\n const handleSelect = (key) => (newActions) => {\n const oldPermissions = permissions\n\n const newActionValues = newActions ? newActions.map((a) => a.value) : []\n let nextPermissions = {\n ...oldPermissions,\n [key]: [...newActionValues],\n }\n\n dispatch(setPermissionsList(nextPermissions))\n }\n\n if (!appAbilities) {\n return \n }\n\n return (\n
\n \n
\n )\n}\n","// https://github.com/diegohaz/arc/wiki/Atomic-Design#do-not-worry\nconst req = require.context('.', true, /\\.\\/[^/]+\\/[^/]+\\/index\\.js$/)\n\nreq.keys().forEach(key => {\n const componentName = key.replace(/^.+\\/([^/]+)\\/index\\.js/, '$1')\n module.exports[componentName] = req(key).default\n})\n","import Api from 'utils/api'\nimport * as actions from './actions'\n\nexport const buyProduct = (appId, amount) => async dispatch => {\n dispatch(actions.buyProductRequest())\n try {\n await Api.request(`/products/${appId}/buy?amount=${amount}`, {\n method: 'POST',\n })\n\n dispatch(actions.buyProductSuccess('Покупка была успешно совершена'))\n return Promise.resolve()\n } catch (error) {\n const { message } = await error.json()\n dispatch(actions.buyProductFailure(message))\n return Promise.reject()\n }\n}\n","import React from 'react'\nimport styled, { css } from 'styled-components'\nimport { Link } from 'react-router-dom'\n\nconst gradient = css`\n background: linear-gradient(\n 180deg,\n rgba(0, 0, 0, 0) 0%,\n rgba(38, 249, 211, 0.106) 100%\n ),\n linear-gradient(\n 184.05deg,\n rgba(255, 0, 0, 0.2) -8.71%,\n rgba(255, 0, 0, 0.2) -5.96%,\n rgba(0, 0, 0, 0) 96.69%\n ),\n #2a225a;\n`\n\nconst Wrapper = styled.div`\n text-align: center;\n width: 100%;\n height: 100%;\n font-family: 'Play';\n display: flex;\n font-weight: 700;\n flex-direction: column;\n`\n\nconst ErrorCode = styled.h1`\n position: absolute;\n left: 50%;\n transform: translate(-50%, 0);\n ${gradient}\n margin: 0px;\n height: fit-content;\n font-size: 380px;\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n font-size: 200px;\n }\n`\n\nconst Text = styled.div`\n margin-top: 80px;\n text-align: center;\n color: white;\n font-size: 40px;\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n font-size: 25px;\n margin-top: 40px;\n }\n`\n\nconst HelperText = styled.p`\n margin-top: 32px;\n color: ${(p) => p.theme.palette.color.secondary};\n font-weight: 400;\n font-size: 24px;\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n font-size: 16px;\n margin-top: 24px;\n }\n`\n\nconst StyledSection = styled.section`\n padding: 0 5%;\n position: absolute;\n bottom: 0;\n top: calc(50% + 80px);\n /* flex-shrink: 1; */\n width: 100%;\n flex-direction: column;\n align-items: center;\n ${gradient}\n`\n\nfunction AccessError({ code }) {\n return (\n \n {code || 403}\n \n \n Упс, к сожалению у вас нет доступа к
Спутник Про.\n
\n\n \n Вы можете приобрести данный тариф, написав нам на почту{' '}\n {\n window.open('mailto:sales@sputnik.systems')\n e.preventDefault()\n }}\n >\n sales@sputnik.systems\n {' '}\n в\n
коммерческий отдел.\n
\n
\n
\n )\n}\n\nexport default AccessError\n","import React from 'react'\nimport { Button } from 'sputnik-ui'\nimport {\n DialogActions,\n DialogContent,\n Typography,\n TextField,\n InputAdornment,\n withWidth,\n} from '@material-ui/core'\nimport styled from 'styled-components'\nimport { withTranslation } from 'react-i18next'\n\nconst Separator = styled.div`\n width: 100%;\n /* border-bottom: 1px dashed #333; */\n margin: 2rem 0;\n`\nconst ValueText = styled(Typography)`\n && {\n position: relative;\n width: 100%;\n /* font-size: 2.625rem; */\n display: flex;\n align-items: center;\n justify-content: center;\n\n font-size: 2.625rem;\n font-weight: 300;\n\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n justify-content: flex-start;\n }\n }\n`\nconst DescText = styled(Typography).attrs((p) => ({\n color: 'textSecondary',\n}))`\n position: absolute;\n right: 0;\n top: 0;\n bottom: 0;\n && {\n display: flex;\n align-items: center;\n }\n`\n\nconst QuantityInput = styled(TextField)`\n && {\n width: 100%;\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n margin: 0;\n width: 100%;\n text-align: left;\n }\n }\n`\n\nconst BuyProductForm = ({\n onBuy,\n notEnoughBalance,\n product,\n productQty,\n setProductQty,\n handleClose,\n totalPrice,\n setIsDepositing,\n t,\n width,\n}) => {\n const isMobile = width === 'xs' || width === 's'\n return (\n {\n e.preventDefault()\n notEnoughBalance ? setIsDepositing(true) : onBuy()\n }}\n >\n \n \n {t('common:format.number', { number: product?.cost / 100 })}₽\n цена\n \n \n {product?.unit} штуки в одной упаковке\n \n \n {t('products:units.package', { count: productQty })}\n \n ),\n }}\n value={productQty}\n onChange={(e) => {\n const {\n currentTarget: { value },\n } = e\n if (value === '') {\n return setProductQty(value)\n }\n const num = Number(value)\n if (num > 10000) return\n return setProductQty(parseInt(num))\n }}\n // eslint-disable-next-line\n inputProps={{\n style: {\n textAlign: isMobile ? 'left' : 'center',\n minWidth: 160,\n fontSize: '2.625rem',\n marginLeft: isMobile ? 0 : 90,\n fontWeight: 300,\n },\n type: 'number',\n step: 1,\n min: 1,\n max: 10000,\n }}\n />\n \n \n {productQty * product?.unit}{' '}\n {t(`products:devices.${product?.name}_long`, {\n count: productQty * product?.unit,\n })}\n \n \n за\n \n \n {t('common:format.number', { number: totalPrice })}₽\n \n \n \n (notEnoughBalance ? setIsDepositing(true) : onBuy())}\n disabled={!productQty}\n size=\"fullScreen\"\n variant=\"contained\"\n color={notEnoughBalance ? 'danger' : 'primary'}\n type=\"submit\"\n >\n {notEnoughBalance ? 'пополнить баланс' : 'купить'}\n \n \n \n )\n}\n\nexport default withTranslation(['common', 'products'])(\n withWidth()(BuyProductForm),\n)\n","import React, { useState } from 'react'\nimport styled from 'styled-components'\nimport { DepositOption, CreditCard } from 'components'\nimport { connect } from 'react-redux'\nimport {\n Typography,\n TextField,\n Checkbox,\n DialogContent,\n FormControlLabel,\n InputAdornment,\n} from '@material-ui/core'\nimport { Payment, Assignment } from '@material-ui/icons'\nimport { withTranslation } from 'react-i18next'\nimport { useInput } from 'sputnik-ui'\n\nimport { paymentMethods } from 'globalTypes'\n\nconst Wrapper = styled.div`\n max-width: 600px;\n justify-content: center;\n display: flex;\n flex-direction: column;\n margin: 0 auto;\n /* align-items: center; */\n & > * {\n margin: 1.625rem 0;\n }\n`\n\nconst DepositForm = ({ t, defaultAmount, billingAccount, children }) => {\n const cardInfoPresent = billingAccount && !!billingAccount.card_info\n\n const [paymentMethod, setPaymentMethod] = useState(paymentMethods.check)\n const [usePaymentCard, setUsePaymentCard] = useState(cardInfoPresent)\n const { value: phoneNumber, bind: bindPhoneNumber } = useInput('')\n const [total, setTotal] = useState(defaultAmount)\n\n return (\n <>\n \n {/* \n Способ пополнения\n \n */}\n {/* }\n selected={paymentMethod === paymentMethods.card}\n onClick={() => setPaymentMethod(paymentMethods.card)}\n >\n Банковской картой\n \n\n {paymentMethod === paymentMethods.card &&\n (billingAccount && !billingAccount.phone_number) && (\n \n )} */}\n\n {/* setPaymentMethod(paymentMethods.check)}\n icon={}\n >\n Безналичный расчет\n \n */}\n \n Сумма пополнения\n \n \n setTotal(e.target.value)}\n value={total}\n // eslint-disable-next-line\n InputProps={{\n endAdornment: ,\n }}\n // eslint-disable-next-line\n inputProps={{\n style: {\n // textAlign: isMobile ? 'left' : 'center',\n minWidth: 160,\n fontSize: '2.625rem',\n marginLeft: 30,\n textAlign: 'center',\n fontWeight: 300,\n },\n type: 'number',\n step: 1,\n min: 1,\n max: 10000,\n }}\n disabled={defaultAmount}\n />\n {paymentMethod === paymentMethods.card && cardInfoPresent && (\n <>\n setUsePaymentCard(!usePaymentCard)}\n />\n }\n label=\"Использовать сохраненный способ оплаты\"\n />\n\n \n \n )}\n \n \n\n {children &&\n children({ total, paymentMethod, usePaymentCard, phoneNumber })}\n \n )\n}\n\nconst styles = {\n checkboxWrapper: {\n marginTop: '.625rem',\n marginLeft: '-16px',\n },\n}\n\nconst mapStateToProps = ({ billing }) => ({\n billingAccount: billing.account,\n})\n\nexport default withTranslation(['common'])(\n connect(mapStateToProps)(DepositForm),\n)\n","import React from 'react'\n\nimport { useSpring, animated } from 'react-spring'\n\nconst calc = ({ x, y, width, height }) => {\n return [\n // -(y - window.innerHeight / 5) / 40,\n\n // (x - window.innerWidth / 5) / 40,\n -(y - height) / 40,\n (x - width) / 40,\n 1.05,\n ]\n}\nconst trans = (x, y, s) =>\n `perspective(600px) rotateX(${x}deg) rotateY(${y}deg) scale(${s})`\n\nfunction relativeCoords(event) {\n const { left, top, width, height } = event.target.getBoundingClientRect()\n const x = event.clientX - left\n const y = event.clientY - top\n return { x, y, width, height }\n}\n\nexport default function SpringCard({ children }) {\n const [props, set] = useSpring(() => ({\n xys: [0, 0, 1],\n config: { mass: 5, tension: 350, friction: 40 },\n }))\n return (\n set({ xys: calc(x, y) })}\n onMouseMove={e => set({ xys: calc(relativeCoords(e)) })}\n onMouseLeave={() => set({ xys: [0, 0, 1] })}\n style={{ transform: props.xys.interpolate(trans) }}\n >\n {children}\n \n )\n}\n","import { FormControlLabel } from '@material-ui/core'\nimport React, { useEffect, useState } from 'react'\nimport { useDispatch, useSelector } from 'react-redux'\nimport { Link } from 'react-router-dom'\nimport {\n Button,\n Checkbox,\n FormModal,\n FormModalActions,\n FormModalContent,\n FormModalTitle,\n Typography,\n} from 'sputnik-ui'\nimport { acceptLicense } from 'store/auth/operations'\n\nexport const AcceptLicenseModal = () => {\n const licenseStatus = useSelector(({ auth }) => auth.company?.license_agreement_accepted)\n const [isAccepted, setAccepted] = useState(false)\n const [isModalOpen, setIsModalOpen] = useState(false)\n const dispatch = useDispatch()\n\n const handleOpenModal = () => {\n setIsModalOpen(true)\n }\n\n const handleCloseModal = () => {\n setIsModalOpen(false)\n }\n\n const acceptToggle = () => {\n setAccepted((prev) => !prev)\n }\n\n const handleAccept = () => {\n dispatch(acceptLicense()).then(handleCloseModal)\n }\n\n useEffect(() => {\n if (!licenseStatus && licenseStatus !== undefined) {\n handleOpenModal()\n }\n }, [licenseStatus])\n\n return (\n \n Обратите внимание\n \n \n Мы обновили текст лицензионного соглашения.\n \n \n Вы можете ознакомиться с документом по{' '}\n \n \n ссылке.\n \n \n \n \n Продолжая работу на платформе, вы подтверждаете своё согласие с ним\n \n \n Прочитано, подтверждаю\n \n }\n value={isAccepted}\n onChange={acceptToggle}\n control={\n \n }\n />\n \n \n \n \n \n \n )\n}\n","import React, { useState } from 'react'\nimport { BillingAccountForm } from 'components'\nimport { Button, Loader, Wrapper } from 'sputnik-ui'\nimport { connect } from 'react-redux'\n\nimport { changeBillingAccountInfo } from 'store/operations'\nimport { fetchBillingAccount } from 'store/billing/operations'\n\nconst BillingAccountInfo = (props) => {\n const notFilled =\n !props.billingAccount?.company_name ||\n props.billingAccount?.company_name === '' ||\n !props.billingAccount?.phone_number ||\n props.billingAccount?.phone_number === ''\n const [isDisabled, setIsDisabled] = useState(!notFilled)\n\n const handleSubmit = (values) => {\n return props\n .dispatch(changeBillingAccountInfo(values))\n .then(fetchBillingAccount)\n .then(() => {\n setIsDisabled(true)\n })\n }\n\n return (\n <>\n \n {!props.billingAccount ? (\n \n ) : (\n \n {({ isSubmitting }) =>\n isDisabled ? (\n setIsDisabled(false)}\n rounded\n secondary\n type=\"button\"\n key=\"_billing_account_edit_button\"\n size=\"small\">\n изменить\n \n ) : (\n \n Сохранить\n \n )\n }\n \n )}\n \n \n )\n}\n\nconst mapStateToProps = ({ billing }) => ({\n billingAccount: billing.account,\n})\n\nexport default connect(mapStateToProps)(BillingAccountInfo)\n","import React from 'react'\nimport { connect } from 'react-redux'\nimport styled from 'styled-components'\nimport {\n Select,\n Loader,\n Button,\n FullscreenDialogTitle,\n FullscreenExitButton,\n} from 'sputnik-ui'\nimport { withRouter } from 'react-router-dom'\nimport {\n Dialog,\n DialogContent,\n DialogActions,\n TextField,\n Fade,\n Typography,\n} from '@material-ui/core/'\nimport { Send } from '@material-ui/icons'\nimport { Formik } from 'formik'\nimport * as Yup from 'yup'\nimport config from 'config'\n\nimport { getApps, invitePartner, getPartners } from 'store/operations'\n\nconst Form = styled.form`\n flex: 1;\n display: flex;\n flex-direction: column;\n`\n\nconst Transition = props => \n\nconst validationSchema = () =>\n Yup.object().shape({\n email: Yup.string()\n .typeError('введите e-mail')\n .email('неверный формат')\n .required('введите e-mail'),\n name: Yup.string().required('введите имя/название организации'),\n })\n\nclass InvitePartnerModal extends React.Component {\n state = {}\n\n componentDidMount() {}\n\n handleinvitePartner = values => {\n this.props.dispatch(invitePartner(values)).then(() => {\n this.props.handleClose()\n })\n }\n\n toggleModal = modal => () => this.setState({ [modal]: !this.state[modal] })\n\n render() {\n const { open, handleClose } = this.props\n\n return (\n \n \n Пригласить сервис-партнёра\n \n \n (\n
\n \n \n \n \n \n \n \n Пригласить\n \n \n \n )}\n />\n \n )\n }\n}\n\nexport default connect()(withRouter(InvitePartnerModal))\n","import React, { useCallback, useEffect, useState } from 'react'\nimport { useDispatch, useSelector } from 'react-redux'\nimport styled from 'styled-components'\nimport { Button, FullscreenDialogTitle, FullscreenExitButton } from 'sputnik-ui'\n\nimport {\n Dialog,\n DialogContent,\n DialogActions,\n TextField,\n Fade,\n FormControl,\n FormControlLabel,\n FormLabel,\n RadioGroup,\n Radio,\n} from '@material-ui/core/'\nimport { Send } from '@material-ui/icons'\n\nimport * as Yup from 'yup'\n\nimport { PermissionsForm } from './PermissionsForm'\nimport { useFormik } from 'formik'\nimport { createManagementCompany, fetchAppAbilities } from 'store/permissions/services'\nimport { AddressesList } from './AddressesList'\nimport { getAddressesSelected } from 'store/addresses/selectors/getAddressesSelected'\nimport { permissionsActions } from 'store/permissions/slice'\nimport { addressesActions } from 'store/addresses'\nimport { getPermissionsList } from 'store/permissions'\n\nconst Form = styled.form`\n flex: 1;\n display: flex;\n flex-direction: column;\n`\n\nconst Transition = (props) => \n\nconst validationSchema = () =>\n Yup.object().shape({\n email: Yup.string()\n .typeError('введите e-mail')\n .email('неверный формат')\n .required('введите e-mail'),\n name: Yup.string().required('введите имя/название организации'),\n })\n\nconst initialValues = {\n email: '',\n name: '',\n}\n\nconst customPermissionsVariables = {\n on: 'true',\n off: 'false',\n}\nconst isArrayLengthMoreThanZero = (array) => array.length > 0\n\nconst InviteUKModal = (props) => {\n const { open, handleClose } = props\n const { clearAddresses } = addressesActions\n const { clearPermission } = permissionsActions\n const dispatch = useDispatch()\n const permissionsList = useSelector(getPermissionsList)\n const selectedAddresses = useSelector(getAddressesSelected)\n const [customPermissions, setCustomPermissions] = useState(customPermissionsVariables.off)\n\n useEffect(() => {\n dispatch(fetchAppAbilities())\n return () => {\n dispatch(clearAddresses())\n dispatch(clearPermission())\n }\n }, [clearAddresses, clearPermission, dispatch])\n\n const handleSelectPermission = useCallback((e) => {\n setCustomPermissions(e.target.value)\n }, [])\n\n const formik = useFormik({\n validationSchema: validationSchema,\n initialValues: initialValues,\n onSubmit: (values) => {\n const params = {\n permissions: permissionsList,\n email: values.email,\n address_uuids: selectedAddresses.map((address) => address.uuid) || [],\n name: values.name,\n }\n dispatch(createManagementCompany(params)).then(handleClose)\n },\n })\n\n const isSubmitDisabled =\n Object.keys(formik.errors).length > 0 ||\n selectedAddresses?.length < 1 ||\n Object.keys(permissionsList).length < 1 ||\n (customPermissions === customPermissionsVariables.on\n ? !Object.values(permissionsList).some(isArrayLengthMoreThanZero)\n : false)\n\n return (\n \n \n Пригласить управляющую компанию\n \n \n\n
\n \n \n \n \n Настройка доступа\n \n }\n value={customPermissionsVariables.off}\n label=\"Полный доступ\"\n />\n }\n value={customPermissionsVariables.on}\n label=\"Ручной доступ\"\n />\n \n \n {customPermissions === customPermissionsVariables.on ? : null}\n \n \n \n \n \n Пригласить\n \n \n \n
\n )\n}\n\nexport default InviteUKModal\n","import React from 'react';\nimport { select } from 'd3-selection';\nimport { interpolate } from 'd3-interpolate';\nimport { transition } from 'd3-transition';\n\nconst arcTween = (newAngle, arcGenerator) => (d) => {\n const customInterpolate = interpolate(d.endAngle, newAngle)\n return (t) => {\n d.endAngle = customInterpolate(t);\n return arcGenerator(d);\n };\n};\n\nclass Bar extends React.Component {\n constructor() {\n super()\n this.ref = React.createRef()\n }\n componentDidMount() {\n this.init()\n }\n componentDidUpdate() {\n this.transitionBar()\n }\n init() {\n const node = this.ref.current\n const { tau } = this.props\n const initialValue = 0\n\n const g = select(node)\n .append('path')\n .datum({ endAngle: (initialValue / 100) * tau })\n\n this.g = g;\n this.transitionBar()\n }\n transitionBar() {\n const { g } = this\n const t = transition().duration(800)\n const { value, tau, arcGenerator } = this.props\n\n g\n .transition(t)\n .duration(750)\n .attrTween('d', arcTween((value * tau) / 100, arcGenerator))\n }\n render() {\n const { svgWidth, svgHeight } = this.props\n return (\n \n \n \n )\n }\n}\nexport default Bar","import { useEffect, useRef } from 'react'\nimport { select } from 'd3-selection'\nimport { arc } from 'd3-shape'\nimport FrontBar from './FrontBar.js'\nimport { transition } from 'd3-transition'\nimport { interpolateNumber } from 'd3-interpolate'\nimport { format } from 'd3-format'\nimport { useState } from 'react'\nimport { Typography } from '@material-ui/core'\n\nconst formatNumber = format(',d')\n\nfunction ProgressBar({ progress, color, bgColor, img, bold }) {\n const [value, setValue] = useState(0)\n const ref = useRef()\n\n useEffect(() => {\n setValue(progress)\n renderText(progress)\n }, [progress])\n\n function renderText(value) {\n const node = ref.current\n const t = transition().duration(800)\n\n select(node)\n .transition(t)\n .tween('text', function () {\n const that = select(this)\n const i = interpolateNumber(that.text().replace(/,/g, ''), value)\n return function (t) {\n that.text(formatNumber(i(t)))\n }\n })\n }\n\n const tau = 2 * Math.PI\n const svgWidth = 150\n const svgHeight = svgWidth\n const arcWidth = bold || 12\n const arcOuterRadius = svgWidth / 2\n const arcInnerRadius = svgWidth / 2 - arcWidth\n\n const arcGenerator = arc()\n .innerRadius(arcInnerRadius)\n .outerRadius(arcOuterRadius)\n .startAngle(0)\n .cornerRadius(12)\n\n const num = {\n position: 'absolute',\n top: svgHeight / 2,\n left: svgWidth / 2,\n }\n\n return (\n
\n
\n \n {img ? (\n \n ) : (\n \n {isNaN(progress) ? (\n \n ?\n \n ) : (\n <>\n \n 0\n \n \n %\n \n \n )}\n
\n )}\n
\n \n \n \n \n \n \n \n \n )\n}\n\nexport default ProgressBar\n","import React from 'react'\nimport { Typography } from '@material-ui/core'\nimport styled from 'styled-components'\n\nconst ResDiv = styled.div`\n display: flex;\n align-items: 'center';\n margin: 0 auto;\n margin-bottom: 2.5rem;\n align-items: center;\n max-width: 700px;\n @media (max-width: 768px) {\n flex-direction: column;\n }\n`\n\nfunction ListItem({ el }) {\n return (\n \n \n
\n \n {el.title}\n \n \n {el.subTitle}\n \n
\n
\n )\n}\n\nexport default ListItem\n","export default __webpack_public_path__ + \"static/media/success.e55a11b4.png\";","export default __webpack_public_path__ + \"static/media/analyctic.04cc1f88.png\";","export default __webpack_public_path__ + \"static/media/avatar.690dda62.png\";","export default __webpack_public_path__ + \"static/media/human.228efdd5.svg\";","export default __webpack_public_path__ + \"static/media/actionHelper.dd977b72.svg\";","export default __webpack_public_path__ + \"static/media/straightLine.8ac1556f.svg\";","export default __webpack_public_path__ + \"static/media/downLine.d4b0dce1.svg\";","export default __webpack_public_path__ + \"static/media/upLine.4afba33c.svg\";","import styled from 'styled-components'\nimport { Typography } from '@material-ui/core'\nimport { Trans, useTranslation } from 'react-i18next'\nimport straightLine from './straightLine.svg'\nimport downLine from './downLine.svg'\nimport upLine from './upLine.svg'\nimport dayjs from 'dayjs'\n\nconst borderRadius = '2.3rem'\n\nconst Card = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n background: #ffffff;\n box-shadow: 0px 12px 24px rgba(0, 0, 0, 0.06);\n border-radius: ${borderRadius};\n height: 287px;\n width: 220px;\n justify-content: space-between;\n text-align: center;\n padding: 20px 25px;\n transition: 0.3s ease-in-out;\n filter: grayscale(40%);\n opacity: 0.5;\n &.active {\n transform: scale(1.1);\n opacity: 1;\n filter: none;\n }\n`\n\nconst imageWorker = (val) => {\n if (val > 0) {\n return upLine\n } else if (val < 0) {\n return downLine\n } else {\n return straightLine\n }\n}\n\nfunction MoneyCard({ index, date, isActive, setActiveCard, points, moneyCount, status, isStart }) {\n const { t } = useTranslation('partner')\n\n const labelWorker = (val) => {\n if (val > 0) {\n return 'больше'\n } else if (val < 0) {\n return 'меньше'\n } else {\n return ''\n // return t('partner:card.empty.label')\n }\n }\n\n return (\n setActiveCard(index)}\n >\n
\n \n Вы заработали
\n за {dayjs(date).format('MMMM')}\n
\n \n {moneyCount} ₽\n \n
\n \"\"\n \n {!(Number(status) === 0) ? (\n \n это на {points}% {labelWorker(status)} чем за{' '}\n {dayjs(date).subtract(1, 'month').format('MMMM')}\n \n ) : (\n \n это столько же как за \n {dayjs(date).subtract(1, 'month').format('MMMM')}\n \n )}\n \n \n )\n}\n\nexport default MoneyCard\n","import dayjs from 'dayjs'\nimport { useCallback, useEffect, useMemo, useState } from 'react'\nimport styled from 'styled-components'\nimport MoneyCard from './MoneyCard'\n\nconst Container = styled.div`\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(210px, auto));\n grid-gap: 3rem;\n row-gap: 3rem;\n align-items: center;\n justify-content: center;\n`\n\nfunction MoneyCardContainer({ amountByMonths }) {\n const [activeCard, setActiveCard] = useState(1)\n\n const isActive = (index) => {\n if (index === activeCard) {\n return 'active'\n }\n }\n\n const data = useMemo(() => {\n const sortedData = Object.entries(amountByMonths).sort(([a, ,], [b, ,]) => dayjs(a) - dayjs(b))\n let prevValue = 0\n return sortedData\n .map(([date, value], index) => {\n const isFirst = index === 0\n let points, status\n if (value === prevValue) {\n points = isFirst ? 100 : 0\n status = 0\n }\n if (value > prevValue) {\n points = isFirst ? 100 : Math.floor((value / prevValue) * 100) - 100\n status = 1\n }\n if (value < prevValue) {\n points = isFirst ? 100 : Math.floor((value / prevValue) * 100) - 100\n status = -1\n }\n prevValue = value\n if (points < 0) points = points * -1\n return { status, points, date, value, isStart: isFirst }\n })\n .slice(1, 4)\n }, [amountByMonths])\n\n return (\n {\n setActiveCard(1)\n }}\n >\n {data.map(({ value, points, status, date, isStart }, index) => (\n \n ))}\n \n )\n}\n\nexport default MoneyCardContainer\n","import { useEffect, useState } from 'react'\nimport { Typography, Tooltip, Box } from '@material-ui/core'\nimport { Container } from 'sputnik-ui'\nimport { useSelector, useDispatch } from 'react-redux'\nimport styled from 'styled-components'\nimport { useTranslation, Trans } from 'react-i18next'\nimport { Link } from 'react-router-dom'\nimport ProgressBar from 'features/PartnerProgram/ProgressBar'\nimport ListItem from 'features/PartnerProgram/ListItem'\n\nimport success from './success.png'\nimport analyctic from './analyctic.png'\nimport avatar from './avatar.png'\nimport human from './human.svg'\nimport star1 from './star1.png'\nimport star2 from './star2.png'\nimport star3 from './star3.png'\nimport actionHelper from './actionHelper.svg'\n// import straightLine from './straightLine.svg'\n// import downLine from './downLine.svg'\n// import upLine from './upLine.svg'\nimport MoneyCardContainer from 'features/PartnerProgram/MoneyCardContainer'\nimport { Loader } from 'sputnik-ui'\n\nconst borderRadius = '2.3rem'\n\nconst Card = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n background: #ffffff;\n box-shadow: 0px 12px 24px rgba(0, 0, 0, 0.06);\n border-radius: ${borderRadius};\n padding: 20px 10px;\n max-width: 300px;\n height: 260px;\n`\n\nconst Value = styled(Typography).attrs((p) => ({ variant: 'h5' }))`\n display: flex;\n height: 180px;\n width: 100%;\n justify-content: center;\n align-items: center;\n font-size: 1.2rem;\n white-space: nowrap;\n border-bottom-left-radius: 1.5rem;\n border-bottom-right-radius: 1.5rem;\n`\n\nconst TableWrapper = styled.div`\n overflow: auto;\n margin: 3rem auto;\n width: 90%;\n @media (max-width: 1000px) {\n width: 100%;\n }\n`\n\nconst CellWrapper = styled.div`\n display: flex;\n justify-content: space-between;\n width: 13.5%;\n min-width: 120px;\n margin-left: 1rem;\n &:first-child {\n margin-left: 0rem;\n }\n`\n\nconst ResDiv = styled.div`\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 300px));\n grid-gap: 8rem;\n row-gap: 3rem;\n align-items: center;\n justify-content: center;\n`\n\nconst StarImage = styled.img`\n position: absolute;\n`\n\nconst table = [\n { title: '0-30%', value: '0%' },\n { title: '31-40%', value: '5%' },\n { title: '41-50%', value: '10%' },\n { title: '51-60%', value: '15%' },\n { title: '61-100%', value: '20%' },\n]\n\nconst numColor = (index) => {\n switch (index) {\n case 0:\n return '#0EA7FF'\n case 1:\n return '#000050'\n case 2:\n return '#EB4A86'\n case 3:\n return '#C130FF'\n case 4:\n return '#000050'\n\n default:\n return '#000050'\n }\n}\n\nfunction PartnerProgramPage() {\n const { t } = useTranslation('partner')\n\n const { medianActiveFlats, amountByMonths } = useSelector(\n ({ auth }) => auth?.partnerProgramStatistic\n )\n\n const circle = [\n {\n progress: medianActiveFlats || 0,\n color: '#EB4A86',\n bgColor: '#EDD7DF',\n label: (\n <>\n {t('partner:progress_circle.circle1')}\n \n \n \n \n ),\n },\n {\n progress: 'fd',\n color: '#E4E4E4',\n bgColor: '#E4E4E4',\n label: t('partner:progress_circle.circle2'),\n },\n ]\n\n if(!amountByMonths) return \n return (\n \n \n {t('partner:title')}\n \n \n \n\n \n\n \n \n {t('partner:key_metrics')}\n \n \n {t('partner:analytic_link.label')}{' '}\n \n {t('partner:analytic_link.link')}\n \n \n \n \n {circle.map((el, index) => {\n return (\n \n \n \n {el.label}\n \n \n )\n })}\n \n
\n \n \n {t('partner:bonus_points')}\n
\n \n \n \n \n
\n \n \n ]}\n >\n \n\n \n \n \n
\n \n \n\n \n Revenue share\n \n \n \n \n \n\n
\n \n {table.map((el, index) => {\n let isActiveColor\n let valueColor = numColor()\n isActiveColor = numColor()\n\n return (\n \n \n \n \n {' '}\n {el.title}\n \n\n {index === 4 ? (\n <>\n \n \n \n \n ) : null}\n
\n \n {el.value}\n \n \n \n )\n })}\n \n \n \n
\n \n \n \n {t('partner:foot_help.label')}{' '}\n \n {t('partner:foot_help.link')}\n \n \n \n
\n )\n}\n\nexport default PartnerProgramPage\n","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAdCAYAAACwuqxLAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAALLSURBVHgB5VZNTBNBFH6zsy2t1mbxKibrkR91D0aNeKDRgF5I1xgjeqlnY8CYeDEEvXLwJ8qZGjQmGtlylKgsepGY0CaaGDnYJVrQkNJVCgulu+NMW+vyY509cOJrptt9873vm3lvulmAbQkr90Rezj/v4eEK4BFMHPvrxpBDDB4+Ag+wFp61YQEP0p+Sf+eZep4c7h3k85pSEZfpuhK8eaL7huQGpVUfjiISNIrFohGs7zJYvFQWRLSyOCM648CJNQYFMdyDkN1HEAbsxwYVjmBfQIKSOJHLLAQ2FnTgxJoeWJYmY8dJEmJJZW9EPz4TkC0RUgCEgiUerT937zYQy410xghZgb+btKm4n159LGACIVdpLOUPnUuBVwOG1UVNc8hSlAlXiaXV4/VUg87ogm2PiOGzmzZ+01P0bWY+hVDdmhghy/TbWU+V6UzMwYJWWNLG2J+PHYiaBrIsK4nERGVKLA2EAnTsgJqnmpA2AaE+0RcYdJugTQxiUx/7U4DEJM2ikSJUav8PYdAdICNFEPRQSN3QE3GduEwvhg1YYdVeWFiG0K66BF1F1C1ICBl3wNEDIZGWUjWhBkSXOD2acMcwDBUjlL4/8AIamxpSJyPNsjth6svsw5YDl+PACXdRZTpGCvmnSnzojWxZhdTp1pZIJjOvuBNyc3kZPMBtINHVx3tvDXcnk2n92vVOFdWr5o+5X/cyM/NVEu1Id2W3ng0M1gPbcZTbd2OXgkHVYMEjTftuTk6mjT8kUUBMXAFOVA3o6o1o56FY6/GmqjgD24Xg96kvX30o3Tfs2Q1eDLjRe+Niz1u9nxQWh0lH+zHux7UnRCKHk9nZx+RCV3uONweDJ/gmpr9mz+9v3iu1dxyNj46+//m/DE8Gpml+z2ZXVsLh4KkTkcbpoUev38FWgB629MCDK1x98PxWUYH6+VPmIGwl6C6isC3wG2itDwoxDuJ5AAAAAElFTkSuQmCC\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACEAAAAhCAYAAABX5MJvAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAPUSURBVHgB3VddaBNZFD4zk2JTY51UFnebrs5iFlrsuvOw4u7LOu6+7yYi0mVZm8KCUPx9UPBBYsFffIgi9UWxtVoVBScFEcUH0woiCDU+2ESq9lZN1JqasU2Tmp+53ptMYqqpNZOQBz843DsnJ/d899x7zpkB0AFBECQi26BMYEEfBCIuQsQBZYBeEpI2dhEiNigReklQHCXiJtJKiPBQAnSTWGv7RRkeciGz2cRvav9TjkR6RagkyM67Q8Gz4fjUZUxk5ELvTnzLcwgnYrITdEBXJFrW/Qq1C2uyRyCsta0ES70JJpTonnjkcjgVlbcWsx4DRQKHu/ixqOGmmZ//UfhT2shmlmUYz6NHL4FjGf7t22h/dc28pQaO5ZMpVfnLfriDGCmQyTL0xSQSk5ckzHIuMp317DF+R3xzZGbI6Z4H36THQOAN+PxBON3TDwYDi0afjlMiXoSQd04Saecc5wScS8vPAGvjzGV9/gBcuXpPuX1n2L288bu+jr3/eI1GO4KC1l/g/DnZUYOlLrc7izafDZRA7QJj2m7w3hNvs7ikzWRa7823MRRyPq7EnDduDkk0fL6HQeJ4HH5Y8o3S8H0dmp5O8r+tsgpNjZY5CVBQuyyMxnliFcvRDLLn2+Qi4Trwv8QvXuhMvktJY6EJZSw06fljddPoMuti77If6z3Z8GEs89NTqo1jGJoBYn5k5kL75i44tK8F6qrjZsbcpuRIxMLnheBYxEF2pTAqRmoVN+O8ZkMsJgusqrr8/he2psb6T34PjUfcixYtIBcVi+RIBarrPjMAWMVHNrYf3Q7lQowc3YXeXVgrWjkZGT6JW9ZJtNNK1C4SkcXElCw7d2/AhZpeKb0Dmn7agQrpBwdH0PkTrfTyeWnLb27eLlbNt9tNtTVriO7vspKATLGZgcnJGJzqGfDQMyc1gMoRovbQCHR2XpPJXPq44ZWdxL+O4/DgwbPT+TqUQTdksoJeSEc5SUAinszdcnrx/P4AdegpZKvp12hEykaCf/V6Il14fA8DsP+gGy6e29L3uT/kRaVsJITHj1+kSXT3DADtpitWLEVQJEol8bNvKDh6rPM6yO67YCckMFa9xS5S8p1Az0LYav1WsdSbYdVKK1QnIxUnQVNN7DnTjxwbVtNnJb8cV4oEddgfjcbF1v9+py8yRUehJBJaSabStby5IeNcxfdBB0qJhKCNaJ9zPX1LIs1J9YAOlEIiW3o7aOelkwTLIagkyHHQr6+R7DPpnmHQCV2RIM4FyESi7YOWcYNOGEAfHEToi0kuHXEK+qBSoG1Yi8TXhffkvJx05xG89wAAAABJRU5ErkJggg==\"","export default \"data:image/png;base64,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\"","import React, { useState } from 'react'\r\nimport { useDispatch, useSelector } from 'react-redux'\r\nimport { ConfirmModal } from 'sputnik-ui'\r\nimport { Typography, Button } from 'sputnik-ui'\r\nimport { Loader } from 'sputnik-ui'\r\n\r\nimport {\r\n deleteManagementCompany,\r\n fetchManagementCompany,\r\n fetchManagementsCompanies,\r\n getCompaniesList,\r\n getManagementCompaniesPending,\r\n} from 'store/permissions'\r\n\r\nconst UKList = () => {\r\n const [confirmDeleteModal, setConfirmDeleteModal] = useState(false)\r\n const [currentCompany, setCurrentCompany] = useState(undefined)\r\n\r\n const dispatch = useDispatch()\r\n const companies = useSelector(getCompaniesList)\r\n const pending = useSelector(getManagementCompaniesPending)\r\n\r\n if (pending) {\r\n return \r\n }\r\n\r\n const handleFetchCompany = (uuid) => {\r\n return dispatch(fetchManagementCompany({ uuid }))\r\n }\r\n\r\n const handleCloseDeleteModal = () => {\r\n setCurrentCompany(undefined)\r\n setConfirmDeleteModal(false)\r\n }\r\n\r\n const handleDeleteCompany = async () => {\r\n await dispatch(deleteManagementCompany({ uuid: currentCompany }))\r\n await dispatch(fetchManagementsCompanies())\r\n handleCloseDeleteModal()\r\n await dispatch(fetchManagementCompany({ uuid: currentCompany }))\r\n }\r\n\r\n const handleOpenDeleteModal = (company_uuid) => {\r\n setCurrentCompany(company_uuid)\r\n setConfirmDeleteModal(true)\r\n }\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n\r\n \r\n {companies &&\r\n companies.map(({ company_uuid, email, name, addresses }) => {\r\n return (\r\n \r\n
\r\n Название: {name}\r\n Email: {email}\r\n {addresses?.length ? 'Есть доступы' : 'Нет доступов'}\r\n
\r\n\r\n
\r\n \r\n\r\n handleOpenDeleteModal(company_uuid)}\r\n disabled={!addresses?.length}\r\n >\r\n Аннулировать доступ\r\n \r\n
\r\n \r\n )\r\n })}\r\n \r\n \r\n )\r\n}\r\n\r\nexport default UKList\r\n","import { TableBody } from '@material-ui/core'\nimport { useCallback, useState } from 'react'\nimport { useDispatch, useSelector } from 'react-redux'\nimport { Typography, Button } from 'sputnik-ui'\nimport { Loader } from 'sputnik-ui'\nimport { Checkbox } from 'sputnik-ui'\nimport { TableCell } from 'sputnik-ui'\nimport { TableRow } from 'sputnik-ui'\nimport { Table } from 'sputnik-ui'\nimport { removeAddresses } from 'store/addresses'\nimport {\n fetchManagementCompany,\n fetchManagementsCompanies,\n getCurrentCompanyAddresses,\n getPermissionsCurrentCompany,\n} from 'store/permissions'\n\nexport const UKLinkedList = () => {\n const dispatch = useDispatch()\n const addresses = useSelector(getCurrentCompanyAddresses)\n const [isLoading, setLoading] = useState(false)\n const company = useSelector(getPermissionsCurrentCompany)\n const [selectedAddresses, setSelectedAddresses] = useState([])\n const handleSelectAddress = useCallback(\n (address) => {\n const isSelected = selectedAddresses?.some((el) => el.address_uuid === address.address_uuid)\n if (isSelected) {\n const updatedAddresses = selectedAddresses.filter(\n (el) => el.address_uuid !== address.address_uuid\n )\n setSelectedAddresses(updatedAddresses)\n } else {\n setSelectedAddresses([...selectedAddresses, address])\n }\n },\n [selectedAddresses]\n )\n const handleRemoveAddresses = async () => {\n setLoading(true)\n await dispatch(\n removeAddresses({\n uuid: company.company_uuid,\n address_uuids: selectedAddresses.map((selected) => selected.address_uuid),\n })\n )\n await dispatch(fetchManagementsCompanies())\n await dispatch(fetchManagementCompany({ uuid: company.company_uuid }))\n setSelectedAddresses([])\n setLoading(false)\n }\n\n return (\n
\n Прикрепленные адреса\n \n \n {addresses ? (\n addresses?.map((address) => {\n return (\n \n \n selected.address_uuid === address.address_uuid\n )}\n onChange={(e) => handleSelectAddress(address)}\n />\n {address.short_address}\n \n \n )\n })\n ) : (\n Тут ничего нет\n )}\n \n
\n \n
\n )\n}\n","import React, { useEffect, useState } from 'react'\r\nimport { useDispatch, useSelector } from 'react-redux'\r\n\r\nimport { Button, FullscreenDialogTitle, FullscreenExitButton } from 'sputnik-ui'\r\n\r\nimport { Dialog, DialogContent, Fade, Divider } from '@material-ui/core/'\r\n\r\nimport {\r\n fetchAppAbilities,\r\n fetchManagementCompany,\r\n fetchManagementsCompanies,\r\n updateAppAbilities,\r\n} from 'store/permissions/services'\r\n\r\nimport { getAddressesSelected } from 'store/addresses/selectors/getAddressesSelected'\r\nimport { permissionsActions } from 'store/permissions/slice'\r\nimport { addAddresses, addressesActions } from 'store/addresses'\r\nimport { AddressesList } from '../InviteUKModal/AddressesList'\r\nimport {\r\n getAppAbilitiesList,\r\n getCurrentCompanyPending,\r\n getPermissionsCurrentCompany,\r\n} from 'store/permissions'\r\nimport { PermissionsForm } from '../InviteUKModal/PermissionsForm'\r\nimport UKList from './UKList'\r\nimport { UKLinkedList } from './UKLinkedList'\r\nimport { Loader } from 'sputnik-ui'\r\nimport { Typography } from 'sputnik-ui'\r\n\r\nconst Transition = (props) => \r\n\r\nconst EditUKModal = (props) => {\r\n const { open, handleClose } = props\r\n const selectedAddresses = useSelector(getAddressesSelected)\r\n const companyPending = useSelector(getCurrentCompanyPending)\r\n const [isLoading, setLoading] = useState(false)\r\n const { clearAddresses, setSelectedAddresses } = addressesActions\r\n const { clearPermission, setPermissionsList } = permissionsActions\r\n const dispatch = useDispatch()\r\n const company = useSelector(getPermissionsCurrentCompany)\r\n const test = useSelector(({ permissions }) => permissions.test)\r\n const abi = useSelector(getAppAbilitiesList)\r\n\r\n useEffect(() => {\r\n dispatch(fetchAppAbilities())\r\n dispatch(fetchManagementsCompanies())\r\n return () => {\r\n dispatch(clearAddresses())\r\n dispatch(clearPermission())\r\n }\r\n }, [clearAddresses, clearPermission, dispatch])\r\n\r\n // useEffect(() => {\r\n // if (company?.addresses && Array.isArray(company.addresses)) {\r\n // dispatch(setSelectedAddresses(company.addresses))\r\n // }\r\n // return () => {\r\n // dispatch(setSelectedAddresses([]))\r\n // }\r\n // }, [company, dispatch, setSelectedAddresses])\r\n\r\n useEffect(() => {\r\n if (abi && abi?.length && test && abi[0]?.resources) {\r\n let nextPermissions = {}\r\n Object.entries(abi[0].resources).forEach(([key, val]) => {\r\n test.forEach((a) => {\r\n if (a.name === val.name) {\r\n a.privileges?.forEach((el) => {\r\n if (key in nextPermissions) {\r\n nextPermissions[key] = [...nextPermissions[key], el.action]\r\n } else {\r\n nextPermissions[key] = [el.action]\r\n }\r\n })\r\n }\r\n })\r\n })\r\n dispatch(setPermissionsList(nextPermissions))\r\n }\r\n }, [test, abi, dispatch, setPermissionsList])\r\n\r\n const handleConfirmPermissions = async () => {\r\n await dispatch(updateAppAbilities({ uuid: company.company_uuid }))\r\n await dispatch(fetchManagementCompany({ uuid: company.company_uuid }))\r\n }\r\n\r\n const handleAddAddresses = async () => {\r\n setLoading(true)\r\n await dispatch(\r\n addAddresses({\r\n uuid: company.company_uuid,\r\n address_uuids: selectedAddresses.map((selected) => selected.uuid),\r\n })\r\n )\r\n await dispatch(setSelectedAddresses([]))\r\n await dispatch(fetchManagementsCompanies())\r\n await dispatch(fetchManagementCompany({ uuid: company.company_uuid }))\r\n setLoading(false)\r\n }\r\n\r\n return (\r\n \r\n \r\n Просмотр и редактирование УК\r\n \r\n\r\n \r\n \r\n \r\n \r\n {companyPending && }\r\n {company && !companyPending && (\r\n <>\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n Список всех адресов\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n )}\r\n \r\n \r\n
\r\n )\r\n}\r\n\r\nexport default EditUKModal\r\n","var _g, _g2, _g3, _g4, _g5, _g6, _g7, _g8, _g9, _g10, _g11, _g12, _g13, _g14, _g15;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : 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; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgVisa(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"Layer_1\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n x: \"0px\",\n y: \"0px\",\n viewBox: \"0 0 291.801 291.801\",\n style: {\n enableBackground: \"new 0 0 291.801 291.801\"\n },\n xmlSpace: \"preserve\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, /*#__PURE__*/React.createElement(\"g\", null, /*#__PURE__*/React.createElement(\"path\", {\n style: {\n fill: \"#2394BC\"\n },\n d: \"M226.145,27.338L165.33,188.585l-6.656-31.802c-11.233-36.671-46.5-76.543-85.861-96.364 l55.7,204.044h65.684L291.801,27.34C291.801,27.338,226.145,27.338,226.145,27.338z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n style: {\n fill: \"#EFC75E\"\n },\n d: \"M136.965,51.473c-3.674-15.008-19.348-23.633-33.252-24.125H1.049L0,32.089 c80.08,19.512,137.494,70.881,159.294,127.392C159.294,159.48,136.965,51.473,136.965,51.473z\"\n })), _g || (_g = /*#__PURE__*/React.createElement(\"g\", null)), _g2 || (_g2 = /*#__PURE__*/React.createElement(\"g\", null)), _g3 || (_g3 = /*#__PURE__*/React.createElement(\"g\", null)), _g4 || (_g4 = /*#__PURE__*/React.createElement(\"g\", null)), _g5 || (_g5 = /*#__PURE__*/React.createElement(\"g\", null)), _g6 || (_g6 = /*#__PURE__*/React.createElement(\"g\", null)), _g7 || (_g7 = /*#__PURE__*/React.createElement(\"g\", null)), _g8 || (_g8 = /*#__PURE__*/React.createElement(\"g\", null)), _g9 || (_g9 = /*#__PURE__*/React.createElement(\"g\", null)), _g10 || (_g10 = /*#__PURE__*/React.createElement(\"g\", null)), _g11 || (_g11 = /*#__PURE__*/React.createElement(\"g\", null)), _g12 || (_g12 = /*#__PURE__*/React.createElement(\"g\", null)), _g13 || (_g13 = /*#__PURE__*/React.createElement(\"g\", null)), _g14 || (_g14 = /*#__PURE__*/React.createElement(\"g\", null)), _g15 || (_g15 = /*#__PURE__*/React.createElement(\"g\", null)));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgVisa);\nexport default __webpack_public_path__ + \"static/media/visa.2430660d.svg\";\nexport { ForwardRef as ReactComponent };","var _g, _g2, _g3, _g4, _g5, _g6, _g7, _g8, _g9, _g10, _g11, _g12, _g13, _g14, _g15;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : 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; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgMastercard(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"Layer_1\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n x: \"0px\",\n y: \"0px\",\n viewBox: \"0 0 291.791 291.791\",\n style: {\n enableBackground: \"new 0 0 291.791 291.791\"\n },\n xmlSpace: \"preserve\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, /*#__PURE__*/React.createElement(\"g\", null, /*#__PURE__*/React.createElement(\"path\", {\n style: {\n fill: \"#E2574C\"\n },\n d: \"M182.298,145.895c0,50.366-40.801,91.176-91.149,91.176S0,196.252,0,145.895 s40.811-91.176,91.149-91.176S182.298,95.538,182.298,145.895z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n style: {\n fill: \"#F4B459\"\n },\n d: \"M200.616,54.719c-20.442,0-39.261,6.811-54.469,18.181l0.073,0.009 c2.991,2.89,6.291,4.924,8.835,8.251l-18.965,0.301c-2.972,3-5.68,6.264-8.233,9.656H161.3c2.544,3.054,4.896,5.708,7.03,9.081 h-46.536c-1.705,2.936-3.282,5.954-4.659,9.09h56.493c1.477,3.127,2.799,5.489,3.921,8.799h-63.76 c-1.012,3.146-1.878,6.364-2.535,9.646h68.966c0.675,3.155,1.194,6.072,1.55,9.045h-71.884c-0.301,3-0.456,6.045-0.456,9.118 h72.859c0,3.228-0.228,6.218-0.556,9.118h-71.847c0.31,3.091,0.766,6.127,1.368,9.118h68.856c-0.711,2.954-1.532,5.926-2.562,9.008 h-63.969c0.966,3.118,2.143,6.145,3.428,9.099h56.621c-1.568,3.319-3.346,5.972-5.306,9.081h-46.691 c1.842,3.191,3.875,6.236,6.081,9.154l33.589,0.501c-2.863,3.437-6.537,5.507-9.884,8.516c0.182,0.146-5.352-0.018-16.248-0.191 c16.576,17.105,39.744,27.772,65.446,27.772c50.357,0,91.176-40.82,91.176-91.176S250.981,54.719,200.616,54.719z\"\n })), _g || (_g = /*#__PURE__*/React.createElement(\"g\", null)), _g2 || (_g2 = /*#__PURE__*/React.createElement(\"g\", null)), _g3 || (_g3 = /*#__PURE__*/React.createElement(\"g\", null)), _g4 || (_g4 = /*#__PURE__*/React.createElement(\"g\", null)), _g5 || (_g5 = /*#__PURE__*/React.createElement(\"g\", null)), _g6 || (_g6 = /*#__PURE__*/React.createElement(\"g\", null)), _g7 || (_g7 = /*#__PURE__*/React.createElement(\"g\", null)), _g8 || (_g8 = /*#__PURE__*/React.createElement(\"g\", null)), _g9 || (_g9 = /*#__PURE__*/React.createElement(\"g\", null)), _g10 || (_g10 = /*#__PURE__*/React.createElement(\"g\", null)), _g11 || (_g11 = /*#__PURE__*/React.createElement(\"g\", null)), _g12 || (_g12 = /*#__PURE__*/React.createElement(\"g\", null)), _g13 || (_g13 = /*#__PURE__*/React.createElement(\"g\", null)), _g14 || (_g14 = /*#__PURE__*/React.createElement(\"g\", null)), _g15 || (_g15 = /*#__PURE__*/React.createElement(\"g\", null)));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgMastercard);\nexport default __webpack_public_path__ + \"static/media/mastercard.368a7a10.svg\";\nexport { ForwardRef as ReactComponent };","import React, { useState } from 'react'\nimport styled from 'styled-components'\nimport { Wrapper, Button } from 'sputnik-ui'\nimport { Typography } from '@material-ui/core'\nimport { connect } from 'react-redux'\n\nimport { ReactComponent as Visa } from './visa.svg'\nimport { ReactComponent as MasterCard } from './mastercard.svg'\nimport { Payment } from '@material-ui/icons'\n\nimport {\n unbindPaymentMethod,\n fetchBillingAccount,\n} from 'store/billing/operations'\n\nconst icons = {\n Visa: Visa,\n MasterCard: MasterCard,\n card: Payment,\n}\n\nconst Div = styled.div`\n position: absolute;\n width: 100%;\n height: 100%;\n background: rgba(0, 0, 0, 0.85);\n display: flex;\n justify-content: center;\n align-items: center;\n left: 0;\n top: 0;\n border-radius: inherit;\n`\n\nconst CardContent = styled.div`\n display: flex;\n width: 100%;\n filter: ${p => (p.isBlurred ? 'blur(2px)' : 'none')};\n`\n\n//add blur\nconst CreditCard = ({\n card_type = 'card',\n expiry_month,\n expiry_year,\n last4,\n first6,\n dispatch,\n}) => {\n const Icon = icons[card_type]\n const digits = first6 + 'XXXXXX' + last4\n const formattedDigits = digits.match(/.{1,4}/g).join(' ')\n const [isHovered, setIsHovered] = useState(false)\n return (\n setIsHovered(true)}\n onMouseLeave={() => setIsHovered(false)}\n >\n \n \n {formattedDigits}\n \n {expiry_month} / {expiry_year}\n \n \n {isHovered && (\n
\n \n dispatch(unbindPaymentMethod()).then(() =>\n dispatch(fetchBillingAccount()),\n )\n }\n >\n Отвязать\n \n
\n )}\n \n )\n}\n\nexport default connect()(CreditCard)\n","import { createSlice, createAsyncThunk, createSelector } from '@reduxjs/toolkit'\nimport api from 'utils/api'\nimport { buildUrl, clamp } from 'utils/helpers'\nimport config from 'config'\nimport { showError, showMessage } from 'features/ui/uiSlice'\n\nexport const fetchCustomizations = createAsyncThunk(\n 'customizations/fetchCustomizations',\n async (args, { getState, rejectWithValue, dispatch }) => {\n try {\n const payload = await api.request(\n `/customizations`,\n undefined,\n `${config.redirectUri}/api/v2`\n )\n return payload\n } catch (error) {\n return rejectWithValue(await error)\n }\n }\n)\n\nexport const connectToCustomization = createAsyncThunk(\n 'customizations/connectCustomizations',\n async (\n { selected, selectedEntries },\n { getState, rejectWithValue, dispatch }\n ) => {\n try {\n const payload = await api.request(\n `/customizations/${selected}`,\n {\n method: 'PATCH',\n body: JSON.stringify({ entries_uuids: selectedEntries }),\n },\n `${config.redirectUri}/api/v2`\n )\n return Promise.resolve(payload)\n } catch (error) {\n const { message } = await error.json()\n dispatch(showError(message))\n return rejectWithValue()\n }\n }\n)\n\nexport const createCustomization = createAsyncThunk(\n 'customizations/create_template',\n async (args, { getState, rejectWithValue, dispatch }) => {\n try {\n const payload = await api.request(\n '/customizations/create_template',\n {\n method: 'POST',\n body: JSON.stringify(args),\n },\n `${config.redirectUri}/api/v2`\n )\n return payload\n } catch (error) {\n const { message } = await error.json()\n dispatch(showError(message))\n return rejectWithValue(error)\n }\n }\n)\n\nexport const editCustomization = createAsyncThunk(\n 'customizations/edit_template',\n async (args, { getState, rejectWithValue, dispatch }) => {\n const { title, credits, products, id } = args\n\n try {\n const creditsArr = credits.map(async (el) => {\n // Local credits id created by Math.random()\n if (Number(el.id) > 1) {\n return await api\n .request(\n `/customizations/credits/${el.id}`,\n {\n method: 'PATCH',\n body: JSON.stringify(el),\n },\n `${config.redirectUri}/api/v2`\n )\n .then((res) => res.id)\n } else if (Number(el.id) < 1) {\n return await api\n .request(\n `/customizations/credits`,\n {\n method: 'POST',\n body: JSON.stringify(el),\n },\n `${config.redirectUri}/api/v2`\n )\n .then((res) => res.id)\n }\n return\n })\n\n const productsArr = products.map(async (el) => {\n // Local credits id created by Math.random()\n if (Number(el.id) > 1) {\n return await api\n .request(\n `/customizations/products/${el.id}`,\n {\n method: 'PATCH',\n body: JSON.stringify(el),\n },\n `${config.redirectUri}/api/v2`\n )\n .then((res) => res.id)\n } else if (Number(el.id) < 1) {\n return await api\n .request(\n `/customizations/products`,\n {\n method: 'POST',\n body: JSON.stringify(el),\n },\n `${config.redirectUri}/api/v2`\n )\n .then((res) => res.id)\n }\n return\n })\n\n const creditsPromise = await Promise.all(creditsArr)\n const productsPromise = await Promise.all(productsArr)\n\n await Promise.all([creditsPromise, productsPromise]).then(\n ([creditsPromise, productsPromise]) => {\n const data = api.request(\n `/customizations/${id}`,\n {\n method: 'PATCH',\n body: JSON.stringify({\n title: title,\n credit_ids: creditsPromise,\n product_id: productsPromise, // must be only one item\n }),\n },\n `${config.redirectUri}/api/v2`\n )\n return data\n },\n (err) => console.log(err)\n )\n } catch (error) {\n const { message } = await error.json()\n dispatch(showError(message))\n return rejectWithValue()\n }\n }\n)\n\nexport const fetchCustomizationAddresses = createAsyncThunk(\n 'customizations/fetchCustomizationsAddresses',\n async (\n { page = 0, limit = 10, with_customization = null, search = '' },\n { getState, rejectWithValue, dispatch }\n ) => {\n try {\n const setParams = () => {\n let params = []\n if (Number.isInteger(page)) params.push(`page=${Number(page) + 1}`)\n if (limit) params.push(`limit=${limit}`)\n if (search) params.push(`search=${search}`)\n if (with_customization === false || with_customization === true)\n params.push(`with_customization=${with_customization}`)\n return params.join('&')\n }\n const payload = await api.request(\n buildUrl(`/customizations/addresses?${setParams()}`),\n undefined,\n `${config.redirectUri}/api/v2`\n )\n return payload\n } catch (error) {\n const { message } = await error.json()\n dispatch(showError(message))\n return rejectWithValue()\n }\n }\n)\n\nconst customizationsSlice = createSlice({\n name: 'customization',\n initialState: {\n editMode: false,\n isFetching: false,\n selectedEntries: [],\n pending: false,\n addresses: null,\n list: [],\n current: null,\n error: null,\n },\n reducers: {\n editSelectedCredit: (state, { payload }) => {\n const { id } = payload\n state.current = state.list.filter((el) => el.id === id)[0]\n },\n editCurrentCredit: (state, { payload }) => {\n const { id, name, value } = payload\n state.current.credits = state.current.credits.map((el) => {\n if (el.id === id) el[name] = value\n return el\n })\n },\n editCurrentProduct: (state, { payload }) => {\n const { id, name, value } = payload\n state.current.products = state.current.products.map((el) => {\n if (el.id === id) el[name] = value\n return el\n })\n },\n editCurrentTitle: (state, { payload }) => {\n state.current.title = payload.value\n },\n setErrCurrentCredit: (state, { payload }) => {\n const { id, err } = payload\n state.current.credits = state.current.credits.map((el) => {\n if (el.id === id) {\n Object.keys(err).length ? (el.err = err) : (el.err = null)\n }\n return el\n })\n },\n addCreditToCurrent: (state) => {\n const tinkoff = Math.random()\n state.current.credits = [\n ...state.current.credits,\n {\n id: tinkoff,\n err: { init: 'введите название' },\n },\n ]\n },\n addProductToCurrent: (state) => {\n const tinkoff = Math.random()\n state.current.products = [...state.current.products, { id: tinkoff }]\n },\n removeCurrentCredit: (state, { payload }) => {\n state.current.credits = [\n ...state.current.credits.filter((el) => el.id !== payload),\n ]\n },\n removeCurrentProduct: (state, { payload }) => {\n state.current.products = [\n ...state.current.products.filter((el) => el.id !== payload),\n ]\n },\n initCurrent: (state, { payload }) => {\n state.current = { ...payload }\n },\n clearCurrent: (state) => {\n state.current = null\n },\n customizationEditMode: (state, { payload }) => {\n state.editMode = payload.editMode\n },\n setCustomizationFetching: (state, { payload }) => {\n state.isFetching = payload.isFetching\n },\n editSelectedEntries: (state, { payload }) => {\n state.selectedEntries = payload.selectedEntries\n },\n clearSelectedEntries: (state) => {\n state.selectedEntries = []\n },\n },\n extraReducers: {\n [fetchCustomizations.pending]: (state) => {\n state.pending = true\n },\n [fetchCustomizations.fulfilled]: (state, { payload }) => {\n state.pending = false\n state.list = payload\n },\n [fetchCustomizations.rejected]: (state) => {\n state.pending = false\n },\n\n [editCustomization.pending]: (state) => {\n state.pending = true\n },\n [editCustomization.fulfilled]: (state, { payload }) => {\n state.pending = false\n state.list = payload\n },\n [editCustomization.rejected]: (state) => {\n state.pending = false\n },\n\n [fetchCustomizationAddresses.pending]: (state) => {\n state.pending = true\n },\n [fetchCustomizationAddresses.fulfilled]: (state, { payload }) => {\n state.isFetching = false\n state.pending = false\n state.addresses = payload\n },\n [fetchCustomizationAddresses.rejected]: (state) => {\n state.pending = false\n state.isFetching = false\n },\n },\n})\nexport const {\n addCreditToCurrent,\n removeCurrentCredit,\n editCurrentCredit,\n editCurrentProduct,\n setErrCurrentCredit,\n editSelectedCredit,\n clearCurrent,\n initCurrent,\n setCustomizationFetching,\n addProductToCurrent,\n removeCurrentProduct,\n editCurrentTitle,\n customizationEditMode,\n editSelectedEntries,\n clearSelectedEntries,\n} = customizationsSlice.actions\n\nexport default customizationsSlice.reducer\n","const pad = function (num, totalChars) {\n var pad = '0'\n num = num + ''\n while (num.length < totalChars) {\n num = pad + num\n }\n return num\n}\n\nconst changeColor = function (color, ratio, darker) {\n if (!color) return\n\n // Trim trailing/leading whitespace\n color = color.replace(/^\\s*|\\s*$/, '')\n\n // Expand three-digit hex\n color = color.replace(/^#?([a-f0-9])([a-f0-9])([a-f0-9])$/i, '#$1$1$2$2$3$3')\n\n // Calculate ratio\n var difference = Math.round(ratio * 256) * (darker ? -1 : 1),\n // Determine if input is RGB(A)\n rgb = color.match(\n new RegExp(\n '^rgba?\\\\(\\\\s*' +\n '(\\\\d|[1-9]\\\\d|1\\\\d{2}|2[0-4][0-9]|25[0-5])' +\n '\\\\s*,\\\\s*' +\n '(\\\\d|[1-9]\\\\d|1\\\\d{2}|2[0-4][0-9]|25[0-5])' +\n '\\\\s*,\\\\s*' +\n '(\\\\d|[1-9]\\\\d|1\\\\d{2}|2[0-4][0-9]|25[0-5])' +\n '(?:\\\\s*,\\\\s*' +\n '(0|1|0?\\\\.\\\\d+))?' +\n '\\\\s*\\\\)$',\n 'i'\n )\n ),\n alpha = !!rgb && rgb[4] != null ? rgb[4] : null,\n // Convert hex to decimal\n decimal = !!rgb\n ? [rgb[1], rgb[2], rgb[3]]\n : color\n .replace(\n /^#?([a-f0-9][a-f0-9])([a-f0-9][a-f0-9])([a-f0-9][a-f0-9])/i,\n function () {\n return (\n parseInt(arguments[1], 16) +\n ',' +\n parseInt(arguments[2], 16) +\n ',' +\n parseInt(arguments[3], 16)\n )\n }\n )\n .split(/,/),\n // eslint-disable-next-line\n returnValue\n\n // Return RGB(A)\n return !!rgb\n ? 'rgb' +\n (alpha !== null ? 'a' : '') +\n '(' +\n Math[darker ? 'max' : 'min'](\n parseInt(decimal[0], 10) + difference,\n darker ? 0 : 255\n ) +\n ', ' +\n Math[darker ? 'max' : 'min'](\n parseInt(decimal[1], 10) + difference,\n darker ? 0 : 255\n ) +\n ', ' +\n Math[darker ? 'max' : 'min'](\n parseInt(decimal[2], 10) + difference,\n darker ? 0 : 255\n ) +\n (alpha !== null ? ', ' + alpha : '') +\n ')'\n : // Return hex\n [\n '#',\n pad(\n Math[darker ? 'max' : 'min'](\n parseInt(decimal[0], 10) + difference,\n darker ? 0 : 255\n ).toString(16),\n 2\n ),\n pad(\n Math[darker ? 'max' : 'min'](\n parseInt(decimal[1], 10) + difference,\n darker ? 0 : 255\n ).toString(16),\n 2\n ),\n pad(\n Math[darker ? 'max' : 'min'](\n parseInt(decimal[2], 10) + difference,\n darker ? 0 : 255\n ).toString(16),\n 2\n ),\n ].join('')\n}\n\nexport const lighterColor = function (color, ratio) {\n return changeColor(color, ratio, false)\n}\nexport const darkerColor = function (color, ratio) {\n return changeColor(color, ratio, true)\n}\n\nfunction getYesterday(d) {\n return new Date(d.setDate(d.getDate() - 1))\n}\n\nexport const formatDate = (date, fullDate = false, noTime) => {\n const dateOptions = fullDate\n ? {\n month: 'long',\n day: 'numeric',\n hour: noTime ? undefined : 'numeric',\n minute: noTime ? undefined : 'numeric',\n year: 'numeric',\n }\n : {\n month: '2-digit',\n day: 'numeric',\n hour: noTime ? undefined : 'numeric',\n minute: noTime ? undefined : 'numeric',\n year: '2-digit',\n }\n const dateObj = new Date(date)\n const isToday = new Date().toDateString() === dateObj.toDateString()\n const isYesterday =\n getYesterday(new Date()).toDateString() === dateObj.toDateString()\n\n return isToday\n ? `сегодня, ${dateObj.toLocaleTimeString(undefined, {\n hour: 'numeric',\n minute: 'numeric',\n })}`\n : isYesterday\n ? `вчера, ${dateObj.toLocaleTimeString(undefined, {\n hour: 'numeric',\n minute: 'numeric',\n })}`\n : dateObj.toLocaleString(undefined, dateOptions)\n}\n\n// url\n\nexport const buildUrlQuery = (params) =>\n Object.entries(params)\n .filter(([key, val]) => val !== undefined)\n .map((pair) => pair.map(encodeURIComponent).join('='))\n .join('&')\n\nexport const buildUrl = (baseUrl, params = {}) => {\n const query = buildUrlQuery(params)\n return query ? baseUrl + '?' + query : baseUrl\n}\n\nexport function clamp(num, min, max) {\n return Math.min(Math.max(num, min), max)\n}\n\nexport const copyToClipboard = (str) => {\n const { clipboard } = window.navigator\n /*\n * fallback to older browsers (including Safari)\n * if clipboard API not supported\n */\n if (!clipboard || typeof clipboard.writeText !== `function`) {\n const textarea = document.createElement(`textarea`)\n textarea.value = str\n textarea.setAttribute(`readonly`, true)\n textarea.setAttribute(`contenteditable`, true)\n textarea.style.position = `absolute`\n textarea.style.left = `-9999px`\n document.body.appendChild(textarea)\n textarea.select()\n const range = document.createRange()\n const sel = window.getSelection()\n sel.removeAllRanges()\n sel.addRange(range)\n textarea.setSelectionRange(0, textarea.value.length)\n document.execCommand(`copy`)\n document.body.removeChild(textarea)\n\n return Promise.resolve(true)\n }\n\n return clipboard.writeText(str)\n}\n\nexport const isEmail = (email) => {\n const re =\n /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/\n return re.test(String(email).toLowerCase())\n}\n\nexport const isPhone = (value) => {\n const rex = new RegExp(\n /^(\\+7|7|8)[\\s-]?\\(?[489][0-9]{2}\\)?[\\s-]?[0-9]{3}[\\s-]?[0-9]{2}[\\s-]?[0-9]{2}$/\n )\n return rex.test(value)\n}\n","import * as actions from './actions'\nimport Api from 'utils/api'\n\nexport const createConversation = (msg) => async (dispatch: Function) => {\n dispatch(actions.createConversationRequest())\n try {\n await Api.request(`/intercom/conversations`, {\n method: 'POST',\n body: JSON.stringify({ body: msg }),\n })\n dispatch(actions.createConversationSuccess())\n return Promise.resolve()\n } catch (error) {\n console.log(error)\n // const { message } = await error.json()\n dispatch(actions.createConversationFailure())\n return Promise.reject()\n }\n}\n","import { createSlice, createAsyncThunk, createSelector } from '@reduxjs/toolkit'\nimport API from 'utils/api'\nimport { buildUrl, clamp } from 'utils/helpers'\nimport config from 'config'\nimport { showError, showMessage } from 'features/ui/uiSlice'\n\nexport const fetchRoadMapList = createAsyncThunk(\n 'roadmap/fetchList',\n async (arg, { rejectWithValue, dispatch }) => {\n try {\n const payload = await API.request(\n '/roadmap/events',\n undefined,\n `${config.redirectUri}/api/v2`\n )\n return payload\n } catch (err) {\n const { message } = await err.json()\n dispatch(showError(message))\n return rejectWithValue()\n }\n }\n)\n\nexport const fetchAnswer = createAsyncThunk(\n 'roadmap/fetchAnswer',\n async ({ id, status }, { rejectWithValue, dispatch }) => {\n try {\n await API.request(\n `/roadmap/events/${id}/poll_results`,\n { method: 'POST', body: JSON.stringify({ result: status }) },\n `${config.redirectUri}/api/v2`\n )\n } catch (err) {\n const { message } = await err.json()\n dispatch(showError(message))\n return rejectWithValue()\n }\n }\n)\n\nexport const RoadMapSlice = createSlice({\n name: 'roadmap',\n initialState: {\n list: [],\n pending: true,\n },\n reducers: {\n clearRoadMap: (state) => {\n state.list = []\n state.pending = false\n },\n vote: (state, { payload }) => {\n state.list = state.list.map((el) => {\n if (el.id === payload.id) el.poll_result = payload.status\n return el\n })\n },\n },\n extraReducers: {\n [fetchRoadMapList.pending]: (state) => {\n state.pending = true\n },\n [fetchRoadMapList.fulfilled]: (state, { payload }) => {\n state.pending = false\n state.list = payload\n },\n [fetchRoadMapList.rejected]: (state) => {\n state.pending = false\n },\n },\n})\n\nexport const { clearRoadMap, vote } = RoadMapSlice.actions\n\nexport default RoadMapSlice.reducer\n","import { Link } from 'react-router-dom'\nimport styled from 'styled-components'\n\nexport default styled(Link)`\n color: ${p => p.theme.palette.primary[500]};\n text-decoration: none;\n cursor: pointer;\n font-family: ${p => p.theme.fonts.primary};\n &:hover {\n /* color: ${p => p.theme.palette.primary[100]}; */\n opacity:0.6;\n }\n`\n","export const FETCH_SERVICES_REQUEST = 'services/FETCH_SERVICES_REQUEST'\nexport const FETCH_SERVICES_SUCCESS = 'services/FETCH_SERVICES_SUCCESS'\nexport const FETCH_SERVICES_FAILURE = 'services/FETCH_SERVICES_FAILURE'\n\nexport const FETCH_PACKAGES_REQUEST = 'services/FETCH_PACKAGES_REQUEST'\nexport const FETCH_PACKAGES_SUCCESS = 'services/FETCH_PACKAGES_SUCCESS'\nexport const FETCH_PACKAGES_FAILURE = 'services/FETCH_PACKAGES_FAILURE'\n\nexport const FETCH_SERVICE_REQUEST = 'services/FETCH_SERVICE_REQUEST'\nexport const FETCH_SERVICE_SUCCESS = 'services/FETCH_SERVICE_SUCCESS'\nexport const FETCH_SERVICE_FAILURE = 'services/FETCH_SERVICE_FAILURE'\n\nexport const FETCH_PACKAGE_REQUEST = 'services/FETCH_PACKAGE_REQUEST'\nexport const FETCH_PACKAGE_SUCCESS = 'services/FETCH_PACKAGE_SUCCESS'\nexport const FETCH_PACKAGE_FAILURE = 'services/FETCH_PACKAGE_FAILURE'\n\nexport const ACTIVATE_SERVICE_REQUEST = 'services/ACTIVATE_SERVICE_REQUEST'\nexport const ACTIVATE_SERVICE_SUCCESS = 'services/ACTIVATE_SERVICE_SUCCESS'\nexport const ACTIVATE_SERVICE_FAILURE = 'services/ACTIVATE_SERVICE_FAILURE'\n\nexport const DEACTIVATE_SERVICE_REQUEST = 'services/DEACTIVATE_SERVICE_REQUEST'\nexport const DEACTIVATE_SERVICE_SUCCESS = 'services/DEACTIVATE_SERVICE_SUCCESS'\nexport const DEACTIVATE_SERVICE_FAILURE = 'services/DEACTIVATE_SERVICE_FAILURE'\n\nexport const ACTIVATE_PACKAGE_REQUEST = 'services/ACTIVATE_PACKAGE_REQUEST'\nexport const ACTIVATE_PACKAGE_SUCCESS = 'services/ACTIVATE_PACKAGE_SUCCESS'\nexport const ACTIVATE_PACKAGE_FAILURE = 'services/ACTIVATE_PACKAGE_FAILURE'\n\nexport const DEACTIVATE_PACKAGE_REQUEST = 'services/DEACTIVATE_PACKAGE_REQUEST'\nexport const DEACTIVATE_PACKAGE_SUCCESS = 'services/DEACTIVATE_PACKAGE_SUCCESS'\nexport const DEACTIVATE_PACKAGE_FAILURE = 'services/DEACTIVATE_PACKAGE_FAILURE'\n\nexport const CLEAR_SERVICES = 'services/CLEAR_SERVICES'\n","//\nimport * as React from 'react'\nimport { Formik } from 'formik'\nimport * as Yup from 'yup'\nimport styled from 'styled-components'\nimport type { BillingAccount } from 'globalTypes'\n\nimport TextField from '@material-ui/core/TextField'\n\nconst Form = styled.form`\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n // margin: 0 auto;\n // max-width: 100%;\n // padding: 2.625rem;\n //\n // @media screen and (min-width: 768px) {\n // max-width: 35rem;\n // }\n`\n\nconst ActionsWrapper = styled.div`\n display: flex;\n justify-content: flex-end;\n align-items: center;\n margin-top: 1.625rem;\n width: 100%;\n\n button:first-child {\n margin-right: 0.625rem;\n }\n`\n\nconst InputWrapper = styled.div`\n display: flex;\n justify-content: space-between;\n width: 100%;\n\n & > *:not(:last-child) {\n margin-right: 0.625rem;\n }\n`\n\nconst validationSchema = () => {\n return Yup.object().shape({\n company_name: Yup.string()\n .typeError('введите название компании')\n .required('введите название компании'),\n tin: Yup.string().nullable().typeError('введите ИНН'),\n email: Yup.string()\n .typeError('введите e-mail')\n .email('неверный формат')\n .required('введите e-mail'),\n phone_number: Yup.string().nullable().typeError('введите телефонный номер'),\n postal_code: Yup.number().nullable().typeError('должен состоять из цифр'),\n actual_address: Yup.string().nullable().typeError('заполните физ. адрес'),\n legal_address: Yup.string().nullable().typeError('заполните юр. адрес'),\n bic: Yup.string().nullable().typeError('введите БИК'),\n settlement_account: Yup.number()\n .nullable()\n .typeError('должен состоять из цифр')\n .test('len', 'должен состоять из 20-25 цифр', (val) => {\n const num = val && val.toString()\n return (num && num.length >= 20 && num.length <= 25) || num === null\n }),\n kpp: Yup.string()\n .nullable()\n .typeError('введите КПП')\n .test(\n 'len',\n 'должен состоять из 9 знаков',\n (val) => (val && val.length === 9) || val === null\n ),\n bank: Yup.string().nullable().typeError('введите банк'),\n })\n}\n\nfunction AddBillingAccountForm({\n billingAccount,\n isDisabled,\n ...props\n}: Props) {\n return (\n {\n const {\n touched,\n errors,\n handleChange,\n handleBlur,\n handleSubmit,\n values,\n } = formikProps\n return (\n
\n \n\n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n {props.children(formikProps)}\n \n )\n }}\n />\n )\n}\n\nconst styles = {\n responsiveInput: {\n flex: 1,\n },\n inputWrapper: {\n display: 'flex',\n justifyContent: 'space-between',\n },\n}\n\ntype Props = {\n billingAccount: BillingAccount,\n handleSubmit: Function,\n style: ?Object,\n children: Function,\n isDisabled?: boolean,\n}\n\nexport default AddBillingAccountForm\n","//$FlowFixMe\nimport React, { useState, useEffect } from 'react'\nimport { useHistory, useParams } from 'react-router-dom'\nimport { useSelector } from 'react-redux'\nimport {\n FullscreenExitButton,\n FullscreenDialogTitle,\n Container,\n useInput,\n} from 'sputnik-ui'\nimport {\n Dialog,\n Fade,\n InputAdornment,\n Typography,\n TextField,\n Table,\n TableHead,\n TableBody,\n TableRow,\n TableCell,\n Tooltip,\n Switch,\n FormControlLabel,\n IconButton,\n} from '@material-ui/core'\n\nimport { Help, RemoveCircle, AddCircle, Edit, Launch } from '@material-ui/icons'\nimport { withTranslation } from 'react-i18next'\nimport styled, { css } from 'styled-components'\n\nconst Transition = (props) => \n\nconst styles = {\n row: {\n paddingLeft: 0,\n paddingRight: 0,\n },\n cell: {\n border: 'none',\n },\n valueCell: {\n border: 'none',\n width: '10%',\n maxWidth: 200,\n },\n\n field: {\n flex: 1,\n },\n\n helpIcon: {\n marginLeft: 'auto',\n position: 'absolute',\n right: 4,\n height: '1.2rem',\n cursor: 'help',\n },\n}\n\nconst Row = styled.div`\n display: flex;\n justify-content: space-evenly;\n margin: 1rem 0;\n & > * {\n flex: 1;\n\n &:not(:last-child) {\n margin-right: 2rem;\n }\n }\n\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n flex-direction: column;\n\n & > * {\n flex: 1;\n\n &:not(:last-child) {\n margin-right: 0;\n margin-bottom: 1rem;\n }\n }\n }\n`\n\nconst cellCss = css`\n border: none;\n font-size: 1.125rem;\n position: relative;\n`\n\nconst NameCell = styled(TableCell).attrs({\n align: 'left',\n})`\n && {\n ${cellCss};\n padding-left: 0;\n padding-right: 0;\n display: flex;\n align-items: center;\n height: inherit;\n }\n`\n\nconst ValueCell = styled(TableCell).attrs((p) => ({\n align: p.combined ? 'center' : 'center',\n}))`\n && {\n ${cellCss};\n width: ${(p) => (p.combined ? 30 : 15)}%;\n padding-right: 0 !important;\n padding-left: 0 !important;\n font-weight: ${(p) => (p.bold ? 600 : 400)};\n background: ${(p) =>\n p.combined\n ? p.theme.palette.grayscale[1]\n : p.month\n ? p.theme.palette.other.pink\n : p.theme.palette.other.green};\n\n & svg {\n color: ${(p) => p.theme.palette.text.secondary};\n }\n\n ${(p) =>\n p.hover &&\n css`\n cursor: pointer;\n\n &:hover {\n opacity: 0.4;\n }\n `}\n }\n`\n\nconst BuyProductModal = ({\n open = true,\n accountBalance,\n dispatch,\n isLoading,\n t,\n}: Props) => {\n const history = useHistory()\n const handleClose = () => history.push('/products')\n const { product: productIdx } = useParams()\n const product = useSelector(({ products }) => products.list[productIdx])\n\n // dynamic\n const { value: flatsQty, bind: bindFlatsQty } = useInput(20)\n const { value: flatPayment, bind: bindFlatPayment } = useInput(45)\n const { value: profitCoef, bind: bindProfitCoef } = useInput(0.95)\n const [archiveEnabled, setArchiveEnabled] = useState(true)\n\n // entry profit\n const [entryProfit, setEntryProfit] = useState(\n flatPayment * flatsQty * profitCoef,\n )\n\n // entry expenses\n const { value: maintenance, bind: bindMaintenance } = useInput(300)\n const { value: internet, bind: bindInternet } = useInput(100)\n const [sputnikBilling, setSputnikBilling] = useState(0)\n const [videoArchive, setVideoArchive] = useState(archiveEnabled ? 150 : 0)\n const [totalExpenses, setTotalExpenses] = useState(\n maintenance + internet + sputnikBilling + videoArchive,\n )\n\n // investments\n const [sputnikCount, setSputnikCount] = useState(1)\n const [sputnikPrice, setSputnikPrice] = useState(\n (product?.cost / 100) * sputnikCount,\n )\n const [preparationWork] = useState(4200)\n const [totalInvestments, setTotalInvestments] = useState(\n preparationWork + sputnikPrice,\n )\n\n // profits\n const [buyerMargin, setBuyerMargin] = useState(entryProfit - totalExpenses)\n const [buyerPayback, setBuyerPayback] = useState(\n totalInvestments / buyerMargin,\n )\n // const [revenueRoR, setRevenueRoR] = useState(\n // (buyerMargin / entryProfit) * 100,\n // )\n const [investmentsRoR, setInvestmentsRoR] = useState(\n ((buyerMargin * 12) / totalInvestments) * 100,\n )\n\n useEffect(() => {\n setEntryProfit(flatPayment * flatsQty * profitCoef)\n setVideoArchive(archiveEnabled ? 150 : 0)\n setTotalExpenses(\n Number(maintenance) + Number(internet) + sputnikBilling + videoArchive,\n )\n\n setSputnikPrice((product?.cost / 100) * sputnikCount)\n setTotalInvestments(sputnikPrice + preparationWork)\n\n setBuyerMargin(entryProfit - totalExpenses)\n setBuyerPayback(totalInvestments / buyerMargin)\n // setRevenueRoR((buyerMargin / entryProfit) * 100)\n setInvestmentsRoR(((buyerMargin * 12) / totalInvestments) * 100)\n }, [\n flatsQty,\n flatPayment,\n profitCoef,\n archiveEnabled,\n entryProfit,\n totalExpenses,\n totalInvestments,\n buyerMargin,\n maintenance,\n internet,\n sputnikBilling,\n videoArchive,\n sputnikCount,\n preparationWork,\n sputnikPrice,\n product,\n ])\n\n const handleSpuntikBillingClick = () => {\n let nextVal\n switch (sputnikBilling) {\n case 0:\n nextVal = 50\n break\n case 50:\n nextVal = 200\n break\n case 200:\n nextVal = 0\n break\n default:\n break\n }\n setSputnikBilling(nextVal)\n }\n const toggleArchive = () => setArchiveEnabled(!archiveEnabled)\n\n const [internetEditable, setInternetEditable] = useState(false)\n const [maintenanceEditable, setMaintenanceEditable] = useState(false)\n\n return (\n \n \n \n Помогает рассчитать стоимость модернизации одного подъезда и оценить\n сроки окупаемости.\n \n }\n >\n {`Unit-экономика для ${t(`products:devices.${product?.name}_subject`)}`}\n \n\n \n {/* \n Вводные данные\n */}\n {/* }\n label=\"Архивировать видео\"\n /> */}\n \n кв.,\n }}\n // eslint-disable-next-line\n inputProps={{\n type: 'number',\n step: 1,\n min: 0,\n max: 1000,\n }}\n placeholder=\"20\"\n />\n ₽,\n }}\n // eslint-disable-next-line\n inputProps={{\n type: 'number',\n step: 1,\n min: 0,\n max: 1000,\n }}\n placeholder=\"45\"\n />\n %,\n }}\n placeholder=\"0.5-1\"\n helperText=\"Процент жителей, оплачивающих услугу обслуживания домофона.\"\n // eslint-disable-next-line\n inputProps={{\n type: 'number',\n }}\n />\n \n\n \n Выручка на один подъезд составит\n \n \n \n \n \n в месяц\n в год\n \n \n \n \n абонентские платежи жителей за услугу домофон\n \n {t('common:format.number', { number: entryProfit })} ₽\n \n \n \n \n \n {t('common:format.number', {\n number: entryProfit * 12,\n })}{' '}\n ₽\n \n \n \n
\n\n \n Расходы на один подъезд\n \n \n \n \n \n себестоимость обслуживания\n setMaintenanceEditable(true)}\n >\n {maintenanceEditable ? (\n setMaintenanceEditable(false)}\n />\n ) : (\n <>\n {t('common:format.number', { number: maintenance })} ₽\n \n \n \n \n )}\n \n \n {t('common:format.number', { number: maintenance * 12 })} ₽\n \n \n \n \n \n интернет (1 Мбит/c)\n setInternetEditable(true)}\n hover={!internetEditable}\n >\n {internetEditable ? (\n setInternetEditable(false)}\n />\n ) : (\n <>\n {t('common:format.number', { number: internet })} ₽\n \n \n \n \n )}\n \n \n {t('common:format.number', { number: internet * 12 })} ₽\n \n \n \n \n \n \n лицензионные платежи Спутнику\n setSputnikBilling(0)}\n disableRipple\n color={sputnikBilling === 0 ? 'primary' : 'textSecondary'}\n style={{ padding: 8, marginLeft: 'auto' }}\n >\n 0\n \n setSputnikBilling(50)}\n disableRipple\n color={sputnikBilling === 50 ? 'primary' : 'textSecondary'}\n style={{ padding: 8, marginLeft: 8 }}\n >\n 50\n \n setSputnikBilling(200)}\n disableRipple\n color={sputnikBilling === 200 ? 'primary' : 'textSecondary'}\n style={{ padding: 8, marginLeft: 8 }}\n >\n 200\n \n \n \n {t('common:format.number', { number: sputnikBilling })} ₽\n \n \n {t('common:format.number', { number: sputnikBilling * 12 })} ₽\n \n \n \n \n \n архивирование видео (5 суток)\n \n }\n style={{ marginLeft: 'auto', marginRight: 0 }}\n />\n \n \n {t('common:format.number', { number: videoArchive })} ₽\n \n \n {t('common:format.number', { number: videoArchive * 12 })} ₽\n \n \n \n \n \n {t('common:format.number', { number: totalExpenses })} ₽\n \n \n {t('common:format.number', { number: totalExpenses * 12 })} ₽\n \n \n \n
\n\n \n Инвестиции\n \n \n \n \n \n \n домофон Спутник ({sputnikCount}{' '}\n {t('products:units.device', { count: sputnikCount })} на\n подъезд)\n setSputnikCount(sputnikCount - 1)}\n disabled={sputnikCount <= 1}\n >\n \n \n setSputnikCount(sputnikCount + 1)}>\n \n \n \n \n {t('common:format.number', { number: sputnikPrice })} ₽\n \n \n \n \n \n демонтаж старого домофона, монтаж Спутника и расходники\n \n \n {t('common:format.number', { number: preparationWork })} ₽\n \n \n \n \n \n \n \n \n \n \n {t('common:format.number', { number: totalInvestments })} ₽\n \n \n \n
\n\n \n Окупаемость\n \n \n \n \n \n в месяц\n в год\n \n \n \n \n операционная прибыль от подъезда\n \n {t('common:format.number', { number: buyerMargin })} ₽\n \n \n \n \n \n {t('common:format.number', { number: buyerMargin * 12 })} ₽\n \n \n \n
\n \n \n \n срок окупаемости\n \n {t('common:format.number', {\n number: Math.floor(buyerPayback),\n })}{' '}\n {t('time:units.month', {\n count: Math.floor(buyerPayback),\n })}\n \n \n \n \n \n {/* \n рентабельность выручки\n \n {t('common:format.number', { number: Math.round(revenueRoR) })}{' '}\n %\n \n \n \n \n */}\n\n \n рентабельность инвестиций\n \n {t('common:format.number', {\n number: Math.round(investmentsRoR),\n })}{' '}\n %\n \n \n \n \n \n \n
\n \n \n )\n}\n\ntype Props = {\n open: boolean,\n handleClose: Function,\n dispatch: Function,\n history: Object,\n isLoading: boolean,\n product: Object,\n}\n\nexport default withTranslation(['common', 'products', 'time'])(BuyProductModal)\n","//@flow\nexport const GET_USERS_REQUEST: string = 'users/GET_USERS_REQUEST'\nexport const GET_USERS_SUCCESS: string = 'users/GET_USERS_SUCCESS'\nexport const GET_USERS_ERROR: string = 'users/GET_USERS_ERROR'\n\nexport const GET_CURRENT_USER_REQUEST: string = 'users/GET_CURRENT_USER_REQUEST'\nexport const GET_CURRENT_USER_SUCCESS: string = 'users/GET_CURRENT_USER_SUCCESS'\nexport const GET_CURRENT_USER_ERROR: string = 'users/GET_CURRENT_USER_ERROR'\n\nexport const INVITE_USER_REQUEST: string = 'users/INVITE_USER_REQUEST'\nexport const INVITE_USER_SUCCESS: string = 'users/INVITE_USER_SUCCESS'\nexport const INVITE_USER_ERROR: string = 'users/INVITE_USER_ERROR'\n\nexport const GET_USER_PERMISSIONS_REQUEST: string =\n 'users/GET_USER_PERMISSIONS_REQUEST'\nexport const GET_USER_PERMISSIONS_SUCCESS: string =\n 'users/GET_USER_PERMISSIONS_SUCCESS'\nexport const GET_USER_PERMISSIONS_ERROR: string =\n 'users/GET_USER_PERMISSIONS_ERROR'\n\nexport const UPDATE_USER_PERMISSIONS_REQUEST: string =\n 'users/UPDATE_USER_PERMISSIONS_REQUEST'\nexport const UPDATE_USER_PERMISSIONS_SUCCESS: string =\n 'users/UPDATE_USER_PERMISSIONS_SUCCESS'\nexport const UPDATE_USER_PERMISSIONS_ERROR: string =\n 'users/UPDATE_USER_PERMISSIONS_ERROR'\n\nexport const BLOCK_USER_REQUEST: string = 'users/BLOCK_USER_REQUEST'\nexport const BLOCK_USER_SUCCESS: string = 'users/BLOCK_USER_SUCCESS'\nexport const BLOCK_USER_ERROR: string = 'users/BLOCK_USER_ERROR'\n\nexport const DELETE_USER_REQUEST: string = 'users/DELETE_USER_REQUEST'\nexport const DELETE_USER_SUCCESS: string = 'users/DELETE_USER_SUCCESS'\nexport const DELETE_USER_ERROR: string = 'users/DELETE_USER_ERROR'\n\nexport const UPDATE_USER_REQUEST: string = 'users/UPDATE_USER_REQUEST'\nexport const UPDATE_USER_SUCCESS: string = 'users/UPDATE_USER_SUCCESS'\nexport const UPDATE_USER_ERROR: string = 'users/UPDATE_USER_ERROR'\n\nexport const UPDATE_CURRENT_USER_REQUEST: string =\n 'users/UPDATE_CURRENT_USER_REQUEST'\nexport const UPDATE_CURRENT_USER_SUCCESS: string =\n 'users/UPDATE_CURRENT_USER_SUCCESS'\nexport const UPDATE_CURRENT_USER_ERROR: string =\n 'users/UPDATE_CURRENT_USER_ERROR'\n\nexport const CLEAR_USERS: string = 'users/CLEAR_USERS'\n\nexport type requestAction = {\n type: string,\n}\n\nexport type successAction = {\n type: string,\n payload?: any,\n}\n\nexport type errorAction = {\n type: string,\n payload: string,\n}\n\nexport type User = {\n id: number,\n email: string,\n}\n","// https://github.com/diegohaz/arc/wiki/Actions\nconst req = require.context('.', true, /\\.\\/.+\\/actions\\.js$/)\n\nreq.keys().forEach((key) => {\n const actions = req(key)\n\n Object.keys(actions).forEach((name) => {\n module.exports[name] = actions[name]\n })\n})\n","import { createSlice, createAsyncThunk, createSelector } from '@reduxjs/toolkit'\nimport API from 'utils/api'\nimport { buildUrl, clamp } from 'utils/helpers'\nimport config from 'config'\nimport { showError, showMessage } from 'features/ui/uiSlice'\n\nexport const fetchDevices = createAsyncThunk(\n 'devices/fetchList',\n async (params, { getState, rejectWithValue, dispatch }) => {\n const state = getState()\n const {\n search,\n is_installed,\n is_online,\n device_type,\n locality_uuid,\n service_partner_uuid,\n order = 'desc',\n page = 1,\n limit = 25,\n } = params\n\n try {\n const payload = await API.request(\n buildUrl('/devices', params),\n {\n dispatch,\n },\n `${config.redirectUri}/api/v2`\n )\n return payload\n } catch {\n return rejectWithValue()\n }\n }\n)\n\nexport const fetchDeviceServices = createAsyncThunk(\n 'devices/fetchServices',\n async ({ uuid }, { getState, rejectWithValue, dispatch }) => {\n try {\n const payload = await API.request(\n `/devices/${uuid}/services`,\n {\n dispatch,\n },\n `${config.redirectUri}/api/v2`\n )\n return payload\n } catch {\n return rejectWithValue()\n }\n }\n)\n\nexport const fetchDeviceServicesHistory = createAsyncThunk(\n 'devices/fetchServicesHistory',\n async (\n { uuid, page, limit = 20 },\n { getState, rejectWithValue, dispatch }\n ) => {\n try {\n const payload = await API.request(\n `/devices/${uuid}/service_histories?page=${page}`,\n {\n dispatch,\n },\n `${config.redirectUri}/api/v2`\n )\n return Promise.resolve({\n history: payload.service_history,\n totalPages: payload.meta.pages_count,\n page,\n })\n } catch {\n return rejectWithValue()\n }\n }\n)\n\nexport const activateService = createAsyncThunk(\n 'devices/activateService',\n async ({ service, devices }, { getState, rejectWithValue, dispatch }) => {\n try {\n const payload = await API.request(\n `/services/${service}/activate`,\n {\n dispatch,\n method: 'PATCH',\n body: JSON.stringify({\n devices,\n }),\n },\n `${config.redirectUri}/api/v2`\n )\n dispatch(showMessage('Вы успешно подключили услугу'))\n return Promise.resolve(payload)\n } catch (err) {\n const message = await parseServiceErrors(err)\n dispatch(showError(message))\n return rejectWithValue()\n }\n }\n)\n\nexport const deactivateService = createAsyncThunk(\n 'devices/deactivateService',\n async ({ service, devices }, { getState, rejectWithValue, dispatch }) => {\n try {\n const payload = await API.request(\n `/services/${service}/deactivate`,\n {\n dispatch,\n method: 'PATCH',\n body: JSON.stringify({\n devices,\n }),\n },\n `${config.redirectUri}/api/v2`\n )\n dispatch(showMessage('Вы успешно отключили услугу'))\n return Promise.resolve(payload)\n } catch (err) {\n const message = await parseServiceErrors(err)\n dispatch(showError(message))\n return rejectWithValue()\n }\n }\n)\n\nconst parseServiceErrors = async (err) => {\n if (err.status === 207) {\n const body = await err.json()\n return body.map((item) => {\n return item.error === true ? item.message : ''\n }).join(\" \")\n } else {\n const {message} = await err.json()\n return message\n }\n}\n\nexport const fetchDevice = createAsyncThunk(\n 'devices/fetchDevice',\n async (uuid, { getState, rejectWithValue, dispatch }) => {\n try {\n const payload = await API.request(\n `/devices/${uuid}`,\n {\n dispatch,\n },\n `${config.redirectUri}/api/v2`\n )\n return payload\n } catch {\n return rejectWithValue()\n }\n }\n)\n\n// reducers\nexport const devicesSlice = createSlice({\n name: 'devices',\n initialState: {\n current: null,\n list: null,\n pages: null,\n total: null,\n totalSum: null,\n page: 1,\n limit: 25,\n selected: {},\n search: '',\n currentServices: [],\n pending: false,\n services: [],\n servicesHistory: null,\n pendingServiceToggle: false,\n },\n reducers: {\n toggleSelect: (state, { payload: device }) => {\n if (device.uuid in state.selected) {\n delete state.selected[device.uuid]\n } else {\n state.selected[device.uuid] = device\n }\n },\n toggleAllDevices: (state) => {\n // add pages\n\n if (Object.keys(state.selected).length > 0) {\n state.selected = {}\n } else {\n state.selected = state.list.reduce(\n (acc, cur) => ({ ...acc, [cur.uuid]: cur }),\n state.selected\n )\n }\n },\n clearDevices: (state) => {\n state.list = null\n state.pages = null\n state.total = null\n state.totalSum = null\n // state.page = 1\n },\n incPage: (state) => {\n state.page = clamp(state.page + 1, 1, state.pages)\n },\n decPage: (state) => {\n state.page = clamp(state.page - 1, 1, state.pages)\n },\n setSearch: (state, { payload }) => {\n state.search = payload\n },\n clearCurrentDevice: (state) => {\n state.current = null\n },\n },\n extraReducers: {\n [activateService.pending]: (state) => {\n state.pendingServiceToggle = true\n },\n [activateService.fulfilled]: (state) => {\n state.pendingServiceToggle = false\n },\n [activateService.rejected]: (state) => {\n state.pendingServiceToggle = false\n },\n [deactivateService.pending]: (state) => {\n state.pendingServiceToggle = true\n },\n [deactivateService.fulfilled]: (state) => {\n state.pendingServiceToggle = false\n },\n [deactivateService.rejected]: (state) => {\n state.pendingServiceToggle = false\n },\n [fetchDevices.pending]: (state) => {\n state.pending = true\n },\n [fetchDevices.fulfilled]: (state, { payload }) => {\n state.pending = false\n state.list = payload.devices\n state.pages = payload.meta?.total_pages\n state.total = payload.meta?.total\n state.totalSum = payload.meta?.total_sum\n },\n [fetchDevices.rejected]: (state) => {\n state.pending = false\n },\n [fetchDevice.pending]: (state) => {\n state.current = null\n },\n [fetchDevice.fulfilled]: (state, { payload }) => {\n state.current = payload\n },\n [fetchDeviceServices.fulfilled]: (state, { payload }) => {\n state.currentServices = payload\n },\n [fetchDeviceServicesHistory.fulfilled]: (state, { payload }) => {\n state.historyPages = payload.totalPages\n\n if (payload.page > 1) {\n state.servicesHistory = [...state.servicesHistory, ...payload.history]\n } else {\n state.servicesHistory = payload.history\n }\n },\n },\n})\n\nexport const {\n toggleSelect,\n toggleAllDevices,\n clearDevices,\n incPage,\n decPage,\n setSearch,\n clearCurrentDevice,\n} = devicesSlice.actions\n\nconst selectSelectedDevices = (state) => state.devices.selected\nexport const selectNumSelected = createSelector(\n [selectSelectedDevices],\n (selected) => {\n return Object.keys(selected).length || 0\n }\n)\nexport const selectTotalServicesSum = createSelector(\n [selectSelectedDevices],\n (selected) =>\n Object.values(selected).reduce((acc, cur) => (acc += cur.services_sum), 0)\n)\n\nexport default devicesSlice.reducer\n","//@flow\n\nexport const FETCH_STATISTICS_REQUEST = 'billing/FETCH_STATISTICS_REQUEST'\nexport const FETCH_STATISTICS_SUCCESS = 'billing/FETCH_STATISTICS_SUCCESS'\nexport const FETCH_STATISTICS_FAILURE = 'billing/FETCH_STATISTICS_FAILURE'\n\nexport const FETCH_BILLING_ACCOUNT_REQUEST =\n 'billing/FETCH_BILLING_ACCOUNT_REQUEST'\nexport const FETCH_BILLING_ACCOUNT_SUCCESS =\n 'billing/FETCH_BILLING_ACCOUNT_SUCCESS'\nexport const FETCH_BILLING_ACCOUNT_FAILURE =\n 'billing/FETCH_BILLING_ACCOUNT_FAILURE'\n\nexport const FETCH_AVAILABLE_PERIOD_REQUEST =\n 'billing/FETCH_AVAILABLE_PERIOD_REQUEST'\nexport const FETCH_AVAILABLE_PERIOD_SUCCESS =\n 'billing/FETCH_AVAILABLE_PERIOD_SUCCESS'\nexport const FETCH_AVAILABLE_PERIOD_FAILURE =\n 'billing/FETCH_AVAILABLE_PERIOD_FAILURE'\n\nexport const FETCH_TRANSACTIONS_REQUEST = 'billing/FETCH_TRANSACTIONS_REQUEST'\nexport const FETCH_TRANSACTIONS_SUCCESS = 'billing/FETCH_TRANSACTIONS_SUCCESS'\nexport const FETCH_TRANSACTIONS_FAILURE = 'billing/FETCH_TRANSACTIONS_FAILURE'\n\nexport const MAKE_DEPOSIT_REQUEST = 'billing/MAKE_DEPOSIT_REQUEST'\nexport const MAKE_DEPOSIT_SUCCESS = 'billing/MAKE_DEPOSIT_SUCCESS'\nexport const MAKE_DEPOSIT_FAILURE = 'billing/MAKE_DEPOSIT_FAILURE'\n\nexport const CHANGE_BILLING_ACCOUNT_INFO_REQUEST =\n 'billing/CHANGE_BILLING_ACCOUNT_INFO_REQUEST'\nexport const CHANGE_BILLING_ACCOUNT_INFO_SUCCESS =\n 'billing/CHANGE_BILLING_ACCOUNT_INFO_SUCCESS'\nexport const CHANGE_BILLING_ACCOUNT_INFO_FAILURE =\n 'billing/CHANGE_BILLING_ACCOUNT_INFO_FAILURE'\n\nexport const UNBIND_PAYMENT_METHOD_REQUEST =\n 'billing/UNBIND_PAYMENT_METHOD_REQUEST'\nexport const UNBIND_PAYMENT_METHOD_SUCCESS =\n 'billing/UNBIND_PAYMENT_METHOD_SUCCESS'\nexport const UNBIND_PAYMENT_METHOD_FAILURE =\n 'billing/UNBIND_PAYMENT_METHOD_FAILURE'\n\nexport const CLEAR_TRANSACTIONS_DATA = 'billing/CLEAR_TRANSACTIONS_DATA'\n","var map = {\n\t\"./apps/operations.js\": 290,\n\t\"./auth/operations.js\": 134,\n\t\"./billing/operations.js\": 88,\n\t\"./companies/operations.js\": 581,\n\t\"./devicesOld/operations.js\": 582,\n\t\"./intercom/operations.js\": 402,\n\t\"./products/operations.js\": 367,\n\t\"./service_partnersOld/operations.js\": 245,\n\t\"./services/operations.js\": 100,\n\t\"./users/operations.js\": 116\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 580;","//@flow\nimport * as actions from './actions'\nimport Api from 'utils/api'\n\nexport const getCompanies: Function = (): Function => async (\n dispatch: Function\n): Promise => {\n dispatch(actions.getCompaniesRequest())\n try {\n const companies: Object[] = await Api.request('/companies')\n dispatch(actions.getCompaniesSuccess(companies))\n } catch (err) {\n dispatch(actions.getCompaniesError(err))\n }\n}\n","import Api from 'utils/api'\n\nimport * as actions from './actions'\n\nexport const fetchDevices = ({\n page,\n items,\n query,\n sortBy,\n orderBy,\n}) => async dispatch => {\n dispatch(actions.fetchDevicesRequest())\n try {\n const setParams = () => {\n let params = []\n\n if (page) params.push(`page=${page + 1}`)\n if (items) params.push(`items=${items}`)\n if (query) params.push(`search=${query}`)\n if (sortBy) params.push(`sort_by=${sortBy}`)\n if (orderBy) params.push(`order_by=${orderBy}`)\n\n return params.join('&')\n }\n\n const {\n intercoms: devices,\n meta: { total_pages: totalPages },\n } = await Api.request(`/partners/devices?${setParams()}`)\n\n dispatch(actions.fetchDevicesSuccess({ devices, totalPages }))\n } catch (error) {\n dispatch(actions.fetchDevicesFailure(error))\n }\n}\n\nexport const fetchDeviceInfo = uuid => async dispatch => {\n dispatch(actions.fetchDeviceInfoRequest())\n try {\n const device = await Api.request(`/partners/devices/${uuid}`)\n\n dispatch(actions.fetchDeviceInfoSuccess(device))\n } catch (error) {\n dispatch(\n actions.fetchDeviceInfoFailure(\n 'При получении информации об устройстве произошла ошибка',\n ),\n )\n }\n}\n","import * as types from './types'\n\nexport const fetchServicesRequest = () => ({\n type: types.FETCH_SERVICES_REQUEST,\n})\nexport const fetchServicesSuccess = services => ({\n type: types.FETCH_SERVICES_SUCCESS,\n payload: {\n services,\n },\n})\nexport const fetchServicesFailure = error => ({\n type: types.FETCH_SERVICES_FAILURE,\n payload: {\n error,\n },\n})\n\nexport const fetchPackagesRequest = () => ({\n type: types.FETCH_PACKAGES_REQUEST,\n})\nexport const fetchPackagesSuccess = packages => ({\n type: types.FETCH_PACKAGES_SUCCESS,\n payload: {\n packages,\n },\n})\nexport const fetchPackagesFailure = error => ({\n type: types.FETCH_PACKAGES_FAILURE,\n payload: {\n error,\n },\n})\n\nexport const fetchServiceRequest = () => ({\n type: types.FETCH_SERVICE_REQUEST,\n})\nexport const fetchServiceSuccess = service => ({\n type: types.FETCH_SERVICE_SUCCESS,\n payload: {\n service,\n },\n})\nexport const fetchServiceFailure = error => ({\n type: types.FETCH_SERVICE_FAILURE,\n payload: {\n error,\n },\n})\n\nexport const fetchPackageRequest = () => ({\n type: types.FETCH_PACKAGE_REQUEST,\n})\nexport const fetchPackageSuccess = currentPackage => ({\n type: types.FETCH_PACKAGE_SUCCESS,\n payload: {\n currentPackage,\n },\n})\nexport const fetchPackageFailure = error => ({\n type: types.FETCH_PACKAGE_FAILURE,\n payload: {\n error,\n },\n})\n\nexport const activateServiceRequest = () => ({\n type: types.ACTIVATE_SERVICE_REQUEST,\n})\nexport const activateServiceSuccess = msg => ({\n type: types.ACTIVATE_SERVICE_SUCCESS,\n payload: {\n msg,\n },\n})\nexport const activateServiceFailure = error => ({\n type: types.ACTIVATE_SERVICE_FAILURE,\n payload: {\n error,\n },\n})\n\nexport const deactivateServiceRequest = () => ({\n type: types.DEACTIVATE_SERVICE_REQUEST,\n})\nexport const deactivateServiceSuccess = msg => ({\n type: types.DEACTIVATE_SERVICE_SUCCESS,\n payload: {\n msg,\n },\n})\nexport const deactivateServiceFailure = error => ({\n type: types.DEACTIVATE_SERVICE_FAILURE,\n payload: {\n error,\n },\n})\n\nexport const activatePackageRequest = () => ({\n type: types.ACTIVATE_PACKAGE_REQUEST,\n})\nexport const activatePackageSuccess = msg => ({\n type: types.ACTIVATE_PACKAGE_SUCCESS,\n payload: {\n msg,\n },\n})\nexport const activatePackageFailure = error => ({\n type: types.ACTIVATE_PACKAGE_FAILURE,\n payload: {\n error,\n },\n})\n\nexport const deactivatePackageRequest = () => ({\n type: types.DEACTIVATE_PACKAGE_REQUEST,\n})\nexport const deactivatePackageSuccess = msg => ({\n type: types.DEACTIVATE_PACKAGE_SUCCESS,\n payload: {\n msg,\n },\n})\nexport const deactivatePackageFailure = error => ({\n type: types.DEACTIVATE_PACKAGE_FAILURE,\n payload: {\n error,\n },\n})\n\n\nexport const clearServices = () => ({\n type: types.CLEAR_SERVICES,\n payload: {},\n})\n","var map = {\n\t\"./apps/reducers.js\": 607,\n\t\"./auth/reducers.js\": 608,\n\t\"./billing/reducers.js\": 609,\n\t\"./companies/reducers.js\": 610,\n\t\"./devicesOld/reducers.js\": 611,\n\t\"./intercom/reducers.js\": 612,\n\t\"./products/reducers.js\": 859,\n\t\"./service_partnersOld/reducers.js\": 613,\n\t\"./services/reducers.js\": 614,\n\t\"./users/reducers.js\": 615\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 606;","//@flow\nimport * as types from './types'\n\ntype State = {\n clients: ?(Object[]),\n error: ?string,\n userApps: ?(Object[]),\n collection: ?(Object[]),\n error: ?string,\n}\n\ntype Action = {\n type: string,\n payload?: Object | string | Object[],\n err: string,\n}\n\nconst initialState: State = {\n clients: null,\n userApps: null,\n collection: null,\n error: null,\n}\n\nconst clients = (\n state: State = initialState,\n { type, payload, err }: Action\n) => {\n switch (type) {\n case types.GET_USER_APPS_SUCCESS:\n return { ...state, userApps: payload, error: null }\n case types.GET_USER_APPS_ERROR:\n return { ...state, error: err }\n case types.GET_APPS_SUCCESS:\n return { ...state, collection: payload, error: null }\n case types.GET_APPS_ERROR:\n return { ...state, error: err }\n case types.GET_APP_ABILITIES_ERROR:\n return { ...state, error: err }\n default:\n return state\n }\n}\n\nexport default clients\n","//@flow\n\nimport * as types from './types'\nimport type { Action, Company } from 'globalTypes'\n\ntype State = {\n +isLoggedIn: boolean,\n +error: ?string,\n +company: ?Company,\n +user: ?Object,\n}\n\nconst initialState: State = {\n isLoggedIn: false,\n error: null,\n msg: null,\n company: null,\n user: null,\n partnerProgramStatistic: null,\n}\n\nexport default function auth(state: State = initialState, { type, payload }: Action) {\n switch (type) {\n case types.SIGN_IN:\n return { ...state, isLoggedIn: true, error: null, user: payload.user }\n case types.SIGN_IN_ERROR:\n return { ...state, isLoggedIn: false }\n case types.LOG_OUT_SUCCESS:\n return { ...state, isLoggedIn: false, error: null, user: null }\n case types.FETCH_USER_COMPANY_SUCCESS:\n return { ...state, company: payload.company }\n\n case types.ACCEPT_LICENSE_SUCCESS: {\n return { ...state, msg: payload.msg }\n }\n case types.ACCEPT_LICENSE_FAILURE: {\n return { ...state, error: payload.error }\n }\n\n case types.FETCH_PARTNER_STATISTIC_SUCCESS:\n return {\n ...state,\n partnerProgramStatistic: {\n amountByMonths: payload.amount_by_months,\n medianActiveFlats: payload.median_active_flats,\n },\n }\n case 'ui/clear':\n return { ...state, msg: null, error: null }\n default:\n return state\n }\n}\n","//@flow\nimport * as types from './types'\nimport type { ITransaction, Action, Stat, BillingAccount } from 'globalTypes'\n\ntype State = {\n +list: ?(ITransaction[]),\n +statistics: ?(Stat[]),\n +period: ?(string[]),\n +error: ?string,\n +msg: ?string,\n +account: ?BillingAccount,\n +loading: boolean,\n}\n\nconst initialState: State = {\n account: null,\n list: null,\n period: null,\n statistics: null,\n error: null,\n msg: null,\n loading: false,\n}\n\nexport default function transactions(\n state: State = initialState,\n { type, payload }: Action\n) {\n switch (type) {\n case types.CLEAR_TRANSACTIONS_DATA:\n return { ...state, error: null, list: null, msg: null }\n case types.FETCH_STATISTICS_SUCCESS:\n return { ...state, statistics: payload.statistics }\n case types.FETCH_AVAILABLE_PERIOD_FAILURE:\n return { ...state, error: payload.error }\n case types.FETCH_TRANSACTIONS_SUCCESS:\n return { ...state, list: payload.transactions }\n // case types.FETCH_TRANSACTIONS_FAILURE:\n // return { ...state, error: payload.error }\n case types.FETCH_BILLING_ACCOUNT_SUCCESS:\n return { ...state, account: payload.account }\n case types.FETCH_BILLING_ACCOUNT_FAILURE:\n return { ...state, error: payload.error }\n case types.CHANGE_BILLING_ACCOUNT_INFO_SUCCESS:\n return { ...state, account: payload.account }\n case types.CHANGE_BILLING_ACCOUNT_INFO_FAILURE:\n return { ...state, error: payload.error }\n case types.FETCH_AVAILABLE_PERIOD_SUCCESS:\n return { ...state, period: payload.period }\n case types.UNBIND_PAYMENT_METHOD_SUCCESS:\n return { ...state, msg: payload.msg }\n case types.UNBIND_PAYMENT_METHOD_FAILURE:\n return { ...state, error: payload.error }\n case types.MAKE_DEPOSIT_REQUEST:\n return { ...state, loading: true, msg: null, error: null }\n case types.MAKE_DEPOSIT_SUCCESS:\n return { ...state, msg: payload.msg, loading: false }\n case types.MAKE_DEPOSIT_FAILURE:\n return { ...state, error: payload.error, loading: false }\n case 'ui/CLEAR_MESSAGES':\n return { ...state, msg: null, error: null }\n default:\n return state\n }\n}\n","// https://github.com/diegohaz/arc/wiki/Actions\nconst req = require.context('.', true, /\\.\\/.+\\/operations\\.js$/)\n\nreq.keys().forEach(key => {\n const actions = req(key)\n\n Object.keys(actions).forEach(name => {\n module.exports[name] = actions[name]\n })\n})\n","//@flow\nimport * as types from './types'\n\ntype State = {\n +collection: ?string,\n +error: ?string,\n}\n\ntype Action = {\n type: string,\n payload?: Object | string | Array,\n}\n\nconst initialState: State = {\n collection: null,\n error: null,\n}\n\nconst companies = (state: State = initialState, { type, payload }: Action) => {\n switch (type) {\n case types.GET_COMPANIES_SUCCESS:\n return { ...state, collection: payload, error: null }\n case types.GET_COMPANIES_ERROR:\n return { ...state, error: null }\n default:\n return state\n }\n}\n\nexport default companies\n","import * as types from './types'\n\nconst initialState = {\n list: null,\n totalPages: null,\n error: null,\n current: null,\n query: '',\n}\n\nexport default function devices(state = initialState, { type, payload }) {\n switch (type) {\n case types.FETCH_DEVICES_REQUEST:\n return { ...state, list: null }\n case types.FETCH_DEVICES_SUCCESS:\n return { ...state, list: payload.devices, totalPages: payload.totalPages }\n case types.FETCH_DEVICES_FAILURE:\n return { ...state, error: payload.error }\n case types.FETCH_DEVICE_INFO_SUCCESS:\n return { ...state, current: payload.device }\n case types.FETCH_DEVICE_INFO_FAILURE:\n return { ...state, error: payload.error }\n case types.CLEAR_CURRENT_DEVICE:\n return { ...state, current: null }\n case types.SET_DEVICE_SEARCH_QUERY:\n return { ...state, query: payload.query }\n default:\n return state\n }\n}\n","import * as types from './types'\n\nconst initialState = {}\n\nexport default function intercom(state = initialState, { type, payload }) {\n switch (type) {\n default:\n return state\n }\n}\n","import * as types from './types'\nimport { clear } from 'features/ui/uiSlice'\n\nconst initialState = {\n list: null,\n msg: null,\n error: null,\n}\n\nexport default function service_partners(\n state = initialState,\n { type, payload }\n) {\n switch (type) {\n case types.FETCH_PARTNERS_SUCCESS:\n return { ...state, list: payload.partners }\n case types.REASSIGN_DEVICES_SUCCESS:\n return { ...state, msg: payload.msg }\n case types.REASSIGN_DEVICES_FAILURE:\n return { ...state, error: payload.error }\n case types.INVITE_PARTNER_SUCCESS:\n return { ...state, msg: payload.msg }\n case types.INVITE_PARTNER_FAILURE:\n return { ...state, error: payload.error }\n case [clear.type]:\n return { ...state, msg: null, error: null }\n default:\n return state\n }\n}\n","//@flow\nimport * as types from './types'\nimport { clear } from 'features/ui/uiSlice'\n\ntype State = {\n +list: Object[],\n +packages: Object[],\n +currentService: ?Object,\n +currentPackage: ?Object,\n +error: ?string,\n +msg: ?string,\n +loading: boolean,\n}\n\ntype Action = {\n type: string,\n payload: Object,\n}\n\nconst initialState: State = {\n list: [],\n packages: [],\n currentService: null,\n currentPackage: null,\n loading: false,\n error: null,\n msg: null,\n}\n\nexport default function services(\n state: State = initialState,\n { type, payload }: Action\n) {\n switch (type) {\n case types.FETCH_SERVICES_SUCCESS:\n return { ...state, list: payload.services }\n // case types.FETCH_SERVICES_FAILURE:\n // return { ...state, error: payload.error }\n case types.ACTIVATE_SERVICE_REQUEST:\n return { ...state, loading: true }\n case types.ACTIVATE_SERVICE_SUCCESS:\n return { ...state, msg: payload.msg, loading: false }\n case types.ACTIVATE_SERVICE_FAILURE:\n return { ...state, error: payload.error, loading: false }\n case types.DEACTIVATE_SERVICE_REQUEST:\n return { ...state, loading: true }\n case types.DEACTIVATE_SERVICE_SUCCESS:\n return { ...state, msg: payload.msg, loading: false }\n case types.DEACTIVATE_SERVICE_FAILURE:\n return { ...state, error: payload.error, loading: false }\n case types.ACTIVATE_PACKAGE_REQUEST:\n return { ...state, loading: true }\n case types.ACTIVATE_PACKAGE_SUCCESS:\n return { ...state, msg: payload.msg, loading: false }\n case types.ACTIVATE_PACKAGE_FAILURE:\n return { ...state, error: payload.error, loading: false }\n case types.DEACTIVATE_PACKAGE_REQUEST:\n return { ...state, loading: true }\n case types.DEACTIVATE_PACKAGE_SUCCESS:\n return { ...state, msg: payload.msg, loading: false }\n case types.DEACTIVATE_PACKAGE_FAILURE:\n return { ...state, error: payload.error, loading: false }\n case types.FETCH_PACKAGES_SUCCESS:\n return { ...state, packages: payload.packages }\n // case types.FETCH_PACKAGES_FAILURE:\n // return { ...state, error: payload.error }\n case types.FETCH_PACKAGE_SUCCESS:\n return { ...state, currentPackage: payload.currentPackage }\n // case types.FETCH_PACKAGE_FAILURE:\n // return { ...state, error: payload.error }\n case types.FETCH_SERVICE_SUCCESS:\n return { ...state, currentService: payload.service }\n // case types.FETCH_SERVICE_FAILURE:\n // return { ...state, error: payload.error }\n case types.CLEAR_SERVICES:\n return { ...state, currentService: null, currentPackage: null }\n case [clear.type]:\n return { ...state, msg: null, error: null }\n default:\n return state\n }\n}\n","//@flow\nimport * as types from './types'\n\ntype State = {\n list: ?Array,\n currentUser: ?Object,\n error: ?string,\n msg: ?string,\n}\n\ntype Action = {\n +type: string,\n +payload: any,\n}\n\nconst initialState: State = {\n currentUser: null,\n list: null,\n error: null,\n msg: null,\n}\n\nconst users = (state: State = initialState, { type, payload }: Action) => {\n switch (type) {\n case types.GET_CURRENT_USER_SUCCESS:\n return { ...state, currentUser: payload, error: null }\n case types.GET_CURRENT_USER_ERROR:\n return { ...state, error: payload }\n case types.GET_USERS_SUCCESS:\n return { ...state, list: payload, error: null }\n case types.GET_USERS_ERROR:\n return { ...state, error: payload }\n case types.DELETE_USER_SUCCESS:\n return { ...state, error: null }\n case types.DELETE_USER_ERROR:\n return { ...state, error: payload }\n case types.INVITE_USER_ERROR:\n return { ...state, error: payload }\n case types.UPDATE_CURRENT_USER_SUCCESS:\n return { ...state, msg: payload.msg, error: null }\n case types.UPDATE_CURRENT_USER_ERROR:\n return { ...state, error: payload }\n case types.CLEAR_USERS:\n return { ...state, list: null }\n default:\n return state\n }\n}\n\nexport default users\n","var map = {\n\t\"./atoms/AccessError/index.js\": 369,\n\t\"./atoms/CreditCard/index.js\": 379,\n\t\"./atoms/DepositOption/index.js\": 621,\n\t\"./atoms/Fade/index.js\": 622,\n\t\"./atoms/Headline/index.js\": 623,\n\t\"./atoms/Link/index.js\": 407,\n\t\"./atoms/Option/index.js\": 624,\n\t\"./atoms/Options/index.js\": 625,\n\t\"./atoms/Search/index.js\": 627,\n\t\"./atoms/ServiceActions/index.js\": 628,\n\t\"./atoms/Transaction/index.js\": 860,\n\t\"./atoms/TransactionStatus/index.js\": 629,\n\t\"./atoms/UpdateLabel/index.js\": 630,\n\t\"./molecules/AccountBalance/index.js\": 631,\n\t\"./molecules/BillingStats/index.js\": 632,\n\t\"./molecules/BuyProductForm/index.js\": 370,\n\t\"./molecules/DepositForm/index.js\": 371,\n\t\"./molecules/GlobalService/index.js\": 810,\n\t\"./molecules/Map/index.js\": 863,\n\t\"./molecules/ProductCard/index.js\": 826,\n\t\"./molecules/Service/index.js\": 827,\n\t\"./molecules/SpringCard/index.js\": 372,\n\t\"./molecules/SuccessfullPaymentForm/index.js\": 247,\n\t\"./molecules/TransactionsTable/index.js\": 828,\n\t\"./organisms/AcceptLicenseModal/index.js\": 373,\n\t\"./organisms/AddUserModal/index.js\": 829,\n\t\"./organisms/BillingAccountForm/index.js\": 464,\n\t\"./organisms/BillingAccountInfo/index.js\": 374,\n\t\"./organisms/BuyProductModal/index.js\": 830,\n\t\"./organisms/DepositModal/index.js\": 831,\n\t\"./organisms/DeviceDetails/index.js\": 856,\n\t\"./organisms/DevicesTable/index.js\": 855,\n\t\"./organisms/EditUKModal/index.js\": 378,\n\t\"./organisms/InvitePartnerModal/index.js\": 375,\n\t\"./organisms/InviteUKModal/index.js\": 376,\n\t\"./organisms/SputnikCalculator/index.js\": 833,\n\t\"./organisms/SubscriptionPlan/index.js\": 834,\n\t\"./organisms/TransactionHistory/index.js\": 857,\n\t\"./organisms/UnitEconomyModal/index.js\": 465,\n\t\"./organisms/UpdateModal/index.js\": 835,\n\t\"./organisms/UsersTable/index.js\": 861,\n\t\"./pages/AccountPage/index.js\": 862,\n\t\"./pages/AccountsPage/index.js\": 836,\n\t\"./pages/AnalyticsPage/index.js\": 858,\n\t\"./pages/BillingPage/index.js\": 837,\n\t\"./pages/BuyPage/index.js\": 839,\n\t\"./pages/CustomizationPage/index.js\": 852,\n\t\"./pages/DevicesPage/index.js\": 853,\n\t\"./pages/PartnerProgramPage/index.js\": 377,\n\t\"./pages/ProductPage/index.js\": 864,\n\t\"./pages/ServicePage/index.js\": 841,\n\t\"./pages/ServicesPage/index.js\": 842,\n\t\"./pages/SubscriptionPage/index.js\": 843,\n\t\"./templates/AccountsTemplate/index.js\": 844,\n\t\"./templates/AppTemplate/index.js\": 845,\n\t\"./templates/BillingTemplate/index.js\": 846,\n\t\"./templates/BuyPageTemplate/index.js\": 847,\n\t\"./templates/DevicesTemplate/index.js\": 848,\n\t\"./templates/ServicePageTemplate/index.js\": 849,\n\t\"./templates/ServicesTemplate/index.js\": 850\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 619;","//@flow\nimport * as types from './types'\n\nexport const getUsersRequest = (): types.requestAction => ({\n type: types.GET_USERS_REQUEST,\n})\n\nexport const getUsersSuccess = (users: Array): types.successAction => ({\n type: types.GET_USERS_SUCCESS,\n payload: users,\n})\n\nexport const getUsersError = (err: string): types.errorAction => ({\n type: types.GET_USERS_ERROR,\n payload: err,\n})\n\nexport const getCurrentUserRequest = (): types.requestAction => ({\n type: types.GET_CURRENT_USER_REQUEST,\n})\n\nexport const getCurrentUserSuccess = (\n user: types.User,\n): types.successAction => ({\n type: types.GET_CURRENT_USER_SUCCESS,\n payload: user,\n})\n\nexport const getCurrentUserError = (err: string): types.errorAction => ({\n type: types.GET_CURRENT_USER_ERROR,\n payload: err,\n})\n\nexport const inviteUserRequest = (): types.requestAction => ({\n type: types.INVITE_USER_REQUEST,\n})\n\nexport const inviteUserSuccess = (): types.successAction => ({\n type: types.INVITE_USER_SUCCESS,\n})\n\nexport const inviteUserError = (err: string): types.errorAction => ({\n type: types.INVITE_USER_ERROR,\n payload: err,\n})\n\nexport const getUserPermissionsRequest = (): types.requestAction => ({\n type: types.GET_USER_PERMISSIONS_REQUEST,\n})\n\nexport const getUserPermissionsSuccess = (\n permissions: Array,\n): types.successAction => ({\n type: types.GET_USER_PERMISSIONS_SUCCESS,\n payload: permissions,\n})\n\nexport const getUserPermissionsError = (err: string): types.errorAction => ({\n type: types.GET_USER_PERMISSIONS_ERROR,\n payload: err,\n})\n\nexport const updateUserPermissionsRequest = (): types.requestAction => ({\n type: types.UPDATE_USER_PERMISSIONS_REQUEST,\n})\n\nexport const updateUserPermissionsSuccess = (\n permissions: Array,\n): types.successAction => ({\n type: types.UPDATE_USER_PERMISSIONS_SUCCESS,\n payload: permissions,\n})\n\nexport const updateUserPermissionsError = (err: string): types.errorAction => ({\n type: types.UPDATE_USER_PERMISSIONS_ERROR,\n payload: err,\n})\n\nexport const blockUserRequest = (): types.requestAction => ({\n type: types.BLOCK_USER_REQUEST,\n})\n\nexport const blockUserSuccess = (response: any): types.successAction => ({\n type: types.BLOCK_USER_SUCCESS,\n payload: response,\n})\n\nexport const blockUserError = (err: string): types.errorAction => ({\n type: types.BLOCK_USER_ERROR,\n payload: err,\n})\n\nexport const deleteUserRequest = (): types.requestAction => ({\n type: types.DELETE_USER_REQUEST,\n})\n\nexport const deleteUserSuccess = (response: any): types.successAction => ({\n type: types.DELETE_USER_SUCCESS,\n payload: response,\n})\n\nexport const deleteUserError = (err: string): types.errorAction => ({\n type: types.DELETE_USER_ERROR,\n payload: err,\n})\n\nexport const updateUserRequest = (): types.requestAction => ({\n type: types.UPDATE_USER_REQUEST,\n})\n\nexport const updateUserSuccess = (response: any): types.successAction => ({\n type: types.UPDATE_USER_SUCCESS,\n payload: response,\n})\n\nexport const updateUserError = (err: string): types.errorAction => ({\n type: types.UPDATE_USER_ERROR,\n payload: err,\n})\n\nexport const updateCurrentUserRequest = (): types.requestAction => ({\n type: types.UPDATE_USER_REQUEST,\n})\n\nexport const updateCurrentUserSuccess = (msg: string): types.successAction => ({\n type: types.UPDATE_USER_SUCCESS,\n payload: { msg },\n})\n\nexport const updateCurrentUserError = (err: string): types.errorAction => ({\n type: types.UPDATE_USER_ERROR,\n payload: err,\n})\n\nexport const clearUsers = () => ({\n type: types.CLEAR_USERS,\n})\n","//@flow\nimport * as React from 'react'\nimport styled, { css } from 'styled-components'\nimport { Typography } from '@material-ui/core'\n\nconst ifSelected = css`\n /* transform: scale(1.04); */\n /* box-shadow: 0 2px 30px 0px ${p => p.theme.palette.secondary[100]}; */\n color: ${p => p.theme.palette.primary.contrastText};\n background: ${p => p.theme.palette.primary[500]};\n transform:none;\n &:hover {\n /* box-shadow: 0 0 20px rgba(0, 0, 0, 0.07); */\n cursor: default;\n transform: none;\n }\n`\n\nconst DepositOptionWrapper = styled.div`\n padding: 0.625rem;\n border-radius: 8px;\n /* box-shadow: 0 0 8px rgba(0, 0, 0, 0.07); */\n box-shadow: ${p => p.theme.shadows.main};\n display: flex;\n align-items: center;\n transition: 200ms all cubic-bezier(0.39, -0.79, 0.41, 2.85);\n\n & > svg {\n margin-right: 8px;\n }\n\n &:hover {\n /* box-shadow: 0 0 20px rgba(0, 0, 0, 0.07); */\n cursor: pointer;\n transform: translateX(0.325rem);\n }\n\n ${p => p.selected && ifSelected};\n`\n\nconst DepositOption = ({\n children,\n icon,\n selected,\n onClick,\n ...props\n}: Props) => {\n return (\n \n {icon}\n {children}\n \n )\n}\n\ntype Props = {\n children: any,\n icon: React.Node,\n selected: boolean,\n onClick: Function,\n}\n\nexport default DepositOption\n","import React from 'react'\nimport { Transition } from 'react-transition-group'\n\nconst duration = 300\n\nconst defaultStyle = {\n transition: `opacity ${duration}ms ease-in-out`,\n opacity: 0,\n width: '100%',\n height: '100%',\n display: 'flex',\n}\n\nconst transitionStyles = {\n entering: { opacity: 1 },\n entered: { opacity: 1 },\n exiting: { opacity: 0 },\n exited: { opacity: 0 },\n}\n\nconst Fade = ({ in: inProp, children }) => (\n \n {state => (\n \n {children}\n \n )}\n \n)\n\nexport default Fade\n","import React from 'react'\nimport styled, { css } from 'styled-components'\nimport Typography from '@material-ui/core/Typography'\n\nconst Wrapper = styled.div`\n display: inline-flex;\n`\n\nconst TextWrapper = styled.a`\n padding-left: 0.325rem;\n padding-right: 0.325rem;\n display: inline-flex;\n position: relative;\n text-decoration: none;\n color: ${({ theme }) => theme.palette.primary['500']};\n\n ${p =>\n p.variant === 'skewed' &&\n css`\n background: ${({ theme }) => theme.palette.secondary['100']};\n color: ${({ theme }) => theme.palette.secondary['700']};\n\n font-weight: 500;\n padding-left: 0.325rem;\n padding-right: 0.325rem;\n `};\n\n ${p =>\n p.variant === 'arrow' &&\n css`\n background: ${p =>\n (p.color && p.theme.palette[p.color]['500']) ||\n p.theme.palette.primary['500']};\n color: ${p => p.textColor};\n\n &::after {\n content: ' ';\n width: 0;\n height: 0;\n border-top: 1rem solid transparent;\n border-bottom: 1rem solid transparent;\n position: absolute;\n right: -1rem;\n border-left: 1rem solid\n ${p =>\n (p.color && p.theme.palette[p.color]['500']) ||\n p.theme.palette.primary['500']};\n }\n `};\n\n ${p =>\n p.href &&\n css`\n cursor:pointer;\n &:hover {\n background: ${p =>\n (p.color && p.theme.palette[p.color]['A700']) ||\n p.theme.palette.primary['A700']};\n /* color: ${p => p.textColor}; */\n \n &::after {\n border-left-color: ${p =>\n (p.color && p.theme.palette[p.color]['A700']) ||\n p.theme.palette.primary['A700']};\n }\n }\n `};\n`\n\nconst Headline = ({\n children,\n variant = 'arrow',\n fontSize,\n color,\n textColor = 'white',\n href,\n ...props\n}) => (\n \n \n \n {children}\n \n \n \n)\n\nexport default Headline\n","import styled, { css } from 'styled-components'\n\nconst Option = styled.div`\n display: inline-flex;\n padding: 0.325rem;\n transition: all 300ms cubic-bezier(0.38, -0.53, 0.39, 1.96);\n cursor: pointer;\n border: 1px dashed rgba(0, 0, 0, 0.54);\n margin: 0.325rem;\n border-radius: 3px;\n color: rgba(0, 0, 0, 0.54);\n font-family: ${p => p.theme.fonts.primary};\n\n &:hover {\n transform: translateY(-0.325rem);\n box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.1);\n border-color: black;\n color: black;\n }\n\n ${p =>\n p.selected &&\n css`\n border-style: solid;\n border-color: black;\n color: black;\n cursor: default;\n\n &:hover {\n transform: none;\n box-shadow: none;\n }\n `};\n`\n\nexport default Option\n","import React from 'react'\nimport styled from 'styled-components'\nimport Skeleton from 'react-loading-skeleton'\nimport { Option } from 'components'\n\nconst Div = styled.div`\n display: inline-flex;\n alignself: flex-start;\n width: auto;\n`\n\nconst Options = ({ options, value, onChange, ...props }) => (\n
\n {options ? (\n options.map(y => (\n \n ))\n ) : (\n \n )}\n
\n)\n\nexport default Options\n","import React from 'react'\nimport { InputBase, InputAdornment } from '@material-ui/core'\nimport { Search } from '@material-ui/icons'\nimport styled from 'styled-components'\n\nconst SearchField = styled(InputBase).attrs(p => ({\n type: 'search',\n inputProps: {\n style: { padding: 0 },\n },\n startAdornment: (\n \n \n \n ),\n}))`\n && {\n padding: ${p => p.theme.sizes.scale[6]};\n background: ${p => p.theme.palette.grayscale[2]};\n border-radius: 8px;\n transition-property: background-color, border-color;\n transition-duration: 0.25s;\n transition-timing-function: ease;\n\n &:hover,\n &:focus,\n &:active {\n background: ${p => p.theme.palette.grayscale[1]};\n }\n\n &:focus-within {\n background: ${p => p.theme.palette.secondary['50']};\n }\n }\n`\n\n// const Search = ({ ...props }) => (\n// \n// )\n\nexport default SearchField\n","//@flow\n//$FlowFixMe\nimport React, { useState, useEffect } from 'react'\nimport { Button } from 'sputnik-ui'\nimport { connect } from 'react-redux'\nimport { withRouter } from 'react-router-dom'\nimport type { Match } from 'react-router-dom'\n\nimport {\n activateService,\n deactivateService,\n fetchServices,\n fetchDeviceInfo,\n checkAuth,\n} from 'store/operations'\n\ntype Props = {\n isConnected: boolean,\n appId: string,\n dispatch: Function,\n style: ?Object,\n match: Match,\n loading: boolean,\n active: Array,\n inactive: Array,\n}\n\nconst mapStateToProps = ({ services: { loading, active, inactive } }) => ({\n loading,\n active,\n inactive,\n})\n\nexport default withRouter(\n connect(mapStateToProps)(\n ({\n isConnected,\n appId,\n loading,\n active,\n inactive,\n match,\n dispatch,\n style,\n }: Props) => {\n const { device } = match.params\n\n const updateData = () => {\n if (device) {\n dispatch(fetchDeviceInfo(device))\n } else {\n dispatch(fetchServices())\n }\n dispatch(checkAuth(true))\n }\n\n const [disabledButton, setDisabled] = useState(loading)\n useEffect(() => {\n setDisabled(loading)\n }, [active, inactive, loading])\n\n return isConnected ? (\n {\n setDisabled(true)\n dispatch(deactivateService(appId, device))\n .then(updateData)\n .catch(updateData)\n }}\n style={style}\n disabled={disabledButton}\n >\n отключить\n \n ) : (\n {\n setDisabled(true)\n dispatch(activateService(appId, device))\n .then(updateData)\n .catch(updateData)\n }}\n style={style}\n disabled={disabledButton}\n >\n подключить\n \n )\n },\n ),\n)\n","//@flow\nimport React from 'react'\nimport styled from 'styled-components'\n\nconst Status = styled.div`\n display: inline-flex;\n align-items: center;\n user-select: none;\n vertical-align: middle;\n justify-content: center;\n padding: 7px 9px;\n min-width: 64px;\n font-size: 0.675rem;\n border-radius: 10rem;\n\n font-family: ${({ theme }) => theme.fonts.primary};\n font-weight: 600;\n line-height: 1.5;\n letter-spacing: 0.02857em;\n text-transform: uppercase;\n text-align: center;\n white-space: nowrap;\n\n background: ${p => p.theme.palette.primary['500']};\n background: ${p =>\n p.theme.palette[p.status] && p.theme.palette[p.status]['500']};\n color: white;\n`\n\nconst textTransalations = {\n success: 'успех',\n error: 'ошибка',\n pending: 'в ожидании',\n waiting_approve: 'в ожидании',\n}\n\nconst TransactionStatus = ({ status }: Props) => {\n return {textTransalations[status]}\n}\n\ntype Props = {\n status: 'pending' | 'success' | 'error',\n}\n\nexport default TransactionStatus\n","import { showError, showMessage } from 'features/ui/uiSlice'\nimport api from 'utils/api'\nconst { createAsyncThunk } = require('@reduxjs/toolkit')\n\nexport const fetchAppAbilities = createAsyncThunk(\n 'permissions/fetch_abilities',\n async (params = {}, { getState, rejectWithValue, dispatch }) => {\n try {\n const apps = await api.request(`/apps_resources`)\n dispatch(showMessage(apps?.message))\n return apps\n } catch (err) {\n const { error } = await err.json()\n dispatch(showError(error))\n return rejectWithValue(err)\n }\n }\n)\n\nexport const createManagementCompany = createAsyncThunk(\n 'permissions/create_company',\n async ({ permissions, email, address_uuids, name }, { getState, rejectWithValue, dispatch }) => {\n const params = { permissions, email, address_uuids, name }\n try {\n const apps = await api.request(`/managment_companies`, {\n method: 'POST',\n body: JSON.stringify(params),\n })\n dispatch(showMessage(apps?.message))\n\n return apps\n } catch (err) {\n const { error } = await err.json()\n dispatch(showError(error))\n return rejectWithValue(err)\n }\n }\n)\n\nexport const fetchManagementsCompanies = createAsyncThunk(\n 'permissions/fetch_companies',\n async (args, { getState, rejectWithValue, dispatch }) => {\n try {\n const companies = await api.request(`/managment_companies`)\n dispatch(showMessage(companies?.message))\n return companies\n } catch (err) {\n const { error } = await err.json()\n dispatch(showError(error))\n return rejectWithValue(err)\n }\n }\n)\n\nexport const fetchManagementCompany = createAsyncThunk(\n 'permissions/fetch_current_company',\n async ({ uuid }, { getState, rejectWithValue, dispatch }) => {\n // const params = { permissions, email, address_uuids, name }\n try {\n const apps = await api.request(`/managment_companies/${uuid}`)\n return apps\n } catch (err) {\n const { error } = await err.json()\n dispatch(showError(error))\n return rejectWithValue(err)\n }\n }\n)\n\nexport const updateAppAbilities = createAsyncThunk(\n 'permissions/update_app_abilities ',\n async ({ uuid }, { getState, rejectWithValue, dispatch }) => {\n try {\n const permissions = getState().permissions.permissions\n\n const res = await api.request(`/managment_companies/${uuid}/update_permissions`, {\n method: 'PATCH',\n body: JSON.stringify({ permissions: permissions }),\n })\n\n dispatch(showMessage(res?.message))\n return Promise.resolve(res)\n } catch (err) {\n const { error } = await err.json()\n dispatch(showError(error))\n return rejectWithValue(err)\n }\n }\n)\nexport const deleteManagementCompany = createAsyncThunk(\n 'permissions/deleteManagementCompany',\n async ({ uuid }, { getState, rejectWithValue, dispatch }) => {\n const params = { mc_uuids: [uuid] }\n try {\n const res = await api.request(`/managment_companies/delete_batch`, {\n method: 'DELETE',\n body: JSON.stringify(params),\n })\n\n dispatch(showMessage(res?.message))\n return res\n } catch (err) {\n const { error } = await err.json()\n dispatch(showError(error))\n return rejectWithValue(err)\n }\n }\n)\n","\n\nfunction UpdateLabel({ children }) {\n\n\n return (\n
\n
\n new\n
\n {children}\n
\n )\n}\n\nconst styles = {\n updated: {\n position: 'absolute',\n top: '-15px',\n right: '-35px',\n fontSize:'10px',\n textTransform:'uppercase',\n color: '#fff',\n background:'red',\n padding: '3px 10px',\n borderRadius:'5px'\n },\n}\n\nexport default UpdateLabel\n","//@flow\nimport * as React from 'react'\nimport styled from 'styled-components'\nimport { Typography } from '@material-ui/core'\nimport { AccountBalanceWallet } from '@material-ui/icons'\nimport { Button, Wrapper } from 'sputnik-ui'\nimport CreditCard from 'components/atoms/CreditCard'\nimport type { BillingAccount } from 'globalTypes'\nimport { useDispatch } from 'react-redux'\nimport { createConversation } from 'store/intercom/operations'\nimport { showInfo } from 'features/ui/uiSlice'\nimport { useTranslation } from 'react-i18next'\n\nconst BalanceWrapper = styled(Wrapper)`\n /* min-height: 200px; */\n flex-direction: column;\n flex-wrap: wrap;\n`\n\nconst StyledMoney = styled(Typography)`\n && {\n display: inline;\n font-weight: 300;\n }\n`\n\nconst formatDate = (date) => {\n const dateOptions = {\n weekday: 'long',\n year: 'numeric',\n month: 'long',\n day: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n }\n const dateObj = new Date(date)\n const isToday = new Date().toDateString() === dateObj.toDateString()\n return isToday\n ? `сегодня, ${dateObj.toLocaleTimeString(undefined, {\n hour: 'numeric',\n minute: 'numeric',\n })}`\n : dateObj.toLocaleString(undefined, dateOptions)\n}\n\nconst AccountBalance = ({\n billingAccount,\n ...props\n}: {\n billingAccount: BillingAccount,\n onClick: Function,\n}) => {\n const { t } = useTranslation(['messages'])\n const dispatch = useDispatch()\n const handleClick = React.useCallback(() => {\n // temporary solution\n dispatch(showInfo(t('messages:top_up_balance')))\n\n // code below maybe uncomment later\n\n // dispatch(\n // createConversation(\n // `Хочу пополнить счет личного кабинета, выставьте мне счет`,\n // ),\n // ).then(() => window.Intercom('showMessages'))\n }, [dispatch])\n\n if (\n billingAccount.balance_with_currency === null ||\n billingAccount.balance_with_currency === undefined\n ) {\n return null\n }\n const [bigNums, smallNums] = billingAccount.balance_with_currency.split('.')\n\n return (\n \n \n \n Баланс\n \n \n {' '}\n Пополнить\n \n \n \n {formatDate(billingAccount.balance_last_update)}\n \n
\n {bigNums}\n \n .{smallNums}\n \n
\n {billingAccount.card_info && (\n
\n \n {/* \n \n \n \n */}\n
\n )}\n
\n )\n}\n\nexport default AccountBalance\n","//@flow\n//$FlowFixMe\nimport React, { useState } from 'react'\nimport { connect } from 'react-redux'\nimport { withTheme } from 'styled-components'\nimport {\n ResponsiveContainer,\n BarChart,\n Bar,\n XAxis,\n YAxis,\n Tooltip,\n Legend,\n LineChart,\n Line,\n} from 'recharts'\nimport { Wrapper, Options } from 'sputnik-ui'\nimport { CircularProgress } from '@material-ui/core'\n\nimport type { Stat } from 'globalTypes'\n\nconst BillingStats = (props: Props) => {\n const [chart, setChart] = useState('столбчатая')\n\n return (\n <>\n \n \n {props.stats ? (\n \n {chart === 'столбчатая' ? (\n \n \n \n \n \n \n \n \n ) : (\n \n \n \n \n \n \n \n \n )}\n \n ) : (\n
\n \n
\n )}\n \n \n )\n}\n\nconst centered = {\n height: 300,\n width: '100%',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n}\n\ntype Props = {\n stats?: Stat[],\n theme: Object,\n}\n\nconst mapStateToProps = ({ billing }) => ({\n stats: billing.statistics,\n})\n\n//$FlowFixMe\nexport default connect(mapStateToProps)(withTheme(BillingStats))\n","/* @flow */\n\nexport const SIGN_IN: string = 'auth/SIGN_IN'\nexport const SIGN_IN_ERROR: string = 'auth/SIGN_IN_ERROR'\nexport const CHECK_AUTH: string = 'auth/CHECK_AUTH'\n\nexport const FETCH_USER_COMPANY_REQUEST: string = 'auth/FETCH_USER_COMPANY_REQUEST'\nexport const FETCH_USER_COMPANY_SUCCESS: string = 'auth/FETCH_USER_COMPANY_SUCCESS'\nexport const FETCH_USER_COMPANY_FAILURE: string = 'auth/FETCH_USER_COMPANY_FAILURE'\n\nexport const LOG_OUT_REQUEST: string = 'auth/LOG_OUT_REQUEST'\nexport const LOG_OUT_SUCCESS: string = 'auth/LOG_OUT_SUCCESS'\nexport const LOG_OUT_ERROR: string = 'auth/LOG_OUT_ERROR'\n\nexport const FETCH_PARTNER_ACCEPT = 'partner_program/FETCH_PARTNER_ACCEPT'\nexport const FETCH_PARTNER_ACCEPT_SUCCESS = 'partner_program/FETCH_PARTNER_ACCEPT_SUCCESS'\nexport const FETCH_PARTNER_ACCEPT_FAILURE = 'partner_program/FETCH_PARTNER_ACCEPT_FAILURE'\n\nexport const FETCH_PARTNER_STATISTIC = 'partner_program/FETCH_PARTNER_STATISTIC'\nexport const FETCH_PARTNER_STATISTIC_SUCCESS = 'partner_program/FETCH_PARTNER_STATISTIC_SUCCESS'\nexport const FETCH_PARTNER_STATISTIC_FAILURE = 'partner_program/FETCH_PARTNER_STATISTIC_FAILURE'\n\nexport const ACCEPT_LICENSE = 'license/ACCEPT_LICENSE'\nexport const ACCEPT_LICENSE_SUCCESS = 'license/ACCEPT_LICENSE_SUCCESS'\nexport const ACCEPT_LICENSE_FAILURE = 'license/ACCEPT_LICENSE_FAILURE'\n","/* @flow */\nimport * as types from './types'\nimport type { Action } from 'globalTypes'\n\nexport const signIn = (user: Object): Action => ({\n type: types.SIGN_IN,\n payload: { user },\n})\nexport const signInError = (): Action => ({\n type: types.SIGN_IN_ERROR,\n payload: {},\n})\nexport const checkAuth = (): Action => ({\n type: types.CHECK_AUTH,\n payload: {},\n})\n\nexport const logOutRequest = (): Action => ({\n type: types.LOG_OUT_REQUEST,\n payload: {},\n})\nexport const logOutSuccess = (): Action => ({\n type: types.LOG_OUT_SUCCESS,\n payload: {},\n})\nexport const logOutError = (): Action => ({\n type: types.LOG_OUT_ERROR,\n payload: {},\n})\n\nexport const fetchUserCompanyRequest = (): Action => ({\n type: types.FETCH_USER_COMPANY_REQUEST,\n payload: {},\n})\nexport const fetchUserCompanySuccess = (company: Object): Action => ({\n type: types.FETCH_USER_COMPANY_SUCCESS,\n payload: { company },\n})\nexport const fetchUserCompanyError = (): Action => ({\n type: types.FETCH_USER_COMPANY_FAILURE,\n payload: {},\n})\n\nexport const fetchPartnerAcceptSuccess = (status) => ({\n //ok\n type: types.FETCH_PARTNER_ACCEPT,\n payload: { status },\n})\nexport const fetchPartnerAcceptFailure = (error) => ({\n type: types.FETCH_PARTNER_ACCEPT_FAILURE,\n payload: { error },\n})\nexport const fetchPartnerAccept = () => ({\n type: types.FETCH_PARTNER_ACCEPT,\n payload: {},\n})\n\nexport const fetchPartnerStatistic = () => ({\n type: types.FETCH_PARTNER_STATISTIC,\n})\n\nexport const fetchPartnerStatisticSuccess = (statistic) => ({\n type: types.FETCH_PARTNER_STATISTIC_SUCCESS,\n payload: statistic,\n})\nexport const fetchPartnerStatisticFailure = (error) => ({\n type: types.FETCH_PARTNER_STATISTIC_FAILURE,\n payload: { error },\n})\n\nexport const acceptLicense = () => ({\n type: types.ACCEPT_LICENSE,\n})\n\nexport const acceptLicenseSuccess = (msg) => ({\n type: types.ACCEPT_LICENSE_SUCCESS,\n payload: { msg },\n})\n\nexport const acceptLicenseFailure = (error) => ({\n type: types.ACCEPT_LICENSE_FAILURE,\n payload: { error },\n})\n","export const getAppAbilitiesList = (state) => state.permissions.appAbilitiesList\n","export const getPermissionsCurrentCompany = (state) => state.permissions.current.company\n","export const getPermissionsList = (state) => state.permissions.permissions","export const getCompaniesList = (state) => state.permissions.companies\n","export const getManagementCompaniesPending = (state) => state.permissions.pending\n","export const getCurrentCompanyPending = (state) => state.permissions.current.pending\n","export const getCurrentCompanyAddresses = (state) => state.permissions.current.company.addresses\n","//@flow\nimport * as types from './types'\nimport type { Action, ITransaction, BillingAccount } from 'globalTypes'\n\nexport const fetchTransactionsRequest = (): Action => ({\n type: types.FETCH_TRANSACTIONS_REQUEST,\n payload: {},\n})\nexport const fetchTransactionsSuccess = (\n transactions: ITransaction[]\n): Action => ({\n type: types.FETCH_TRANSACTIONS_SUCCESS,\n payload: {\n transactions,\n },\n})\nexport const fetchTransactionsFailure = (error: string): Action => ({\n type: types.FETCH_TRANSACTIONS_FAILURE,\n payload: {\n error,\n },\n})\n\nexport const fetchAvailablePeriodRequest = (): Action => ({\n type: types.FETCH_AVAILABLE_PERIOD_REQUEST,\n payload: {},\n})\nexport const fetchAvailablePeriodSuccess = (period: string[]): Action => ({\n type: types.FETCH_AVAILABLE_PERIOD_SUCCESS,\n payload: {\n period,\n },\n})\nexport const fetchAvailablePeriodFailure = (error: string): Action => ({\n type: types.FETCH_AVAILABLE_PERIOD_FAILURE,\n payload: {\n error,\n },\n})\n\nexport const fetchStatisticsRequest = (): Action => ({\n type: types.FETCH_STATISTICS_REQUEST,\n payload: {},\n})\nexport const fetchStatisticsSuccess = (statistics: Array<*>): Action => ({\n type: types.FETCH_STATISTICS_SUCCESS,\n payload: {\n statistics,\n },\n})\nexport const fetchStatisticsFailure = (error: string): Action => ({\n type: types.FETCH_STATISTICS_FAILURE,\n payload: {\n error,\n },\n})\n\nexport const changeBillingAccountInfoRequest = (): Action => ({\n type: types.CHANGE_BILLING_ACCOUNT_INFO_REQUEST,\n payload: {},\n})\nexport const changeBillingAccountInfoSuccess = (\n msg: string,\n account\n): Action => ({\n type: types.CHANGE_BILLING_ACCOUNT_INFO_SUCCESS,\n payload: { msg, account },\n})\nexport const changeBillingAccountInfoFailure = (error: string): Action => ({\n type: types.CHANGE_BILLING_ACCOUNT_INFO_FAILURE,\n payload: { error },\n})\n\nexport const makeDepositRequest = (): Action => ({\n type: types.MAKE_DEPOSIT_REQUEST,\n payload: {},\n})\nexport const makeDepositSuccess = (msg?: string): Action => ({\n type: types.MAKE_DEPOSIT_SUCCESS,\n payload: { msg },\n})\nexport const makeDepositFailure = (error: string): Action => ({\n type: types.MAKE_DEPOSIT_FAILURE,\n payload: { error },\n})\n\nexport const fetchBillingAccountRequest = (): Action => ({\n type: types.FETCH_BILLING_ACCOUNT_REQUEST,\n payload: {},\n})\nexport const fetchBillingAccountSuccess = (\n account: BillingAccount\n): Action => ({\n type: types.FETCH_BILLING_ACCOUNT_SUCCESS,\n payload: { account },\n})\nexport const fetchBillingAccountFailure = (error: string): Action => ({\n type: types.FETCH_BILLING_ACCOUNT_FAILURE,\n payload: { error },\n})\n\nexport const unbindPaymentMethodRequest = (): Action => ({\n type: types.UNBIND_PAYMENT_METHOD_REQUEST,\n payload: {},\n})\nexport const unbindPaymentMethodSuccess = (msg: string): Action => ({\n type: types.UNBIND_PAYMENT_METHOD_SUCCESS,\n payload: { msg },\n})\nexport const unbindPaymentMethodFailure = (error: string): Action => ({\n type: types.UNBIND_PAYMENT_METHOD_FAILURE,\n payload: { error },\n})\n\nexport const clearTransactionsData = (): Action => ({\n type: types.CLEAR_TRANSACTIONS_DATA,\n payload: {},\n})\n","import React, { useEffect } from 'react'\nimport styled, { keyframes } from 'styled-components'\nimport { Typography, Tooltip } from '@material-ui/core'\nimport { FiberManualRecord, CreditCard } from '@material-ui/icons'\nimport { Wrapper } from 'sputnik-ui'\nimport { formatDate, lighterColor } from 'utils/helpers'\n\nimport type { IService } from 'globalTypes'\n\nconst fade = keyframes`\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n`\n\nconst OnlineIcon = styled(FiberManualRecord)`\n /* color: ${p =>\n p.isOnline\n ? p.theme.palette.success['500']\n : p.theme.palette.error['500']}; */\n && {\n width: 8px;\n height: 16px;\n margin-right: 4px;\n animation: ${fade} 2s ease-in-out infinite alternate;\n }\n`\n\ntype Props = IService & {\n dispatch: Function,\n}\n\nconst PALE_PINK = '#eed7df'\nconst BRIGHT_PINK = '#ED4887'\nconst DEFAULT_TEXT = '#333'\nconst SHADOW_FACTOR = 'AE'\n\nconst ServiceBody = styled(Wrapper)`\n border: none;\n background: ${p =>\n p.isActive\n ? (p.colors &&\n `radial-gradient(ellipse farthest-corner at left top, ${\n p.colors.active_bg\n } 0%,${lighterColor(p.colors.active_bg, 0.2)} 100%);`) ||\n BRIGHT_PINK\n : (p.colors && p.colors.inactive_bg) || PALE_PINK};\n color: ${p =>\n p.isActive\n ? (p.colors && p.colors.active_text) || DEFAULT_TEXT\n : (p.colors && p.colors.inactive_text) || DEFAULT_TEXT};\n box-shadow: 0 35px 50px -30px ${p => (p.isActive ? (p.colors && p.colors.active_bg + SHADOW_FACTOR) || BRIGHT_PINK + SHADOW_FACTOR : (p.colors && p.colors.inactive_bg) || PALE_PINK)};\n flex-direction: column;\n height: 340px;\n transition: all 0.3s ease-in-out;\n /* transition-property: all !important; */\n\n &:hover {\n cursor: pointer;\n transform: translateY(-20px) !important;\n box-shadow: 0 55px 50px -17px ${p => (p.isActive ? (p.colors && p.colors.active_bg + SHADOW_FACTOR) || BRIGHT_PINK + SHADOW_FACTOR : (p.colors && p.colors.inactive_bg) || PALE_PINK)};\n }\n`\n\nconst ServiceName = styled(Typography)`\n && {\n /* font-weight: 500; */\n /* font-size: 1.325rem; */\n overflow: hidden;\n /* line-height: 2.625rem; */\n text-overflow: ellipsis;\n /* Required for text-overflow to do anything */\n white-space: nowrap;\n overflow-x: hidden;\n /* height: 50px; */\n }\n`\n\nconst ServicePrice = styled(Typography)`\n && {\n font-size: 1.125rem;\n /* font-weight: 400; */\n\n /* margin-top: 50px; */\n }\n`\n\n// const ServiceImage = styled.img`\n// stroke: currentColor;\n// fill: currentColor;\n// /* width: 60%; */\n// width: 64px;\n// height: 64px;\n// margin: 2rem auto;\n// /* height: auto; */\n// `\n\nconst ServiceImage = styled.svg`\n /* stroke: none; */\n fill: currentColor;\n /* width: 60%; */\n width: 64px;\n height: 64px;\n margin: 2rem auto;\n`\n\nconst ServiceDescription = styled(Typography)`\n && {\n font-weight: 400;\n text-overflow: ellipsis;\n overflow: hidden;\n height: 100px;\n font-size: 1rem;\n }\n`\n\nconst NextPayment = styled(Typography)`\n && {\n /* font-weight: 300; */\n text-overflow: ellipsis;\n overflow: hidden;\n height: 20px;\n font-size: 1rem;\n display: flex;\n justify-content: flex-start;\n align-items: center;\n }\n`\n\nexport default function GlobalService({\n base_info: {\n cost,\n payment_name,\n payment,\n rate_type,\n description,\n service_address,\n colors,\n is_active,\n next_payment_date,\n image,\n },\n noPrice,\n ...props\n}: Props) {\n useEffect(() => {}, [])\n return (\n \n \n {is_active && (\n \n \n \n )}\n {payment_name}\n \n {!noPrice && {cost / 100}₽}\n\n {/* */}\n\n {/* img */}\n \n \n \n\n {description}\n {next_payment_date && (\n \n \n {' '}\n {formatDate(next_payment_date)}\n \n \n )}\n \n )\n}\n","import React, { useCallback, useState } from 'react'\nimport styled, { css, keyframes } from 'styled-components'\nimport { Typography, withWidth } from '@material-ui/core'\nimport { NavigateNext } from '@material-ui/icons'\nimport { Button } from 'sputnik-ui'\nimport { Link } from 'react-router-dom'\nimport ym from 'react-yandex-metrika'\nimport { darkerColor } from 'utils/helpers'\nimport { useDispatch } from 'react-redux'\n\nconst COLORS = ['#eed7df', '#E8F5E9', '#bad8e0', '#fad6b4']\nconst MAX_HEIGHT = 700\nconst MARG_TOP = '2rem'\n\nconst ProductWrapper = styled.div`\n height: 100%;\n display: flex;\n width: calc(100% - 4rem - 48px - 24px);\n order: ${(p) => p.order};\n margin-right: 4rem;\n transition: opacity 600ms ease-in-out;\n\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n width: 100%;\n flex-direction: column;\n /* height: 90%; */\n height: auto;\n }\n`\n\nconst jump = keyframes`\n from {\n transform: translateX(0);\n } to {\n transform: translateX(5px);\n }\n`\n\nconst jumpRotated = keyframes`\n from {\n transform: translateX(0) rotate(-180deg);\n } to {\n transform: translateX(5px) rotate(-180deg);\n }\n`\n\nconst NextIcon = styled(NavigateNext)`\n animation: ${(p) => (p.isLast ? jumpRotated : jump)} 1s ease-out infinite\n alternate-reverse;\n`\n\nconst ProductImageWrapper = styled.div`\n width: 100%;\n height: 100%;\n display: flex;\n justify-content: center;\n position: relative;\n background: ${(p) => {\n return COLORS[p.idx % COLORS.length] || COLORS[0]\n }};\n align-items: center;\n overflow: hidden;\n /* transition: all 600ms cubic-bezier(0.39, -0.79, 0.41, 2.85); */\n transition: height 600ms ease-in-out, margin 600ms ease-in-out,\n background-color 300ms ease-in-out;\n\n ${(p) =>\n !p.isCurrentItem &&\n css`\n height: calc(100% - 8rem);\n margin-top: 4rem;\n cursor: pointer;\n &:hover {\n background: ${(p) => {\n return darkerColor(COLORS[p.idx % COLORS.length] || COLORS[0], 0.05)\n }};\n }\n `};\n\n @media screen and (max-width: ${(p) => p.theme.sizes.screen}) {\n width: 100%;\n }\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n width: 100%;\n height: 250px;\n margin-top: 0;\n /* justify-content: start; */\n /* padding-left: 2rem; */\n }\n`\n\nconst ProductImage = styled.img`\n height: calc(55% - ${MARG_TOP} * 2);\n z-index: 1;\n\n @media screen and (max-width: ${(p) => p.theme.sizes.screen}) {\n height: calc(100% - ${MARG_TOP} * 2);\n }\n`\n\nconst ProductInfo = styled.div`\n width: 100%;\n display: flex;\n flex-direction: column;\n overflow-y: scroll;\n overflow-x: visible;\n max-width: 500px;\n &::-webkit-scrollbar {\n display: none;\n }\n\n /* order: 1; */\n order: 1;\n padding-left: 4rem;\n padding-top: 4rem;\n\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n /* margin-bottom: 4rem; */\n max-width: none;\n padding: 2rem;\n }\n`\n\nconst ProductTitle = styled(Typography)`\n && {\n margin-top: ${MARG_TOP};\n font-weight: 300;\n font-size: 3rem;\n /* order: 2; */\n @media screen and (max-height: ${MAX_HEIGHT}px) {\n margin-top: 0;\n }\n }\n`\n\nconst ProductDescription = styled(Typography).attrs((p) => ({\n color: 'textSecondary',\n}))`\n && {\n margin-top: ${MARG_TOP};\n margin-bottom: 0.625rem;\n\n /* order: 3; */\n }\n`\n\nconst ProductRow = styled.div`\n display: flex;\n align-items: center;\n`\n\nconst ProductOrderSeparator = styled.div`\n height: 3px;\n width: 50%;\n margin: 0 1rem;\n background: #000;\n`\n\nconst PaginationRow = styled(ProductRow)`\n @media screen and (max-height: ${MAX_HEIGHT}px) {\n order: 4;\n margin-top: ${MARG_TOP};\n display: none;\n }\n`\n\nconst ActionsRow = styled(ProductRow)`\n justify-content: space-between;\n width: 100%;\n margin-top: ${MARG_TOP};\n margin-bottom: ${MARG_TOP};\n order: 4;\n\n @media screen and (max-height: ${MAX_HEIGHT}px) {\n order: 2;\n }\n`\n\nconst Feature = styled(Typography).attrs((p) => ({\n color: 'textSecondary',\n}))`\n position: relative;\n margin-left: 0.125rem;\n`\n\ntype Props = {\n title: string,\n img: string,\n}\n\nconst ProductCard = ({\n title,\n img,\n cost,\n order,\n productsNumber,\n calculator_link,\n currentPosition,\n match,\n idx,\n setCurrentPosition,\n width,\n description,\n features,\n setRef,\n ...props\n}: Props) => {\n \n const isCurrentItem = idx === currentPosition\n const isMobile = width === 's' || width === 'xs'\n\n return (\n \n \n \n \n {(idx + 1).toLocaleString('en-US', {\n minimumIntegerDigits: 2,\n useGrouping: false,\n })}\n {' '}\n \n \n {productsNumber.toLocaleString('en-US', {\n minimumIntegerDigits: 2,\n useGrouping: false,\n })}\n \n \n {title}\n {description}\n\n {features && features.map((f) => {f})}\n\n \n \n \n unit-экономика\n \n \n \n \n\n {\n if (idx === 1) {\n ym('reachGoal', 'partner_products_cameraButtonClick')\n }\n setCurrentPosition(idx)\n }}\n >\n {!isCurrentItem && !isMobile && (\n <>\n \n {title}\n \n \n \n )}\n \n \n \n )\n}\n\nexport default withWidth()(ProductCard)\n","//@flow\n//$FlowFixMe\nimport React from 'react'\nimport styled from 'styled-components'\nimport { Typography, Avatar, Tooltip } from '@material-ui/core'\nimport { ServiceActions } from 'components'\nimport { Wrapper } from 'sputnik-ui'\nimport { formatDate } from 'utils/helpers'\n\nimport type { IService } from 'globalTypes'\nimport { rateTypes } from 'globalTypes'\nimport { CreditCard } from '@material-ui/icons'\n\nconst ServiceBody = styled(Wrapper)`\n width: 240px;\n /* height: calc(100% - 20px); */\n flex-direction: column;\n min-height: 225px;\n white-space: normal;\n display: flex;\n flex: 0 0 auto;\n overflow-y: hidden;\n overflow-x: hidden;\n`\n\nconst PriceTag = styled(Avatar)`\n && {\n width: 80px;\n height: 80px;\n background: ${p =>\n (p.isConnected\n ? p.theme.palette.error['700']\n : p.theme.palette.success['700']) + '11'};\n color: ${p =>\n p.isConnected\n ? p.theme.palette.error['700']\n : p.theme.palette.success['700']};\n margin: 0 auto;\n }\n`\n\nconst Service = ({\n base_info: {\n payment_name,\n app_id,\n payment,\n cost,\n rate_type,\n description,\n type,\n next_payment_date,\n },\n isConnected,\n ...props\n}: IService & {\n isConnected: boolean,\n}) => {\n return (\n \n \n {rateTypes[rate_type]}\n \n {next_payment_date && (\n \n \n {formatDate(next_payment_date, undefined, true)}\n \n \n )}\n ₽{cost / 100}\n \n {payment_name}\n \n \n {description}\n \n\n {type === 'per_device' && (\n \n )}\n \n )\n}\n\nconst styles = {\n price: {\n width: 80,\n height: 80,\n },\n description: {\n marginTop: '1rem',\n },\n rate: {\n // marginTop: '0.325rem',\n },\n actions: { margin: '1rem auto 0' },\n}\n\nexport default Service\n","//@flow\nimport React from 'react'\nimport styled from 'styled-components'\nimport { Transaction } from 'components'\nimport { Table, TableRow, TableBody, Typography } from '@material-ui/core'\nimport type { ITransaction } from 'globalTypes'\n\nconst StyledTableRow = styled(TableRow)`\n &&& {\n &:hover {\n background-color: rgba(\n ${p =>\n p.status === 'error'\n ? '255,0,0'\n : p.status === 'success'\n ? '0,255,0'\n : '0,0,0'},\n 0.07\n );\n }\n }\n`\n\nconst TransactionsTable = ({ transactions, onApprove, classes }: Props) => {\n return (\n \n \n {transactions.length > 0 ? (\n transactions.map(transaction => (\n \n \n \n ))\n ) : (\n \n Вы не совершили ни одной операции\n \n )}\n \n
\n )\n}\n\ntype Props = {\n transactions: ITransaction[],\n isSalesman: boolean,\n onApprove?: Function,\n}\n\nconst styles = {\n table: {\n // tableLayout: 'fixed',\n maxWidth: '100%',\n whiteSpace: 'nowrap',\n },\n}\n\nexport default TransactionsTable\n","import React from 'react'\nimport { connect } from 'react-redux'\nimport styled from 'styled-components'\nimport {\n Select,\n Loader,\n Button,\n FullscreenDialogTitle,\n FullscreenExitButton,\n} from 'sputnik-ui'\nimport { withRouter } from 'react-router-dom'\nimport {\n Dialog,\n DialogContent,\n DialogActions,\n TextField,\n Fade,\n Typography,\n} from '@material-ui/core/'\nimport { Send } from '@material-ui/icons'\nimport { Formik } from 'formik'\nimport * as Yup from 'yup'\nimport config from 'config'\n\nimport { getApps, inviteUser, getUsers } from 'store/operations'\nimport { isEmail, isPhone } from 'utils/helpers'\n\nconst Form = styled.form`\n flex: 1;\n display: flex;\n flex-direction: column;\n`\n\nconst Transition = (props) => \n\nconst validationSchema = () =>\n Yup.object().shape({\n login: Yup.string()\n .typeError('введите e-mail или телефон')\n .test(\n 'login',\n 'введите e-mail или телефон',\n (item) => isEmail(item) || isPhone(item)\n )\n .required('введите e-mail или телефон'),\n })\n\nclass InviteUserModal extends React.Component {\n state = {\n selectedApps: [],\n appsError: '',\n }\n\n componentDidMount() {\n this.props.dispatch(getApps())\n }\n\n handleSelect = (apps) => this.setState({ selectedApps: apps })\n\n handleinviteUser = (values) => {\n const { selectedApps } = this.state\n if (!selectedApps || selectedApps.length < 1) {\n this.setState({ appsError: true })\n } else {\n this.setState({ appsError: false })\n }\n const body = {\n login: values.login,\n app_ids: selectedApps.map((o) => o.value),\n }\n\n this.props.dispatch(inviteUser(body)).then(({ user_id }) => {\n this.props.dispatch(getUsers({}))\n window.open(`${config.userUri}/user/${user_id}`, '_blank')\n this.props.handleClose()\n })\n }\n\n toggleModal = (modal) => () => this.setState({ [modal]: !this.state[modal] })\n\n render() {\n const { open, handleClose, apps, appsError } = this.props\n\n return (\n \n \n Пригласить нового пользователя\n \n \n (\n
\n \n {!apps ? (\n \n ) : (\n <>\n \n\n ({\n value: s.app_id,\n label: s.name,\n }))\n }\n selected={this.state.selectedApps}\n handleSelect={this.handleSelect}\n placeholder=\"Список доступных приложений\"\n />\n {this.state.appsError && (\n Выберите приложение\n )}\n \n )}\n \n \n \n \n Пригласить\n \n \n \n )}\n />\n \n )\n }\n}\n\nconst mapStateToProps = ({ apps, auth: { user: authorizedUser }, users }) => ({\n apps: apps.collection,\n appsError: apps.error,\n authorizedUser,\n usersError: users.error,\n})\n\nexport default connect(mapStateToProps)(withRouter(InviteUserModal))\n","//$FlowFixMe\nimport React, { useState } from 'react'\nimport { connect } from 'react-redux'\nimport { useParams, useHistory } from 'react-router-dom'\nimport ym from 'react-yandex-metrika'\nimport {\n Button,\n Loader,\n FullscreenExitButton,\n FullscreenDialogTitle,\n} from 'sputnik-ui'\nimport { Dialog, DialogActions, Fade } from '@material-ui/core'\nimport { buyProduct } from 'store/products/operations'\nimport { fetchBillingAccount } from 'store/billing/operations'\nimport DepositForm from 'components/molecules/DepositForm'\nimport BuyProductForm from 'components/molecules/BuyProductForm'\nimport SuccessfullPaymentForm from 'components/molecules/SuccessfullPaymentForm'\nimport { withTranslation } from 'react-i18next'\nimport { useSelector } from 'react-redux'\n\nimport { makeDeposit } from 'store/billing/operations'\n\nconst Transition = (props) => \n\nconst BuyProductModal = ({\n open = true,\n accountBalance,\n dispatch,\n isLoading,\n t,\n}: Props) => {\n console.log('adaddaad')\n const history = useHistory()\n const { product: productIdx } = useParams()\n const product = useSelector(({ products }) => products.list[productIdx])\n\n const handleClose = () => history.goBack()\n const [productQty, setProductQty] = useState(1)\n const totalPrice =\n (product?.cost / 100) * Number(productQty) * Number(product?.unit)\n const notEnoughBalance = Boolean(accountBalance < totalPrice)\n const onBuy = () => {\n dispatch(buyProduct(product?.app_id, productQty * product?.unit)).then(\n () => {\n dispatch(fetchBillingAccount())\n history.push('/billing')\n },\n )\n }\n\n const [isDepositing, setIsDepositing] = useState(false)\n const [invoiceUuid, setInvoiceUuid] = useState(null)\n const onBuyAndDeposit = ({\n total,\n paymentMethod,\n usePaymentCard,\n phoneNumber,\n }) => {\n dispatch(\n makeDeposit({\n total: totalPrice - accountBalance,\n quantity: productQty * product?.unit,\n app_id: product?.app_id,\n operation_type: paymentMethod,\n use_payment_method: usePaymentCard,\n phone_number: phoneNumber,\n }),\n ).then(({ operation_id, redirect_url }) => {\n if (paymentMethod === 'direct_deposit') {\n return setInvoiceUuid(operation_id)\n }\n dispatch(fetchBillingAccount())\n\n history.push('/billing')\n })\n }\n\n const currentScreen = invoiceUuid\n ? 'invoice'\n : isDepositing\n ? 'deposit'\n : 'buy'\n\n return (\n \n setIsDepositing(false)\n : handleClose\n }\n />\n \n {currentScreen === 'invoice' ? 'Успех!' : 'Покупка'}\n \n\n {!isDepositing ? (\n \n ) : invoiceUuid ? (\n \n ) : (\n \n {({ paymentMethod, usePaymentCard, phoneNumber }) => (\n \n {\n // ym('reachGoal', 'partner_billing_kassaOut')\n onBuyAndDeposit({\n paymentMethod,\n usePaymentCard,\n phoneNumber,\n })\n }}\n >\n пополнить и купить\n \n \n )}\n \n )}\n {isLoading && (\n \n )}\n \n )\n}\n\ntype Props = {\n open: boolean,\n handleClose: Function,\n dispatch: Function,\n history: Object,\n isLoading: boolean,\n}\n\nconst mapStateToProps = ({ billing }) => ({\n accountBalance: billing.account?.balance,\n isLoading: billing.loading,\n // billingAccountPresent: billing.account && billing.account.is_present,\n})\n\nexport default withTranslation(['common', 'products'])(\n connect(mapStateToProps)(BuyProductModal),\n)\n","//$FlowFixMe\nimport React, { useState } from 'react'\nimport { connect } from 'react-redux'\nimport { withRouter } from 'react-router-dom'\nimport ym from 'react-yandex-metrika'\nimport {\n Button,\n Loader,\n FullscreenExitButton,\n FullscreenDialogTitle,\n} from 'sputnik-ui'\nimport { DepositForm } from 'components'\nimport { Dialog, DialogActions, Fade } from '@material-ui/core'\nimport SuccessfullPaymentForm from 'components/molecules/SuccessfullPaymentForm'\n\nimport { makeDeposit } from 'store/operations'\nimport {\n fetchTransactions,\n fetchBillingAccount,\n} from 'store/billing/operations'\n\nconst Transition = props => \n\nconst DepositModal = ({ open = true, isLoading, history, dispatch }: Props) => {\n const [invoiceUuid, setInvoiceUuid] = useState(null)\n\n const handleDeposit = ({\n total,\n paymentMethod,\n usePaymentCard,\n phoneNumber,\n }) => {\n dispatch(\n makeDeposit({\n total,\n operation_type: paymentMethod,\n use_payment_method: usePaymentCard,\n phone_number: phoneNumber,\n }),\n ).then(({ redirect_url, operation_id }) => {\n if (paymentMethod === 'direct_deposit') {\n return setInvoiceUuid(operation_id)\n }\n dispatch(fetchBillingAccount())\n dispatch(fetchTransactions())\n history.push('/billing')\n })\n }\n const handleClose = () => history.push('/billing')\n\n return (\n setInvoiceUuid(null)}\n fullScreen\n >\n \n \n {invoiceUuid ? 'Успех!' : 'Пополнение баланса'}\n \n {!invoiceUuid ? (\n <>\n \n {({ total, paymentMethod, usePaymentCard, phoneNumber }) => (\n \n {\n // ym('reachGoal','partner_billing_kassaOut')\n handleDeposit({\n total,\n paymentMethod,\n usePaymentCard,\n phoneNumber,\n })\n }}\n disabled={!total || isLoading}\n >\n Перейти к оплате\n \n \n )}\n \n \n ) : (\n <>\n \n \n )}\n\n {isLoading && (\n \n )}\n \n )\n}\n\ntype Props = {\n open: boolean,\n handleClose: Function,\n dispatch: Function,\n history: Object,\n isLoading: boolean,\n}\n\nconst mapStateToProps = ({ billing }) => ({\n isLoading: billing.loading,\n})\n\nexport default connect(mapStateToProps)(withRouter(DepositModal))\n","import React from 'react'\nimport { Wrapper, Button } from 'sputnik-ui'\nimport styled, { css } from 'styled-components'\nimport { Link, withRouter } from 'react-router-dom'\nimport { Typography } from '@material-ui/core'\nimport SpringCard from 'components/molecules/SpringCard'\n\nconst DARK_GREY = '#515151'\nconst LIGHT_GREY = '#989898'\n\nconst Body = styled(Wrapper)`\n flex-direction: column;\n align-items: center;\n max-width: 300px;\n border: none;\n box-shadow: ${p => p.theme.shadows.strong};\n\n ${p =>\n p.isActive &&\n css`\n background: ${p => p.theme.palette.other.pink};\n box-shadow: none;\n `}\n\n & > * {\n text-align: center;\n }\n`\n\nconst PlanImg = styled.img`\n /* width: 100%; */\n height: 150px;\n margin-bottom: 1rem;\n`\n\nconst Title = styled(Typography)`\n && {\n font-size: 1.325rem;\n text-transform: uppercase;\n letter-spacing: 0.125rem;\n /* color: ${DARK_GREY}; */\n font-weight: 400;\n /* text-align: center; */\n }\n`\n\nconst PriceWrapper = styled.div`\n display: flex;\n justify-content: center;\n margin: 1rem auto;\n flex-direction: column;\n`\n\nconst Price = styled(Typography)`\n && {\n /* text-align: center; */\n font-size: 2rem;\n /* color: ${DARK_GREY}; */\n font-weight: 300;\n }\n`\n\nconst BillingInterval = styled(Typography).attrs(p => ({\n color: 'textSecondary',\n}))`\n && {\n /* color: ${LIGHT_GREY}; */\n margin-top: -0.325rem;\n }\n`\n\nconst Feature = styled(Typography)`\n width: 100%;\n text-overflow: ellipsis;\n /* Required for text-overflow to do anything */\n white-space: nowrap;\n overflow-x: hidden;\n`\n\ntype Props = {\n payment_name: string,\n image: string,\n short_description: string,\n cost: number,\n rate_type: string,\n features: string[],\n features_short: string[],\n is_active: boolean,\n}\n\nconst SubscriptionPlan = ({\n match,\n base_info: {\n app_id,\n payment_name,\n image,\n short_description,\n cost,\n rate_type,\n short_features,\n is_active,\n },\n}: Props) => (\n \n \n \n {/* */}\n \n\n {payment_name}\n {short_description}\n \n {cost / 100}₽\n в месяц\n с подъезда\n \n\n {short_features.slice(0, 3).map((f, idx) => (\n {f}\n ))}\n \n \n подробнее\n \n \n \n \n)\n\nexport default withRouter(SubscriptionPlan)\n","import {useState} from 'react'\nimport { DialogTitle } from '@material-ui/core'\nimport { Dialog } from '@material-ui/core'\n\nfunction UpdateModal() {\n // const [auto, setAuto] = useState(false)\n const [hide, setHide] = useState(false)\n return (\n \n Обновления\n \n )\n}\n\nexport default UpdateModal\n","//@flow\nimport * as React from 'react'\nimport { AccountsTemplate, AddUserModal, UsersTable, Search } from 'components'\nimport { Loader, Button } from 'sputnik-ui'\nimport { connect } from 'react-redux'\nimport type { State, Props } from './types'\nimport throttle from 'lodash/throttle'\nimport { PersonAdd, Help } from '@material-ui/icons'\n\nimport { getUsers } from 'store/users/operations'\nimport { Typography, Tooltip } from '@material-ui/core'\nimport { Link } from 'react-router-dom'\nimport { FileCopy } from '@material-ui/icons'\nimport { copyToClipboard } from 'utils/helpers'\nimport { showInfo } from 'features/ui/uiSlice'\n\n// const styles = theme => ({\n// root: {\n// width: '100%',\n// marginTop: theme.spacing.unit * 3,\n// },\n\n// search: {\n// minWidth: '300px',\n// zIndex: 1200,\n// background: 'white',\n// paddingLeft: 10,\n// },\n// })\n\nclass HomePage extends React.Component {\n constructor(props) {\n super(props)\n\n this.state = {\n inviteUserModal: false,\n isSearching: false,\n searchQuery: '',\n page: 0,\n limit: 10,\n order: 'asc',\n sort: 'email',\n }\n\n this.searchUsers = throttle(this.searchUsers, 400)\n }\n\n componentDidMount = () => {\n this.props.dispatch(getUsers({ page: this.state.page, limit: this.state.limit }))\n }\n\n toggleInviteUserModal = () =>\n this.setState({\n inviteUserModal: !this.state.inviteUserModal,\n })\n\n toggleSearch = () => this.setState({ isSearching: !this.state.isSearching })\n\n searchUsers = () =>\n this.props.dispatch(\n getUsers({\n q: this.state.searchQuery,\n page: this.state.page,\n limit: this.state.limit,\n order: this.state.order,\n sort: this.state.sort,\n })\n )\n\n onChange = ({ currentTarget: { value } }) =>\n this.setState({ searchQuery: value }, this.searchUsers)\n\n handleChangePage = (event: ?SyntheticEvent<>, page: number) =>\n this.setState({ page }, () => {\n this.props.dispatch(\n getUsers({\n q: this.state.searchQuery,\n page: this.state.page,\n limit: this.state.limit,\n order: this.state.order,\n sort: this.state.sort,\n })\n )\n })\n\n handleChangeRowsPerPage = (e: SyntheticEvent<>) =>\n this.setState({ limit: e.target.value }, () =>\n this.props.dispatch(\n getUsers({\n q: this.state.searchQuery,\n page: this.state.page,\n limit: this.state.limit,\n order: this.state.order,\n sort: this.state.sort,\n })\n )\n )\n\n handleRequestSort = (event: SyntheticEvent, property: string) => {\n const sort = property\n let order = 'desc'\n\n if (this.state.sort === property && this.state.order === 'desc') {\n order = 'asc'\n }\n\n this.setState({ order, sort, page: 0 }, () =>\n this.props.dispatch(\n getUsers({\n page: this.state.page,\n limit: this.state.limit,\n q: this.state.searchQuery,\n order: this.state.order,\n sort: this.state.sort,\n })\n )\n )\n }\n handleCopyCode = () => {\n copyToClipboard(this.props.serviceToken)\n this.props.dispatch(showInfo('Скопировано'))\n }\n\n render() {\n const { usersList } = this.props\n const { inviteUserModal, page, limit } = this.state\n\n if (!usersList) return \n\n return (\n \n }\n >\n \n \n\n \n \n Секретный код для @PartnerSystemsBot: \n \n\n {this.props.serviceToken}\n this.handleCopyCode()}\n />\n \n \n \n \n \n }\n />\n\n \n \n )\n }\n}\n\nconst mapStateToProps = ({ users, billing, auth }) => ({\n usersList: users.list,\n serviceCode: billing.account && billing.account.service_code,\n serviceToken: auth.company.service_token,\n})\n\n//$FlowFixMe\nexport default connect(mapStateToProps)(HomePage)\n","//@flow\n//$FlowFixMe\nimport React, { useState, useEffect } from 'react'\nimport {\n BillingTemplate,\n TransactionHistory,\n BillingAccountInfo,\n AccountBalance,\n DepositModal,\n BillingStats,\n} from 'components'\nimport styled from 'styled-components'\nimport { connect } from 'react-redux'\nimport { withRouter, NavLink, Route, Switch } from 'react-router-dom'\nimport { Typography } from '@material-ui/core'\nimport type { Match } from 'react-router-dom'\nimport type { BillingAccount } from 'globalTypes'\nimport { Loader, Wrapper, Options } from 'sputnik-ui'\nimport { useTransition, animated } from 'react-spring'\n\nimport {\n fetchTransactions,\n fetchAvailablePeriod,\n fetchStatistics,\n} from 'store/operations'\nimport { clearTransactionsData } from 'store/actions'\n\n// const Tab = props => (\n// \n// )\n\nconst Tab = styled(Typography).attrs((p) => ({\n color: 'textSecondary',\n activeStyle: {\n color: p.theme.palette.text.primary,\n },\n component: NavLink,\n}))`\n text-decoration: none;\n\n &:not(:last-child) {\n margin-right: 2rem;\n }\n`\n\nfunction BillingPage({\n dispatch,\n match,\n billingAccount,\n years,\n history,\n location,\n ...props\n}: Props) {\n useEffect(() => {\n dispatch(fetchAvailablePeriod())\n }, [dispatch])\n const [selectedYear, setSelectedYear] = useState(null)\n\n if (years && !selectedYear) {\n setSelectedYear(years[0])\n }\n\n useEffect(() => {\n dispatch(fetchTransactions(selectedYear))\n dispatch(fetchStatistics(selectedYear))\n\n return () => dispatch(clearTransactionsData())\n }, [dispatch, selectedYear])\n\n // const transitions = useTransition(location, location => location.pathname, { ... })\n // return transitions.map(({ item, props, key }) => (\n // \n // \n // \n // \n // \n // \n // \n // ))\n const fadeLeft = useTransition(true, null, {\n from: { opacity: 0, transform: 'translate3d(450px,0,0)' },\n leave: { opacity: 0, transform: 'translate3d(450px,0,0)' },\n enter: { opacity: 1, transform: 'translate3d(0,0,0)' },\n })\n // const fadeRight = useTransition(true, null, {\n // from: { opacity: 0, transform: 'translate3d(-450px,0,0)' },\n // leave: { opacity: 0, transform: 'translate3d(-450px,0,0)' },\n // enter: { opacity: 1, transform: 'translate3d(0,0,0)' },\n // })\n\n const fadeRight = useTransition(location, (location) => location.pathname, {\n from: { opacity: 0, transform: 'translate3d(-250px,0,0)' },\n leave: {\n display: 'none',\n },\n enter: { opacity: 1, transform: 'translate3d(0,0,0)' },\n })\n\n if (!billingAccount) return \n\n return (\n \n \n История платежей\n \n Платежная информация\n Статистика\n \n }\n aside={\n <>\n {fadeLeft.map(\n ({ item, key, props }) =>\n item && (\n \n \n \n \n\n \n \n ),\n )}\n {/* history.push(`${match.url}/make_deposit`)}\n /> */}\n \n }\n >\n {fadeRight.map(({ item, props, key }) => (\n \n \n \n \n } />\n \n \n \n ))}\n {/* \n \n \n \n \n */}\n \n )\n}\n\ntype Props = {\n match: Match,\n dispatch: Function,\n billingAccount: BillingAccount,\n years: string[],\n history: Object,\n}\n\nconst mapStateToProps = ({ billing }) => ({\n billingAccount: billing.account,\n years: billing.period,\n})\n\nexport default withRouter(connect(mapStateToProps)(BillingPage))\n","var map = {\n\t\"./apps/actions.js\": 109,\n\t\"./auth/actions.js\": 66,\n\t\"./billing/actions.js\": 72,\n\t\"./companies/actions.js\": 250,\n\t\"./devicesOld/actions.js\": 183,\n\t\"./intercom/actions.js\": 251,\n\t\"./products/actions.js\": 253,\n\t\"./service_partnersOld/actions.js\": 155,\n\t\"./services/actions.js\": 60,\n\t\"./users/actions.js\": 62\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 838;","import React, { useState, useRef } from 'react'\nimport { BuyPageTemplate, ProductCard, BuyProductModal } from 'components'\nimport { connect } from 'react-redux'\nimport { withRouter, Route } from 'react-router-dom'\n// import SputnikImg from './sputnik.png'\nimport styled from 'styled-components'\n// import CamImg from './cam.png'\n// import CamImg from './cam-group-1.png'\nimport UnitEconomyModal from 'components/organisms/UnitEconomyModal'\n\n// import CamImg from './cam-group-3.png'\n\nconst Carousel = styled.div`\n width: 100%;\n height: 100%;\n display: flex;\n transition: all 600ms ease-in-out;\n\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n flex-direction: column;\n\n & > div:last-child {\n display: none;\n }\n }\n`\n\nconst BuyPage = ({ match, billingAccount, products }) => {\n const [currentPosition, setCurrentPosition] = useState(0)\n\n const carouselRef = useRef()\n const cardsRef = useRef(products.map(() => React.createRef()))\n const lastNextButton = useRef()\n // useLayoutEffect(() => {\n // cardsRef.current.forEach(card => {\n // if (card.current) card.current.style.opacity = 1\n // })\n // })\n // const handleLoad = (node, isAppearing) => {\n // // if (isAppearing) {\n // // console.log(cardsRef)\n\n // //(card.current.style.opacity = 1)\n // cardsRef.current.forEach(card => console.log(card))\n // // }\n // }\n\n const getOrder = (itemIndex) => {\n // const numItems = products.length\n // if (itemIndex - currentPosition < 0) {\n // return numItems - Math.abs(itemIndex - currentPosition)\n // }\n // return itemIndex - currentPosition\n return itemIndex\n }\n\n const setCurrentPositionWithAnimation = (pos) => {\n if (pos === currentPosition) return\n\n const nextCard = cardsRef.current[pos].current\n const carousel = carouselRef.current\n const isFirstItem = pos === 0\n const rect = nextCard.getBoundingClientRect()\n console.log(rect)\n console.log('pos', pos)\n\n // currentCard.style.opacity = 0\n // nextCard.style.opacity = 0\n // lastNextButton.current.style.opacity = 0\n\n if (isFirstItem) {\n carousel.style.transform = `translateX(0)`\n } else {\n carousel.style.transform = `translateX(-${rect.left * pos}px)`\n }\n setCurrentPosition(pos)\n window.setTimeout(() => {\n // currentCard.style.opacity = 1\n // nextCard.style.opacity = 1\n // lastNextButton.current.style.opacity = 1\n }, 600)\n }\n // console.log(cardsRef)\n return (\n \n \n {products.map((product, idx) => (\n \n ))}\n\n \n \n {/* //HIDE MODALS\n path={`${match.url}/:product/buy`}\n render={() => }\n />\n }\n /> */}\n \n )\n}\n\nconst mapStateToProps = ({ billing, products }) => ({\n billingAccount: billing.account,\n products: products.list,\n})\n\nexport default connect(mapStateToProps)(withRouter(BuyPage))\n","import React, { useEffect } from 'react'\nimport styled from 'styled-components'\nimport { Link } from 'react-router-dom'\nimport { connect } from 'react-redux'\nimport { ServicePageTemplate } from 'components'\nimport { Mascotte } from 'sputnik-ui'\nimport { Dialog, IconButton, Typography, Tooltip } from '@material-ui/core'\nimport { Close, CreditCard, Launch } from '@material-ui/icons'\nimport Skeleton from 'react-loading-skeleton'\nimport { formatDate } from 'utils/helpers'\n\nimport {\n fetchService,\n fetchServices,\n fetchPackages,\n // deactivateService,\n // activateService,\n} from 'store/services/operations'\nimport { clearServices } from 'store/services/actions'\nimport type { IService, BillingAccount } from 'globalTypes'\n\nconst MARGIN = 2\n\nconst Title = styled(Typography)`\n && {\n font-weight: 300;\n font-size: 2.125rem;\n /* line-height: 2.625rem; */\n text-overflow: ellipsis;\n /* Required for text-overflow to do anything */\n white-space: nowrap;\n /* overflow-x: hidden; */\n /* margin-top: ${MARGIN}rem; */\n min-width: 80px;\n /* height: 50px; */\n position: relative;\n overflow: visible;\n text-decoration:none;\n &:hover {\n color: #333333ae;\n }\n }\n`\n\nconst Description = styled(Typography)`\n && {\n min-width: 160px;\n margin-top: 4rem;\n font-weight: 400;\n text-overflow: ellipsis;\n overflow: hidden;\n text-align: center;\n margin-top: ${MARGIN * 2}rem;\n font-size: 1rem;\n }\n`\n\nconst NextPayment = styled(Typography)`\n && {\n /* font-weight: 300; */\n text-overflow: ellipsis;\n overflow: hidden;\n height: 20px;\n font-size: 1rem;\n display: flex;\n justify-content: flex-start;\n align-items: center;\n position: absolute;\n right: 2rem;\n top: 2rem;\n }\n`\n\ntype Props = {\n service: IService,\n dispatch: Function,\n billingAccount: BillingAccount,\n}\n\nfunction ServicePage({\n service,\n billingAccount,\n dispatch,\n match,\n open,\n onClose,\n loading,\n}: Props) {\n // const [isActive, setIsActive] = useState(false)\n const isActive = service && service.base_info && service.base_info.is_active\n // const isDisabled = !service || service.base_info.in_package\n\n const { app_id: appId } = match.params\n useEffect(() => {\n dispatch(fetchService(appId))\n\n return () => {\n dispatch(clearServices())\n dispatch(fetchServices())\n dispatch(fetchPackages())\n }\n }, [appId, dispatch])\n\n // const toggleService = () => {\n // if (isActive) {\n // dispatch(deactivateService(appId)).then(() =>\n // dispatch(fetchService(appId)),\n // )\n // } else {\n // dispatch(activateService(appId)).then(() => dispatch(fetchService(appId)))\n // }\n // }\n\n return (\n \n \n \n Инструкции\n \n {service ? (\n service.base_info.instructions &&\n service.base_info.instructions.length > 0 ? (\n service.base_info.instructions.map(({ type, url, text }) => {\n switch (type) {\n case 'embed':\n return (\n \n )\n\n default:\n return null\n }\n })\n ) : (\n <>\n \n Тут пока ничего нет.\n \n )\n ) : (\n <>\n \n \n )}\n \n }\n >\n \n \n \n {service && service.base_info.next_payment_date && (\n \n \n \n {formatDate(service.base_info.next_payment_date)}\n \n \n )}\n {/* // */}\n\n \n {service ? (\n <>\n {service.base_info.payment_name}\n \n \n ) : (\n \n )}\n \n \n {service ? (\n service.base_info.description\n ) : (\n <>\n \n \n )}\n \n {/*\n \n {service ? `${service.base_info.cost / 100}₽` : }\n \n\n \n {isDisabled\n ? 'Уже подключено в рамках пакета'\n : isActive\n ? 'Отключить'\n : 'Подключить'}\n {loading && '...'}\n */}\n \n \n )\n}\n\nconst mapStateToProps = ({ services, billing }) => ({\n service: services.currentService,\n billingAccount: billing.account,\n loading: services.loading,\n})\n\nexport default connect(mapStateToProps)(ServicePage)\n","import React, { useEffect } from 'react'\nimport { connect } from 'react-redux'\nimport {\n ServicesTemplate,\n GlobalService,\n SubscriptionPlan,\n ServicePage,\n SubscriptionPage,\n} from 'components'\n\nimport { fetchServices, fetchPackages } from 'store/operations'\nimport { Link, withRouter, Route } from 'react-router-dom'\nimport Skeleton from 'react-loading-skeleton'\nimport { useTransition, animated, config } from 'react-spring'\n\ntype Props = {\n dispatch: Function,\n}\n\nfunction ServicesPage({ dispatch, match, services, packages }: Props) {\n useEffect(() => {\n dispatch(fetchServices())\n dispatch(fetchPackages())\n }, [dispatch])\n\n const transitions = useTransition(packages, item => item.base_info.app_id, {\n from: { opacity: 0, transform: 'scale3d(0.6,0.6,0.6)' },\n leave: { opacity: 0, transform: 'scale3d(0.6,0.6,0.6)' },\n enter: { opacity: 1, transform: 'scale3d(1,1,1)' },\n config: {\n mass: 2,\n tension: 60,\n friction: 26,\n precision: 0.01,\n velocity: 15,\n },\n trail: 400 / packages.length,\n })\n return (\n 0 ? (\n // packages.map(plan => (\n // \n // ))\n transitions.map(({ item, props, key }) => (\n \n \n \n ))\n ) : (\n <>\n \n \n \n \n )\n }\n services={\n services && services.length > 0 ? (\n services.map(service => (\n \n \n \n ))\n ) : (\n <>\n \n \n \n \n )\n }\n >\n \n \n \n )\n}\n\nconst mapStateToProps = ({\n services: { list, packages },\n}: {\n services: { list: Object[], packages: Object[] },\n}): Props => ({\n services: list,\n packages,\n})\n\nexport default connect(mapStateToProps)(withRouter(ServicesPage))\n","import React, { useEffect } from 'react'\nimport styled from 'styled-components'\nimport { Link } from 'react-router-dom'\nimport { connect } from 'react-redux'\nimport { ServicePageTemplate, GlobalService } from 'components'\nimport { Button } from 'sputnik-ui'\nimport { Dialog, IconButton, Typography } from '@material-ui/core'\nimport { Close, Check } from '@material-ui/icons'\nimport Skeleton from 'react-loading-skeleton'\nimport {\n fetchPackage,\n fetchServices,\n fetchPackages,\n deactivatePackage,\n activatePackage,\n} from 'store/services/operations'\nimport { clearServices } from 'store/services/actions'\nimport type { IService, BillingAccount } from 'globalTypes'\nimport type { Match } from 'react-router-dom'\n\nconst MARGIN = 2\n\nconst Title = styled(Typography)`\n && {\n font-weight: 300;\n font-size: 2.125rem;\n /* line-height: 2.625rem; */\n text-overflow: ellipsis;\n /* Required for text-overflow to do anything */\n white-space: nowrap;\n min-width: 80px;\n /* height: 50px; */\n }\n`\n\nconst Description = styled(Typography)`\n && {\n min-width: 160px;\n margin-top: 4rem;\n font-weight: 400;\n text-overflow: ellipsis;\n overflow: hidden;\n text-align: center;\n font-size: 1.325rem;\n margin-top: ${MARGIN}rem;\n }\n`\n\nconst Price = styled(Typography)`\n && {\n font-size: 1.625rem;\n min-width: 80px;\n text-align: center;\n /* font-weight: 400; */\n margin-top: ${MARGIN}rem;\n margin-bottom: ${MARGIN / 4}rem;\n /* margin-top: 50px; */\n }\n`\n\nconst ServicesWrapper = styled.div`\n /* padding: ${MARGIN}rem; */\n /* padding-top: ${MARGIN / 2}rem; */\n width: 100%;\n justify-content: center;\n display: grid;\n grid-gap: ${MARGIN}rem;\n grid-template-columns: repeat(auto-fit, 250px);\n`\n\nconst FeaturesList = styled.div`\n display: flex;\n flex-direction: column;\n margin-top: ${MARGIN}rem;\n /* margin-bottom: ${MARGIN / 4}rem; */\n overflow: hidden;\n max-height: 208px;\n`\n\ntype Props = {\n currentPackage: IService,\n billingAccount: BillingAccount,\n dispatch: Function,\n onClose: Function,\n open: boolean,\n match: Match,\n}\n\nfunction PackagePage({\n currentPackage,\n billingAccount,\n dispatch,\n match,\n open,\n onClose,\n loading,\n}: Props) {\n // const [isActive, setIsActive] = useState(false)\n const isActive =\n currentPackage &&\n currentPackage.base_info &&\n currentPackage.base_info.is_active\n\n const { app_id: appId } = match.params\n useEffect(() => {\n dispatch(fetchPackage(appId))\n\n return () => {\n dispatch(clearServices())\n dispatch(fetchServices())\n dispatch(fetchPackages())\n }\n }, [appId, dispatch])\n\n const toggleService = () => {\n if (isActive) {\n dispatch(deactivatePackage(appId)).then(() =>\n dispatch(fetchPackage(appId)),\n )\n } else {\n dispatch(activatePackage(appId)).then(() => dispatch(fetchPackage(appId)))\n }\n }\n\n return (\n \n \n \n Включенные услуги\n \n {currentPackage ? (\n currentPackage.base_info.services && (\n <>\n \n {currentPackage &&\n currentPackage.base_info.services.map(service => (\n \n \n \n ))}\n \n \n )\n ) : (\n <>\n \n \n \n )}\n \n }\n >\n \n \n \n \n {currentPackage ? (\n currentPackage.base_info.payment_name\n ) : (\n <Skeleton />\n )}\n \n \n {currentPackage ? (\n currentPackage.base_info.description\n ) : (\n <>\n \n \n )}\n \n \n {currentPackage &&\n currentPackage.base_info.features &&\n currentPackage.base_info.features.map((f, idx) => (\n \n \n {f}\n \n ))}\n \n\n <>\n \n {currentPackage ? (\n `${currentPackage.base_info.cost / 100}₽`\n ) : (\n \n )}\n \n\n \n {isActive ? 'Отключить' : 'Подключить'}\n {loading && '...'}\n \n \n \n \n )\n}\n\nconst mapStateToProps = ({ services, billing }) => ({\n currentPackage: services.currentPackage,\n billingAccount: billing.account,\n loading: services.loading,\n})\n\nexport default connect(mapStateToProps)(PackagePage)\n","// https://github.com/diegohaz/arc/wiki/Atomic-Design#templates\nimport React from 'react'\nimport styled from 'styled-components'\nimport { Container, } from 'sputnik-ui'\n\nconst Content = styled(Container)`\n padding-top: 2rem;\n padding-bottom: 2rem;\n overflow-x: hidden;\n height: auto;\n`\n\nconst AccountsTemplate = ({ header, children, subheader, ...props }) => {\n return (\n \n {subheader}\n {children}\n \n )\n}\n\nexport default AccountsTemplate\n","// https://github.com/diegohaz/arc/wiki/Atomic-Design#templates\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport styled from 'styled-components'\n\nconst AppWrapper = styled.div`\n display: flex;\n flex-direction: column;\n height: 100%;\n width: calc(100vw - (100vw - 100%));\n`\n\nconst Content = styled.section`\n /* min-height: calc(100% - 7.425rem); */\n height: fit-content;\n\n /* margin-top: 7.125rem; */\n /* overflow-x: hidden;\n overflow-y: auto; */\n`\n\nconst AppTemplate = ({ header, children, subheader, ...props }) => {\n return (\n \n {header}\n {children}\n \n )\n}\n\nAppTemplate.propTypes = {\n header: PropTypes.node.isRequired,\n subheader: PropTypes.node,\n children: PropTypes.any.isRequired,\n}\n\nexport default AppTemplate\n","//@flow\nimport * as React from 'react'\nimport styled from 'styled-components'\nimport { Container } from 'sputnik-ui'\n\nconst Wrapper = styled(Container)`\n display: flex;\n flex-direction: column;\n padding-top: 2rem;\n padding-bottom: 2rem;\n overflow-x: hidden;\n height: auto;\n`\n\nconst Tabs = styled.div`\n display: flex;\n margin-bottom: 2rem;\n`\n\nconst ContentWrapper = styled.div`\n display: flex;\n @media screen and (max-width: ${(p) => p.theme.sizes.screen}) {\n flex-direction: column;\n }\n`\n\nconst Children = styled.div`\n display: flex;\n flex: 1;\n flex-direction: column;\n margin-right: 2rem;\n\n @media screen and (max-width: ${(p) => p.theme.sizes.screen}) {\n margin-top: 2rem;\n order: 2;\n margin-right: 0;\n }\n`\n\nconst Aside = styled.aside`\n display: flex;\n flex-direction: column;\n\n & > *:not(:first-child) {\n margin-top: 2rem;\n }\n\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n & > div:first-child {\n order: 2;\n }\n\n & > *:not(:nth-child(2)) {\n margin-top: 2rem;\n }\n }\n`\n\nconst BillingTemplate = ({ tabs, children, aside, ...props }: Props) => {\n return (\n \n {tabs}\n \n {children}\n \n \n \n )\n}\n\ntype Props = {\n tabs: React.Node,\n children: React.Node,\n aside: React.Node,\n}\n\nexport default BillingTemplate\n","import React from 'react'\nimport styled from 'styled-components'\n\nconst Wrapper = styled.div`\n display: flex;\n height: calc(100vh - 7.125rem);\n width: 100%;\n /* flex-direction: column; */\n overflow: hidden;\n\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n /* flex-direction: column;\n overflow: scroll;\n margin-bottom: 4rem; */\n margin-bottom: 4rem;\n height: fit-content;\n }\n`\n\nconst BuyPageTemplate = ({ navigationButtons, children, ...props }) => (\n {children}\n)\n\nexport default BuyPageTemplate\n","import React from 'react'\nimport styled from 'styled-components'\nimport { Container } from 'sputnik-ui'\n\nconst Wrapper = styled.div`\n display: flex;\n min-height: 100%;\n flex-direction: column;\n`\n\nconst Actions = styled.div`\n padding: 2rem 0;\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n\n & > * {\n margin-bottom: 0.625rem;\n\n &:not(:last-child) {\n margin-right: 0.625rem;\n }\n }\n`\n\nconst DevicesTemplate = ({ children, actions, ...props }) => {\n return (\n \n \n {/* Действия */}\n {actions}\n \n {children}\n \n )\n}\n\nDevicesTemplate.propTypes = {}\n\nexport default DevicesTemplate\n","import React from 'react'\nimport styled, { css } from 'styled-components'\nimport { darkerColor, lighterColor } from 'utils/helpers'\nimport Skeleton from 'react-loading-skeleton'\n\nconst MARGIN = 4\n\nconst Wrapper = styled.div`\n display: flex;\n width: calc(100vw - (100vw - 100%));\n min-height: 100%;\n height:100%;\n overflow: hidden;\n /* padding-top: ${MARGIN}rem; */\n\n @media screen and (max-width: ${p => p.theme.sizes.screen}) {\n flex-direction: column;\n overflow:auto;\n }\n`\n\nconst defaultIconStyle = css`\n /* stroke: currentColor;\n fill: currentColor; */\n width: 95px;\n margin-top: 25%;\n margin-bottom: 1rem;\n @media screen and (max-width: ${p => p.theme.sizes.screen}) {\n margin-top: 4rem;\n }\n`\n\nconst Icon = styled.svg`\n ${defaultIconStyle}\n`\n\nconst Img = styled.img`\n ${defaultIconStyle}\n`\n\nconst IconPlaceholder = styled.div`\n ${defaultIconStyle};\n justify-content: center;\n display: flex;\n`\n\nconst Description = styled.div`\n flex: 4;\n flex-direction: column;\n /* justify-content: center; */\n align-items: center;\n height: 100%;\n display: flex;\n background: #fafafa;\n /* background: ${p =>\n p.isActive\n ? `repeating-radial-gradient(ellipse farthest-corner at left top,${\n p.activeBg\n } 0%,${lighterColor(p.activeBg, 0.2)} 100%);`\n : `repeating-radial-gradient(ellipse farthest-corner at left top,${darkerColor(\n p.inactiveBg,\n 0.05,\n )} 0%,${p.inactiveBg} 100%);`}; */\n background: ${p =>\n p.isActive ? p.theme.palette.secondary[100] : p.inactiveBg};\n color: ${p => (p.isActive ? p.activeText : p.inactiveText)};\n padding: 0 ${MARGIN / 2}rem ${MARGIN / 2}rem;\n transition: background-color 1s ease-in-out;\n position: relative;\n\n @media screen and (max-width: ${p => p.theme.sizes.screen}) {\n width: 100%;\n flex: unset;\n }\n`\nconst Instructions = styled.div`\n /* width: 60%; */\n flex: 6;\n flex-direction: column;\n align-items: center;\n padding: 4rem;\n /* padding-bottom: 0; */\n /* min-height: 100%; */\n display: flex;\n overflow: auto;\n\n & > * {\n margin-bottom: 2rem !important;\n }\n\n @media screen and (max-width: ${p => p.theme.sizes.screen}) {\n width: 100%;\n overflow: visible;\n flex: unset;\n }\n`\n\nconst ServicePageTemplate = ({\n activeBg = '#e899b4',\n inactiveBg = '#eed7df',\n activeText = '#333',\n inactiveText = '#333',\n isActive,\n children,\n instructions,\n icon,\n iconStyle,\n ...props\n}) => (\n \n \n {icon ? (\n iconStyle ? (\n \n ) : (\n \n \n \n )\n ) : (\n \n \n \n )}\n {children}\n \n {instructions}\n \n)\n\nexport default ServicePageTemplate\n","import React from 'react'\nimport styled from 'styled-components'\nimport { Typography } from '@material-ui/core'\nimport { Container } from 'sputnik-ui'\n\nconst MARGIN = 2\n\nconst Wrapper = styled(Container)`\n display: flex;\n flex-direction: column;\n width: calc(100vw - (100vw - 100%));\n /* min-height: calc(100% - 7.425rem); */\n padding-top: ${MARGIN}rem;\n`\n\nconst SectionTitle = styled(Typography).attrs(p => ({\n variant: 'h5',\n align: 'center',\n}))`\n && {\n /* font-weight: 300;\n font-size:1.625rem; */\n }\n`\n\nconst SectionSubtitle = styled(Typography).attrs(p => ({\n color: 'textSecondary',\n variant: 'subtitle1',\n align: 'center',\n}))`\n && {\n margin-top: ${MARGIN / 6}rem;\n /* font-size: 1rem; */\n /* font-weight: 300; */\n }\n`\n\n// const ServicesSection = styled.div`\n// padding-top: ${MARGIN}rem;\n// padding-bottom: ${MARGIN}rem;\n\n// display: grid;\n// grid-gap: ${MARGIN}rem;\n// grid-template-columns: repeat(auto-fit, 250px);\n// justify-content: center;\n// `\n\nconst PlansSection = styled.div`\n padding: ${MARGIN}rem;\n padding-top: ${MARGIN}rem;\n display: grid;\n grid-gap: ${MARGIN * 2}rem;\n grid-template-columns: repeat(auto-fit, minmax(250px, min-content));\n justify-content: center;\n\n @media screen and (max-width: ${p => p.theme.sizes.tablet}) {\n min-height: unset;\n }\n`\n\nconst ServicesTemplate = ({ services, plans, children, ...props }) => (\n \n Пакеты\n Доступные вам пакеты услуг.\n {plans}\n\n {/* Услуги\n \n Услуги можно подключить по отдельности или внутри пакета.\n \n {services} */}\n {children}\n \n)\n\nexport default ServicesTemplate\n","import * as React from 'react'\nimport styled from 'styled-components'\nimport { Container, Button, Select } from 'sputnik-ui'\nimport { Typography, MenuItem } from '@material-ui/core'\n\nconst Wrapper = styled(Container)`\n display: flex;\n flex-direction: column;\n padding-top: 2rem;\n padding-bottom: 5rem; // issue #1109\n overflow-x: hidden;\n height: auto;\n`\n\nconst Tabs = styled.div`\n display: flex;\n margin-bottom: 1.5rem;\n margin-top: 1.5rem;\n`\nconst Nav = styled.div`\n display: flex;\n width: 100%;\n justify-content: space-between;\n align-items: center;\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n flex-direction: column;\n align-items: flex-start;\n }\n`\n\nconst ContentWrapper = styled.div`\n display: flex;\n @media screen and (max-width: 768px) {\n flex-direction: column;\n }\n`\n\nconst Children = styled.div`\n display: flex;\n flex: 1;\n flex-direction: column;\n /* margin-top: 1.5rem; */\n\n @media screen and (max-width: 768px) {\n margin-top: 2rem;\n order: 2;\n margin-right: 0;\n }\n`\n\nconst ButtonList = styled.div`\n display: flex;\n\n @media screen and (max-width: ${(p) => p.theme.sizes.phone}) {\n flex-direction: column;\n width: 100%;\n }\n`\n\nconst Aside = styled.aside`\n display: flex;\n flex-direction: column;\n margin-top: 3.2rem;\n & > *:not(:first-child) {\n margin-top: 2rem;\n }\n\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n display: none;\n }\n`\n\nconst CustomizationTemplate = ({\n title,\n tabs,\n children,\n aside,\n buttonsList,\n search,\n ...props\n}) => {\n return (\n \n {title}\n\n \n {search &&
{search}
}\n\n \n {children}\n \n \n
\n )\n}\n\nexport default CustomizationTemplate\n","import { useEffect, useRef } from 'react'\nimport styled from 'styled-components'\nimport { useFormik } from 'formik'\nimport { useDispatch, useSelector } from 'react-redux'\nimport { TextField, Typography, Button } from '@material-ui/core'\nimport { DeleteOutlineOutlined } from '@material-ui/icons'\nimport * as Yup from 'yup'\nimport { editCurrentProduct, removeCurrentProduct } from './customizationSlice'\nimport { Trans, useTranslation } from 'react-i18next'\n\nconst Wrapper = styled.div`\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n border-radius: 8px;\n`\nconst validationSchema = () =>\n Yup.object().shape({\n title: Yup.string().required('введите название'),\n price: Yup.number()\n .required('введите цену')\n .min(0, 'не может быть меньше 0'),\n link: Yup.string().url().required('неверный url'),\n description: Yup.string().required('введите описание'),\n })\n\nfunction CustomizationProductForm() {\n const dispatch = useDispatch()\n const scroll = useRef()\n const { t } = useTranslation(['customization', 'common'])\n const products = useSelector(\n ({ customization }) => customization.current?.products\n )\n const editMode = useSelector(({ customization }) => customization.editMode)\n useEffect(() => {\n if (!editMode) scroll.current.scrollIntoView()\n }, [])\n\n const handleDelete = () => {\n dispatch(removeCurrentProduct(products[0].id))\n }\n\n const { values, handleChange, errors, touched, handleBlur } = useFormik({\n initialValues: {\n ...products[0],\n },\n validationSchema: validationSchema,\n })\n\n const handleChangeState = (e) => {\n if (e?.target) {\n dispatch(\n editCurrentProduct({\n id: values.id,\n value: e.target.value,\n name: e.target.name,\n })\n )\n }\n }\n\n return (\n \n {products && (\n <>\n \n \n {t('customization:form.product.title')}\n \n\n \n \n {' '}\n {t('common:button.delete')}\n \n \n \n \n \n ]}\n />\n \n\n
event.preventDefault()}>\n
\n {\n handleChange(e)\n handleChangeState(e)\n }}\n margin=\"dense\"\n name=\"title\"\n style={{ marginBottom: '1rem' }}\n />\n {\n handleChange(e)\n handleChangeState(e)\n }}\n error={touched.price && !!errors.price}\n helperText={touched.price && errors.price}\n onBlur={handleBlur}\n name=\"price\"\n required\n margin=\"dense\"\n style={{ marginBottom: '1.5rem' }}\n />\n
\n {\n handleChange(e)\n handleChangeState(e)\n }}\n error={touched.link && !!errors.link}\n autoComplete=\"link\"\n helperText={touched.link && errors.link}\n onBlur={handleBlur}\n required\n margin=\"dense\"\n style={{ marginBottom: '1.5rem' }}\n />{' '}\n {\n handleChange(e)\n handleChangeState(e)\n }}\n error={touched.description && !!errors.description}\n helperText={touched.description && errors.description}\n onBlur={handleBlur}\n required\n margin=\"dense\"\n />\n
\n \n )}\n
\n )\n}\n\nconst styles = {\n btnDel: {\n color: '#FF0166',\n fontFamily: 'Futura PT',\n fontStyle: 'normal',\n fontWeight: '400',\n fontSize: '16px',\n lineHeight: '21px',\n textTransform: 'none',\n letterSpacing: 'normal',\n\n borderBottom: 'none',\n },\n form: {\n display: 'flex',\n width: '100%',\n flexDirection: 'column',\n alignItems: 'flex-start',\n height: '100%',\n },\n inlineContent: {\n width: '100%',\n display: 'grid',\n gridTemplateColumns: '1fr 1fr',\n columnGap: '2.5rem',\n },\n}\n\nexport default CustomizationProductForm\n","import { useRef, useState } from 'react'\nimport { makeStyles, useTheme, withStyles } from '@material-ui/core/styles'\nimport Box from '@material-ui/core/Box'\nimport TextField from '@material-ui/core/TextField'\nimport ButtonBase from '@material-ui/core/ButtonBase'\nimport { DescriptionOutlined } from '@material-ui/icons'\n\nconst COLOR = 'rgba(0, 0, 0, 0.54)' //#333\nconst COLOR_ERR = '#e91e63'\n\nconst FileInput = ({\n label,\n onChange,\n name,\n error,\n helperText,\n linkValue,\n required,\n}) => {\n const ref = useRef()\n const theme = useTheme()\n const classes = useStyles()\n const [attachment, setAttachment] = useState(null)\n\n const handleChange = (event) => {\n const files = Array.from(event.target.files)\n const [file] = files\n setAttachment(file)\n if (!!onChange) onChange({ target: { value: file, name: name } })\n }\n\n return (\n \n \n \n \n e.keyCode === 32 && ref.current?.click()}\n >\n \n \n \n \n )\n}\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n '& .Mui-error': {\n color: COLOR_ERR,\n },\n '& .MuiFormHelperText-root': {\n color: COLOR,\n },\n },\n field: {\n '& .Mui-error': {\n color: COLOR_ERR,\n },\n },\n button: {\n width: '100%',\n height: '100%',\n color: '#6E6D7A',\n overflow: 'hidden',\n border: 'none',\n \n },\n}))\n\nexport default FileInput\n","import { useEffect, useRef } from 'react'\nimport styled from 'styled-components'\nimport { TextField, Typography } from '@material-ui/core'\nimport { Button } from 'sputnik-ui'\nimport { DeleteOutlineOutlined } from '@material-ui/icons'\nimport FileInput from './FileInput'\nimport { useDispatch, useSelector } from 'react-redux'\nimport {\n editCurrentCredit,\n removeCurrentCredit,\n setErrCurrentCredit,\n} from './customizationSlice'\nimport * as Yup from 'yup'\nimport { useFormik } from 'formik'\nimport { showError } from 'features/ui/uiSlice'\nimport { useTranslation } from 'react-i18next'\n\nconst Wrapper = styled.div`\n margin-top: 2.5rem;\n`\nconst StyledForm = styled.form`\n display: flex;\n width: 100%;\n flex-direction: column;\n align-items: center;\n margin-bottom: 2.5rem;\n`\n\nconst StyledGrid = styled.div`\n width: 100%;\n display: grid;\n grid-template-columns: 1fr 1fr;\n column-gap: 2.5rem;\n margin-bottom: 1rem;\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n grid-template-columns: 1fr;\n }\n`\n\nconst SUPPORTED_FORMATS = ['image/jpg', 'image/jpeg', 'image/png']\nconst FILE_SIZE = 5e6\nconst phoneValidation = new RegExp(\n /^(\\+7|7|8)[\\s-]?\\(?[3489][0-9]{2}\\)?[\\s-]?[0-9]{3}[\\s-]?[0-9]{2}[\\s-]?[0-9]{2}$/\n)\nconst phoneValidationKz = new RegExp(/^\\+?77(\\d{9})$/)\nconst isValidOffsetImage = (value) => {\n const MIN_HEIGHT = 160\n const MIN_WIDTH = 160\n return new Promise((resolve) => {\n const offset = new Image()\n offset.src = value\n offset.onload = () => {\n return offset.width >= MIN_WIDTH && offset.height >= MIN_HEIGHT\n ? resolve(true)\n : resolve(false)\n }\n })\n}\n\nconst getBase64 = (file) => {\n return new Promise((resolve, reject) => {\n let baseURL = ''\n const reader = new FileReader()\n if (file) {\n reader.readAsDataURL(file)\n reader.onload = () => {\n baseURL = reader.result\n isValidOffsetImage(baseURL).then((el) =>\n el ? resolve(baseURL) : reject('Ошибка загрузки изображения')\n )\n }\n }\n })\n}\n\nconst isValidUrl = (url) => {\n try {\n new URL(url)\n } catch (e) {\n return url === 'http://' || url === '' || url === null || url === undefined\n }\n return true\n}\n\nconst validationSchema = () =>\n Yup.object().shape({\n title: Yup.string().required('введите название'),\n phone: Yup.string()\n .trim()\n .required('введите телефон')\n .test(\n 'phone',\n 'неверный формат',\n (value) => phoneValidation.test(value) || phoneValidationKz.test(value)\n ),\n website: Yup.string().test('is-url-valid', 'URL is not valid', (value) => {\n return isValidUrl(value)\n }),\n description: Yup.string().required('введите описание'),\n img: Yup.mixed()\n .test('fileSize', 'файл слишком большой', (value) => {\n if (isValidUrl(value)) {\n return true\n }\n return value && value.size <= FILE_SIZE\n })\n .test('fileFormat', 'неверный формат', (value) => {\n return value && SUPPORTED_FORMATS.includes(value.type)\n })\n .test('fileOffset', 'изображение слишком маленькое', (value) => {\n if (value) {\n return getBase64(value)\n .then((el) => el && true)\n .catch(() => false)\n }\n }),\n })\n\nfunction CustomizationForm({ card, index }, ...props) {\n const { t } = useTranslation(['customization', 'common'])\n const len = useSelector(\n ({ customization }) => customization.current?.credits.length\n )\n const editMode = useSelector(({ customization }) => customization.editMode)\n const dispatch = useDispatch()\n const firstRender = useRef(true)\n const scroll = useRef()\n const handleDelete = () => {\n dispatch(removeCurrentCredit(card.id))\n }\n\n const { values, handleChange, errors, touched, handleBlur } = useFormik({\n initialValues: {\n ...card,\n },\n validationSchema: validationSchema,\n })\n\n const handleFileInputChange = (e) => {\n let file = e.target.value\n return getBase64(file)\n .then((result) => {\n file['base64'] = result\n return result\n })\n .catch((err) => {\n dispatch(showError(err))\n })\n }\n\n const handleChangeState = async (e) => {\n if (e?.target) {\n const { value, name } = e?.target\n dispatch(\n editCurrentCredit({\n id: card.id,\n value: name === 'img' ? await handleFileInputChange(e) : value,\n name: name,\n })\n )\n }\n }\n\n useEffect(() => {\n if (firstRender.current) {\n firstRender.current = false\n return\n }\n dispatch(setErrCurrentCredit({ id: card.id, err: { ...errors } }))\n }, [errors])\n\n useEffect(() => {\n if (index > 0 && !editMode) scroll.current.scrollIntoView()\n }, [])\n\n return (\n \n \n \n {t('customization:form.credit.company')} {index + 1}\n \n {len > 1 ? (\n \n \n {' '}\n {t('common:button.delete')}\n \n \n \n ) : null}\n \n\n \n \n {\n handleChange(e)\n handleChangeState(e)\n }}\n error={touched.title && !!errors.title}\n helperText={touched.title && errors.title}\n onBlur={handleBlur}\n required\n margin=\"dense\"\n name=\"title\"\n />\n {\n handleChange(e)\n handleChangeState(e)\n }}\n type=\"tel\"\n error={touched.phone && !!errors.phone}\n helperText={touched.phone && errors.phone}\n onBlur={handleBlur}\n required\n margin=\"dense\"\n name=\"phone\"\n />\n \n\n \n
\n \n {\n handleChange(e)\n handleChangeState(e)\n }}\n />\n
\n\n \n (png или jpg, размер до 5Мб,\n
\n разрешение от 160 х 160 px)\n \n \n\n {\n handleChange(e)\n handleChangeState(e)\n }}\n error={touched.website && !!errors.website}\n helperText={touched.website && errors.website}\n onBlur={handleBlur}\n margin=\"dense\"\n name=\"website\"\n />\n
\n {\n handleChange(e)\n handleChangeState(e)\n }}\n error={touched.description && !!errors.description}\n helperText={touched.description && errors.description}\n onBlur={handleBlur}\n required\n margin=\"dense\"\n style={{ marginBottom: '1rem' }}\n name=\"description\"\n />\n
\n
\n )\n}\n\nconst styles = {\n btnDel: {\n color: '#FF0166',\n fontFamily: 'Futura PT',\n fontStyle: 'normal',\n fontWeight: '400',\n fontSize: '16px',\n lineHeight: '21px',\n textTransform: 'none',\n letterSpacing: 'normal',\n\n borderBottom: 'none',\n },\n form: {\n display: 'flex',\n width: '100%',\n flexDirection: 'column',\n alignItems: 'center',\n marginBottom: '2.5rem',\n },\n}\n\nexport default CustomizationForm\n","import React, { useEffect, useRef } from 'react'\nimport styled from 'styled-components'\nimport { Typography, Box } from '@material-ui/core'\nimport { Button } from 'sputnik-ui'\nimport CustomizationForm from './CustomizationForm'\nimport { useSelector, useDispatch } from 'react-redux'\nimport {\n addCreditToCurrent,\n addProductToCurrent,\n clearCurrent,\n customizationEditMode,\n editCurrentTitle,\n initCurrent,\n} from './customizationSlice'\nimport * as Yup from 'yup'\nimport { useFormik } from 'formik'\nimport { TextField } from '@material-ui/core'\nimport { useTranslation } from 'react-i18next'\n\nconst Wrapper = styled.div`\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n /* border: 1px solid #ededed; */\n width: 100%;\n border-radius: 8px;\n`\n\nconst validationSchema = () =>\n Yup.object().shape({\n title: Yup.string().required('введите название'),\n })\n\nfunction CustomizationForms({ ...props }) {\n const { t } = useTranslation(['customization'])\n const dispatch = useDispatch()\n const current = useSelector(({ customization }) => customization.current)\n const customizationTitle = useSelector(\n ({ customization }) => customization.current?.title\n )\n const credits = useSelector(\n ({ customization }) => customization.current?.credits\n )\n const products = useSelector(\n ({ customization }) => customization.current?.products\n )\n\n useEffect(() => {\n if (!current) {\n const data = {\n id: Math.random(),\n title: '',\n credits: [\n {\n id: Math.random(),\n title: '',\n description: '',\n phone: '',\n website: '',\n img: '',\n // err: { init: 'введите название' },\n },\n ],\n products: [],\n }\n dispatch(initCurrent(data))\n }\n\n return () => {\n dispatch(clearCurrent())\n dispatch(customizationEditMode({ editMode: false }))\n }\n }, [])\n\n const handleClickServices = () => {\n dispatch(addProductToCurrent())\n }\n\n const handleClick = () => {\n dispatch(addCreditToCurrent())\n }\n\n const { values, handleBlur, touched, errors, handleChange } = useFormik({\n initialValues: {\n title: customizationTitle,\n },\n validationSchema: validationSchema,\n })\n\n const handleChangeState = (e) => {\n if (e?.target) {\n dispatch(\n editCurrentTitle({\n id: current.id,\n value: e.target.value,\n name: e.target.name,\n })\n )\n }\n }\n\n return (\n \n
\n {\n handleChange(e)\n handleChangeState(e)\n }}\n error={touched.title && !!errors.title}\n helperText={touched.title && errors.title}\n onBlur={handleBlur}\n required\n name=\"title\"\n autoFocus\n placeholder={t('customization:form.placeholder')}\n />\n\n \n {t('customization:form.credit.info')}\n \n {credits &&\n credits?.map((el, key) => {\n return (\n <>\n {key > 0 ? (\n \n ) : null}\n \n \n )\n })}\n \n\n \n = 3}\n variant=\"v2\"\n secondary\n style={styles.btn}\n >\n {t('customization:button.add_credit')}\n \n 0}\n variant=\"v2\"\n secondary\n >\n {t('customization:button.add_product')}\n \n \n
\n )\n}\n\nconst styles = {\n btn: {\n marginRight: '1rem',\n },\n}\n\nexport default CustomizationForms\n","import { useEffect, useState } from 'react'\nimport { useSelector, useDispatch } from 'react-redux'\nimport { editSelectedEntries } from './customizationSlice'\nimport { Box, Typography } from '@material-ui/core'\nimport { showError } from 'features/ui/uiSlice'\nimport styled from 'styled-components'\nimport { Checkbox } from 'sputnik-ui'\n\nconst Wrapper = styled.div`\n display: grid;\n align-items: center;\n justify-items: start;\n grid-template-columns: repeat(2, 1fr);\n padding: 15px;\n border-bottom: 1px solid #ededed;\n`\n\nfunction CustomizationAddressItem({ children, uuid, connected }) {\n const dispatch = useDispatch()\n const selectedEntries = useSelector(\n ({ customization }) => customization.selectedEntries\n )\n const [checked, setCheсked] = useState(false)\n\n useEffect(() => {\n if (uuid && selectedEntries.includes(uuid)) {\n setCheсked(true)\n } else {\n setCheсked(false)\n }\n }, [uuid, selectedEntries])\n\n const handleChange = () => {\n const val = selectedEntries.filter((el) => el === uuid)\n if (val.length === 1) {\n setCheсked(false)\n const filtered = selectedEntries.filter((el) => el !== uuid)\n dispatch(editSelectedEntries({ selectedEntries: filtered }))\n } else if (val.length === 0) {\n setCheсked(true)\n dispatch(\n editSelectedEntries({ selectedEntries: [...selectedEntries, uuid] })\n )\n } else {\n dispatch(showError('Missing sync'))\n }\n }\n\n return (\n \n \n \n {children}\n \n\n
\n {connected || 'Шаблон не прикреплен'}\n
\n
\n )\n}\n\nexport default CustomizationAddressItem\n","import { Loader } from 'sputnik-ui'\nimport styled from 'styled-components'\n\nconst Wrapper = styled.div`\n position: absolute;\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n width: 100%;\n background: #ffffff55;\n z-index: 10;\n`\n\nfunction FetchingScreen() {\n return (\n \n \n \n )\n}\n\nexport default FetchingScreen","import { useEffect, useState } from 'react'\nimport { useSelector, useDispatch } from 'react-redux'\nimport { editSelectedEntries, clearSelectedEntries } from './customizationSlice'\nimport { Box, Typography } from '@material-ui/core'\nimport styled from 'styled-components'\nimport { Checkbox } from 'sputnik-ui'\n\nconst Wrapper = styled.div`\n display: grid;\n align-items: center;\n justify-items: start;\n grid-template-columns: repeat(2, 1fr);\n padding: 15px;\n border-bottom: 1px solid #ededed;\n`\n\nfunction CustomizationAddressChooseAll({\n children,\n list,\n handleSelectAll,\n isSelected,\n}) {\n const dispatch = useDispatch()\n const selectedEntries = useSelector(\n ({ customization }) => customization.selectedEntries\n )\n useEffect(() => {\n if (list?.length > 0) {\n const chooseAll = list.map((el) => el.uuid)\n const checker = (arr, target) => target.every((v) => arr.includes(v))\n handleSelectAll(checker(selectedEntries, chooseAll))\n }\n }, [list])\n\n const handleChange = () => {\n if (!isSelected) {\n const chooseAll = list.map((el) => el.uuid)\n handleSelectAll(true)\n dispatch(\n editSelectedEntries({\n selectedEntries: [...new Set([...selectedEntries, ...chooseAll])],\n })\n )\n } else {\n handleSelectAll(false)\n dispatch(clearSelectedEntries())\n }\n }\n\n return (\n \n \n \n {children}\n \n \n )\n}\n\nexport default CustomizationAddressChooseAll\n","import React, { useEffect, useState, useRef } from 'react'\nimport { useDebouncedCallback } from 'use-debounce'\nimport { useDispatch, useSelector } from 'react-redux'\nimport styled from 'styled-components'\nimport {\n Table,\n TableRow,\n TableBody,\n Typography,\n TablePagination,\n} from '@material-ui/core'\nimport { Loader } from 'sputnik-ui'\nimport {\n clearSelectedEntries,\n fetchCustomizationAddresses,\n setCustomizationFetching,\n} from './customizationSlice'\nimport CustomizationAddressItem from './CustomizationAddressItem'\nimport FetchingScreen from 'components/atoms/FetchingScreen'\nimport CustomizationAddressChooseAll from './CustomizationAddressChooseAll'\nimport { useTranslation } from 'react-i18next'\n\nconst StyledTableRow = styled(TableRow)`\n && {\n cursor: pointer;\n &:hover {\n background-color: rgba(\n ${(p) =>\n p.status === 'error'\n ? '255,0,0'\n : p.status === 'success'\n ? '0,255,0'\n : '0,0,0'},\n 0.07\n );\n }\n }\n`\n\nfunction CustomizationAddressList(\n { addressParams, handleChangeAddressParams },\n ...props\n) {\n const { t } = useTranslation(['customization', 'messages'])\n const dispatch = useDispatch()\n const list = useSelector(\n ({ customization }) => customization.addresses?.addresses\n )\n const isFetching = useSelector(\n ({ customization }) => customization.isFetching\n )\n const meta = useSelector(({ customization }) => customization.addresses?.meta)\n const pending = useSelector(({ customization }) => customization.pending)\n const firstUpdate = useRef(true)\n const [allSelected, setAllSelected] = useState(false)\n\n useEffect(() => {\n dispatch(fetchCustomizationAddresses({ ...addressParams }))\n return () => {\n dispatch(clearSelectedEntries())\n }\n }, [])\n\n const handleSelectAll = (val) => {\n setAllSelected(val)\n }\n\n useEffect(() => {\n if (firstUpdate.current) {\n //useRef ignore first render isFectching control\n firstUpdate.current = false\n return\n }\n if (addressParams.page < 0) {\n handleChangeAddressParams({ ...addressParams, page: 0 })\n }\n\n handleSelectAll(false)\n dispatch(setCustomizationFetching({ isFetching: true }))\n rerender()\n }, [addressParams])\n\n const rerender = useDebouncedCallback(\n () => dispatch(fetchCustomizationAddresses({ ...addressParams })),\n 300\n )\n return (\n
\n {pending && !isFetching ? (\n \n ) : (\n \n {isFetching && }\n {list?.length > 0 ? (\n \n <>\n \n {t('customization:address.info')}\n \n \n Обратите внимание, что данный функционал временно не\n поддерживается на адресах, где есть 2+ домофонов и/или\n калитка.\n \n \n \n {t('customization:address.select_all')}\n \n \n {list.map((el) => (\n \n \n {el.address}\n \n \n ))}\n \n \n `${from}-${to} из ${count}`\n }\n onChangePage={(e, page) => {\n handleChangeAddressParams({ ...addressParams, page: page })\n }}\n onChangeRowsPerPage={(e) => {\n handleChangeAddressParams({\n ...addressParams,\n limit: e.target.value,\n })\n }}\n style={{ background: 'white' }}\n />\n \n ) : (\n \n {t('messages:content.empty')}\n \n )}\n
\n )}\n
\n )\n}\nconst styles = {\n table: {\n maxWidth: '100%',\n whiteSpace: 'nowrap',\n overflowX: 'auto',\n },\n}\n\nexport default CustomizationAddressList\n","import { AnimatePresence, motion } from 'framer-motion'\nimport { useEffect } from 'react'\nconst phonePartner = '/images/phonePartner.png'\nconst phoneServices = '/images/phoneServices.png'\nfunction CustomizationPhone({ picture }) {\n return (\n
\n \n {picture ? (\n \n \"company\"\n \n ) : (\n \n \"service\"\n \n )}\n \n
\n )\n}\nexport default CustomizationPhone\n","import { useState, useRef } from 'react'\nimport { motion } from 'framer-motion'\nimport styled from 'styled-components'\nimport { useEffect } from 'react'\n\nconst ToggleWrapper = styled.div`\n/* $loadingTime: 10s;\n$color: rgb(255, 0, 0); */\n display: flex;\n flex-wrap: nowrap;\n align-items: center;\n position: relative;\n overflow: hidden;\n /* padding: 20px; */\n color: #6d6d6d;\n user-select: none;\n border-radius: 20px;\n background-color: #ededed;\n cursor: pointer;\n`\n//#0EA7FF, 100 %\nconst Label = styled.div`\n /* position: absolute; */\n padding: 14px 0px;\n width: 50%;\n text-align: center;\n z-index: 1;\n /* width: 200px;\n border: 1px solid $color; \n \n &:after {\n padding-left: 20px;\n content: \"0%\";\n display: block;\n text-align: center;\n animation: percentage $loadingTime linear infinite;\n } */\n \n`\n// $color\nfunction Toggle({ initStatus, label1, label2, value, onClick, ...props }) {\n const [isActive, setActive] = useState(initStatus || false)\n// const animTime\n\n const handleClick = () => {\n setActive(!isActive)\n }\n useEffect(() => {\n setActive(value)\n }, [value])\n\n return (\n \n \n \n \n \n )\n}\n\nconst style = {\n animated: {\n display: 'flex',\n alignItems: 'center',\n position: 'absolute',\n width: '50%',\n height: '100%',\n borderRadius: 20,\n background: '#0EA7FF',\n },\n}\nexport default Toggle\n","import { Typography } from '@material-ui/core'\nimport styled from 'styled-components'\nimport { NavLink } from 'react-router-dom'\n\nconst Tab = styled(Typography).attrs((p) => ({\n color: 'textSecondary',\n activeStyle: {\n color: p.theme.palette.text.primary,\n },\n component: NavLink,\n}))`\n text-decoration: none;\n &:not(:last-child) {\n margin-right: 2rem;\n }\n`\nfunction TabItem({ children, exact, to, ...props }) {\n return (\n \n {children}\n \n )\n}\n\nexport default TabItem\n","import { Typography } from '@material-ui/core'\nimport { useTranslation } from 'react-i18next'\nimport styled from 'styled-components'\n\nconst Wrapper = styled.div`\n padding: 10px 0;\n`\nconst Content = styled.div`\n display: flex;\n align-items: center;\n @media screen and (max-width: ${(p) => p.theme.sizes.phone}) {\n flex-direction: column;\n align-items: flex-start;\n flex-direction: row;\n flex-wrap: wrap;\n }\n`\nconst Image = styled.img`\n height: 44px;\n width: 44px;\n border: 1px solid rgba(0, 0, 0, 0.06);\n border-radius: 8px;\n margin-right: 15px;\n`\nconst Column = styled.div`\n margin-right: 74px;\n display: flex;\n height: 100%;\n flex-direction: column;\n justify-content: space-between;\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n margin-bottom: 10px;\n }\n`\nconst TypographyBold = styled(Typography)`\n && {\n font-weight: 600;\n }\n`\nconst Title = styled(Typography)`\n && {\n font-size: 14px;\n margin-bottom: 1rem;\n }\n`\nconst Website = styled.a`\n text-decoration: none;\n color: #0ea7ff;\n font-weight: 500;\n line-height: 1.5;\n`\nconst Price = styled(Typography)`\n && {\n margin-left: auto;\n font-size: 1.5rem;\n }\n`\nconst Line = styled.hr`\n margin: 0;\n margin-top: 10px;\n padding: 0;\n border: 1px solid #ededed;\n`\n\nfunction ViewItem({ credit, index, service }) {\n const { title, phone, img, website, description, link, price } = credit\n const { t } = useTranslation('customization')\n return (\n \n \n {service\n ? t('customization:card.service')\n : t('customization:card.company')}{' '}\n #{index + 1}\n \n \n \n \n {title}\n \n {link || website}\n \n \n \n \n {service ? t('customization:card.about_company') : phone}\n \n {description}\n \n {service && {price} ₽}\n \n \n \n )\n}\n\nexport default ViewItem\n","import { useDispatch, useSelector } from 'react-redux'\nimport styled from 'styled-components'\nimport ViewItem from './ViewItem'\nimport { Typography } from '@material-ui/core'\nimport { customizationEditMode, editSelectedCredit } from './customizationSlice'\nimport { useHistory } from 'react-router-dom'\nimport { useTranslation } from 'react-i18next'\n\nconst Card = styled.div`\n display: flex;\n flex-direction: column;\n border: 1px solid #ededed;\n padding: 20px;\n border-radius: 20px;\n margin-bottom: 24px;\n`\nconst Head = styled.div`\n display: flex;\n justify-content: space-between;\n align-items: center;\n`\n\nconst Edit = styled(Typography)`\n && {\n color: #0ea7ff;\n cursor: pointer;\n }\n`\n\nfunction Patterns() {\nconst {t}= useTranslation(['customization'])\n\n const dispatch = useDispatch()\n const history = useHistory()\n const list = useSelector(({ customization }) => customization.list)\n\n const handleEdit = (id) => {\n dispatch(customizationEditMode({ editMode: true }))\n dispatch(editSelectedCredit({ id }))\n history.push('/customization/create')\n }\n\n return (\n
\n \n {t('customization:your_templates')}\n \n\n {list &&\n list.map((el) => (\n \n \n {el.title}\n handleEdit(el.id)}> {t('customization:button.edit_template')}\n \n\n {el.credits.map((e, i) => (\n \n ))}\n {el.products.map((e, i) => (\n \n ))}\n \n ))}\n
\n )\n}\n\nexport default Patterns\n","import { useState, useCallback } from 'react'\nimport { useDispatch, useSelector } from 'react-redux'\nimport {\n Dialog,\n DialogContent,\n DialogActions,\n Zoom,\n Typography,\n Accordion,\n AccordionSummary,\n AccordionDetails,\n RadioGroup,\n Box,\n} from '@material-ui/core/'\nimport { Button, Radio } from 'sputnik-ui'\nimport styled from 'styled-components'\nimport ViewItem from './ViewItem'\nimport { ExpandMore } from '@material-ui/icons'\nimport {\n clearSelectedEntries,\n connectToCustomization,\n fetchCustomizationAddresses,\n fetchCustomizations,\n} from './customizationSlice'\nimport { useTranslation } from 'react-i18next'\n\nconst StyledDialogContent = styled(DialogContent)`\n height: 60vh;\n width: 100%;\n border-radius: 60px;\n @media screen and (max-width: ${(p) => p.theme.sizes.phone}) {\n height: 70vh;\n }\n`\nconst StyledAccordion = styled(Accordion)`\n &&& {\n box-shadow: none;\n border: none;\n }\n`\nconst Card = styled.div`\n display: flex;\n flex-direction: column;\n width: 100%;\n`\nfunction Transition(props) {\n return \n}\n\nfunction CustomizationModal({\n isOpen,\n handleClose,\n addressParams,\n setAddressParams,\n}) {\n const { t } = useTranslation(['common', 'customization'])\n const dispatch = useDispatch()\n const list = useSelector(({ customization }) => customization.list)\n const selectedEntries = useSelector(\n ({ customization }) => customization.selectedEntries\n )\n\n const [selected, setSelected] = useState(null) //id\n const [expanded, setExpanded] = useState(null)\n const [loading, setLoading] = useState(false)\n\n const handleChange = (panel) => (event, newExpanded) => {\n setExpanded(newExpanded ? panel : false)\n }\n\n const handleSelect = (id) => {\n setSelected(id)\n }\n\n const handleSubmit = useCallback(() => {\n setLoading(true)\n const { entries_uuids } = list.find((el) => el?.id === selected) //must be array\n dispatch(\n connectToCustomization({\n selected,\n selectedEntries: [...entries_uuids, ...selectedEntries],\n })\n )\n .then(() => dispatch(fetchCustomizationAddresses({ ...addressParams })))\n .then(() => dispatch(fetchCustomizations()))\n .then(() => dispatch(clearSelectedEntries()))\n .then(() => setLoading(false))\n .then(() => handleClose())\n }, [dispatch, handleClose, selected, selectedEntries, list, addressParams])\n\n return (\n !loading && handleClose()}\n TransitionComponent={Transition}\n PaperProps={{\n style: { borderRadius: 20 },\n }}\n >\n \n \n {list &&\n list.map((el) => {\n const index = el.id\n return (\n handleSelect(index)}\n >\n }\n >\n \n \n {el.title}\n \n \n \n \n {el?.credits.map((credit, creditIndex) => {\n const creditID = credit.id\n return (\n \n )\n })}\n {el?.products.map((product, productIndex) => {\n const productID = product.id\n return (\n \n )\n })}\n \n \n \n )\n })}\n \n \n \n \n !loading && handleClose()}\n >\n {t('common:button.cancel')}\n \n \n \n \n \n )\n}\n\nexport default CustomizationModal\n","import { useDispatch, useSelector } from 'react-redux'\nimport { useState } from 'react'\nimport {\n Dialog,\n DialogContent,\n DialogActions,\n Zoom,\n Typography,\n} from '@material-ui/core/'\nimport { Button } from 'sputnik-ui'\nimport styled from 'styled-components'\nimport {\n clearSelectedEntries,\n connectToCustomization,\n fetchCustomizationAddresses,\n fetchCustomizations,\n} from './customizationSlice'\n\nconst StyledDialogContent = styled(DialogContent)`\n width: 100%;\n`\n\nfunction Transition(props) {\n return \n}\n\nfunction CustomizationUnLinkModal({ isOpen, handleClose, addressParams }) {\n const [loading, setLoading] = useState(false)\n const dispatch = useDispatch()\n const addresses = useSelector(\n ({ customization }) => customization?.addresses?.addresses\n )\n const selectedEntries = useSelector(\n ({ customization }) => customization.selectedEntries\n )\n\n const handleClick = () => {\n setLoading(true)\n // todo: fix algorithm; break logic\n const arr = addresses.filter((el) => {\n if (el?.customization) return el\n }) //get all with cuz\n\n const queues = arr.map((el) => {\n const { id } = el.customization\n const newEntries = el.customization.entries_uuids.filter((entry) => {\n if (!selectedEntries.includes(entry)) return entry\n })\n return dispatch(\n connectToCustomization({ selected: id, selectedEntries: newEntries })\n )\n })\n Promise.all(queues)\n .then(() => dispatch(fetchCustomizationAddresses({ ...addressParams })))\n .then(() => dispatch(fetchCustomizations()))\n .then(() => dispatch(clearSelectedEntries()))\n .then(() => setLoading(false))\n .then(() => handleClose())\n }\n\n return (\n !loading && handleClose()}\n TransitionComponent={Transition}\n PaperProps={{\n style: { borderRadius: 12 },\n }}\n >\n \n \n Уверены, что хотите\n
открепить шаблоны?\n \n
\n \n \n \n \n \n \n \n )\n}\n\nexport default CustomizationUnLinkModal\n","import styled from 'styled-components'\nimport { Checkbox } from 'sputnik-ui'\nimport { Typography } from '@material-ui/core'\nimport { useDispatch } from 'react-redux'\nimport { fetchCustomizationAddresses } from './customizationSlice'\nimport { useCallback, useEffect, useRef, useState } from 'react'\nimport { useTranslation } from 'react-i18next'\n\nconst FilterBlock = styled.div`\n position: absolute;\n top: 120%;\n right: 0%;\n display: flex;\n padding: 20px;\n flex-direction: column;\n width: 227px;\n background: #ffffff;\n box-shadow: 0px 12px 24px rgba(0, 0, 0, 0.06);\n border-radius: 20px;\n z-index: 1;\n`\nconst Row = styled.div`\n display: flex;\n align-items: center;\n`\n\nfunction CustomizationFilterBlock({\n isOpen,\n addressParams,\n handleChangeAddressParams,\n}) {\n const { t } = useTranslation('customization')\n const didMountRef = useRef(false)\n const [withPatterns, setWithPatterns] = useState(false)\n const [withoutPatterns, setWithoutPatterns] = useState(false)\n const dispatch = useDispatch()\n\n useEffect(() => {\n if (didMountRef.current) {\n let status\n if (withPatterns && withoutPatterns) {\n status = null\n } else if (withPatterns) {\n status = true\n } else if (withoutPatterns) {\n status = false\n } else {\n status = null\n }\n dispatch(\n fetchCustomizationAddresses({\n ...addressParams,\n with_customization: status,\n })\n )\n handleChangeAddressParams({\n ...addressParams,\n with_customization: status,\n })\n } else {\n didMountRef.current = true\n }\n }, [withPatterns, withoutPatterns])\n\n return (\n <>\n {isOpen && (\n \n \n {\n setWithPatterns(!withPatterns)\n }}\n />\n {t('customization:filter.with_templates')}\n \n \n {\n setWithoutPatterns(!withoutPatterns)\n }}\n />\n \n {t('customization:filter.without_templates')}\n \n \n \n )}\n \n )\n}\n\nexport default CustomizationFilterBlock\n","import { useEffect, useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { Button, Loader, Select } from 'sputnik-ui'\nimport { Route, Switch, useHistory } from 'react-router-dom'\nimport { useDispatch, useSelector } from 'react-redux'\nimport { useTransition, animated } from 'react-spring'\nimport styled from 'styled-components'\nimport CustomizationTemplate from 'features/Customization/CustomizationTemplate'\nimport CustomizationProductForm from 'features/Customization/CustomizationProductForm'\nimport CustomizationForms from 'features/Customization/CustomizationForms'\nimport CustomizationAddressList from 'features/Customization/CustomizationAddressList'\nimport CustomizationPhone from 'features/Customization/CustomizationPhone'\nimport Toggle from 'components/atoms/Toggle'\nimport Tab from 'components/atoms/TabItem'\nimport Patterns from 'features/Customization/Patterns'\nimport {\n fetchCustomizations,\n createCustomization,\n editCustomization,\n} from 'features/Customization/customizationSlice'\nimport CustomizationModal from 'features/Customization/CustomizationModal'\nimport CustomizationUnLinkModal from 'features/Customization/CustomizationUnLinkModal'\nimport CustomizationFilterBlock from 'features/Customization/CustomizationFilterBlock'\nimport { showError } from 'features/ui/uiSlice'\nimport { unwrapResult } from '@reduxjs/toolkit'\nimport AccessError from 'components/atoms/AccessError'\n\nconst StyledButton = styled(Button)`\n &&& {\n display: flex;\n margin-right: 1rem;\n white-space: nowrap;\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n margin-bottom: 1rem;\n width: 100%;\n }\n @media screen and (max-width: ${(p) => p.theme.sizes.phone}) {\n margin-right: 0;\n }\n }\n`\n\nfunction CustomizationPage({ match, location, ...props }) {\n const { t } = useTranslation(['customization'])\n const dispatch = useDispatch()\n const history = useHistory()\n const [subscribePro, setSubscribePro] = useState(null)\n const patternsList = useSelector(({ customization }) => customization.list)\n const addresses = useSelector(({ customization }) => customization.addresses)\n const [openModal, setOpenModal] = useState(false)\n const [openUnLinkModal, setOpenUnLinkModal] = useState(false)\n const [loading, setLoading] = useState(false)\n const [picture, setPicture] = useState(true)\n const [filterWindow, setFilterWindow] = useState(false)\n const [addressParams, setAddressParams] = useState({\n page: 0,\n limit: 10,\n with_customization: null,\n search: '',\n })\n\n const selectedEntries = useSelector(\n ({ customization }) => customization.selectedEntries\n )\n\n const current = useSelector(({ customization }) => customization.current)\n const isEditMode = useSelector(({ customization }) => customization.editMode)\n const pending = useSelector(({ customization }) => customization.pending)\n const fieldsErr =\n !!current?.credits\n ?.map((el) => el?.err)\n ?.filter((el) => {\n return el !== null && el !== undefined\n })?.length > 0\n\n useEffect(() => {\n dispatch(fetchCustomizations())\n .then(unwrapResult)\n .then(() => {\n setSubscribePro(true)\n })\n .catch((el) => {\n if (el.status === 403) {\n setSubscribePro(false)\n }\n })\n }, [])\n\n const fadeLeft = useTransition(true, null, {\n from: { opacity: 0, transform: 'translate3d(450px,0,0)' },\n leave: { opacity: 0, transform: 'translate3d(450px,0,0)' },\n enter: { opacity: 1, transform: 'translate3d(0,0,0)' },\n })\n\n const fadeRight = useTransition(location, (location) => location.pathname, {\n from: { opacity: 0, transform: 'translate3d(-250px,0,0)' },\n leave: {\n display: 'none',\n },\n enter: { opacity: 1, transform: 'translate3d(0,0,0)' },\n })\n\n const handleSave = async () => {\n let checkpointReached = false\n setLoading(true)\n try {\n let slice\n if (isEditMode) {\n slice = await dispatch(editCustomization(current))\n } else {\n slice = await dispatch(createCustomization(current))\n }\n if (slice?.meta?.rejectedWithValue) throw new Error('error')\n } catch (error) {\n checkpointReached = true\n } finally {\n await dispatch(fetchCustomizations())\n setLoading(false)\n if (!checkpointReached) !pending && history.push('/customization')\n }\n }\n\n const selectedAddressesWithCuz = addresses?.addresses.filter(\n (el) => el?.customization && selectedEntries.includes(el.uuid)\n )\n const handleChangeAddressParams = (params) => {\n setAddressParams(params)\n }\n\n const handleOpenModal = () => {\n if (patternsList?.length && !selectedAddressesWithCuz?.length) {\n setOpenModal(true)\n } else if (!patternsList?.length) {\n dispatch(showError('У вас нет шаблонов'))\n } else if (selectedAddressesWithCuz?.length) {\n dispatch(showError('Сначала открепите старый шаблон'))\n } else {\n dispatch(showError('Error'))\n }\n }\n const handleCloseModal = () => {\n setOpenModal(false)\n }\n\n const handleOpenUnLinkModal = () => {\n selectedAddressesWithCuz?.length\n ? setOpenUnLinkModal(true)\n : dispatch(showError('На этих адресах шаблонов нет'))\n }\n const handleCloseUnLinkModal = () => {\n setOpenUnLinkModal(false)\n }\n\n const toggleFilter = () => {\n setFilterWindow(!filterWindow)\n }\n\n const handleSearchAddress = (q) => {\n setAddressParams({ ...addressParams, search: q })\n }\n\n if (typeof subscribePro === 'boolean' && !subscribePro && !pending) {\n return \n }\n\n return (\n \n \n {t('customization:tabs.patterns')}\n \n \n {t('customization:tabs.addresses')}\n \n \n }\n title={t('customization:title')}\n buttonsList={\n <>\n {location.pathname === '/customization/address' ? (\n <>\n 0}\n >\n {t('customization:button.unlink_template')}\n \n 0}\n >\n {t('customization:button.connect_template')}\n \n
\n \n \n \n \n
\n \n ) : location.pathname === '/customization/create' ? (\n el === false)\n }\n onClick={handleSave}\n >\n {t('customization:button.save_template')} {loading && '...'}\n \n ) : (\n history.push('/customization/create')}\n >\n {t('customization:button.create_template')}\n \n )}\n \n }\n search={\n location.pathname === '/customization/address' && (\n null}\n placeholder={'Введите адрес'}\n isMulti={false}\n onInputChange={(value, action) => {\n if (action.action === 'input-change') handleSearchAddress(value)\n }}\n />\n )\n }\n aside={\n <>\n {location.pathname !== '/customization/address' ? (\n
\n \n
\n setPicture(!picture)}\n />\n
\n
\n ) : null}\n \n }\n >\n \n \n {fadeRight.map(({ item, props, key }) => (\n \n \n \n (\n \n )}\n />\n (\n
\n \n {current?.products?.length > 0 ? (\n \n ) : null}\n
\n )}\n />\n
\n
\n ))}\n \n )\n}\n\nexport default CustomizationPage\n","export default __webpack_public_path__ + \"static/media/cam.d1a3ff20.png\";","export default __webpack_public_path__ + \"static/media/sputnik.ff221b40.png\";","import { useState } from 'react'\n\nconst useHover = () => {\n const [hovered, set] = useState(false)\n return {\n hovered,\n bind: {\n onMouseEnter: () => set(true),\n onMouseLeave: () => set(false),\n },\n }\n}\n\nexport default useHover\n","import React, { useCallback } from 'react'\nimport styled from 'styled-components'\nimport { formatDeviceId } from 'sputnik-ui'\nimport {\n List,\n ListItem,\n ListItemIcon,\n ListItemText,\n Checkbox,\n Tooltip,\n ListItemSecondaryAction,\n} from '@material-ui/core'\nimport { Power, PowerOff, FileCopy } from '@material-ui/icons'\nimport cam from './cam.png'\nimport intercom from './sputnik.png'\nimport { Link } from 'react-router-dom'\nimport { toggleSelect } from 'store/devicesSlice'\nimport { useSelector, useDispatch } from 'react-redux'\n// import { ReactComponent as Archive3 } from 'features/Services/archive-3.svg'\n// import { ReactComponent as Archive5 } from 'features/Services/archive-5.svg'\n// import { ReactComponent as Archive7 } from 'features/Services/archive-7.svg'\nimport { ReactComponent as FaceRec } from 'features/Services/face_rec.svg'\nimport { useTranslation } from 'react-i18next'\nimport { copyToClipboard } from 'utils/helpers'\nimport { showInfo } from 'features/ui/uiSlice'\nimport useHover from 'hooks/useHover'\nimport { Archive3, Archive5, Archive7, Archive14, Archive30, IconColors } from 'sputnik-icons'\n\nconst OnlineIcon = styled(Power)`\n color: ${(p) => p.theme.palette.success[500]};\n font-size: 0.825rem;\n margin-left: 0.325rem;\n`\nconst OfflineIcon = styled(PowerOff)`\n color: ${(p) => p.theme.palette.error[500]};\n font-size: 0.825rem;\n margin-left: 0.325rem;\n`\n\nconst styles = {\n icon: {\n fontSize: '0.625rem',\n marginRight: '.325rem',\n width: 14,\n height: 14,\n },\n}\n\nconst serviceIcons = {\n archive_3: ,\n archive_5: ,\n archive_7: ,\n archive_14: ,\n archive_30: ,\n face_rec: ,\n}\n\nexport default function Device({\n address,\n serial_number,\n services_count,\n services_sum,\n is_online,\n motherboard_id,\n uuid,\n type,\n service_partner,\n services,\n address_type,\n}) {\n const dispatch = useDispatch()\n const selected = useSelector(({ devices }) => uuid in devices.selected)\n const handleToggle = useCallback(\n (e) => {\n e.stopPropagation()\n dispatch(\n toggleSelect({\n address,\n serial_number,\n services_count,\n services_sum,\n is_online,\n motherboard_id,\n uuid,\n type,\n service_partner,\n services,\n })\n )\n },\n [uuid]\n )\n const { t } = useTranslation(['service', 'device'])\n const { hovered, bind } = useHover()\n\n return (\n \n \n \n \n \n \n \n\n \n {type === 'camera' ? serial_number : formatDeviceId(serial_number)}\n {address_type === 'gate' ? ` [ ${t('device:gate')} ]` : null}\n {hovered && (\n {\n e.preventDefault()\n e.stopPropagation()\n copyToClipboard(serial_number)\n dispatch(showInfo('Номер домофона был скопирован в буфер обмена'))\n }}\n />\n )}\n \n }\n secondary={\n <>\n {typeof is_online === 'boolean' && (\n \n {is_online ? (\n \n ) : (\n \n )}\n \n )}\n {services?.map((identifier) => {\n const Component = serviceIcons[identifier]\n\n return <>{Component}\n })}\n {`${address || 'Не установлена'}\n ${service_partner ? ` · Обслуживается «${service_partner}»` : ''}`}\n \n }\n secondaryTypographyProps={{\n style: {\n display: 'flex',\n alignItems: 'center',\n },\n }}\n >\n \n \n \n \n )\n}\n","import styled from 'styled-components'\n\nexport default styled.div`\n position: absolute;\n z-index: 2;\n background-color: rgba(255, 255, 255, 0.7);\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n`\n","import React, { useState, useEffect, useCallback } from 'react'\nimport { Button, Select, Loader } from 'sputnik-ui'\nimport { connect, useDispatch, useSelector } from 'react-redux'\nimport { useParams } from 'react-router-dom'\nimport Dialog from '@material-ui/core/Dialog'\nimport DialogActions from '@material-ui/core/DialogActions'\nimport DialogContent from '@material-ui/core/DialogContent'\nimport DialogTitle from '@material-ui/core/DialogTitle'\nimport Zoom from '@material-ui/core/Zoom'\n\nimport {\n getservicePartners,\n linkDevice,\n getIntercomsByAddress,\n getCamerasByAddress,\n} from 'store/operations'\nimport { useTranslation } from 'react-i18next'\nimport {\n fetchPartners,\n reassignDevices,\n} from 'store/service_partnersOld/operations'\n\nimport { fetchDevice, fetchDevices } from 'store/devicesSlice'\nimport { FullscreenDialogTitle } from 'sputnik-ui'\nimport { FullscreenExitButton } from 'sputnik-ui'\nimport { List } from '@material-ui/core'\nimport { ListItem } from '@material-ui/core'\nimport { ListItemText } from '@material-ui/core'\nimport Device from 'features/Devices/Device'\nimport { fetchServices } from 'store/services/operations'\nimport Overlay from 'components/atoms/Overlay'\n\nfunction Transition(props) {\n return \n}\n\nexport default function AddServiceButchModal({\n onClose,\n device,\n open,\n ...props\n}) {\n const dispatch = useDispatch()\n const { device: deviceUuid } = useParams()\n\n const handleSubmit = useCallback(() => {}, [])\n\n const { t } = useTranslation(['common', 'service'])\n\n const selectedDevices = useSelector(({ devices }) =>\n Object.values(devices.selected)\n )\n const services = useSelector(({ services }) => services.list)\n\n React.useEffect(() => {\n dispatch(fetchServices())\n }, [dispatch])\n\n const [selectedService, setSelectedService] = React.useState(false)\n\n return (\n \n \n \n {t('service:actions.add_services_butch')}\n \n \n
\n
\n \n {selectedDevices?.map((d) => (\n \n ))}\n \n \n
\n \n {[{}, {}, {}].map((s) => (\n \n \n \n ))}\n \n
\n
\n\n \n \n {t('common:button:confirm')}\n \n \n
\n )\n}\n","import React, { useCallback } from 'react'\nimport {\n List,\n ListItem,\n ListItemText,\n ListItemIcon,\n Checkbox,\n Typography,\n ListItemSecondaryAction,\n Tooltip,\n} from '@material-ui/core'\nimport { useSelector, useDispatch } from 'react-redux'\nimport {\n toggleAllDevices,\n selectNumSelected,\n selectTotalServicesSum,\n} from 'store/devicesSlice'\nimport { IconButton } from '@material-ui/core'\nimport { GroupWork } from '@material-ui/icons'\nimport { CloudDownload, SubdirectoryArrowRight, Add } from '@material-ui/icons'\nimport { useTranslation } from 'react-i18next'\nimport styled, { css } from 'styled-components'\nimport { Container } from 'sputnik-ui'\nimport AddServicesButch from 'features/Services/AddServicesButch'\n\nconst Body = styled(List)`\n && {\n background-color: ${(p) =>\n p.active ? p.theme.palette.other.green : 'rgba(255, 255, 255, 0.4)'};\n z-index: 3;\n padding: 0;\n box-shadow: rgba(0, 0, 0, 0.2) 0px 13px 20px -24px;\n backdrop-filter: blur(20px) saturate(180%);\n min-height: 66px;\n }\n`\n\nexport default function DevicesToolbar({ toggleReassignModal, ...props }) {\n const dispatch = useDispatch()\n\n const devices = useSelector(({ devices }) => devices.devices)\n const total = useSelector(({ devices }) => devices.total)\n const selected = useSelector(({ devices }) => devices.selected)\n const numSelected = useSelector(selectNumSelected)\n const totalServicesSum = useSelector(selectTotalServicesSum)\n\n const handleSelectAll = useCallback(() => {\n dispatch(toggleAllDevices())\n }, [])\n\n const { t } = useTranslation(['service'])\n\n const [addServicesButch, setAddServicesButch] = React.useState()\n\n return (\n 0} style={{ position: 'sticky', top: 0 }}>\n \n \n \n 0}\n checked={numSelected === total}\n onChange={handleSelectAll}\n color=\"primary\"\n />\n \n\n {numSelected > 0 ? (\n <>\n \n Выбрано {numSelected} устройств:\n \n {/* \n \n */}\n {/* \n \n */}\n \n \n \n \n \n \n setAddServicesButch(true)}\n >\n \n \n \n \n ) : (\n \n )}\n \n {numSelected > 0 ? (\n \n {totalServicesSum} ₽ в месяц\n \n ) : (\n \n стоимость услуг\n \n )}\n \n \n \n setAddServicesButch(false)}\n open={addServicesButch}\n />\n \n )\n}\n","import React from 'react'\nimport styled from 'styled-components'\nimport { ChevronLeft, ChevronRight } from '@material-ui/icons'\nimport { Typography, IconButton, ListItemText } from '@material-ui/core'\nimport { useSelector, useDispatch } from 'react-redux'\nimport { Container } from 'sputnik-ui'\nimport { incPage, decPage } from 'store/devicesSlice'\n\nconst Body = styled.div`\n && {\n position: sticky;\n bottom: 0;\n display: flex;\n align-items: center;\n\n backdrop-filter: blur(20px) saturate(180%);\n background: rgba(255, 255, 255, 0.4);\n border-top: 1px solid ${(p) => p.theme.palette.background.secondary};\n z-index: 3;\n padding: 0;\n\n /* box-shadow: rgba(0,0,0,0.1) 0px -13px 20px -14px; */\n }\n`\n\nexport default function DevicesBottombar() {\n const dispatch = useDispatch()\n const total = useSelector(({ devices }) => devices.total)\n const totalSum = useSelector(({ devices }) => devices.totalSum)\n const pages = useSelector(({ devices }) => devices.pages)\n const page = useSelector(({ devices }) => devices.page)\n\n return (\n \n \n dispatch(decPage())} disabled={page === 1}>\n \n \n dispatch(incPage())}\n disabled={page === pages}\n >\n \n \n \n {totalSum && total && (\n <>\n \n за {total} устройств\n \n \n {totalSum} ₽\n \n \n )}\n \n {/* */}\n \n \n )\n}\n","import styled from 'styled-components'\n\nconst FiltersWrapper = styled.div`\n && {\n display: flex;\n background: ${(p) => p.theme.palette.background.primary};\n overflow: visible;\n flex-wrap: wrap;\n & > * {\n margin-right: 1rem;\n margin-bottom: 0.625rem;\n }\n &::-webkit-scrollbar {\n height: 1px;\n background-color: transparent;\n }\n &::-webkit-scrollbar-track {\n background-color: transparent;\n }\n &::-webkit-scrollbar-thumb {\n background-color: rgb(192, 192, 192);\n }\n }\n`\n\nexport default FiltersWrapper\n","import React from 'react'\nimport styled, { css } from 'styled-components'\nimport { Typography } from '@material-ui/core'\n\nconst ifColor = css`\n background: ${(p) => p.theme.palette.other[p.color]};\n color: ${(p) => p.theme.palette.other[p.color + 'Dark']};\n border-color: ${(p) => p.theme.palette.other[p.color]};\n\n &:hover {\n background: ${(p) => p.theme.palette.other[p.color]};\n }\n`\n\nconst FilterText = styled(Typography)`\n && {\n display: inline-flex;\n padding: 0.125rem 0.325rem;\n cursor: pointer;\n border: 1px dashed ${(p) => p.theme.palette.text.secondary};\n border-radius: 8px;\n justify-content: center;\n align-items: center;\n white-space: nowrap;\n\n transition-property: background-color, border-color;\n transition-duration: 0.25s;\n transition-timing-function: ease;\n will-change: background-color, border-color;\n\n color: ${(p) => p.theme.palette.text.secondary};\n\n &:hover,\n &:focus,\n &:active {\n background: ${(p) => p.theme.palette.grayscale[2]};\n }\n ${(p) =>\n p.selected &&\n css`\n background: ${(p) => p.theme.palette.primary[500]};\n color: ${(p) => p.theme.palette.primary.contrastText};\n border-color: ${(p) => p.theme.palette.primary[500]};\n\n &:hover {\n background: ${(p) => p.theme.palette.primary[500]};\n }\n\n ${(p) => p.color && ifColor}\n `}\n }\n`\n\nconst Count = styled(Typography)`\n && {\n margin-left: 0.325rem;\n border-radius: 50%;\n background-color: ${(p) =>\n p.selected ? 'rgba(255, 255, 255, 0.7)' : 'rgba(0, 0, 0, 0.05)'};\n padding: 0.325rem;\n line-height: 1.125rem;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n }\n`\n\nfunction FilterButton({ children, count, selected, ...props }) {\n return (\n \n {children}\n {count && {count}}\n \n )\n}\n\nexport default FilterButton\n","import React from 'react'\nimport {\n List,\n ListItem,\n ListItemIcon,\n ListItemText,\n Checkbox,\n Tooltip,\n ListItemSecondaryAction,\n} from '@material-ui/core'\nimport Skeleton from 'react-loading-skeleton'\n\nexport default function DevicePlaceholder({ ...props }) {\n return (\n \n \n \n \n \n \n \n }\n secondary={}\n >\n \n )\n}\n\n// ;\n","import React, { useEffect, useState, useCallback } from 'react'\nimport { List, Typography, IconButton, ListItem } from '@material-ui/core'\nimport { useSelector, useDispatch } from 'react-redux'\nimport { Search, Container, useInput, Select } from 'sputnik-ui'\nimport Skeleton from 'react-loading-skeleton'\n\nimport Device from './Device'\nimport DevicesToolbar from './DevicesToolbar'\nimport DevicesBottombar from './DevicesBottombar'\nimport FiltersWrapper from 'components/atoms/FiltersWrapper'\nimport FilterButton from 'components/atoms/FilterButton'\n// import Select from 'components/atoms/Select'\nimport DevicePlaceholder from './DevicePlaceholder'\n\nimport { fetchDevices, clearDevices, setSearch } from 'store/devicesSlice'\nimport { fetchLocalities, setLocalityFilter } from 'store/localitiesSlice'\nimport {\n fetchServicePartners,\n setServicePartnerFilter,\n} from 'store/servicePartnersSlice'\nimport ReassignIntercomModal from 'components/organisms/ReassignIntercomModal'\nimport { useTranslation } from 'react-i18next'\nimport styled from 'styled-components'\nimport { useDebouncedCallback } from 'use-debounce'\n\nconst StyledSelectContainer = styled.div`\n width: 250px;\n @media screen and (max-width: ${(p) => p.theme.sizes.phone}) {\n width: 100%;\n }\n`\n\nexport default function DevicesList() {\n const dispatch = useDispatch()\n const { limit, page, search, total, devices } = useSelector(\n ({ devices }) => ({\n devices: devices.list,\n limit: devices.limit,\n page: devices.page,\n search: devices.search,\n total: devices.total,\n }),\n )\n const { t } = useTranslation('device')\n const localities = useSelector(({ localities }) => localities.list)\n const localityFilter = useSelector(({ localities }) => localities.filter)\n\n const servicePartners = useSelector(\n ({ servicePartners }) => servicePartners.list,\n )\n const servicePartnerFilter = useSelector(\n ({ servicePartners }) => servicePartners.filter,\n )\n\n const { bind, value } = useInput(search)\n useEffect(() => {\n dispatch(setSearch(value))\n }, [value])\n\n const fetchDevicesDebounce = useDebouncedCallback(\n () =>\n dispatch(\n fetchDevices({\n page,\n limit,\n locality_uuid: localityFilter.value,\n service_partner_uuid: servicePartnerFilter.value,\n search,\n }),\n ),\n 250,\n )\n\n useEffect(() => {\n fetchDevicesDebounce()\n return () => dispatch(clearDevices())\n }, [\n page,\n limit,\n search,\n localityFilter.value,\n servicePartnerFilter.value,\n dispatch,\n fetchDevicesDebounce,\n ])\n\n useEffect(() => {\n dispatch(fetchLocalities())\n dispatch(fetchServicePartners())\n }, [devices])\n\n const [reassignModal, setReassignModal] = useState(false)\n const toggleReassignModal = () => setReassignModal(!reassignModal)\n\n return (\n <>\n \n \n \n \n {\n dispatch(setLocalityFilter(o))\n }}>\n \n \n {\n dispatch(setServicePartnerFilter(o))\n }}>\n \n {/* \n Камеры\n Домофоны */}\n {/* \n Вы можете создать свою группировку, выбрав устройства и объединив их\n в группу.\n */}\n \n \n \n \n \n {devices\n ? devices.map((d, idx) => )\n : [...Array(limit).keys()].map(() => )}\n \n \n \n \n \n )\n}\n","import React, { useState, useEffect } from 'react'\r\nimport { DevicesTable, DeviceDetails, DevicesTemplate } from 'components'\r\nimport { Search, Button, Container } from 'sputnik-ui'\r\nimport { useDispatch } from 'react-redux'\r\nimport { Typography } from '@material-ui/core'\r\n\r\nimport { AddAlert, Settings, Poll } from '@material-ui/icons'\r\nimport ym from 'react-yandex-metrika'\r\nimport InvitePartnerModal from 'components/organisms/InvitePartnerModal'\r\nimport { PersonAdd } from '@material-ui/icons'\r\n\r\nimport DevicesList from 'features/Devices/DevicesList'\r\nimport CompanyServices from 'features/Services/CompanyServices'\r\nimport { useTranslation } from 'react-i18next'\r\nimport InviteUKModal from 'components/organisms/InviteUKModal'\r\nimport EditUKModal from 'components/organisms/EditUKModal'\r\n\r\nconst styles = {\r\n icon: { marginRight: 8, height: 28 },\r\n}\r\n\r\nfunction DevicesPage() {\r\n const dispatch = useDispatch()\r\n const { t } = useTranslation('device')\r\n\r\n const [invitePartnerModal, setInvitePartnerModal] = useState()\r\n const [inviteUKModal, setInviteUKModal] = useState(false)\r\n const [editUKModal, setEditUKModal] = useState(false)\r\n return (\r\n \r\n setInvitePartnerModal(true)}\r\n variant=\"text\"\r\n >\r\n \r\n {t('device:tabs.invite_partner')}\r\n \r\n setInviteUKModal(true)}\r\n variant=\"text\"\r\n >\r\n \r\n Пригласить УК\r\n \r\n \r\n ym('reachGoal', 'partner_devices_controlClick')}\r\n variant=\"text\"\r\n >\r\n \r\n {t('device:tabs.control_panel')}\r\n \r\n\r\n ym('reachGoal', 'partner_devices_newNotification')}\r\n variant=\"text\"\r\n >\r\n \r\n {t('device:tabs.social_info')}\r\n \r\n\r\n ym('reachGoal', 'partner_devices_newPoll')}\r\n variant=\"text\"\r\n >\r\n \r\n {t('device:tabs.create_poll')}\r\n \r\n \r\n }\r\n >\r\n \r\n {/* */}\r\n \r\n {t('device:your_devices')}\r\n \r\n \r\n\r\n {/* */}\r\n \r\n \r\n\r\n setInvitePartnerModal(false)}\r\n />\r\n setInviteUKModal(false)} />\r\n setEditUKModal(false)} />\r\n \r\n )\r\n}\r\n\r\nexport default DevicesPage\r\n","import camelCase from 'lodash/camelCase'\nimport { combineReducers } from 'redux'\nimport devices from './devicesSlice'\nimport localities from './localitiesSlice'\nimport servicePartners from './servicePartnersSlice'\nimport ui from 'features/ui/uiSlice'\nimport servicesNew from 'features/Services/servicesSlice'\nimport analytics from 'features/analytics/analyticsSlice'\nimport roadmap from '../features/RoadMap/RoadMapSlice'\nimport customization from 'features/Customization/customizationSlice'\nimport { permissionsReducer } from './permissions/slice'\nimport { addressesReducer } from './addresses/addressesSlice'\n\nconst reducers = {\n devices,\n localities,\n servicePartners,\n ui,\n servicesNew,\n analytics,\n roadmap,\n customization,\n permissions: permissionsReducer,\n addresses: addressesReducer,\n}\n\nconst req = require.context('.', true, /\\.\\/.+\\/reducers\\.js$/)\n\nreq.keys().forEach((key) => {\n const storeName = camelCase(key.replace(/\\.\\/(.+)\\/.+$/, '$1'))\n reducers[storeName] = req(key).default\n})\n\nexport default combineReducers(reducers)\n","import { createStore, applyMiddleware, compose } from 'redux'\nimport rootReducer from './reducers'\nimport thunk from 'redux-thunk'\nimport throttle from 'lodash/throttle'\nimport { loadState, saveState } from 'sputnik-ui'\nimport { configureStore } from '@reduxjs/toolkit'\n\n// const middleware = [thunk]\n\n// const composeEnhancers =\n// typeof window === 'object' && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__\n// ? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({\n// // Specify extension’s options like name, actionsBlacklist, actionsCreators, serialize...\n// })\n// : compose\n\n// const enhancer = composeEnhancers(\n// applyMiddleware(...middleware)\n// // other store enhancers if any\n// )\n\n// const persistedState = loadState()\n\n// const store = createStore(rootReducer, persistedState, enhancer)\n\nconst store = configureStore({\n reducer: rootReducer,\n preloadedState: loadState(),\n})\n\nstore.subscribe(throttle(() => saveState(store.getState()), 1000))\n\nexport default store\n","// In production, we register a service worker to serve assets from local cache.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on the \"N+1\" visit to a page, since previously\n// cached resources are updated in the background.\n\n// To learn more about the benefits of this model, read https://goo.gl/KwvDNy.\n// This link also includes instructions on opting out of this behavior.\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.1/8 is considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n)\n\nexport default function register(showUpdateToast) {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location)\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebookincubator/create-react-app/issues/2374\n return\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`\n\n if (isLocalhost) {\n // This is running on localhost. Lets check if a service worker still exists or not.\n checkValidServiceWorker(swUrl)\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n 'This web app is being served cache-first by a service ' +\n 'worker. To learn more, visit https://goo.gl/SC7cgQ'\n )\n })\n } else {\n // Is not local host. Just register service worker\n registerValidSW(swUrl, showUpdateToast)\n }\n })\n }\n}\n\nfunction registerValidSW(swUrl, showUpdateToast) {\n navigator.serviceWorker\n .register(swUrl)\n .then((registration) => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing\n const waitingServiceWorker = registration.waiting\n\n const handleRefresh = () => {\n showUpdateToast(() => {\n window.location.reload()\n })\n }\n\n if (waitingServiceWorker) {\n waitingServiceWorker.addEventListener('statechange', (event) => {\n if (event.target.state === 'activated') {\n window.location.reload()\n }\n })\n installingWorker.postMessage({ type: 'SKIP_WAITING' })\n\n handleRefresh()\n }\n\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the old content will have been purged and\n // the fresh content will have been added to the cache.\n // It's the perfect time to display a \"New content is\n // available; please refresh.\" message in your web app.\n console.log('New content is available; please refresh.')\n installingWorker.postMessage({ type: 'SKIP_WAITING' })\n\n handleRefresh()\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.')\n }\n }\n }\n }\n })\n .catch((error) => {\n console.error('Error during service worker registration:', error)\n })\n}\n\nfunction checkValidServiceWorker(swUrl) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl)\n .then((response) => {\n // Ensure service worker exists, and that we really are getting a JS file.\n if (\n response.status === 404 ||\n response.headers.get('content-type').indexOf('javascript') === -1\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then((registration) => {\n registration.unregister().then(() => {\n window.location.reload()\n })\n })\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl)\n }\n })\n .catch(() => {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n )\n })\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready.then((registration) => {\n registration.unregister()\n })\n }\n}\n","import { DialogTitle } from '@material-ui/core'\nimport { Dialog } from '@material-ui/core'\nimport AddBillingAccountForm from 'components/organisms/BillingAccountForm'\nimport BillingAccountInfo from 'components/organisms/BillingAccountInfo'\nimport React, { useEffect, useState } from 'react'\nimport { useSelector } from 'react-redux'\n\nexport default function BillingAccountModal({ ...props }) {\n const billingAccount = useSelector(({ billing }) => billing.account)\n\n const [open, setOpen] = useState(false)\n\n useEffect(() => {\n if (billingAccount) {\n const notFilled =\n !billingAccount?.company_name ||\n billingAccount?.company_name === '' ||\n !billingAccount?.phone_number ||\n billingAccount?.phone_number === ''\n\n // console.log(notFilled, billingAccount)\n setOpen(notFilled)\n }\n }, [billingAccount])\n\n return (\n \n Пожалуйста, заполните платежную информацию\n \n \n )\n}\n","import { DialogTitle } from '@material-ui/core'\nimport { DialogActions } from '@material-ui/core'\nimport { Dialog, DialogContent } from '@material-ui/core'\nimport config from 'config'\nimport React, { useCallback, useEffect, useState } from 'react'\nimport { useSelector } from 'react-redux'\nimport { Button } from 'sputnik-ui'\nimport Api from 'utils/api'\n\nexport default function LicenseModal({ ...props }) {\n const companyUuid = useSelector(({ auth }) => auth.user?.company.uuid)\n const [open, setOpen] = useState(false)\n const [pending, setPending] = useState(false)\n\n useEffect(() => {\n if (companyUuid) {\n ;(async () => {\n const status = await Api.request(`/partners/companies/${companyUuid}`)\n .license_agreement_accepted\n setOpen(status === false)\n })()\n }\n }, [companyUuid])\n\n const handleClick = useCallback(() => {\n ;(async () => {\n setPending(true)\n try {\n await Api.request(`/partners/companies/${companyUuid}`, {\n method: 'PATCH',\n body: JSON.stringify({ license_agreement_accepted: true }),\n })\n setOpen(false)\n } catch (error) {\n } finally {\n setPending(false)\n }\n })()\n }, [companyUuid])\n\n return (\n \n У нас обновилось лицензионное соглашение!\n \n Нажимая \"Присоединиться\" и продолжая использование аккаунта, вы\n подтверждаете присоединение к{' '}\n \n лицензионному соглашению\n {' '}\n в обновленной редакции.\n \n \n \n \n \n )\n}\n\n/*\n\nPATCH /api/v1/partners/companies/:uuid\n{\"license_agreement_accepted\": true}\n\n*/\n","import React, { useState, useEffect, useCallback } from 'react'\nimport { useDispatch, useSelector } from 'react-redux'\nimport { Formik, Form } from 'formik'\nimport { useTranslation } from 'react-i18next'\nimport { Button } from 'sputnik-ui'\nimport {\n Dialog,\n DialogContent,\n DialogTitle,\n DialogActions,\n Checkbox,\n FormControlLabel,\n Zoom,\n} from '@material-ui/core'\nimport { Link, useLocation } from 'react-router-dom'\nimport { acceptPartnerProgram, fetchUserCompany } from 'store/auth/operations'\n\nconst Transition = (props) => {\n return \n}\n\nfunction AcceptProgramModal({ isOpen }) {\n const { t } = useTranslation('partner')\n const location = useLocation()\n const dispatch = useDispatch()\n const programStatus = useSelector(\n ({ auth }) => auth?.company?.partners_program_accepted\n )\n const [open, setOpen] = useState(false)\n const [pending, setPending] = useState(false)\n\n useEffect(() => {\n if (!programStatus && programStatus !== undefined) {\n setOpen(true)\n }\n }, [programStatus])\n useEffect(() => {\n if (\n location.pathname === '/partner_program' &&\n !programStatus &&\n programStatus !== undefined\n ) {\n setOpen(true)\n }\n }, [location.pathname, programStatus])\n\n const handleClose = () => {\n setOpen(false)\n }\n\n const handleSubmit = useCallback(() => {\n ;(async () => {\n setPending(true)\n try {\n await dispatch(acceptPartnerProgram())\n setOpen(false)\n } catch (error) {\n } finally {\n dispatch(fetchUserCompany())\n setPending(false)\n }\n })()\n }, [programStatus])\n\n return (\n \n \n {({ values, setValues }) => (\n
\n {t('partner:modal.title')}\n \n setValues({ accepted: !values.accepted })}\n />\n }\n label={\n \n {t('partner:modal.accept')}{' '}\n \n {t('partner:modal.link')}\n \n \n }\n />\n \n \n \n \n Присоединиться {pending && '...'}\n \n \n \n )}\n \n \n )\n}\n\nconst styles = {\n checkboxWrapper: {\n marginTop: '.625rem',\n marginLeft: '-16px',\n userSelect: 'none',\n },\n}\n\nexport default AcceptProgramModal\n","//@flow\n//$FlowFixMe\nimport React, { useEffect, Suspense, useCallback } from 'react'\n\nimport { Navbar, Toast, Loader, Intercom, Tabs } from 'sputnik-ui'\nimport { connect } from 'react-redux'\nimport { Switch, Route, Link, withRouter, Redirect } from 'react-router-dom'\nimport { AppTemplate } from 'components'\nimport requireAuth from 'utils/requireAuth'\nimport { Tab, Tooltip, IconButton, Typography } from '@material-ui/core'\nimport { Update } from '@material-ui/icons'\nimport styled from 'styled-components'\nimport type { Location } from 'react-router-dom'\n\nimport { clear, showError, showMessage } from 'features/ui/uiSlice'\nimport { fetchBillingAccount } from 'store/billing/operations'\nimport { useTranslation } from 'react-i18next'\nimport BillingAccountModal from 'features/billing/BillingAccountModal'\nimport LicenseModal from 'features/auth/LicenseModal'\nimport PartnerProgramPage from 'components/pages/PartnerProgramPage'\nimport AcceptProgramModal from 'features/PartnerProgram/AcceptProgramModal'\nimport { AcceptLicenseModal } from 'components/organisms/AcceptLicenseModal'\nimport { fetchStatisticPartnerProgram, fetchUserCompany } from 'store/auth/operations'\n\n\nconst DevicesPage = React.lazy(() => import('./components/pages/DevicesPage'))\nconst ServicesPage = React.lazy(() => import('./components/pages/ServicesPage'))\nconst BillingPage = React.lazy(() => import('./components/pages/BillingPage'))\nconst BuyPage = React.lazy(() => import('./components/pages/BuyPage'))\nconst AccountsPage = React.lazy(() => import('./components/pages/AccountsPage'))\nconst AccountPage = React.lazy(() => import('./components/pages/AccountPage'))\nconst CustomizationPage = React.lazy(() =>\n import('./components/pages/CustomizationPage')\n)\nconst AnalyticsPage = React.lazy(() =>\n import('./components/pages/AnalyticsPage/index')\n)\nconst RoadmapPage = React.lazy(() =>\n import('./components/pages/RoadmapPage.jsx')\n)\n\nconst re = /\\/[^/]*/g // until 2nd occurence of /\n\nconst Wrap = styled.div`\n background: ${(p) => p.theme.palette.secondary.main};\n height: 40px;\n display: flex;\n justify-content: center;\n align-items: center;\n flex-wrap: wrap;\n font-size: 0.875rem;\n @media screen and (max-width: ${(p) => p.theme.sizes.phone}) {\n padding: 3%;\n height: auto;\n }\n`\n\nfunction App({\n location,\n msg,\n info,\n error,\n dispatch,\n updateAction,\n balance,\n ...props\n}: Props) {\n const { t } = useTranslation(['common', 'notifications'])\n const tabs = [\n {\n label: t('common:menu.buy'),\n to: '/products',\n disabled: true,\n },\n {\n label: t('common:menu.devices'),\n to: '/devices',\n },\n {\n label: t('common:menu.billing'),\n to: '/billing',\n },\n {\n label: t('common:menu.accounts'),\n to: '/accounts',\n },\n {\n label: t('common:menu.customization'),\n to: '/customization',\n },\n {\n label: t('common:menu.analytics'),\n to: '/analytics',\n },\n {\n label: t('common:menu.partner_program'),\n to: '/partner_program',\n },\n ]\n const regexMatch = location.pathname.match(re)\n const namespace = regexMatch && regexMatch[0]\n\n useEffect(() => {\n // AOS.init({\n // duration: 600,\n // })\n dispatch(fetchUserCompany())\n dispatch(fetchStatisticPartnerProgram())\n dispatch(fetchBillingAccount())\n }, [dispatch])\n\n useEffect(() => {\n if (balance < 0) {\n dispatch(showError(t('notifications:statuses.negative_balance')))\n }\n }, [])\n\n const copySome = (e) => {\n const el = document.createElement('textarea')\n el.value = e\n document.body && document.body.appendChild(el)\n el.select()\n document.execCommand('copy')\n document.body && document.body.removeChild(el)\n dispatch(showMessage('Номер ЛК скопирован в буфер обмена'))\n }\n\n console.log('start') // todo remove\n\n return (\n \n \n {props.userBalance}\n \n \n }\n >\n \n {tabs.map((tab) => (\n \n dispatch(\n showError('Раздел обновляется и временно недоступен')\n )\n : null\n }\n />\n ))}\n \n \n }\n >\n {/* \n Оцените приоритетность\n \n релизов\n \n
для вашей компании
\n
(cписок может обновляться)
\n
*/}\n }>\n \n \n \n {/* */}\n \n \n {/* */}\n \n \n \n \n \n {/* */}\n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n }\n onClick={updateAction}\n >\n
\n {t('common:toast.new_version')}\n\n \n {t('common:button.click_to_update')}\n \n
\n \n dispatch(clear())}>\n {info}\n \n dispatch(clear())}\n >\n {msg}\n \n dispatch(clear())}\n >\n {error}\n \n \n )\n}\n\ntype ReduxProps = {\n msg: ?string,\n error: ?string,\n searchQuery: string,\n userBalance: ?string,\n}\n\ntype Props = ReduxProps & {\n dispatch: Function,\n location: Location,\n}\n\nconst mapStateToProps = ({\n services,\n billing,\n devices,\n products,\n auth,\n users,\n servicePartnersOld,\n ui,\n}): ReduxProps => ({\n msg:\n services.msg ||\n billing.msg ||\n products.msg ||\n users.msg ||\n servicePartnersOld.msg ||\n ui.msg,\n error:\n auth.error||\n services.error ||\n billing.error ||\n products.error ||\n users.error ||\n servicePartnersOld.error ||\n ui.error,\n info: ui.info,\n searchQuery: devices.query,\n userBalance: billing.account && billing.account.balance_with_currency,\n balance: billing.account && billing.account.balance,\n updateAction: ui.updateAction,\n})\n\nexport default withRouter(requireAuth(connect(mapStateToProps)(App)))\n\n{\n /* \nПройдите{' '}\n\n опрос\n\nна график релиза новых функций\n */\n}\n","import React, { useEffect } from 'react'\nimport { connect } from 'react-redux'\nimport { checkAuth } from 'store/auth/operations'\nimport { Loader } from 'sputnik-ui'\n\nexport default function requireAuth(C) {\n function Authentication({ dispatch, isLoggedIn, ...props }) {\n useEffect(() => {\n dispatch(checkAuth())\n }, [dispatch])\n\n if (!isLoggedIn) {\n return \n }\n\n return \n }\n\n const mapStateToProps = ({ auth }) => ({\n isLoggedIn: auth.isLoggedIn,\n })\n\n return connect(mapStateToProps)(Authentication)\n}\n","//@flow\nimport * as React from 'react'\nimport ReactDOM from 'react-dom'\nimport { theme, i18n, Loader, ThemeProvider, Metrika } from 'sputnik-ui'\nimport { Provider } from 'react-redux'\nimport store from 'store/store'\n\nimport { BrowserRouter } from 'react-router-dom'\nimport { unregister } from './serviceWorker'\nimport App from './App'\nimport { I18nextProvider } from 'react-i18next'\nimport { showUpdateMessage } from 'features/ui/uiSlice'\nimport dayjs from 'dayjs'\nimport calendar from 'dayjs/plugin/calendar'\nimport updateLocale from 'dayjs/plugin/updateLocale'\nimport 'dayjs/locale/ru'\n\ndayjs.extend(calendar)\ndayjs.extend(updateLocale)\n\ndayjs.locale('ru')\n\ndayjs.updateLocale('ru', {\n calendar: {\n sameDay: '[Сегодня]',\n nextDay: 'Завтра',\n lastDay: 'Вчера',\n nextWeek: 'DD MMMM',\n lastWeek: 'DD MMMM',\n sameElse: 'DD MMMM',\n },\n monthsShort: [\n \"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\",\n \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"\n ]\n})\n\nconst Root = (): React.Node => (\n \n \n \n \n }>\n \n \n \n \n \n \n \n)\n\nconst node = document.getElementById('root')\n\nif (node === null) {\n throw new Error('no node element')\n}\n\nReactDOM.render(, node)\n\n// const showUpdateToast = (action) => store.dispatch(showUpdateMessage(action))\n// registerServiceWorker(showUpdateToast)\nunregister()\n","var _path;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : 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; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgSputnik(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 1.01L7 1C5.9 1 5 1.9 5 3V21C5 22.1 5.9 23 7 23H17C18.1 23 19 22.1 19 21V3C19 1.9 18.1 1.01 17 1.01ZM17 17.002C17 17.6685 17 18.3345 17 19C17 19.6655 16.6687 20.005 16.0062 20.0184H8.01393C7.33798 20.005 7 19.6655 7 19C7 18.3345 7 17.6685 7 17.002V8.02431C7.00051 7.3515 7.33849 7.0151 8.01393 7.0151C8.97526 7.0151 9.82467 7.0151 11.0739 7.0151C12.0801 7.0151 12 6.62251 12 6.02935C12 5.43618 12 4.51615 12 4.00473C12 3.00365 12.6117 3.01734 12.9993 3.01734C13.1138 3.01734 14.7834 3.01734 16.0062 3.01734C16.6687 3.01734 17 3.34647 17 4.00473V17.002Z\"\n })));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgSputnik);\nexport default __webpack_public_path__ + \"static/media/Sputnik.3110cbb6.svg\";\nexport { ForwardRef as ReactComponent };","export default [\n {\n id: 'serial_number',\n numeric: false,\n disablePadding: false,\n label: 'устройство',\n },\n {\n id: 'service_partner_name',\n numeric: false,\n disablePadding: false,\n label: 'сервис-партнер',\n },\n\n {\n id: 'is_online',\n numeric: false,\n disablePadding: false,\n label: 'статус подключения',\n },\n {\n id: 'installed',\n numeric: false,\n disablePadding: false,\n label: 'статус установки',\n },\n {\n id: 'services_count',\n numeric: false,\n disablePadding: false,\n label: 'подключенных услуг',\n },\n]\n","import React from 'react'\nimport PropTypes from 'prop-types'\nimport columnData from './columnData'\n\nimport {\n TableSortLabel,\n TableHead,\n TableCell,\n TableRow,\n Tooltip,\n withStyles,\n Checkbox,\n} from '@material-ui/core'\n\nimport { RoomService, Power, GpsNotFixed } from '@material-ui/icons'\n\nimport { ReactComponent as Sputnik } from './Sputnik.svg'\nimport { Build } from '@material-ui/icons'\n\nconst styles = theme => ({\n cell: {\n // backgroundColor: theme.palette.primary['main'],\n },\n label: {\n // color: 'white',\n // '&:focus': {\n // color: 'white',\n // },\n // '&:hover': {\n // color: 'white',\n // },\n '& svg': {\n fill: 'currentColor',\n marginRight: '.625rem',\n },\n },\n})\n\nclass DevicesTableHead extends React.Component {\n createSortHandler = property => event => {\n this.props.handleSortRequest(event, property)\n }\n\n render() {\n const {\n orderBy,\n sortBy,\n classes,\n selected,\n devices,\n handleSelectAll,\n } = this.props\n\n const rowCount = (devices && devices.length) || 0\n\n return (\n \n \n \n 0 && selected.length < rowCount}\n checked={selected.length === rowCount && rowCount > 0}\n onChange={handleSelectAll}\n color=\"primary\"\n />\n \n {columnData.map(column => {\n const active = sortBy === column.id\n return (\n \n \n \n {column.id === 'serial_number' && }\n {column.id === 'service_partner_name' && }\n {column.id === 'services_count' && }\n {column.id === 'is_online' && }\n {column.id === 'installed' && }\n\n {column.label}\n \n \n \n )\n })}\n \n \n )\n }\n}\n\nDevicesTableHead.propTypes = {\n handleSortRequest: PropTypes.func.isRequired,\n orderBy: PropTypes.string.isRequired,\n sortBy: PropTypes.string.isRequired,\n rowCount: PropTypes.number.isRequired,\n}\n\nexport default withStyles(styles)(DevicesTableHead)\n","import React from 'react'\nimport range from 'lodash/range'\nimport styled from 'styled-components'\nimport { Checkbox, TableBody, TableRow, TableCell } from '@material-ui/core'\nimport Skeleton from 'react-loading-skeleton'\n\nimport { Power, PowerOff, GpsFixed, GpsOff } from '@material-ui/icons'\n\nconst PowerOn = styled(Power)`\n color: ${p => p.theme.palette.success['500']};\n`\n// const OfflineIcon = styled\n\nexport default props => (\n \n {props.devices\n ? props.devices\n // .sort(props.getSorting(props.order, props.orderBy))\n .map(row => {\n const isSelected = props.selected.includes(row.duuid)\n\n return (\n \n props.history.push(`${props.match.url}/${row.duuid}/`)\n }\n style={{ cursor: 'pointer' }}\n >\n \n {\n e.stopPropagation()\n props.handleSelect(e, row.duuid, isSelected)\n }}\n />\n \n \n {row.serial_number}\n \n \n {row.service_partner_name}\n \n\n \n
\n {row.is_online ? (\n \n ) : (\n \n )}\n\n {row.is_online ? 'онлайн' : 'оффлайн'}\n
\n
\n \n
\n {row.installed ? (\n \n ) : (\n \n )}\n {row.installed ? 'установлено' : 'не установлено'}\n
\n
\n \n {row.services_count}\n \n \n )\n })\n : range(props.rowsPerPage).map(key => (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ))}\n
\n)\n\nconst styles = {\n icon: {\n width: '0.8125rem',\n height: '0.8125rem',\n marginRight: 8,\n },\n}\n","import React from 'react'\nimport TablePagination from '@material-ui/core/TablePagination'\nimport styled from 'styled-components'\n\nconst Pagination = styled(TablePagination)`\n position: fixed;\n bottom: 0;\n left: 0;\n right: 0;\n background: ${p => p.theme.palette.background.secondary};\n box-shadow: 0 -10px 20px rgba(0, 0, 0, 0.1);\n display: flex;\n justify-content: flex-start;\n`\n\nexport default props => (\n `${from}-${to} из ${count}`}\n onChangePage={props.handleChangePage}\n onChangeRowsPerPage={props.handleChangeRowsPerPage}\n />\n)\n","import React from 'react'\nimport { Toolbar, Typography, Tooltip, IconButton } from '@material-ui/core'\nimport styled, { css } from 'styled-components'\nimport { SubdirectoryArrowRight } from '@material-ui/icons'\nimport { useTranslation } from 'react-i18next'\n\nconst StyledToolbar = styled(Toolbar)`\n padding-right: 1rem;\n border-radius: 8px;\n ${p =>\n p.numSelected > 0 &&\n css`\n background-color: ${p => p.theme.palette.other.green};\n `}\n`\nconst Actions = styled.div`\n display: flex;\n color: ${p => p.theme.palette.text.primary};\n align-items: center;\n`\n\nconst TableToolbar = props => {\n const { selected } = props\n const numSelected = selected.length\n\n const { t } = useTranslation('service')\n\n return (\n \n
\n {numSelected > 0 ? (\n \n {numSelected} выбрано\n \n ) : (\n Устройства\n )}\n
\n \n \n {numSelected > 0 && (\n <>\n \n \n \n \n \n \n )}\n \n
\n )\n}\n\nexport default TableToolbar\n","import * as React from 'react'\nimport Table from '@material-ui/core/Table'\n\nimport TableHead from './TableHead'\nimport TableBody from './TableBody'\nimport TablePagination from './TablePagination'\nimport TableToolbar from './TableToolbar'\n\nconst DevicesTable = props => (\n <>\n \n \n \n \n \n \n \n)\n\nexport default DevicesTable\n","import React, { Component } from 'react'\nimport { connect } from 'react-redux'\nimport { withRouter } from 'react-router-dom'\nimport debounce from 'lodash/debounce'\n\nimport Table from './Table'\n\nimport { fetchDevices } from 'store/operations'\nimport ReassignIntercomModal from '../ReassignIntercomModal'\n\nclass TableContainer extends Component {\n state = {\n orderBy: 'asc',\n sortBy: 'serial_number',\n limit: 5,\n rowCount: 5,\n page: 0,\n rowsPerPage: 30,\n selected: [],\n reassignModal: false,\n }\n\n componentDidMount() {\n this.fetchData()\n }\n\n componentDidUpdate(prevProps, prevState) {\n if (prevProps.searchQuery !== this.props.searchQuery) {\n // const { searchQuery } = this.props\n // const { page, rowsPerPage: items } = this.state\n\n this.setState({ page: 0 }, this.fetchData)\n }\n\n // if (prevProps.searchQuery !== this.props.searchQuery) {\n // this.setState({ page: 0 })\n // }\n\n if (\n prevState.orderBy !== this.state.orderBy ||\n prevState.sortBy !== this.state.sortBy ||\n prevState.rowsPerPage !== this.state.rowsPerPage ||\n prevState.page !== this.state.page\n ) {\n this.fetchData()\n }\n }\n\n handleSortRequest = (event, property) => {\n const sortBy = property\n let orderBy = 'desc'\n if (this.state.sortBy === property && this.state.orderBy === 'desc') {\n orderBy = 'asc'\n }\n this.setState({ orderBy, sortBy })\n }\n\n getSorting = (orderBy, sortBy) => {\n return orderBy === 'desc'\n ? (a: Object, b: Object) => (b[sortBy] < a[sortBy] ? -1 : 1)\n : (a: Object, b: Object) => (a[sortBy] < b[sortBy] ? -1 : 1)\n }\n\n handleChangePage = (event: ?SyntheticEvent<>, page: number) => {\n this.setState({ page, devices: null })\n }\n\n fetchData = () => {\n this.props.fetchDevices({\n page: this.state.page,\n items: this.state.rowsPerPage,\n orderBy: this.state.orderBy,\n sortBy: this.state.sortBy,\n query: this.props.searchQuery,\n })\n }\n\n handleChangeRowsPerPage = (e: SyntheticEvent<>) => {\n //$FlowFixMe\n this.setState({ rowsPerPage: e.target.value })\n }\n\n handleSelect = (e: SyntheticEvent<>, uuid: string, isSelected: boolean) => {\n const { selected } = this.state\n\n this.setState({\n selected: isSelected\n ? selected.filter(i => i !== uuid)\n : [...selected, uuid],\n })\n }\n\n handleSelectAll = e => {\n if (e.target.checked && this.props.devices) {\n return this.setState({\n selected: this.props.devices.map(d => d.duuid),\n })\n }\n\n this.setState({\n selected: [],\n })\n }\n\n openReassignIntercomModal = () => {\n this.setState({ reassignModal: true })\n }\n\n extractProps = () => ({\n ...this.state,\n ...this.props,\n handleSortRequest: this.handleSortRequest,\n // getSorting: this.getSorting,\n handleChangePage: this.handleChangePage,\n handleChangeRowsPerPage: this.handleChangeRowsPerPage,\n handleSelect: this.handleSelect,\n handleSelectAll: this.handleSelectAll,\n openReassignIntercomModal: this.openReassignIntercomModal,\n })\n\n render() {\n return (\n <>\n \n this.setState({ reassignModal: false })}\n intercoms={this.state.selected}\n callback={this.fetchData}\n >\n \n )\n }\n}\n\nconst mapStateToProps = ({ devices }) => ({\n devices: devices.list,\n totalPages: devices.totalPages,\n searchQuery: devices.query,\n})\n\nconst mapDispatchToProps = dispatch => ({\n fetchDevices: debounce(args => dispatch(fetchDevices(args)), 200),\n dispatch,\n})\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(withRouter(TableContainer))\n","import React, { useEffect, useState, useCallback } from 'react'\nimport { Drawer, Typography } from '@material-ui/core'\nimport withWidth, { isWidthUp } from '@material-ui/core/withWidth'\nimport { FullscreenExitButton, Button } from 'sputnik-ui'\nimport {\n List,\n ListItem,\n ListItemIcon,\n ListItemText,\n CircularProgress,\n} from '@material-ui/core'\nimport { formatDate } from 'utils/helpers'\nimport { Check } from '@material-ui/icons'\nimport styled from 'styled-components'\nimport { useDispatch, useSelector } from 'react-redux'\nimport { useParams } from 'react-router-dom'\nimport { fetchDeviceServicesHistory } from 'store/devicesSlice'\nimport { useScrollYPosition } from 'react-use-scroll-position'\nimport { unwrapResult } from '@reduxjs/toolkit'\nimport { useTranslation } from 'react-i18next'\n\nconst GreenCheck = styled(Check)`\n && {\n color: ${(p) => p.theme.palette.success['500']};\n }\n`\n\nexport default withWidth()(function DeviceServicesHistory({\n open,\n onClose,\n width,\n ...props\n}) {\n const dispatch = useDispatch()\n const { device } = useParams()\n const history = useSelector(({ devices }) => devices.servicesHistory)\n const [loading, setLoading] = useState(false)\n\n const [page, setPage] = useState(1)\n const incrementPage = useCallback(() => setPage(page + 1), [page])\n const isLastPage = useSelector(\n ({ devices }) => devices.historyPages >= page || devices.historyPages === 0,\n )\n\n useEffect(() => {\n setLoading(true)\n dispatch(fetchDeviceServicesHistory({ uuid: device, page }))\n .then(unwrapResult)\n .then(() => setLoading(false))\n }, [device, page])\n\n const { t } = useTranslation('service')\n\n return (\n {}}\n anchor=\"right\"\n open={open}\n onClose={onClose}\n elevation={10}\n PaperProps={{\n style: {\n width: isWidthUp('sm', width) ? '70%' : '100%',\n overflowX: 'hidden',\n marginLeft: 'auto',\n position: 'relative',\n padding: '2rem',\n },\n }}\n ModalProps={{\n BackdropProps: { style: { backgroundColor: 'rgba(0,0,0,0.1)' } },\n }}\n >\n \n \n История подключения услуг\n \n \n {history?.map(({ title, committed_at }) => (\n \n \n \n \n \n \n ))}\n {!isLastPage && !loading && (\n \n )}\n {loading && }\n\n {isLastPage && (\n \n {t('service:history_end')}\n \n )}\n \n \n )\n})\n","export default __webpack_public_path__ + \"static/media/VideoArchive.5b8035b7.svg\";","export default __webpack_public_path__ + \"static/media/Present.5818285b.svg\";","export default __webpack_public_path__ + \"static/media/face_rec.54029a2a.png\";","import React, { useState } from 'react'\nimport { Wrapper } from 'sputnik-ui'\nimport { Divider } from '@material-ui/core'\n\nimport { List } from '@material-ui/core'\nimport { ListItem } from '@material-ui/core'\nimport { ListItemText } from '@material-ui/core'\nimport { ListItemSecondaryAction } from '@material-ui/core'\nimport { Switch } from '@material-ui/core'\nimport { useDispatch, useSelector } from 'react-redux'\n\nimport {\n activateService,\n deactivateService,\n fetchDevices,\n fetchDeviceServices,\n} from 'store/devicesSlice'\nimport { unwrapResult } from '@reduxjs/toolkit'\n\nimport videoarchive from './VideoArchive.svg'\nimport Present from './Present.svg'\nimport facerec from './face_rec.png'\nimport { Typography, Tooltip } from 'sputnik-ui'\nimport { Question, IconColors } from 'sputnik-icons'\n\nconst images = {\n face_rec: facerec,\n archive_3: videoarchive,\n archive_5: videoarchive,\n archive_7: videoarchive,\n mobile_pack: Present,\n}\n\nexport default function Service({ variants, name, description, ...props }) {\n const [selected, setSelected] = useState(variants.find((v) => v.is_active) || variants[0])\n\n const dispatch = useDispatch()\n\n const device = useSelector(({ devices }) => devices.current)\n const pending = useSelector(({ devices }) => devices.pendingServiceToggle)\n const handleToggle = (identifier) => async (e) => {\n try {\n if (e.target.checked) {\n await dispatch(\n activateService({\n service: identifier,\n devices: [{ uuid: device.uuid, type: device.type }],\n })\n ).then(unwrapResult)\n } else {\n await dispatch(\n deactivateService({\n service: variants.find((v) => v.is_active).identifier,\n devices: [{ uuid: device.uuid, type: device.type }],\n })\n ).then(unwrapResult)\n }\n } catch (err) {\n } finally {\n dispatch(fetchDeviceServices({ uuid: device.uuid }))\n dispatch(fetchDevices())\n }\n }\n\n return (\n \n \n
\n \n {name}\n \n \n {description}\n \n
\n \n {variants.map(({ title, variant, is_active, identifier, cost, description }, idx) => (\n
\n \n \n {variant}{' '}\n \n {description.split(',').map((el) => {\n return
  • {el}
  • \n })}\n
    \n }\n >\n
    \n \n
    \n \n \n }\n secondary={{!!cost && `${cost} ₽ в день`}}\n />\n \n \n \n \n {idx !== variants.length - 1 && (\n \n )}\n \n ))}\n
    \n
    \n )\n}\n","//@flow\nimport React from 'react'\nimport styled, { withTheme } from 'styled-components'\nimport { Map } from 'components'\nimport { Loader, Button, formatDeviceId } from 'sputnik-ui'\nimport { Typography, Tooltip } from '@material-ui/core'\nimport {\n FiberManualRecord,\n Gavel,\n SubdirectoryArrowRight,\n History,\n} from '@material-ui/icons'\nimport type { IService } from 'globalTypes'\nimport { animated, useTransition, config } from 'react-spring'\nimport { IconButton } from '@material-ui/core'\nimport Link from 'components/atoms/Link'\nimport { useTranslation } from 'react-i18next'\nimport { useSelector } from 'react-redux'\nimport Service from 'features/Services/Service'\n\nconst Wrapper = styled.div`\n position: relative;\n display: flex;\n flex-direction: column;\n width: 100%;\n min-height: 100%;\n`\n\nconst ServicesWrapper = styled.div`\n /* height: 225px; */\n width: calc(100% + 16px);\n margin-top: 1rem;\n white-space: nowrap;\n padding: 8px;\n padding-bottom: 24px;\n padding-left: 16px;\n margin-left: -16px;\n display: grid;\n grid-gap: 24px;\n grid-template-columns: repeat(auto-fit, minmax(300px, min-content));\n align-items: start;\n overflow-x: auto;\n overflow-y: visible;\n\n /* & > div {\n margin-right: calc(1rem + 8px);\n } */\n &::-webkit-scrollbar-track {\n /* -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); */\n background-color: transparent;\n }\n &::-webkit-scrollbar {\n width: 6px;\n height: 2px;\n background-color: transparent;\n }\n\n &::-webkit-scrollbar-thumb {\n background-color: rgba(192, 192, 192, 1);\n border-radius: 10px;\n }\n`\n\ntype Device = {\n coordinates: ?{\n lat: string,\n lon: string,\n },\n serial_number: string,\n services_count: number,\n services: {\n active: IService[],\n inactive: IService[],\n },\n installed: boolean,\n is_online: boolean,\n}\n\ntype Props = {\n device?: Device,\n theme: Object,\n}\n\n\n\nconst DeviceDetailsContent = ({\n theme,\n toggleReassignModal,\n openHistory,\n}: Props) => {\n const device = useSelector(({ devices }) => devices.current)\n const services = useSelector(({ devices }) => devices.currentServices)\n\n const mapZoomTransition = useTransition(Boolean(device), null, {\n from: {\n opacity: 0,\n transform: 'translate3d(0,-100px,0) scale3d(1.2, 1.2, 1.2)',\n sc: 1.2,\n translate: -100,\n },\n enter: {\n opacity: 1,\n transform: 'translate3d(0,0,0) scale3d(1,1,1)',\n sc: 1,\n translate: 0,\n },\n config: config.slow,\n })\n\n const { t } = useTranslation(['service'])\n\n if (!device) {\n return \n }\n\n return (\n \n {mapZoomTransition.map(\n ({ item, key, props }) =>\n item && (\n \n \n \n ),\n )[0]} \n\n
    \n \n {device?.type === 'intercom'\n ? formatDeviceId(device.serial_number)\n : device?.serial_number}\n\n \n \n \n \n \n \n \n\n \n \n Обслуживается: {(device && device.service_partner) || '-'}\n \n\n \n {t('service:actions.reassign')}\n \n
    \n \n \n Услуги\n \n \n \n \n \n \n \n \n {services?.map((service) => (\n \n ))}\n \n\n {/* \n {device.services_count !== 0 && (\n <>\n \n Подключенные услуги ({device.services_count})\n \n\n \n {services.active.map(service => (\n \n ))}\n \n \n )}\n\n {services.inactive.length > 0 && (\n <>\n \n Дополнительные услуги\n \n \n {services.inactive.map(service => (\n \n ))}\n \n \n )} */}\n \n
    \n )\n}\n\nconst styles = {\n icon: {\n height: '1.06rem',\n width: '1.06rem',\n marginRight: '.625rem',\n },\n mainContent: {\n padding: '2rem',\n paddingRight: 0,\n },\n offsetLeft: {\n marginLeft: '1.625rem',\n },\n map: {\n height: 300,\n },\n categoryTitle: {},\n}\n\nexport default withTheme<*, *>(DeviceDetailsContent)\n","//@flow\n//$FlowFixMe\nimport React, { useEffect, useState } from 'react'\nimport { Drawer } from '@material-ui/core'\nimport withWidth, { isWidthUp } from '@material-ui/core/withWidth'\nimport { connect, useSelector, useDispatch } from 'react-redux'\nimport { BrowserHistory, useHistory, useParams } from 'react-router'\nimport { FullscreenExitButton } from 'sputnik-ui'\nimport DeviceServicesHistory from 'features/Devices/DeviceServicesHistory'\n\nimport Content from './Content'\n\nimport { clearCurrentDevice } from 'store/devicesSlice'\nimport ReassignIntercomModal from '../ReassignIntercomModal'\nimport {\n fetchDevice,\n fetchDeviceServices,\n toggleSelect,\n} from 'store/devicesSlice'\n\ntype Props = {\n match: Match,\n dispatch: Function,\n history: BrowserHistory,\n width: number,\n}\n\nfunction DeviceDetails(props: Props) {\n const { width, ...restProps } = props\n\n const history = useHistory()\n\n const { device: deviceUuid } = useParams()\n const dispatch = useDispatch()\n const device = useSelector(({ devices }) => devices.current)\n\n useEffect(() => {\n if (deviceUuid) {\n dispatch(fetchDevice(deviceUuid))\n dispatch(\n fetchDeviceServices({\n uuid: deviceUuid,\n }),\n )\n }\n return () => {\n dispatch(clearCurrentDevice())\n }\n }, [deviceUuid, dispatch])\n\n const handleClose = () => history.push('/devices')\n const [reassignModal, setReassignModal] = useState(false)\n const toggleReassignModal = () => {\n setReassignModal(!reassignModal)\n }\n\n const [historyOpen, setHistory] = useState(false)\n\n return (\n {}}\n anchor=\"right\"\n open={!!deviceUuid}\n onClose={handleClose}\n elevation={10}\n PaperProps={{\n style: {\n width: isWidthUp('sm', width) ? '70%' : '100%',\n overflowX: 'hidden',\n // position: 'relative',\n },\n }}\n ModalProps={{\n BackdropProps: { style: { backgroundColor: 'rgba(0,0,0,0.1)' } },\n }}\n >\n {!isWidthUp('sm', width) && (\n \n )}\n\n setHistory(true)}\n />\n\n setHistory(false)}\n device={deviceUuid}\n />\n \n \n )\n}\n\n//$FlowFixMe\nexport default withWidth()(DeviceDetails)\n","var _path, _path2;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : 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; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgRefund(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M10.2895 4.17523C9.8181 4.47355 10.0546 5.27465 10.6143 5.27465C10.956 5.27465 11.0879 5.11453 11.0879 4.69873C11.0879 4.06324 10.7826 3.86332 10.2895 4.17523ZM14.3089 4.11733C14.3106 4.32606 14.6752 6.77749 14.9191 8.22266L15.0548 9.02615L15.7396 8.3704C16.1204 8.00583 16.5783 7.77351 16.7704 7.84737C16.9605 7.92029 17.4231 8.60439 17.7982 9.3676C18.3666 10.5245 18.4792 11.0522 18.4749 12.5422C18.4668 15.485 17.1429 17.6533 14.5888 18.9067C13.4717 19.4547 12.9201 19.5715 11.4455 19.5715C9.97095 19.5715 9.41941 19.4547 8.30225 18.9067C6.06819 17.8104 4.73476 15.8941 4.35085 13.2282C4.18417 12.0714 4.10834 11.9465 3.57325 11.9465C3.00955 11.9465 2.98165 12.0118 3.00573 13.2797C3.05819 16.0545 5.15181 19.0318 7.96174 20.3271C9.19693 20.8966 9.72725 20.999 11.4455 21C13.1672 21.0009 13.688 20.9006 14.9031 20.334C17.7107 19.0251 19.6946 16.253 19.9662 13.2594C20.1276 11.4788 19.7122 9.80008 18.6905 8.10448L17.8707 6.74413L18.493 6.09506C18.8352 5.73811 19.026 5.3926 18.9168 5.32708C18.8076 5.26179 17.8649 4.97013 16.8222 4.67943C15.7792 4.38849 14.7865 4.09707 14.6165 4.03178C14.4462 3.96649 14.3077 4.00509 14.3089 4.11733ZM7.31243 5.07617C7.01031 5.37783 7.15482 6.05812 7.55351 6.2111C7.77336 6.29545 8.09933 6.21872 8.27746 6.04049C8.45582 5.86249 8.5326 5.53676 8.44819 5.31707C8.2951 4.91866 7.61432 4.77427 7.31243 5.07617ZM5.1499 6.95334C4.647 7.45588 4.76719 7.87239 5.44439 7.97199C6.09918 8.06826 6.39391 7.39202 5.90866 6.90712C5.59247 6.59139 5.50687 6.59664 5.1499 6.95334ZM3.4173 9.58229C3.3379 9.78888 3.44854 10.1337 3.66315 10.3481C4.02464 10.7091 4.08235 10.7091 4.44384 10.3481C4.93124 9.86084 4.70757 9.20629 4.05349 9.20629C3.78285 9.20629 3.49671 9.37547 3.4173 9.58229Z\",\n fill: \"black\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M10.1925 10.8824C10.1925 12.1981 10.1295 12.4208 9.72594 12.5312C9.42409 12.614 9.2594 12.8643 9.2594 13.2412C9.2594 13.6603 9.3898 13.8232 9.72594 13.8232C9.9851 13.8232 10.1925 13.9861 10.1925 14.1895C10.1925 14.393 9.9851 14.5559 9.72594 14.5559C9.41499 14.5559 9.2594 14.7188 9.2594 15.0444C9.2594 15.3699 9.41499 15.5328 9.72594 15.5328C10.0369 15.5328 10.1925 15.6957 10.1925 16.0213C10.1925 16.4013 10.3481 16.5097 10.8923 16.5097C11.4365 16.5097 11.5921 16.4013 11.5921 16.0213C11.5921 15.6413 11.7477 15.5328 12.2919 15.5328C12.8361 15.5328 12.9917 15.4244 12.9917 15.0444C12.9917 14.6643 12.8361 14.5559 12.2919 14.5559C11.2042 14.5559 11.4094 13.9131 12.548 13.7533C13.8424 13.5714 14.6246 12.7698 14.6246 11.6251C14.6246 10.2252 13.8571 9.63584 11.8363 9.48442L10.1925 9.36133V10.8824ZM12.7738 10.901C13.6612 11.3982 13.0834 12.602 11.9574 12.602C11.6868 12.602 11.5921 12.349 11.5921 11.6251C11.5921 10.582 11.8846 10.4027 12.7738 10.901Z\",\n fill: \"black\"\n })));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgRefund);\nexport default __webpack_public_path__ + \"static/media/refund.ade92900.svg\";\nexport { ForwardRef as ReactComponent };","var _g, _defs;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : 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; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgDebitBonus(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n clipPath: \"url(#clip0)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M8.41267 6.28376C8.18029 6.44655 7.48991 6.60831 6.87878 6.64301C5.78687 6.70521 5.76798 6.71711 5.79775 7.32209C5.81458 7.66081 5.92769 8.19209 6.04922 8.50248L6.27031 9.06702H9.35986H12.4494L12.6705 8.50248C12.792 8.19188 12.9051 7.66081 12.922 7.32209C12.9517 6.71711 12.9329 6.70521 11.8409 6.64301C11.2298 6.60831 10.5394 6.44655 10.307 6.28376C9.76673 5.90541 8.95298 5.90541 8.41267 6.28376ZM4.90701 11.7382C2.13196 15.0878 1.26689 18.4521 2.64497 20.5347C3.5548 21.9097 3.96886 22 9.35986 22C14.7509 22 15.1649 21.9097 16.0747 20.5347C17.4504 18.456 16.5894 15.1098 13.8127 11.7441L12.6202 10.2987H9.35986H6.09951L4.90701 11.7382ZM11.1887 13.0604C12.3537 13.6629 12.5299 15.5042 11.5137 16.4587C11.1481 16.8022 10.6876 16.9629 9.87471 17.0302C9.09709 17.0947 8.744 17.2121 8.744 17.4065C8.744 17.5835 8.97392 17.689 9.35986 17.689C9.77043 17.689 9.97572 17.7916 9.97572 17.9969C9.97572 18.2022 9.77043 18.3049 9.35986 18.3049C8.81236 18.3049 8.744 18.3732 8.744 18.9207C8.744 19.4682 8.67564 19.5366 8.12815 19.5366C7.58065 19.5366 7.51229 19.4682 7.51229 18.9207C7.51229 18.3732 7.44393 18.3049 6.89643 18.3049C6.48586 18.3049 6.28058 18.2022 6.28058 17.9969C6.28058 17.7916 6.48586 17.689 6.89643 17.689C7.307 17.689 7.51229 17.5864 7.51229 17.3811C7.51229 17.1758 7.307 17.0731 6.89643 17.0731C6.48586 17.0731 6.28058 16.9705 6.28058 16.7652C6.28058 16.5599 6.48586 16.4573 6.89643 16.4573H7.51229V14.6097V12.7622H9.06219C10.016 12.7622 10.8338 12.8769 11.1887 13.0604ZM8.744 14.9447V16.1007L9.58998 15.9874C10.6066 15.8509 10.8482 15.6417 10.8482 14.8977C10.8482 14.2016 10.3175 13.7886 9.42329 13.7886H8.744V14.9447Z\",\n fill: \"black\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M23 1.08814L17.902 3.79815L22.798 6.8581L23 1.08814ZM18.424 9.35313L21.039 5.16913L20.191 4.63913L17.576 8.82314L18.424 9.35313Z\",\n fill: \"black\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clip0\"\n }, /*#__PURE__*/React.createElement(\"rect\", {\n width: 24,\n height: 24,\n fill: \"white\"\n })))));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgDebitBonus);\nexport default __webpack_public_path__ + \"static/media/debit_bonus.29a07060.svg\";\nexport { ForwardRef as ReactComponent };","var _g, _defs;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : 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; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgAccrualBonus(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n clipPath: \"url(#clip0)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M8.41267 7.28351C8.18029 7.4463 7.48991 7.60807 6.87878 7.64276C5.78687 7.70496 5.76798 7.71687 5.79775 8.32185C5.81458 8.66057 5.92769 9.19185 6.04922 9.50224L6.27031 10.0668H9.35986H12.4494L12.6705 9.50224C12.792 9.19164 12.9051 8.66057 12.922 8.32185C12.9517 7.71687 12.9329 7.70496 11.8409 7.64276C11.2298 7.60807 10.5394 7.4463 10.307 7.28351C9.76673 6.90517 8.95298 6.90517 8.41267 7.28351ZM4.90701 12.7379C2.13196 16.0876 1.26689 19.4518 2.64497 21.5344C3.5548 22.9094 3.96886 22.9998 9.35986 22.9998C14.7509 22.9998 15.1649 22.9094 16.0747 21.5344C17.4504 19.4557 16.5894 16.1096 13.8127 12.7439L12.6202 11.2985H9.35986H6.09951L4.90701 12.7379ZM11.1887 14.0602C12.3537 14.6627 12.5299 16.5039 11.5137 17.4585C11.1481 17.8019 10.6876 17.9627 9.87471 18.03C9.09709 18.0945 8.744 18.2119 8.744 18.4063C8.744 18.5832 8.97392 18.6888 9.35986 18.6888C9.77043 18.6888 9.97572 18.7914 9.97572 18.9967C9.97572 19.202 9.77043 19.3046 9.35986 19.3046C8.81236 19.3046 8.744 19.373 8.744 19.9205C8.744 20.468 8.67564 20.5363 8.12815 20.5363C7.58065 20.5363 7.51229 20.468 7.51229 19.9205C7.51229 19.373 7.44393 19.3046 6.89643 19.3046C6.48586 19.3046 6.28058 19.202 6.28058 18.9967C6.28058 18.7914 6.48586 18.6888 6.89643 18.6888C7.307 18.6888 7.51229 18.5861 7.51229 18.3808C7.51229 18.1755 7.307 18.0729 6.89643 18.0729C6.48586 18.0729 6.28058 17.9703 6.28058 17.765C6.28058 17.5597 6.48586 17.457 6.89643 17.457H7.51229V15.6095V13.7619H9.06219C10.016 13.7619 10.8338 13.8767 11.1887 14.0602ZM8.744 15.9445V17.1005L9.58998 16.9872C10.6066 16.8506 10.8482 16.6414 10.8482 15.8975C10.8482 15.2014 10.3175 14.7883 9.42329 14.7883H8.744V15.9445Z\",\n fill: \"black\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18 10.0881L23.098 7.37812L18.202 4.31817L18 10.0881ZM22.576 1.82314L19.961 6.00714L20.809 6.53714L23.424 2.35313L22.576 1.82314Z\",\n fill: \"black\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clip0\"\n }, /*#__PURE__*/React.createElement(\"rect\", {\n width: 24,\n height: 24,\n fill: \"white\"\n })))));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgAccrualBonus);\nexport default __webpack_public_path__ + \"static/media/accrual_bonus.69b0d4ce.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : 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; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgWithdrawalMoney(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M10.8189 4.52517C10.4649 4.88063 10.3002 5.22451 10.3002 5.60794C10.3002 6.37445 11.1339 7.21151 11.8973 7.21151C12.6607 7.21151 13.4943 6.37445 13.4943 5.60794C13.4943 5.22451 13.3296 4.88063 12.9756 4.52517C12.2783 3.82494 11.5163 3.82494 10.8189 4.52517ZM7.22451 5.72678C6.90936 6.04322 7.23338 6.54425 8.70319 8.0133C10.2761 9.58534 10.3002 9.62257 10.3002 10.4732C10.3002 11.1953 10.2129 11.4246 9.76789 11.8715C9.4751 12.1655 9.23554 12.5582 9.23554 12.7442C9.23554 13.0337 9.16989 13.0574 8.78038 12.9087C7.68233 12.4894 5.5957 12.9746 5.18651 13.7443C5.09086 13.9241 5.00781 15.0109 5.00178 16.1595C4.99131 18.1404 5.01385 18.2753 5.43884 18.7824C6.15591 19.6381 7.60354 19.9029 8.94311 19.4234C9.58086 19.195 9.68218 19.2086 10.4514 19.625C11.4881 20.186 12.7677 20.1146 13.9298 19.4307C14.6639 18.9987 14.7358 18.989 15.3354 19.2405C16.4819 19.7215 18.1618 19.4678 18.9287 18.6977C19.2987 18.3262 19.347 18.1192 19.3306 16.9751C19.3081 15.3929 19.1746 15.1157 18.2267 14.6836C17.3315 14.2754 16.1907 14.2448 15.3302 14.6058C14.9797 14.7528 14.663 14.873 14.6261 14.873C14.5892 14.873 14.559 14.2788 14.559 13.5526C14.559 12.3041 14.5299 12.2075 14.0267 11.7822C13.5703 11.3968 13.4943 11.2096 13.4943 10.471C13.4943 9.62275 13.519 9.5848 15.0969 8.00956C16.2059 6.90256 16.6841 6.3005 16.6495 6.05516C16.553 5.36901 15.9976 5.58406 14.3837 6.93285C12.8621 8.20448 12.7224 8.28056 11.9076 8.28056C11.0941 8.28056 10.9506 8.20288 9.43606 6.94425C7.91372 5.67903 7.4992 5.45079 7.22451 5.72678ZM13.0392 12.196C13.3847 12.328 13.4943 12.4955 13.4943 12.8912C13.4943 13.316 13.3907 13.4491 12.9355 13.6083C12.1816 13.8722 11.6515 13.8546 10.9029 13.5405C9.24725 12.8459 11.3218 11.5404 13.0392 12.196ZM8.78358 13.8327C9.33136 14.0832 9.39347 14.7756 8.89235 15.045C7.97885 15.5358 5.86401 15.1016 5.86401 14.4231C5.86401 13.7799 7.8085 13.3865 8.78358 13.8327ZM11.5502 14.6419C11.896 14.6915 12.4749 14.6498 12.8367 14.5496C13.4585 14.3772 13.4943 14.3898 13.4943 14.7809C13.4943 15.5075 12.0662 15.8102 10.9156 15.3276C10.483 15.146 10.3002 14.9552 10.3002 14.6849C10.3002 14.3896 10.3723 14.3296 10.6108 14.4262C10.7815 14.4953 11.2043 14.5924 11.5502 14.6419ZM17.9394 15.5013C19.0089 16.0565 18.2796 16.833 16.6884 16.833C15.1196 16.833 14.3762 16.0682 15.4019 15.5095C16.0388 15.1626 17.2793 15.1585 17.9394 15.5013ZM8.09827 16.0748C9.09199 15.9946 9.23554 16.0219 9.23554 16.2904C9.23554 16.4593 9.03218 16.6906 8.78358 16.8043C7.73432 17.2844 5.86401 16.8492 5.86401 16.1249C5.86401 15.8195 5.92345 15.8033 6.4125 15.9745C6.71417 16.08 7.47276 16.1252 8.09827 16.0748ZM11.5502 16.4237C11.896 16.4732 12.4749 16.4315 12.8367 16.3314C13.4585 16.1589 13.4943 16.1716 13.4943 16.5627C13.4943 17.2893 12.0662 17.592 10.9156 17.1093C10.483 16.9277 10.3002 16.7369 10.3002 16.4666C10.3002 16.1714 10.3723 16.1113 10.6108 16.2079C10.7815 16.277 11.2043 16.3742 11.5502 16.4237ZM16.6884 17.7238C17.1636 17.7238 17.7574 17.6456 18.0077 17.5501C18.3999 17.4004 18.4629 17.4245 18.4629 17.7236C18.4629 18.8652 15.1089 18.9033 14.9459 17.7636C14.8944 17.4035 14.9322 17.3833 15.3567 17.5453C15.614 17.6435 16.2132 17.7238 16.6884 17.7238ZM7.31625 17.856C7.77336 17.905 8.3923 17.8594 8.69148 17.7547C9.1981 17.5774 9.23554 17.593 9.23554 17.9829C9.23554 18.8994 6.55996 19.0813 6.00348 18.2026C5.75257 17.8065 5.84538 17.4997 6.17454 17.6372C6.34543 17.7087 6.85914 17.807 7.31625 17.856ZM11.525 18.1871C11.8888 18.2455 12.4807 18.2117 12.8404 18.1121C13.4581 17.9408 13.4943 17.9537 13.4943 18.3444C13.4943 19.071 12.0662 19.3737 10.9156 18.8911C10.483 18.7095 10.3002 18.5187 10.3002 18.2484C10.3002 17.9704 10.3783 17.894 10.5818 17.9724C10.7369 18.0321 11.1612 18.1288 11.525 18.1871Z\",\n fill: \"black\"\n })));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgWithdrawalMoney);\nexport default __webpack_public_path__ + \"static/media/withdrawal_money.1d6e7080.svg\";\nexport { ForwardRef as ReactComponent };","import { ListItemIcon } from '@material-ui/core'\nimport { ListItem } from '@material-ui/core'\nimport React from 'react'\nimport { ListItemText } from '@material-ui/core'\nimport { Typography } from '@material-ui/core'\nimport styled from 'styled-components'\nimport { useTranslation } from 'react-i18next'\nimport { AttachMoney } from '@material-ui/icons'\n\nimport { ReactComponent as FaceRec } from 'features/Services/face_rec.svg'\nimport { ReactComponent as Refund } from 'features/Services/refund.svg'\nimport { ReactComponent as Debit } from 'features/Services/debit_bonus.svg'\nimport { ReactComponent as AccrualBonus } from 'features/Services/accrual_bonus.svg'\nimport { ReactComponent as WithdrawalMoney } from 'features/Services/withdrawal_money.svg'\n\nimport { Archive3, Archive5, Archive7, Archive14, Archive30, IconColors } from 'sputnik-icons'\n\nconst Price = styled(Typography)`\n && {\n color: ${(p) => (p.negative ? p.theme.palette.error[500] : p.theme.palette.success[500])};\n }\n`\n\nconst StyledListItemText = styled(ListItemText)`\n && {\n width: 100%;\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n @media screen and (max-width: ${(p) => p.theme.sizes.phone}) {\n flex-direction: column;\n align-items: flex-start;\n }\n }\n`\n\nconst ContentContainer = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n`\n\nconst icon = { width: 24, height: 24 }\n\nexport default function Transaction({\n title,\n identifier,\n total_cost,\n type,\n service_cost,\n services_count,\n ...props\n}) {\n const serviceIcons = {\n archive_3: ,\n archive_5: ,\n archive_7: ,\n archive_14: ,\n archive_30: ,\n face_rec: ,\n refund: ,\n debit_bonus: ,\n accrual_bonus: ,\n withdrawal_money: ,\n }\n\n const { t } = useTranslation(['billing', 'products'])\n const IconComponent = serviceIcons[identifier] || \n\n return (\n \n {IconComponent}\n \n {title}\n {t(`billing:transaction.${type}`)}\n \n }\n secondary={\n \n \n {total_cost}\n \n\n \n {service_cost} x {services_count || 1}{' '}\n {t('products:units.device', { count: services_count })}\n \n \n }\n primaryTypographyProps={{\n style: { fontSize: '1.2rem' },\n }}\n // disableTypography\n />\n \n )\n}\n","import React, { useState, useEffect } from 'react'\nimport { Typography, TablePagination } from '@material-ui/core'\nimport { fetchTransactions } from 'store/billing/operations'\nimport dayjs from 'dayjs'\nimport { TransactionsTable } from 'components'\nimport { List, ListItem, ListItemText, Collapse } from '@material-ui/core'\nimport { ExpandLess, ExpandMore } from '@material-ui/icons'\nimport Skeleton from 'react-loading-skeleton'\nimport styled from 'styled-components'\nimport Transaction from 'features/billing/Transaction'\n\n\nconst StyledCollapse = styled(Collapse)`\n && {\n overflow-x: scroll;\n\n &::-webkit-scrollbar {\n display: none;\n }\n }\n`\n\nconst HistoryOption = styled.div`\n\n`\n\n/* \n \n \n \n 'type': 'payment' / 'deposit',\n'identifier': ' archive_3' #optional,\n'title': 'архивация глубиной 3 дня' / 'пополнение баланса',\n'total_cost': '— 300,00 ₽' / '+ 6200,00 ₽',\n'status': 'pending' / 'success' / 'error' #как посмотрю стейты обновить наверное придется,\n'service_cost': '3,00₽' #optional,\n'services_count: 100 #optional\n */\n\nconst Transactions = ({ operations, selectedYear, dispatch, error }) => {\n const [page, setPage] = useState(0)\n const [limit, setLimit] = useState(10)\n\n useEffect(() => {\n if (page < 0) setPage(0)\n dispatch(fetchTransactions(selectedYear, page, limit))\n }, [dispatch, selectedYear, page, limit])\n\n return operations?.operations ? (\n \n {Object.entries(operations.operations).map(([month, transactions]) => {\n return (\n \n \n {dayjs(month, 'DD-MM-YYYY').calendar()}\n \n {transactions.map((t) => (\n \n ))}\n \n )\n })}\n \n `${from}-${to} из ${count}`\n }\n onChangePage={(e, page) => {\n setPage(page)\n }}\n onChangeRowsPerPage={(e) => {\n setLimit(e.target.value)\n }}\n style={{ background: 'white' }}\n />\n \n ) : (\n
    \n
    \n \n
    \n
    \n )\n}\n\nconst styles = {\n skeleton: {\n width: '100%',\n },\n flex: {\n display: 'flex',\n justifyContent: 'center',\n },\n list: {\n width: '100%',\n overflow: 'hidden',\n },\n listItem: {\n cursor: 'pointer',\n padding: '0 -1rem',\n },\n}\n\nexport default Transactions\n","import React from 'react'\nimport { connect } from 'react-redux'\nimport { Wrapper } from 'sputnik-ui'\nimport { Typography } from '@material-ui/core'\nimport Transactions from 'features/billing/Transactions'\n\n\nconst TransactionHistory = ({ operations, error, ...props }) => {\n return (\n \n {operations && Object.keys(operations?.operations).length === 0 ? (\n \n У вас нет платежей за данный период.\n \n ) : (\n \n )}\n {/* \n Совсем скоро здесь появится новая история платежей. 😌\n */}\n \n )\n}\n\nconst styles = {\n wrapper: {\n flexDirection: 'column',\n },\n}\n\nconst mapStateToProps = ({ billing }) => ({\n operations: billing.list,\n error: billing.error,\n})\n\nexport default connect(mapStateToProps)(TransactionHistory)\n","var _path;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : 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; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgSearch(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 19,\n height: 19,\n viewBox: \"0 0 19 19\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.71 16.29L14.31 12.9C15.407 11.5025 16.0022 9.77666 16 8C16 6.41775 15.5308 4.87103 14.6518 3.55544C13.7727 2.23985 12.5233 1.21447 11.0615 0.608967C9.59966 0.00346625 7.99113 -0.15496 6.43928 0.153721C4.88743 0.462403 3.46197 1.22433 2.34315 2.34315C1.22433 3.46197 0.462403 4.88743 0.153721 6.43928C-0.15496 7.99113 0.00346625 9.59966 0.608967 11.0615C1.21447 12.5233 2.23985 13.7727 3.55544 14.6518C4.87103 15.5308 6.41775 16 8 16C9.77666 16.0022 11.5025 15.407 12.9 14.31L16.29 17.71C16.383 17.8037 16.4936 17.8781 16.6154 17.9289C16.7373 17.9797 16.868 18.0058 17 18.0058C17.132 18.0058 17.2627 17.9797 17.3846 17.9289C17.5064 17.8781 17.617 17.8037 17.71 17.71C17.8037 17.617 17.8781 17.5064 17.9289 17.3846C17.9797 17.2627 18.0058 17.132 18.0058 17C18.0058 16.868 17.9797 16.7373 17.9289 16.6154C17.8781 16.4936 17.8037 16.383 17.71 16.29ZM2 8C2 6.81332 2.3519 5.65328 3.01119 4.66658C3.67047 3.67989 4.60755 2.91085 5.7039 2.45673C6.80026 2.0026 8.00666 1.88378 9.17055 2.11529C10.3344 2.3468 11.4035 2.91825 12.2426 3.75736C13.0818 4.59648 13.6532 5.66558 13.8847 6.82946C14.1162 7.99335 13.9974 9.19975 13.5433 10.2961C13.0892 11.3925 12.3201 12.3295 11.3334 12.9888C10.3467 13.6481 9.18669 14 8 14C6.4087 14 4.88258 13.3679 3.75736 12.2426C2.63214 11.1174 2 9.5913 2 8Z\",\n fill: \"black\"\n })));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgSearch);\nexport default __webpack_public_path__ + \"static/media/Search.d740037c.svg\";\nexport { ForwardRef as ReactComponent };","var _path, _path2, _path3;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : 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; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgCalendar(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18 4H17V3C17 2.73478 16.8946 2.48043 16.7071 2.29289C16.5196 2.10536 16.2652 2 16 2C15.7348 2 15.4804 2.10536 15.2929 2.29289C15.1054 2.48043 15 2.73478 15 3V4H9V3C9 2.73478 8.89464 2.48043 8.70711 2.29289C8.51957 2.10536 8.26522 2 8 2C7.73478 2 7.48043 2.10536 7.29289 2.29289C7.10536 2.48043 7 2.73478 7 3V4H6C5.20435 4 4.44129 4.31607 3.87868 4.87868C3.31607 5.44129 3 6.20435 3 7V19C3 19.7956 3.31607 20.5587 3.87868 21.1213C4.44129 21.6839 5.20435 22 6 22H18C18.7956 22 19.5587 21.6839 20.1213 21.1213C20.6839 20.5587 21 19.7956 21 19V7C21 6.20435 20.6839 5.44129 20.1213 4.87868C19.5587 4.31607 18.7956 4 18 4ZM6 6H7V7C7 7.26522 7.10536 7.51957 7.29289 7.70711C7.48043 7.89464 7.73478 8 8 8C8.26522 8 8.51957 7.89464 8.70711 7.70711C8.89464 7.51957 9 7.26522 9 7V6H15V7C15 7.26522 15.1054 7.51957 15.2929 7.70711C15.4804 7.89464 15.7348 8 16 8C16.2652 8 16.5196 7.89464 16.7071 7.70711C16.8946 7.51957 17 7.26522 17 7V6H18C18.2652 6 18.5196 6.10536 18.7071 6.29289C18.8946 6.48043 19 6.73478 19 7V11H5V7C5 6.73478 5.10536 6.48043 5.29289 6.29289C5.48043 6.10536 5.73478 6 6 6ZM18 20H6C5.73478 20 5.48043 19.8946 5.29289 19.7071C5.10536 19.5196 5 19.2652 5 19V13H19V19C19 19.2652 18.8946 19.5196 18.7071 19.7071C18.5196 19.8946 18.2652 20 18 20Z\",\n fill: \"black\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8 17C8.55228 17 9 16.5523 9 16C9 15.4477 8.55228 15 8 15C7.44772 15 7 15.4477 7 16C7 16.5523 7.44772 17 8 17Z\",\n fill: \"black\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16 15H12C11.7348 15 11.4804 15.1054 11.2929 15.2929C11.1054 15.4804 11 15.7348 11 16C11 16.2652 11.1054 16.5196 11.2929 16.7071C11.4804 16.8946 11.7348 17 12 17H16C16.2652 17 16.5196 16.8946 16.7071 16.7071C16.8946 16.5196 17 16.2652 17 16C17 15.7348 16.8946 15.4804 16.7071 15.2929C16.5196 15.1054 16.2652 15 16 15Z\",\n fill: \"black\"\n })));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgCalendar);\nexport default __webpack_public_path__ + \"static/media/Calendar.76a29606.svg\";\nexport { ForwardRef as ReactComponent };","import React, { useEffect, useRef, useState } from 'react'\nimport { useDispatch, useSelector } from 'react-redux'\nimport {\n fetchServicePartners,\n setServicePartnerFilter,\n} from 'store/servicePartnersSlice'\nimport {\n RadioGroup,\n Divider,\n Radio,\n Typography,\n FormControl,\n FormControlLabel,\n FormLabel,\n FormGroup,\n Checkbox,\n FormHelperText,\n TextField,\n Form,\n InputAdornment,\n withStyles,\n} from '@material-ui/core'\nimport { ReactComponent as SearchIcon } from './Search.svg'\nimport { ReactComponent as CalendarIcon } from './Calendar.svg'\nimport {\n downloadReport,\n downloadReportProgram,\n} from 'features/analytics/analyticsSlice'\nimport styled from 'styled-components'\nimport { Button, Wrapper, Container, Select } from 'sputnik-ui'\nimport { fetchLocalities, setLocalityFilter } from 'store/localitiesSlice'\nimport { components } from 'react-select'\nimport { useFormik } from 'formik'\nimport ym from 'react-yandex-metrika'\nimport { ExpandMore } from '@material-ui/icons'\nimport { useTranslation } from 'react-i18next'\nimport dayjs from 'dayjs'\n\nconst BlueRadio = withStyles({\n root: {\n '&$checked': {\n color: '#2C98F0',\n },\n },\n checked: {},\n})((props) => )\n\nconst Content = styled.div`\n margin-left: 8rem;\n display: flex;\n flex-direction: column;\n @media (max-width: 1000px) {\n margin-left: 0rem;\n }\n`\n\nconst ResDiv = styled.div`\n display: flex;\n @media (max-width: 1000px) {\n flex-direction: column;\n }\n`\n\nfunction formatDate(date) {\n var d = new Date(date),\n month = '' + (d.getMonth() + 1),\n day = '' + d.getDate(),\n year = d.getFullYear()\n\n if (month.length < 2) month = '0' + month\n if (day.length < 2) day = '0' + day\n\n return [year, month, day].join('-')\n}\n\nexport default function AnalyticsPage({ ...props }) {\n const dispatch = useDispatch()\n const { t } = useTranslation(['analytics'])\n\n React.useEffect(() => {\n dispatch(fetchLocalities())\n }, [])\n\n const localities = useSelector(({ localities }) => localities.list)\n const localityFilter = useSelector(({ localities }) => localities.filter)\n const pending = useSelector(({ analytics }) => analytics.pending)\n const programStatus = useSelector(\n ({ auth }) => auth?.company?.partners_program_accepted\n )\n\n // const servicePartners = useSelector(\n // ({ servicePartners }) => servicePartners.list\n // )\n // const servicePartnerFilter = useSelector(\n // ({ servicePartners }) => servicePartners.filter\n // )\n\n const [monthAgo, setMonthAgo] = useState('')\n const [minDate, setMinDate] = useState(null)\n const [isChecked, setIsChecked] = useState(false)\n\n const formik = useFormik({\n // enableReinitialize: true,\n initialValues: {\n download_type: 'xlsx',\n start_date: formatDate(monthAgo),\n end_date: formatDate(new Date()),\n locality_uuid: undefined,\n gilad: false,\n },\n onSubmit: (values) => {\n ym('reachGoal', 'partner_analytics_clickExportRawData')\n\n values.gilad && programStatus\n ? dispatch(downloadReportProgram(values))\n : dispatch(downloadReport(values))\n },\n })\n\n useEffect(() => {\n let kek = new Date()\n kek.setMonth(kek.getMonth() - 1)\n setMinDate(null)\n\n if (dayjs(kek) < dayjs('2021-08-01') && programStatus && isChecked) {\n kek = '2021-08-01'\n setMinDate('2021-08-01')\n }\n if (programStatus && isChecked) {\n setMinDate('2021-08-01')\n }\n setMonthAgo(kek)\n }, [programStatus, isChecked])\n\n useEffect(() => {\n formik.setFieldValue('start_date', formatDate(monthAgo))\n }, [minDate])\n\n useEffect(() => {\n formik.setFieldValue('gilad', programStatus)\n setIsChecked(programStatus)\n }, [programStatus])\n\n // const DropdownIndicator = (props) => {\n // return (\n // \n // \n // \n // )\n // }\n return (\n \n \n {t('analytics:title')}\n \n\n
    \n \n \n {t('analytics:settings')}\n \n \n \n \n {\n dispatch(setLocalityFilter(o))\n formik.setFieldValue('locality_uuid', o.value)\n }}\n placeholder={t('analytics:address_placeholder')}\n style={{ width: '100%' }}\n // value={formik.values.locality_uuid}\n // components={{DropdownIndicator}} https://bitbucket.org/sputniks/sputnik-ui/src/d80999d01ab36ce0f7b8936c6d9ec807bec80f86/src/components/atoms/Select/index.js\n />\n\n \n {t('analytics:key_indicators')}\n \n \n {\n formik.setFieldValue('gilad', true)\n setIsChecked(true)\n }}\n />\n }\n label={t('analytics:intecom_income')}\n name=\"gilad\"\n />\n {\n formik.setFieldValue('gilad', false)\n setIsChecked(false)\n }}\n />\n }\n label={t('analytics:download_default')}\n name=\"gilad\"\n />\n \n \n \n\n \n \n
    \n \n {t('analytics:from')}\n \n\n \n
    \n\n \n \n
    \n \n -\n \n\n \n
    \n
    \n \n {t('analytics:to')}\n \n\n \n
    \n \n // \n // \n // ),\n // }}\n style={{\n marginTop: '.325rem',\n }}\n name=\"end_date\"\n onChange={formik.handleChange}\n value={formik.values.end_date}\n />\n \n \n {t('analytics:uploading_data')}\n \n\n \n \n {t('analytics:data_format')}\n \n \n }\n value=\"xlsx\"\n label=\".xlsx\"\n />\n }\n value=\"csv\"\n label=\".csv\"\n />\n \n \n \n {pending ? t('analytics:loading') : t('analytics:export_data')}\n \n
    \n
    \n \n \n
    \n )\n}\n","export default __webpack_public_path__ + \"static/media/sputnik-group.d3596d5b.png\";","export default __webpack_public_path__ + \"static/media/cam-group-2.e3f12266.png\";","import * as types from './types'\nimport SputnikImg from './sputnik-group.png'\nimport CamImg from './cam-group-2.png'\nimport { clear } from 'features/ui/uiSlice'\n\nconst initialState = {\n msg: null,\n error: null,\n list: [\n {\n id: 0,\n title: 'Умный домофон «Спутник»',\n description: 'Спутник это управляемый через интернет IP домофон.',\n features: [\n '- со встроенной IP-видеокамерой и мобильным приложением,',\n '- не требующий замены аналоговых координатно-матричных линий и абонентских трубок в квартирах,',\n '- совместимый с абонентскими ключами, распространенными в России',\n ],\n img: SputnikImg,\n cost: 8800 * 100,\n calculator_link:\n 'https://docs.google.com/spreadsheets/d/1CRgDDMB2UockTGnQmzBxCkRnNcwQZfTo5YqnFo1VOOQ/edit#gid=0',\n app_id: '60fea06b-7230-4a13-8f2a-3241bf068769',\n unit: 4,\n name: 'sputnik',\n },\n {\n id: 1,\n title: 'Цифровая камера «ISee»',\n description:\n 'Купольная вандалоустойчивая камера в металлическом корпусе, работающая только с облаком Спутника. В приложении жителя будет доступно видео с этой камеры.',\n features: [\n '- 1/2.8\" IMX307 Starlight CMOS sensor',\n '- Full HD resolution 1920 x 1080P',\n '- Low illumination 0.001 Lux',\n '- Day/Night (ICR), AWB, 2D/3D-DNR, IR-CUT',\n '- D-WDR, Motion Detection, Privacy Mask, Mirror, Flip',\n '- RTSP and Onvif 17.06 compatible',\n '- H.265/H.264 dual-stream media server ',\n '- Easy-to-use P2P Cloud service',\n '- Multi web browser, PC Client, mobile APP remote access',\n '- Lightning protection 4000V',\n '- 3.6mm Fixed Lens',\n ],\n img: CamImg,\n cost: 3000 * 100,\n calculator_link: null,\n app_id: 'c3ed5d0a-2806-43b0-89e9-699880756c47',\n unit: 4,\n name: 'camera',\n },\n ],\n}\n\nexport default function products(state = initialState, { type, payload }) {\n switch (type) {\n case types.BUY_PRODUCT_SUCCESS:\n return { ...state, msg: payload.msg, error: null }\n case types.BUY_PRODUCT_FAILURE:\n return {\n ...state,\n error: payload.error,\n msg: null,\n }\n case [clear.type]:\n return { ...state, msg: null, error: null }\n default:\n return state\n }\n}\n","var _path;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : 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; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgSputnik(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 1.01L7 1C5.9 1 5 1.9 5 3V21C5 22.1 5.9 23 7 23H17C18.1 23 19 22.1 19 21V3C19 1.9 18.1 1.01 17 1.01ZM17 17.002C17 17.6685 17 18.3345 17 19C17 19.6655 16.6687 20.005 16.0062 20.0184H8.01393C7.33798 20.005 7 19.6655 7 19C7 18.3345 7 17.6685 7 17.002V8.02431C7.00051 7.3515 7.33849 7.0151 8.01393 7.0151C8.97526 7.0151 9.82467 7.0151 11.0739 7.0151C12.0801 7.0151 12 6.62251 12 6.02935C12 5.43618 12 4.51615 12 4.00473C12 3.00365 12.6117 3.01734 12.9993 3.01734C13.1138 3.01734 14.7834 3.01734 16.0062 3.01734C16.6687 3.01734 17 3.34647 17 4.00473V17.002Z\"\n })));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgSputnik);\nexport default __webpack_public_path__ + \"static/media/Sputnik.3110cbb6.svg\";\nexport { ForwardRef as ReactComponent };","var _path, _path2;\nvar _excluded = [\"title\", \"titleId\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : 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; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from \"react\";\nfunction SvgISeeAlt(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.5 16.5C14.5 17.8807 13.3807 19 12 19C10.6193 19 9.5 17.8807 9.5 16.5C9.5 15.1193 10.6193 14 12 14C13.3807 14 14.5 15.1193 14.5 16.5Z\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.7904 18.0489C17.3425 21.041 14.4721 22.3764 11.9828 22.5C9.49343 22.3764 6.65752 21.041 5.20964 18.0489M18.7904 18.0489C18.9031 17.8159 19.0719 17.6297 19.2687 17.4126C19.8529 16.7682 20.6837 15.8518 21.0257 12.6333C21.4236 11.7183 22.1688 9.32955 21.9655 7.09409C21.7115 4.29976 18.1553 2.42039 11.9828 2C5.81022 2.42039 2.28847 4.29976 2.03446 7.09409C1.83125 9.32955 2.57636 11.7183 2.97431 12.6333C3.31632 15.8518 4.1471 16.7682 4.7313 17.4126C4.92809 17.6297 5.09691 17.8159 5.20964 18.0489M18.7904 18.0489C18.8229 17.9722 18.8552 17.8974 18.8867 17.8244C19.3231 16.8143 19.6141 16.1409 18.3585 15.4029C17.9775 15.2051 17.5933 14.5374 17.4949 14.0676C17.21 12.7075 15.8184 8.50362 11.9828 8.50362C8.24876 8.50362 6.78996 12.7075 6.50511 14.0676C6.40671 14.5374 6.02249 15.2051 5.64146 15.4029C4.38592 16.1409 4.67688 16.8143 5.11328 17.8244C5.14481 17.8974 5.17711 17.9722 5.20964 18.0489M14.5 16.5C14.5 17.8807 13.3807 19 12 19C10.6193 19 9.5 17.8807 9.5 16.5C9.5 15.1193 10.6193 14 12 14C13.3807 14 14.5 15.1193 14.5 16.5Z\",\n stroke: \"currentColor\",\n strokeWidth: 1.5,\n fill: \"none\"\n })));\n}\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgISeeAlt);\nexport default __webpack_public_path__ + \"static/media/ISee_alt.f0992c02.svg\";\nexport { ForwardRef as ReactComponent };","//@flow\nimport * as React from 'react'\nimport { TransactionStatus } from 'components'\nimport { TableCell, IconButton, Tooltip } from '@material-ui/core'\nimport {\n Payment,\n Assignment,\n RoomService,\n Done,\n CardGiftcard,\n} from '@material-ui/icons'\nimport type { ITransaction } from 'globalTypes'\nimport { ReactComponent as Sputnik } from './Sputnik.svg'\nimport { ReactComponent as ISee } from './ISee_alt.svg'\n\nconst dateFormatOptions = {\n // year: 'numeric',\n month: 'long',\n day: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n}\n\nconst styles = {\n cell: {\n borderBottom: 'none',\n textAlign: 'center',\n verticalAlign: 'middle',\n padding: '.625rem',\n paddingRight: '0.625rem',\n },\n center: {\n display: 'flex',\n alignItems: 'center',\n },\n icon: {\n marginRight: 8,\n fill: 'currentColor',\n width: '1em',\n height: '1em',\n display: 'inline-block',\n fontSize: 24,\n transition: 'fill 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms',\n userSelect: 'none',\n flexShrink: 0,\n },\n}\n\nconst orderIcons = {\n order_intercom: ,\n order_camera: ,\n order_service: ,\n order: ,\n}\n\nconst Transaction = ({\n transaction,\n onApprove,\n}: {\n transaction: ITransaction,\n onApprove?: Function,\n}) => {\n const isOrder = /^order.*/g.test(transaction.type)\n return (\n <>\n \n
    \n {isOrder ? (\n <>\n {orderIcons[transaction.type]}\n {transaction.description}\n \n ) : transaction.payment_method === 'card' ? (\n <>\n \n Оплата банковской картой\n \n ) : (\n <>\n {transaction.description ? (\n \n ) : (\n \n )}\n {transaction.description || 'Безналичный расчет'}\n \n )}\n
    \n
    \n \n \n \n #{transaction.operation_id}\n \n {new Date(transaction.date).toLocaleDateString(\n undefined,\n dateFormatOptions,\n )}\n \n \n {transaction.amount}\n \n {onApprove && (\n \n \n \n \n \n \n \n )}\n \n )\n}\n\nexport default Transaction\n","export default [\n {\n id: 'email',\n disablePadding: false,\n label: 'E-mail',\n },\n {\n id: 'full_name',\n disablePadding: false,\n label: 'Имя',\n },\n {\n id: 'phone',\n disablePadding: false,\n label: 'Телефон',\n },\n]\n","import React from 'react'\nimport TableHead from '@material-ui/core/TableHead'\nimport TableSortLabel from '@material-ui/core/TableSortLabel'\nimport PropTypes from 'prop-types'\nimport TableCell from '@material-ui/core/TableCell'\nimport TableRow from '@material-ui/core/TableRow'\nimport Tooltip from '@material-ui/core/Tooltip'\nimport columnData from './data'\nimport AccountIcon from '@material-ui/icons/AccountCircle'\nimport BusinessIcon from '@material-ui/icons/Business'\nimport EmailIcon from '@material-ui/icons/Email'\nimport { PhoneIphone } from '@material-ui/icons'\n\nconst styles = {\n cell: {\n width: 180,\n },\n}\n\nclass MyTableHead extends React.Component {\n createSortHandler = property => event => {\n this.props.onRequestSort(event, property)\n }\n\n render() {\n const { order, orderBy } = this.props\n\n return (\n \n \n {columnData.map(column => {\n const active = orderBy === column.id\n return (\n \n \n \n {column.id === 'email' && (\n \n )}\n {column.id === 'phone' && (\n \n )}\n {column.id === 'full_name' && (\n \n )}\n {column.id === 'company' && (\n \n )}\n\n {column.label}\n \n \n \n )\n })}\n \n \n )\n }\n}\n\nMyTableHead.propTypes = {\n onRequestSort: PropTypes.func.isRequired,\n order: PropTypes.string.isRequired,\n orderBy: PropTypes.string.isRequired,\n rowCount: PropTypes.number.isRequired,\n}\n\nexport default MyTableHead\n","//@flow\nimport * as React from 'react'\nimport TableHead from './TableHead'\nimport { Wrapper } from 'sputnik-ui'\nimport styled from 'styled-components'\n\nimport {\n Table,\n TableBody,\n TableCell,\n TablePagination,\n TableRow,\n} from '@material-ui/core'\nimport { TableContainer } from '@material-ui/core'\n\ntype User = {\n id: number,\n email: string,\n company: string,\n full_name: string,\n phone: string,\n}\n\ntype P = {\n users: Object[],\n handleChangePage: Function,\n page: number,\n limit: number,\n handleChangeRowsPerPage: Function,\n count: number,\n style: Object,\n actions?: React.ReactNode,\n}\n\ntype S = {\n order: string,\n orderBy: string,\n data: Object[],\n}\n\nconst StyledToolbar = styled.div`\n width: 100%;\n display: flex;\n flex-wrap: wrap;\n padding: 1rem;\n justify-content: space-between;\n background-color: ${(p) => p.theme.palette.other.pink};\n align-items: center;\n\n @media screen and (max-width: ${(p) => p.theme.sizes.tablet}) {\n justify-content: center;\n }\n\n & > button {\n font-weight: normal;\n }\n`\n\nclass UsersTable extends React.Component {\n render() {\n const { actions, page, limit, order, sort, ...props } = this.props\n\n return (\n
    \n {actions}\n \n \n \n\n \n {this.props.users.map((n: User) => {\n return (\n \n window.open(\n `https://account.sputnik.systems/user/${n.id}`,\n '_blank'\n )\n }\n // data-aos=\"fade-left\"\n >\n \n {n.email}\n \n \n {n.full_name}\n \n \n {n.phone}\n \n \n )\n })}\n \n
    \n \n \n //$FlowFixMe\n `${from}-${to} из ${count}`\n }\n onChangePage={this.props.handleChangePage}\n onChangeRowsPerPage={this.props.handleChangeRowsPerPage}\n style={{ background: 'white' }}\n />\n \n )\n }\n}\n\nexport default UsersTable\n","const styles = theme => ({\n column: {\n display: 'flex',\n alignItems: 'left',\n marginBottom: '1.625rem',\n flexWrap: 'wrap',\n },\n row: {\n display: 'flex',\n width: '100%',\n marginBottom: '.625rem',\n },\n // actionsPanel: {\n // paddingTop: '10px',\n // paddingBottom: '10px',\n // paddingRight: '20px',\n // overflow: 'visible',\n // justifyContent: 'flex-end',\n // },\n avatar: {\n backgroundColor: theme.palette.secondary['500'],\n color: 'black',\n },\n card: {\n overflow: 'visible',\n marginBottom: '2rem',\n },\n subcolumn: {\n flexBasis: '15%',\n alignSelf: 'flex-end',\n },\n permissionColumn: {\n flexBasis: '85%',\n },\n action: {\n margin: 0,\n },\n flex: {\n display: 'flex',\n alignSelf: 'flex-end',\n },\n error: {\n color: theme.palette.error['main'],\n },\n})\n\nexport default styles\n","import React, { Component } from 'react'\nimport { UserCard, UserCardActions } from 'components'\nimport { connect } from 'react-redux'\nimport { withRouter } from 'react-router-dom'\nimport { Loader } from 'sputnik-ui'\nimport type { State, Props } from './types'\nimport styles from './styles'\nimport { withStyles } from '@material-ui/core/styles'\n\nimport {\n getCurrentUser,\n getUserPermissions,\n updateUserPermissions,\n deleteUser,\n updateUser,\n} from 'store/users/operations'\nimport { getUserApps, getAppAbilities } from 'store/apps/operations'\n\nclass UserPage extends Component {\n state = {\n appAbilities: null,\n permissions: null,\n deleteUserModal: false,\n addAppModal: false,\n editCompanyModal: false,\n snackbarSuccess: false,\n snackbarError: false,\n }\n\n componentDidMount() {\n this.init()\n }\n\n init = async () => {\n const { dispatch, match } = this.props\n const { id } = match.params\n\n dispatch(getCurrentUser(id)).catch(err =>\n setTimeout(() => {\n this.props.history.push('/')\n }, 1000),\n )\n const apps = await dispatch(getUserApps(id))\n\n // bunch apps and their abilities together\n const appAbilities = await Promise.all(\n apps.map(async app => {\n const abilities = await dispatch(getAppAbilities(app.app_id))\n return { app, abilities }\n }),\n )\n\n /* get permissions, and change their structure */\n const permissions = await dispatch(getUserPermissions(id)).then(\n permissions =>\n permissions.reduce(\n (acc, permission) => ({\n ...acc,\n [permission.app_id]: permission.abilities\n ? Object.values(permission.abilities).reduce(\n (abilities, ability) => ({\n ...abilities,\n [`${ability.namespace ? ability.namespace + '/' : ''}${\n ability.name\n }`]: ability.privileges.map(x => x.action),\n }),\n {},\n )\n : [],\n }),\n {},\n ),\n )\n\n this.setState({ appAbilities, permissions })\n }\n\n handleSelect = (appId, ability) => newActions => {\n const { permissions: oldPermissions } = this.state\n const newActionValues = newActions ? newActions.map(a => a.value) : []\n console.log(newActionValues)\n // this.state.appAbilities\n const permissions = {\n ...oldPermissions,\n [appId]: {\n //$FlowFixMe\n ...oldPermissions[appId],\n [`${ability.namespace ? ability.namespace + '/' : ''}${\n ability.name\n }`]: newActionValues,\n },\n }\n this.setState({ permissions })\n }\n\n updateUserPermissions = async () => {\n const { permissions } = this.state\n const { match, dispatch } = this.props\n\n try {\n await Promise.resolve(\n // for each client\n await Object.entries(permissions).forEach(\n async ([appId, abilities]) =>\n await dispatch(\n updateUserPermissions({\n userId: match.params.id,\n appId,\n abilities,\n }),\n ),\n ),\n )\n this.toggleModal('snackbarSuccess')()\n this.init()\n } catch (error) {\n this.toggleModal('snackbarError')()\n }\n }\n\n toggleModal = modalName => () =>\n this.setState({ [modalName]: !this.state[modalName] })\n\n deleteUser = () => {\n this.props\n .dispatch(deleteUser(this.props.match.params.id))\n .then(() => this.props.history.push('/'))\n .catch(this.toggleModal('snackbarError'))\n }\n\n toggleUserBlock = () => {\n if (this.props.currentUser) {\n this.props\n .dispatch(\n updateUser({\n userId: this.props.match.params.id,\n is_blocked: !this.props.currentUser.is_blocked,\n }),\n )\n .then(() => this.init())\n }\n }\n\n render() {\n const {\n classes,\n currentUser,\n usersError,\n appsError,\n authorizedUser,\n history,\n } = this.props\n const { appAbilities, permissions } = this.state\n\n if (!currentUser) {\n return (\n \n )\n }\n\n if (!appAbilities || !permissions) {\n return (\n \n )\n }\n\n return (\n \n }\n />\n )\n }\n}\n\nconst mapStateToProps = ({ users, apps, auth: { user } }) => ({\n currentUser: users.currentUser,\n userApps: apps.userApps,\n usersError: users.error,\n appsError: apps.error,\n authorizedUser: user,\n})\n\nexport default connect(mapStateToProps)(\n withRouter(withStyles(styles)(UserPage)),\n)\n\n/* \n \n {\n this.init()\n this.toggleModal('addAppModal')()\n }}\n /> */\n","export default __webpack_public_path__ + \"static/media/place-24.2f342a18.svg\";","import React from 'react'\nimport merge from 'lodash/merge'\nimport styled from 'styled-components'\n\nimport L from 'leaflet'\nimport { Map, Marker, TileLayer } from 'react-leaflet'\nimport { leafletLocale } from 'sputnik-ui'\nimport { default as markerIcon } from './place-24.svg'\n\nL.drawLocal = merge(L.drawLocal, leafletLocale)\n\nconst myIcon = L.icon({\n iconUrl: markerIcon,\n iconSize: [38, 95],\n iconAnchor: [22, 94],\n popupAnchor: [-3, -76],\n})\n\nconst StyledMap = styled(Map)`\n width: 100%;\n height: 100%;\n z-index: 0;\n filter: grayscale(100%);\n height: 300px;\n`\n\nconst _Map = ({ lat = 120, lon = 12, ...props }) => (\n
    \n \n \n \n \n
    \n)\n\nexport default _Map\n","export default __webpack_public_path__ + \"static/media/sputnik.4369dd79.png\";","import React from 'react'\nimport SputnikImg from './sputnik.png'\nimport styled from 'styled-components'\nimport { Typography, TextField } from '@material-ui/core'\nimport { Button } from 'sputnik-ui'\n\nconst ProductWrapper = styled.div`\n height: 100vh;\n display: flex;\n width: 100%;\n /* align-items: center; */\n`\n\nconst ProductImageWrapper = styled.div`\n background: #e8f5e9;\n width: 50%;\n height: 100%;\n display: flex;\n justify-content: center;\n /* align-items: center; */\n`\n\nconst MARG_TOP = 15\n\nconst ProductImage = styled.img`\n height: 70%;\n margin-top: ${MARG_TOP}%;\n`\n\nconst ProductInfo = styled.div`\n padding: 0 3.625rem;\n width: 50%;\n`\n\nconst ProductTitle = styled(Typography)`\n && {\n margin-top: ${MARG_TOP}%;\n font-weight: 500;\n }\n`\n\nconst ProductPrice = styled(Typography)`\n && {\n margin-top: 0.325rem;\n }\n`\n\nconst ProductDescription = styled(Typography)`\n && {\n margin-top: 2.325rem;\n }\n`\n\nconst ProductActions = styled.div`\n display: flex;\n margin-top: 2.325rem;\n justify-content: center;\n`\n\nconst BuyWrapper = styled.div``\n\ntype Props = {\n title: string,\n}\n\nconst ProductCard = ({ title }: Props) => {\n return (\n \n \n \n \n \n {title}\n 10000₽\n \n Lorem ipsum dolor sit, amet consectetur adipisicing elit. Eum, fugiat\n sunt incidunt maxime sint nam doloremque eligendi magni tenetur dolore\n possimus similique consequuntur ipsum nemo aperiam, eius non\n perspiciatis explicabo.\n \n \n \n \n \n \n \n \n \n \n )\n}\n\nexport default ProductCard\n","//@flow\nexport const GET_APPS_REQUEST: string = 'clients/GET_APPS_REQUEST'\nexport const GET_APPS_SUCCESS: string = 'clients/GET_APPS_SUCCESS'\nexport const GET_APPS_ERROR: string = 'clients/GET_APPS_ERROR'\n\nexport const GET_USER_APPS_REQUEST: string = 'clients/GET_USER_APPS_REQUEST'\nexport const GET_USER_APPS_SUCCESS: string = 'clients/GET_USER_APPS_SUCCESS'\nexport const GET_USER_APPS_ERROR: string = 'clients/GET_USER_APPS_ERROR'\n\nexport const GET_APP_ABILITIES_REQUEST: string =\n 'clients/GET_APP_ABILITIES_REQUEST'\nexport const GET_APP_ABILITIES_SUCCESS: string =\n 'clients/GET_APP_ABILITIES_SUCCESS'\nexport const GET_APP_ABILITIES_ERROR: string = 'clients/GET_APP_ABILITIES_ERROR'\n\nexport const GET_ABILITY_ACTIONS_REQUEST: string =\n 'clients/GET_ABILITY_ACTIONS_REQUEST'\nexport const GET_ABILITY_ACTIONS_SUCCESS: string =\n 'clients/GET_ABILITY_ACTIONS_SUCCESS'\nexport const GET_ABILITY_ACTIONS_ERROR: string =\n 'clients/GET_ABILITY_ACTIONS_ERROR'\n\nexport type requestAction = {\n type: string,\n}\n\nexport type successAction = {\n type: string,\n payload: Object | Array | string,\n}\n\nexport type errorAction = {\n type: string,\n err: string,\n}\n\nexport type App = {\n id: number,\n name: string,\n app_id: string,\n app_secret: string,\n}\n","//@flow\nimport * as actions from './actions'\nimport Api from 'utils/api'\nimport { buildUrl } from 'utils/helpers'\nimport config from 'config'\n\nexport const fetchTransactions =\n (year: string = new Date().getFullYear().toString(), page = 0, limit = 10) =>\n async (dispatch: Function) => {\n dispatch(actions.fetchTransactionsRequest())\n try {\n const setParams = () => {\n let params = []\n if (year) params.push(`year=${year}`)\n if (page) params.push(`page=${page + 1}`)\n if (limit) params.push(`limit=${limit}`)\n return params.join('&')\n }\n\n const transactions = await Api.request(\n buildUrl(`/billing/operations/days?${setParams()}`),\n {\n dispatch,\n },\n `${config.redirectUri}/api/v2`\n )\n\n dispatch(actions.fetchTransactionsSuccess(transactions))\n } catch (error) {\n dispatch(\n actions.fetchTransactionsFailure(\n 'Не удалось получить историю операций. Попробуйте обновить страницу.'\n )\n )\n }\n }\n\nexport const fetchStatistics = (year: string) => async (dispatch: Function) => {\n dispatch(actions.fetchStatisticsRequest())\n try {\n const stats = await Api.request(\n `/billing/operations/statistics?year=${year}`\n )\n dispatch(actions.fetchStatisticsSuccess(stats))\n } catch (error) {\n dispatch(\n actions.fetchStatisticsFailure(\n 'Проверьте ваше интернет соединение и попробуйте обновить страницу.'\n )\n )\n }\n}\n\nexport const fetchAvailablePeriod = () => async (dispatch: Function) => {\n dispatch(actions.fetchAvailablePeriodRequest())\n try {\n const period = await Api.request(`/billing/operations/years`)\n dispatch(actions.fetchAvailablePeriodSuccess(period))\n } catch (error) {\n dispatch(\n actions.fetchAvailablePeriodFailure(\n 'Проверьте ваше интернет соединение и попробуйте обновить страницу.'\n )\n )\n }\n}\n\nexport const makeDeposit =\n (params: {\n operation_type: 'card' | 'direct_deposit',\n total: string,\n app_id: ?string,\n quantity: ?string,\n use_payment_method: ?boolean,\n phone: string,\n }) =>\n async (dispatch: Function) => {\n dispatch(actions.makeDepositRequest())\n try {\n const { operation_id, redirect_url } = await Api.request(\n `/partners/invoices`,\n {\n method: 'POST',\n body: JSON.stringify(params),\n }\n )\n\n if (redirect_url) {\n // dispatch(actions.makeDepositSuccess(''))\n dispatch(actions.makeDepositSuccess(null))\n\n window.location = redirect_url\n return Promise.resolve({})\n } else {\n dispatch(actions.makeDepositSuccess('Баланс был успешно пополнен'))\n return Promise.resolve({ operation_id })\n }\n } catch (error) {\n const { message } = await error.json()\n dispatch(actions.makeDepositFailure(message))\n return Promise.reject()\n }\n }\n\nexport const changeBillingAccountInfo =\n (body: Object) => async (dispatch: Function) => {\n dispatch(actions.changeBillingAccountInfoRequest())\n try {\n const updatedAccount = await Api.request(`/users/me/billing_account`, {\n method: 'PATCH',\n body: JSON.stringify(body),\n })\n\n dispatch(\n actions.changeBillingAccountInfoSuccess(\n 'Информация о платежном аккаунте была успешно обновлена',\n updatedAccount\n )\n )\n return Promise.resolve()\n } catch (error) {\n const r = await error.json()\n dispatch(\n actions.changeBillingAccountInfoFailure(Object.values(r.message)[0])\n )\n return Promise.reject()\n }\n }\n\nexport const fetchBillingAccount = () => async (dispatch: Function) => {\n dispatch(actions.fetchBillingAccountRequest())\n try {\n const account = await Api.request(`/users/me/billing_account`)\n\n dispatch(actions.fetchBillingAccountSuccess(account))\n return Promise.resolve()\n } catch (error) {\n const { message } = await error.json()\n dispatch(actions.fetchBillingAccountFailure(message))\n return Promise.reject()\n }\n}\n\nexport const unbindPaymentMethod = () => async (dispatch: Function) => {\n dispatch(actions.unbindPaymentMethodRequest())\n try {\n await Api.request(`/billing/accounts/unbind_payment_method`, {\n method: 'POST',\n })\n\n dispatch(actions.unbindPaymentMethodSuccess('Карта была успешно отвязана'))\n return Promise.resolve()\n } catch (error) {\n const { message } = await error.json()\n dispatch(actions.unbindPaymentMethodFailure(message))\n return Promise.reject()\n }\n}\n","export const FETCH_DEVICES_REQUEST = 'devices/FETCH_DEVICES_REQUEST'\nexport const FETCH_DEVICES_SUCCESS = 'devices/FETCH_DEVICES_SUCCESS'\nexport const FETCH_DEVICES_FAILURE = 'devices/FETCH_DEVICES_FAILURE'\n\nexport const FETCH_DEVICE_INFO_REQUEST = 'devices/FETCH_DEVICE_INFO_REQUEST'\nexport const FETCH_DEVICE_INFO_SUCCESS = 'devices/FETCH_DEVICE_INFO_SUCCESS'\nexport const FETCH_DEVICE_INFO_FAILURE = 'devices/FETCH_DEVICE_INFO_FAILURE'\n\nexport const CLEAR_CURRENT_DEVICE = 'devices/CLEAR_CURRENT_DEVICE'\n\nexport const SET_DEVICE_SEARCH_QUERY = 'devices/SET_DEVICE_SEARCH_QUERY'\n","export const INVITE_PARTNER_REQUEST = 'service_partners/INVITE_PARTNER_REQUEST'\nexport const INVITE_PARTNER_SUCCESS = 'service_partners/INVITE_PARTNER_SUCCESS'\nexport const INVITE_PARTNER_FAILURE = 'service_partners/INVITE_PARTNER_FAILURE'\n\nexport const REASSIGN_DEVICES_REQUEST =\n 'service_partners/REASSIGN_DEVICES_REQUEST'\nexport const REASSIGN_DEVICES_SUCCESS =\n 'service_partners/REASSIGN_DEVICES_SUCCESS'\nexport const REASSIGN_DEVICES_FAILURE =\n 'service_partners/REASSIGN_DEVICES_FAILURE'\n\nexport const FETCH_PARTNERS_REQUEST = 'service_partners/FETCH_PARTNERS_REQUEST'\nexport const FETCH_PARTNERS_SUCCESS = 'service_partners/FETCH_PARTNERS_SUCCESS'\nexport const FETCH_PARTNERS_FAILURE = 'service_partners/FETCH_PARTNERS_FAILURE'\n"],"sourceRoot":""}