import { resetPrivilegeArray } from "@root/stores/privilegesStore"; import { exampleCartValues } from "@stores/mocks/exampleCartValues"; import { requestServicePrivileges } from "@root/api/privilegies"; import type { PrivilegeWithAmount } from "@frontend/kitui"; const mutatePrivileges = (privileges: PrivilegeWithAmount[]) => { let extracted: PrivilegeWithAmount[] = []; for (let serviceKey in privileges) { //Приходит объект. В его значениях массивы привилегий для разных сервисов. Высыпаем в общую кучу и обновляем стор extracted = extracted.concat(privileges[serviceKey]); } let readyArray = extracted.map((privilege) => ({ serviceKey: privilege.serviceKey, privilegeId: privilege.privilegeId, name: privilege.name, description: privilege.description, type: privilege.type, price: privilege.price, value: privilege.value, _id: privilege._id, })); resetPrivilegeArray([...readyArray, ...exampleCartValues.privileges]); }; export const requestPrivileges = async () => { const [privilegesResponse, privilegesError] = await requestServicePrivileges(); if (privilegesError) { return console.error(privilegesError); } if (privilegesResponse) { mutatePrivileges(privilegesResponse.templategen); } };