import { resetPrivilegeArray } from "@root/stores/privilegesStore"; import { exampleCartValues } from "@stores/mocks/exampleCartValues"; import { requestServicePrivilegies } from "@root/api/privilegies"; import type { PrivilegeWithAmount } from "@frontend/kitui"; const mutatePrivilegies = (privilegies: PrivilegeWithAmount[]) => { let extracted: PrivilegeWithAmount[] = []; for (let serviceKey in privilegies) { //Приходит объект. В его значениях массивы привилегий для разных сервисов. Высыпаем в общую кучу и обновляем стор extracted = extracted.concat(privilegies[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 requestPrivilegies = async () => { const [privilegiesResponse, privilegiesError] = await requestServicePrivilegies(); if (privilegiesError) { return console.error(privilegiesError); } if (privilegiesResponse) { mutatePrivilegies(privilegiesResponse.templategen); } };