UNPKG

pbn-voip-modules

Version:

PBN VOIP Component Library

61 lines (54 loc) 1.78 kB
export const getExtensionNumber = (extensions) => { const extensionList = extensions?.content || extensions; const updatedList = extensionList.map((item) => { const { basic_settings } = item; const lastName = basic_settings.user.last_name; const displayLastName = lastName === "." || lastName.trim() === "" ? "" : lastName; return { label: ` ${basic_settings.extension_number} : ${basic_settings.user.first_name} ${displayLastName} `, value: basic_settings.extension_number, }; }); return updatedList; }; export const filterExtensionBasedOnPracticeId = ( extensions, practice_id, currentUser ) => { let filteredExtension = extensions.filter( (item) => item.basic_settings.practice_id === parseInt(practice_id) ); if (currentUser?.extension[0]?.extension_number) { filteredExtension = filteredExtension.filter( (item) => item.basic_settings.extension_number !== currentUser?.extension[0]?.extension_number ); } if (currentUser) { // Check extension exist in the list if yes then add it to the top of the list let idx = extensions.findIndex( (item) => item.basic_settings.extension_number === currentUser.extension[0].extension_number ); if (idx !== -1) { filteredExtension.unshift(extensions[idx]); } else { // If extension not exist in the list then add it to the top of the list const option = { basic_settings: { extension_number: currentUser.extension[0].extension_number, user: { first_name: currentUser.first_name, last_name: currentUser.last_name, }, }, }; filteredExtension.unshift(option); } } return filteredExtension; };